Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
652e8f8d
Commit
652e8f8d
authored
Mar 03, 2009
by
Benjamin Herrenschmidt
Browse files
Options
Browse Files
Download
Plain Diff
Merge commit 'jwb/next' into next
parents
501cb16d
6c712090
Changes
16
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
1796 additions
and
19 deletions
+1796
-19
arch/powerpc/Kconfig
arch/powerpc/Kconfig
+27
-0
arch/powerpc/boot/dts/canyonlands.dts
arch/powerpc/boot/dts/canyonlands.dts
+28
-0
arch/powerpc/boot/dts/redwood.dts
arch/powerpc/boot/dts/redwood.dts
+244
-0
arch/powerpc/configs/44x/canyonlands_defconfig
arch/powerpc/configs/44x/canyonlands_defconfig
+256
-10
arch/powerpc/configs/44x/redwood_defconfig
arch/powerpc/configs/44x/redwood_defconfig
+1176
-0
arch/powerpc/include/asm/highmem.h
arch/powerpc/include/asm/highmem.h
+5
-5
arch/powerpc/include/asm/mmu-44x.h
arch/powerpc/include/asm/mmu-44x.h
+2
-0
arch/powerpc/include/asm/page.h
arch/powerpc/include/asm/page.h
+4
-2
arch/powerpc/include/asm/page_32.h
arch/powerpc/include/asm/page_32.h
+4
-0
arch/powerpc/include/asm/thread_info.h
arch/powerpc/include/asm/thread_info.h
+3
-1
arch/powerpc/kernel/cpu_setup_44x.S
arch/powerpc/kernel/cpu_setup_44x.S
+1
-0
arch/powerpc/kernel/cputable.c
arch/powerpc/kernel/cputable.c
+14
-0
arch/powerpc/kernel/head_booke.h
arch/powerpc/kernel/head_booke.h
+10
-1
arch/powerpc/platforms/44x/Kconfig
arch/powerpc/platforms/44x/Kconfig
+19
-0
arch/powerpc/platforms/44x/ppc44x_simple.c
arch/powerpc/platforms/44x/ppc44x_simple.c
+1
-0
arch/powerpc/sysdev/ppc4xx_pci.c
arch/powerpc/sysdev/ppc4xx_pci.c
+2
-0
No files found.
arch/powerpc/Kconfig
View file @
652e8f8d
...
...
@@ -410,6 +410,18 @@ config PPC_HAS_HASH_64K
depends on PPC64
default n
config STDBINUTILS
bool "Using standard binutils settings"
depends on 44x
default y
help
Turning this option off allows you to select 256KB PAGE_SIZE on 44x.
Note, that kernel will be able to run only those applications,
which had been compiled using binutils later than 2.17.50.0.3 with
'-zmax-page-size' set to 256K (the default is 64K). Or, if using
the older binutils, you can patch them with a trivial patch, which
changes the ELF_MAXPAGESIZE definition from 0x10000 to 0x40000.
choice
prompt "Page size"
default PPC_4K_PAGES
...
...
@@ -445,6 +457,19 @@ config PPC_64K_PAGES
bool "64k page size" if 44x || PPC_STD_MMU_64
select PPC_HAS_HASH_64K if PPC_STD_MMU_64
config PPC_256K_PAGES
bool "256k page size" if 44x
depends on !STDBINUTILS && (!SHMEM || BROKEN)
help
Make the page size 256k.
As the ELF standard only requires alignment to support page
sizes up to 64k, you will need to compile all of your user
space applications with a non-standard binutils settings
(see the STDBINUTILS description for details).
Say N unless you know what you are doing.
endchoice
config FORCE_MAX_ZONEORDER
...
...
@@ -457,6 +482,8 @@ config FORCE_MAX_ZONEORDER
default "9" if PPC_STD_MMU_32 && PPC_16K_PAGES
range 7 64 if PPC_STD_MMU_32 && PPC_64K_PAGES
default "7" if PPC_STD_MMU_32 && PPC_64K_PAGES
range 5 64 if PPC_STD_MMU_32 && PPC_256K_PAGES
default "5" if PPC_STD_MMU_32 && PPC_256K_PAGES
range 11 64
default "11"
help
...
...
arch/powerpc/boot/dts/canyonlands.dts
View file @
652e8f8d
...
...
@@ -142,6 +142,20 @@
/*
RXDE
*/
0x5
0x4
>;
};
USB0
:
ehci
@
bffd0400
{
compatible
=
"ibm,usb-ehci-460ex"
,
"usb-ehci"
;
interrupt
-
parent
=
<&
UIC2
>;
interrupts
=
<
0x1d
4
>;
reg
=
<
4
0xbffd0400
0x90
4
0xbffd0490
0x70
>;
};
USB1
:
usb
@
bffd0000
{
compatible
=
"ohci-le"
;
reg
=
<
4
0xbffd0000
0x60
>;
interrupt
-
parent
=
<&
UIC2
>;
interrupts
=
<
0x1e
4
>;
};
POB0
:
opb
{
compatible
=
"ibm,opb-460ex"
,
"ibm,opb"
;
#
address
-
cells
=
<
1
>;
...
...
@@ -245,6 +259,20 @@
reg
=
<
0xef600700
0x00000014
>;
interrupt
-
parent
=
<&
UIC0
>;
interrupts
=
<
0x2
0x4
>;
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
rtc
@
68
{
compatible
=
"stm,m41t80"
;
reg
=
<
0x68
>;
interrupt
-
parent
=
<&
UIC2
>;
interrupts
=
<
0x19
0x8
>;
};
sttm
@
48
{
compatible
=
"ad,ad7414"
;
reg
=
<
0x48
>;
interrupt
-
parent
=
<&
UIC1
>;
interrupts
=
<
0x14
0x8
>;
};
};
IIC1
:
i2c
@
ef600800
{
...
...
arch/powerpc/boot/dts/redwood.dts
0 → 100644
View file @
652e8f8d
/*
*
Device
Tree
Source
for
AMCC
Redwood
(
460
SX
)
*
*
Copyright
2008
AMCC
<
tmarri
@
amcc
.
com
>
*
*
This
file
is
licensed
under
the
terms
of
the
GNU
General
Public
*
License
version
2.
This
program
is
licensed
"as is"
without
*
any
warranty
of
any
kind
,
whether
express
or
implied
.
*/
/
dts
-
v1
/;
/
{
#
address
-
cells
=
<
2
>;
#
size
-
cells
=
<
1
>;
model
=
"amcc,redwood"
;
compatible
=
"amcc,redwood"
;
dcr
-
parent
=
<&{/
cpus
/
cpu
@
0
}>;
aliases
{
ethernet0
=
&
EMAC0
;
serial0
=
&
UART0
;
};
cpus
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
cpu
@
0
{
device_type
=
"cpu"
;
model
=
"PowerPC,460SX"
;
reg
=
<
0x00000000
>;
clock
-
frequency
=
<
0
>;
/*
Filled
in
by
U
-
Boot
*/
timebase
-
frequency
=
<
0
>;
/*
Filled
in
by
U
-
Boot
*/
i
-
cache
-
line
-
size
=
<
32
>;
d
-
cache
-
line
-
size
=
<
32
>;
i
-
cache
-
size
=
<
32768
>;
d
-
cache
-
size
=
<
32768
>;
dcr
-
controller
;
dcr
-
access
-
method
=
"native"
;
};
};
memory
{
device_type
=
"memory"
;
reg
=
<
0x00000000
0x00000000
0x00000000
>;
/*
Filled
in
by
U
-
Boot
*/
};
UIC0
:
interrupt
-
controller0
{
compatible
=
"ibm,uic-460sx"
,
"ibm,uic"
;
interrupt
-
controller
;
cell
-
index
=
<
0
>;
dcr
-
reg
=
<
0x0c0
0x009
>;
#
address
-
cells
=
<
0
>;
#
size
-
cells
=
<
0
>;
#
interrupt
-
cells
=
<
2
>;
};
UIC1
:
interrupt
-
controller1
{
compatible
=
"ibm,uic-460sx"
,
"ibm,uic"
;
interrupt
-
controller
;
cell
-
index
=
<
1
>;
dcr
-
reg
=
<
0x0d0
0x009
>;
#
address
-
cells
=
<
0
>;
#
size
-
cells
=
<
0
>;
#
interrupt
-
cells
=
<
2
>;
interrupts
=
<
0x1e
0x4
0x1f
0x4
>;
/*
cascade
*/
interrupt
-
parent
=
<&
UIC0
>;
};
UIC2
:
interrupt
-
controller2
{
compatible
=
"ibm,uic-460sx"
,
"ibm,uic"
;
interrupt
-
controller
;
cell
-
index
=
<
2
>;
dcr
-
reg
=
<
0x0e0
0x009
>;
#
address
-
cells
=
<
0
>;
#
size
-
cells
=
<
0
>;
#
interrupt
-
cells
=
<
2
>;
interrupts
=
<
0xa
0x4
0xb
0x4
>;
/*
cascade
*/
interrupt
-
parent
=
<&
UIC0
>;
};
UIC3
:
interrupt
-
controller3
{
compatible
=
"ibm,uic-460sx"
,
"ibm,uic"
;
interrupt
-
controller
;
cell
-
index
=
<
3
>;
dcr
-
reg
=
<
0x0f0
0x009
>;
#
address
-
cells
=
<
0
>;
#
size
-
cells
=
<
0
>;
#
interrupt
-
cells
=
<
2
>;
interrupts
=
<
0x10
0x4
0x11
0x4
>;
/*
cascade
*/
interrupt
-
parent
=
<&
UIC0
>;
};
SDR0
:
sdr
{
compatible
=
"ibm,sdr-460sx"
;
dcr
-
reg
=
<
0x00e
0x002
>;
};
CPR0
:
cpr
{
compatible
=
"ibm,cpr-460sx"
;
dcr
-
reg
=
<
0x00c
0x002
>;
};
plb
{
compatible
=
"ibm,plb-460sx"
,
"ibm,plb4"
;
#
address
-
cells
=
<
2
>;
#
size
-
cells
=
<
1
>;
ranges
;
clock
-
frequency
=
<
0
>;
/*
Filled
in
by
U
-
Boot
*/
SDRAM0
:
sdram
{
compatible
=
"ibm,sdram-460sx"
,
"ibm,sdram-405gp"
;
dcr
-
reg
=
<
0x010
0x002
>;
};
MAL0
:
mcmal
{
compatible
=
"ibm,mcmal-460sx"
,
"ibm,mcmal2"
;
dcr
-
reg
=
<
0x180
0x62
>;
num
-
tx
-
chans
=
<
4
>;
num
-
rx
-
chans
=
<
32
>;
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
interrupt
-
parent
=
<&
UIC1
>;
interrupts
=
<
/*
TXEOB
*/
0x6
0x4
/*
RXEOB
*/
0x7
0x4
/*
SERR
*/
0x1
0x4
/*
TXDE
*/
0x2
0x4
/*
RXDE
*/
0x3
0x4
/*
COAL
TX0
*/
0x18
0x2
/*
COAL
TX1
*/
0x19
0x2
/*
COAL
TX2
*/
0x1a
0x2
/*
COAL
TX3
*/
0x1b
0x2
/*
COAL
RX0
*/
0x1c
0x2
/*
COAL
RX1
*/
0x1d
0x2
/*
COAL
RX2
*/
0x1e
0x2
/*
COAL
RX3
*/
0x1f
0x2
>;
};
POB0
:
opb
{
compatible
=
"ibm,opb-460sx"
,
"ibm,opb"
;
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
ranges
=
<
0xb0000000
0x00000004
0xb0000000
0x50000000
>;
clock
-
frequency
=
<
0
>;
/*
Filled
in
by
U
-
Boot
*/
EBC0
:
ebc
{
compatible
=
"ibm,ebc-460sx"
,
"ibm,ebc"
;
dcr
-
reg
=
<
0x012
0x002
>;
#
address
-
cells
=
<
2
>;
#
size
-
cells
=
<
1
>;
clock
-
frequency
=
<
0
>;
/*
Filled
in
by
U
-
Boot
*/
/*
ranges
property
is
supplied
by
U
-
Boot
*/
interrupts
=
<
0x6
0x4
>;
interrupt
-
parent
=
<&
UIC1
>;
nor_flash
@
0
,
0
{
compatible
=
"amd,s29gl512n"
,
"cfi-flash"
;
bank
-
width
=
<
2
>;
reg
=
<
0x0000000
0x00000000
0x04000000
>;
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
partition
@
0
{
label
=
"kernel"
;
reg
=
<
0x00000000
0x001e0000
>;
};
partition
@
1e0000
{
label
=
"dtb"
;
reg
=
<
0x001e0000
0x00020000
>;
};
partition
@
200000
{
label
=
"ramdisk"
;
reg
=
<
0x00200000
0x01400000
>;
};
partition
@
1600000
{
label
=
"jffs2"
;
reg
=
<
0x01600000
0x00400000
>;
};
partition
@
1
a00000
{
label
=
"user"
;
reg
=
<
0x01a00000
0x02560000
>;
};
partition
@
3f60000
{
label
=
"env"
;
reg
=
<
0x03f60000
0x00040000
>;
};
partition
@
3f
a0000
{
label
=
"u-boot"
;
reg
=
<
0x03fa0000
0x00060000
>;
};
};
};
UART0
:
serial
@
ef600200
{
device_type
=
"serial"
;
compatible
=
"ns16550"
;
reg
=
<
0xef600200
0x00000008
>;
virtual
-
reg
=
<
0xef600200
>;
clock
-
frequency
=
<
0
>;
/*
Filled
in
by
U
-
Boot
*/
current
-
speed
=
<
0
>;
/*
Filled
in
by
U
-
Boot
*/
interrupt
-
parent
=
<&
UIC0
>;
interrupts
=
<
0x0
0x4
>;
};
RGMII0
:
emac
-
rgmii
@
ef600900
{
compatible
=
"ibm,rgmii-460sx"
,
"ibm,rgmii"
;
reg
=
<
0xef600900
0x00000008
>;
};
EMAC0
:
ethernet
@
ef600a00
{
device_type
=
"network"
;
compatible
=
"ibm,emac-460sx"
,
"ibm,emac4"
;
interrupt
-
parent
=
<&
EMAC0
>;
interrupts
=
<
0x0
0x1
>;
#
interrupt
-
cells
=
<
1
>;
#
address
-
cells
=
<
0
>;
#
size
-
cells
=
<
0
>;
interrupt
-
map
=
</*
Status
*/
0x0
&
UIC0
0x13
0x4
/*
Wake
*/
0x1
&
UIC2
0x1d
0x4
>;
reg
=
<
0xef600a00
0x00000070
>;
local
-
mac
-
address
=
[
000000000000
];
/*
Filled
in
by
U
-
Boot
*/
mal
-
device
=
<&
MAL0
>;
mal
-
tx
-
channel
=
<
0
>;
mal
-
rx
-
channel
=
<
0
>;
cell
-
index
=
<
0
>;
max
-
frame
-
size
=
<
9000
>;
rx
-
fifo
-
size
=
<
4096
>;
tx
-
fifo
-
size
=
<
2048
>;
phy
-
mode
=
"rgmii"
;
phy
-
map
=
<
0x00000000
>;
rgmii
-
device
=
<&
RGMII0
>;
rgmii
-
channel
=
<
0
>;
has
-
inverted
-
stacr
-
oc
;
has
-
new
-
stacr
-
staopc
;
};
};
};
chosen
{
linux
,
stdout
-
path
=
"/plb/opb/serial@ef600200"
;
};
};
arch/powerpc/configs/44x/canyonlands_defconfig
View file @
652e8f8d
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.29-rc
2
#
Tue Jan 20 08:22:35
2009
# Linux kernel version: 2.6.29-rc
3
#
Mon Feb 2 13:13:04
2009
#
# CONFIG_PPC64 is not set
...
...
@@ -74,6 +74,15 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_TASKSTATS is not set
# CONFIG_AUDIT is not set
#
# RCU Subsystem
#
CONFIG_CLASSIC_RCU=y
# CONFIG_TREE_RCU is not set
# CONFIG_PREEMPT_RCU is not set
# CONFIG_TREE_RCU_TRACE is not set
# CONFIG_PREEMPT_RCU_TRACE is not set
# CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=14
# CONFIG_GROUP_SCHED is not set
...
...
@@ -147,11 +156,6 @@ CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
CONFIG_CLASSIC_RCU=y
# CONFIG_TREE_RCU is not set
# CONFIG_PREEMPT_RCU is not set
# CONFIG_TREE_RCU_TRACE is not set
# CONFIG_PREEMPT_RCU_TRACE is not set
# CONFIG_FREEZER is not set
CONFIG_PPC4xx_PCI_EXPRESS=y
...
...
@@ -373,6 +377,7 @@ CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
# CONFIG_MTD is not set
CONFIG_OF_DEVICE=y
CONFIG_OF_I2C=y
# CONFIG_PARPORT is not set
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_FD is not set
...
...
@@ -384,6 +389,7 @@ CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=35000
...
...
@@ -466,6 +472,15 @@ CONFIG_IBM_NEW_EMAC_EMAC4=y
#
# Enable WiMAX (Networking options) to see the WiMAX drivers
#
#
# USB Network Adapters
#
# CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET is not set
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
...
...
@@ -533,13 +548,136 @@ CONFIG_LEGACY_PTY_COUNT=256
# CONFIG_RAW_DRIVER is not set
# CONFIG_TCG_TPM is not set
CONFIG_DEVPORT=y
# CONFIG_I2C is not set
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_HELPER_AUTO=y
#
# I2C Hardware Bus support
#
#
# PC SMBus host controller drivers
#
# CONFIG_I2C_ALI1535 is not set
# CONFIG_I2C_ALI1563 is not set
# CONFIG_I2C_ALI15X3 is not set
# CONFIG_I2C_AMD756 is not set
# CONFIG_I2C_AMD8111 is not set
# CONFIG_I2C_I801 is not set
# CONFIG_I2C_ISCH is not set
# CONFIG_I2C_PIIX4 is not set
# CONFIG_I2C_NFORCE2 is not set
# CONFIG_I2C_SIS5595 is not set
# CONFIG_I2C_SIS630 is not set
# CONFIG_I2C_SIS96X is not set
# CONFIG_I2C_VIA is not set
# CONFIG_I2C_VIAPRO is not set
#
# I2C system bus drivers (mostly embedded / system-on-chip)
#
CONFIG_I2C_IBM_IIC=y
# CONFIG_I2C_MPC is not set
# CONFIG_I2C_OCORES is not set
# CONFIG_I2C_SIMTEC is not set
#
# External I2C/SMBus adapter drivers
#
# CONFIG_I2C_PARPORT_LIGHT is not set
# CONFIG_I2C_TAOS_EVM is not set
# CONFIG_I2C_TINY_USB is not set
#
# Graphics adapter I2C/DDC channel drivers
#
# CONFIG_I2C_VOODOO3 is not set
#
# Other I2C/SMBus bus drivers
#
# CONFIG_I2C_PCA_PLATFORM is not set
# CONFIG_I2C_STUB is not set
#
# Miscellaneous I2C Chip support
#
# CONFIG_DS1682 is not set
# CONFIG_SENSORS_PCF8574 is not set
# CONFIG_PCF8575 is not set
# CONFIG_SENSORS_PCA9539 is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_SENSORS_MAX6875 is not set
# CONFIG_SENSORS_TSL2550 is not set
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set
# CONFIG_SPI is not set
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
# CONFIG_GPIOLIB is not set
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
# CONFIG_HWMON is not set
CONFIG_HWMON=y
# CONFIG_HWMON_VID is not set
CONFIG_SENSORS_AD7414=y
# CONFIG_SENSORS_AD7418 is not set
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
# CONFIG_SENSORS_ADM1029 is not set
# CONFIG_SENSORS_ADM1031 is not set
# CONFIG_SENSORS_ADM9240 is not set
# CONFIG_SENSORS_ADT7462 is not set
# CONFIG_SENSORS_ADT7470 is not set
# CONFIG_SENSORS_ADT7473 is not set
# CONFIG_SENSORS_ADT7475 is not set
# CONFIG_SENSORS_ATXP1 is not set
# CONFIG_SENSORS_DS1621 is not set
# CONFIG_SENSORS_I5K_AMB is not set
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_F71882FG is not set
# CONFIG_SENSORS_F75375S is not set
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_IT87 is not set
# CONFIG_SENSORS_LM63 is not set
# CONFIG_SENSORS_LM75 is not set
# CONFIG_SENSORS_LM77 is not set
# CONFIG_SENSORS_LM78 is not set
# CONFIG_SENSORS_LM80 is not set
# CONFIG_SENSORS_LM83 is not set
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM87 is not set
# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_LM93 is not set
# CONFIG_SENSORS_LTC4245 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_MAX6650 is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_PC87427 is not set
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_DME1737 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_SMSC47M192 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
# CONFIG_SENSORS_ADS7828 is not set
# CONFIG_SENSORS_THMC50 is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not set
# CONFIG_SENSORS_VT8231 is not set
# CONFIG_SENSORS_W83781D is not set
# CONFIG_SENSORS_W83791D is not set
# CONFIG_SENSORS_W83792D is not set
# CONFIG_SENSORS_W83793 is not set
# CONFIG_SENSORS_W83L785TS is not set
# CONFIG_SENSORS_W83L786NG is not set
# CONFIG_SENSORS_W83627HF is not set
# CONFIG_SENSORS_W83627EHF is not set
# CONFIG_HWMON_DEBUG_CHIP is not set
# CONFIG_THERMAL is not set
# CONFIG_THERMAL_HWMON is not set
# CONFIG_WATCHDOG is not set
...
...
@@ -556,7 +694,12 @@ CONFIG_SSB_POSSIBLE=y
# CONFIG_MFD_CORE is not set
# CONFIG_MFD_SM501 is not set
# CONFIG_HTC_PASIC3 is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_MFD_TMIO is not set
# CONFIG_PMIC_DA903X is not set
# CONFIG_MFD_WM8400 is not set
# CONFIG_MFD_WM8350_I2C is not set
# CONFIG_MFD_PCF50633 is not set
# CONFIG_REGULATOR is not set
#
...
...
@@ -574,6 +717,7 @@ CONFIG_SSB_POSSIBLE=y
# Multimedia drivers
#
CONFIG_DAB=y
# CONFIG_USB_DABUSB is not set
#
# Graphics support
...
...
@@ -590,7 +734,109 @@ CONFIG_VIDEO_OUTPUT_CONTROL=m
#
# CONFIG_DISPLAY_SUPPORT is not set
# CONFIG_SOUND is not set
# CONFIG_USB_SUPPORT is not set
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
CONFIG_USB_DEVICE_CLASS=y
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
CONFIG_USB_MON=y
# CONFIG_USB_WUSB is not set
# CONFIG_USB_WUSB_CBAF is not set
#
# USB Host Controller Drivers
#
# CONFIG_USB_C67X00_HCD is not set
CONFIG_USB_EHCI_HCD=m
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
# CONFIG_USB_EHCI_TT_NEWSCHED is not set
CONFIG_USB_EHCI_HCD_PPC_OF=y
# CONFIG_USB_OXU210HP_HCD is not set
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1760_HCD is not set
CONFIG_USB_OHCI_HCD=y
CONFIG_USB_OHCI_HCD_PPC_OF=y
CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
CONFIG_USB_OHCI_HCD_PCI=y
CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y
CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
# CONFIG_USB_UHCI_HCD is not set
# CONFIG_USB_SL811_HCD is not set
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_WHCI_HCD is not set
# CONFIG_USB_HWA_HCD is not set
#
# USB Device Class drivers
#
# CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set
# CONFIG_USB_WDM is not set
# CONFIG_USB_TMC is not set
#
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
#
#
# see USB_STORAGE Help for more information
#
CONFIG_USB_LIBUSUAL=y
#
# USB Imaging devices
#
# CONFIG_USB_MDC800 is not set
#
# USB port drivers
#
# CONFIG_USB_SERIAL is not set
#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI62 is not set
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_ADUTUX is not set
# CONFIG_USB_SEVSEG is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_LEGOTOWER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_BERRY_CHARGE is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_PHIDGET is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_FTDI_ELAN is not set
# CONFIG_USB_APPLEDISPLAY is not set
# CONFIG_USB_SISUSBVGA is not set
# CONFIG_USB_LD is not set
# CONFIG_USB_TRANCEVIBRATOR is not set
# CONFIG_USB_IOWARRIOR is not set
# CONFIG_USB_TEST is not set
# CONFIG_USB_ISIGHTFW is not set
# CONFIG_USB_VST is not set
# CONFIG_USB_GADGET is not set
#
# OTG and related infrastructure
#
# CONFIG_UWB is not set
# CONFIG_MMC is not set
# CONFIG_MEMSTICK is not set
...
...
arch/powerpc/configs/44x/redwood_defconfig
0 → 100644
View file @
652e8f8d
This diff is collapsed.
Click to expand it.
arch/powerpc/include/asm/highmem.h
View file @
652e8f8d
...
...
@@ -39,15 +39,15 @@ extern pte_t *pkmap_page_table;
* chunk of RAM.
*/
/*
* We use one full pte table with 4K pages. And with 16K/64K pages pte
* table covers enough memory (32MB
and 512MB resp.)
that both FIXMAP
* and PKMAP can be placed in
single pte table. We use 1024 pages for
*
PKMAP in case of 16K/64K pag
es.
* We use one full pte table with 4K pages. And with 16K/64K
/256K
pages pte
* table covers enough memory (32MB
/512MB/2GB resp.), so
that both FIXMAP
* and PKMAP can be placed in
a single pte table. We use 512 pages for PKMAP
*
in case of 16K/64K/256K page siz
es.
*/
#ifdef CONFIG_PPC_4K_PAGES
#define PKMAP_ORDER PTE_SHIFT
#else
#define PKMAP_ORDER
10
#define PKMAP_ORDER
9
#endif
#define LAST_PKMAP (1 << PKMAP_ORDER)
#ifndef CONFIG_PPC_4K_PAGES
...
...
arch/powerpc/include/asm/mmu-44x.h
View file @
652e8f8d
...
...
@@ -83,6 +83,8 @@ typedef struct {
#define PPC44x_TLBE_SIZE PPC44x_TLB_16K
#elif (PAGE_SHIFT == 16)
#define PPC44x_TLBE_SIZE PPC44x_TLB_64K
#elif (PAGE_SHIFT == 18)
#define PPC44x_TLBE_SIZE PPC44x_TLB_256K
#else
#error "Unsupported PAGE_SIZE"
#endif
...
...
arch/powerpc/include/asm/page.h
View file @
652e8f8d
...
...
@@ -19,12 +19,14 @@
#include <asm/kdump.h>
/*
* On regular PPC32 page size is 4K (but we support 4K/16K/64K pages
* On regular PPC32 page size is 4K (but we support 4K/16K/64K
/256K
pages
* on PPC44x). For PPC64 we support either 4K or 64K software
* page size. When using 64K pages however, whether we are really supporting
* 64K pages in HW or not is irrelevant to those definitions.
*/
#if defined(CONFIG_PPC_64K_PAGES)
#if defined(CONFIG_PPC_256K_PAGES)
#define PAGE_SHIFT 18
#elif defined(CONFIG_PPC_64K_PAGES)
#define PAGE_SHIFT 16
#elif defined(CONFIG_PPC_16K_PAGES)
#define PAGE_SHIFT 14
...
...
arch/powerpc/include/asm/page_32.h
View file @
652e8f8d
...
...
@@ -19,7 +19,11 @@
#define PTE_FLAGS_OFFSET 0
#endif
#ifdef CONFIG_PPC_256K_PAGES
#define PTE_SHIFT (PAGE_SHIFT - PTE_T_LOG2 - 2)
/* 1/4 of a page */
#else
#define PTE_SHIFT (PAGE_SHIFT - PTE_T_LOG2)
/* full page */
#endif
#ifndef __ASSEMBLY__
/*
...
...
arch/powerpc/include/asm/thread_info.h
View file @
652e8f8d
...
...
@@ -12,8 +12,10 @@
/* We have 8k stacks on ppc32 and 16k on ppc64 */
#if
def CONFIG_PPC64
#if
defined(CONFIG_PPC64)
#define THREAD_SHIFT 14
#elif defined(CONFIG_PPC_256K_PAGES)
#define THREAD_SHIFT 15
#else
#define THREAD_SHIFT 13
#endif
...
...
arch/powerpc/kernel/cpu_setup_44x.S
View file @
652e8f8d
...
...
@@ -34,6 +34,7 @@ _GLOBAL(__setup_cpu_440grx)
blr
_GLOBAL
(
__setup_cpu_460ex
)
_GLOBAL
(
__setup_cpu_460gt
)
_GLOBAL
(
__setup_cpu_460sx
)
mflr
r4
bl
__init_fpu_44x
bl
__fixup_440A_mcheck
...
...
arch/powerpc/kernel/cputable.c
View file @
652e8f8d
...
...
@@ -47,6 +47,7 @@ extern void __setup_cpu_440spe(unsigned long offset, struct cpu_spec* spec);
extern
void
__setup_cpu_440x5
(
unsigned
long
offset
,
struct
cpu_spec
*
spec
);
extern
void
__setup_cpu_460ex
(
unsigned
long
offset
,
struct
cpu_spec
*
spec
);
extern
void
__setup_cpu_460gt
(
unsigned
long
offset
,
struct
cpu_spec
*
spec
);
extern
void
__setup_cpu_460sx
(
unsigned
long
offset
,
struct
cpu_spec
*
spec
);
extern
void
__setup_cpu_603
(
unsigned
long
offset
,
struct
cpu_spec
*
spec
);
extern
void
__setup_cpu_604
(
unsigned
long
offset
,
struct
cpu_spec
*
spec
);
extern
void
__setup_cpu_750
(
unsigned
long
offset
,
struct
cpu_spec
*
spec
);
...
...
@@ -1638,6 +1639,19 @@ static struct cpu_spec __initdata cpu_specs[] = {
.
machine_check
=
machine_check_440A
,
.
platform
=
"ppc440"
,
},
{
/* 460SX */
.
pvr_mask
=
0xffffff00
,
.
pvr_value
=
0x13541800
,
.
cpu_name
=
"460SX"
,
.
cpu_features
=
CPU_FTRS_44X
,
.
cpu_user_features
=
COMMON_USER_BOOKE
,
.
mmu_features
=
MMU_FTR_TYPE_44x
,
.
icache_bsize
=
32
,
.
dcache_bsize
=
32
,
.
cpu_setup
=
__setup_cpu_460sx
,
.
machine_check
=
machine_check_440A
,
.
platform
=
"ppc440"
,
},
{
/* default match */
.
pvr_mask
=
0x00000000
,
.
pvr_value
=
0x00000000
,
...
...
arch/powerpc/kernel/head_booke.h
View file @
652e8f8d
...
...
@@ -10,6 +10,15 @@
mtspr SPRN_IVOR##vector_number,r26; \
sync
#if (THREAD_SHIFT < 15)
#define ALLOC_STACK_FRAME(reg, val) \
addi reg,reg,val
#else
#define ALLOC_STACK_FRAME(reg, val) \
addis reg,reg,val@ha; \
addi reg,reg,val@l
#endif
#define NORMAL_EXCEPTION_PROLOG \
mtspr SPRN_SPRG0,r10;
/* save two registers to work with */
\
mtspr SPRN_SPRG1,r11; \
...
...
@@ -20,7 +29,7 @@
beq 1f; \
mfspr r1,SPRN_SPRG3;
/* if from user, start at top of */
\
lwz r1,THREAD_INFO-THREAD(r1);
/* this thread's kernel stack */
\
addi r1,r1,THREAD_SIZE;
\
ALLOC_STACK_FRAME(r1, THREAD_SIZE);
\
1: subi r1,r1,INT_FRAME_SIZE;
/* Allocate an exception frame */
\
mr r11,r1; \
stw r10,_CCR(r11);
/* save various registers */
\
...
...
arch/powerpc/platforms/44x/Kconfig
View file @
652e8f8d
...
...
@@ -118,6 +118,17 @@ config GLACIER
help
This option enables support for the AMCC PPC460GT evaluation board.
config REDWOOD
bool "Redwood"
depends on 44x
default n
select PPC44x_SIMPLE
select 460SX
select PCI
select PPC4xx_PCI_EXPRESS
help
This option enables support for the AMCC PPC460SX Redwood board.
config YOSEMITE
bool "Yosemite"
depends on 44x
...
...
@@ -220,6 +231,14 @@ config 460EX
select IBM_NEW_EMAC_EMAC4
select IBM_NEW_EMAC_TAH
config 460SX
bool
select PPC_FPU
select IBM_NEW_EMAC_EMAC4
select IBM_NEW_EMAC_RGMII
select IBM_NEW_EMAC_ZMII
select IBM_NEW_EMAC_TAH
# 44x errata/workaround config symbols, selected by the CPU models above
config IBM440EP_ERR42
bool
...
...
arch/powerpc/platforms/44x/ppc44x_simple.c
View file @
652e8f8d
...
...
@@ -57,6 +57,7 @@ static char *board[] __initdata = {
"ibm,ebony"
,
"amcc,katmai"
,
"amcc,rainier"
,
"amcc,redwood"
,
"amcc,sequoia"
,
"amcc,taishan"
,
"amcc,yosemite"
...
...
arch/powerpc/sysdev/ppc4xx_pci.c
View file @
652e8f8d
...
...
@@ -1822,6 +1822,8 @@ static int __init ppc4xx_pci_find_bridges(void)
{
struct
device_node
*
np
;
ppc_pci_flags
|=
PPC_PCI_ENABLE_PROC_DOMAINS
|
PPC_PCI_COMPAT_DOMAIN_0
;
#ifdef CONFIG_PPC4xx_PCI_EXPRESS
for_each_compatible_node
(
np
,
NULL
,
"ibm,plb-pciex"
)
ppc4xx_probe_pciex_bridge
(
np
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment