diff options
Diffstat (limited to 'target/linux/generic-2.6/patches-2.6.24/700-powerpc_git.patch')
-rw-r--r-- | target/linux/generic-2.6/patches-2.6.24/700-powerpc_git.patch | 5150 |
1 files changed, 2103 insertions, 3047 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.24/700-powerpc_git.patch b/target/linux/generic-2.6/patches-2.6.24/700-powerpc_git.patch index ffaa28f02e..e31b814977 100644 --- a/target/linux/generic-2.6/patches-2.6.24/700-powerpc_git.patch +++ b/target/linux/generic-2.6/patches-2.6.24/700-powerpc_git.patch @@ -1,8 +1,6 @@ -Index: linux-2.6.24.7/Documentation/kernel-parameters.txt -=================================================================== ---- linux-2.6.24.7.orig/Documentation/kernel-parameters.txt -+++ linux-2.6.24.7/Documentation/kernel-parameters.txt -@@ -686,6 +686,7 @@ and is between 256 and 4096 characters. +--- a/Documentation/kernel-parameters.txt ++++ b/Documentation/kernel-parameters.txt +@@ -686,6 +686,7 @@ See Documentation/isdn/README.HiSax. hugepages= [HW,X86-32,IA-64] Maximal number of HugeTLB pages. @@ -10,22 +8,18 @@ Index: linux-2.6.24.7/Documentation/kernel-parameters.txt i8042.direct [HW] Put keyboard port into non-translated mode i8042.dumbkbd [HW] Pretend that controller can only read data from -Index: linux-2.6.24.7/Documentation/powerpc/00-INDEX -=================================================================== ---- linux-2.6.24.7.orig/Documentation/powerpc/00-INDEX -+++ linux-2.6.24.7/Documentation/powerpc/00-INDEX -@@ -28,3 +28,6 @@ sound.txt +--- a/Documentation/powerpc/00-INDEX ++++ b/Documentation/powerpc/00-INDEX +@@ -28,3 +28,6 @@ - info on sound support under Linux/PPC zImage_layout.txt - info on the kernel images for Linux/PPC +qe_firmware.txt + - describes the layout of firmware binaries for the Freescale QUICC + Engine and the code that parses and uploads the microcode therein. -Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt -=================================================================== ---- linux-2.6.24.7.orig/Documentation/powerpc/booting-without-of.txt -+++ linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt -@@ -52,7 +52,11 @@ Table of Contents +--- a/Documentation/powerpc/booting-without-of.txt ++++ b/Documentation/powerpc/booting-without-of.txt +@@ -52,7 +52,11 @@ i) Freescale QUICC Engine module (QE) j) CFI or JEDEC memory-mapped NOR flash k) Global Utilities Block @@ -38,7 +32,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt VII - Specifying interrupt information for devices 1) interrupts property -@@ -671,10 +675,10 @@ device or bus to be described by the dev +@@ -671,10 +675,10 @@ In general, the format of an address for a device is defined by the parent bus type, based on the #address-cells and #size-cells @@ -53,7 +47,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt Those 2 properties define 'cells' for representing an address and a size. A "cell" is a 32-bit number. For example, if both contain 2 -@@ -711,13 +715,14 @@ define a bus type with a more complex ad +@@ -711,13 +715,14 @@ like address space bits, you'll have to add a bus translator to the prom_parse.c file of the recent kernels for your bus type. @@ -72,7 +66,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt bus address, parent bus address, size -@@ -735,6 +740,10 @@ fit in a single 32-bit word. New 32-bi +@@ -735,6 +740,10 @@ 1/1 format, unless the processor supports physical addresses greater than 32-bits, in which case a 2/1 format is recommended. @@ -83,7 +77,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt 2) Note about "compatible" properties ------------------------------------- -@@ -1218,16 +1227,14 @@ platforms are moved over to use the flat +@@ -1218,16 +1227,14 @@ Required properties: - reg : Offset and length of the register set for the device @@ -102,7 +96,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt ethernet-phy@0 { ...... -@@ -1254,6 +1261,10 @@ platforms are moved over to use the flat +@@ -1254,6 +1261,10 @@ services interrupts for this device. - phy-handle : The phandle for the PHY connected to this ethernet controller. @@ -113,7 +107,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt Recommended properties: -@@ -1408,7 +1419,6 @@ platforms are moved over to use the flat +@@ -1408,7 +1419,6 @@ Example multi port host USB controller device node : usb@22000 { @@ -121,7 +115,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt compatible = "fsl-usb2-mph"; reg = <22000 1000>; #address-cells = <1>; -@@ -1422,7 +1432,6 @@ platforms are moved over to use the flat +@@ -1422,7 +1432,6 @@ Example dual role USB controller device node : usb@23000 { @@ -129,7 +123,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt compatible = "fsl-usb2-dr"; reg = <23000 1000>; #address-cells = <1>; -@@ -1586,7 +1595,6 @@ platforms are moved over to use the flat +@@ -1586,7 +1595,6 @@ iii) USB (Universal Serial Bus Controller) Required properties: @@ -137,7 +131,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt - compatible : could be "qe_udc" or "fhci-hcd". - mode : the could be "host" or "slave". - reg : Offset and length of the register set for the device -@@ -1600,7 +1608,6 @@ platforms are moved over to use the flat +@@ -1600,7 +1608,6 @@ Example(slave): usb@6c0 { @@ -145,7 +139,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt compatible = "qe_udc"; reg = <6c0 40>; interrupts = <8b 0>; -@@ -1613,7 +1620,7 @@ platforms are moved over to use the flat +@@ -1613,7 +1620,7 @@ Required properties: - device_type : should be "network", "hldc", "uart", "transparent" @@ -154,7 +148,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt - compatible : could be "ucc_geth" or "fsl_atm" and so on. - model : should be "UCC". - device-id : the ucc number(1-8), corresponding to UCCx in UM. -@@ -1626,6 +1633,26 @@ platforms are moved over to use the flat +@@ -1626,6 +1633,26 @@ - interrupt-parent : the phandle for the interrupt controller that services interrupts for this device. - pio-handle : The phandle for the Parallel I/O port configuration. @@ -181,7 +175,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt - rx-clock : represents the UCC receive clock source. 0x00 : clock source is disabled; 0x1~0x10 : clock source is BRG1~BRG16 respectively; -@@ -1772,6 +1799,32 @@ platforms are moved over to use the flat +@@ -1772,6 +1799,32 @@ }; }; @@ -214,7 +208,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt j) CFI or JEDEC memory-mapped NOR flash Flash chips (Memory Technology Devices) are often used for solid state -@@ -2075,8 +2128,7 @@ platforms are moved over to use the flat +@@ -2075,8 +2128,7 @@ Example: localbus@f0010100 { @@ -224,7 +218,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt "fsl,pq2-localbus"; #address-cells = <2>; #size-cells = <1>; -@@ -2254,7 +2306,7 @@ platforms are moved over to use the flat +@@ -2254,7 +2306,7 @@ available. For Axon: 0x0000012a @@ -233,7 +227,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt The Xilinx EDK toolchain ships with a set of IP cores (devices) for use in Xilinx Spartan and Virtex FPGAs. The devices cover the whole range -@@ -2276,7 +2328,7 @@ platforms are moved over to use the flat +@@ -2276,7 +2328,7 @@ properties of the device node. In general, device nodes for IP-cores will take the following form: @@ -242,7 +236,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt compatible = "xlnx,(ip-core-name)-(HW_VER)" [, (list of compatible devices), ...]; reg = <(baseaddr) (size)>; -@@ -2286,6 +2338,9 @@ platforms are moved over to use the flat +@@ -2286,6 +2338,9 @@ xlnx,(parameter2) = <(int-value)>; }; @@ -252,7 +246,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt (ip-core-name): the name of the ip block (given after the BEGIN directive in system.mhs). Should be in lowercase and all underscores '_' converted to dashes '-'. -@@ -2294,9 +2349,9 @@ platforms are moved over to use the flat +@@ -2294,9 +2349,9 @@ dropped from the parameter name, the name is converted to lowercase and all underscore '_' characters are converted to dashes '-'. @@ -264,7 +258,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt Typically, the compatible list will include the exact IP core version followed by an older IP core version which implements the same -@@ -2326,11 +2381,11 @@ platforms are moved over to use the flat +@@ -2326,11 +2381,11 @@ becomes the following device tree node: @@ -278,7 +272,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt interrupts = <1 0>; // got this from the opb_intc parameters current-speed = <d#115200>; // standard serial device prop clock-frequency = <d#50000000>; // standard serial device prop -@@ -2339,16 +2394,19 @@ platforms are moved over to use the flat +@@ -2339,16 +2394,19 @@ xlnx,use-parity = <0>; }; @@ -308,7 +302,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt BEGIN opb_ps2_dual_ref PARAMETER INSTANCE = opb_ps2_dual_ref_0 -@@ -2370,21 +2428,24 @@ platforms are moved over to use the flat +@@ -2370,21 +2428,24 @@ It would result in the following device tree nodes: @@ -336,7 +330,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt interrupts = <3 0>; cell-index = <0>; }; -@@ -2447,17 +2508,18 @@ platforms are moved over to use the flat +@@ -2447,17 +2508,18 @@ Gives this device tree (some properties removed for clarity): @@ -358,7 +352,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt #address-cells = <1>; #size-cells = <1>; ranges = <20000000 20000000 20000000 -@@ -2465,11 +2527,11 @@ platforms are moved over to use the flat +@@ -2465,11 +2527,11 @@ 80000000 80000000 40000000 c0000000 c0000000 20000000>; @@ -372,7 +366,7 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt reg = <d1000fc0 20>; }; }; -@@ -2514,6 +2576,46 @@ platforms are moved over to use the flat +@@ -2514,6 +2576,46 @@ Requred properties: - current-speed : Baud rate of uartlite @@ -419,10 +413,8 @@ Index: linux-2.6.24.7/Documentation/powerpc/booting-without-of.txt More devices will be defined as this spec matures. VII - Specifying interrupt information for devices -Index: linux-2.6.24.7/Documentation/powerpc/qe_firmware.txt -=================================================================== --- /dev/null -+++ linux-2.6.24.7/Documentation/powerpc/qe_firmware.txt ++++ b/Documentation/powerpc/qe_firmware.txt @@ -0,0 +1,295 @@ + Freescale QUICC Engine Firmware Uploading + ----------------------------------------- @@ -719,11 +711,9 @@ Index: linux-2.6.24.7/Documentation/powerpc/qe_firmware.txt + +A Python program that creates firmware binaries from the header files normally +distributed by Freescale can be found on http://opensource.freescale.com. -Index: linux-2.6.24.7/arch/powerpc/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/Kconfig -+++ linux-2.6.24.7/arch/powerpc/Kconfig -@@ -140,6 +140,9 @@ config DEFAULT_UIMAGE +--- a/arch/powerpc/Kconfig ++++ b/arch/powerpc/Kconfig +@@ -140,6 +140,9 @@ Used to allow a board to specify it wants a uImage built by default default n @@ -733,7 +723,7 @@ Index: linux-2.6.24.7/arch/powerpc/Kconfig config PPC64_SWSUSP bool depends on PPC64 && (BROKEN || (PPC_PMAC64 && EXPERIMENTAL)) -@@ -160,11 +163,13 @@ config PPC_DCR +@@ -160,11 +163,13 @@ config PPC_OF_PLATFORM_PCI bool @@ -747,7 +737,7 @@ Index: linux-2.6.24.7/arch/powerpc/Kconfig source "arch/powerpc/platforms/Kconfig" menu "Kernel options" -@@ -417,7 +422,7 @@ endmenu +@@ -417,7 +422,7 @@ config ISA_DMA_API bool @@ -756,7 +746,7 @@ Index: linux-2.6.24.7/arch/powerpc/Kconfig menu "Bus options" -@@ -467,7 +472,7 @@ config MCA +@@ -467,7 +472,7 @@ config PCI bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_86xx \ || PPC_MPC52xx || (EMBEDDED && (PPC_PSERIES || PPC_ISERIES)) \ @@ -765,11 +755,9 @@ Index: linux-2.6.24.7/arch/powerpc/Kconfig default y if !40x && !CPM2 && !8xx && !PPC_83xx \ && !PPC_85xx && !PPC_86xx default PCI_PERMEDIA if !4xx && !CPM2 && !8xx -Index: linux-2.6.24.7/arch/powerpc/Kconfig.debug -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/Kconfig.debug -+++ linux-2.6.24.7/arch/powerpc/Kconfig.debug -@@ -151,6 +151,13 @@ config BOOTX_TEXT +--- a/arch/powerpc/Kconfig.debug ++++ b/arch/powerpc/Kconfig.debug +@@ -151,6 +151,13 @@ config PPC_EARLY_DEBUG bool "Early debugging (dangerous)" @@ -783,7 +771,7 @@ Index: linux-2.6.24.7/arch/powerpc/Kconfig.debug choice prompt "Early debugging console" -@@ -218,7 +225,16 @@ config PPC_EARLY_DEBUG_44x +@@ -218,7 +225,16 @@ depends on 44x help Select this to enable early debugging for IBM 44x chips via the @@ -801,7 +789,7 @@ Index: linux-2.6.24.7/arch/powerpc/Kconfig.debug config PPC_EARLY_DEBUG_CPM bool "Early serial debugging for Freescale CPM-based serial ports" -@@ -235,12 +251,20 @@ config PPC_EARLY_DEBUG_44x_PHYSLOW +@@ -235,12 +251,20 @@ hex "Low 32 bits of early debug UART physical address" depends on PPC_EARLY_DEBUG_44x default "0x40000200" @@ -822,11 +810,9 @@ Index: linux-2.6.24.7/arch/powerpc/Kconfig.debug config PPC_EARLY_DEBUG_CPM_ADDR hex "CPM UART early debug transmit descriptor address" depends on PPC_EARLY_DEBUG_CPM -Index: linux-2.6.24.7/arch/powerpc/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/Makefile -+++ linux-2.6.24.7/arch/powerpc/Makefile -@@ -167,6 +167,9 @@ boot := arch/$(ARCH)/boot +--- a/arch/powerpc/Makefile ++++ b/arch/powerpc/Makefile +@@ -167,6 +167,9 @@ $(BOOT_TARGETS): vmlinux $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@) @@ -836,10 +822,8 @@ Index: linux-2.6.24.7/arch/powerpc/Makefile define archhelp @echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage.*)' @echo ' install - Install kernel using' -Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/4xx.c -+++ linux-2.6.24.7/arch/powerpc/boot/4xx.c +--- a/arch/powerpc/boot/4xx.c ++++ b/arch/powerpc/boot/4xx.c @@ -22,16 +22,14 @@ #include "dcr.h" @@ -859,7 +843,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c if (bank_config & SDRAM_CONFIG_BANK_ENABLE) memsize += SDRAM_CONFIG_BANK_SIZE(bank_config); } -@@ -39,6 +37,69 @@ void ibm4xx_fixup_memsize(void) +@@ -39,6 +37,69 @@ dt_fixup_memory(0, memsize); } @@ -929,7 +913,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c /* 4xx DDR1/2 Denali memory controller support */ /* DDR0 registers */ #define DDR0_02 2 -@@ -77,19 +138,13 @@ void ibm4xx_fixup_memsize(void) +@@ -77,19 +138,13 @@ #define DDR_GET_VAL(val, mask, shift) (((val) >> (shift)) & (mask)) @@ -950,7 +934,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c if (!DDR_GET_VAL(val, DDR_START, DDR_START_SHIFT)) fatal("DDR controller is not initialized\n"); -@@ -99,12 +154,12 @@ void ibm4xx_denali_fixup_memsize(void) +@@ -99,12 +154,12 @@ max_row = DDR_GET_VAL(val, DDR_MAX_ROW_REG, DDR_MAX_ROW_REG_SHIFT); /* get CS value */ @@ -965,7 +949,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c cs++; val = val >> 1; } -@@ -115,15 +170,15 @@ void ibm4xx_denali_fixup_memsize(void) +@@ -115,15 +170,15 @@ fatal("DDR wrong CS configuration\n"); /* get data path bytes */ @@ -984,7 +968,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c row = DDR_GET_VAL(val, DDR_APIN, DDR_APIN_SHIFT); if (row > max_row) -@@ -131,7 +186,7 @@ void ibm4xx_denali_fixup_memsize(void) +@@ -131,7 +186,7 @@ row = max_row - row; /* get collomn size and banks */ @@ -993,7 +977,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c col = DDR_GET_VAL(val, DDR_COL_SZ, DDR_COL_SZ_SHIFT); if (col > max_col) -@@ -179,13 +234,17 @@ void ibm40x_dbcr_reset(void) +@@ -179,13 +234,17 @@ #define EMAC_RESET 0x20000000 void ibm4xx_quiesce_eth(u32 *emac0, u32 *emac1) { @@ -1012,7 +996,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c } /* Read 4xx EBC bus bridge registers to get mappings of the peripheral -@@ -217,84 +276,335 @@ void ibm4xx_fixup_ebc_ranges(const char +@@ -217,84 +276,335 @@ setprop(devp, "ranges", ranges, (p - ranges) * sizeof(u32)); } @@ -1413,10 +1397,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.c - dt_fixup_clock("/plb/opb/serial@ef600600", uart0); + dt_fixup_clock("/plb/opb/serial@ef600400", uart1); } -Index: linux-2.6.24.7/arch/powerpc/boot/4xx.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/4xx.h -+++ linux-2.6.24.7/arch/powerpc/boot/4xx.h +--- a/arch/powerpc/boot/4xx.h ++++ b/arch/powerpc/boot/4xx.h @@ -11,12 +11,22 @@ #ifndef _POWERPC_BOOT_4XX_H_ #define _POWERPC_BOOT_4XX_H_ @@ -1442,11 +1424,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/4xx.h + unsigned int tmr_clk); #endif /* _POWERPC_BOOT_4XX_H_ */ -Index: linux-2.6.24.7/arch/powerpc/boot/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/Makefile -+++ linux-2.6.24.7/arch/powerpc/boot/Makefile -@@ -33,12 +33,15 @@ ifeq ($(call cc-option-yn, -fstack-prote +--- a/arch/powerpc/boot/Makefile ++++ b/arch/powerpc/boot/Makefile +@@ -33,12 +33,15 @@ BOOTCFLAGS += -fno-stack-protector endif @@ -1463,7 +1443,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/Makefile zlib := inffast.c inflate.c inftrees.c zlibheader := inffast.h inffixed.h inflate.h inftrees.h infutil.h zliblinuxheader := zlib.h zconf.h zutil.h -@@ -46,17 +49,21 @@ zliblinuxheader := zlib.h zconf.h zutil. +@@ -46,17 +49,21 @@ $(addprefix $(obj)/,$(zlib) gunzip_util.o main.o): \ $(addprefix $(obj)/,$(zliblinuxheader)) $(addprefix $(obj)/,$(zlibheader)) @@ -1488,7 +1468,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/Makefile src-boot := $(src-wlib) $(src-plat) empty.c src-boot := $(addprefix $(obj)/, $(src-boot)) -@@ -101,24 +108,61 @@ quiet_cmd_bootar = BOOTAR $@ +@@ -101,24 +108,61 @@ cmd_bootar = $(CROSS32AR) -cr $@.$$$$ $(filter-out FORCE,$^); mv $@.$$$$ $@ $(patsubst %.c,%.o, $(filter %.c, $(src-boot))): %.o: %.c FORCE @@ -1552,7 +1532,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/Makefile # Bits for building various flavours of zImage ifneq ($(CROSS32_COMPILE),) -@@ -150,15 +194,26 @@ image-$(CONFIG_DEFAULT_UIMAGE) += uImag +@@ -150,15 +194,26 @@ ifneq ($(CONFIG_DEVICE_TREE),"") image-$(CONFIG_PPC_8xx) += cuImage.8xx image-$(CONFIG_PPC_EP88XC) += zImage.ep88xc @@ -1579,7 +1559,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/Makefile endif # For 32-bit powermacs, build the COFF and miboot images -@@ -243,3 +298,51 @@ clean-kernel := vmlinux.strip vmlinux.bi +@@ -243,3 +298,51 @@ clean-kernel += $(addsuffix .gz,$(clean-kernel)) # If not absolute clean-files are relative to $(obj). clean-files += $(addprefix $(objtree)/, $(clean-kernel)) @@ -1631,11 +1611,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/Makefile + +$(obj)/bootwrapper_install: $(all-installed) + -Index: linux-2.6.24.7/arch/powerpc/boot/bamboo.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/bamboo.c -+++ linux-2.6.24.7/arch/powerpc/boot/bamboo.c -@@ -30,8 +30,8 @@ static void bamboo_fixups(void) +--- a/arch/powerpc/boot/bamboo.c ++++ b/arch/powerpc/boot/bamboo.c +@@ -30,8 +30,8 @@ { unsigned long sysclk = 33333333; @@ -1646,7 +1624,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/bamboo.c ibm4xx_quiesce_eth((u32 *)0xef600e00, (u32 *)0xef600f00); dt_fixup_mac_addresses(bamboo_mac0, bamboo_mac1); } -@@ -42,6 +42,6 @@ void bamboo_init(void *mac0, void *mac1) +@@ -42,6 +42,6 @@ platform_ops.exit = ibm44x_dbcr_reset; bamboo_mac0 = mac0; bamboo_mac1 = mac1; @@ -1654,11 +1632,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/bamboo.c + fdt_init(_dtb_start); serial_console_init(); } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-52xx.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/cuboot-52xx.c -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-52xx.c -@@ -53,7 +53,7 @@ void platform_init(unsigned long r3, uns +--- a/arch/powerpc/boot/cuboot-52xx.c ++++ b/arch/powerpc/boot/cuboot-52xx.c +@@ -53,7 +53,7 @@ unsigned long r6, unsigned long r7) { CUBOOT_INIT(); @@ -1667,10 +1643,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-52xx.c serial_console_init(); platform_ops.fixups = platform_fixups; } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-824x.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-824x.c ++++ b/arch/powerpc/boot/cuboot-824x.c @@ -0,0 +1,53 @@ +/* + * Old U-boot compatibility for 824x @@ -1725,11 +1699,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-824x.c + serial_console_init(); + platform_ops.fixups = platform_fixups; +} -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-83xx.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/cuboot-83xx.c -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-83xx.c -@@ -24,7 +24,8 @@ static void platform_fixups(void) +--- a/arch/powerpc/boot/cuboot-83xx.c ++++ b/arch/powerpc/boot/cuboot-83xx.c +@@ -24,7 +24,8 @@ void *soc; dt_fixup_memory(bd.bi_memstart, bd.bi_memsize); @@ -1739,7 +1711,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-83xx.c dt_fixup_cpu_clocks(bd.bi_intfreq, bd.bi_busfreq / 4, bd.bi_busfreq); /* Unfortunately, the specific model number is encoded in the -@@ -52,7 +53,7 @@ void platform_init(unsigned long r3, uns +@@ -52,7 +53,7 @@ unsigned long r6, unsigned long r7) { CUBOOT_INIT(); @@ -1748,11 +1720,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-83xx.c serial_console_init(); platform_ops.fixups = platform_fixups; } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-85xx.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/cuboot-85xx.c -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-85xx.c -@@ -24,8 +24,9 @@ static void platform_fixups(void) +--- a/arch/powerpc/boot/cuboot-85xx.c ++++ b/arch/powerpc/boot/cuboot-85xx.c +@@ -24,8 +24,9 @@ void *soc; dt_fixup_memory(bd.bi_memstart, bd.bi_memsize); @@ -1764,7 +1734,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-85xx.c dt_fixup_cpu_clocks(bd.bi_intfreq, bd.bi_busfreq / 8, bd.bi_busfreq); /* Unfortunately, the specific model number is encoded in the -@@ -53,7 +54,7 @@ void platform_init(unsigned long r3, uns +@@ -53,7 +54,7 @@ unsigned long r6, unsigned long r7) { CUBOOT_INIT(); @@ -1773,11 +1743,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-85xx.c serial_console_init(); platform_ops.fixups = platform_fixups; } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-8xx.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/cuboot-8xx.c -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-8xx.c -@@ -41,7 +41,7 @@ void platform_init(unsigned long r3, uns +--- a/arch/powerpc/boot/cuboot-8xx.c ++++ b/arch/powerpc/boot/cuboot-8xx.c +@@ -41,7 +41,7 @@ unsigned long r6, unsigned long r7) { CUBOOT_INIT(); @@ -1786,11 +1754,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-8xx.c serial_console_init(); platform_ops.fixups = platform_fixups; } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-hpc2.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/cuboot-hpc2.c -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-hpc2.c -@@ -42,7 +42,7 @@ void platform_init(unsigned long r3, uns +--- a/arch/powerpc/boot/cuboot-hpc2.c ++++ b/arch/powerpc/boot/cuboot-hpc2.c +@@ -42,7 +42,7 @@ unsigned long r6, unsigned long r7) { CUBOOT_INIT(); @@ -1799,10 +1765,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-hpc2.c serial_console_init(); platform_ops.fixups = platform_fixups; } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-katmai.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-katmai.c ++++ b/arch/powerpc/boot/cuboot-katmai.c @@ -0,0 +1,56 @@ +/* + * Old U-boot compatibility for Katmai @@ -1860,11 +1824,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-katmai.c + fdt_init(_dtb_start); + serial_console_init(); +} -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-pq2.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/cuboot-pq2.c -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-pq2.c -@@ -255,7 +255,7 @@ void platform_init(unsigned long r3, uns +--- a/arch/powerpc/boot/cuboot-pq2.c ++++ b/arch/powerpc/boot/cuboot-pq2.c +@@ -255,7 +255,7 @@ unsigned long r6, unsigned long r7) { CUBOOT_INIT(); @@ -1873,10 +1835,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-pq2.c serial_console_init(); platform_ops.fixups = pq2_platform_fixups; } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-rainier.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-rainier.c ++++ b/arch/powerpc/boot/cuboot-rainier.c @@ -0,0 +1,56 @@ +/* + * Old U-boot compatibility for Rainier @@ -1934,11 +1894,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-rainier.c + fdt_init(_dtb_start); + serial_console_init(); +} -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-sequoia.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/cuboot-sequoia.c -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-sequoia.c -@@ -39,7 +39,7 @@ static void sequoia_fixups(void) +--- a/arch/powerpc/boot/cuboot-sequoia.c ++++ b/arch/powerpc/boot/cuboot-sequoia.c +@@ -39,7 +39,7 @@ { unsigned long sysclk = 33333333; @@ -1947,7 +1905,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-sequoia.c ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); ibm4xx_denali_fixup_memsize(); dt_fixup_mac_addresses(&bd.bi_enetaddr, &bd.bi_enet1addr); -@@ -51,6 +51,6 @@ void platform_init(unsigned long r3, uns +@@ -51,6 +51,6 @@ CUBOOT_INIT(); platform_ops.fixups = sequoia_fixups; platform_ops.exit = ibm44x_dbcr_reset; @@ -1955,10 +1913,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-sequoia.c + fdt_init(_dtb_start); serial_console_init(); } -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-taishan.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-taishan.c ++++ b/arch/powerpc/boot/cuboot-taishan.c @@ -0,0 +1,54 @@ +/* + * Old U-boot compatibility for Taishan @@ -2014,10 +1970,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-taishan.c + fdt_init(_dtb_start); + serial_console_init(); +} -Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-warp.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/cuboot-warp.c ++++ b/arch/powerpc/boot/cuboot-warp.c @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2008 PIKA Technologies @@ -2058,10 +2012,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/cuboot-warp.c + fdt_init(_dtb_start); + serial_console_init(); +} -Index: linux-2.6.24.7/arch/powerpc/boot/dcr.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dcr.h -+++ linux-2.6.24.7/arch/powerpc/boot/dcr.h +--- a/arch/powerpc/boot/dcr.h ++++ b/arch/powerpc/boot/dcr.h @@ -14,12 +14,20 @@ #define DCRN_SDRAM0_CFGADDR 0x010 #define DCRN_SDRAM0_CFGDATA 0x011 @@ -2084,7 +2036,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dcr.h #define SDRAM_CONFIG_BANK_ENABLE 0x00000001 #define SDRAM_CONFIG_SIZE_MASK 0x000e0000 -@@ -138,5 +146,54 @@ static const unsigned long sdram_bxcr[] +@@ -138,5 +146,54 @@ #define DCRN_CPC0_PLLMR 0xb0 #define DCRN_405_CPC0_CR0 0xb1 #define DCRN_405_CPC0_CR1 0xb2 @@ -2139,11 +2091,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dcr.h + #endif /* _PPC_BOOT_DCR_H_ */ -Index: linux-2.6.24.7/arch/powerpc/boot/devtree.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/devtree.c -+++ linux-2.6.24.7/arch/powerpc/boot/devtree.c -@@ -88,6 +88,20 @@ void dt_fixup_clock(const char *path, u3 +--- a/arch/powerpc/boot/devtree.c ++++ b/arch/powerpc/boot/devtree.c +@@ -88,6 +88,20 @@ } } @@ -2164,10 +2114,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/devtree.c void dt_fixup_mac_address(u32 index, const u8 *addr) { void *devp = find_node_by_prop_value(NULL, "linux,network-index", -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/Makefile.dtc -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/Makefile.dtc ++++ b/arch/powerpc/boot/dtc-src/Makefile.dtc @@ -0,0 +1,25 @@ +# Makefile.dtc +# @@ -2194,10 +2142,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/Makefile.dtc +# things, but we supply the dependencies on generated header files explicitly + +$(addprefix $(DTC_objdir)/,$(DTC_GEN_SRCS:%.c=%.o)): $(addprefix $(DTC_objdir)/,$(DTC_BISON_INCLUDES)) -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/checks.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/checks.c ++++ b/arch/powerpc/boot/dtc-src/checks.c @@ -0,0 +1,750 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2007. @@ -2949,10 +2895,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/checks.c + + return 1; +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/data.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/data.c ++++ b/arch/powerpc/boot/dtc-src/data.c @@ -0,0 +1,321 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -3275,10 +3219,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/data.c + + return 1; +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-lexer.l -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-lexer.l ++++ b/arch/powerpc/boot/dtc-src/dtc-lexer.l @@ -0,0 +1,328 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -3608,10 +3550,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-lexer.l + + return 1; +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-lexer.lex.c_shipped -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-lexer.lex.c_shipped ++++ b/arch/powerpc/boot/dtc-src/dtc-lexer.lex.c_shipped @@ -0,0 +1,2174 @@ +#line 2 "dtc-lexer.lex.c" + @@ -5787,10 +5727,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-lexer.lex.c_shipped + return 1; +} + -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.tab.c_shipped -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.tab.c_shipped ++++ b/arch/powerpc/boot/dtc-src/dtc-parser.tab.c_shipped @@ -0,0 +1,1983 @@ +/* A Bison parser, made by GNU Bison 2.3. */ + @@ -7775,10 +7713,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.tab.c_shipped + return val; +} + -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.tab.h_shipped -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.tab.h_shipped ++++ b/arch/powerpc/boot/dtc-src/dtc-parser.tab.h_shipped @@ -0,0 +1,111 @@ +/* A Bison parser, made by GNU Bison 2.3. */ + @@ -7891,10 +7827,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.tab.h_shipped +#endif + +extern YYLTYPE yylloc; -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.y -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.y ++++ b/arch/powerpc/boot/dtc-src/dtc-parser.y @@ -0,0 +1,336 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -8232,10 +8166,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc-parser.y + yyerror("bad literal"); + return val; +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc.c ++++ b/arch/powerpc/boot/dtc-src/dtc.c @@ -0,0 +1,231 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -8468,10 +8400,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc.c + + exit(0); +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc.h ++++ b/arch/powerpc/boot/dtc-src/dtc.h @@ -0,0 +1,269 @@ +#ifndef _DTC_H +#define _DTC_H @@ -8742,10 +8672,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/dtc.h +void fill_fullpaths(struct node *tree, const char *prefix); + +#endif /* _DTC_H */ -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/flattree.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/flattree.c ++++ b/arch/powerpc/boot/dtc-src/flattree.c @@ -0,0 +1,968 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -9715,10 +9643,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/flattree.c + + return build_boot_info(reservelist, tree); +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/fstree.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/fstree.c ++++ b/arch/powerpc/boot/dtc-src/fstree.c @@ -0,0 +1,94 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -9814,10 +9740,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/fstree.c + return build_boot_info(NULL, tree); +} + -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/livetree.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/livetree.c ++++ b/arch/powerpc/boot/dtc-src/livetree.c @@ -0,0 +1,305 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -10124,10 +10048,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/livetree.c + + return node->phandle; +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/srcpos.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/srcpos.c ++++ b/arch/powerpc/boot/dtc-src/srcpos.c @@ -0,0 +1,105 @@ +/* + * Copyright 2007 Jon Loeliger, Freescale Semiconductor, Inc. @@ -10234,10 +10156,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/srcpos.c +{ + return srcpos_filename_for_num(srcpos_filenum); +} -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/srcpos.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/srcpos.h ++++ b/arch/powerpc/boot/dtc-src/srcpos.h @@ -0,0 +1,75 @@ +/* + * Copyright 2007 Jon Loeliger, Freescale Semiconductor, Inc. @@ -10314,10 +10234,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/srcpos.h +extern int lookup_file_name(const char *fname, int add_it); +extern const char *srcpos_filename_for_num(int filenum); +const char *srcpos_get_filename(void); -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/treesource.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/treesource.c ++++ b/arch/powerpc/boot/dtc-src/treesource.c @@ -0,0 +1,275 @@ +/* + * (C) Copyright David Gibson <dwg@au1.ibm.com>, IBM Corporation. 2005. @@ -10594,16 +10512,12 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/treesource.c + write_tree_source_node(f, bi->dt, 0); +} + -Index: linux-2.6.24.7/arch/powerpc/boot/dtc-src/version_gen.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dtc-src/version_gen.h ++++ b/arch/powerpc/boot/dtc-src/version_gen.h @@ -0,0 +1 @@ +#define DTC_VERSION "DTC 1.0.0-gd6f9b62f" -Index: linux-2.6.24.7/arch/powerpc/boot/dts/adder875-redboot.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/adder875-redboot.dts ++++ b/arch/powerpc/boot/dts/adder875-redboot.dts @@ -0,0 +1,184 @@ +/* + * Device Tree Source for MPC885 ADS running RedBoot @@ -10789,10 +10703,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/adder875-redboot.dts + linux,stdout-path = &console; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/adder875-uboot.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/adder875-uboot.dts ++++ b/arch/powerpc/boot/dts/adder875-uboot.dts @@ -0,0 +1,183 @@ +/* + * Device Tree Source for MPC885 ADS running U-Boot @@ -10977,10 +10889,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/adder875-uboot.dts + linux,stdout-path = &console; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/bamboo.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/bamboo.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/bamboo.dts +--- a/arch/powerpc/boot/dts/bamboo.dts ++++ b/arch/powerpc/boot/dts/bamboo.dts @@ -16,14 +16,24 @@ #size-cells = <1>; model = "amcc,bamboo"; @@ -11074,10 +10984,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/bamboo.dts - bootargs = "console=ttyS0,115200"; }; }; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/cm5200.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/cm5200.dts ++++ b/arch/powerpc/boot/dts/cm5200.dts @@ -0,0 +1,236 @@ +/* + * CM5200 board Device Tree Source @@ -11315,10 +11223,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/cm5200.dts + }; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/ebony.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/ebony.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/ebony.dts +--- a/arch/powerpc/boot/dts/ebony.dts ++++ b/arch/powerpc/boot/dts/ebony.dts @@ -16,14 +16,22 @@ #size-cells = <1>; model = "ibm,ebony"; @@ -11406,10 +11312,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/ebony.dts }; }; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/ep405.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/ep405.dts ++++ b/arch/powerpc/boot/dts/ep405.dts @@ -0,0 +1,228 @@ +/* + * Device Tree Source for EP405 @@ -11639,10 +11543,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/ep405.dts + linux,stdout-path = "/plb/opb/serial@ef600300"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/ep8248e.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/ep8248e.dts ++++ b/arch/powerpc/boot/dts/ep8248e.dts @@ -0,0 +1,207 @@ +/* + * Device Tree for the Embedded Planet EP8248E board running PlanetCore. @@ -11851,10 +11753,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/ep8248e.dts + }; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/haleakala.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/haleakala.dts ++++ b/arch/powerpc/boot/dts/haleakala.dts @@ -0,0 +1,274 @@ +/* + * Device Tree Source for AMCC Haleakala (405EXr) @@ -12130,10 +12030,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/haleakala.dts + }; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/katmai.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/katmai.dts ++++ b/arch/powerpc/boot/dts/katmai.dts @@ -0,0 +1,400 @@ +/* + * Device Tree Source for AMCC Katmai eval board @@ -12535,10 +12433,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/katmai.dts + linux,stdout-path = "/plb/opb/serial@10000200"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/kilauea.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/kilauea.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/kilauea.dts +--- a/arch/powerpc/boot/dts/kilauea.dts ++++ b/arch/powerpc/boot/dts/kilauea.dts @@ -13,14 +13,22 @@ #size-cells = <1>; model = "amcc,kilauea"; @@ -12673,11 +12569,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kilauea.dts + }; }; }; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHD.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/kuroboxHD.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHD.dts -@@ -23,6 +23,12 @@ XXXX add flash parts, rtc, ?? +--- a/arch/powerpc/boot/dts/kuroboxHD.dts ++++ b/arch/powerpc/boot/dts/kuroboxHD.dts +@@ -23,6 +23,12 @@ #address-cells = <1>; #size-cells = <1>; @@ -12690,7 +12584,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHD.dts cpus { #address-cells = <1>; #size-cells = <0>; -@@ -60,7 +66,7 @@ XXXX add flash parts, rtc, ?? +@@ -60,7 +66,7 @@ i2c@80003000 { #address-cells = <1>; #size-cells = <0>; @@ -12699,7 +12593,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHD.dts compatible = "fsl-i2c"; reg = <80003000 1000>; interrupts = <5 2>; -@@ -73,7 +79,8 @@ XXXX add flash parts, rtc, ?? +@@ -73,7 +79,8 @@ }; }; @@ -12709,7 +12603,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHD.dts device_type = "serial"; compatible = "ns16550"; reg = <80004500 8>; -@@ -83,7 +90,8 @@ XXXX add flash parts, rtc, ?? +@@ -83,7 +90,8 @@ interrupt-parent = <&mpic>; }; @@ -12719,7 +12613,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHD.dts device_type = "serial"; compatible = "ns16550"; reg = <80004600 8>; -@@ -102,7 +110,7 @@ XXXX add flash parts, rtc, ?? +@@ -102,7 +110,7 @@ reg = <80040000 40000>; }; @@ -12728,11 +12622,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHD.dts #address-cells = <3>; #size-cells = <2>; #interrupt-cells = <1>; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHG.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/kuroboxHG.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHG.dts -@@ -23,6 +23,12 @@ XXXX add flash parts, rtc, ?? +--- a/arch/powerpc/boot/dts/kuroboxHG.dts ++++ b/arch/powerpc/boot/dts/kuroboxHG.dts +@@ -23,6 +23,12 @@ #address-cells = <1>; #size-cells = <1>; @@ -12745,7 +12637,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHG.dts cpus { #address-cells = <1>; #size-cells = <0>; -@@ -60,7 +66,7 @@ XXXX add flash parts, rtc, ?? +@@ -60,7 +66,7 @@ i2c@80003000 { #address-cells = <1>; #size-cells = <0>; @@ -12754,7 +12646,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHG.dts compatible = "fsl-i2c"; reg = <80003000 1000>; interrupts = <5 2>; -@@ -73,7 +79,8 @@ XXXX add flash parts, rtc, ?? +@@ -73,7 +79,8 @@ }; }; @@ -12764,7 +12656,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHG.dts device_type = "serial"; compatible = "ns16550"; reg = <80004500 8>; -@@ -83,7 +90,8 @@ XXXX add flash parts, rtc, ?? +@@ -83,7 +90,8 @@ interrupt-parent = <&mpic>; }; @@ -12774,7 +12666,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHG.dts device_type = "serial"; compatible = "ns16550"; reg = <80004600 8>; -@@ -102,7 +110,7 @@ XXXX add flash parts, rtc, ?? +@@ -102,7 +110,7 @@ reg = <80040000 40000>; }; @@ -12783,10 +12675,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/kuroboxHG.dts #address-cells = <3>; #size-cells = <2>; #interrupt-cells = <1>; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/lite5200.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/lite5200.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/lite5200.dts +--- a/arch/powerpc/boot/dts/lite5200.dts ++++ b/arch/powerpc/boot/dts/lite5200.dts @@ -19,7 +19,7 @@ / { model = "fsl,lite5200"; @@ -12816,10 +12706,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/lite5200.dts compatible = "mpc5200-i2c","fsl-i2c"; cell-index = <1>; reg = <3d40 40>; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/lite5200b.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/lite5200b.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/lite5200b.dts +--- a/arch/powerpc/boot/dts/lite5200b.dts ++++ b/arch/powerpc/boot/dts/lite5200b.dts @@ -19,7 +19,7 @@ / { model = "fsl,lite5200b"; @@ -12849,10 +12737,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/lite5200b.dts compatible = "mpc5200b-i2c","mpc5200-i2c","fsl-i2c"; cell-index = <1>; reg = <3d40 40>; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/makalu.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/makalu.dts ++++ b/arch/powerpc/boot/dts/makalu.dts @@ -0,0 +1,347 @@ +/* + * Device Tree Source for AMCC Makalu (405EX) @@ -13201,10 +13087,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/makalu.dts + }; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/motionpro.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/motionpro.dts ++++ b/arch/powerpc/boot/dts/motionpro.dts @@ -0,0 +1,309 @@ +/* + * Motion-PRO board Device Tree Source @@ -13515,10 +13399,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/motionpro.dts + 01000000 0 00000000 b0000000 0 01000000>; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8313erdb.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8313erdb.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8313erdb.dts +--- a/arch/powerpc/boot/dts/mpc8313erdb.dts ++++ b/arch/powerpc/boot/dts/mpc8313erdb.dts @@ -15,6 +15,14 @@ #address-cells = <1>; #size-cells = <1>; @@ -13687,10 +13569,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8313erdb.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc832x_mds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc832x_mds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc832x_mds.dts +--- a/arch/powerpc/boot/dts/mpc832x_mds.dts ++++ b/arch/powerpc/boot/dts/mpc832x_mds.dts @@ -7,6 +7,18 @@ * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your @@ -13881,10 +13761,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc832x_mds.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < /* IDSEL 0x11 AD17 */ -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc832x_rdb.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc832x_rdb.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc832x_rdb.dts +--- a/arch/powerpc/boot/dts/mpc832x_rdb.dts ++++ b/arch/powerpc/boot/dts/mpc832x_rdb.dts @@ -15,6 +15,14 @@ #address-cells = <1>; #size-cells = <1>; @@ -13994,10 +13872,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc832x_rdb.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < /* IDSEL 0x10 AD16 (USB) */ -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8349emitx.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8349emitx.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8349emitx.dts +--- a/arch/powerpc/boot/dts/mpc8349emitx.dts ++++ b/arch/powerpc/boot/dts/mpc8349emitx.dts @@ -14,6 +14,15 @@ #address-cells = <1>; #size-cells = <1>; @@ -14184,10 +14060,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8349emitx.dts + }; + }; }; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8349emitxgp.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8349emitxgp.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8349emitxgp.dts +--- a/arch/powerpc/boot/dts/mpc8349emitxgp.dts ++++ b/arch/powerpc/boot/dts/mpc8349emitxgp.dts @@ -14,6 +14,13 @@ #address-cells = <1>; #size-cells = <1>; @@ -14286,10 +14160,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8349emitxgp.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < /* IDSEL 0x0F - PCI Slot */ -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc834x_mds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc834x_mds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc834x_mds.dts +--- a/arch/powerpc/boot/dts/mpc834x_mds.dts ++++ b/arch/powerpc/boot/dts/mpc834x_mds.dts @@ -15,6 +15,15 @@ #address-cells = <1>; #size-cells = <1>; @@ -14437,10 +14309,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc834x_mds.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc836x_mds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc836x_mds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc836x_mds.dts +--- a/arch/powerpc/boot/dts/mpc836x_mds.dts ++++ b/arch/powerpc/boot/dts/mpc836x_mds.dts @@ -20,6 +20,14 @@ #address-cells = <1>; #size-cells = <1>; @@ -14566,10 +14436,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc836x_mds.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8377_mds.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8377_mds.dts ++++ b/arch/powerpc/boot/dts/mpc8377_mds.dts @@ -0,0 +1,279 @@ +/* + * MPC8377E MDS Device Tree Source @@ -14850,10 +14718,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8377_mds.dts + device_type = "pci"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8378_mds.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8378_mds.dts ++++ b/arch/powerpc/boot/dts/mpc8378_mds.dts @@ -0,0 +1,265 @@ +/* + * MPC8378E MDS Device Tree Source @@ -15120,10 +14986,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8378_mds.dts + device_type = "pci"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8379_mds.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8379_mds.dts ++++ b/arch/powerpc/boot/dts/mpc8379_mds.dts @@ -0,0 +1,293 @@ +/* + * MPC8379E MDS Device Tree Source @@ -15418,10 +15282,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8379_mds.dts + device_type = "pci"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8540ads.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8540ads.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8540ads.dts +--- a/arch/powerpc/boot/dts/mpc8540ads.dts ++++ b/arch/powerpc/boot/dts/mpc8540ads.dts @@ -16,6 +16,15 @@ #address-cells = <1>; #size-cells = <1>; @@ -15554,10 +15416,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8540ads.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8541cds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8541cds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8541cds.dts +--- a/arch/powerpc/boot/dts/mpc8541cds.dts ++++ b/arch/powerpc/boot/dts/mpc8541cds.dts @@ -16,6 +16,15 @@ #address-cells = <1>; #size-cells = <1>; @@ -15666,10 +15526,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8541cds.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8544ds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8544ds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8544ds.dts +--- a/arch/powerpc/boot/dts/mpc8544ds.dts ++++ b/arch/powerpc/boot/dts/mpc8544ds.dts @@ -15,6 +15,17 @@ #address-cells = <1>; #size-cells = <1>; @@ -15829,10 +15687,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8544ds.dts - }; }; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8548cds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8548cds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8548cds.dts +--- a/arch/powerpc/boot/dts/mpc8548cds.dts ++++ b/arch/powerpc/boot/dts/mpc8548cds.dts @@ -16,6 +16,20 @@ #address-cells = <1>; #size-cells = <1>; @@ -15989,10 +15845,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8548cds.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8555cds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8555cds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8555cds.dts +--- a/arch/powerpc/boot/dts/mpc8555cds.dts ++++ b/arch/powerpc/boot/dts/mpc8555cds.dts @@ -16,6 +16,15 @@ #address-cells = <1>; #size-cells = <1>; @@ -16101,10 +15955,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8555cds.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8560ads.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8560ads.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8560ads.dts +--- a/arch/powerpc/boot/dts/mpc8560ads.dts ++++ b/arch/powerpc/boot/dts/mpc8560ads.dts @@ -16,6 +16,16 @@ #address-cells = <1>; #size-cells = <1>; @@ -16244,10 +16096,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8560ads.dts #interrupt-cells = <1>; #size-cells = <2>; #address-cells = <3>; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8568mds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8568mds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8568mds.dts +--- a/arch/powerpc/boot/dts/mpc8568mds.dts ++++ b/arch/powerpc/boot/dts/mpc8568mds.dts @@ -20,6 +20,17 @@ #address-cells = <1>; #size-cells = <1>; @@ -16440,10 +16290,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8568mds.dts interrupt-map-mask = <f800 0 0 7>; interrupt-map = < -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8572ds.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8572ds.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8572ds.dts +--- a/arch/powerpc/boot/dts/mpc8572ds.dts ++++ b/arch/powerpc/boot/dts/mpc8572ds.dts @@ -15,6 +15,18 @@ #address-cells = <1>; #size-cells = <1>; @@ -16616,10 +16464,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8572ds.dts interrupt-map = < /* IDSEL 0x0 */ 0000 0 0 1 &mpic 0 1 -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8610_hpcd.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8610_hpcd.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8610_hpcd.dts +--- a/arch/powerpc/boot/dts/mpc8610_hpcd.dts ++++ b/arch/powerpc/boot/dts/mpc8610_hpcd.dts @@ -1,7 +1,7 @@ /* * MPC8610 HPCD Device Tree Source @@ -16834,10 +16680,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8610_hpcd.dts compatible = "fsl,mpc8641-pcie"; device_type = "pci"; #interrupt-cells = <1>; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8641_hpcn.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc8641_hpcn.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc8641_hpcn.dts +--- a/arch/powerpc/boot/dts/mpc8641_hpcn.dts ++++ b/arch/powerpc/boot/dts/mpc8641_hpcn.dts @@ -16,6 +16,17 @@ #address-cells = <1>; #size-cells = <1>; @@ -17082,10 +16926,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc8641_hpcn.dts compatible = "fsl,mpc8641-pcie"; device_type = "pci"; #interrupt-cells = <1>; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc866ads.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/mpc866ads.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/mpc866ads.dts +--- a/arch/powerpc/boot/dts/mpc866ads.dts ++++ b/arch/powerpc/boot/dts/mpc866ads.dts @@ -12,7 +12,7 @@ / { @@ -17312,10 +17154,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/mpc866ads.dts + linux,stdout-path = "/soc/cpm/serial@a80"; + }; }; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/rainier.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/rainier.dts ++++ b/arch/powerpc/boot/dts/rainier.dts @@ -0,0 +1,353 @@ +/* + * Device Tree Source for AMCC Rainier @@ -17670,10 +17510,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/rainier.dts + bootargs = "console=ttyS0,115200"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/sequoia.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/sequoia.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/sequoia.dts +--- a/arch/powerpc/boot/dts/sequoia.dts ++++ b/arch/powerpc/boot/dts/sequoia.dts @@ -17,14 +17,24 @@ #size-cells = <1>; model = "amcc,sequoia"; @@ -17757,10 +17595,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/sequoia.dts }; chosen { -Index: linux-2.6.24.7/arch/powerpc/boot/dts/storcenter.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/storcenter.dts ++++ b/arch/powerpc/boot/dts/storcenter.dts @@ -0,0 +1,138 @@ +/* + * Device Tree Source for IOMEGA StorCenter @@ -17900,10 +17736,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/storcenter.dts + linux,stdout-path = "/soc/serial@4500"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/taishan.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/taishan.dts ++++ b/arch/powerpc/boot/dts/taishan.dts @@ -0,0 +1,383 @@ +/* + * Device Tree Source for IBM/AMCC Taishan @@ -18288,10 +18122,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/taishan.dts + linux,stdout-path = "/plb/opb/serial@40000300"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/tqm5200.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/tqm5200.dts ++++ b/arch/powerpc/boot/dts/tqm5200.dts @@ -0,0 +1,184 @@ +/* + * TQM5200 board Device Tree Source @@ -18477,10 +18309,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/tqm5200.dts + 01000000 0 00000000 a0000000 0 01000000>; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/dts/walnut.dts -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/walnut.dts -+++ linux-2.6.24.7/arch/powerpc/boot/dts/walnut.dts +--- a/arch/powerpc/boot/dts/walnut.dts ++++ b/arch/powerpc/boot/dts/walnut.dts @@ -14,14 +14,21 @@ #size-cells = <1>; model = "ibm,walnut"; @@ -18564,10 +18394,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/walnut.dts }; chosen { -Index: linux-2.6.24.7/arch/powerpc/boot/dts/warp.dts -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/dts/warp.dts ++++ b/arch/powerpc/boot/dts/warp.dts @@ -0,0 +1,239 @@ +/* + * Device Tree Source for PIKA Warp @@ -18808,10 +18636,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/dts/warp.dts + linux,stdout-path = "/plb/opb/serial@ef600300"; + }; +}; -Index: linux-2.6.24.7/arch/powerpc/boot/ebony.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/ebony.c -+++ linux-2.6.24.7/arch/powerpc/boot/ebony.c +--- a/arch/powerpc/boot/ebony.c ++++ b/arch/powerpc/boot/ebony.c @@ -31,66 +31,6 @@ static u8 *ebony_mac0, *ebony_mac1; @@ -18879,7 +18705,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ebony.c #define EBONY_FPGA_PATH "/plb/opb/ebc/fpga" #define EBONY_FPGA_FLASH_SEL 0x01 #define EBONY_SMALL_FLASH_PATH "/plb/opb/ebc/small-flash" -@@ -134,7 +74,7 @@ static void ebony_fixups(void) +@@ -134,7 +74,7 @@ unsigned long sysclk = 33000000; ibm440gp_fixup_clocks(sysclk, 6 * 1843200); @@ -18888,7 +18714,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ebony.c dt_fixup_mac_addresses(ebony_mac0, ebony_mac1); ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); ebony_flashsel_fixup(); -@@ -146,6 +86,6 @@ void ebony_init(void *mac0, void *mac1) +@@ -146,6 +86,6 @@ platform_ops.exit = ibm44x_dbcr_reset; ebony_mac0 = mac0; ebony_mac1 = mac1; @@ -18896,10 +18722,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ebony.c + fdt_init(_dtb_start); serial_console_init(); } -Index: linux-2.6.24.7/arch/powerpc/boot/ep405.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/ep405.c ++++ b/arch/powerpc/boot/ep405.c @@ -0,0 +1,74 @@ +/* + * Embedded Planet EP405 with PlanetCore firmware @@ -18975,10 +18799,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ep405.c + serial_console_init(); + platform_ops.fixups = platform_fixups; +} -Index: linux-2.6.24.7/arch/powerpc/boot/ep8248e.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/ep8248e.c ++++ b/arch/powerpc/boot/ep8248e.c @@ -0,0 +1,55 @@ +/* + * Embedded Planet EP8248E with PlanetCore firmware @@ -19035,11 +18857,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ep8248e.c + serial_console_init(); + platform_ops.fixups = platform_fixups; +} -Index: linux-2.6.24.7/arch/powerpc/boot/ep88xc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/ep88xc.c -+++ linux-2.6.24.7/arch/powerpc/boot/ep88xc.c -@@ -45,7 +45,7 @@ void platform_init(unsigned long r3, uns +--- a/arch/powerpc/boot/ep88xc.c ++++ b/arch/powerpc/boot/ep88xc.c +@@ -45,7 +45,7 @@ mem_size *= 1024 * 1024; simple_alloc_init(_end, mem_size - (unsigned long)_end, 32, 64); @@ -19048,9 +18868,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ep88xc.c planetcore_set_stdout_path(table); -Index: linux-2.6.24.7/arch/powerpc/boot/flatdevtree.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/flatdevtree.c +--- a/arch/powerpc/boot/flatdevtree.c +++ /dev/null @@ -1,1036 +0,0 @@ -/* @@ -20089,9 +19907,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/flatdevtree.c - - return buf; -} -Index: linux-2.6.24.7/arch/powerpc/boot/flatdevtree.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/flatdevtree.h +--- a/arch/powerpc/boot/flatdevtree.h +++ /dev/null @@ -1,113 +0,0 @@ -/* @@ -20207,9 +20023,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/flatdevtree.h -char *ft_get_path(struct ft_cxt *cxt, const void *phandle, char *buf, int len); - -#endif /* FLATDEVTREE_H */ -Index: linux-2.6.24.7/arch/powerpc/boot/flatdevtree_misc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/flatdevtree_misc.c +--- a/arch/powerpc/boot/flatdevtree_misc.c +++ /dev/null @@ -1,79 +0,0 @@ -/* @@ -20291,11 +20105,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/flatdevtree_misc.c - return ft_open(&cxt, dt_blob, max_size, max_find_device, - platform_ops.realloc); -} -Index: linux-2.6.24.7/arch/powerpc/boot/holly.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/holly.c -+++ linux-2.6.24.7/arch/powerpc/boot/holly.c -@@ -28,6 +28,6 @@ void platform_init(unsigned long r3, uns +--- a/arch/powerpc/boot/holly.c ++++ b/arch/powerpc/boot/holly.c +@@ -28,6 +28,6 @@ u32 heapsize = 0x8000000 - (u32)_end; /* 128M */ simple_alloc_init(_end, heapsize, 32, 64); @@ -20303,10 +20115,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/holly.c + fdt_init(_dtb_start); serial_console_init(); } -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/Makefile.libfdt -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/Makefile.libfdt ++++ b/arch/powerpc/boot/libfdt/Makefile.libfdt @@ -0,0 +1,14 @@ +# Makefile.libfdt +# @@ -20322,10 +20132,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/Makefile.libfdt + +$(LIBFDT_objdir)/$(LIBFDT_LIB): $(addprefix $(LIBFDT_objdir)/,$(LIBFDT_OBJS)) + -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt.c ++++ b/arch/powerpc/boot/libfdt/fdt.c @@ -0,0 +1,156 @@ +/* + * libfdt - Flat Device Tree manipulation @@ -20483,10 +20291,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt.c + memmove(buf, fdt, fdt_totalsize(fdt)); + return 0; +} -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt.h ++++ b/arch/powerpc/boot/libfdt/fdt.h @@ -0,0 +1,60 @@ +#ifndef _FDT_H +#define _FDT_H @@ -20548,10 +20354,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt.h +#define FDT_V17_SIZE (FDT_V16_SIZE + sizeof(uint32_t)) + +#endif /* _FDT_H */ -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_ro.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_ro.c ++++ b/arch/powerpc/boot/libfdt/fdt_ro.c @@ -0,0 +1,583 @@ +/* + * libfdt - Flat Device Tree manipulation @@ -21136,10 +20940,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_ro.c + + return -FDT_ERR_NOTFOUND; +} -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_rw.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_rw.c ++++ b/arch/powerpc/boot/libfdt/fdt_rw.c @@ -0,0 +1,447 @@ +/* + * libfdt - Flat Device Tree manipulation @@ -21588,10 +21390,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_rw.c + + return 0; +} -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_strerror.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_strerror.c ++++ b/arch/powerpc/boot/libfdt/fdt_strerror.c @@ -0,0 +1,96 @@ +/* + * libfdt - Flat Device Tree manipulation @@ -21689,10 +21489,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_strerror.c + + return "<unknown error>"; +} -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_sw.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_sw.c ++++ b/arch/powerpc/boot/libfdt/fdt_sw.c @@ -0,0 +1,258 @@ +/* + * libfdt - Flat Device Tree manipulation @@ -21952,10 +21750,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_sw.c + fdt_set_magic(fdt, FDT_MAGIC); + return 0; +} -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_wip.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_wip.c ++++ b/arch/powerpc/boot/libfdt/fdt_wip.c @@ -0,0 +1,144 @@ +/* + * libfdt - Flat Device Tree manipulation @@ -22101,10 +21897,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/fdt_wip.c + nop_region(fdt_offset_ptr_w(fdt, nodeoffset, 0), endoffset - nodeoffset); + return 0; +} -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/libfdt.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/libfdt.h ++++ b/arch/powerpc/boot/libfdt/libfdt.h @@ -0,0 +1,721 @@ +#ifndef _LIBFDT_H +#define _LIBFDT_H @@ -22827,10 +22621,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/libfdt.h +const char *fdt_strerror(int errval); + +#endif /* _LIBFDT_H */ -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/libfdt_internal.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt/libfdt_internal.h ++++ b/arch/powerpc/boot/libfdt/libfdt_internal.h @@ -0,0 +1,89 @@ +#ifndef _LIBFDT_INTERNAL_H +#define _LIBFDT_INTERNAL_H @@ -22921,10 +22713,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt/libfdt_internal.h +#define SW_MAGIC (~FDT_MAGIC) + +#endif /* _LIBFDT_INTERNAL_H */ -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt-wrapper.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt-wrapper.c ++++ b/arch/powerpc/boot/libfdt-wrapper.c @@ -0,0 +1,184 @@ +/* + * This file does the necessary interface mapping between the bootwrapper @@ -23110,10 +22900,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt-wrapper.c + if (buf) + fdt = buf; +} -Index: linux-2.6.24.7/arch/powerpc/boot/libfdt_env.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/libfdt_env.h ++++ b/arch/powerpc/boot/libfdt_env.h @@ -0,0 +1,17 @@ +#ifndef _ARCH_POWERPC_BOOT_LIBFDT_ENV_H +#define _ARCH_POWERPC_BOOT_LIBFDT_ENV_H @@ -23132,10 +22920,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/libfdt_env.h +#define cpu_to_fdt64(x) (x) + +#endif /* _ARCH_POWERPC_BOOT_LIBFDT_ENV_H */ -Index: linux-2.6.24.7/arch/powerpc/boot/main.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/main.c -+++ linux-2.6.24.7/arch/powerpc/boot/main.c +--- a/arch/powerpc/boot/main.c ++++ b/arch/powerpc/boot/main.c @@ -16,7 +16,6 @@ #include "stdio.h" #include "ops.h" @@ -23144,11 +22930,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/main.c #include "reg.h" static struct gunzip_state gzstate; -Index: linux-2.6.24.7/arch/powerpc/boot/ops.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/ops.h -+++ linux-2.6.24.7/arch/powerpc/boot/ops.h -@@ -79,7 +79,7 @@ struct loader_info { +--- a/arch/powerpc/boot/ops.h ++++ b/arch/powerpc/boot/ops.h +@@ -79,7 +79,7 @@ extern struct loader_info loader_info; void start(void); @@ -23157,7 +22941,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ops.h int serial_console_init(void); int ns16550_console_init(void *devp, struct serial_console_data *scdp); int mpsc_console_init(void *devp, struct serial_console_data *scdp); -@@ -159,9 +159,23 @@ static inline void *find_node_by_devtype +@@ -159,9 +159,23 @@ return find_node_by_prop_value_str(prev, "device_type", type); } @@ -23181,11 +22965,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ops.h void dt_fixup_mac_address(u32 index, const u8 *addr); void __dt_fixup_mac_addresses(u32 startindex, ...); #define dt_fixup_mac_addresses(...) \ -Index: linux-2.6.24.7/arch/powerpc/boot/prpmc2800.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/prpmc2800.c -+++ linux-2.6.24.7/arch/powerpc/boot/prpmc2800.c -@@ -547,8 +547,7 @@ void platform_init(unsigned long r3, uns +--- a/arch/powerpc/boot/prpmc2800.c ++++ b/arch/powerpc/boot/prpmc2800.c +@@ -547,8 +547,7 @@ if (!dtb) exit(); memmove(dtb, _dtb_start, dt_size); @@ -23195,11 +22977,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/prpmc2800.c bridge_base = mv64x60_get_bridge_base(); -Index: linux-2.6.24.7/arch/powerpc/boot/ps3.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/ps3.c -+++ linux-2.6.24.7/arch/powerpc/boot/ps3.c -@@ -131,7 +131,7 @@ void platform_init(void) +--- a/arch/powerpc/boot/ps3.c ++++ b/arch/powerpc/boot/ps3.c +@@ -131,7 +131,7 @@ printf("\n-- PS3 bootwrapper --\n"); simple_alloc_init(_end, heapsize, 32, 64); @@ -23208,10 +22988,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/ps3.c chosen = finddevice("/chosen"); -Index: linux-2.6.24.7/arch/powerpc/boot/redboot-8xx.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/redboot-8xx.c ++++ b/arch/powerpc/boot/redboot-8xx.c @@ -0,0 +1,58 @@ +/* + * RedBoot firmware support @@ -23271,10 +23049,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/redboot-8xx.c + loader_info.cmdline = (char *)bd.bi_cmdline; + loader_info.cmdline_len = strlen((char *)bd.bi_cmdline); +} -Index: linux-2.6.24.7/arch/powerpc/boot/redboot.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/boot/redboot.h ++++ b/arch/powerpc/boot/redboot.h @@ -0,0 +1,56 @@ +#ifndef _PPC_REDBOOT_H +#define _PPC_REDBOOT_H @@ -23332,11 +23108,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/redboot.h +#define bi_pci_busfreq bi_pci_freq +#define bi_immr_base bi_immr +#endif -Index: linux-2.6.24.7/arch/powerpc/boot/reg.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/reg.h -+++ linux-2.6.24.7/arch/powerpc/boot/reg.h -@@ -16,6 +16,14 @@ static inline u32 mfpvr(void) +--- a/arch/powerpc/boot/reg.h ++++ b/arch/powerpc/boot/reg.h +@@ -16,6 +16,14 @@ return pvr; } @@ -23351,11 +23125,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/reg.h register void *__stack_pointer asm("r1"); #define get_sp() (__stack_pointer) -Index: linux-2.6.24.7/arch/powerpc/boot/serial.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/serial.c -+++ linux-2.6.24.7/arch/powerpc/boot/serial.c -@@ -128,7 +128,8 @@ int serial_console_init(void) +--- a/arch/powerpc/boot/serial.c ++++ b/arch/powerpc/boot/serial.c +@@ -128,7 +128,8 @@ rc = cpm_console_init(devp, &serial_cd); else if (dt_is_compatible(devp, "mpc5200-psc-uart")) rc = mpc5200_psc_console_init(devp, &serial_cd); @@ -23365,10 +23137,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/serial.c rc = uartlite_console_init(devp, &serial_cd); /* Add other serial console driver calls here */ -Index: linux-2.6.24.7/arch/powerpc/boot/treeboot-walnut.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/treeboot-walnut.c -+++ linux-2.6.24.7/arch/powerpc/boot/treeboot-walnut.c +--- a/arch/powerpc/boot/treeboot-walnut.c ++++ b/arch/powerpc/boot/treeboot-walnut.c @@ -20,55 +20,6 @@ BSS_STACK(4096); @@ -23425,7 +23195,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/treeboot-walnut.c static void walnut_flashsel_fixup(void) { void *devp, *sram; -@@ -112,7 +63,7 @@ static void walnut_flashsel_fixup(void) +@@ -112,7 +63,7 @@ #define WALNUT_OPENBIOS_MAC_OFF 0xfffffe0b static void walnut_fixups(void) { @@ -23434,7 +23204,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/treeboot-walnut.c ibm405gp_fixup_clocks(33330000, 0xa8c000); ibm4xx_quiesce_eth((u32 *)0xef600800, NULL); ibm4xx_fixup_ebc_ranges("/plb/ebc"); -@@ -128,6 +79,6 @@ void platform_init(void) +@@ -128,6 +79,6 @@ simple_alloc_init(_end, avail_ram, 32, 32); platform_ops.fixups = walnut_fixups; platform_ops.exit = ibm40x_dbcr_reset; @@ -23442,11 +23212,9 @@ Index: linux-2.6.24.7/arch/powerpc/boot/treeboot-walnut.c + fdt_init(_dtb_start); serial_console_init(); } -Index: linux-2.6.24.7/arch/powerpc/boot/wrapper -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/boot/wrapper -+++ linux-2.6.24.7/arch/powerpc/boot/wrapper -@@ -45,6 +45,7 @@ CROSS= +--- a/arch/powerpc/boot/wrapper ++++ b/arch/powerpc/boot/wrapper +@@ -45,6 +45,7 @@ # directory for object and other files used by this script object=arch/powerpc/boot @@ -23454,7 +23222,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper # directory for working files tmpdir=. -@@ -95,6 +96,7 @@ while [ "$#" -gt 0 ]; do +@@ -95,6 +96,7 @@ shift [ "$#" -gt 0 ] || usage object="$1" @@ -23462,7 +23230,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper ;; -W) shift -@@ -116,10 +118,13 @@ while [ "$#" -gt 0 ]; do +@@ -116,10 +118,13 @@ done if [ -n "$dts" ]; then @@ -23477,7 +23245,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper fi if [ -z "$kernel" ]; then -@@ -163,7 +168,7 @@ ps3) +@@ -163,7 +168,7 @@ ksection=.kernel:vmlinux.bin isection=.kernel:initrd ;; @@ -23486,7 +23254,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper platformo="$object/fixed-head.o $object/$platform.o" binary=y ;; -@@ -246,11 +251,11 @@ fi +@@ -246,11 +251,11 @@ # post-processing needed for some platforms case "$platform" in pseries|chrp) @@ -23500,7 +23268,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper ;; cuboot*) gzip -f -9 "$ofile" -@@ -259,7 +264,7 @@ cuboot*) +@@ -259,7 +264,7 @@ ;; treeboot*) mv "$ofile" "$ofile.elf" @@ -23509,7 +23277,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper if [ -z "$cacheit" ]; then rm -f "$ofile.elf" fi -@@ -287,8 +292,6 @@ ps3) +@@ -287,8 +292,6 @@ overlay_dest="256" overlay_size="256" @@ -23518,7 +23286,7 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper ${CROSS}objcopy -O binary "$ofile" "$ofile.bin" dd if="$ofile.bin" of="$ofile.bin" conv=notrunc \ -@@ -299,6 +302,8 @@ ps3) +@@ -299,6 +302,8 @@ skip=$system_reset_overlay seek=$overlay_dest \ count=$overlay_size bs=1 @@ -23528,10 +23296,8 @@ Index: linux-2.6.24.7/arch/powerpc/boot/wrapper + gzip --force -9 --stdout "$ofile.bin" > "$odir/otheros.bld" ;; esac -Index: linux-2.6.24.7/arch/powerpc/configs/adder875-redboot_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/adder875-redboot_defconfig ++++ b/arch/powerpc/configs/adder875-redboot_defconfig @@ -0,0 +1,798 @@ +# +# Automatically generated make config: don't edit @@ -24331,10 +24097,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/adder875-redboot_defconfig +# CONFIG_CRYPTO is not set +# CONFIG_PPC_CLOCK is not set +CONFIG_PPC_LIB_RHEAP=y -Index: linux-2.6.24.7/arch/powerpc/configs/adder875-uboot_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/adder875-uboot_defconfig ++++ b/arch/powerpc/configs/adder875-uboot_defconfig @@ -0,0 +1,798 @@ +# +# Automatically generated make config: don't edit @@ -25134,10 +24898,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/adder875-uboot_defconfig +# CONFIG_CRYPTO is not set +# CONFIG_PPC_CLOCK is not set +CONFIG_PPC_LIB_RHEAP=y -Index: linux-2.6.24.7/arch/powerpc/configs/bamboo_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/bamboo_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/bamboo_defconfig +--- a/arch/powerpc/configs/bamboo_defconfig ++++ b/arch/powerpc/configs/bamboo_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -25148,7 +24910,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/bamboo_defconfig # # CONFIG_PPC64 is not set -@@ -131,6 +131,7 @@ CONFIG_DEFAULT_AS=y +@@ -131,6 +131,7 @@ # CONFIG_DEFAULT_CFQ is not set # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="anticipatory" @@ -25156,7 +24918,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/bamboo_defconfig # # Platform support -@@ -143,6 +144,9 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" +@@ -143,6 +144,9 @@ CONFIG_BAMBOO=y # CONFIG_EBONY is not set # CONFIG_SEQUOIA is not set @@ -25166,7 +24928,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/bamboo_defconfig CONFIG_440EP=y CONFIG_IBM440EP_ERR42=y # CONFIG_MPIC is not set -@@ -372,9 +376,7 @@ CONFIG_MISC_DEVICES=y +@@ -372,9 +376,7 @@ # CONFIG_FIREWIRE is not set # CONFIG_IEEE1394 is not set # CONFIG_I2O is not set @@ -25177,7 +24939,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/bamboo_defconfig CONFIG_NETDEVICES=y # CONFIG_NETDEVICES_MULTIQUEUE is not set # CONFIG_DUMMY is not set -@@ -736,19 +738,7 @@ CONFIG_DEBUGGER=y +@@ -736,19 +738,7 @@ # CONFIG_KGDB is not set # CONFIG_XMON is not set # CONFIG_BDI_SWITCH is not set @@ -25198,11 +24960,9 @@ Index: linux-2.6.24.7/arch/powerpc/configs/bamboo_defconfig # # Security options -Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/celleb_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig -@@ -50,7 +50,8 @@ CONFIG_AUDIT_ARCH=y +--- a/arch/powerpc/configs/celleb_defconfig ++++ b/arch/powerpc/configs/celleb_defconfig +@@ -50,7 +50,8 @@ CONFIG_GENERIC_BUG=y # CONFIG_DEFAULT_UIMAGE is not set # CONFIG_PPC_DCR_NATIVE is not set @@ -25212,7 +24972,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig CONFIG_PPC_OF_PLATFORM_PCI=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -@@ -148,7 +149,7 @@ CONFIG_PPC_MULTIPLATFORM=y +@@ -148,7 +149,7 @@ CONFIG_PPC_CELLEB=y # CONFIG_PPC_PS3 is not set CONFIG_PPC_CELL=y @@ -25221,7 +24981,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig # CONFIG_PPC_IBM_CELL_BLADE is not set # -@@ -157,13 +158,19 @@ CONFIG_PPC_CELL=y +@@ -157,13 +158,19 @@ CONFIG_SPU_FS=y CONFIG_SPU_FS_64K_LS=y CONFIG_SPU_BASE=y @@ -25243,7 +25003,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig # CONFIG_MMIO_NVRAM is not set # CONFIG_PPC_MPC106 is not set # CONFIG_PPC_970_NAP is not set -@@ -593,10 +600,11 @@ CONFIG_MII=y +@@ -593,10 +600,11 @@ # CONFIG_NET_VENDOR_3COM is not set # CONFIG_NET_TULIP is not set # CONFIG_HP100 is not set @@ -25259,7 +25019,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig # CONFIG_NET_PCI is not set # CONFIG_B44 is not set CONFIG_NETDEV_1000=y -@@ -741,6 +749,7 @@ CONFIG_SERIAL_TXX9_CONSOLE=y +@@ -741,6 +749,7 @@ CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set CONFIG_HVC_DRIVER=y @@ -25267,7 +25027,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig CONFIG_HVC_BEAT=y # CONFIG_IPMI_HANDLER is not set # CONFIG_HW_RANDOM is not set -@@ -822,6 +831,7 @@ CONFIG_WATCHDOG=y +@@ -822,6 +831,7 @@ # Watchdog Device Drivers # # CONFIG_SOFT_WATCHDOG is not set @@ -25275,7 +25035,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig # # PCI-based Watchdog Cards -@@ -1245,17 +1255,7 @@ CONFIG_XMON_DISASSEMBLY=y +@@ -1245,17 +1255,7 @@ CONFIG_IRQSTACKS=y # CONFIG_VIRQ_DEBUG is not set # CONFIG_BOOTX_TEXT is not set @@ -25294,10 +25054,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/celleb_defconfig # # Security options -Index: linux-2.6.24.7/arch/powerpc/configs/ebony_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/ebony_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/ebony_defconfig +--- a/arch/powerpc/configs/ebony_defconfig ++++ b/arch/powerpc/configs/ebony_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -25308,7 +25066,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ebony_defconfig # # CONFIG_PPC64 is not set -@@ -130,6 +130,7 @@ CONFIG_DEFAULT_AS=y +@@ -130,6 +130,7 @@ # CONFIG_DEFAULT_CFQ is not set # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="anticipatory" @@ -25316,7 +25074,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ebony_defconfig # # Platform support -@@ -142,6 +143,9 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" +@@ -142,6 +143,9 @@ # CONFIG_BAMBOO is not set CONFIG_EBONY=y # CONFIG_SEQUOIA is not set @@ -25326,10 +25084,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ebony_defconfig CONFIG_440GP=y # CONFIG_MPIC is not set # CONFIG_MPIC_WEIRD is not set -Index: linux-2.6.24.7/arch/powerpc/configs/ep405_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/ep405_defconfig ++++ b/arch/powerpc/configs/ep405_defconfig @@ -0,0 +1,952 @@ +# +# Automatically generated make config: don't edit @@ -26283,10 +26039,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ep405_defconfig +# CONFIG_CRYPTO_AUTHENC is not set +CONFIG_CRYPTO_HW=y +# CONFIG_PPC_CLOCK is not set -Index: linux-2.6.24.7/arch/powerpc/configs/ep8248e_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/ep8248e_defconfig ++++ b/arch/powerpc/configs/ep8248e_defconfig @@ -0,0 +1,821 @@ +# +# Automatically generated make config: don't edit @@ -27109,10 +26863,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ep8248e_defconfig +# CONFIG_CRYPTO_HW is not set +# CONFIG_PPC_CLOCK is not set +CONFIG_PPC_LIB_RHEAP=y -Index: linux-2.6.24.7/arch/powerpc/configs/katmai_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/katmai_defconfig ++++ b/arch/powerpc/configs/katmai_defconfig @@ -0,0 +1,790 @@ +# +# Automatically generated make config: don't edit @@ -27904,10 +27656,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/katmai_defconfig +# CONFIG_CRYPTO_AUTHENC is not set +CONFIG_CRYPTO_HW=y +# CONFIG_PPC_CLOCK is not set -Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/kilauea_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig +--- a/arch/powerpc/configs/kilauea_defconfig ++++ b/arch/powerpc/configs/kilauea_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -27918,7 +27668,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # # CONFIG_PPC64 is not set -@@ -40,7 +40,7 @@ CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y +@@ -40,7 +40,7 @@ CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_PPC_OF=y CONFIG_OF=y @@ -27927,7 +27677,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_GENERIC_TBSYNC is not set CONFIG_AUDIT_ARCH=y CONFIG_GENERIC_BUG=y -@@ -125,6 +125,7 @@ CONFIG_DEFAULT_AS=y +@@ -125,6 +125,7 @@ # CONFIG_DEFAULT_CFQ is not set # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="anticipatory" @@ -27935,7 +27685,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # # Platform support -@@ -134,9 +135,12 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" +@@ -134,9 +135,12 @@ # CONFIG_PPC_CELL is not set # CONFIG_PPC_CELL_NATIVE is not set # CONFIG_PQ2ADS is not set @@ -27948,7 +27698,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_MPIC is not set # CONFIG_MPIC_WEIRD is not set # CONFIG_PPC_I8259 is not set -@@ -199,11 +203,17 @@ CONFIG_ISA_DMA_API=y +@@ -199,11 +203,17 @@ # Bus options # CONFIG_ZONE_DMA=y @@ -27970,7 +27720,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # # Advanced setup -@@ -368,11 +378,13 @@ CONFIG_MTD_CFI_UTIL=y +@@ -368,11 +378,13 @@ # CONFIG_MTD_COMPLEX_MAPPINGS is not set # CONFIG_MTD_PHYSMAP is not set CONFIG_MTD_PHYSMAP_OF=y @@ -27984,7 +27734,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_MTD_SLRAM is not set # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_MTDRAM is not set -@@ -395,9 +407,14 @@ CONFIG_OF_DEVICE=y +@@ -395,9 +407,14 @@ # CONFIG_PARPORT is not set CONFIG_BLK_DEV=y # CONFIG_BLK_DEV_FD is not set @@ -27999,7 +27749,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_COUNT=16 CONFIG_BLK_DEV_RAM_SIZE=35000 -@@ -417,6 +434,14 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 +@@ -417,6 +434,14 @@ # CONFIG_SCSI_NETLINK is not set # CONFIG_ATA is not set # CONFIG_MD is not set @@ -28014,7 +27764,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_MACINTOSH_DRIVERS is not set CONFIG_NETDEVICES=y # CONFIG_NETDEVICES_MULTIQUEUE is not set -@@ -426,9 +451,33 @@ CONFIG_NETDEVICES=y +@@ -426,9 +451,33 @@ # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # CONFIG_VETH is not set @@ -28049,7 +27799,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # # Wireless LAN -@@ -436,6 +485,8 @@ CONFIG_NETDEVICES=y +@@ -436,6 +485,8 @@ # CONFIG_WLAN_PRE80211 is not set # CONFIG_WLAN_80211 is not set # CONFIG_WAN is not set @@ -28058,7 +27808,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_PPP is not set # CONFIG_SLIP is not set # CONFIG_SHAPER is not set -@@ -467,6 +518,7 @@ CONFIG_NETDEVICES=y +@@ -467,6 +518,7 @@ # CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y @@ -28066,7 +27816,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig CONFIG_SERIAL_8250_NR_UARTS=4 CONFIG_SERIAL_8250_RUNTIME_UARTS=4 CONFIG_SERIAL_8250_EXTENDED=y -@@ -481,6 +533,7 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y +@@ -481,6 +533,7 @@ # CONFIG_SERIAL_UARTLITE is not set CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y @@ -28074,7 +27824,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig CONFIG_SERIAL_OF_PLATFORM=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y -@@ -490,8 +543,10 @@ CONFIG_LEGACY_PTY_COUNT=256 +@@ -490,8 +543,10 @@ # CONFIG_NVRAM is not set # CONFIG_GEN_RTC is not set # CONFIG_R3964 is not set @@ -28085,7 +27835,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_I2C is not set # -@@ -525,6 +580,8 @@ CONFIG_SSB_POSSIBLE=y +@@ -525,6 +580,8 @@ # # Graphics support # @@ -28094,7 +27844,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_VGASTATE is not set # CONFIG_VIDEO_OUTPUT_CONTROL is not set # CONFIG_FB is not set -@@ -542,6 +599,7 @@ CONFIG_SSB_POSSIBLE=y +@@ -542,6 +599,7 @@ # CONFIG_USB_SUPPORT is not set # CONFIG_MMC is not set # CONFIG_NEW_LEDS is not set @@ -28102,9 +27852,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/kilauea_defconfig # CONFIG_EDAC is not set # CONFIG_RTC_CLASS is not set -Index: linux-2.6.24.7/arch/powerpc/configs/lite5200_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/lite5200_defconfig +--- a/arch/powerpc/configs/lite5200_defconfig +++ /dev/null @@ -1,847 +0,0 @@ -# @@ -28954,10 +28702,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/lite5200_defconfig -# CONFIG_CRYPTO is not set -CONFIG_PPC_CLOCK=y -CONFIG_PPC_LIB_RHEAP=y -Index: linux-2.6.24.7/arch/powerpc/configs/makalu_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/makalu_defconfig ++++ b/arch/powerpc/configs/makalu_defconfig @@ -0,0 +1,812 @@ +# +# Automatically generated make config: don't edit @@ -29771,10 +29517,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/makalu_defconfig +# CONFIG_CRYPTO_AUTHENC is not set +CONFIG_CRYPTO_HW=y +# CONFIG_PPC_CLOCK is not set -Index: linux-2.6.24.7/arch/powerpc/configs/mpc5200_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/mpc5200_defconfig ++++ b/arch/powerpc/configs/mpc5200_defconfig @@ -0,0 +1,1286 @@ +# +# Automatically generated make config: don't edit @@ -31062,10 +30806,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc5200_defconfig +CONFIG_CRYPTO_HW=y +CONFIG_PPC_CLOCK=y +CONFIG_PPC_LIB_RHEAP=y -Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/mpc8313_rdb_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig +--- a/arch/powerpc/configs/mpc8313_rdb_defconfig ++++ b/arch/powerpc/configs/mpc8313_rdb_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -31076,7 +30818,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig # # CONFIG_PPC64 is not set -@@ -144,6 +144,7 @@ CONFIG_MPC8313_RDB=y +@@ -144,6 +144,7 @@ # CONFIG_MPC834x_MDS is not set # CONFIG_MPC834x_ITX is not set # CONFIG_MPC836x_MDS is not set @@ -31084,7 +30826,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig CONFIG_PPC_MPC831x=y # CONFIG_MPIC is not set # CONFIG_MPIC_WEIRD is not set -@@ -336,15 +337,16 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y +@@ -336,15 +337,16 @@ CONFIG_MTD=y # CONFIG_MTD_DEBUG is not set # CONFIG_MTD_CONCAT is not set @@ -31105,7 +30847,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig # CONFIG_FTL is not set # CONFIG_NFTL is not set # CONFIG_INFTL is not set -@@ -381,11 +383,8 @@ CONFIG_MTD_CFI_UTIL=y +@@ -381,11 +383,8 @@ # Mapping drivers for chip access # # CONFIG_MTD_COMPLEX_MAPPINGS is not set @@ -31119,7 +30861,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig # CONFIG_MTD_INTEL_VR_NOR is not set # CONFIG_MTD_PLATRAM is not set -@@ -406,7 +405,16 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 +@@ -406,7 +405,16 @@ # CONFIG_MTD_DOC2000 is not set # CONFIG_MTD_DOC2001 is not set # CONFIG_MTD_DOC2001PLUS is not set @@ -31137,7 +30879,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig # CONFIG_MTD_ONENAND is not set # -@@ -1178,7 +1186,17 @@ CONFIG_TMPFS=y +@@ -1178,7 +1186,17 @@ # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_EFS_FS is not set @@ -31156,7 +30898,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig # CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set -@@ -1242,6 +1260,8 @@ CONFIG_BITREVERSE=y +@@ -1242,6 +1260,8 @@ CONFIG_CRC32=y # CONFIG_CRC7 is not set # CONFIG_LIBCRC32C is not set @@ -31165,11 +30907,9 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8313_rdb_defconfig CONFIG_PLIST=y CONFIG_HAS_IOMEM=y CONFIG_HAS_IOPORT=y -Index: linux-2.6.24.7/arch/powerpc/configs/mpc834x_itx_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/mpc834x_itx_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/mpc834x_itx_defconfig -@@ -570,7 +570,8 @@ CONFIG_SATA_SIL=y +--- a/arch/powerpc/configs/mpc834x_itx_defconfig ++++ b/arch/powerpc/configs/mpc834x_itx_defconfig +@@ -570,7 +570,8 @@ # CONFIG_PATA_SIS is not set # CONFIG_PATA_VIA is not set # CONFIG_PATA_WINBOND is not set @@ -31179,10 +30919,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc834x_itx_defconfig CONFIG_MD=y CONFIG_BLK_DEV_MD=y CONFIG_MD_LINEAR=y -Index: linux-2.6.24.7/arch/powerpc/configs/mpc837x_mds_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/mpc837x_mds_defconfig ++++ b/arch/powerpc/configs/mpc837x_mds_defconfig @@ -0,0 +1,878 @@ +# +# Automatically generated make config: don't edit @@ -32062,11 +31800,9 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc837x_mds_defconfig +# CONFIG_CRYPTO_CAMELLIA is not set +# CONFIG_CRYPTO_TEST is not set +CONFIG_CRYPTO_HW=y -Index: linux-2.6.24.7/arch/powerpc/configs/mpc8610_hpcd_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/mpc8610_hpcd_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/mpc8610_hpcd_defconfig -@@ -696,7 +696,7 @@ CONFIG_SERIAL_8250_RSA=y +--- a/arch/powerpc/configs/mpc8610_hpcd_defconfig ++++ b/arch/powerpc/configs/mpc8610_hpcd_defconfig +@@ -696,7 +696,7 @@ CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y # CONFIG_SERIAL_JSM is not set @@ -32075,7 +31811,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8610_hpcd_defconfig CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set # CONFIG_IPMI_HANDLER is not set -@@ -708,7 +708,60 @@ CONFIG_UNIX98_PTYS=y +@@ -708,7 +708,60 @@ # CONFIG_RAW_DRIVER is not set # CONFIG_TCG_TPM is not set CONFIG_DEVPORT=y @@ -32137,7 +31873,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8610_hpcd_defconfig # # SPI support -@@ -763,7 +816,119 @@ CONFIG_DUMMY_CONSOLE=y +@@ -763,7 +816,119 @@ # # Sound # @@ -32258,10 +31994,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/mpc8610_hpcd_defconfig CONFIG_HID_SUPPORT=y CONFIG_HID=y # CONFIG_HID_DEBUG is not set -Index: linux-2.6.24.7/arch/powerpc/configs/pasemi_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/pasemi_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/pasemi_defconfig +--- a/arch/powerpc/configs/pasemi_defconfig ++++ b/arch/powerpc/configs/pasemi_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -32272,7 +32006,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/pasemi_defconfig # CONFIG_PPC64=y -@@ -152,7 +152,6 @@ CONFIG_PPC_PASEMI=y +@@ -152,7 +152,6 @@ CONFIG_PPC_PASEMI_IOMMU=y # CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set CONFIG_PPC_PASEMI_MDIO=y @@ -32280,7 +32014,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/pasemi_defconfig # CONFIG_PPC_CELLEB is not set # CONFIG_PPC_PS3 is not set # CONFIG_PPC_CELL is not set -@@ -256,7 +255,7 @@ CONFIG_PCI_DOMAINS=y +@@ -256,7 +255,7 @@ CONFIG_PCI_SYSCALL=y # CONFIG_PCIEPORTBUS is not set CONFIG_ARCH_SUPPORTS_MSI=y @@ -32289,7 +32023,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/pasemi_defconfig CONFIG_PCI_LEGACY=y # CONFIG_PCI_DEBUG is not set CONFIG_PCCARD=y -@@ -663,7 +662,26 @@ CONFIG_PATA_PCMCIA=y +@@ -663,7 +662,26 @@ # CONFIG_PATA_VIA is not set # CONFIG_PATA_WINBOND is not set CONFIG_PATA_PLATFORM=y @@ -32317,7 +32051,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/pasemi_defconfig # CONFIG_FUSION is not set # -@@ -1686,6 +1704,10 @@ CONFIG_XMON_DISASSEMBLY=y +@@ -1686,6 +1704,10 @@ # CONFIG_KEYS is not set # CONFIG_SECURITY is not set # CONFIG_SECURITY_FILE_CAPABILITIES is not set @@ -32328,10 +32062,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/pasemi_defconfig CONFIG_CRYPTO=y CONFIG_CRYPTO_ALGAPI=y CONFIG_CRYPTO_BLKCIPHER=y -Index: linux-2.6.24.7/arch/powerpc/configs/ppc64_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/ppc64_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/ppc64_defconfig +--- a/arch/powerpc/configs/ppc64_defconfig ++++ b/arch/powerpc/configs/ppc64_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -32341,7 +32073,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ppc64_defconfig # CONFIG_PPC64=y -@@ -211,7 +211,7 @@ CONFIG_MMIO_NVRAM=y +@@ -211,7 +211,7 @@ CONFIG_MPIC_U3_HT_IRQS=y CONFIG_MPIC_BROKEN_REGREAD=y CONFIG_IBMVIO=y @@ -32350,7 +32082,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ppc64_defconfig # CONFIG_PPC_MPC106 is not set CONFIG_PPC_970_NAP=y CONFIG_PPC_INDIRECT_IO=y -@@ -375,7 +375,7 @@ CONFIG_INET_TUNNEL=y +@@ -375,7 +375,7 @@ CONFIG_INET_XFRM_MODE_TRANSPORT=y CONFIG_INET_XFRM_MODE_TUNNEL=y CONFIG_INET_XFRM_MODE_BEET=y @@ -32359,7 +32091,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ppc64_defconfig CONFIG_INET_DIAG=y CONFIG_INET_TCP_DIAG=y # CONFIG_TCP_CONG_ADVANCED is not set -@@ -929,6 +929,7 @@ CONFIG_SPIDER_NET=m +@@ -929,6 +929,7 @@ CONFIG_NETDEV_10000=y # CONFIG_CHELSIO_T1 is not set # CONFIG_CHELSIO_T3 is not set @@ -32367,7 +32099,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ppc64_defconfig # CONFIG_IXGBE is not set CONFIG_IXGB=m # CONFIG_IXGB_NAPI is not set -@@ -1558,6 +1559,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y +@@ -1558,6 +1559,7 @@ CONFIG_INFINIBAND_MTHCA=m CONFIG_INFINIBAND_MTHCA_DEBUG=y # CONFIG_INFINIBAND_IPATH is not set @@ -32375,10 +32107,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ppc64_defconfig # CONFIG_INFINIBAND_AMSO1100 is not set # CONFIG_MLX4_INFINIBAND is not set CONFIG_INFINIBAND_IPOIB=m -Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/ps3_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig +--- a/arch/powerpc/configs/ps3_defconfig ++++ b/arch/powerpc/configs/ps3_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -32389,7 +32119,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig # CONFIG_PPC64=y -@@ -103,6 +103,7 @@ CONFIG_VM_EVENT_COUNTERS=y +@@ -103,6 +103,7 @@ CONFIG_SLAB=y # CONFIG_SLUB is not set # CONFIG_SLOB is not set @@ -32397,7 +32127,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig CONFIG_RT_MUTEXES=y # CONFIG_TINY_SHMEM is not set CONFIG_BASE_SMALL=0 -@@ -154,7 +155,6 @@ CONFIG_PPC_PS3=y +@@ -154,7 +155,6 @@ # CONFIG_PS3_ADVANCED is not set CONFIG_PS3_HTAB_SIZE=20 # CONFIG_PS3_DYNAMIC_DMA is not set @@ -32405,7 +32135,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig CONFIG_PS3_VUART=y CONFIG_PS3_PS3AV=y CONFIG_PS3_SYS_MANAGER=y -@@ -162,6 +162,7 @@ CONFIG_PS3_STORAGE=y +@@ -162,6 +162,7 @@ CONFIG_PS3_DISK=y CONFIG_PS3_ROM=y CONFIG_PS3_FLASH=y @@ -32413,7 +32143,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig CONFIG_PPC_CELL=y # CONFIG_PPC_CELL_NATIVE is not set # CONFIG_PPC_IBM_CELL_BLADE is not set -@@ -225,7 +226,7 @@ CONFIG_HAVE_MEMORY_PRESENT=y +@@ -225,7 +226,7 @@ # CONFIG_SPARSEMEM_STATIC is not set CONFIG_SPARSEMEM_EXTREME=y CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y @@ -32422,7 +32152,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig CONFIG_MEMORY_HOTPLUG=y CONFIG_MEMORY_HOTPLUG_SPARSE=y CONFIG_SPLIT_PTLOCK_CPUS=4 -@@ -338,7 +339,26 @@ CONFIG_IPV6_SIT=y +@@ -338,7 +339,26 @@ # CONFIG_NET_PKTGEN is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set @@ -32450,7 +32180,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig # CONFIG_AF_RXRPC is not set # -@@ -666,14 +686,14 @@ CONFIG_LOGO_LINUX_CLUT224=y +@@ -666,14 +686,14 @@ # # Sound # @@ -32469,7 +32199,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig # CONFIG_SND_SEQUENCER is not set # CONFIG_SND_MIXER_OSS is not set # CONFIG_SND_PCM_OSS is not set -@@ -702,7 +722,7 @@ CONFIG_SND_VERBOSE_PROCFS=y +@@ -702,7 +722,7 @@ # # ALSA PowerPC devices # @@ -32478,7 +32208,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig CONFIG_SND_PS3_DEFAULT_START_DELAY=2000 # -@@ -747,7 +767,7 @@ CONFIG_USB_SUPPORT=y +@@ -747,7 +767,7 @@ CONFIG_USB_ARCH_HAS_HCD=y CONFIG_USB_ARCH_HAS_OHCI=y CONFIG_USB_ARCH_HAS_EHCI=y @@ -32487,7 +32217,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig # CONFIG_USB_DEBUG is not set # -@@ -761,13 +781,13 @@ CONFIG_USB_DEVICEFS=y +@@ -761,13 +781,13 @@ # # USB Host Controller Drivers # @@ -32503,7 +32233,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig # CONFIG_USB_OHCI_HCD_PPC_OF is not set # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y -@@ -1033,7 +1053,8 @@ CONFIG_HAS_IOMEM=y +@@ -1033,7 +1053,8 @@ CONFIG_HAS_IOPORT=y CONFIG_HAS_DMA=y CONFIG_INSTRUMENTATION=y @@ -32513,10 +32243,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/ps3_defconfig # CONFIG_KPROBES is not set # CONFIG_MARKERS is not set -Index: linux-2.6.24.7/arch/powerpc/configs/rainier_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/rainier_defconfig ++++ b/arch/powerpc/configs/rainier_defconfig @@ -0,0 +1,873 @@ +# +# Automatically generated make config: don't edit @@ -33391,10 +33119,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/rainier_defconfig +# CONFIG_CRYPTO_AUTHENC is not set +CONFIG_CRYPTO_HW=y +# CONFIG_PPC_CLOCK is not set -Index: linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/sequoia_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig +--- a/arch/powerpc/configs/sequoia_defconfig ++++ b/arch/powerpc/configs/sequoia_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -33405,7 +33131,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig # # CONFIG_PPC64 is not set -@@ -129,6 +129,7 @@ CONFIG_DEFAULT_AS=y +@@ -129,6 +129,7 @@ # CONFIG_DEFAULT_CFQ is not set # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="anticipatory" @@ -33413,7 +33139,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig # # Platform support -@@ -141,8 +142,10 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" +@@ -141,8 +142,10 @@ # CONFIG_BAMBOO is not set # CONFIG_EBONY is not set CONFIG_SEQUOIA=y @@ -33425,7 +33151,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig # CONFIG_MPIC is not set # CONFIG_MPIC_WEIRD is not set # CONFIG_PPC_I8259 is not set -@@ -446,9 +449,7 @@ CONFIG_MISC_DEVICES=y +@@ -446,9 +449,7 @@ # CONFIG_FIREWIRE is not set # CONFIG_IEEE1394 is not set # CONFIG_I2O is not set @@ -33436,7 +33162,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig CONFIG_NETDEVICES=y # CONFIG_NETDEVICES_MULTIQUEUE is not set # CONFIG_DUMMY is not set -@@ -459,10 +460,28 @@ CONFIG_NETDEVICES=y +@@ -459,10 +460,28 @@ # CONFIG_VETH is not set # CONFIG_IP1000 is not set # CONFIG_ARCNET is not set @@ -33466,7 +33192,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig CONFIG_NETDEV_1000=y # CONFIG_ACENIC is not set # CONFIG_DL2K is not set -@@ -811,6 +830,7 @@ CONFIG_PPC_EARLY_DEBUG=y +@@ -811,6 +830,7 @@ # CONFIG_PPC_EARLY_DEBUG_PAS_REALMODE is not set # CONFIG_PPC_EARLY_DEBUG_BEAT is not set CONFIG_PPC_EARLY_DEBUG_44x=y @@ -33474,10 +33200,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/sequoia_defconfig # CONFIG_PPC_EARLY_DEBUG_CPM is not set CONFIG_PPC_EARLY_DEBUG_44x_PHYSLOW=0xef600300 CONFIG_PPC_EARLY_DEBUG_44x_PHYSHIGH=0x1 -Index: linux-2.6.24.7/arch/powerpc/configs/storcenter_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/storcenter_defconfig ++++ b/arch/powerpc/configs/storcenter_defconfig @@ -0,0 +1,1174 @@ +# +# Automatically generated make config: don't edit @@ -34653,10 +34377,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/storcenter_defconfig +CONFIG_ASYNC_XOR=y +# CONFIG_CRYPTO is not set +# CONFIG_PPC_CLOCK is not set -Index: linux-2.6.24.7/arch/powerpc/configs/taishan_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/taishan_defconfig ++++ b/arch/powerpc/configs/taishan_defconfig @@ -0,0 +1,790 @@ +# +# Automatically generated make config: don't edit @@ -35448,10 +35170,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/taishan_defconfig +# CONFIG_CRYPTO_AUTHENC is not set +CONFIG_CRYPTO_HW=y +# CONFIG_PPC_CLOCK is not set -Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/configs/walnut_defconfig -+++ linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig +--- a/arch/powerpc/configs/walnut_defconfig ++++ b/arch/powerpc/configs/walnut_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit @@ -35462,7 +35182,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # # CONFIG_PPC64 is not set -@@ -40,7 +40,7 @@ CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y +@@ -40,7 +40,7 @@ CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_PPC_OF=y CONFIG_OF=y @@ -35471,7 +35191,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_GENERIC_TBSYNC is not set CONFIG_AUDIT_ARCH=y CONFIG_GENERIC_BUG=y -@@ -127,6 +127,7 @@ CONFIG_DEFAULT_AS=y +@@ -127,6 +127,7 @@ # CONFIG_DEFAULT_CFQ is not set # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="anticipatory" @@ -35479,7 +35199,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # # Platform support -@@ -136,7 +137,9 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" +@@ -136,7 +137,9 @@ # CONFIG_PPC_CELL is not set # CONFIG_PPC_CELL_NATIVE is not set # CONFIG_PQ2ADS is not set @@ -35489,7 +35209,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig CONFIG_WALNUT=y # CONFIG_XILINX_VIRTEX_GENERIC_BOARD is not set CONFIG_405GP=y -@@ -204,11 +207,17 @@ CONFIG_ISA_DMA_API=y +@@ -204,11 +207,17 @@ # Bus options # CONFIG_ZONE_DMA=y @@ -35511,7 +35231,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # # Advanced setup -@@ -373,11 +382,13 @@ CONFIG_MTD_CFI_UTIL=y +@@ -373,11 +382,13 @@ # CONFIG_MTD_COMPLEX_MAPPINGS is not set # CONFIG_MTD_PHYSMAP is not set CONFIG_MTD_PHYSMAP_OF=y @@ -35525,7 +35245,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_MTD_SLRAM is not set # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_MTDRAM is not set -@@ -400,9 +411,14 @@ CONFIG_OF_DEVICE=y +@@ -400,9 +411,14 @@ # CONFIG_PARPORT is not set CONFIG_BLK_DEV=y # CONFIG_BLK_DEV_FD is not set @@ -35540,7 +35260,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_COUNT=16 CONFIG_BLK_DEV_RAM_SIZE=35000 -@@ -411,7 +427,10 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 +@@ -411,7 +427,10 @@ # CONFIG_ATA_OVER_ETH is not set # CONFIG_XILINX_SYSACE is not set CONFIG_MISC_DEVICES=y @@ -35551,7 +35271,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_IDE is not set # -@@ -423,6 +442,14 @@ CONFIG_MISC_DEVICES=y +@@ -423,6 +442,14 @@ # CONFIG_SCSI_NETLINK is not set # CONFIG_ATA is not set # CONFIG_MD is not set @@ -35566,7 +35286,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_MACINTOSH_DRIVERS is not set CONFIG_NETDEVICES=y # CONFIG_NETDEVICES_MULTIQUEUE is not set -@@ -432,9 +459,17 @@ CONFIG_NETDEVICES=y +@@ -432,9 +459,17 @@ # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # CONFIG_VETH is not set @@ -35584,7 +35304,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig CONFIG_IBM_NEW_EMAC=y CONFIG_IBM_NEW_EMAC_RXB=128 CONFIG_IBM_NEW_EMAC_TXB=64 -@@ -446,9 +481,38 @@ CONFIG_IBM_NEW_EMAC_ZMII=y +@@ -446,9 +481,38 @@ # CONFIG_IBM_NEW_EMAC_RGMII is not set # CONFIG_IBM_NEW_EMAC_TAH is not set # CONFIG_IBM_NEW_EMAC_EMAC4 is not set @@ -35623,7 +35343,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # # Wireless LAN -@@ -456,6 +520,8 @@ CONFIG_NETDEV_10000=y +@@ -456,6 +520,8 @@ # CONFIG_WLAN_PRE80211 is not set # CONFIG_WLAN_80211 is not set # CONFIG_WAN is not set @@ -35632,7 +35352,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_PPP is not set # CONFIG_SLIP is not set # CONFIG_SHAPER is not set -@@ -487,6 +553,7 @@ CONFIG_NETDEV_10000=y +@@ -487,6 +553,7 @@ # CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y @@ -35640,7 +35360,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig CONFIG_SERIAL_8250_NR_UARTS=4 CONFIG_SERIAL_8250_RUNTIME_UARTS=4 CONFIG_SERIAL_8250_EXTENDED=y -@@ -501,6 +568,7 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y +@@ -501,6 +568,7 @@ # CONFIG_SERIAL_UARTLITE is not set CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y @@ -35648,7 +35368,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig CONFIG_SERIAL_OF_PLATFORM=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y -@@ -510,8 +578,10 @@ CONFIG_LEGACY_PTY_COUNT=256 +@@ -510,8 +578,10 @@ # CONFIG_NVRAM is not set # CONFIG_GEN_RTC is not set # CONFIG_R3964 is not set @@ -35659,7 +35379,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_I2C is not set # -@@ -545,6 +615,8 @@ CONFIG_SSB_POSSIBLE=y +@@ -545,6 +615,8 @@ # # Graphics support # @@ -35668,7 +35388,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_VGASTATE is not set CONFIG_VIDEO_OUTPUT_CONTROL=m # CONFIG_FB is not set -@@ -560,9 +632,10 @@ CONFIG_VIDEO_OUTPUT_CONTROL=m +@@ -560,9 +632,10 @@ # # CONFIG_SOUND is not set CONFIG_USB_SUPPORT=y @@ -35682,7 +35402,7 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' -@@ -574,6 +647,7 @@ CONFIG_USB_SUPPORT=y +@@ -574,6 +647,7 @@ # CONFIG_USB_GADGET is not set # CONFIG_MMC is not set # CONFIG_NEW_LEDS is not set @@ -35690,10 +35410,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/walnut_defconfig # CONFIG_EDAC is not set # CONFIG_RTC_CLASS is not set -Index: linux-2.6.24.7/arch/powerpc/configs/warp_defconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/configs/warp_defconfig ++++ b/arch/powerpc/configs/warp_defconfig @@ -0,0 +1,1057 @@ +# +# Automatically generated make config: don't edit @@ -36752,10 +36470,8 @@ Index: linux-2.6.24.7/arch/powerpc/configs/warp_defconfig +# CONFIG_SECURITY_FILE_CAPABILITIES is not set +# CONFIG_CRYPTO is not set +# CONFIG_PPC_CLOCK is not set -Index: linux-2.6.24.7/arch/powerpc/kernel/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/Makefile -+++ linux-2.6.24.7/arch/powerpc/kernel/Makefile +--- a/arch/powerpc/kernel/Makefile ++++ b/arch/powerpc/kernel/Makefile @@ -3,7 +3,7 @@ # @@ -36765,7 +36481,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/Makefile endif ifeq ($(CONFIG_PPC32),y) CFLAGS_prom_init.o += -fPIC -@@ -70,6 +70,7 @@ pci64-$(CONFIG_PPC64) += pci_dn.o isa-b +@@ -70,6 +70,7 @@ obj-$(CONFIG_PCI) += pci_$(CONFIG_WORD_SIZE).o $(pci64-y) \ pci-common.o obj-$(CONFIG_PCI_MSI) += msi.o @@ -36773,7 +36489,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/Makefile obj-$(CONFIG_KEXEC) += machine_kexec.o crash.o \ machine_kexec_$(CONFIG_WORD_SIZE).o obj-$(CONFIG_AUDIT) += audit.o -@@ -91,3 +92,13 @@ obj-$(CONFIG_PPC64) += $(obj64-y) +@@ -91,3 +92,13 @@ extra-$(CONFIG_PPC_FPU) += fpu.o extra-$(CONFIG_PPC64) += entry_64.o @@ -36787,11 +36503,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/Makefile +PHONY += systbl_chk +systbl_chk: $(src)/systbl_chk.sh $(obj)/systbl_chk.i + $(call cmd,systbl_chk) -Index: linux-2.6.24.7/arch/powerpc/kernel/btext.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/btext.c -+++ linux-2.6.24.7/arch/powerpc/kernel/btext.c -@@ -236,7 +236,7 @@ int __init btext_find_display(int allow_ +--- a/arch/powerpc/kernel/btext.c ++++ b/arch/powerpc/kernel/btext.c +@@ -236,7 +236,7 @@ if (rc == 0 || !allow_nonstdout) return rc; @@ -36800,11 +36514,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/btext.c if (of_get_property(np, "linux,opened", NULL)) { printk("trying %s ...\n", np->full_name); rc = btext_initialize(np); -Index: linux-2.6.24.7/arch/powerpc/kernel/cpu_setup_44x.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/cpu_setup_44x.S -+++ linux-2.6.24.7/arch/powerpc/kernel/cpu_setup_44x.S -@@ -23,11 +23,24 @@ _GLOBAL(__setup_cpu_440epx) +--- a/arch/powerpc/kernel/cpu_setup_44x.S ++++ b/arch/powerpc/kernel/cpu_setup_44x.S +@@ -23,11 +23,24 @@ mflr r4 bl __init_fpu_44x bl __plb_disable_wrp @@ -36830,11 +36542,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cpu_setup_44x.S /* enable APU between CPU and FPU */ _GLOBAL(__init_fpu_44x) -Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/cputable.c -+++ linux-2.6.24.7/arch/powerpc/kernel/cputable.c -@@ -33,7 +33,9 @@ EXPORT_SYMBOL(cur_cpu_spec); +--- a/arch/powerpc/kernel/cputable.c ++++ b/arch/powerpc/kernel/cputable.c +@@ -33,7 +33,9 @@ #ifdef CONFIG_PPC32 extern void __setup_cpu_440ep(unsigned long offset, struct cpu_spec* spec); extern void __setup_cpu_440epx(unsigned long offset, struct cpu_spec* spec); @@ -36844,7 +36554,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c 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); -@@ -85,6 +87,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -85,6 +87,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/power3", .oprofile_type = PPC_OPROFILE_RS64, @@ -36852,7 +36562,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power3", }, { /* Power3+ */ -@@ -99,6 +102,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -99,6 +102,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/power3", .oprofile_type = PPC_OPROFILE_RS64, @@ -36860,7 +36570,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power3", }, { /* Northstar */ -@@ -113,6 +117,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -113,6 +117,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/rs64", .oprofile_type = PPC_OPROFILE_RS64, @@ -36868,7 +36578,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "rs64", }, { /* Pulsar */ -@@ -127,6 +132,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -127,6 +132,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/rs64", .oprofile_type = PPC_OPROFILE_RS64, @@ -36876,7 +36586,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "rs64", }, { /* I-star */ -@@ -141,6 +147,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -141,6 +147,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/rs64", .oprofile_type = PPC_OPROFILE_RS64, @@ -36884,7 +36594,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "rs64", }, { /* S-star */ -@@ -155,6 +162,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -155,6 +162,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/rs64", .oprofile_type = PPC_OPROFILE_RS64, @@ -36892,7 +36602,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "rs64", }, { /* Power4 */ -@@ -169,6 +177,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -169,6 +177,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/power4", .oprofile_type = PPC_OPROFILE_POWER4, @@ -36900,7 +36610,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power4", }, { /* Power4+ */ -@@ -183,6 +192,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -183,6 +192,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/power4", .oprofile_type = PPC_OPROFILE_POWER4, @@ -36908,7 +36618,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power4", }, { /* PPC970 */ -@@ -200,6 +210,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -200,6 +210,7 @@ .cpu_restore = __restore_cpu_ppc970, .oprofile_cpu_type = "ppc64/970", .oprofile_type = PPC_OPROFILE_POWER4, @@ -36916,7 +36626,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc970", }, { /* PPC970FX */ -@@ -217,6 +228,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -217,6 +228,7 @@ .cpu_restore = __restore_cpu_ppc970, .oprofile_cpu_type = "ppc64/970", .oprofile_type = PPC_OPROFILE_POWER4, @@ -36924,7 +36634,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc970", }, { /* PPC970MP DD1.0 - no DEEPNAP, use regular 970 init */ -@@ -234,6 +246,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -234,6 +246,7 @@ .cpu_restore = __restore_cpu_ppc970, .oprofile_cpu_type = "ppc64/970MP", .oprofile_type = PPC_OPROFILE_POWER4, @@ -36932,7 +36642,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc970", }, { /* PPC970MP */ -@@ -251,6 +264,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -251,6 +264,7 @@ .cpu_restore = __restore_cpu_ppc970, .oprofile_cpu_type = "ppc64/970MP", .oprofile_type = PPC_OPROFILE_POWER4, @@ -36940,7 +36650,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc970", }, { /* PPC970GX */ -@@ -267,6 +281,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -267,6 +281,7 @@ .cpu_setup = __setup_cpu_ppc970, .oprofile_cpu_type = "ppc64/970", .oprofile_type = PPC_OPROFILE_POWER4, @@ -36948,7 +36658,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc970", }, { /* Power5 GR */ -@@ -286,6 +301,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -286,6 +301,7 @@ */ .oprofile_mmcra_sihv = MMCRA_SIHV, .oprofile_mmcra_sipr = MMCRA_SIPR, @@ -36956,7 +36666,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power5", }, { /* Power5++ */ -@@ -301,6 +317,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -301,6 +317,7 @@ .oprofile_type = PPC_OPROFILE_POWER4, .oprofile_mmcra_sihv = MMCRA_SIHV, .oprofile_mmcra_sipr = MMCRA_SIPR, @@ -36964,7 +36674,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power5+", }, { /* Power5 GS */ -@@ -317,6 +334,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -317,6 +334,7 @@ .oprofile_type = PPC_OPROFILE_POWER4, .oprofile_mmcra_sihv = MMCRA_SIHV, .oprofile_mmcra_sipr = MMCRA_SIPR, @@ -36972,7 +36682,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power5+", }, { /* POWER6 in P5+ mode; 2.04-compliant processor */ -@@ -327,6 +345,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -327,6 +345,7 @@ .cpu_user_features = COMMON_USER_POWER5_PLUS, .icache_bsize = 128, .dcache_bsize = 128, @@ -36980,7 +36690,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power5+", }, { /* Power6 */ -@@ -346,6 +365,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -346,6 +365,7 @@ .oprofile_mmcra_sipr = POWER6_MMCRA_SIPR, .oprofile_mmcra_clear = POWER6_MMCRA_THRM | POWER6_MMCRA_OTHER, @@ -36988,7 +36698,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power6x", }, { /* 2.05-compliant processor, i.e. Power6 "architected" mode */ -@@ -356,6 +376,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -356,6 +376,7 @@ .cpu_user_features = COMMON_USER_POWER6, .icache_bsize = 128, .dcache_bsize = 128, @@ -36996,7 +36706,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power6", }, { /* Cell Broadband Engine */ -@@ -372,6 +393,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -372,6 +393,7 @@ .pmc_type = PPC_PMC_IBM, .oprofile_cpu_type = "ppc64/cell-be", .oprofile_type = PPC_OPROFILE_CELL, @@ -37004,7 +36714,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc-cell-be", }, { /* PA Semi PA6T */ -@@ -388,6 +410,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -388,6 +410,7 @@ .cpu_restore = __restore_cpu_pa6t, .oprofile_cpu_type = "ppc64/pa6t", .oprofile_type = PPC_OPROFILE_PA6T, @@ -37012,7 +36722,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "pa6t", }, { /* default match */ -@@ -400,6 +423,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -400,6 +423,7 @@ .dcache_bsize = 128, .num_pmcs = 6, .pmc_type = PPC_PMC_IBM, @@ -37020,7 +36730,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "power4", } #endif /* CONFIG_PPC64 */ -@@ -414,6 +438,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -414,6 +438,7 @@ PPC_FEATURE_UNIFIED_CACHE | PPC_FEATURE_NO_TB, .icache_bsize = 32, .dcache_bsize = 32, @@ -37028,7 +36738,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc601", }, { /* 603 */ -@@ -425,6 +450,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -425,6 +450,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_603, @@ -37036,7 +36746,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc603", }, { /* 603e */ -@@ -436,6 +462,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -436,6 +462,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_603, @@ -37044,7 +36754,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc603", }, { /* 603ev */ -@@ -447,6 +474,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -447,6 +474,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_603, @@ -37052,7 +36762,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc603", }, { /* 604 */ -@@ -459,6 +487,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -459,6 +487,7 @@ .dcache_bsize = 32, .num_pmcs = 2, .cpu_setup = __setup_cpu_604, @@ -37060,7 +36770,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc604", }, { /* 604e */ -@@ -471,6 +500,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -471,6 +500,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_604, @@ -37068,7 +36778,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc604", }, { /* 604r */ -@@ -483,6 +513,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -483,6 +513,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_604, @@ -37076,7 +36786,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc604", }, { /* 604ev */ -@@ -495,6 +526,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -495,6 +526,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_604, @@ -37084,7 +36794,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc604", }, { /* 740/750 (0x4202, don't support TAU ?) */ -@@ -507,6 +539,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -507,6 +539,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750, @@ -37092,7 +36802,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750CX (80100 and 8010x?) */ -@@ -519,6 +552,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -519,6 +552,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750cx, @@ -37100,7 +36810,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750CX (82201 and 82202) */ -@@ -531,6 +565,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -531,6 +565,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750cx, @@ -37108,7 +36818,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750CXe (82214) */ -@@ -543,6 +578,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -543,6 +578,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750cx, @@ -37116,7 +36826,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750CXe "Gekko" (83214) */ -@@ -555,6 +591,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -555,6 +591,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750cx, @@ -37124,7 +36834,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750CL */ -@@ -567,6 +604,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -567,6 +604,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750, @@ -37132,7 +36842,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 745/755 */ -@@ -579,6 +617,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -579,6 +617,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750, @@ -37140,7 +36850,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750FX rev 1.x */ -@@ -591,6 +630,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -591,6 +630,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750, @@ -37148,7 +36858,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750FX rev 2.0 must disable HID0[DPM] */ -@@ -603,6 +643,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -603,6 +643,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750, @@ -37156,7 +36866,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750FX (All revs except 2.0) */ -@@ -615,6 +656,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -615,6 +656,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750fx, @@ -37164,7 +36874,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 750GX */ -@@ -627,6 +669,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -627,6 +669,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750fx, @@ -37172,7 +36882,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 740/750 (L2CR bit need fixup for 740) */ -@@ -639,6 +682,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -639,6 +682,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_750, @@ -37180,7 +36890,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc750", }, { /* 7400 rev 1.1 ? (no TAU) */ -@@ -652,6 +696,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -652,6 +696,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_7400, @@ -37188,7 +36898,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7400", }, { /* 7400 */ -@@ -665,6 +710,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -665,6 +710,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_7400, @@ -37196,7 +36906,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7400", }, { /* 7410 */ -@@ -678,6 +724,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -678,6 +724,7 @@ .dcache_bsize = 32, .num_pmcs = 4, .cpu_setup = __setup_cpu_7410, @@ -37204,7 +36914,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7400", }, { /* 7450 2.0 - no doze/nap */ -@@ -693,6 +740,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -693,6 +740,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37212,7 +36922,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7450 2.1 */ -@@ -708,6 +756,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -708,6 +756,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37220,7 +36930,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7450 2.3 and newer */ -@@ -723,6 +772,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -723,6 +772,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37228,7 +36938,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7455 rev 1.x */ -@@ -738,6 +788,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -738,6 +788,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37236,7 +36946,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7455 rev 2.0 */ -@@ -753,6 +804,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -753,6 +804,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37244,7 +36954,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7455 others */ -@@ -768,6 +820,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -768,6 +820,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37252,7 +36962,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7447/7457 Rev 1.0 */ -@@ -783,6 +836,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -783,6 +836,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37260,7 +36970,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7447/7457 Rev 1.1 */ -@@ -798,6 +852,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -798,6 +852,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37268,7 +36978,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7447/7457 Rev 1.2 and later */ -@@ -812,6 +867,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -812,6 +867,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37276,7 +36986,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7447A */ -@@ -827,6 +883,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -827,6 +883,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37284,7 +36994,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 7448 */ -@@ -842,6 +899,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -842,6 +899,7 @@ .cpu_setup = __setup_cpu_745x, .oprofile_cpu_type = "ppc/7450", .oprofile_type = PPC_OPROFILE_G4, @@ -37292,7 +37002,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc7450", }, { /* 82xx (8240, 8245, 8260 are all 603e cores) */ -@@ -853,6 +911,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -853,6 +911,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_603, @@ -37300,7 +37010,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc603", }, { /* All G2_LE (603e core, plus some) have the same pvr */ -@@ -864,6 +923,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -864,6 +923,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_603, @@ -37308,7 +37018,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc603", }, { /* e300c1 (a 603e core, plus some) on 83xx */ -@@ -875,6 +935,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -875,6 +935,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_603, @@ -37316,7 +37026,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc603", }, { /* e300c2 (an e300c1 core, plus some, minus FPU) on 83xx */ -@@ -886,9 +947,10 @@ static struct cpu_spec __initdata cpu_sp +@@ -886,9 +947,10 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_603, @@ -37328,7 +37038,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .pvr_mask = 0x7fff0000, .pvr_value = 0x00850000, .cpu_name = "e300c3", -@@ -899,6 +961,18 @@ static struct cpu_spec __initdata cpu_sp +@@ -899,6 +961,18 @@ .cpu_setup = __setup_cpu_603, .platform = "ppc603", }, @@ -37347,7 +37057,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c { /* default match, we assume split I/D cache & TB (non-601)... */ .pvr_mask = 0x00000000, .pvr_value = 0x00000000, -@@ -907,6 +981,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -907,6 +981,7 @@ .cpu_user_features = COMMON_USER, .icache_bsize = 32, .dcache_bsize = 32, @@ -37355,7 +37065,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc603", }, #endif /* CLASSIC_PPC */ -@@ -933,6 +1008,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -933,6 +1008,7 @@ .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU, .icache_bsize = 16, .dcache_bsize = 16, @@ -37363,7 +37073,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc403", }, { /* 403GCX */ -@@ -944,6 +1020,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -944,6 +1020,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_NO_TB, .icache_bsize = 16, .dcache_bsize = 16, @@ -37371,7 +37081,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc403", }, { /* 403G ?? */ -@@ -954,6 +1031,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -954,6 +1031,7 @@ .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU, .icache_bsize = 16, .dcache_bsize = 16, @@ -37379,7 +37089,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc403", }, { /* 405GP */ -@@ -965,6 +1043,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -965,6 +1043,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37387,7 +37097,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* STB 03xxx */ -@@ -976,6 +1055,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -976,6 +1055,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37395,7 +37105,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* STB 04xxx */ -@@ -987,6 +1067,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -987,6 +1067,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37403,7 +37113,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* NP405L */ -@@ -998,6 +1079,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -998,6 +1079,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37411,7 +37121,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* NP4GS3 */ -@@ -1009,6 +1091,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1009,6 +1091,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37419,7 +37129,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* NP405H */ -@@ -1020,6 +1103,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1020,6 +1103,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37427,7 +37137,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* 405GPr */ -@@ -1031,6 +1115,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1031,6 +1115,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37435,7 +37145,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* STBx25xx */ -@@ -1042,6 +1127,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1042,6 +1127,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37443,7 +37153,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* 405LP */ -@@ -1052,6 +1138,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1052,6 +1138,7 @@ .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU, .icache_bsize = 32, .dcache_bsize = 32, @@ -37451,7 +37161,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* Xilinx Virtex-II Pro */ -@@ -1063,6 +1150,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1063,6 +1150,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37459,7 +37169,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* Xilinx Virtex-4 FX */ -@@ -1074,6 +1162,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1074,6 +1162,7 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37467,7 +37177,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, { /* 405EP */ -@@ -1085,17 +1174,31 @@ static struct cpu_spec __initdata cpu_sp +@@ -1085,17 +1174,31 @@ PPC_FEATURE_HAS_MMU | PPC_FEATURE_HAS_4xxMAC, .icache_bsize = 32, .dcache_bsize = 32, @@ -37501,7 +37211,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc405", }, -@@ -1109,6 +1212,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1109,6 +1212,7 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37509,7 +37219,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* Use logical PVR for 440EP (logical pvr = pvr | 0x8) */ -@@ -1120,6 +1224,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1120,6 +1224,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_440ep, @@ -37517,7 +37227,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { -@@ -1130,6 +1235,19 @@ static struct cpu_spec __initdata cpu_sp +@@ -1130,6 +1235,19 @@ .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU, .icache_bsize = 32, .dcache_bsize = 32, @@ -37537,7 +37247,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* Use logical PVR for 440EP (logical pvr = pvr | 0x8) */ -@@ -1141,6 +1259,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1141,6 +1259,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_440ep, @@ -37545,7 +37255,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440GRX */ -@@ -1152,6 +1271,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1152,6 +1271,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_440grx, @@ -37553,7 +37263,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* Use logical PVR for 440EPx (logical pvr = pvr | 0x8) */ -@@ -1163,6 +1283,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1163,6 +1283,7 @@ .icache_bsize = 32, .dcache_bsize = 32, .cpu_setup = __setup_cpu_440epx, @@ -37561,7 +37271,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440GP Rev. B */ -@@ -1173,6 +1294,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1173,6 +1294,7 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37569,7 +37279,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440gp", }, { /* 440GP Rev. C */ -@@ -1183,6 +1305,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1183,6 +1305,7 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37577,7 +37287,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440gp", }, { /* 440GX Rev. A */ -@@ -1193,6 +1316,8 @@ static struct cpu_spec __initdata cpu_sp +@@ -1193,6 +1316,8 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37586,7 +37296,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440GX Rev. B */ -@@ -1203,6 +1328,8 @@ static struct cpu_spec __initdata cpu_sp +@@ -1203,6 +1328,8 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37595,7 +37305,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440GX Rev. C */ -@@ -1213,6 +1340,8 @@ static struct cpu_spec __initdata cpu_sp +@@ -1213,6 +1340,8 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37604,7 +37314,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440GX Rev. F */ -@@ -1223,6 +1352,8 @@ static struct cpu_spec __initdata cpu_sp +@@ -1223,6 +1352,8 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37613,7 +37323,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440SP Rev. A */ -@@ -1233,6 +1364,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1233,6 +1364,7 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37621,7 +37331,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440SPe Rev. A */ -@@ -1243,6 +1375,8 @@ static struct cpu_spec __initdata cpu_sp +@@ -1243,6 +1375,8 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37630,7 +37340,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc440", }, { /* 440SPe Rev. B */ -@@ -1253,10 +1387,13 @@ static struct cpu_spec __initdata cpu_sp +@@ -1253,10 +1387,13 @@ .cpu_user_features = COMMON_USER_BOOKE, .icache_bsize = 32, .dcache_bsize = 32, @@ -37644,7 +37354,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c { /* e200z5 */ .pvr_mask = 0xfff00000, .pvr_value = 0x81000000, -@@ -1267,6 +1404,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1267,6 +1404,7 @@ PPC_FEATURE_HAS_EFP_SINGLE | PPC_FEATURE_UNIFIED_CACHE, .dcache_bsize = 32, @@ -37652,7 +37362,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc5554", }, { /* e200z6 */ -@@ -1280,8 +1418,10 @@ static struct cpu_spec __initdata cpu_sp +@@ -1280,8 +1418,10 @@ PPC_FEATURE_HAS_EFP_SINGLE_COMP | PPC_FEATURE_UNIFIED_CACHE, .dcache_bsize = 32, @@ -37663,7 +37373,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c { /* e500 */ .pvr_mask = 0xffff0000, .pvr_value = 0x80200000, -@@ -1296,6 +1436,7 @@ static struct cpu_spec __initdata cpu_sp +@@ -1296,6 +1436,7 @@ .num_pmcs = 4, .oprofile_cpu_type = "ppc/e500", .oprofile_type = PPC_OPROFILE_BOOKE, @@ -37671,7 +37381,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c .platform = "ppc8540", }, { /* e500v2 */ -@@ -1313,9 +1454,11 @@ static struct cpu_spec __initdata cpu_sp +@@ -1313,9 +1454,11 @@ .num_pmcs = 4, .oprofile_cpu_type = "ppc/e500", .oprofile_type = PPC_OPROFILE_BOOKE, @@ -37683,10 +37393,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/cputable.c #if !CLASSIC_PPC { /* default match */ .pvr_mask = 0x00000000, -Index: linux-2.6.24.7/arch/powerpc/kernel/crash.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/crash.c -+++ linux-2.6.24.7/arch/powerpc/kernel/crash.c +--- a/arch/powerpc/kernel/crash.c ++++ b/arch/powerpc/kernel/crash.c @@ -32,6 +32,8 @@ #include <asm/lmb.h> #include <asm/firmware.h> @@ -37696,7 +37404,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/crash.c #ifdef DEBUG #include <asm/udbg.h> -@@ -45,6 +47,11 @@ int crashing_cpu = -1; +@@ -45,6 +47,11 @@ static cpumask_t cpus_in_crash = CPU_MASK_NONE; cpumask_t cpus_in_sr = CPU_MASK_NONE; @@ -37708,7 +37416,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/crash.c #ifdef CONFIG_SMP static atomic_t enter_on_soft_reset = ATOMIC_INIT(0); -@@ -285,9 +292,72 @@ static inline void crash_kexec_stop_spus +@@ -285,9 +292,72 @@ } #endif /* CONFIG_SPU_BASE */ @@ -37782,7 +37490,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/crash.c /* * This function is only called after the system -@@ -301,15 +371,36 @@ void default_machine_crash_shutdown(stru +@@ -301,15 +371,36 @@ */ hard_irq_disable(); @@ -37823,11 +37531,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/crash.c /* * Make a note of crashing cpu. Will be used in machine_kexec -Index: linux-2.6.24.7/arch/powerpc/kernel/dma_64.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/dma_64.c -+++ linux-2.6.24.7/arch/powerpc/kernel/dma_64.c -@@ -112,10 +112,16 @@ EXPORT_SYMBOL(dma_iommu_ops); +--- a/arch/powerpc/kernel/dma_64.c ++++ b/arch/powerpc/kernel/dma_64.c +@@ -112,10 +112,16 @@ /* * Generic direct DMA implementation * @@ -37847,7 +37553,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/dma_64.c static void *dma_direct_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, gfp_t flag) -@@ -124,13 +130,12 @@ static void *dma_direct_alloc_coherent(s +@@ -124,13 +130,12 @@ void *ret; int node = dev->archdata.numa_node; @@ -37862,7 +37568,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/dma_64.c return ret; } -@@ -145,7 +150,7 @@ static dma_addr_t dma_direct_map_single( +@@ -145,7 +150,7 @@ size_t size, enum dma_data_direction direction) { @@ -37871,7 +37577,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/dma_64.c } static void dma_direct_unmap_single(struct device *dev, dma_addr_t dma_addr, -@@ -161,7 +166,7 @@ static int dma_direct_map_sg(struct devi +@@ -161,7 +166,7 @@ int i; for_each_sg(sgl, sg, nents, i) { @@ -37880,11 +37586,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/dma_64.c sg->dma_length = sg->length; } -Index: linux-2.6.24.7/arch/powerpc/kernel/head_44x.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/head_44x.S -+++ linux-2.6.24.7/arch/powerpc/kernel/head_44x.S -@@ -289,11 +289,8 @@ interrupt_base: +--- a/arch/powerpc/kernel/head_44x.S ++++ b/arch/powerpc/kernel/head_44x.S +@@ -289,11 +289,8 @@ CRITICAL_EXCEPTION(0x0100, CriticalInput, unknown_exception) /* Machine Check Interrupt */ @@ -37897,7 +37601,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_44x.S /* Data Storage Interrupt */ START_EXCEPTION(DataStorage) -@@ -674,6 +671,15 @@ finish_tlb_load: +@@ -674,6 +671,15 @@ */ /* @@ -37913,11 +37617,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_44x.S * extern void giveup_altivec(struct task_struct *prev) * * The 44x core does not have an AltiVec unit. -Index: linux-2.6.24.7/arch/powerpc/kernel/head_booke.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/head_booke.h -+++ linux-2.6.24.7/arch/powerpc/kernel/head_booke.h -@@ -166,7 +166,7 @@ label: +--- a/arch/powerpc/kernel/head_booke.h ++++ b/arch/powerpc/kernel/head_booke.h +@@ -166,7 +166,7 @@ mfspr r5,SPRN_ESR; \ stw r5,_ESR(r11); \ addi r3,r1,STACK_FRAME_OVERHEAD; \ @@ -37926,11 +37628,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_booke.h NOCOPY, mcheck_transfer_to_handler, \ ret_from_mcheck_exc) -Index: linux-2.6.24.7/arch/powerpc/kernel/head_fsl_booke.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/head_fsl_booke.S -+++ linux-2.6.24.7/arch/powerpc/kernel/head_fsl_booke.S -@@ -73,8 +73,8 @@ _ENTRY(_start); +--- a/arch/powerpc/kernel/head_fsl_booke.S ++++ b/arch/powerpc/kernel/head_fsl_booke.S +@@ -73,8 +73,8 @@ /* We try to not make any assumptions about how the boot loader * setup or used the TLBs. We invalidate all mappings from the * boot loader and load a single entry in TLB1[0] to map the @@ -37941,7 +37641,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_fsl_booke.S * * Requirement on bootloader: * - The page we're executing in needs to reside in TLB1 and -@@ -167,7 +167,7 @@ skpinv: addi r6,r6,1 /* Increment */ +@@ -167,7 +167,7 @@ mtspr SPRN_MAS0,r7 tlbre @@ -37950,7 +37650,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_fsl_booke.S lis r7,0x1000 /* Set MAS0(TLBSEL) = 1 */ rlwimi r7,r5,16,4,15 /* Setup MAS0 = TLBSEL | ESEL(r5) */ mtspr SPRN_MAS0,r7 -@@ -177,9 +177,12 @@ skpinv: addi r6,r6,1 /* Increment */ +@@ -177,9 +177,12 @@ ori r6,r6,(MAS1_TSIZE(BOOKE_PAGESZ_4K))@l mtspr SPRN_MAS1,r6 mfspr r6,SPRN_MAS2 @@ -37964,7 +37664,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_fsl_booke.S tlbwe xori r6,r4,1 -@@ -222,11 +225,11 @@ skpinv: addi r6,r6,1 /* Increment */ +@@ -222,11 +225,11 @@ lis r6,0x1000 /* Set MAS0(TLBSEL) = TLB1(1), ESEL = 0 */ mtspr SPRN_MAS0,r6 lis r6,(MAS1_VALID|MAS1_IPROT)@h @@ -37979,7 +37679,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_fsl_booke.S rlwimi r6,r7,0,20,31 mtspr SPRN_MAS2,r6 li r7,(MAS3_SX|MAS3_SW|MAS3_SR) -@@ -234,6 +237,9 @@ skpinv: addi r6,r6,1 /* Increment */ +@@ -234,6 +237,9 @@ tlbwe /* 7. Jump to KERNELBASE mapping */ @@ -37989,10 +37689,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/head_fsl_booke.S lis r7,MSR_KERNEL@h ori r7,r7,MSR_KERNEL@l bl 1f /* Find our address */ -Index: linux-2.6.24.7/arch/powerpc/kernel/ibmebus.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/ibmebus.c -+++ linux-2.6.24.7/arch/powerpc/kernel/ibmebus.c +--- a/arch/powerpc/kernel/ibmebus.c ++++ b/arch/powerpc/kernel/ibmebus.c @@ -41,6 +41,7 @@ #include <linux/kobject.h> #include <linux/dma-mapping.h> @@ -38001,7 +37699,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/ibmebus.c #include <linux/of_platform.h> #include <asm/ibmebus.h> #include <asm/abs_addr.h> -@@ -52,7 +53,7 @@ static struct device ibmebus_bus_device +@@ -52,7 +53,7 @@ struct bus_type ibmebus_bus_type; /* These devices will automatically be added to the bus during init */ @@ -38010,7 +37708,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/ibmebus.c { .compatible = "IBM,lhca" }, { .compatible = "IBM,lhea" }, {}, -@@ -171,7 +172,7 @@ static int ibmebus_create_devices(const +@@ -171,7 +172,7 @@ root = of_find_node_by_path("/"); @@ -38019,7 +37717,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/ibmebus.c if (!of_match_node(matches, child)) continue; -@@ -197,16 +198,13 @@ int ibmebus_register_driver(struct of_pl +@@ -197,16 +198,13 @@ /* If the driver uses devices that ibmebus doesn't know, add them */ ibmebus_create_devices(drv->match_table); @@ -38038,11 +37736,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/ibmebus.c } EXPORT_SYMBOL(ibmebus_unregister_driver); -Index: linux-2.6.24.7/arch/powerpc/kernel/iommu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/iommu.c -+++ linux-2.6.24.7/arch/powerpc/kernel/iommu.c -@@ -532,16 +532,14 @@ struct iommu_table *iommu_init_table(str +--- a/arch/powerpc/kernel/iommu.c ++++ b/arch/powerpc/kernel/iommu.c +@@ -532,16 +532,14 @@ return tbl; } @@ -38061,7 +37757,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/iommu.c return; } -@@ -550,7 +548,7 @@ void iommu_free_table(struct device_node +@@ -550,7 +548,7 @@ for (i = 0; i < (tbl->it_size/64); i++) { if (tbl->it_map[i] != 0) { printk(KERN_WARNING "%s: Unexpected TCEs for %s\n", @@ -38070,11 +37766,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/iommu.c break; } } -Index: linux-2.6.24.7/arch/powerpc/kernel/isa-bridge.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/isa-bridge.c -+++ linux-2.6.24.7/arch/powerpc/kernel/isa-bridge.c -@@ -108,7 +108,7 @@ static void __devinit pci_process_ISA_OF +--- a/arch/powerpc/kernel/isa-bridge.c ++++ b/arch/powerpc/kernel/isa-bridge.c +@@ -108,7 +108,7 @@ if (size > 0x10000) size = 0x10000; @@ -38083,7 +37777,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/isa-bridge.c "mapping 64k\n"); __ioremap_at(phb_io_base_phys, (void *)ISA_IO_BASE, -@@ -116,7 +116,7 @@ static void __devinit pci_process_ISA_OF +@@ -116,7 +116,7 @@ return; inval_range: @@ -38092,7 +37786,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/isa-bridge.c "mapping 64k\n"); __ioremap_at(phb_io_base_phys, (void *)ISA_IO_BASE, 0x10000, _PAGE_NO_CACHE|_PAGE_GUARDED); -@@ -145,7 +145,7 @@ void __init isa_bridge_find_early(struct +@@ -145,7 +145,7 @@ for_each_node_by_type(np, "isa") { /* Look for our hose being a parent */ for (parent = of_get_parent(np); parent;) { @@ -38101,11 +37795,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/isa-bridge.c of_node_put(parent); break; } -Index: linux-2.6.24.7/arch/powerpc/kernel/legacy_serial.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/legacy_serial.c -+++ linux-2.6.24.7/arch/powerpc/kernel/legacy_serial.c -@@ -307,7 +307,7 @@ void __init find_legacy_serial_ports(voi +--- a/arch/powerpc/kernel/legacy_serial.c ++++ b/arch/powerpc/kernel/legacy_serial.c +@@ -307,7 +307,7 @@ } /* First fill our array with SOC ports */ @@ -38114,7 +37806,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/legacy_serial.c struct device_node *soc = of_get_parent(np); if (soc && !strcmp(soc->type, "soc")) { index = add_legacy_soc_port(np, np); -@@ -318,7 +318,7 @@ void __init find_legacy_serial_ports(voi +@@ -318,7 +318,7 @@ } /* First fill our array with ISA ports */ @@ -38123,7 +37815,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/legacy_serial.c struct device_node *isa = of_get_parent(np); if (isa && !strcmp(isa->name, "isa")) { index = add_legacy_isa_port(np, isa); -@@ -329,7 +329,7 @@ void __init find_legacy_serial_ports(voi +@@ -329,7 +329,7 @@ } /* First fill our array with tsi-bridge ports */ @@ -38132,7 +37824,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/legacy_serial.c struct device_node *tsi = of_get_parent(np); if (tsi && !strcmp(tsi->type, "tsi-bridge")) { index = add_legacy_soc_port(np, np); -@@ -340,7 +340,7 @@ void __init find_legacy_serial_ports(voi +@@ -340,7 +340,7 @@ } /* First fill our array with opb bus ports */ @@ -38141,7 +37833,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/legacy_serial.c struct device_node *opb = of_get_parent(np); if (opb && (!strcmp(opb->type, "opb") || of_device_is_compatible(opb, "ibm,opb"))) { -@@ -474,7 +474,7 @@ static int __init serial_dev_init(void) +@@ -474,7 +474,7 @@ /* * Before we register the platfrom serial devices, we need @@ -38150,10 +37842,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/legacy_serial.c */ DBG("Fixing serial ports interrupts and IO ports ...\n"); -Index: linux-2.6.24.7/arch/powerpc/kernel/lparcfg.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/lparcfg.c -+++ linux-2.6.24.7/arch/powerpc/kernel/lparcfg.c +--- a/arch/powerpc/kernel/lparcfg.c ++++ b/arch/powerpc/kernel/lparcfg.c @@ -41,7 +41,6 @@ /* #define LPARCFG_DEBUG */ @@ -38162,7 +37852,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/lparcfg.c /* * Track sum of all purrs across all processors. This is used to further -@@ -595,13 +594,6 @@ int __init lparcfg_init(void) +@@ -595,13 +594,6 @@ ent = create_proc_entry("ppc64/lparcfg", mode, NULL); if (ent) { ent->proc_fops = &lparcfg_fops; @@ -38176,7 +37866,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/lparcfg.c } else { printk(KERN_ERR "Failed to create ppc64/lparcfg\n"); return -EIO; -@@ -613,10 +605,8 @@ int __init lparcfg_init(void) +@@ -613,10 +605,8 @@ void __exit lparcfg_cleanup(void) { @@ -38188,10 +37878,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/lparcfg.c } module_init(lparcfg_init); -Index: linux-2.6.24.7/arch/powerpc/kernel/misc.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/misc.S -+++ linux-2.6.24.7/arch/powerpc/kernel/misc.S +--- a/arch/powerpc/kernel/misc.S ++++ b/arch/powerpc/kernel/misc.S @@ -8,12 +8,17 @@ * Adapted for iSeries by Mike Corrigan (mikejc@us.ibm.com) * PPC64 updates by Dave Engebretsen (engebret@us.ibm.com) @@ -38210,7 +37898,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/misc.S .text -@@ -43,3 +48,71 @@ _GLOBAL(add_reloc_offset) +@@ -43,3 +48,71 @@ add r3,r3,r5 mtlr r0 blr @@ -38282,11 +37970,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/misc.S + mtlr r0 + mr r3,r4 + blr -Index: linux-2.6.24.7/arch/powerpc/kernel/misc_32.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/misc_32.S -+++ linux-2.6.24.7/arch/powerpc/kernel/misc_32.S -@@ -206,6 +206,45 @@ _GLOBAL(_nmask_and_or_msr) +--- a/arch/powerpc/kernel/misc_32.S ++++ b/arch/powerpc/kernel/misc_32.S +@@ -206,6 +206,45 @@ isync blr /* Done */ @@ -38332,7 +38018,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/misc_32.S /* * Flush MMU TLB -@@ -793,13 +832,6 @@ _GLOBAL(kernel_thread) +@@ -793,13 +832,6 @@ addi r1,r1,16 blr @@ -38346,11 +38032,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/misc_32.S /* * This routine is just here to keep GCC happy - sigh... */ -Index: linux-2.6.24.7/arch/powerpc/kernel/misc_64.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/misc_64.S -+++ linux-2.6.24.7/arch/powerpc/kernel/misc_64.S -@@ -518,13 +518,6 @@ _GLOBAL(giveup_altivec) +--- a/arch/powerpc/kernel/misc_64.S ++++ b/arch/powerpc/kernel/misc_64.S +@@ -518,13 +518,6 @@ #endif /* CONFIG_ALTIVEC */ @@ -38364,10 +38048,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/misc_64.S /* kexec_wait(phys_cpu) * * wait for the flag to change, indicating this kernel is going away but -Index: linux-2.6.24.7/arch/powerpc/kernel/module_32.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/module_32.c -+++ linux-2.6.24.7/arch/powerpc/kernel/module_32.c +--- a/arch/powerpc/kernel/module_32.c ++++ b/arch/powerpc/kernel/module_32.c @@ -24,6 +24,7 @@ #include <linux/kernel.h> #include <linux/cache.h> @@ -38376,7 +38058,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_32.c #include "setup.h" -@@ -54,22 +55,60 @@ void module_free(struct module *mod, voi +@@ -54,22 +55,60 @@ addend) */ static unsigned int count_relocs(const Elf32_Rela *rela, unsigned int num) { @@ -38450,7 +38132,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_32.c } /* Get the potential trampolines size required of the init and -@@ -100,6 +139,16 @@ static unsigned long get_plt_size(const +@@ -100,6 +139,16 @@ DEBUGP("Ptr: %p. Number: %u\n", (void *)hdr + sechdrs[i].sh_offset, sechdrs[i].sh_size / sizeof(Elf32_Rela)); @@ -38467,10 +38149,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_32.c ret += count_relocs((void *)hdr + sechdrs[i].sh_offset, sechdrs[i].sh_size -Index: linux-2.6.24.7/arch/powerpc/kernel/module_64.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/module_64.c -+++ linux-2.6.24.7/arch/powerpc/kernel/module_64.c +--- a/arch/powerpc/kernel/module_64.c ++++ b/arch/powerpc/kernel/module_64.c @@ -24,6 +24,7 @@ #include <asm/module.h> #include <asm/uaccess.h> @@ -38479,7 +38159,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_64.c #include "setup.h" -@@ -81,25 +82,23 @@ static struct ppc64_stub_entry ppc64_stu +@@ -81,25 +82,23 @@ different addend) */ static unsigned int count_relocs(const Elf64_Rela *rela, unsigned int num) { @@ -38518,7 +38198,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_64.c } void *module_alloc(unsigned long size) -@@ -118,6 +117,44 @@ void module_free(struct module *mod, voi +@@ -118,6 +117,44 @@ table entries. */ } @@ -38563,7 +38243,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_64.c /* Get size of potential trampolines required. */ static unsigned long get_stubs_size(const Elf64_Ehdr *hdr, const Elf64_Shdr *sechdrs) -@@ -133,6 +170,16 @@ static unsigned long get_stubs_size(cons +@@ -133,6 +170,16 @@ DEBUGP("Ptr: %p. Number: %lu\n", (void *)sechdrs[i].sh_addr, sechdrs[i].sh_size / sizeof(Elf64_Rela)); @@ -38580,7 +38260,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_64.c relocs += count_relocs((void *)sechdrs[i].sh_addr, sechdrs[i].sh_size / sizeof(Elf64_Rela)); -@@ -343,7 +390,7 @@ int apply_relocate_add(Elf64_Shdr *sechd +@@ -343,7 +390,7 @@ /* Simply set it */ *(u32 *)location = value; break; @@ -38589,7 +38269,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_64.c case R_PPC64_ADDR64: /* Simply set it */ *(unsigned long *)location = value; -@@ -399,7 +446,7 @@ int apply_relocate_add(Elf64_Shdr *sechd +@@ -399,7 +446,7 @@ } /* Only replace bits 2 through 26 */ @@ -38598,10 +38278,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/module_64.c = (*(uint32_t *)location & ~0x03fffffc) | (value & 0x03fffffc); break; -Index: linux-2.6.24.7/arch/powerpc/kernel/of_device.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/of_device.c -+++ linux-2.6.24.7/arch/powerpc/kernel/of_device.c +--- a/arch/powerpc/kernel/of_device.c ++++ b/arch/powerpc/kernel/of_device.c @@ -5,10 +5,10 @@ #include <linux/module.h> #include <linux/mod_devicetable.h> @@ -38614,10 +38292,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/of_device.c static void of_device_make_bus_id(struct of_device *dev) { -Index: linux-2.6.24.7/arch/powerpc/kernel/of_platform.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/of_platform.c -+++ linux-2.6.24.7/arch/powerpc/kernel/of_platform.c +--- a/arch/powerpc/kernel/of_platform.c ++++ b/arch/powerpc/kernel/of_platform.c @@ -19,6 +19,7 @@ #include <linux/mod_devicetable.h> #include <linux/slab.h> @@ -38635,7 +38311,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/of_platform.c { .type = "soc", }, { .compatible = "soc", }, { .type = "spider", }, -@@ -64,26 +65,6 @@ static int __init of_bus_driver_init(voi +@@ -64,26 +65,6 @@ postcore_initcall(of_bus_driver_init); @@ -38662,7 +38338,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/of_platform.c struct of_device* of_platform_device_create(struct device_node *np, const char *bus_id, struct device *parent) -@@ -120,15 +101,15 @@ EXPORT_SYMBOL(of_platform_device_create) +@@ -120,15 +101,15 @@ * @matches: match table, NULL to use the default, OF_NO_DEEP_PROBE to * disallow recursive creation of child busses */ @@ -38681,7 +38357,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/of_platform.c pr_debug(" create child: %s\n", child->full_name); dev = of_platform_device_create(child, NULL, parent); if (dev == NULL) -@@ -157,7 +138,7 @@ static int of_platform_bus_create(struct +@@ -157,7 +138,7 @@ */ int of_platform_bus_probe(struct device_node *root, @@ -38690,7 +38366,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/of_platform.c struct device *parent) { struct device_node *child; -@@ -190,7 +171,7 @@ int of_platform_bus_probe(struct device_ +@@ -190,7 +171,7 @@ rc = of_platform_bus_create(root, matches, &dev->dev); goto bail; } @@ -38699,10 +38375,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/of_platform.c if (!of_match_node(matches, child)) continue; -Index: linux-2.6.24.7/arch/powerpc/kernel/pci-common.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/pci-common.c -+++ linux-2.6.24.7/arch/powerpc/kernel/pci-common.c +--- a/arch/powerpc/kernel/pci-common.c ++++ b/arch/powerpc/kernel/pci-common.c @@ -48,32 +48,26 @@ static DEFINE_SPINLOCK(hose_spinlock); @@ -38748,7 +38422,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci-common.c phb->is_dynamic = mem_init_done; #ifdef CONFIG_PPC64 if (dev) { -@@ -126,15 +120,10 @@ int pcibios_vaddr_is_ioport(void __iomem +@@ -126,15 +120,10 @@ */ int pci_domain_nr(struct pci_bus *bus) { @@ -38766,7 +38440,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci-common.c EXPORT_SYMBOL(pci_domain_nr); #ifdef CONFIG_PPC_OF -@@ -153,7 +142,7 @@ struct pci_controller* pci_find_hose_for +@@ -153,7 +142,7 @@ while(node) { struct pci_controller *hose, *tmp; list_for_each_entry_safe(hose, tmp, &hose_list, list_node) @@ -38775,7 +38449,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci-common.c return hose; node = node->parent; } -@@ -201,6 +190,20 @@ int pci_read_irq_line(struct pci_dev *pc +@@ -201,6 +190,20 @@ struct of_irq oirq; unsigned int virq; @@ -38796,7 +38470,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci-common.c DBG("Try to map irq for %s...\n", pci_name(pci_dev)); #ifdef DEBUG -@@ -222,10 +225,11 @@ int pci_read_irq_line(struct pci_dev *pc +@@ -222,10 +225,11 @@ if (pin == 0) return -1; if (pci_read_config_byte(pci_dev, PCI_INTERRUPT_LINE, &line) || @@ -38810,7 +38484,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci-common.c virq = irq_create_mapping(NULL, line); if (virq != NO_IRQ) -@@ -475,3 +479,717 @@ void pci_resource_to_user(const struct p +@@ -475,3 +479,717 @@ *start = rsrc->start - offset; *end = rsrc->end - offset; } @@ -39528,10 +39202,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci-common.c + return 0; +} + -Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/pci_32.c -+++ linux-2.6.24.7/arch/powerpc/kernel/pci_32.c +--- a/arch/powerpc/kernel/pci_32.c ++++ b/arch/powerpc/kernel/pci_32.c @@ -13,6 +13,7 @@ #include <linux/bootmem.h> #include <linux/irq.h> @@ -39560,7 +39232,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c static void fixup_cpc710_pci64(struct pci_dev* dev); #ifdef CONFIG_PPC_OF static u8* pci_to_OF_bus_map; -@@ -53,7 +47,7 @@ static u8* pci_to_OF_bus_map; +@@ -53,7 +47,7 @@ /* By default, we don't re-assign bus numbers. We do this only on * some pmacs */ @@ -39569,7 +39241,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c LIST_HEAD(hose_list); -@@ -100,505 +94,6 @@ fixup_cpc710_pci64(struct pci_dev* dev) +@@ -100,505 +94,6 @@ } DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_CPC710_PCI64, fixup_cpc710_pci64); @@ -40075,7 +39747,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c #ifdef CONFIG_PPC_OF /* * Functions below are used on OpenFirmware machines. -@@ -619,7 +114,7 @@ make_one_node_map(struct device_node* no +@@ -619,7 +114,7 @@ } else pci_to_OF_bus_map[pci_bus] = bus_range[0]; @@ -40084,7 +39756,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c struct pci_dev* dev; const unsigned int *class_code, *reg; -@@ -662,8 +157,8 @@ pcibios_make_OF_bus_map(void) +@@ -662,8 +157,8 @@ /* For each hose, we begin searching bridges */ list_for_each_entry_safe(hose, tmp, &hose_list, list_node) { @@ -40095,7 +39767,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c if (!node) continue; make_one_node_map(node, hose->first_busno); -@@ -688,15 +183,18 @@ pcibios_make_OF_bus_map(void) +@@ -688,15 +183,18 @@ typedef int (*pci_OF_scan_iterator)(struct device_node* node, void* data); static struct device_node* @@ -40117,7 +39789,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c /* For PCI<->PCI bridges or CardBus bridges, we go down * Note: some OFs create a parent node "multifunc-device" as -@@ -708,9 +206,11 @@ scan_OF_pci_childs(struct device_node* n +@@ -708,9 +206,11 @@ (*class_code >> 8) != PCI_CLASS_BRIDGE_CARDBUS)) && strcmp(node->name, "multifunc-device")) continue; @@ -40131,7 +39803,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c } return NULL; } -@@ -718,11 +218,11 @@ scan_OF_pci_childs(struct device_node* n +@@ -718,11 +218,11 @@ static struct device_node *scan_OF_for_pci_dev(struct device_node *parent, unsigned int devfn) { @@ -40145,7 +39817,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c reg = of_get_property(np, "reg", &psize); if (reg == NULL || psize < 4) continue; -@@ -742,7 +242,7 @@ static struct device_node *scan_OF_for_p +@@ -742,7 +242,7 @@ struct pci_controller *hose = pci_bus_to_host(bus); if (hose == NULL) return NULL; @@ -40154,7 +39826,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c } /* not a root bus, we need to get our parent */ -@@ -812,9 +312,9 @@ pci_device_from_OF_node(struct device_no +@@ -812,9 +312,9 @@ return -ENODEV; /* Make sure it's really a PCI device */ hose = pci_find_hose_for_OF_device(node); @@ -40166,7 +39838,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c find_OF_pci_device_filter, (void *)node)) return -ENODEV; reg = of_get_property(node, "reg", NULL); -@@ -843,120 +343,6 @@ pci_device_from_OF_node(struct device_no +@@ -843,120 +343,6 @@ } EXPORT_SYMBOL(pci_device_from_OF_node); @@ -40287,7 +39959,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c /* We create the "pci-OF-bus-map" property now so it appears in the * /proc device tree */ -@@ -986,219 +372,7 @@ void pcibios_make_OF_bus_map(void) +@@ -986,219 +372,7 @@ } #endif /* CONFIG_PPC_OF */ @@ -40508,7 +40180,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c { struct pci_controller *hose, *tmp; struct pci_bus *bus; -@@ -1206,6 +380,9 @@ pcibios_init(void) +@@ -1206,6 +380,9 @@ printk(KERN_INFO "PCI: Probing PCI hardware\n"); @@ -40518,7 +40190,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c /* Scan all of the recorded PCI controllers. */ list_for_each_entry_safe(hose, tmp, &hose_list, list_node) { if (pci_assign_all_buses) -@@ -1213,9 +390,10 @@ pcibios_init(void) +@@ -1213,9 +390,10 @@ hose->last_busno = 0xff; bus = pci_scan_bus_parented(hose->parent, hose->first_busno, hose->ops, hose); @@ -40531,7 +40203,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c if (pci_assign_all_buses || next_busno <= hose->last_busno) next_busno = hose->last_busno + pcibios_assign_bus_offset; } -@@ -1228,18 +406,8 @@ pcibios_init(void) +@@ -1228,18 +406,8 @@ if (pci_assign_all_buses && have_of) pcibios_make_OF_bus_map(); @@ -40552,7 +40224,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c /* Call machine dependent post-init code */ if (ppc_md.pcibios_after_init) -@@ -1250,14 +418,14 @@ pcibios_init(void) +@@ -1250,14 +418,14 @@ subsys_initcall(pcibios_init); @@ -40569,7 +40241,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c io_offset = (unsigned long)hose->io_base_virt - isa_io_base; if (bus->parent == NULL) { /* This is a host bridge - fill in its resources */ -@@ -1272,8 +440,8 @@ void pcibios_fixup_bus(struct pci_bus *b +@@ -1272,8 +440,8 @@ res->end = IO_SPACE_LIMIT; res->flags = IORESOURCE_IO; } @@ -40580,7 +40252,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c for (i = 0; i < 3; ++i) { res = &hose->mem_resources[i]; -@@ -1288,35 +456,6 @@ void pcibios_fixup_bus(struct pci_bus *b +@@ -1288,35 +456,6 @@ } bus->resource[i+1] = res; } @@ -40616,7 +40288,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c } } -@@ -1328,37 +467,6 @@ pcibios_update_irq(struct pci_dev *dev, +@@ -1328,37 +467,6 @@ /* XXX FIXME - update OF device tree node interrupt property */ } @@ -40654,7 +40326,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c static struct pci_controller* pci_bus_to_hose(int bus) { -@@ -1381,17 +489,6 @@ long sys_pciconfig_iobase(long which, un +@@ -1381,17 +489,6 @@ struct pci_controller* hose; long result = -EOPNOTSUPP; @@ -40672,10 +40344,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_32.c hose = pci_bus_to_hose(bus); if (!hose) return -ENODEV; -Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/pci_64.c -+++ linux-2.6.24.7/arch/powerpc/kernel/pci_64.c +--- a/arch/powerpc/kernel/pci_64.c ++++ b/arch/powerpc/kernel/pci_64.c @@ -31,7 +31,6 @@ #include <asm/byteorder.h> #include <asm/machdep.h> @@ -40695,7 +40365,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c /* pci_io_base -- the base address from which io bars are offsets. * This is the lowest I/O base address (so bar values are always positive), -@@ -70,139 +65,31 @@ struct dma_mapping_ops *get_pci_dma_ops( +@@ -70,139 +65,31 @@ } EXPORT_SYMBOL(get_pci_dma_ops); @@ -40847,7 +40517,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c static u32 get_int_prop(struct device_node *np, const char *name, u32 def) { -@@ -270,7 +157,6 @@ static void pci_parse_of_addrs(struct de +@@ -270,7 +157,6 @@ res->end = base + size - 1; res->flags = flags; res->name = pci_name(dev); @@ -40855,7 +40525,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c } } -@@ -339,16 +225,17 @@ struct pci_dev *of_create_pci_dev(struct +@@ -339,16 +225,17 @@ EXPORT_SYMBOL(of_create_pci_dev); void __devinit of_scan_bus(struct device_node *node, @@ -40876,7 +40546,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c DBG(" * %s\n", child->full_name); reg = of_get_property(child, "reg", ®len); if (reg == NULL || reglen < 20) -@@ -359,19 +246,26 @@ void __devinit of_scan_bus(struct device +@@ -359,19 +246,26 @@ dev = of_create_pci_dev(child, bus, devfn); if (!dev) continue; @@ -40909,7 +40579,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c { struct pci_bus *bus; const u32 *busrange, *ranges; -@@ -441,7 +335,6 @@ void __devinit of_scan_pci_bridge(struct +@@ -441,7 +335,6 @@ res->start = of_read_number(&ranges[1], 2); res->end = res->start + size - 1; res->flags = flags; @@ -40917,7 +40587,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c } sprintf(bus->name, "PCI Bus %04x:%02x", pci_domain_nr(bus), bus->number); -@@ -462,12 +355,12 @@ EXPORT_SYMBOL(of_scan_pci_bridge); +@@ -462,12 +355,12 @@ void __devinit scan_phb(struct pci_controller *hose) { struct pci_bus *bus; @@ -40933,7 +40603,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c bus = pci_create_bus(hose->parent, hose->first_busno, hose->ops, node); if (bus == NULL) { printk(KERN_ERR "Failed to create bus for PCI domain %04x\n", -@@ -477,27 +370,27 @@ void __devinit scan_phb(struct pci_contr +@@ -477,27 +370,27 @@ bus->secondary = hose->first_busno; hose->bus = bus; @@ -40978,7 +40648,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c if (node && ppc_md.pci_probe_mode) mode = ppc_md.pci_probe_mode(bus); DBG(" probe mode: %d\n", mode); -@@ -514,15 +407,15 @@ static int __init pcibios_init(void) +@@ -514,15 +407,15 @@ { struct pci_controller *hose, *tmp; @@ -40998,7 +40668,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c /* Scan all of the recorded PCI controllers. */ list_for_each_entry_safe(hose, tmp, &hose_list, list_node) { -@@ -530,19 +423,8 @@ static int __init pcibios_init(void) +@@ -530,19 +423,8 @@ pci_bus_add_devices(hose->bus); } @@ -41020,7 +40690,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c printk(KERN_DEBUG "PCI: Probing PCI hardware done\n"); -@@ -551,141 +433,6 @@ static int __init pcibios_init(void) +@@ -551,141 +433,6 @@ subsys_initcall(pcibios_init); @@ -41162,7 +40832,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c #ifdef CONFIG_HOTPLUG int pcibios_unmap_io_space(struct pci_bus *bus) -@@ -719,8 +466,7 @@ int pcibios_unmap_io_space(struct pci_bu +@@ -719,8 +466,7 @@ if (hose->io_base_alloc == 0) return 0; @@ -41172,7 +40842,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c DBG(" alloc=0x%p\n", hose->io_base_alloc); /* This is a PHB, we fully unmap the IO area */ -@@ -779,8 +525,7 @@ int __devinit pcibios_map_io_space(struc +@@ -779,8 +525,7 @@ hose->io_base_virt = (void __iomem *)(area->addr + hose->io_base_phys - phys_page); @@ -41182,7 +40852,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c DBG(" phys=0x%016lx, virt=0x%p (alloc=0x%p)\n", hose->io_base_phys, hose->io_base_virt, hose->io_base_alloc); DBG(" size=0x%016lx (alloc=0x%016lx)\n", -@@ -803,51 +548,13 @@ int __devinit pcibios_map_io_space(struc +@@ -803,51 +548,13 @@ } EXPORT_SYMBOL_GPL(pcibios_map_io_space); @@ -41235,7 +40905,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c sd->of_node ? sd->of_node->full_name : "<none>"); sd->dma_ops = pci_dma_ops; -@@ -861,7 +568,7 @@ void __devinit pcibios_setup_new_device( +@@ -861,7 +568,7 @@ } EXPORT_SYMBOL(pcibios_setup_new_device); @@ -41244,7 +40914,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c { struct pci_dev *dev; -@@ -870,42 +577,7 @@ static void __devinit do_bus_setup(struc +@@ -870,42 +577,7 @@ list_for_each_entry(dev, &bus->devices, bus_list) pcibios_setup_new_device(dev); @@ -41287,11 +40957,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_64.c unsigned long pci_address_to_pio(phys_addr_t address) { -Index: linux-2.6.24.7/arch/powerpc/kernel/pci_dn.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/pci_dn.c -+++ linux-2.6.24.7/arch/powerpc/kernel/pci_dn.c -@@ -56,11 +56,6 @@ static void * __devinit update_dn_pci_in +--- a/arch/powerpc/kernel/pci_dn.c ++++ b/arch/powerpc/kernel/pci_dn.c +@@ -56,11 +56,6 @@ pdn->busno = (regs[0] >> 16) & 0xff; pdn->devfn = (regs[0] >> 8) & 0xff; } @@ -41303,7 +40971,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_dn.c pdn->pci_ext_config_space = (type && *type == 1); return NULL; -@@ -133,7 +128,7 @@ void *traverse_pci_devices(struct device +@@ -133,7 +128,7 @@ */ void __devinit pci_devs_phb_init_dynamic(struct pci_controller *phb) { @@ -41312,11 +40980,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/pci_dn.c struct pci_dn *pdn; /* PHB nodes themselves must not match */ -Index: linux-2.6.24.7/arch/powerpc/kernel/ppc_ksyms.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/ppc_ksyms.c -+++ linux-2.6.24.7/arch/powerpc/kernel/ppc_ksyms.c -@@ -59,6 +59,7 @@ extern void single_step_exception(struct +--- a/arch/powerpc/kernel/ppc_ksyms.c ++++ b/arch/powerpc/kernel/ppc_ksyms.c +@@ -59,6 +59,7 @@ extern int sys_sigreturn(struct pt_regs *regs); EXPORT_SYMBOL(clear_pages); @@ -41324,11 +40990,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/ppc_ksyms.c EXPORT_SYMBOL(ISA_DMA_THRESHOLD); EXPORT_SYMBOL(DMA_MODE_READ); EXPORT_SYMBOL(DMA_MODE_WRITE); -Index: linux-2.6.24.7/arch/powerpc/kernel/prom.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/prom.c -+++ linux-2.6.24.7/arch/powerpc/kernel/prom.c -@@ -583,6 +583,20 @@ static void __init check_cpu_pa_features +--- a/arch/powerpc/kernel/prom.c ++++ b/arch/powerpc/kernel/prom.c +@@ -583,6 +583,20 @@ ibm_pa_features, ARRAY_SIZE(ibm_pa_features)); } @@ -41349,7 +41013,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom.c static struct feature_property { const char *name; u32 min_value; -@@ -600,6 +614,29 @@ static struct feature_property { +@@ -600,6 +614,29 @@ #endif /* CONFIG_PPC64 */ }; @@ -41379,7 +41043,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom.c static void __init check_cpu_feature_properties(unsigned long node) { unsigned long i; -@@ -697,22 +734,13 @@ static int __init early_init_dt_scan_cpu +@@ -697,22 +734,13 @@ prop = of_get_flat_dt_prop(node, "cpu-version", NULL); if (prop && (*prop & 0xff000000) == 0x0f000000) identify_cpu(0, *prop); @@ -41405,11 +41069,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom.c #ifdef CONFIG_PPC_PSERIES if (nthreads > 1) -Index: linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/prom_parse.c -+++ linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c -@@ -273,7 +273,7 @@ int of_irq_map_pci(struct pci_dev *pdev, +--- a/arch/powerpc/kernel/prom_parse.c ++++ b/arch/powerpc/kernel/prom_parse.c +@@ -273,7 +273,7 @@ #else struct pci_controller *host; host = pci_bus_to_host(pdev->bus); @@ -41418,7 +41080,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c #endif /* No node for host bridge ? give up */ if (ppnode == NULL) -@@ -419,7 +419,7 @@ static struct of_bus *of_match_bus(struc +@@ -419,7 +419,7 @@ static int of_translate_one(struct device_node *parent, struct of_bus *bus, struct of_bus *pbus, u32 *addr, @@ -41427,7 +41089,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c { const u32 *ranges; unsigned int rlen; -@@ -438,7 +438,7 @@ static int of_translate_one(struct devic +@@ -438,7 +438,7 @@ * to translate addresses that aren't supposed to be translated in * the first place. --BenH. */ @@ -41436,7 +41098,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c if (ranges == NULL || rlen == 0) { offset = of_read_number(addr, na); memset(addr, 0, pna * 4); -@@ -481,7 +481,8 @@ static int of_translate_one(struct devic +@@ -481,7 +481,8 @@ * that can be mapped to a cpu physical address). This is not really specified * that way, but this is traditionally the way IBM at least do things */ @@ -41446,7 +41108,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c { struct device_node *parent = NULL; struct of_bus *bus, *pbus; -@@ -540,7 +541,7 @@ u64 of_translate_address(struct device_n +@@ -540,7 +541,7 @@ pbus->name, pna, pns, parent->full_name); /* Apply bus translation */ @@ -41455,7 +41117,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c break; /* Complete the move up one level */ -@@ -556,8 +557,19 @@ u64 of_translate_address(struct device_n +@@ -556,8 +557,19 @@ return result; } @@ -41475,10 +41137,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/prom_parse.c const u32 *of_get_address(struct device_node *dev, int index, u64 *size, unsigned int *flags) { -Index: linux-2.6.24.7/arch/powerpc/kernel/rio.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/kernel/rio.c ++++ b/arch/powerpc/kernel/rio.c @@ -0,0 +1,52 @@ +/* + * RapidIO PPC32 support @@ -41532,11 +41192,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/rio.c +} + +subsys_initcall(ppc_rio_init); -Index: linux-2.6.24.7/arch/powerpc/kernel/rtas_pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/rtas_pci.c -+++ linux-2.6.24.7/arch/powerpc/kernel/rtas_pci.c -@@ -260,7 +260,7 @@ static int phb_set_bus_ranges(struct dev +--- a/arch/powerpc/kernel/rtas_pci.c ++++ b/arch/powerpc/kernel/rtas_pci.c +@@ -260,7 +260,7 @@ int __devinit rtas_setup_phb(struct pci_controller *phb) { @@ -41545,7 +41203,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/rtas_pci.c if (is_python(dev)) python_countermeasures(dev); -@@ -280,10 +280,7 @@ void __init find_and_init_phbs(void) +@@ -280,10 +280,7 @@ struct pci_controller *phb; struct device_node *root = of_find_node_by_path("/"); @@ -41557,7 +41215,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/rtas_pci.c if (node->type == NULL || (strcmp(node->type, "pci") != 0 && strcmp(node->type, "pciex") != 0)) continue; -@@ -311,10 +308,12 @@ void __init find_and_init_phbs(void) +@@ -311,10 +308,12 @@ if (prop) pci_probe_only = *prop; @@ -41572,10 +41230,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/rtas_pci.c } } -Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/setup-common.c -+++ linux-2.6.24.7/arch/powerpc/kernel/setup-common.c +--- a/arch/powerpc/kernel/setup-common.c ++++ b/arch/powerpc/kernel/setup-common.c @@ -33,6 +33,7 @@ #include <linux/serial.h> #include <linux/serial_8250.h> @@ -41592,7 +41248,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c #include "setup.h" -@@ -327,6 +329,31 @@ void __init check_for_initrd(void) +@@ -327,6 +329,31 @@ #ifdef CONFIG_SMP @@ -41624,7 +41280,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c /** * setup_cpu_maps - initialize the following cpu maps: * cpu_possible_map -@@ -350,22 +377,32 @@ void __init smp_setup_cpu_maps(void) +@@ -350,22 +377,32 @@ { struct device_node *dn = NULL; int cpu = 0; @@ -41660,7 +41316,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c cpu_set(cpu, cpu_present_map); set_hard_smp_processor_id(cpu, intserv[j]); cpu_set(cpu, cpu_possible_map); -@@ -373,6 +410,12 @@ void __init smp_setup_cpu_maps(void) +@@ -373,6 +410,12 @@ } } @@ -41673,7 +41329,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c #ifdef CONFIG_PPC64 /* * On pSeries LPAR, we need to know how many cpus -@@ -395,7 +438,7 @@ void __init smp_setup_cpu_maps(void) +@@ -395,7 +438,7 @@ /* Double maxcpus for processors which have SMT capability */ if (cpu_has_feature(CPU_FTR_SMT)) @@ -41682,7 +41338,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c if (maxcpus > NR_CPUS) { printk(KERN_WARNING -@@ -412,9 +455,16 @@ void __init smp_setup_cpu_maps(void) +@@ -412,9 +455,16 @@ out: of_node_put(dn); } @@ -41700,7 +41356,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c } /* -@@ -424,17 +474,19 @@ void __init smp_setup_cpu_maps(void) +@@ -424,17 +474,19 @@ */ void __init smp_setup_cpu_sibling_map(void) { @@ -41728,10 +41384,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/setup-common.c #endif /* CONFIG_PPC64 */ } #endif /* CONFIG_SMP */ -Index: linux-2.6.24.7/arch/powerpc/kernel/signal_32.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/signal_32.c -+++ linux-2.6.24.7/arch/powerpc/kernel/signal_32.c +--- a/arch/powerpc/kernel/signal_32.c ++++ b/arch/powerpc/kernel/signal_32.c @@ -24,13 +24,12 @@ #include <linux/signal.h> #include <linux/errno.h> @@ -41747,11 +41401,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/signal_32.c #include <linux/unistd.h> #include <linux/stddef.h> #include <linux/tty.h> -Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/smp.c -+++ linux-2.6.24.7/arch/powerpc/kernel/smp.c -@@ -76,6 +76,8 @@ void smp_call_function_interrupt(void); +--- a/arch/powerpc/kernel/smp.c ++++ b/arch/powerpc/kernel/smp.c +@@ -76,6 +76,8 @@ int smt_enabled_at_boot = 1; @@ -41760,7 +41412,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c static void (*crash_ipi_function_ptr)(struct pt_regs *) = NULL; #ifdef CONFIG_PPC64 -@@ -181,12 +183,13 @@ static struct call_data_struct { +@@ -181,12 +183,13 @@ * <wait> If true, wait (atomically) until function has completed on other CPUs. * [RETURNS] 0 on success, else a negative status code. Does not return until * remote CPUs are nearly ready to execute <<func>> or are or have executed. @@ -41776,7 +41428,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c { struct call_data_struct data; int ret = -1, num_cpus; -@@ -203,8 +206,6 @@ int smp_call_function_map(void (*func) ( +@@ -203,8 +206,6 @@ if (wait) atomic_set(&data.finished, 0); @@ -41785,7 +41437,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c /* remove 'self' from the map */ if (cpu_isset(smp_processor_id(), map)) cpu_clear(smp_processor_id(), map); -@@ -231,7 +232,8 @@ int smp_call_function_map(void (*func) ( +@@ -231,7 +232,8 @@ printk("smp_call_function on cpu %d: other cpus not " "responding (%d)\n", smp_processor_id(), atomic_read(&data.started)); @@ -41795,7 +41447,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c goto out; } } -@@ -258,14 +260,18 @@ int smp_call_function_map(void (*func) ( +@@ -258,14 +260,18 @@ out: call_data = NULL; HMT_medium(); @@ -41816,7 +41468,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c } int smp_call_function(void (*func) (void *info), void *info, int nonatomic, -@@ -278,8 +284,8 @@ int smp_call_function(void (*func) (void +@@ -278,8 +284,8 @@ } EXPORT_SYMBOL(smp_call_function); @@ -41827,7 +41479,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c { cpumask_t map = CPU_MASK_NONE; int ret = 0; -@@ -291,9 +297,11 @@ int smp_call_function_single(int cpu, vo +@@ -291,9 +297,11 @@ return -EINVAL; cpu_set(cpu, map); @@ -41842,7 +41494,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c local_irq_disable(); func(info); local_irq_enable(); -@@ -305,7 +313,22 @@ EXPORT_SYMBOL(smp_call_function_single); +@@ -305,7 +313,22 @@ void smp_send_stop(void) { @@ -41866,10 +41518,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/smp.c } void smp_call_function_interrupt(void) -Index: linux-2.6.24.7/arch/powerpc/kernel/systbl_chk.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/kernel/systbl_chk.c ++++ b/arch/powerpc/kernel/systbl_chk.c @@ -0,0 +1,58 @@ +/* + * This file, when run through CPP produces a list of syscall numbers @@ -41929,10 +41579,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/systbl_chk.c +START_TABLE +#include <asm/systbl.h> +END_TABLE __NR_syscalls -Index: linux-2.6.24.7/arch/powerpc/kernel/systbl_chk.sh -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/kernel/systbl_chk.sh ++++ b/arch/powerpc/kernel/systbl_chk.sh @@ -0,0 +1,33 @@ +#!/bin/sh +# @@ -41967,11 +41615,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/systbl_chk.sh + }; + num++; + }' "$1" -Index: linux-2.6.24.7/arch/powerpc/kernel/time.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/time.c -+++ linux-2.6.24.7/arch/powerpc/kernel/time.c -@@ -116,9 +116,12 @@ static struct clock_event_device decreme +--- a/arch/powerpc/kernel/time.c ++++ b/arch/powerpc/kernel/time.c +@@ -116,9 +116,12 @@ .features = CLOCK_EVT_FEAT_ONESHOT, }; @@ -41987,7 +41633,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c #ifdef CONFIG_PPC_ISERIES static unsigned long __initdata iSeries_recal_titan; -@@ -216,7 +219,11 @@ static u64 read_purr(void) +@@ -216,7 +219,11 @@ */ static u64 read_spurr(u64 purr) { @@ -42000,7 +41646,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c return mfspr(SPRN_SPURR); return purr; } -@@ -227,29 +234,30 @@ static u64 read_spurr(u64 purr) +@@ -227,29 +234,30 @@ */ void account_system_vtime(struct task_struct *tsk) { @@ -42038,7 +41684,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c get_paca()->spurrdelta = deltascaled; local_irq_restore(flags); } -@@ -326,11 +334,9 @@ void calculate_steal_time(void) +@@ -326,11 +334,9 @@ s64 stolen; struct cpu_purr_data *pme; @@ -42052,7 +41698,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c tb = mftb(); purr = mfspr(SPRN_PURR); stolen = (tb - pme->tb) - (purr - pme->purr); -@@ -353,7 +359,7 @@ static void snapshot_purr(void) +@@ -353,7 +359,7 @@ if (!cpu_has_feature(CPU_FTR_PURR)) return; local_irq_save(flags); @@ -42061,7 +41707,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c pme->tb = mftb(); pme->purr = mfspr(SPRN_PURR); pme->initialized = 1; -@@ -556,8 +562,8 @@ void __init iSeries_time_init_early(void +@@ -556,8 +562,8 @@ void timer_interrupt(struct pt_regs * regs) { struct pt_regs *old_regs; @@ -42072,7 +41718,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c u64 now; /* Ensure a positive value is written to the decrementer, or else -@@ -570,9 +576,9 @@ void timer_interrupt(struct pt_regs * re +@@ -570,9 +576,9 @@ #endif now = get_tb_or_rtc(); @@ -42084,7 +41730,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c if (now <= DECREMENTER_MAX) set_dec((int)now); return; -@@ -623,6 +629,45 @@ void wakeup_decrementer(void) +@@ -623,6 +629,45 @@ set_dec(ticks); } @@ -42130,7 +41776,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c #ifdef CONFIG_SMP void __init smp_space_timers(unsigned int max_cpus) { -@@ -811,7 +856,7 @@ void __init clocksource_init(void) +@@ -811,7 +856,7 @@ static int decrementer_set_next_event(unsigned long evt, struct clock_event_device *dev) { @@ -42139,7 +41785,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c set_dec(evt); return 0; } -@@ -825,7 +870,7 @@ static void decrementer_set_mode(enum cl +@@ -825,7 +870,7 @@ static void register_decrementer_clockevent(int cpu) { @@ -42148,7 +41794,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c *dec = decrementer_clockevent; dec->cpumask = cpumask_of_cpu(cpu); -@@ -836,7 +881,7 @@ static void register_decrementer_clockev +@@ -836,7 +881,7 @@ clockevents_register_device(dec); } @@ -42157,11 +41803,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/time.c { int cpu = smp_processor_id(); -Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/traps.c -+++ linux-2.6.24.7/arch/powerpc/kernel/traps.c -@@ -334,18 +334,25 @@ static inline int check_io_access(struct +--- a/arch/powerpc/kernel/traps.c ++++ b/arch/powerpc/kernel/traps.c +@@ -334,18 +334,25 @@ #define clear_single_step(regs) ((regs)->msr &= ~MSR_SE) #endif @@ -42190,7 +41834,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c printk("Machine check in kernel mode.\n"); if (reason & ESR_IMCP){ printk("Instruction Synchronous Machine Check exception\n"); -@@ -375,7 +382,13 @@ static int generic_machine_check_excepti +@@ -375,7 +382,13 @@ /* Clear MCSR */ mtspr(SPRN_MCSR, mcsr); } @@ -42205,7 +41849,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c printk("Machine check in kernel mode.\n"); printk("Caused by (from MCSR=%lx): ", reason); -@@ -403,7 +416,14 @@ static int generic_machine_check_excepti +@@ -403,7 +416,14 @@ printk("Bus - Instruction Parity Error\n"); if (reason & MCSR_BUS_RPERR) printk("Bus - Read Parity Error\n"); @@ -42221,7 +41865,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c printk("Machine check in kernel mode.\n"); printk("Caused by (from MCSR=%lx): ", reason); -@@ -421,7 +441,14 @@ static int generic_machine_check_excepti +@@ -421,7 +441,14 @@ printk("Bus - Read Bus Error on data load\n"); if (reason & MCSR_BUS_WRERR) printk("Bus - Write Bus Error on buffered store or cache line push\n"); @@ -42237,7 +41881,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c printk("Machine check in kernel mode.\n"); printk("Caused by (from SRR1=%lx): ", reason); switch (reason & 0x601F0000) { -@@ -451,22 +478,26 @@ static int generic_machine_check_excepti +@@ -451,22 +478,26 @@ default: printk("Unknown values in msr\n"); } @@ -42270,7 +41914,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c return; if (user_mode(regs)) { -@@ -476,7 +507,12 @@ void machine_check_exception(struct pt_r +@@ -476,7 +507,12 @@ } #if defined(CONFIG_8xx) && defined(CONFIG_PCI) @@ -42284,7 +41928,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c bad_page_fault(regs, regs->dar, SIGBUS); return; #endif -@@ -622,6 +658,9 @@ static void parse_fpe(struct pt_regs *re +@@ -622,6 +658,9 @@ #define INST_POPCNTB 0x7c0000f4 #define INST_POPCNTB_MASK 0xfc0007fe @@ -42294,7 +41938,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c static int emulate_string_inst(struct pt_regs *regs, u32 instword) { u8 rT = (instword >> 21) & 0x1f; -@@ -707,6 +746,23 @@ static int emulate_popcntb_inst(struct p +@@ -707,6 +746,23 @@ return 0; } @@ -42318,7 +41962,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c static int emulate_instruction(struct pt_regs *regs) { u32 instword; -@@ -749,6 +805,11 @@ static int emulate_instruction(struct pt +@@ -749,6 +805,11 @@ return emulate_popcntb_inst(regs, instword); } @@ -42330,11 +41974,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/traps.c return -EINVAL; } -Index: linux-2.6.24.7/arch/powerpc/kernel/udbg.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/udbg.c -+++ linux-2.6.24.7/arch/powerpc/kernel/udbg.c -@@ -54,9 +54,16 @@ void __init udbg_early_init(void) +--- a/arch/powerpc/kernel/udbg.c ++++ b/arch/powerpc/kernel/udbg.c +@@ -54,9 +54,16 @@ #elif defined(CONFIG_PPC_EARLY_DEBUG_44x) /* PPC44x debug */ udbg_init_44x_as1(); @@ -42351,11 +41993,9 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/udbg.c } /* udbg library, used by xmon et al */ -Index: linux-2.6.24.7/arch/powerpc/kernel/udbg_16550.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/kernel/udbg_16550.c -+++ linux-2.6.24.7/arch/powerpc/kernel/udbg_16550.c -@@ -46,7 +46,7 @@ struct NS16550 { +--- a/arch/powerpc/kernel/udbg_16550.c ++++ b/arch/powerpc/kernel/udbg_16550.c +@@ -46,7 +46,7 @@ #define LCR_DLAB 0x80 @@ -42364,7 +42004,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/udbg_16550.c static void udbg_550_putc(char c) { -@@ -117,7 +117,7 @@ unsigned int udbg_probe_uart_speed(void +@@ -117,7 +117,7 @@ { unsigned int dll, dlm, divisor, prescaler, speed; u8 old_lcr; @@ -42373,7 +42013,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/udbg_16550.c old_lcr = in_8(&port->lcr); -@@ -162,7 +162,7 @@ void udbg_maple_real_putc(char c) +@@ -162,7 +162,7 @@ void __init udbg_init_maple_realmode(void) { @@ -42382,7 +42022,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/udbg_16550.c udbg_putc = udbg_maple_real_putc; udbg_getc = NULL; -@@ -184,7 +184,7 @@ void udbg_pas_real_putc(char c) +@@ -184,7 +184,7 @@ void udbg_init_pas_realmode(void) { @@ -42391,7 +42031,7 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/udbg_16550.c udbg_putc = udbg_pas_real_putc; udbg_getc = NULL; -@@ -219,9 +219,42 @@ static int udbg_44x_as1_getc(void) +@@ -219,9 +219,42 @@ void __init udbg_init_44x_as1(void) { udbg_comport = @@ -42435,10 +42075,8 @@ Index: linux-2.6.24.7/arch/powerpc/kernel/udbg_16550.c + udbg_getc_poll = NULL; +} +#endif /* CONFIG_PPC_EARLY_DEBUG_40x */ -Index: linux-2.6.24.7/arch/powerpc/math-emu/op-4.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/math-emu/op-4.h -+++ linux-2.6.24.7/arch/powerpc/math-emu/op-4.h +--- a/arch/powerpc/math-emu/op-4.h ++++ b/arch/powerpc/math-emu/op-4.h @@ -194,19 +194,39 @@ (X##_f[3] = I3, X##_f[2] = I2, X##_f[1] = I1, X##_f[0] = I0) @@ -42489,11 +42127,9 @@ Index: linux-2.6.24.7/arch/powerpc/math-emu/op-4.h #endif #ifndef __FP_FRAC_ADDI_4 -Index: linux-2.6.24.7/arch/powerpc/mm/fault.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/fault.c -+++ linux-2.6.24.7/arch/powerpc/mm/fault.c -@@ -167,10 +167,8 @@ int __kprobes do_page_fault(struct pt_re +--- a/arch/powerpc/mm/fault.c ++++ b/arch/powerpc/mm/fault.c +@@ -167,10 +167,8 @@ if (notify_page_fault(regs)) return 0; @@ -42506,7 +42142,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/fault.c /* On a kernel SLB miss we can only check for a valid exception entry */ if (!user_mode(regs) && (address >= TASK_SIZE)) -@@ -189,7 +187,7 @@ int __kprobes do_page_fault(struct pt_re +@@ -189,7 +187,7 @@ return SIGSEGV; /* in_atomic() in user mode is really bad, as is current->mm == NULL. */ @@ -42515,11 +42151,9 @@ Index: linux-2.6.24.7/arch/powerpc/mm/fault.c "in_atomic() = %d mm = %p\n", in_atomic(), mm); printk(KERN_EMERG "NIP = %lx MSR = %lx\n", regs->nip, regs->msr); -Index: linux-2.6.24.7/arch/powerpc/mm/fsl_booke_mmu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/fsl_booke_mmu.c -+++ linux-2.6.24.7/arch/powerpc/mm/fsl_booke_mmu.c -@@ -165,15 +165,15 @@ void invalidate_tlbcam_entry(int index) +--- a/arch/powerpc/mm/fsl_booke_mmu.c ++++ b/arch/powerpc/mm/fsl_booke_mmu.c +@@ -165,15 +165,15 @@ void __init cam_mapin_ram(unsigned long cam0, unsigned long cam1, unsigned long cam2) { @@ -42538,11 +42172,9 @@ Index: linux-2.6.24.7/arch/powerpc/mm/fsl_booke_mmu.c } } -Index: linux-2.6.24.7/arch/powerpc/mm/hash_utils_64.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/hash_utils_64.c -+++ linux-2.6.24.7/arch/powerpc/mm/hash_utils_64.c -@@ -96,6 +96,7 @@ int mmu_vmalloc_psize = MMU_PAGE_4K; +--- a/arch/powerpc/mm/hash_utils_64.c ++++ b/arch/powerpc/mm/hash_utils_64.c +@@ -96,6 +96,7 @@ int mmu_io_psize = MMU_PAGE_4K; int mmu_kernel_ssize = MMU_SEGSIZE_256M; int mmu_highuser_ssize = MMU_SEGSIZE_256M; @@ -42550,7 +42182,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hash_utils_64.c #ifdef CONFIG_HUGETLB_PAGE int mmu_huge_psize = MMU_PAGE_16M; unsigned int HPAGE_SHIFT; -@@ -368,18 +369,11 @@ static void __init htab_init_page_sizes( +@@ -368,18 +369,11 @@ * on what is available */ if (mmu_psize_defs[MMU_PAGE_16M].shift) @@ -42571,10 +42203,8 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hash_utils_64.c #endif /* CONFIG_HUGETLB_PAGE */ } -Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/hugetlbpage.c -+++ linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c +--- a/arch/powerpc/mm/hugetlbpage.c ++++ b/arch/powerpc/mm/hugetlbpage.c @@ -24,18 +24,17 @@ #include <asm/cputable.h> #include <asm/spu.h> @@ -42601,7 +42231,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c #define HUGEPD_SIZE (1UL << HUGEPD_SHIFT) #define HUGEPD_MASK (~(HUGEPD_SIZE-1)) -@@ -82,11 +81,35 @@ static int __hugepte_alloc(struct mm_str +@@ -82,11 +81,35 @@ return 0; } @@ -42637,7 +42267,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c BUG_ON(get_slice_psize(mm, addr) != mmu_huge_psize); -@@ -96,14 +119,9 @@ pte_t *huge_pte_offset(struct mm_struct +@@ -96,14 +119,9 @@ if (!pgd_none(*pg)) { pu = pud_offset(pg, addr); if (!pud_none(*pu)) { @@ -42653,7 +42283,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c } } -@@ -114,6 +132,7 @@ pte_t *huge_pte_alloc(struct mm_struct * +@@ -114,6 +132,7 @@ { pgd_t *pg; pud_t *pu; @@ -42661,7 +42291,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c hugepd_t *hpdp = NULL; BUG_ON(get_slice_psize(mm, addr) != mmu_huge_psize); -@@ -124,14 +143,9 @@ pte_t *huge_pte_alloc(struct mm_struct * +@@ -124,14 +143,9 @@ pu = pud_alloc(mm, pg, addr); if (pu) { @@ -42677,7 +42307,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c } if (! hpdp) -@@ -158,7 +172,6 @@ static void free_hugepte_range(struct mm +@@ -158,7 +172,6 @@ PGF_CACHENUM_MASK)); } @@ -42685,7 +42315,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c static void hugetlb_free_pmd_range(struct mmu_gather *tlb, pud_t *pud, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) -@@ -191,7 +204,6 @@ static void hugetlb_free_pmd_range(struc +@@ -191,7 +204,6 @@ pud_clear(pud); pmd_free_tlb(tlb, pmd); } @@ -42693,7 +42323,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c static void hugetlb_free_pud_range(struct mmu_gather *tlb, pgd_t *pgd, unsigned long addr, unsigned long end, -@@ -210,9 +222,15 @@ static void hugetlb_free_pud_range(struc +@@ -210,9 +222,15 @@ continue; hugetlb_free_pmd_range(tlb, pud, addr, next, floor, ceiling); #else @@ -42712,7 +42342,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c #endif } while (pud++, addr = next, addr != end); -@@ -526,6 +544,57 @@ repeat: +@@ -526,6 +544,57 @@ return err; } @@ -42770,11 +42400,9 @@ Index: linux-2.6.24.7/arch/powerpc/mm/hugetlbpage.c static void zero_ctor(struct kmem_cache *cache, void *addr) { memset(addr, 0, kmem_cache_size(cache)); -Index: linux-2.6.24.7/arch/powerpc/mm/lmb.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/lmb.c -+++ linux-2.6.24.7/arch/powerpc/mm/lmb.c -@@ -342,3 +342,16 @@ void __init lmb_enforce_memory_limit(uns +--- a/arch/powerpc/mm/lmb.c ++++ b/arch/powerpc/mm/lmb.c +@@ -342,3 +342,16 @@ } } } @@ -42791,11 +42419,9 @@ Index: linux-2.6.24.7/arch/powerpc/mm/lmb.c + } + return 0; +} -Index: linux-2.6.24.7/arch/powerpc/mm/mem.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/mem.c -+++ linux-2.6.24.7/arch/powerpc/mm/mem.c -@@ -213,15 +213,30 @@ void __init do_init_bootmem(void) +--- a/arch/powerpc/mm/mem.c ++++ b/arch/powerpc/mm/mem.c +@@ -213,15 +213,30 @@ */ #ifdef CONFIG_HIGHMEM free_bootmem_with_active_regions(0, total_lowmem >> PAGE_SHIFT); @@ -42827,7 +42453,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/mem.c /* XXX need to clip this if using highmem? */ sparse_memory_present_with_active_regions(0); -@@ -334,11 +349,13 @@ void __init mem_init(void) +@@ -334,11 +349,13 @@ highmem_mapnr = total_lowmem >> PAGE_SHIFT; for (pfn = highmem_mapnr; pfn < max_mapnr; ++pfn) { struct page *page = pfn_to_page(pfn); @@ -42842,11 +42468,9 @@ Index: linux-2.6.24.7/arch/powerpc/mm/mem.c } totalram_pages += totalhigh_pages; printk(KERN_DEBUG "High memory: %luk\n", -Index: linux-2.6.24.7/arch/powerpc/mm/slb.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/slb.c -+++ linux-2.6.24.7/arch/powerpc/mm/slb.c -@@ -256,6 +256,7 @@ void slb_initialize(void) +--- a/arch/powerpc/mm/slb.c ++++ b/arch/powerpc/mm/slb.c +@@ -256,6 +256,7 @@ static int slb_encoding_inited; extern unsigned int *slb_miss_kernel_load_linear; extern unsigned int *slb_miss_kernel_load_io; @@ -42854,7 +42478,7 @@ Index: linux-2.6.24.7/arch/powerpc/mm/slb.c /* Prepare our SLB miss handler based on our page size */ linear_llp = mmu_psize_defs[mmu_linear_psize].sllp; -@@ -269,6 +270,8 @@ void slb_initialize(void) +@@ -269,6 +270,8 @@ SLB_VSID_KERNEL | linear_llp); patch_slb_encoding(slb_miss_kernel_load_io, SLB_VSID_KERNEL | io_llp); @@ -42863,11 +42487,9 @@ Index: linux-2.6.24.7/arch/powerpc/mm/slb.c DBG("SLB: linear LLP = %04x\n", linear_llp); DBG("SLB: io LLP = %04x\n", io_llp); -Index: linux-2.6.24.7/arch/powerpc/mm/slb_low.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/mm/slb_low.S -+++ linux-2.6.24.7/arch/powerpc/mm/slb_low.S -@@ -227,8 +227,9 @@ END_FW_FTR_SECTION_IFSET(FW_FEATURE_ISER +--- a/arch/powerpc/mm/slb_low.S ++++ b/arch/powerpc/mm/slb_low.S +@@ -227,8 +227,9 @@ 7: ld r10,PACASTABRR(r13) addi r10,r10,1 @@ -42879,11 +42501,9 @@ Index: linux-2.6.24.7/arch/powerpc/mm/slb_low.S blt+ 4f li r10,SLB_NUM_BOLTED -Index: linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/oprofile/op_model_cell.c -+++ linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c -@@ -61,7 +61,7 @@ static unsigned int spu_cycle_reset; +--- a/arch/powerpc/oprofile/op_model_cell.c ++++ b/arch/powerpc/oprofile/op_model_cell.c +@@ -61,7 +61,7 @@ #define NUM_THREADS 2 /* number of physical threads in * physical processor */ @@ -42892,7 +42512,7 @@ Index: linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c #define NUM_INPUT_BUS_WORDS 2 #define MAX_SPU_COUNT 0xFFFFFF /* maximum 24 bit LFSR value */ -@@ -169,7 +169,6 @@ static DEFINE_SPINLOCK(virt_cntr_lock); +@@ -169,7 +169,6 @@ static u32 ctr_enabled; @@ -42900,7 +42520,7 @@ Index: linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c static unsigned char input_bus[NUM_INPUT_BUS_WORDS]; /* -@@ -298,7 +297,7 @@ static void set_pm_event(u32 ctr, int ev +@@ -298,7 +297,7 @@ p->signal_group = event / 100; p->bus_word = bus_word; @@ -42909,7 +42529,7 @@ Index: linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c pm_regs.pm07_cntrl[ctr] = 0; pm_regs.pm07_cntrl[ctr] |= PM07_CTR_COUNT_CYCLES(count_cycles); -@@ -334,16 +333,16 @@ static void set_pm_event(u32 ctr, int ev +@@ -334,16 +333,16 @@ p->bit = signal_bit; } @@ -42929,7 +42549,7 @@ Index: linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c break; } -@@ -450,6 +449,12 @@ static void cell_virtual_cntr(unsigned l +@@ -450,6 +449,12 @@ hdw_thread = 1 ^ hdw_thread; next_hdw_thread = hdw_thread; @@ -42942,7 +42562,7 @@ Index: linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c /* * There are some per thread events. Must do the * set event, for the thread that is being started -@@ -619,9 +624,6 @@ static int cell_reg_setup(struct op_coun +@@ -619,9 +624,6 @@ pmc_cntrl[1][i].vcntr = i; } @@ -42952,10 +42572,8 @@ Index: linux-2.6.24.7/arch/powerpc/oprofile/op_model_cell.c for (i = 0; i < NUM_INPUT_BUS_WORDS; i++) input_bus[i] = 0xff; -Index: linux-2.6.24.7/arch/powerpc/platforms/40x/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/40x/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/40x/Kconfig +--- a/arch/powerpc/platforms/40x/Kconfig ++++ b/arch/powerpc/platforms/40x/Kconfig @@ -14,28 +14,34 @@ # help # This option enables support for the CPCI405 board. @@ -43005,7 +42623,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/Kconfig #config REDWOOD_5 # bool "Redwood-5" # depends on 40x -@@ -65,6 +71,7 @@ config WALNUT +@@ -65,6 +71,7 @@ depends on 40x default y select 405GP @@ -43013,7 +42631,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/Kconfig help This option enables support for the IBM PPC405GP evaluation board. -@@ -105,6 +112,11 @@ config 405GP +@@ -105,6 +112,11 @@ config 405EP bool @@ -43025,20 +42643,16 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/Kconfig config 405GPR bool -Index: linux-2.6.24.7/arch/powerpc/platforms/40x/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/40x/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/40x/Makefile +--- a/arch/powerpc/platforms/40x/Makefile ++++ b/arch/powerpc/platforms/40x/Makefile @@ -1,3 +1,5 @@ obj-$(CONFIG_KILAUEA) += kilauea.o +obj-$(CONFIG_MAKALU) += makalu.o obj-$(CONFIG_WALNUT) += walnut.o obj-$(CONFIG_XILINX_VIRTEX_GENERIC_BOARD) += virtex.o +obj-$(CONFIG_EP405) += ep405.o -Index: linux-2.6.24.7/arch/powerpc/platforms/40x/ep405.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/40x/ep405.c ++++ b/arch/powerpc/platforms/40x/ep405.c @@ -0,0 +1,123 @@ +/* + * Architecture- / platform-specific boot-time initialization code for @@ -43163,10 +42777,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/ep405.c + .get_irq = uic_get_irq, + .calibrate_decr = generic_calibrate_decr, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/40x/kilauea.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/40x/kilauea.c -+++ linux-2.6.24.7/arch/powerpc/platforms/40x/kilauea.c +--- a/arch/powerpc/platforms/40x/kilauea.c ++++ b/arch/powerpc/platforms/40x/kilauea.c @@ -19,8 +19,9 @@ #include <asm/udbg.h> #include <asm/time.h> @@ -43178,7 +42790,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/kilauea.c { .compatible = "ibm,plb4", }, { .compatible = "ibm,opb", }, { .compatible = "ibm,ebc", }, -@@ -29,14 +30,11 @@ static struct of_device_id kilauea_of_bu +@@ -29,14 +30,11 @@ static int __init kilauea_device_probe(void) { @@ -43194,7 +42806,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/kilauea.c static int __init kilauea_probe(void) { -@@ -45,6 +43,8 @@ static int __init kilauea_probe(void) +@@ -45,6 +43,8 @@ if (!of_flat_dt_is_compatible(root, "amcc,kilauea")) return 0; @@ -43203,10 +42815,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/kilauea.c return 1; } -Index: linux-2.6.24.7/arch/powerpc/platforms/40x/makalu.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/40x/makalu.c ++++ b/arch/powerpc/platforms/40x/makalu.c @@ -0,0 +1,58 @@ +/* + * Makalu board specific routines @@ -43266,10 +42876,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/makalu.c + .get_irq = uic_get_irq, + .calibrate_decr = generic_calibrate_decr, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/40x/virtex.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/40x/virtex.c -+++ linux-2.6.24.7/arch/powerpc/platforms/40x/virtex.c +--- a/arch/powerpc/platforms/40x/virtex.c ++++ b/arch/powerpc/platforms/40x/virtex.c @@ -15,16 +15,23 @@ #include <asm/time.h> #include <asm/xilinx_intc.h> @@ -43299,10 +42907,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/virtex.c static int __init virtex_probe(void) { -Index: linux-2.6.24.7/arch/powerpc/platforms/40x/walnut.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/40x/walnut.c -+++ linux-2.6.24.7/arch/powerpc/platforms/40x/walnut.c +--- a/arch/powerpc/platforms/40x/walnut.c ++++ b/arch/powerpc/platforms/40x/walnut.c @@ -24,8 +24,9 @@ #include <asm/udbg.h> #include <asm/time.h> @@ -43314,7 +42920,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/walnut.c { .compatible = "ibm,plb3", }, { .compatible = "ibm,opb", }, { .compatible = "ibm,ebc", }, -@@ -34,15 +35,12 @@ static struct of_device_id walnut_of_bus +@@ -34,15 +35,12 @@ static int __init walnut_device_probe(void) { @@ -43332,7 +42938,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/walnut.c static int __init walnut_probe(void) { -@@ -51,6 +49,8 @@ static int __init walnut_probe(void) +@@ -51,6 +49,8 @@ if (!of_flat_dt_is_compatible(root, "ibm,walnut")) return 0; @@ -43341,11 +42947,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/40x/walnut.c return 1; } -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/44x/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/Kconfig -@@ -3,6 +3,7 @@ config BAMBOO +--- a/arch/powerpc/platforms/44x/Kconfig ++++ b/arch/powerpc/platforms/44x/Kconfig +@@ -3,6 +3,7 @@ depends on 44x default n select 440EP @@ -43353,7 +42957,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Kconfig help This option enables support for the IBM PPC440EP evaluation board. -@@ -11,6 +12,8 @@ config EBONY +@@ -11,6 +12,8 @@ depends on 44x default y select 440GP @@ -43362,7 +42966,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Kconfig help This option enables support for the IBM PPC440GP evaluation board. -@@ -22,6 +25,48 @@ config SEQUOIA +@@ -22,6 +25,48 @@ help This option enables support for the AMCC PPC440EPX evaluation board. @@ -43411,7 +43015,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Kconfig #config LUAN # bool "Luan" # depends on 44x -@@ -44,6 +89,7 @@ config 440EP +@@ -44,6 +89,7 @@ select PPC_FPU select IBM440EP_ERR42 select IBM_NEW_EMAC_ZMII @@ -43419,7 +43023,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Kconfig config 440EPX bool -@@ -52,20 +98,29 @@ config 440EPX +@@ -52,20 +98,29 @@ select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII @@ -43452,10 +43056,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Kconfig # 44x errata/workaround config symbols, selected by the CPU models above config IBM440EP_ERR42 -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/44x/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/Makefile +--- a/arch/powerpc/platforms/44x/Makefile ++++ b/arch/powerpc/platforms/44x/Makefile @@ -1,4 +1,9 @@ obj-$(CONFIG_44x) := misc_44x.o obj-$(CONFIG_EBONY) += ebony.o @@ -43467,10 +43069,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/Makefile +obj-$(CONFIG_RAINIER) += rainier.o +obj-$(CONFIG_WARP) += warp.o +obj-$(CONFIG_WARP) += warp-nand.o -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/bamboo.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/44x/bamboo.c -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/bamboo.c +--- a/arch/powerpc/platforms/44x/bamboo.c ++++ b/arch/powerpc/platforms/44x/bamboo.c @@ -21,9 +21,11 @@ #include <asm/udbg.h> #include <asm/time.h> @@ -43484,7 +43084,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/bamboo.c { .compatible = "ibm,plb4", }, { .compatible = "ibm,opb", }, { .compatible = "ibm,ebc", }, -@@ -32,14 +34,11 @@ static struct of_device_id bamboo_of_bus +@@ -32,14 +34,11 @@ static int __init bamboo_device_probe(void) { @@ -43500,7 +43100,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/bamboo.c static int __init bamboo_probe(void) { -@@ -48,6 +47,8 @@ static int __init bamboo_probe(void) +@@ -48,6 +47,8 @@ if (!of_flat_dt_is_compatible(root, "amcc,bamboo")) return 0; @@ -43509,10 +43109,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/bamboo.c return 1; } -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/ebony.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/44x/ebony.c -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/ebony.c +--- a/arch/powerpc/platforms/44x/ebony.c ++++ b/arch/powerpc/platforms/44x/ebony.c @@ -18,16 +18,18 @@ #include <linux/init.h> @@ -43533,7 +43131,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/ebony.c { .compatible = "ibm,plb4", }, { .compatible = "ibm,opb", }, { .compatible = "ibm,ebc", }, -@@ -36,14 +38,12 @@ static struct of_device_id ebony_of_bus[ +@@ -36,14 +38,12 @@ static int __init ebony_device_probe(void) { @@ -43550,7 +43148,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/ebony.c /* * Called very early, MMU is off, device-tree isn't unflattened -@@ -55,6 +55,8 @@ static int __init ebony_probe(void) +@@ -55,6 +55,8 @@ if (!of_flat_dt_is_compatible(root, "ibm,ebony")) return 0; @@ -43559,10 +43157,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/ebony.c return 1; } -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/katmai.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/katmai.c ++++ b/arch/powerpc/platforms/44x/katmai.c @@ -0,0 +1,63 @@ +/* + * Katmai board specific routines @@ -43627,10 +43223,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/katmai.c + .restart = ppc44x_reset_system, + .calibrate_decr = generic_calibrate_decr, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/rainier.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/rainier.c ++++ b/arch/powerpc/platforms/44x/rainier.c @@ -0,0 +1,62 @@ +/* + * Rainier board specific routines @@ -43694,10 +43288,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/rainier.c + .restart = ppc44x_reset_system, + .calibrate_decr = generic_calibrate_decr, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/sequoia.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/44x/sequoia.c -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/sequoia.c +--- a/arch/powerpc/platforms/44x/sequoia.c ++++ b/arch/powerpc/platforms/44x/sequoia.c @@ -21,9 +21,11 @@ #include <asm/udbg.h> #include <asm/time.h> @@ -43711,7 +43303,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/sequoia.c { .compatible = "ibm,plb4", }, { .compatible = "ibm,opb", }, { .compatible = "ibm,ebc", }, -@@ -32,14 +34,11 @@ static struct of_device_id sequoia_of_bu +@@ -32,14 +34,11 @@ static int __init sequoia_device_probe(void) { @@ -43727,7 +43319,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/sequoia.c static int __init sequoia_probe(void) { -@@ -48,6 +47,8 @@ static int __init sequoia_probe(void) +@@ -48,6 +47,8 @@ if (!of_flat_dt_is_compatible(root, "amcc,sequoia")) return 0; @@ -43736,10 +43328,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/sequoia.c return 1; } -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/taishan.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/taishan.c ++++ b/arch/powerpc/platforms/44x/taishan.c @@ -0,0 +1,73 @@ +/* + * Taishan board specific routines based off ebony.c code @@ -43814,10 +43404,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/taishan.c + .restart = ppc44x_reset_system, + .calibrate_decr = generic_calibrate_decr, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/warp-nand.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/warp-nand.c ++++ b/arch/powerpc/platforms/44x/warp-nand.c @@ -0,0 +1,105 @@ +/* + * PIKA Warp(tm) NAND flash specific routines @@ -43924,10 +43512,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/warp-nand.c +device_initcall(warp_setup_nand_flash); + +#endif -Index: linux-2.6.24.7/arch/powerpc/platforms/44x/warp.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/44x/warp.c ++++ b/arch/powerpc/platforms/44x/warp.c @@ -0,0 +1,153 @@ +/* + * PIKA Warp(tm) board specific routines @@ -44082,11 +43668,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/44x/warp.c +} +device_initcall(pika_dtm_start); +#endif -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/Kconfig -@@ -19,6 +19,28 @@ config PPC_MPC5200_BUGFIX +--- a/arch/powerpc/platforms/52xx/Kconfig ++++ b/arch/powerpc/platforms/52xx/Kconfig +@@ -19,6 +19,28 @@ It is safe to say 'Y' here @@ -44115,7 +43699,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/Kconfig config PPC_EFIKA bool "bPlan Efika 5k2. MPC5200B based computer" depends on PPC_MULTIPLATFORM && PPC32 -@@ -31,8 +53,7 @@ config PPC_EFIKA +@@ -31,8 +53,7 @@ config PPC_LITE5200 bool "Freescale Lite5200 Eval Board" depends on PPC_MULTIPLATFORM && PPC32 @@ -44126,11 +43710,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/Kconfig default n - - -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/Makefile -@@ -6,6 +6,7 @@ obj-y += mpc52xx_pic.o mpc52xx_common +--- a/arch/powerpc/platforms/52xx/Makefile ++++ b/arch/powerpc/platforms/52xx/Makefile +@@ -6,6 +6,7 @@ obj-$(CONFIG_PCI) += mpc52xx_pci.o endif @@ -44138,10 +43720,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/Makefile obj-$(CONFIG_PPC_EFIKA) += efika.o obj-$(CONFIG_PPC_LITE5200) += lite5200.o -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/lite5200.c -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200.c +--- a/arch/powerpc/platforms/52xx/lite5200.c ++++ b/arch/powerpc/platforms/52xx/lite5200.c @@ -42,10 +42,13 @@ static void __init lite5200_fix_clock_config(void) @@ -44157,7 +43737,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200.c if (!cdm) { printk(KERN_ERR "%s() failed; expect abnormal behaviour\n", __FUNCTION__); -@@ -74,10 +77,13 @@ lite5200_fix_clock_config(void) +@@ -74,10 +77,13 @@ static void __init lite5200_fix_port_config(void) { @@ -44172,7 +43752,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200.c if (!gpio) { printk(KERN_ERR "%s() failed. expect abnormal behavior\n", __FUNCTION__); -@@ -131,10 +137,6 @@ static void lite5200_resume_finish(void +@@ -131,10 +137,6 @@ static void __init lite5200_setup_arch(void) { @@ -44183,7 +43763,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200.c if (ppc_md.progress) ppc_md.progress("lite5200_setup_arch()", 0); -@@ -154,13 +156,7 @@ static void __init lite5200_setup_arch(v +@@ -154,13 +156,7 @@ lite5200_pm_init(); #endif @@ -44198,11 +43778,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200.c } /* -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200_pm.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/lite5200_pm.c -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200_pm.c -@@ -42,6 +42,8 @@ static int lite5200_pm_set_target(suspen +--- a/arch/powerpc/platforms/52xx/lite5200_pm.c ++++ b/arch/powerpc/platforms/52xx/lite5200_pm.c +@@ -42,6 +42,8 @@ static int lite5200_pm_prepare(void) { @@ -44211,7 +43789,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200_pm.c /* deep sleep? let mpc52xx code handle that */ if (lite5200_pm_target_state == PM_SUSPEND_STANDBY) return mpc52xx_pm_prepare(); -@@ -50,7 +52,9 @@ static int lite5200_pm_prepare(void) +@@ -50,7 +52,9 @@ return -EINVAL; /* map registers */ @@ -44222,10 +43800,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/lite5200_pm.c if (!mbar) { printk(KERN_ERR "%s:%i Error mapping registers\n", __func__, __LINE__); return -ENOSYS; -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc5200_simple.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc5200_simple.c ++++ b/arch/powerpc/platforms/52xx/mpc5200_simple.c @@ -0,0 +1,85 @@ +/* + * Support for 'mpc5200-simple-platform' compatible boards. @@ -44312,10 +43888,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc5200_simple.c + .restart = mpc52xx_restart, + .calibrate_decr = generic_calibrate_decr, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_common.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/mpc52xx_common.c -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_common.c +--- a/arch/powerpc/platforms/52xx/mpc52xx_common.c ++++ b/arch/powerpc/platforms/52xx/mpc52xx_common.c @@ -26,45 +26,6 @@ */ static volatile struct mpc52xx_gpt *mpc52xx_wdt = NULL; @@ -44362,7 +43936,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_common.c /** * mpc52xx_find_ipb_freq - Find the IPB bus frequency for a device * @node: device node -@@ -101,9 +62,12 @@ EXPORT_SYMBOL(mpc52xx_find_ipb_freq); +@@ -101,9 +62,12 @@ void __init mpc5200_setup_xlb_arbiter(void) { @@ -44376,7 +43950,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_common.c if (!xlb) { printk(KERN_ERR __FILE__ ": " "Error mapping XLB in mpc52xx_setup_cpu(). " -@@ -124,11 +88,21 @@ mpc5200_setup_xlb_arbiter(void) +@@ -124,11 +88,21 @@ iounmap(xlb); } @@ -44399,7 +43973,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_common.c printk(KERN_ERR __FILE__ ": " "Error while probing of_platform bus\n"); } -@@ -146,16 +120,19 @@ mpc52xx_map_wdt(void) +@@ -146,16 +120,19 @@ for_each_compatible_node(np, NULL, "fsl,mpc5200-gpt") { has_wdt = of_get_property(np, "fsl,has-wdt", NULL); if (has_wdt) { @@ -44421,11 +43995,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_common.c } } -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/mpc52xx_pci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pci.c -@@ -363,7 +363,7 @@ mpc52xx_add_bridge(struct device_node *n +--- a/arch/powerpc/platforms/52xx/mpc52xx_pci.c ++++ b/arch/powerpc/platforms/52xx/mpc52xx_pci.c +@@ -363,7 +363,7 @@ pr_debug("Adding MPC52xx PCI host bridge %s\n", node->full_name); @@ -44434,7 +44006,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pci.c if (of_address_to_resource(node, 0, &rsrc) != 0) { printk(KERN_ERR "Can't get %s resources\n", node->full_name); -@@ -406,3 +406,17 @@ mpc52xx_add_bridge(struct device_node *n +@@ -406,3 +406,17 @@ return 0; } @@ -44452,11 +44024,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pci.c + mpc52xx_add_bridge(pci); + of_node_put(pci); +} -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/mpc52xx_pic.c -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pic.c -@@ -364,16 +364,18 @@ void __init mpc52xx_init_irq(void) +--- a/arch/powerpc/platforms/52xx/mpc52xx_pic.c ++++ b/arch/powerpc/platforms/52xx/mpc52xx_pic.c +@@ -364,16 +364,18 @@ { u32 intr_ctrl; struct device_node *picnode; @@ -44478,11 +44048,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pic.c if (!sdma) panic(__FILE__ ": find_and_map failed on 'mpc5200-bestcomm'. " "Check node !"); -Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pm.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/52xx/mpc52xx_pm.c -+++ linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pm.c -@@ -59,10 +59,14 @@ int mpc52xx_set_wakeup_gpio(u8 pin, u8 l +--- a/arch/powerpc/platforms/52xx/mpc52xx_pm.c ++++ b/arch/powerpc/platforms/52xx/mpc52xx_pm.c +@@ -59,10 +59,14 @@ int mpc52xx_pm_prepare(void) { @@ -44499,11 +44067,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/52xx/mpc52xx_pm.c return -ENOSYS; } /* these offsets are from mpc5200 users manual */ -Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/82xx/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/82xx/Kconfig -@@ -26,6 +26,19 @@ config PQ2FADS +--- a/arch/powerpc/platforms/82xx/Kconfig ++++ b/arch/powerpc/platforms/82xx/Kconfig +@@ -26,6 +26,19 @@ help This option enables support for the PQ2FADS board @@ -44523,19 +44089,15 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/Kconfig endchoice config PQ2ADS -Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/82xx/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/82xx/Makefile -@@ -5,3 +5,4 @@ obj-$(CONFIG_MPC8272_ADS) += mpc8272_ads +--- a/arch/powerpc/platforms/82xx/Makefile ++++ b/arch/powerpc/platforms/82xx/Makefile +@@ -5,3 +5,4 @@ obj-$(CONFIG_CPM2) += pq2.o obj-$(CONFIG_PQ2_ADS_PCI_PIC) += pq2ads-pci-pic.o obj-$(CONFIG_PQ2FADS) += pq2fads.o +obj-$(CONFIG_EP8248E) += ep8248e.o -Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/ep8248e.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/82xx/ep8248e.c ++++ b/arch/powerpc/platforms/82xx/ep8248e.c @@ -0,0 +1,324 @@ +/* + * Embedded Planet EP8248E support @@ -44861,11 +44423,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/ep8248e.c + .restart = pq2_restart, + .progress = udbg_progress, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/pq2.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/82xx/pq2.c -+++ linux-2.6.24.7/arch/powerpc/platforms/82xx/pq2.c -@@ -53,13 +53,13 @@ static void __init pq2_pci_add_bridge(st +--- a/arch/powerpc/platforms/82xx/pq2.c ++++ b/arch/powerpc/platforms/82xx/pq2.c +@@ -53,13 +53,13 @@ if (of_address_to_resource(np, 0, &r) || r.end - r.start < 0x10b) goto err; @@ -44881,10 +44441,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/pq2.c setup_indirect_pci(hose, r.start + 0x100, r.start + 0x104, 0); pci_process_bridge_OF_ranges(hose, np, 1); -Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/pq2fads.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/82xx/pq2fads.c -+++ linux-2.6.24.7/arch/powerpc/platforms/82xx/pq2fads.c +--- a/arch/powerpc/platforms/82xx/pq2fads.c ++++ b/arch/powerpc/platforms/82xx/pq2fads.c @@ -15,12 +15,12 @@ #include <linux/init.h> #include <linux/interrupt.h> @@ -44899,11 +44457,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/82xx/pq2fads.c #include <asm/time.h> #include <sysdev/fsl_soc.h> -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/Kconfig -@@ -50,6 +50,11 @@ config MPC836x_MDS +--- a/arch/powerpc/platforms/83xx/Kconfig ++++ b/arch/powerpc/platforms/83xx/Kconfig +@@ -50,6 +50,11 @@ help This option enables support for the MPC836x MDS Processor Board. @@ -44915,7 +44471,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/Kconfig endchoice config PPC_MPC831x -@@ -75,3 +80,9 @@ config PPC_MPC836x +@@ -75,3 +80,9 @@ select PPC_UDBG_16550 select PPC_INDIRECT_PCI default y if MPC836x_MDS @@ -44925,19 +44481,15 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/Kconfig + select PPC_UDBG_16550 + select PPC_INDIRECT_PCI + default y if MPC837x_MDS -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/Makefile -@@ -9,3 +9,4 @@ obj-$(CONFIG_MPC834x_MDS) += mpc834x_mds +--- a/arch/powerpc/platforms/83xx/Makefile ++++ b/arch/powerpc/platforms/83xx/Makefile +@@ -9,3 +9,4 @@ obj-$(CONFIG_MPC834x_ITX) += mpc834x_itx.o obj-$(CONFIG_MPC836x_MDS) += mpc836x_mds.o obj-$(CONFIG_MPC832x_MDS) += mpc832x_mds.o +obj-$(CONFIG_MPC837x_MDS) += mpc837x_mds.o -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc8313_rdb.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/mpc8313_rdb.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc8313_rdb.c +--- a/arch/powerpc/platforms/83xx/mpc8313_rdb.c ++++ b/arch/powerpc/platforms/83xx/mpc8313_rdb.c @@ -14,6 +14,7 @@ */ @@ -44946,7 +44498,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc8313_rdb.c #include <asm/time.h> #include <asm/ipic.h> -@@ -70,11 +71,23 @@ void __init mpc8313_rdb_init_IRQ(void) +@@ -70,11 +71,23 @@ */ static int __init mpc8313_rdb_probe(void) { @@ -44972,10 +44524,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc8313_rdb.c define_machine(mpc8313_rdb) { .name = "MPC8313 RDB", .probe = mpc8313_rdb_probe, -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_mds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/mpc832x_mds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_mds.c +--- a/arch/powerpc/platforms/83xx/mpc832x_mds.c ++++ b/arch/powerpc/platforms/83xx/mpc832x_mds.c @@ -23,9 +23,9 @@ #include <linux/seq_file.h> #include <linux/root_dev.h> @@ -44988,7 +44538,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_mds.c #include <asm/system.h> #include <asm/atomic.h> #include <asm/time.h> -@@ -110,15 +110,12 @@ static struct of_device_id mpc832x_ids[] +@@ -110,15 +110,12 @@ static int __init mpc832x_declare_of_platform_devices(void) { @@ -45005,10 +44555,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_mds.c static void __init mpc832x_sys_init_IRQ(void) { -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_rdb.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/mpc832x_rdb.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_rdb.c +--- a/arch/powerpc/platforms/83xx/mpc832x_rdb.c ++++ b/arch/powerpc/platforms/83xx/mpc832x_rdb.c @@ -19,8 +19,8 @@ #include <linux/spi/spi.h> #include <linux/spi/mmc_spi.h> @@ -45019,7 +44567,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_rdb.c #include <asm/time.h> #include <asm/ipic.h> #include <asm/udbg.h> -@@ -63,9 +63,6 @@ static struct spi_board_info mpc832x_spi +@@ -63,9 +63,6 @@ static int __init mpc832x_spi_init(void) { @@ -45029,7 +44577,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_rdb.c par_io_config_pin(3, 0, 3, 0, 1, 0); /* SPI1 MOSI, I/O */ par_io_config_pin(3, 1, 3, 0, 1, 0); /* SPI1 MISO, I/O */ par_io_config_pin(3, 2, 3, 0, 1, 0); /* SPI1 CLK, I/O */ -@@ -80,7 +77,7 @@ static int __init mpc832x_spi_init(void) +@@ -80,7 +77,7 @@ mpc83xx_spi_deactivate_cs); } @@ -45038,7 +44586,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_rdb.c /* ************************************************************************ * -@@ -123,15 +120,12 @@ static struct of_device_id mpc832x_ids[] +@@ -123,15 +120,12 @@ static int __init mpc832x_declare_of_platform_devices(void) { @@ -45055,10 +44603,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc832x_rdb.c void __init mpc832x_rdb_init_IRQ(void) { -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc834x_itx.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/mpc834x_itx.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc834x_itx.c +--- a/arch/powerpc/platforms/83xx/mpc834x_itx.c ++++ b/arch/powerpc/platforms/83xx/mpc834x_itx.c @@ -23,6 +23,7 @@ #include <linux/delay.h> #include <linux/seq_file.h> @@ -45085,10 +44631,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc834x_itx.c /* ************************************************************************ * * Setup the architecture -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc834x_mds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/mpc834x_mds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc834x_mds.c +--- a/arch/powerpc/platforms/83xx/mpc834x_mds.c ++++ b/arch/powerpc/platforms/83xx/mpc834x_mds.c @@ -23,6 +23,7 @@ #include <linux/delay.h> #include <linux/seq_file.h> @@ -45097,7 +44641,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc834x_mds.c #include <asm/system.h> #include <asm/atomic.h> -@@ -106,14 +107,27 @@ static void __init mpc834x_mds_init_IRQ( +@@ -106,14 +107,27 @@ ipic_set_default_priority(); } @@ -45127,10 +44671,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc834x_mds.c } define_machine(mpc834x_mds) { -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc836x_mds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/mpc836x_mds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc836x_mds.c +--- a/arch/powerpc/platforms/83xx/mpc836x_mds.c ++++ b/arch/powerpc/platforms/83xx/mpc836x_mds.c @@ -29,9 +29,9 @@ #include <linux/seq_file.h> #include <linux/root_dev.h> @@ -45143,7 +44685,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc836x_mds.c #include <asm/system.h> #include <asm/atomic.h> #include <asm/time.h> -@@ -141,15 +141,12 @@ static struct of_device_id mpc836x_ids[] +@@ -141,15 +141,12 @@ static int __init mpc836x_declare_of_platform_devices(void) { @@ -45160,10 +44702,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc836x_mds.c static void __init mpc836x_mds_init_IRQ(void) { -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc837x_mds.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc837x_mds.c ++++ b/arch/powerpc/platforms/83xx/mpc837x_mds.c @@ -0,0 +1,147 @@ +/* + * arch/powerpc/platforms/83xx/mpc837x_mds.c @@ -45312,10 +44852,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc837x_mds.c + .calibrate_decr = generic_calibrate_decr, + .progress = udbg_progress, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc83xx.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/mpc83xx.h -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc83xx.h +--- a/arch/powerpc/platforms/83xx/mpc83xx.h ++++ b/arch/powerpc/platforms/83xx/mpc83xx.h @@ -14,6 +14,7 @@ #define MPC83XX_SCCR_USB_DRCM_11 0x00300000 #define MPC83XX_SCCR_USB_DRCM_01 0x00100000 @@ -45333,11 +44871,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/mpc83xx.h /* system i/o configuration register high */ #define MPC83XX_SICRH_OFFS 0x118 -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/pci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/pci.c -@@ -54,7 +54,7 @@ int __init mpc83xx_add_bridge(struct dev +--- a/arch/powerpc/platforms/83xx/pci.c ++++ b/arch/powerpc/platforms/83xx/pci.c +@@ -54,7 +54,7 @@ " bus 0\n", dev->full_name); } @@ -45346,11 +44882,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/pci.c hose = pcibios_alloc_controller(dev); if (!hose) return -ENOMEM; -Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/usb.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/83xx/usb.c -+++ linux-2.6.24.7/arch/powerpc/platforms/83xx/usb.c -@@ -41,7 +41,7 @@ int mpc834x_usb_cfg(void) +--- a/arch/powerpc/platforms/83xx/usb.c ++++ b/arch/powerpc/platforms/83xx/usb.c +@@ -41,7 +41,7 @@ sicrl = in_be32(immap + MPC83XX_SICRL_OFFS) & ~MPC834X_SICRL_USB_MASK; sicrh = in_be32(immap + MPC83XX_SICRH_OFFS) & ~MPC834X_SICRH_USB_UTMI; @@ -45359,7 +44893,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/usb.c if (np) { sccr |= MPC83XX_SCCR_USB_DRCM_11; /* 1:3 */ -@@ -67,7 +67,7 @@ int mpc834x_usb_cfg(void) +@@ -67,7 +67,7 @@ port0_is_dr = 1; of_node_put(np); } @@ -45368,7 +44902,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/usb.c if (np) { sccr |= MPC83XX_SCCR_USB_MPHCM_11; /* 1:3 */ -@@ -111,7 +111,7 @@ int mpc831x_usb_cfg(void) +@@ -111,7 +111,7 @@ const void *dr_mode; #endif @@ -45377,7 +44911,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/usb.c if (!np) return -ENODEV; prop = of_get_property(np, "phy_type", NULL); -@@ -179,3 +179,43 @@ int mpc831x_usb_cfg(void) +@@ -179,3 +179,43 @@ return ret; } #endif /* CONFIG_PPC_MPC831x */ @@ -45421,11 +44955,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/83xx/usb.c + return ret; +} +#endif /* CONFIG_PPC_MPC837x */ -Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ads.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/85xx/mpc85xx_ads.c -+++ linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ads.c -@@ -52,9 +52,9 @@ static void cpm2_cascade(unsigned int ir +--- a/arch/powerpc/platforms/85xx/mpc85xx_ads.c ++++ b/arch/powerpc/platforms/85xx/mpc85xx_ads.c +@@ -52,9 +52,9 @@ { int cascade_irq; @@ -45437,7 +44969,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ads.c desc->chip->eoi(irq); } -@@ -70,13 +70,12 @@ static void __init mpc85xx_ads_pic_init( +@@ -70,13 +70,12 @@ #endif np = of_find_node_by_type(np, "open-pic"); @@ -45453,7 +44985,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ads.c printk(KERN_ERR "Could not map mpic register space\n"); of_node_put(np); return; -@@ -100,6 +99,7 @@ static void __init mpc85xx_ads_pic_init( +@@ -100,6 +99,7 @@ irq = irq_of_parse_and_map(np, 0); cpm2_pic_init(np); @@ -45461,7 +44993,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ads.c set_irq_chained_handler(irq, cpm2_cascade); #endif } -@@ -112,7 +112,7 @@ struct cpm_pin { +@@ -112,7 +112,7 @@ int port, pin, flags; }; @@ -45470,7 +45002,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ads.c /* SCC1 */ {3, 29, CPM_PIN_OUTPUT | CPM_PIN_PRIMARY}, {3, 30, CPM_PIN_OUTPUT | CPM_PIN_SECONDARY}, -@@ -233,13 +233,11 @@ static struct of_device_id __initdata of +@@ -233,13 +233,11 @@ static int __init declare_of_platform_devices(void) { @@ -45486,11 +45018,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ads.c /* * Called very early, device-tree isn't unflattened -Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_cds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/85xx/mpc85xx_cds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_cds.c -@@ -222,9 +222,6 @@ static int mpc85xx_cds_8259_attach(void) +--- a/arch/powerpc/platforms/85xx/mpc85xx_cds.c ++++ b/arch/powerpc/platforms/85xx/mpc85xx_cds.c +@@ -222,9 +222,6 @@ struct device_node *cascade_node = NULL; int cascade_irq; @@ -45500,7 +45030,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_cds.c /* Initialize the i8259 controller */ for_each_node_by_type(np, "interrupt-controller") if (of_device_is_compatible(np, "chrp,iic")) { -@@ -262,8 +259,7 @@ static int mpc85xx_cds_8259_attach(void) +@@ -262,8 +259,7 @@ return 0; } @@ -45510,11 +45040,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_cds.c #endif /* CONFIG_PPC_I8259 */ -Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/85xx/mpc85xx_ds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ds.c -@@ -123,7 +123,7 @@ static int mpc85xx_exclude_device(struct +--- a/arch/powerpc/platforms/85xx/mpc85xx_ds.c ++++ b/arch/powerpc/platforms/85xx/mpc85xx_ds.c +@@ -123,7 +123,7 @@ struct device_node* node; struct resource rsrc; @@ -45523,10 +45051,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_ds.c of_address_to_resource(node, 0, &rsrc); if ((rsrc.start & 0xfffff) == primary_phb_addr) { -Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_mds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/85xx/mpc85xx_mds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_mds.c +--- a/arch/powerpc/platforms/85xx/mpc85xx_mds.c ++++ b/arch/powerpc/platforms/85xx/mpc85xx_mds.c @@ -30,9 +30,9 @@ #include <linux/initrd.h> #include <linux/module.h> @@ -45539,7 +45065,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_mds.c #include <asm/system.h> #include <asm/atomic.h> #include <asm/time.h> -@@ -144,15 +144,12 @@ static struct of_device_id mpc85xx_ids[] +@@ -144,15 +144,12 @@ static int __init mpc85xx_publish_devices(void) { @@ -45557,10 +45083,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/85xx/mpc85xx_mds.c static void __init mpc85xx_mds_pic_init(void) { -Index: linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc8610_hpcd.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/86xx/mpc8610_hpcd.c -+++ linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc8610_hpcd.c +--- a/arch/powerpc/platforms/86xx/mpc8610_hpcd.c ++++ b/arch/powerpc/platforms/86xx/mpc8610_hpcd.c @@ -34,9 +34,24 @@ #include <asm/mpic.h> @@ -45586,7 +45110,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc8610_hpcd.c void __init mpc86xx_hpcd_init_irq(void) { -@@ -124,7 +139,7 @@ static void __devinit quirk_uli5229(stru +@@ -124,7 +139,7 @@ static void __devinit final_uli5288(struct pci_dev *dev) { struct pci_controller *hose = pci_bus_to_host(dev->bus); @@ -45595,10 +45119,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc8610_hpcd.c struct of_irq oirq; int virq, pin = 2; u32 laddr[3]; -Index: linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c -+++ linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c +--- a/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c ++++ b/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c @@ -18,6 +18,7 @@ #include <linux/kdev_t.h> #include <linux/delay.h> @@ -45607,7 +45129,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c #include <asm/system.h> #include <asm/time.h> -@@ -116,7 +117,7 @@ static int mpc86xx_exclude_device(struct +@@ -116,7 +117,7 @@ struct device_node* node; struct resource rsrc; @@ -45616,7 +45138,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c of_address_to_resource(node, 0, &rsrc); if ((rsrc.start & 0xfffff) == 0x8000) { -@@ -212,6 +213,19 @@ mpc86xx_time_init(void) +@@ -212,6 +213,19 @@ return 0; } @@ -45636,11 +45158,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/86xx/mpc86xx_hpcn.c define_machine(mpc86xx_hpcn) { .name = "MPC86xx HPCN", .probe = mpc86xx_hpcn_probe, -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/8xx/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/Kconfig -@@ -18,6 +18,7 @@ config MPC8XXFADS +--- a/arch/powerpc/platforms/8xx/Kconfig ++++ b/arch/powerpc/platforms/8xx/Kconfig +@@ -18,6 +18,7 @@ config MPC86XADS bool "MPC86XADS" select CPM1 @@ -45648,7 +45168,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/Kconfig help MPC86x Application Development System by Freescale Semiconductor. The MPC86xADS is meant to serve as a platform for s/w and h/w -@@ -43,6 +44,15 @@ config PPC_EP88XC +@@ -43,6 +44,15 @@ This board is also resold by Freescale as the QUICCStart MPC885 Evaluation System and/or the CWH-PPC-885XN-VE. @@ -45664,19 +45184,15 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/Kconfig endchoice menu "Freescale Ethernet driver platform-specific options" -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/8xx/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/Makefile -@@ -5,3 +5,4 @@ obj-$(CONFIG_PPC_8xx) += m8xx_setup.o +--- a/arch/powerpc/platforms/8xx/Makefile ++++ b/arch/powerpc/platforms/8xx/Makefile +@@ -5,3 +5,4 @@ obj-$(CONFIG_MPC885ADS) += mpc885ads_setup.o obj-$(CONFIG_MPC86XADS) += mpc86xads_setup.o obj-$(CONFIG_PPC_EP88XC) += ep88xc.o +obj-$(CONFIG_PPC_ADDER875) += adder875.o -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/adder875.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/adder875.c ++++ b/arch/powerpc/platforms/8xx/adder875.c @@ -0,0 +1,118 @@ +/* Analogue & Micro Adder MPC875 board support + * @@ -45796,11 +45312,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/adder875.c + .get_rtc_time = mpc8xx_get_rtc_time, + .progress = udbg_progress, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/ep88xc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/8xx/ep88xc.c -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/ep88xc.c -@@ -155,12 +155,11 @@ static struct of_device_id __initdata of +--- a/arch/powerpc/platforms/8xx/ep88xc.c ++++ b/arch/powerpc/platforms/8xx/ep88xc.c +@@ -155,12 +155,11 @@ static int __init declare_of_platform_devices(void) { /* Publish the QE devices */ @@ -45815,11 +45329,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/ep88xc.c define_machine(ep88xc) { .name = "Embedded Planet EP88xC", -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/m8xx_setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/8xx/m8xx_setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/m8xx_setup.c -@@ -120,7 +120,7 @@ void __init mpc8xx_calibrate_decr(void) +--- a/arch/powerpc/platforms/8xx/m8xx_setup.c ++++ b/arch/powerpc/platforms/8xx/m8xx_setup.c +@@ -120,7 +120,7 @@ ppc_tb_freq /= 16; ppc_proc_freq = 50000000; if (!get_freq("clock-frequency", &ppc_proc_freq)) @@ -45828,10 +45340,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/m8xx_setup.c "(not found)\n"); printk("Decrementer Frequency = 0x%lx\n", ppc_tb_freq); -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc86xads.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/8xx/mpc86xads.h -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc86xads.h +--- a/arch/powerpc/platforms/8xx/mpc86xads.h ++++ b/arch/powerpc/platforms/8xx/mpc86xads.h @@ -15,27 +15,6 @@ #ifndef __ASM_MPC86XADS_H__ #define __ASM_MPC86XADS_H__ @@ -45889,10 +45399,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc86xads.h - #endif /* __ASM_MPC86XADS_H__ */ #endif /* __KERNEL__ */ -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc86xads_setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/8xx/mpc86xads_setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc86xads_setup.c +--- a/arch/powerpc/platforms/8xx/mpc86xads_setup.c ++++ b/arch/powerpc/platforms/8xx/mpc86xads_setup.c @@ -6,264 +6,133 @@ * * Copyright 2005 MontaVista Software Inc. @@ -46236,17 +45744,15 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc86xads_setup.c define_machine(mpc86x_ads) { .name = "MPC86x ADS", -@@ -275,4 +144,5 @@ define_machine(mpc86x_ads) { +@@ -275,4 +144,5 @@ .calibrate_decr = mpc8xx_calibrate_decr, .set_rtc_time = mpc8xx_set_rtc_time, .get_rtc_time = mpc8xx_get_rtc_time, + .progress = udbg_progress, }; -Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc885ads_setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/8xx/mpc885ads_setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc885ads_setup.c -@@ -264,12 +264,11 @@ static struct of_device_id __initdata of +--- a/arch/powerpc/platforms/8xx/mpc885ads_setup.c ++++ b/arch/powerpc/platforms/8xx/mpc885ads_setup.c +@@ -264,12 +264,11 @@ static int __init declare_of_platform_devices(void) { /* Publish the QE devices */ @@ -46261,11 +45767,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/8xx/mpc885ads_setup.c define_machine(mpc885_ads) { .name = "Freescale MPC885 ADS", -Index: linux-2.6.24.7/arch/powerpc/platforms/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/Kconfig -@@ -22,6 +22,7 @@ config PPC_83xx +--- a/arch/powerpc/platforms/Kconfig ++++ b/arch/powerpc/platforms/Kconfig +@@ -22,6 +22,7 @@ depends on 6xx select FSL_SOC select 83xx @@ -46273,7 +45777,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/Kconfig select WANT_DEVICE_TREE config PPC_86xx -@@ -80,6 +81,10 @@ config XICS +@@ -80,6 +81,10 @@ bool default y @@ -46284,7 +45788,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/Kconfig config MPIC bool default n -@@ -265,6 +270,7 @@ config TAU_AVERAGE +@@ -265,6 +270,7 @@ config QUICC_ENGINE bool select PPC_LIB_RHEAP @@ -46292,7 +45796,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/Kconfig help The QUICC Engine (QE) is a new generation of communications coprocessors on Freescale embedded CPUs (akin to CPM in older chips). -@@ -315,6 +321,12 @@ config FSL_ULI1575 +@@ -315,6 +321,12 @@ config CPM bool @@ -46305,11 +45809,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/Kconfig source "arch/powerpc/sysdev/bestcomm/Kconfig" endmenu -Index: linux-2.6.24.7/arch/powerpc/platforms/Kconfig.cputype -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/Kconfig.cputype -+++ linux-2.6.24.7/arch/powerpc/platforms/Kconfig.cputype -@@ -43,6 +43,7 @@ config 40x +--- a/arch/powerpc/platforms/Kconfig.cputype ++++ b/arch/powerpc/platforms/Kconfig.cputype +@@ -43,6 +43,7 @@ bool "AMCC 40x" select PPC_DCR_NATIVE select WANT_DEVICE_TREE @@ -46317,11 +45819,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/Kconfig.cputype config 44x bool "AMCC 44x" -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/Makefile -@@ -20,7 +20,7 @@ spu-manage-$(CONFIG_PPC_CELL_NATIVE) += +--- a/arch/powerpc/platforms/cell/Makefile ++++ b/arch/powerpc/platforms/cell/Makefile +@@ -20,7 +20,7 @@ obj-$(CONFIG_SPU_BASE) += spu_callbacks.o spu_base.o \ spu_notify.o \ @@ -46330,10 +45830,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/Makefile $(spu-priv1-y) \ $(spu-manage-y) \ spufs/ -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_cpufreq.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/cbe_cpufreq.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_cpufreq.c +--- a/arch/powerpc/platforms/cell/cbe_cpufreq.c ++++ b/arch/powerpc/platforms/cell/cbe_cpufreq.c @@ -21,8 +21,9 @@ */ @@ -46345,10 +45843,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_cpufreq.c #include <asm/prom.h> #include <asm/cell-regs.h> #include "cbe_cpufreq.h" -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_cpufreq_pmi.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/cbe_cpufreq_pmi.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_cpufreq_pmi.c +--- a/arch/powerpc/platforms/cell/cbe_cpufreq_pmi.c ++++ b/arch/powerpc/platforms/cell/cbe_cpufreq_pmi.c @@ -23,7 +23,8 @@ #include <linux/kernel.h> #include <linux/types.h> @@ -46359,10 +45855,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_cpufreq_pmi.c #include <asm/processor.h> #include <asm/prom.h> #include <asm/pmi.h> -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_regs.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/cbe_regs.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_regs.c +--- a/arch/powerpc/platforms/cell/cbe_regs.c ++++ b/arch/powerpc/platforms/cell/cbe_regs.c @@ -9,13 +9,13 @@ #include <linux/percpu.h> #include <linux/types.h> @@ -46379,7 +45873,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_regs.c #include <asm/cell-regs.h> /* -@@ -256,6 +256,7 @@ void __init cbe_regs_init(void) +@@ -256,6 +256,7 @@ printk(KERN_ERR "cbe_regs: More BE chips than supported" "!\n"); cbe_regs_map_count--; @@ -46387,11 +45881,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/cbe_regs.c return; } map->cpu_node = cpu; -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/io-workarounds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/io-workarounds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/io-workarounds.c -@@ -238,7 +238,7 @@ static void __init spider_pci_setup_chip +--- a/arch/powerpc/platforms/cell/io-workarounds.c ++++ b/arch/powerpc/platforms/cell/io-workarounds.c +@@ -238,7 +238,7 @@ static void __init spider_pci_add_one(struct pci_controller *phb) { struct spider_pci_bus *bus = &spider_pci_busses[spider_pci_count]; @@ -46400,7 +45892,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/io-workarounds.c struct resource rsrc; void __iomem *regs; -@@ -309,15 +309,12 @@ static int __init spider_pci_workaround_ +@@ -309,15 +309,12 @@ { struct pci_controller *phb; @@ -46417,16 +45909,14 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/io-workarounds.c const char *model = of_get_property(np, "model", NULL); /* If no model property or name isn't exactly "pci", skip */ -@@ -343,4 +340,4 @@ static int __init spider_pci_workaround_ +@@ -343,4 +340,4 @@ return 0; } -arch_initcall(spider_pci_workaround_init); +machine_arch_initcall(cell, spider_pci_workaround_init); -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/iommu.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c +--- a/arch/powerpc/platforms/cell/iommu.c ++++ b/arch/powerpc/platforms/cell/iommu.c @@ -26,14 +26,15 @@ #include <linux/init.h> #include <linux/interrupt.h> @@ -46444,7 +45934,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c #include <asm/cell-regs.h> #include "interrupt.h" -@@ -309,8 +310,8 @@ static void cell_iommu_setup_hardware(st +@@ -309,8 +310,8 @@ { struct page *page; int ret, i; @@ -46455,7 +45945,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c unsigned int virq; if (cell_iommu_find_ioc(iommu->nid, &xlate_base)) -@@ -327,7 +328,8 @@ static void cell_iommu_setup_hardware(st +@@ -327,7 +328,8 @@ __FUNCTION__, iommu->nid, segments, pages_per_segment); /* set up the segment table */ @@ -46465,7 +45955,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c BUG_ON(!page); iommu->stab = page_address(page); clear_page(iommu->stab); -@@ -489,15 +491,18 @@ static struct cbe_iommu *cell_iommu_for_ +@@ -489,15 +491,18 @@ return NULL; } @@ -46486,7 +45976,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c /* Current implementation uses the first window available in that * node's iommu. We -might- do something smarter later though it may -@@ -653,7 +658,7 @@ static int __init cell_iommu_init_disabl +@@ -653,7 +658,7 @@ /* If we have no Axon, we set up the spider DMA magic offset */ if (of_find_node_by_name(NULL, "axon") == NULL) @@ -46495,7 +45985,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c /* Now we need to check to see where the memory is mapped * in PCI space. We assume that all busses use the same dma -@@ -687,10 +692,13 @@ static int __init cell_iommu_init_disabl +@@ -687,10 +692,13 @@ return -ENODEV; } @@ -46511,7 +46001,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c return 0; } -@@ -699,9 +707,6 @@ static int __init cell_iommu_init(void) +@@ -699,9 +707,6 @@ { struct device_node *np; @@ -46521,7 +46011,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c /* If IOMMU is disabled or we have little enough RAM to not need * to enable it, we setup a direct mapping. * -@@ -744,5 +749,6 @@ static int __init cell_iommu_init(void) +@@ -744,5 +749,6 @@ return 0; } @@ -46529,11 +46019,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/iommu.c +machine_arch_initcall(cell, cell_iommu_init); +machine_arch_initcall(celleb_native, cell_iommu_init); -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/pmu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/pmu.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/pmu.c -@@ -213,7 +213,7 @@ u32 cbe_read_pm(u32 cpu, enum pm_reg_nam +--- a/arch/powerpc/platforms/cell/pmu.c ++++ b/arch/powerpc/platforms/cell/pmu.c +@@ -213,7 +213,7 @@ break; case pm_interval: @@ -46542,7 +46030,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/pmu.c break; case pm_start_stop: -@@ -381,9 +381,6 @@ static int __init cbe_init_pm_irq(void) +@@ -381,9 +381,6 @@ unsigned int irq; int rc, node; @@ -46552,7 +46040,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/pmu.c for_each_node(node) { irq = irq_create_mapping(NULL, IIC_IRQ_IOEX_PMI | (node << IIC_IRQ_NODE_SHIFT)); -@@ -404,7 +401,7 @@ static int __init cbe_init_pm_irq(void) +@@ -404,7 +401,7 @@ return 0; } @@ -46561,10 +46049,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/pmu.c void cbe_sync_irq(int node) { -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/setup.c +--- a/arch/powerpc/platforms/cell/setup.c ++++ b/arch/powerpc/platforms/cell/setup.c @@ -30,6 +30,7 @@ #include <linux/console.h> #include <linux/mutex.h> @@ -46581,7 +46067,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/setup.c #include <asm/cell-regs.h> #include "interrupt.h" -@@ -85,9 +85,6 @@ static int __init cell_publish_devices(v +@@ -85,9 +85,6 @@ { int node; @@ -46591,7 +46077,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/setup.c /* Publish OF platform devices for southbridge IOs */ of_platform_bus_probe(NULL, NULL, NULL); -@@ -101,7 +98,7 @@ static int __init cell_publish_devices(v +@@ -101,7 +98,7 @@ } return 0; } @@ -46600,10 +46086,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/setup.c static void cell_mpic_cascade(unsigned int irq, struct irq_desc *desc) { -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/smp.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/smp.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/smp.c +--- a/arch/powerpc/platforms/cell/smp.c ++++ b/arch/powerpc/platforms/cell/smp.c @@ -42,6 +42,7 @@ #include <asm/firmware.h> #include <asm/system.h> @@ -46612,7 +46096,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/smp.c #include "interrupt.h" #include <asm/udbg.h> -@@ -182,7 +183,7 @@ static int smp_cell_cpu_bootable(unsigne +@@ -182,7 +183,7 @@ */ if (system_state < SYSTEM_RUNNING && cpu_has_feature(CPU_FTR_SMT) && @@ -46621,10 +46105,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/smp.c return 0; return 1; -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spu_base.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c +--- a/arch/powerpc/platforms/cell/spu_base.c ++++ b/arch/powerpc/platforms/cell/spu_base.c @@ -34,6 +34,7 @@ #include <linux/linux_logo.h> #include <asm/spu.h> @@ -46633,7 +46115,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c #include <asm/xmon.h> #include <asm/prom.h> -@@ -47,6 +48,13 @@ struct cbe_spu_info cbe_spu_info[MAX_NUM +@@ -47,6 +48,13 @@ EXPORT_SYMBOL_GPL(cbe_spu_info); /* @@ -46647,7 +46129,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c * Protects cbe_spu_info and spu->number. */ static DEFINE_SPINLOCK(spu_lock); -@@ -66,6 +74,10 @@ static LIST_HEAD(spu_full_list); +@@ -66,6 +74,10 @@ static DEFINE_SPINLOCK(spu_full_list_lock); static DEFINE_MUTEX(spu_full_list_mutex); @@ -46658,7 +46140,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c void spu_invalidate_slbs(struct spu *spu) { struct spu_priv2 __iomem *priv2 = spu->priv2; -@@ -114,40 +126,36 @@ void spu_associate_mm(struct spu *spu, s +@@ -114,40 +126,36 @@ } EXPORT_SYMBOL_GPL(spu_associate_mm); @@ -46714,7 +46196,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c int psize; pr_debug("%s\n", __FUNCTION__); -@@ -159,7 +167,7 @@ static int __spu_trap_data_seg(struct sp +@@ -159,7 +167,7 @@ printk("%s: invalid access during switch!\n", __func__); return 1; } @@ -46723,7 +46205,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c switch(REGION_ID(ea)) { case USER_REGION_ID: -@@ -168,21 +176,21 @@ static int __spu_trap_data_seg(struct sp +@@ -168,21 +176,21 @@ #else psize = mm->context.user_psize; #endif @@ -46751,7 +46233,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c break; default: /* Future: support kernel segments so that drivers -@@ -191,11 +199,9 @@ static int __spu_trap_data_seg(struct sp +@@ -191,11 +199,9 @@ pr_debug("invalid region access at %016lx\n", ea); return 1; } @@ -46765,7 +46247,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c spu->slb_replace++; if (spu->slb_replace >= 8) -@@ -225,13 +231,83 @@ static int __spu_trap_data_map(struct sp +@@ -225,13 +231,83 @@ return 1; } @@ -46850,7 +46332,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c static irqreturn_t spu_irq_class_0(int irq, void *data) { -@@ -240,12 +316,13 @@ spu_irq_class_0(int irq, void *data) +@@ -240,12 +316,13 @@ spu = data; @@ -46867,7 +46349,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c spin_unlock(&spu->register_lock); spu->stop_callback(spu); -@@ -255,31 +332,6 @@ spu_irq_class_0(int irq, void *data) +@@ -255,31 +332,6 @@ return IRQ_HANDLED; } @@ -46899,7 +46381,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c static irqreturn_t spu_irq_class_1(int irq, void *data) { -@@ -294,24 +346,23 @@ spu_irq_class_1(int irq, void *data) +@@ -294,24 +346,23 @@ stat = spu_int_stat_get(spu, 1) & mask; dar = spu_mfc_dar_get(spu); dsisr = spu_mfc_dsisr_get(spu); @@ -46929,7 +46411,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c ; return stat ? IRQ_HANDLED : IRQ_NONE; -@@ -323,6 +374,8 @@ spu_irq_class_2(int irq, void *data) +@@ -323,6 +374,8 @@ struct spu *spu; unsigned long stat; unsigned long mask; @@ -46938,7 +46420,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c spu = data; spin_lock(&spu->register_lock); -@@ -330,31 +383,30 @@ spu_irq_class_2(int irq, void *data) +@@ -330,31 +383,30 @@ mask = spu_int_mask_get(spu, 2); /* ignore interrupts we're not waiting for */ stat &= mask; @@ -46980,7 +46462,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c spu->wbox_callback(spu); spu->stats.class2_intr++; -@@ -479,13 +531,27 @@ EXPORT_SYMBOL_GPL(spu_add_sysdev_attr); +@@ -479,13 +531,27 @@ int spu_add_sysdev_attr_group(struct attribute_group *attrs) { struct spu *spu; @@ -47011,10 +46493,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_base.c } EXPORT_SYMBOL_GPL(spu_add_sysdev_attr_group); -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_fault.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spu_fault.c ++++ b/arch/powerpc/platforms/cell/spu_fault.c @@ -0,0 +1,98 @@ +/* + * SPU mm fault handler @@ -47114,10 +46594,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_fault.c + return -EFAULT; +} +EXPORT_SYMBOL_GPL(spu_handle_mm_fault); -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spu_manage.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c +--- a/arch/powerpc/platforms/cell/spu_manage.c ++++ b/arch/powerpc/platforms/cell/spu_manage.c @@ -35,6 +35,7 @@ #include <asm/firmware.h> #include <asm/prom.h> @@ -47126,7 +46604,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c #include "interrupt.h" struct device_node *spu_devnode(struct spu *spu) -@@ -345,7 +346,7 @@ static int __init of_create_spu(struct s +@@ -345,7 +346,7 @@ } ret = spu_map_interrupts_old(spu, spe); if (ret) { @@ -47135,7 +46613,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c spu->name); goto out_unmap; } -@@ -369,6 +370,16 @@ static int of_destroy_spu(struct spu *sp +@@ -369,6 +370,16 @@ return 0; } @@ -47152,7 +46630,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c /* Hardcoded affinity idxs for qs20 */ #define QS20_SPES_PER_BE 8 static int qs20_reg_idxs[QS20_SPES_PER_BE] = { 0, 2, 4, 6, 7, 5, 3, 1 }; -@@ -411,10 +422,15 @@ static void init_affinity_qs20_harcoded( +@@ -411,10 +422,15 @@ static int of_has_vicinity(void) { @@ -47171,7 +46649,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c } static struct spu *devnode_spu(int cbe, struct device_node *dn) -@@ -525,7 +541,7 @@ static int __init init_affinity(void) +@@ -525,7 +541,7 @@ if (of_flat_dt_is_compatible(root, "IBM,CPBW-1.0")) init_affinity_qs20_harcoded(); else @@ -47180,7 +46658,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c } return 0; -@@ -535,5 +551,7 @@ const struct spu_management_ops spu_mana +@@ -535,5 +551,7 @@ .enumerate_spus = of_enumerate_spus, .create_spu = of_create_spu, .destroy_spu = of_destroy_spu, @@ -47188,10 +46666,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spu_manage.c + .disable_spu = disable_spu_by_master_run, .init_affinity = init_affinity, }; -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/Makefile +--- a/arch/powerpc/platforms/cell/spufs/Makefile ++++ b/arch/powerpc/platforms/cell/spufs/Makefile @@ -1,8 +1,8 @@ -obj-y += switch.o fault.o lscsa_alloc.o @@ -47202,11 +46678,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/Makefile # Rules to build switch.o with the help of SPU tool chain SPU_CROSS := spu- -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/backing_ops.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c -@@ -106,16 +106,20 @@ static unsigned int spu_backing_mbox_sta +--- a/arch/powerpc/platforms/cell/spufs/backing_ops.c ++++ b/arch/powerpc/platforms/cell/spufs/backing_ops.c +@@ -106,16 +106,20 @@ if (stat & 0xff0000) ret |= POLLIN | POLLRDNORM; else { @@ -47231,7 +46705,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c } } spin_unlock_irq(&ctx->csa.register_lock); -@@ -139,7 +143,7 @@ static int spu_backing_ibox_read(struct +@@ -139,7 +143,7 @@ ret = 4; } else { /* make sure we get woken up by the interrupt */ @@ -47240,7 +46714,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c ret = 0; } spin_unlock(&ctx->csa.register_lock); -@@ -169,7 +173,8 @@ static int spu_backing_wbox_write(struct +@@ -169,7 +173,8 @@ } else { /* make sure we get woken up by the interrupt when space becomes available */ @@ -47250,7 +46724,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c ret = 0; } spin_unlock(&ctx->csa.register_lock); -@@ -268,6 +273,11 @@ static char *spu_backing_get_ls(struct s +@@ -268,6 +273,11 @@ return ctx->csa.lscsa->ls; } @@ -47262,7 +46736,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c static u32 spu_backing_runcntl_read(struct spu_context *ctx) { return ctx->csa.prob.spu_runcntl_RW; -@@ -285,6 +295,11 @@ static void spu_backing_runcntl_write(st +@@ -285,6 +295,11 @@ spin_unlock(&ctx->csa.register_lock); } @@ -47274,7 +46748,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c static void spu_backing_master_start(struct spu_context *ctx) { struct spu_state *csa = &ctx->csa; -@@ -358,7 +373,7 @@ static int spu_backing_send_mfc_command( +@@ -358,7 +373,7 @@ static void spu_backing_restart_dma(struct spu_context *ctx) { @@ -47283,7 +46757,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c } struct spu_context_ops spu_backing_ops = { -@@ -379,8 +394,10 @@ struct spu_context_ops spu_backing_ops = +@@ -379,8 +394,10 @@ .npc_write = spu_backing_npc_write, .status_read = spu_backing_status_read, .get_ls = spu_backing_get_ls, @@ -47294,11 +46768,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/backing_ops.c .master_start = spu_backing_master_start, .master_stop = spu_backing_master_stop, .set_mfc_query = spu_backing_set_mfc_query, -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/context.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/context.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/context.c -@@ -52,6 +52,7 @@ struct spu_context *alloc_spu_context(st +--- a/arch/powerpc/platforms/cell/spufs/context.c ++++ b/arch/powerpc/platforms/cell/spufs/context.c +@@ -52,6 +52,7 @@ init_waitqueue_head(&ctx->wbox_wq); init_waitqueue_head(&ctx->stop_wq); init_waitqueue_head(&ctx->mfc_wq); @@ -47306,7 +46778,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/context.c ctx->state = SPU_STATE_SAVED; ctx->ops = &spu_backing_ops; ctx->owner = get_task_mm(current); -@@ -105,7 +106,17 @@ int put_spu_context(struct spu_context * +@@ -105,7 +106,17 @@ void spu_forget(struct spu_context *ctx) { struct mm_struct *mm; @@ -47325,7 +46797,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/context.c mm = ctx->owner; ctx->owner = NULL; mmput(mm); -@@ -133,47 +144,23 @@ void spu_unmap_mappings(struct spu_conte +@@ -133,47 +144,23 @@ } /** @@ -47381,11 +46853,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/context.c } /** -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/coredump.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/coredump.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/coredump.c -@@ -148,7 +148,9 @@ int spufs_coredump_extra_notes_size(void +--- a/arch/powerpc/platforms/cell/spufs/coredump.c ++++ b/arch/powerpc/platforms/cell/spufs/coredump.c +@@ -148,7 +148,9 @@ fd = 0; while ((ctx = coredump_next_context(&fd)) != NULL) { @@ -47396,7 +46866,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/coredump.c rc = spufs_ctx_note_size(ctx, fd); spu_release_saved(ctx); if (rc < 0) -@@ -224,7 +226,9 @@ int spufs_coredump_extra_notes_write(str +@@ -224,7 +226,9 @@ fd = 0; while ((ctx = coredump_next_context(&fd)) != NULL) { @@ -47407,10 +46877,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/coredump.c for (j = 0; spufs_coredump_read[j].name != NULL; j++) { rc = spufs_arch_write_note(ctx, j, file, fd, foffset); -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/fault.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/fault.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/fault.c +--- a/arch/powerpc/platforms/cell/spufs/fault.c ++++ b/arch/powerpc/platforms/cell/spufs/fault.c @@ -28,117 +28,71 @@ #include "spufs.h" @@ -47583,7 +47051,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/fault.c /* * bottom half handler for page faults, we can't do this from -@@ -154,7 +108,7 @@ int spufs_handle_class1(struct spu_conte +@@ -154,7 +108,7 @@ u64 ea, dsisr, access; unsigned long flags; unsigned flt = 0; @@ -47592,7 +47060,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/fault.c /* * dar and dsisr get passed from the registers -@@ -165,16 +119,8 @@ int spufs_handle_class1(struct spu_conte +@@ -165,16 +119,8 @@ * in time, we can still expect to get the same fault * the immediately after the context restore. */ @@ -47611,7 +47079,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/fault.c if (!(dsisr & (MFC_DSISR_PTE_NOT_FOUND | MFC_DSISR_ACCESS_DENIED))) return 0; -@@ -201,7 +147,22 @@ int spufs_handle_class1(struct spu_conte +@@ -201,7 +147,22 @@ if (ret) ret = spu_handle_mm_fault(current->mm, ea, dsisr, &flt); @@ -47635,7 +47103,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/fault.c /* * If we handled the fault successfully and are in runnable * state, restart the DMA. -@@ -222,9 +183,9 @@ int spufs_handle_class1(struct spu_conte +@@ -222,9 +183,9 @@ if (ctx->spu) ctx->ops->restart_dma(ctx); } else @@ -47647,10 +47115,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/fault.c return ret; } -EXPORT_SYMBOL_GPL(spufs_handle_class1); -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/file.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c +--- a/arch/powerpc/platforms/cell/spufs/file.c ++++ b/arch/powerpc/platforms/cell/spufs/file.c @@ -40,6 +40,120 @@ #define SPUFS_MMAP_4K (PAGE_SIZE == 0x1000) @@ -47772,7 +47238,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c static int spufs_mem_open(struct inode *inode, struct file *file) -@@ -84,9 +198,12 @@ spufs_mem_read(struct file *file, char _ +@@ -84,9 +198,12 @@ struct spu_context *ctx = file->private_data; ssize_t ret; @@ -47786,7 +47252,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c return ret; } -@@ -106,7 +223,10 @@ spufs_mem_write(struct file *file, const +@@ -106,7 +223,10 @@ if (size > LS_SIZE - pos) size = LS_SIZE - pos; @@ -47798,7 +47264,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c local_store = ctx->ops->get_ls(ctx); ret = copy_from_user(local_store + pos, buffer, size); spu_release(ctx); -@@ -146,7 +266,8 @@ static unsigned long spufs_mem_mmap_nopf +@@ -146,7 +266,8 @@ pr_debug("spufs_mem_mmap_nopfn address=0x%lx -> 0x%lx, offset=0x%lx\n", addr0, address, offset); @@ -47808,7 +47274,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c if (ctx->state == SPU_STATE_SAVED) { vma->vm_page_prot = __pgprot(pgprot_val(vma->vm_page_prot) -@@ -236,23 +357,32 @@ static unsigned long spufs_ps_nopfn(stru +@@ -236,23 +357,32 @@ { struct spu_context *ctx = vma->vm_file->private_data; unsigned long area, offset = address - vma->vm_start; @@ -47849,7 +47315,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c return NOPFN_REFAULT; } -@@ -286,25 +416,32 @@ static int spufs_cntl_mmap(struct file * +@@ -286,25 +416,32 @@ #define spufs_cntl_mmap NULL #endif /* !SPUFS_MMAP_4K */ @@ -47889,7 +47355,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static int spufs_cntl_open(struct inode *inode, struct file *file) -@@ -317,7 +454,7 @@ static int spufs_cntl_open(struct inode +@@ -317,7 +454,7 @@ if (!i->i_openers++) ctx->cntl = inode->i_mapping; mutex_unlock(&ctx->mapping_lock); @@ -47898,7 +47364,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c spufs_cntl_set, "0x%08lx"); } -@@ -327,7 +464,7 @@ spufs_cntl_release(struct inode *inode, +@@ -327,7 +464,7 @@ struct spufs_inode_info *i = SPUFS_I(inode); struct spu_context *ctx = i->i_ctx; @@ -47907,7 +47373,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c mutex_lock(&ctx->mapping_lock); if (!--i->i_openers) -@@ -339,8 +476,8 @@ spufs_cntl_release(struct inode *inode, +@@ -339,8 +476,8 @@ static const struct file_operations spufs_cntl_fops = { .open = spufs_cntl_open, .release = spufs_cntl_release, @@ -47918,7 +47384,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c .mmap = spufs_cntl_mmap, }; -@@ -368,7 +505,9 @@ spufs_regs_read(struct file *file, char +@@ -368,7 +505,9 @@ int ret; struct spu_context *ctx = file->private_data; @@ -47929,7 +47395,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ret = __spufs_regs_read(ctx, buffer, size, pos); spu_release_saved(ctx); return ret; -@@ -387,7 +526,9 @@ spufs_regs_write(struct file *file, cons +@@ -387,7 +526,9 @@ return -EFBIG; *pos += size; @@ -47940,7 +47406,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ret = copy_from_user(lscsa->gprs + *pos - size, buffer, size) ? -EFAULT : size; -@@ -419,7 +560,9 @@ spufs_fpcr_read(struct file *file, char +@@ -419,7 +560,9 @@ int ret; struct spu_context *ctx = file->private_data; @@ -47951,7 +47417,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ret = __spufs_fpcr_read(ctx, buffer, size, pos); spu_release_saved(ctx); return ret; -@@ -436,10 +579,12 @@ spufs_fpcr_write(struct file *file, cons +@@ -436,10 +579,12 @@ size = min_t(ssize_t, sizeof(lscsa->fpcr) - *pos, size); if (size <= 0) return -EFBIG; @@ -47966,7 +47432,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ret = copy_from_user((char *)&lscsa->fpcr + *pos - size, buffer, size) ? -EFAULT : size; -@@ -486,7 +631,10 @@ static ssize_t spufs_mbox_read(struct fi +@@ -486,7 +631,10 @@ udata = (void __user *)buf; @@ -47978,7 +47444,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c for (count = 0; (count + 4) <= len; count += 4, udata++) { int ret; ret = ctx->ops->mbox_read(ctx, &mbox_data); -@@ -522,12 +670,15 @@ static ssize_t spufs_mbox_stat_read(stru +@@ -522,12 +670,15 @@ size_t len, loff_t *pos) { struct spu_context *ctx = file->private_data; @@ -47995,7 +47461,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c mbox_stat = ctx->ops->mbox_stat_read(ctx) & 0xff; -@@ -562,6 +713,9 @@ void spufs_ibox_callback(struct spu *spu +@@ -562,6 +713,9 @@ { struct spu_context *ctx = spu->ctx; @@ -48005,7 +47471,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c wake_up_all(&ctx->ibox_wq); kill_fasync(&ctx->ibox_fasync, SIGIO, POLLIN); } -@@ -593,7 +747,9 @@ static ssize_t spufs_ibox_read(struct fi +@@ -593,7 +747,9 @@ udata = (void __user *)buf; @@ -48016,7 +47482,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c /* wait only for the first element */ count = 0; -@@ -639,7 +795,11 @@ static unsigned int spufs_ibox_poll(stru +@@ -639,7 +795,11 @@ poll_wait(file, &ctx->ibox_wq, wait); @@ -48029,7 +47495,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c mask = ctx->ops->mbox_stat_poll(ctx, POLLIN | POLLRDNORM); spu_release(ctx); -@@ -657,12 +817,15 @@ static ssize_t spufs_ibox_stat_read(stru +@@ -657,12 +817,15 @@ size_t len, loff_t *pos) { struct spu_context *ctx = file->private_data; @@ -48046,7 +47512,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ibox_stat = (ctx->ops->mbox_stat_read(ctx) >> 16) & 0xff; spu_release(ctx); -@@ -698,6 +861,9 @@ void spufs_wbox_callback(struct spu *spu +@@ -698,6 +861,9 @@ { struct spu_context *ctx = spu->ctx; @@ -48056,7 +47522,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c wake_up_all(&ctx->wbox_wq); kill_fasync(&ctx->wbox_fasync, SIGIO, POLLOUT); } -@@ -731,7 +897,9 @@ static ssize_t spufs_wbox_write(struct f +@@ -731,7 +897,9 @@ if (__get_user(wbox_data, udata)) return -EFAULT; @@ -48067,7 +47533,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c /* * make sure we can at least write one element, by waiting -@@ -772,7 +940,11 @@ static unsigned int spufs_wbox_poll(stru +@@ -772,7 +940,11 @@ poll_wait(file, &ctx->wbox_wq, wait); @@ -48080,7 +47546,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c mask = ctx->ops->mbox_stat_poll(ctx, POLLOUT | POLLWRNORM); spu_release(ctx); -@@ -790,12 +962,15 @@ static ssize_t spufs_wbox_stat_read(stru +@@ -790,12 +962,15 @@ size_t len, loff_t *pos) { struct spu_context *ctx = file->private_data; @@ -48097,7 +47563,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c wbox_stat = (ctx->ops->mbox_stat_read(ctx) >> 8) & 0xff; spu_release(ctx); -@@ -866,7 +1041,9 @@ static ssize_t spufs_signal1_read(struct +@@ -866,7 +1041,9 @@ int ret; struct spu_context *ctx = file->private_data; @@ -48108,7 +47574,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ret = __spufs_signal1_read(ctx, buf, len, pos); spu_release_saved(ctx); -@@ -877,6 +1054,7 @@ static ssize_t spufs_signal1_write(struc +@@ -877,6 +1054,7 @@ size_t len, loff_t *pos) { struct spu_context *ctx; @@ -48116,7 +47582,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c u32 data; ctx = file->private_data; -@@ -887,7 +1065,9 @@ static ssize_t spufs_signal1_write(struc +@@ -887,7 +1065,9 @@ if (copy_from_user(&data, buf, 4)) return -EFAULT; @@ -48127,7 +47593,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ctx->ops->signal1_write(ctx, data); spu_release(ctx); -@@ -997,7 +1177,9 @@ static ssize_t spufs_signal2_read(struct +@@ -997,7 +1177,9 @@ struct spu_context *ctx = file->private_data; int ret; @@ -48138,7 +47604,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ret = __spufs_signal2_read(ctx, buf, len, pos); spu_release_saved(ctx); -@@ -1008,6 +1190,7 @@ static ssize_t spufs_signal2_write(struc +@@ -1008,6 +1190,7 @@ size_t len, loff_t *pos) { struct spu_context *ctx; @@ -48146,7 +47612,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c u32 data; ctx = file->private_data; -@@ -1018,7 +1201,9 @@ static ssize_t spufs_signal2_write(struc +@@ -1018,7 +1201,9 @@ if (copy_from_user(&data, buf, 4)) return -EFAULT; @@ -48157,7 +47623,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ctx->ops->signal2_write(ctx, data); spu_release(ctx); -@@ -1086,33 +1271,42 @@ static const struct file_operations spuf +@@ -1086,33 +1271,42 @@ #define SPU_ATTR_ACQUIRE_SAVED 2 #define DEFINE_SPUFS_ATTRIBUTE(__name, __get, __set, __fmt, __acquire) \ @@ -48211,7 +47677,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static u64 spufs_signal1_type_get(struct spu_context *ctx) -@@ -1123,13 +1317,18 @@ DEFINE_SPUFS_ATTRIBUTE(spufs_signal1_typ +@@ -1123,13 +1317,18 @@ spufs_signal1_type_set, "%llu", SPU_ATTR_ACQUIRE); @@ -48232,7 +47698,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static u64 spufs_signal2_type_get(struct spu_context *ctx) -@@ -1329,6 +1528,9 @@ void spufs_mfc_callback(struct spu *spu) +@@ -1329,6 +1528,9 @@ { struct spu_context *ctx = spu->ctx; @@ -48242,7 +47708,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c wake_up_all(&ctx->mfc_wq); pr_debug("%s %s\n", __FUNCTION__, spu->name); -@@ -1375,12 +1577,17 @@ static ssize_t spufs_mfc_read(struct fil +@@ -1375,12 +1577,17 @@ if (size != 4) goto out; @@ -48261,7 +47727,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ctx->tagwait &= ~status; } else { ret = spufs_wait(ctx->mfc_wq, -@@ -1505,7 +1712,11 @@ static ssize_t spufs_mfc_write(struct fi +@@ -1505,7 +1712,11 @@ if (ret) goto out; @@ -48274,7 +47740,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c if (ret) goto out; -@@ -1539,7 +1750,11 @@ static unsigned int spufs_mfc_poll(struc +@@ -1539,7 +1750,11 @@ poll_wait(file, &ctx->mfc_wq, wait); @@ -48287,7 +47753,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c ctx->ops->set_mfc_query(ctx, ctx->tagwait, 2); free_elements = ctx->ops->get_mfc_free_elements(ctx); tagstatus = ctx->ops->read_mfc_tagstatus(ctx); -@@ -1562,7 +1777,9 @@ static int spufs_mfc_flush(struct file * +@@ -1562,7 +1777,9 @@ struct spu_context *ctx = file->private_data; int ret; @@ -48298,7 +47764,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c #if 0 /* this currently hangs */ ret = spufs_wait(ctx->mfc_wq, -@@ -1605,12 +1822,18 @@ static const struct file_operations spuf +@@ -1605,12 +1822,18 @@ .mmap = spufs_mfc_mmap, }; @@ -48319,7 +47785,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static u64 spufs_npc_get(struct spu_context *ctx) -@@ -1620,13 +1843,19 @@ static u64 spufs_npc_get(struct spu_cont +@@ -1620,13 +1843,19 @@ DEFINE_SPUFS_ATTRIBUTE(spufs_npc_ops, spufs_npc_get, spufs_npc_set, "0x%llx\n", SPU_ATTR_ACQUIRE); @@ -48341,7 +47807,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static u64 spufs_decr_get(struct spu_context *ctx) -@@ -1637,15 +1866,21 @@ static u64 spufs_decr_get(struct spu_con +@@ -1637,15 +1866,21 @@ DEFINE_SPUFS_ATTRIBUTE(spufs_decr_ops, spufs_decr_get, spufs_decr_set, "0x%llx\n", SPU_ATTR_ACQUIRE_SAVED); @@ -48365,7 +47831,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static u64 spufs_decr_status_get(struct spu_context *ctx) -@@ -1659,13 +1894,19 @@ DEFINE_SPUFS_ATTRIBUTE(spufs_decr_status +@@ -1659,13 +1894,19 @@ spufs_decr_status_set, "0x%llx\n", SPU_ATTR_ACQUIRE_SAVED); @@ -48387,7 +47853,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static u64 spufs_event_mask_get(struct spu_context *ctx) -@@ -1690,13 +1931,19 @@ static u64 spufs_event_status_get(struct +@@ -1690,13 +1931,19 @@ DEFINE_SPUFS_ATTRIBUTE(spufs_event_status_ops, spufs_event_status_get, NULL, "0x%llx\n", SPU_ATTR_ACQUIRE_SAVED) @@ -48409,7 +47875,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } static u64 spufs_srr0_get(struct spu_context *ctx) -@@ -1727,10 +1974,12 @@ static u64 spufs_object_id_get(struct sp +@@ -1727,10 +1974,12 @@ return ctx->object_id; } @@ -48423,7 +47889,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c } DEFINE_SPUFS_ATTRIBUTE(spufs_object_id_ops, spufs_object_id_get, -@@ -1777,13 +2026,13 @@ static const struct file_operations spuf +@@ -1777,13 +2026,13 @@ static ssize_t __spufs_mbox_info_read(struct spu_context *ctx, char __user *buf, size_t len, loff_t *pos) { @@ -48442,7 +47908,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c return simple_read_from_buffer(buf, len, pos, &data, sizeof data); } -@@ -1797,7 +2046,9 @@ static ssize_t spufs_mbox_info_read(stru +@@ -1797,7 +2046,9 @@ if (!access_ok(VERIFY_WRITE, buf, len)) return -EFAULT; @@ -48453,7 +47919,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c spin_lock(&ctx->csa.register_lock); ret = __spufs_mbox_info_read(ctx, buf, len, pos); spin_unlock(&ctx->csa.register_lock); -@@ -1815,13 +2066,13 @@ static const struct file_operations spuf +@@ -1815,13 +2066,13 @@ static ssize_t __spufs_ibox_info_read(struct spu_context *ctx, char __user *buf, size_t len, loff_t *pos) { @@ -48472,7 +47938,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c return simple_read_from_buffer(buf, len, pos, &data, sizeof data); } -@@ -1835,7 +2086,9 @@ static ssize_t spufs_ibox_info_read(stru +@@ -1835,7 +2086,9 @@ if (!access_ok(VERIFY_WRITE, buf, len)) return -EFAULT; @@ -48483,7 +47949,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c spin_lock(&ctx->csa.register_lock); ret = __spufs_ibox_info_read(ctx, buf, len, pos); spin_unlock(&ctx->csa.register_lock); -@@ -1876,7 +2129,9 @@ static ssize_t spufs_wbox_info_read(stru +@@ -1876,7 +2129,9 @@ if (!access_ok(VERIFY_WRITE, buf, len)) return -EFAULT; @@ -48494,7 +47960,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c spin_lock(&ctx->csa.register_lock); ret = __spufs_wbox_info_read(ctx, buf, len, pos); spin_unlock(&ctx->csa.register_lock); -@@ -1926,7 +2181,9 @@ static ssize_t spufs_dma_info_read(struc +@@ -1926,7 +2181,9 @@ if (!access_ok(VERIFY_WRITE, buf, len)) return -EFAULT; @@ -48505,7 +47971,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c spin_lock(&ctx->csa.register_lock); ret = __spufs_dma_info_read(ctx, buf, len, pos); spin_unlock(&ctx->csa.register_lock); -@@ -1977,7 +2234,9 @@ static ssize_t spufs_proxydma_info_read( +@@ -1977,7 +2234,9 @@ struct spu_context *ctx = file->private_data; int ret; @@ -48516,7 +47982,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c spin_lock(&ctx->csa.register_lock); ret = __spufs_proxydma_info_read(ctx, buf, len, pos); spin_unlock(&ctx->csa.register_lock); -@@ -2066,8 +2325,12 @@ static unsigned long long spufs_class2_i +@@ -2066,8 +2325,12 @@ static int spufs_show_stat(struct seq_file *s, void *private) { struct spu_context *ctx = s->private; @@ -48530,11 +47996,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/file.c seq_printf(s, "%s %llu %llu %llu %llu " "%llu %llu %llu %llu %llu %llu %llu %llu\n", ctx_state_names[ctx->stats.util_state], -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/hw_ops.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c -@@ -76,16 +76,18 @@ static unsigned int spu_hw_mbox_stat_pol +--- a/arch/powerpc/platforms/cell/spufs/hw_ops.c ++++ b/arch/powerpc/platforms/cell/spufs/hw_ops.c +@@ -76,16 +76,18 @@ if (stat & 0xff0000) ret |= POLLIN | POLLRDNORM; else { @@ -48557,7 +48021,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c } } spin_unlock_irq(&spu->register_lock); -@@ -106,7 +108,7 @@ static int spu_hw_ibox_read(struct spu_c +@@ -106,7 +108,7 @@ ret = 4; } else { /* make sure we get woken up by the interrupt */ @@ -48566,7 +48030,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c ret = 0; } spin_unlock_irq(&spu->register_lock); -@@ -127,7 +129,7 @@ static int spu_hw_wbox_write(struct spu_ +@@ -127,7 +129,7 @@ } else { /* make sure we get woken up by the interrupt when space becomes available */ @@ -48575,7 +48039,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c ret = 0; } spin_unlock_irq(&spu->register_lock); -@@ -206,6 +208,11 @@ static char *spu_hw_get_ls(struct spu_co +@@ -206,6 +208,11 @@ return ctx->spu->local_store; } @@ -48587,7 +48051,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c static u32 spu_hw_runcntl_read(struct spu_context *ctx) { return in_be32(&ctx->spu->problem->spu_runcntl_RW); -@@ -215,11 +222,21 @@ static void spu_hw_runcntl_write(struct +@@ -215,11 +222,21 @@ { spin_lock_irq(&ctx->spu->register_lock); if (val & SPU_RUNCNTL_ISOLATE) @@ -48610,7 +48074,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c static void spu_hw_master_start(struct spu_context *ctx) { struct spu *spu = ctx->spu; -@@ -319,8 +336,10 @@ struct spu_context_ops spu_hw_ops = { +@@ -319,8 +336,10 @@ .npc_write = spu_hw_npc_write, .status_read = spu_hw_status_read, .get_ls = spu_hw_get_ls, @@ -48621,10 +48085,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/hw_ops.c .master_start = spu_hw_master_start, .master_stop = spu_hw_master_stop, .set_mfc_query = spu_hw_set_mfc_query, -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c +--- a/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c ++++ b/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c @@ -28,6 +28,8 @@ #include <asm/spu_csa.h> #include <asm/mmu.h> @@ -48634,7 +48096,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c static int spu_alloc_lscsa_std(struct spu_state *csa) { struct spu_lscsa *lscsa; -@@ -73,7 +75,7 @@ int spu_alloc_lscsa(struct spu_state *cs +@@ -73,7 +75,7 @@ int i, j, n_4k; /* Check availability of 64K pages */ @@ -48643,11 +48105,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c goto fail; csa->use_big_pages = 1; -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/run.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c -@@ -15,24 +15,55 @@ void spufs_stop_callback(struct spu *spu +--- a/arch/powerpc/platforms/cell/spufs/run.c ++++ b/arch/powerpc/platforms/cell/spufs/run.c +@@ -15,24 +15,55 @@ { struct spu_context *ctx = spu->ctx; @@ -48714,7 +48174,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c } static int spu_setup_isolated(struct spu_context *ctx) -@@ -128,34 +159,66 @@ out: +@@ -128,34 +159,66 @@ static int spu_run_init(struct spu_context *ctx, u32 *npc) { @@ -48793,7 +48253,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c return 0; } -@@ -165,6 +228,8 @@ static int spu_run_fini(struct spu_conte +@@ -165,6 +228,8 @@ { int ret = 0; @@ -48802,7 +48262,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c *status = ctx->ops->status_read(ctx); *npc = ctx->ops->npc_read(ctx); -@@ -177,26 +242,6 @@ static int spu_run_fini(struct spu_conte +@@ -177,26 +242,6 @@ return ret; } @@ -48829,7 +48289,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c /* * SPU syscall restarting is tricky because we violate the basic * assumption that the signal handler is running on the interrupted -@@ -247,7 +292,7 @@ static int spu_process_callback(struct s +@@ -247,7 +292,7 @@ u32 ls_pointer, npc; void __iomem *ls; long spu_ret; @@ -48838,7 +48298,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c /* get syscall block from local store */ npc = ctx->ops->npc_read(ctx) & ~3; -@@ -269,9 +314,11 @@ static int spu_process_callback(struct s +@@ -269,9 +314,11 @@ if (spu_ret <= -ERESTARTSYS) { ret = spu_handle_restartsys(ctx, &spu_ret, &npc); } @@ -48851,7 +48311,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c } /* write result, jump over indirect pointer */ -@@ -281,18 +328,6 @@ static int spu_process_callback(struct s +@@ -281,18 +328,6 @@ return ret; } @@ -48870,7 +48330,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c long spufs_run_spu(struct spu_context *ctx, u32 *npc, u32 *event) { int ret; -@@ -302,29 +337,14 @@ long spufs_run_spu(struct spu_context *c +@@ -302,29 +337,14 @@ if (mutex_lock_interruptible(&ctx->run_mutex)) return -ERESTARTSYS; @@ -48906,7 +48366,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c ret = spu_run_init(ctx, npc); if (ret) { -@@ -358,14 +378,12 @@ long spufs_run_spu(struct spu_context *c +@@ -358,14 +378,12 @@ if (ret) break; @@ -48926,7 +48386,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c } while (!ret && !(status & (SPU_STATUS_STOPPED_BY_STOP | SPU_STATUS_STOPPED_BY_HALT | SPU_STATUS_SINGLE_STEP))); -@@ -376,11 +394,10 @@ long spufs_run_spu(struct spu_context *c +@@ -376,11 +394,10 @@ ctx->stats.libassist++; @@ -48939,7 +48399,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c if ((ret == 0) || ((ret == -ERESTARTSYS) && ((status & SPU_STATUS_STOPPED_BY_HALT) || -@@ -401,6 +418,7 @@ out2: +@@ -401,6 +418,7 @@ out: *event = ctx->event_return; @@ -48947,11 +48407,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/run.c mutex_unlock(&ctx->run_mutex); return ret; } -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/sched.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c -@@ -58,6 +58,7 @@ static unsigned long spu_avenrun[3]; +--- a/arch/powerpc/platforms/cell/spufs/sched.c ++++ b/arch/powerpc/platforms/cell/spufs/sched.c +@@ -58,6 +58,7 @@ static struct spu_prio_array *spu_prio; static struct task_struct *spusched_task; static struct timer_list spusched_timer; @@ -48959,7 +48417,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c /* * Priority of a normal, non-rt, non-niced'd process (aka nice level 0). -@@ -105,15 +106,21 @@ void spu_set_timeslice(struct spu_contex +@@ -105,15 +106,21 @@ void __spu_update_sched_info(struct spu_context *ctx) { /* @@ -48985,7 +48443,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c * contains junk for threads with a realtime scheduling * policy so we have to look at ->prio in this case. */ -@@ -124,23 +131,32 @@ void __spu_update_sched_info(struct spu_ +@@ -124,23 +131,32 @@ ctx->policy = current->policy; /* @@ -49028,7 +48486,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c } static int __node_allowed(struct spu_context *ctx, int node) -@@ -174,7 +190,7 @@ void do_notify_spus_active(void) +@@ -174,7 +190,7 @@ * Wake up the active spu_contexts. * * When the awakened processes see their "notify_active" flag is set, @@ -49037,7 +48495,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c */ for_each_online_node(node) { struct spu *spu; -@@ -221,7 +237,6 @@ static void spu_bind_context(struct spu +@@ -221,7 +237,6 @@ spu->wbox_callback = spufs_wbox_callback; spu->stop_callback = spufs_stop_callback; spu->mfc_callback = spufs_mfc_callback; @@ -49045,7 +48503,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c mb(); spu_unmap_mappings(ctx); spu_restore(&ctx->csa, spu); -@@ -409,7 +424,6 @@ static void spu_unbind_context(struct sp +@@ -409,7 +424,6 @@ spu->wbox_callback = NULL; spu->stop_callback = NULL; spu->mfc_callback = NULL; @@ -49053,7 +48511,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c spu_associate_mm(spu, NULL); spu->pid = 0; spu->tgid = 0; -@@ -454,6 +468,13 @@ static void __spu_add_to_rq(struct spu_c +@@ -454,6 +468,13 @@ } } @@ -49067,7 +48525,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c static void __spu_del_from_rq(struct spu_context *ctx) { int prio = ctx->prio; -@@ -468,10 +489,24 @@ static void __spu_del_from_rq(struct spu +@@ -468,10 +489,24 @@ } } @@ -49092,7 +48550,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c spin_lock(&spu_prio->runq_lock); prepare_to_wait_exclusive(&ctx->stop_wq, &wait, TASK_INTERRUPTIBLE); if (!signal_pending(current)) { -@@ -555,7 +590,7 @@ static struct spu *find_victim(struct sp +@@ -555,7 +590,7 @@ /* * Look for a possible preemption candidate on the local node first. * If there is no candidate look at the other nodes. This isn't @@ -49101,7 +48559,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c * a strong node affinity. We might want to fine-tune this in * the future. */ -@@ -571,6 +606,7 @@ static struct spu *find_victim(struct sp +@@ -571,6 +606,7 @@ struct spu_context *tmp = spu->ctx; if (tmp && tmp->prio > ctx->prio && @@ -49109,7 +48567,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c (!victim || tmp->prio > victim->prio)) victim = spu->ctx; } -@@ -582,6 +618,10 @@ static struct spu *find_victim(struct sp +@@ -582,6 +618,10 @@ * higher priority contexts before lower priority * ones, so this is safe until we introduce * priority inheritance schemes. @@ -49120,7 +48578,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c */ if (!mutex_trylock(&victim->state_mutex)) { victim = NULL; -@@ -589,10 +629,10 @@ static struct spu *find_victim(struct sp +@@ -589,10 +629,10 @@ } spu = victim->spu; @@ -49133,7 +48591,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c * restart the search. */ mutex_unlock(&victim->state_mutex); -@@ -607,13 +647,10 @@ static struct spu *find_victim(struct sp +@@ -607,13 +647,10 @@ victim->stats.invol_ctx_switch++; spu->stats.invol_ctx_switch++; @@ -49150,7 +48608,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c return spu; } } -@@ -621,6 +658,50 @@ static struct spu *find_victim(struct sp +@@ -621,6 +658,50 @@ return NULL; } @@ -49201,7 +48659,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c /** * spu_activate - find a free spu for a context and execute it * @ctx: spu context to schedule -@@ -632,39 +713,47 @@ static struct spu *find_victim(struct sp +@@ -632,39 +713,47 @@ */ int spu_activate(struct spu_context *ctx, unsigned long flags) { @@ -49276,7 +48734,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c } /** -@@ -706,21 +795,19 @@ static int __spu_deactivate(struct spu_c +@@ -706,21 +795,19 @@ if (spu) { new = grab_runnable_context(max_prio, spu->node); if (new || force) { @@ -49310,7 +48768,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c } return new != NULL; -@@ -757,43 +844,38 @@ void spu_yield(struct spu_context *ctx) +@@ -757,43 +844,38 @@ static noinline void spusched_tick(struct spu_context *ctx) { @@ -49378,7 +48836,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c } /** -@@ -817,35 +899,31 @@ static unsigned long count_active_contex +@@ -817,35 +899,31 @@ } /** @@ -49426,7 +48884,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c } static int spusched_thread(void *unused) -@@ -857,17 +935,58 @@ static int spusched_thread(void *unused) +@@ -857,17 +935,58 @@ set_current_state(TASK_INTERRUPTIBLE); schedule(); for (node = 0; node < MAX_NUMNODES; node++) { @@ -49490,7 +48948,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c #define LOAD_INT(x) ((x) >> FSHIFT) #define LOAD_FRAC(x) LOAD_INT(((x) & (FIXED_1-1)) * 100) -@@ -881,7 +1000,7 @@ static int show_spu_loadavg(struct seq_f +@@ -881,7 +1000,7 @@ /* * Note that last_pid doesn't really make much sense for the @@ -49499,7 +48957,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c * but we include it here to have a 100% compatible interface. */ seq_printf(s, "%d.%02d %d.%02d %d.%02d %ld/%d %d\n", -@@ -922,6 +1041,7 @@ int __init spu_sched_init(void) +@@ -922,6 +1041,7 @@ spin_lock_init(&spu_prio->runq_lock); setup_timer(&spusched_timer, spusched_wake, 0); @@ -49507,7 +48965,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c spusched_task = kthread_run(spusched_thread, NULL, "spusched"); if (IS_ERR(spusched_task)) { -@@ -929,6 +1049,8 @@ int __init spu_sched_init(void) +@@ -929,6 +1049,8 @@ goto out_free_spu_prio; } @@ -49516,7 +48974,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c entry = create_proc_entry("spu_loadavg", 0, NULL); if (!entry) goto out_stop_kthread; -@@ -954,6 +1076,7 @@ void spu_sched_exit(void) +@@ -954,6 +1076,7 @@ remove_proc_entry("spu_loadavg", NULL); del_timer_sync(&spusched_timer); @@ -49524,11 +48982,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/sched.c kthread_stop(spusched_task); for (node = 0; node < MAX_NUMNODES; node++) { -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/spufs.h -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h -@@ -71,6 +71,7 @@ struct spu_context { +--- a/arch/powerpc/platforms/cell/spufs/spufs.h ++++ b/arch/powerpc/platforms/cell/spufs/spufs.h +@@ -71,6 +71,7 @@ wait_queue_head_t wbox_wq; wait_queue_head_t stop_wq; wait_queue_head_t mfc_wq; @@ -49536,7 +48992,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h struct fasync_struct *ibox_fasync; struct fasync_struct *wbox_fasync; struct fasync_struct *mfc_fasync; -@@ -168,8 +169,10 @@ struct spu_context_ops { +@@ -168,8 +169,10 @@ void (*npc_write) (struct spu_context * ctx, u32 data); u32(*status_read) (struct spu_context * ctx); char*(*get_ls) (struct spu_context * ctx); @@ -49547,7 +49003,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h void (*master_start) (struct spu_context * ctx); void (*master_stop) (struct spu_context * ctx); int (*set_mfc_query)(struct spu_context * ctx, u32 mask, u32 mode); -@@ -219,15 +222,16 @@ void spu_gang_add_ctx(struct spu_gang *g +@@ -219,15 +222,16 @@ /* fault handling */ int spufs_handle_class1(struct spu_context *ctx); @@ -49566,7 +49022,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h } static inline void spu_release(struct spu_context *ctx) -@@ -242,10 +246,11 @@ int put_spu_context(struct spu_context * +@@ -242,10 +246,11 @@ void spu_unmap_mappings(struct spu_context *ctx); void spu_forget(struct spu_context *ctx); @@ -49580,7 +49036,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h int spu_activate(struct spu_context *ctx, unsigned long flags); void spu_deactivate(struct spu_context *ctx); void spu_yield(struct spu_context *ctx); -@@ -279,7 +284,9 @@ extern char *isolated_loader; +@@ -279,7 +284,9 @@ } \ spu_release(ctx); \ schedule(); \ @@ -49591,7 +49047,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h } \ finish_wait(&(wq), &__wait); \ __ret; \ -@@ -306,41 +313,16 @@ struct spufs_coredump_reader { +@@ -306,41 +313,16 @@ extern struct spufs_coredump_reader spufs_coredump_read[]; extern int spufs_coredump_num_notes; @@ -49644,10 +49100,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/spufs.h + enum spu_utilization_state new_state); #endif -Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/cell/spufs/switch.c -+++ linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c +--- a/arch/powerpc/platforms/cell/spufs/switch.c ++++ b/arch/powerpc/platforms/cell/spufs/switch.c @@ -48,6 +48,8 @@ #include <asm/spu_csa.h> #include <asm/mmu_context.h> @@ -49657,7 +49111,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c #include "spu_save_dump.h" #include "spu_restore_dump.h" -@@ -691,35 +693,9 @@ static inline void resume_mfc_queue(stru +@@ -691,35 +693,9 @@ out_be64(&priv2->mfc_control_RW, MFC_CNTL_RESUME_DMA_QUEUE); } @@ -49695,7 +49149,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c /* Save, Step 47: * Restore, Step 30. * If MFC_SR1[R]=1, write 0 to SLB_Invalidate_All -@@ -735,11 +711,7 @@ static inline void setup_mfc_slbs(struct +@@ -735,11 +711,7 @@ * translation is desired by OS environment). */ spu_invalidate_slbs(spu); @@ -49708,7 +49162,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c } static inline void set_switch_active(struct spu_state *csa, struct spu *spu) -@@ -768,9 +740,9 @@ static inline void enable_interrupts(str +@@ -768,9 +740,9 @@ * (translation) interrupts. */ spin_lock_irq(&spu->register_lock); @@ -49721,7 +49175,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c spu_int_mask_set(spu, 0, 0ul); spu_int_mask_set(spu, 1, class1_mask); spu_int_mask_set(spu, 2, 0ul); -@@ -927,8 +899,8 @@ static inline void wait_tag_complete(str +@@ -927,8 +899,8 @@ POLL_WHILE_FALSE(in_be32(&prob->dma_tagstatus_R) & mask); local_irq_save(flags); @@ -49732,7 +49186,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c local_irq_restore(flags); } -@@ -946,8 +918,8 @@ static inline void wait_spu_stopped(stru +@@ -946,8 +918,8 @@ POLL_WHILE_TRUE(in_be32(&prob->spu_status_R) & SPU_STATUS_RUNNING); local_irq_save(flags); @@ -49743,7 +49197,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c local_irq_restore(flags); } -@@ -1423,9 +1395,9 @@ static inline void clear_interrupts(stru +@@ -1423,9 +1395,9 @@ spu_int_mask_set(spu, 0, 0ul); spu_int_mask_set(spu, 1, 0ul); spu_int_mask_set(spu, 2, 0ul); @@ -49756,7 +49210,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c spin_unlock_irq(&spu->register_lock); } -@@ -1866,7 +1838,8 @@ static void save_lscsa(struct spu_state +@@ -1866,7 +1838,8 @@ */ resume_mfc_queue(prev, spu); /* Step 46. */ @@ -49766,7 +49220,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c set_switch_active(prev, spu); /* Step 48. */ enable_interrupts(prev, spu); /* Step 49. */ save_ls_16kb(prev, spu); /* Step 50. */ -@@ -1971,7 +1944,8 @@ static void restore_lscsa(struct spu_sta +@@ -1971,7 +1944,8 @@ setup_spu_status_part1(next, spu); /* Step 27. */ setup_spu_status_part2(next, spu); /* Step 28. */ restore_mfc_rag(next, spu); /* Step 29. */ @@ -49776,7 +49230,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c set_spu_npc(next, spu); /* Step 31. */ set_signot1(next, spu); /* Step 32. */ set_signot2(next, spu); /* Step 33. */ -@@ -2103,10 +2077,6 @@ int spu_save(struct spu_state *prev, str +@@ -2103,10 +2077,6 @@ int rc; acquire_spu_lock(spu); /* Step 1. */ @@ -49787,7 +49241,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c rc = __do_spu_save(prev, spu); /* Steps 2-53. */ release_spu_lock(spu); if (rc != 0 && rc != 2 && rc != 6) { -@@ -2133,9 +2103,6 @@ int spu_restore(struct spu_state *new, s +@@ -2133,9 +2103,6 @@ acquire_spu_lock(spu); harvest(NULL, spu); spu->slb_replace = 0; @@ -49797,7 +49251,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c rc = __do_spu_restore(new, spu); release_spu_lock(spu); if (rc) { -@@ -2215,10 +2182,8 @@ int spu_init_csa(struct spu_state *csa) +@@ -2215,10 +2182,8 @@ return 0; } @@ -49808,11 +49262,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/cell/spufs/switch.c spu_free_lscsa(csa); } -EXPORT_SYMBOL_GPL(spu_fini_csa); -Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/celleb/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/celleb/Kconfig -@@ -2,6 +2,8 @@ config PPC_CELLEB +--- a/arch/powerpc/platforms/celleb/Kconfig ++++ b/arch/powerpc/platforms/celleb/Kconfig +@@ -2,6 +2,8 @@ bool "Toshiba's Cell Reference Set 'Celleb' Architecture" depends on PPC_MULTIPLATFORM && PPC64 select PPC_CELL @@ -49821,10 +49273,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/Kconfig select PPC_INDIRECT_IO select PPC_OF_PLATFORM_PCI select HAS_TXX9_SERIAL -Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/io-workarounds.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/celleb/io-workarounds.c -+++ linux-2.6.24.7/arch/powerpc/platforms/celleb/io-workarounds.c +--- a/arch/powerpc/platforms/celleb/io-workarounds.c ++++ b/arch/powerpc/platforms/celleb/io-workarounds.c @@ -22,6 +22,7 @@ #undef DEBUG @@ -49833,7 +49283,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/io-workarounds.c #include <linux/of_device.h> #include <linux/irq.h> -@@ -222,7 +223,7 @@ void __init celleb_pci_add_one(struct pc +@@ -222,7 +223,7 @@ void (*dummy_read)(struct pci_controller *)) { struct celleb_pci_bus *bus = &celleb_pci_busses[celleb_pci_count]; @@ -49842,7 +49292,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/io-workarounds.c if (celleb_pci_count >= MAX_CELLEB_PCI_BUS) { printk(KERN_ERR "Too many pci bridges, workarounds" -@@ -256,13 +257,13 @@ int __init celleb_pci_workaround_init(vo +@@ -256,13 +257,13 @@ celleb_dummy_page_va = kmalloc(PAGE_SIZE, GFP_KERNEL); if (!celleb_dummy_page_va) { @@ -49858,10 +49308,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/io-workarounds.c match = of_match_node(celleb_pci_workaround_match, node); if (match) { -Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/iommu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/celleb/iommu.c -+++ linux-2.6.24.7/arch/powerpc/platforms/celleb/iommu.c +--- a/arch/powerpc/platforms/celleb/iommu.c ++++ b/arch/powerpc/platforms/celleb/iommu.c @@ -22,8 +22,9 @@ #include <linux/init.h> #include <linux/dma-mapping.h> @@ -49873,7 +49321,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/iommu.c #include "beat_wrapper.h" -@@ -51,6 +52,8 @@ static int __init find_dma_window(u64 *i +@@ -51,6 +52,8 @@ return 0; } @@ -49882,7 +49330,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/iommu.c static void __init celleb_init_direct_mapping(void) { u64 lpar_addr, io_addr; -@@ -68,7 +71,18 @@ static void __init celleb_init_direct_ma +@@ -68,7 +71,18 @@ ioid, DMA_FLAGS); } @@ -49902,7 +49350,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/iommu.c } static int celleb_of_bus_notify(struct notifier_block *nb, -@@ -80,7 +94,7 @@ static int celleb_of_bus_notify(struct n +@@ -80,7 +94,7 @@ if (action != BUS_NOTIFY_ADD_DEVICE) return 0; @@ -49911,7 +49359,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/iommu.c return 0; } -@@ -91,14 +105,12 @@ static struct notifier_block celleb_of_b +@@ -91,14 +105,12 @@ static int __init celleb_init_iommu(void) { @@ -49928,10 +49376,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/iommu.c -arch_initcall(celleb_init_iommu); +machine_arch_initcall(celleb_beat, celleb_init_iommu); -Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/celleb/pci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c +--- a/arch/powerpc/platforms/celleb/pci.c ++++ b/arch/powerpc/platforms/celleb/pci.c @@ -31,6 +31,7 @@ #include <linux/init.h> #include <linux/bootmem.h> @@ -49940,7 +49386,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c #include <linux/of_device.h> #include <asm/io.h> -@@ -138,8 +139,6 @@ static void celleb_config_read_fake(unsi +@@ -138,8 +139,6 @@ *val = celleb_fake_config_readl(p); break; } @@ -49949,7 +49395,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c } static void celleb_config_write_fake(unsigned char *config, int where, -@@ -158,7 +157,6 @@ static void celleb_config_write_fake(uns +@@ -158,7 +157,6 @@ celleb_fake_config_writel(val, p); break; } @@ -49957,7 +49403,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c } static int celleb_fake_pci_read_config(struct pci_bus *bus, -@@ -351,6 +349,10 @@ static int __init celleb_setup_fake_pci_ +@@ -351,6 +349,10 @@ wi1 = of_get_property(node, "vendor-id", NULL); wi2 = of_get_property(node, "class-code", NULL); wi3 = of_get_property(node, "revision-id", NULL); @@ -49968,7 +49414,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c celleb_config_write_fake(*config, PCI_DEVICE_ID, 2, wi0[0] & 0xffff); celleb_config_write_fake(*config, PCI_VENDOR_ID, 2, wi1[0] & 0xffff); -@@ -372,6 +374,10 @@ static int __init celleb_setup_fake_pci_ +@@ -372,6 +374,10 @@ celleb_setup_pci_base_addrs(hose, devno, fn, num_base_addr); li = of_get_property(node, "interrupts", &rlen); @@ -49979,7 +49425,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c val = li[0]; celleb_config_write_fake(*config, PCI_INTERRUPT_PIN, 1, 1); celleb_config_write_fake(*config, PCI_INTERRUPT_LINE, 1, val); -@@ -475,7 +481,7 @@ static struct of_device_id celleb_phb_ma +@@ -475,7 +481,7 @@ int __init celleb_setup_phb(struct pci_controller *phb) { @@ -49988,11 +49434,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/pci.c const struct of_device_id *match; int (*setup_func)(struct device_node *, struct pci_controller *); -Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/scc_epci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/celleb/scc_epci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/celleb/scc_epci.c -@@ -95,7 +95,7 @@ void __init epci_workaround_init(struct +--- a/arch/powerpc/platforms/celleb/scc_epci.c ++++ b/arch/powerpc/platforms/celleb/scc_epci.c +@@ -95,7 +95,7 @@ private->dummy_page_da = dma_map_single(hose->parent, celleb_dummy_page_va, PAGE_SIZE, DMA_FROM_DEVICE); if (private->dummy_page_da == DMA_ERROR_CODE) { @@ -50001,11 +49445,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/scc_epci.c "Map dummy page failed.\n"); return; } -Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/scc_uhc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/celleb/scc_uhc.c -+++ linux-2.6.24.7/arch/powerpc/platforms/celleb/scc_uhc.c -@@ -47,7 +47,8 @@ static void enable_scc_uhc(struct pci_de +--- a/arch/powerpc/platforms/celleb/scc_uhc.c ++++ b/arch/powerpc/platforms/celleb/scc_uhc.c +@@ -47,7 +47,8 @@ u32 val = 0; int i; @@ -50015,10 +49457,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/scc_uhc.c return; uhc_base = ioremap(pci_resource_start(dev, 0), -Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/celleb/setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/celleb/setup.c +--- a/arch/powerpc/platforms/celleb/setup.c ++++ b/arch/powerpc/platforms/celleb/setup.c @@ -40,6 +40,7 @@ #include <linux/seq_file.h> #include <linux/root_dev.h> @@ -50045,7 +49485,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/setup.c static char celleb_machine_type[128] = "Celleb"; -@@ -88,61 +93,122 @@ static void celleb_progress(char *s, uns +@@ -88,61 +93,122 @@ printk("*** %04x : %s\n", hex, s ? s : ""); } @@ -50196,7 +49636,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/setup.c .show_cpuinfo = celleb_show_cpuinfo, .restart = beat_restart, .power_off = beat_power_off, -@@ -167,3 +233,26 @@ define_machine(celleb) { +@@ -167,3 +233,26 @@ .machine_crash_shutdown = default_machine_crash_shutdown, #endif }; @@ -50223,11 +49663,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/celleb/setup.c + .machine_crash_shutdown = default_machine_crash_shutdown, +#endif +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/chrp/pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/chrp/pci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/chrp/pci.c -@@ -198,7 +198,7 @@ static void __init setup_peg2(struct pci +--- a/arch/powerpc/platforms/chrp/pci.c ++++ b/arch/powerpc/platforms/chrp/pci.c +@@ -198,7 +198,7 @@ printk ("RTAS supporting Pegasos OF not found, please upgrade" " your firmware\n"); } @@ -50236,11 +49674,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/chrp/pci.c /* keep the reference to the root node */ } -Index: linux-2.6.24.7/arch/powerpc/platforms/chrp/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/chrp/setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/chrp/setup.c -@@ -115,7 +115,7 @@ void chrp_show_cpuinfo(struct seq_file * +--- a/arch/powerpc/platforms/chrp/setup.c ++++ b/arch/powerpc/platforms/chrp/setup.c +@@ -115,7 +115,7 @@ seq_printf(m, "machine\t\t: CHRP %s\n", model); /* longtrail (goldengate) stuff */ @@ -50249,7 +49685,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/chrp/setup.c /* VLSI VAS96011/12 `Golden Gate 2' */ /* Memory banks */ sdramen = (in_le32(gg2_pci_config_base + GG2_PCI_DRAM_CTRL) -@@ -203,15 +203,20 @@ static void __init sio_fixup_irq(const c +@@ -203,15 +203,20 @@ static void __init sio_init(void) { struct device_node *root; @@ -50273,7 +49709,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/chrp/setup.c of_node_put(root); } -@@ -251,6 +256,57 @@ static void briq_restart(char *cmd) +@@ -251,6 +256,57 @@ for(;;); } @@ -50331,7 +49767,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/chrp/setup.c void __init chrp_setup_arch(void) { struct device_node *root = of_find_node_by_path("/"); -@@ -594,6 +650,7 @@ define_machine(chrp) { +@@ -594,6 +650,7 @@ .probe = chrp_probe, .setup_arch = chrp_setup_arch, .init = chrp_init2, @@ -50339,11 +49775,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/chrp/setup.c .show_cpuinfo = chrp_show_cpuinfo, .init_IRQ = chrp_init_IRQ, .restart = rtas_restart, -Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/embedded6xx/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig -@@ -9,6 +9,8 @@ config LINKSTATION +--- a/arch/powerpc/platforms/embedded6xx/Kconfig ++++ b/arch/powerpc/platforms/embedded6xx/Kconfig +@@ -9,6 +9,8 @@ select FSL_SOC select PPC_UDBG_16550 if SERIAL_8250 select DEFAULT_UIMAGE @@ -50352,7 +49786,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig help Select LINKSTATION if configuring for one of PPC- (MPC8241) based NAS systems from Buffalo Technology. So far only -@@ -16,6 +18,19 @@ config LINKSTATION +@@ -16,6 +18,19 @@ Linkstation-I HD-HLAN and HD-HGLAN versions, and PPC-based Terastation systems should be supported too. @@ -50372,7 +49806,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig config MPC7448HPC2 bool "Freescale MPC7448HPC2(Taiga)" depends on EMBEDDED6xx -@@ -23,6 +38,7 @@ config MPC7448HPC2 +@@ -23,6 +38,7 @@ select DEFAULT_UIMAGE select PPC_UDBG_16550 select WANT_DEVICE_TREE @@ -50380,7 +49814,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig help Select MPC7448HPC2 if configuring for Freescale MPC7448HPC2 (Taiga) platform -@@ -33,6 +49,7 @@ config PPC_HOLLY +@@ -33,6 +49,7 @@ select TSI108_BRIDGE select PPC_UDBG_16550 select WANT_DEVICE_TREE @@ -50388,7 +49822,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig help Select PPC_HOLLY if configuring for an IBM 750GX/CL Eval Board with TSI108/9 bridge (Hickory/Holly) -@@ -48,17 +65,13 @@ config PPC_PRPMC2800 +@@ -48,17 +65,13 @@ config TSI108_BRIDGE bool @@ -50406,7 +49840,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig config MV64X60 bool -@@ -67,8 +80,6 @@ config MV64X60 +@@ -67,8 +80,6 @@ config MPC10X_OPENPIC bool @@ -50415,10 +49849,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Kconfig config MPC10X_STORE_GATHERING bool "Enable MPC10x store gathering" -Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/embedded6xx/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Makefile +--- a/arch/powerpc/platforms/embedded6xx/Makefile ++++ b/arch/powerpc/platforms/embedded6xx/Makefile @@ -3,5 +3,6 @@ # obj-$(CONFIG_MPC7448HPC2) += mpc7448_hpc2.o @@ -50426,10 +49858,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/Makefile +obj-$(CONFIG_STORCENTER) += storcenter.o obj-$(CONFIG_PPC_HOLLY) += holly.o obj-$(CONFIG_PPC_PRPMC2800) += prpmc2800.o -Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/holly.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/embedded6xx/holly.c -+++ linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/holly.c +--- a/arch/powerpc/platforms/embedded6xx/holly.c ++++ b/arch/powerpc/platforms/embedded6xx/holly.c @@ -20,12 +20,12 @@ #include <linux/console.h> #include <linux/delay.h> @@ -50452,10 +49882,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/holly.c #undef DEBUG -Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c -+++ linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c +--- a/arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c ++++ b/arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c @@ -53,8 +53,6 @@ #define MPC7448HPC2_PCI_CFG_PHYS 0xfb000000 @@ -50465,10 +49893,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c int mpc7448_hpc2_exclude_device(struct pci_controller *hose, u_char bus, u_char devfn) { -Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/storcenter.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/storcenter.c ++++ b/arch/powerpc/platforms/embedded6xx/storcenter.c @@ -0,0 +1,192 @@ +/* + * Board setup routines for the storcenter @@ -50662,11 +50088,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/embedded6xx/storcenter.c + .restart = storcenter_restart, + .calibrate_decr = generic_calibrate_decr, +}; -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/iseries/Makefile -@@ -5,7 +5,7 @@ extra-y += dt.o +--- a/arch/powerpc/platforms/iseries/Makefile ++++ b/arch/powerpc/platforms/iseries/Makefile +@@ -5,7 +5,7 @@ obj-y += exception.o obj-y += hvlog.o hvlpconfig.o lpardata.o setup.o dt_mod.o mf.o lpevents.o \ hvcall.o proc.o htab.o iommu.o misc.o irq.o @@ -50675,11 +50099,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/Makefile obj-$(CONFIG_SMP) += smp.o obj-$(CONFIG_VIOPATH) += viopath.o vio.o obj-$(CONFIG_MODULES) += ksyms.o -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/iommu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/iommu.c -+++ linux-2.6.24.7/arch/powerpc/platforms/iseries/iommu.c -@@ -163,8 +163,10 @@ static struct iommu_table *iommu_table_f +--- a/arch/powerpc/platforms/iseries/iommu.c ++++ b/arch/powerpc/platforms/iseries/iommu.c +@@ -163,8 +163,10 @@ (it->it_type == TCE_PCI) && (it->it_offset == tbl->it_offset) && (it->it_index == tbl->it_index) && @@ -50691,11 +50113,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/iommu.c } return NULL; } -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/lpevents.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/lpevents.c -+++ linux-2.6.24.7/arch/powerpc/platforms/iseries/lpevents.c -@@ -239,7 +239,7 @@ int HvLpEvent_unregisterHandler(HvLpEven +--- a/arch/powerpc/platforms/iseries/lpevents.c ++++ b/arch/powerpc/platforms/iseries/lpevents.c +@@ -239,7 +239,7 @@ * other CPUs, and that the deleted handler isn't * still running on another CPU when we return. */ @@ -50704,10 +50124,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/lpevents.c return 0; } } -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/pci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c +--- a/arch/powerpc/platforms/iseries/pci.c ++++ b/arch/powerpc/platforms/iseries/pci.c @@ -1,5 +1,6 @@ /* * Copyright (C) 2001 Allan Trautman, IBM Corporation @@ -50760,7 +50178,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c /* * Table defines -@@ -62,6 +62,7 @@ static struct pci_ops iSeries_pci_ops; +@@ -62,6 +62,7 @@ #define IOMM_TABLE_MAX_ENTRIES 1024 #define IOMM_TABLE_ENTRY_SIZE 0x0000000000400000UL #define BASE_IO_MEMORY 0xE000000000000000UL @@ -50768,7 +50186,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c static unsigned long max_io_memory = BASE_IO_MEMORY; static long current_iomm_table_entry; -@@ -70,12 +71,237 @@ static long current_iomm_table_entry; +@@ -70,12 +71,237 @@ * Lookup Tables. */ static struct device_node *iomm_table[IOMM_TABLE_MAX_ENTRIES]; @@ -51008,7 +50426,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c * iomm_table_allocate_entry * * Adds pci_dev entry in address translation table -@@ -87,7 +313,7 @@ static DEFINE_SPINLOCK(iomm_table_lock); +@@ -87,7 +313,7 @@ * - CurrentIndex is incremented to keep track of the last entry. * - Builds the resource entry for allocated BARs. */ @@ -51017,7 +50435,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c { struct resource *bar_res = &dev->resource[bar_num]; long bar_size = pci_resource_len(dev, bar_num); -@@ -101,7 +327,6 @@ static void iomm_table_allocate_entry(st +@@ -101,7 +327,6 @@ * Set Resource values. */ spin_lock(&iomm_table_lock); @@ -51025,7 +50443,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c bar_res->start = BASE_IO_MEMORY + IOMM_TABLE_ENTRY_SIZE * current_iomm_table_entry; bar_res->end = bar_res->start + bar_size - 1; -@@ -110,7 +335,8 @@ static void iomm_table_allocate_entry(st +@@ -110,7 +335,8 @@ */ while (bar_size > 0 ) { iomm_table[current_iomm_table_entry] = dev->sysdata; @@ -51035,7 +50453,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c bar_size -= IOMM_TABLE_ENTRY_SIZE; ++current_iomm_table_entry; } -@@ -130,7 +356,7 @@ static void iomm_table_allocate_entry(st +@@ -130,7 +356,7 @@ * - Loops through The Bar resources(0 - 5) including the ROM * is resource(6). */ @@ -51044,7 +50462,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c { int bar_num; -@@ -145,79 +371,19 @@ static void allocate_device_bars(struct +@@ -145,79 +371,19 @@ * PCI: Read Vendor Failed 0x18.58.10 Rc: 0x00xx * PCI: Connect Bus Unit Failed 0x18.58.10 Rc: 0x00xx */ @@ -51129,7 +50547,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c { struct device_node *node; -@@ -230,22 +396,66 @@ static struct device_node *find_Device_N +@@ -230,22 +396,66 @@ return NULL; } @@ -51206,7 +50624,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c /* * Config space read and write functions. -@@ -269,7 +479,7 @@ static u64 hv_cfg_write_func[4] = { +@@ -269,7 +479,7 @@ static int iSeries_pci_read_config(struct pci_bus *bus, unsigned int devfn, int offset, int size, u32 *val) { @@ -51215,7 +50633,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c u64 fn; struct HvCallPci_LoadReturn ret; -@@ -299,7 +509,7 @@ static int iSeries_pci_read_config(struc +@@ -299,7 +509,7 @@ static int iSeries_pci_write_config(struct pci_bus *bus, unsigned int devfn, int offset, int size, u32 val) { @@ -51224,7 +50642,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c u64 fn; u64 ret; -@@ -331,22 +541,22 @@ static struct pci_ops iSeries_pci_ops = +@@ -331,22 +541,22 @@ * PCI: Device 23.90 ReadL Retry( 1) * PCI: Device 23.90 ReadL Retry Successful(1) */ @@ -51252,7 +50670,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c mf_display_src(0xB6000103); panic_timeout = 0; panic("PCI: Hardware I/O Error, SRC B6000103, " -@@ -363,28 +573,39 @@ static int CheckReturnCode(char *TextHdr +@@ -363,28 +573,39 @@ * the exposure of being device global. */ static inline struct device_node *xlate_iomm_address( @@ -51310,7 +50728,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } /* -@@ -392,91 +613,58 @@ static inline struct device_node *xlate_ +@@ -392,91 +613,58 @@ * On MM I/O error, all ones are returned and iSeries_pci_IoError is cal * else, data is returned in Big Endian format. */ @@ -51423,7 +50841,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c return ret.value; } -@@ -485,134 +673,72 @@ static u32 iSeries_Read_Long(const volat +@@ -485,134 +673,72 @@ * Write MM I/O Instructions for the iSeries * */ @@ -51583,7 +51001,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_readsb(const volatile void __iomem *addr, void *buf, -@@ -620,7 +746,7 @@ static void iseries_readsb(const volatil +@@ -620,7 +746,7 @@ { u8 *dst = buf; while(count-- > 0) @@ -51592,7 +51010,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_readsw(const volatile void __iomem *addr, void *buf, -@@ -628,7 +754,7 @@ static void iseries_readsw(const volatil +@@ -628,7 +754,7 @@ { u16 *dst = buf; while(count-- > 0) @@ -51601,7 +51019,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_readsl(const volatile void __iomem *addr, void *buf, -@@ -636,7 +762,7 @@ static void iseries_readsl(const volatil +@@ -636,7 +762,7 @@ { u32 *dst = buf; while(count-- > 0) @@ -51610,7 +51028,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_writesb(volatile void __iomem *addr, const void *buf, -@@ -644,7 +770,7 @@ static void iseries_writesb(volatile voi +@@ -644,7 +770,7 @@ { const u8 *src = buf; while(count-- > 0) @@ -51619,7 +51037,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_writesw(volatile void __iomem *addr, const void *buf, -@@ -652,7 +778,7 @@ static void iseries_writesw(volatile voi +@@ -652,7 +778,7 @@ { const u16 *src = buf; while(count-- > 0) @@ -51628,7 +51046,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_writesl(volatile void __iomem *addr, const void *buf, -@@ -660,7 +786,7 @@ static void iseries_writesl(volatile voi +@@ -660,7 +786,7 @@ { const u32 *src = buf; while(count-- > 0) @@ -51637,7 +51055,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_memset_io(volatile void __iomem *addr, int c, -@@ -669,7 +795,7 @@ static void iseries_memset_io(volatile v +@@ -669,7 +795,7 @@ volatile char __iomem *d = addr; while (n-- > 0) @@ -51646,7 +51064,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_memcpy_fromio(void *dest, const volatile void __iomem *src, -@@ -679,7 +805,7 @@ static void iseries_memcpy_fromio(void * +@@ -679,7 +805,7 @@ const volatile char __iomem *s = src; while (n-- > 0) @@ -51655,7 +51073,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } static void iseries_memcpy_toio(volatile void __iomem *dest, const void *src, -@@ -689,7 +815,7 @@ static void iseries_memcpy_toio(volatile +@@ -689,7 +815,7 @@ volatile char __iomem *d = dest; while (n-- > 0) @@ -51664,7 +51082,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } /* We only set MMIO ops. The default PIO ops will be default -@@ -742,6 +868,8 @@ void __init iSeries_pcibios_init(void) +@@ -742,6 +868,8 @@ /* Install IO hooks */ ppc_pci_io = iseries_pci_io; @@ -51673,7 +51091,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c /* iSeries has no IO space in the common sense, it needs to set * the IO base to 0 */ -@@ -767,11 +895,21 @@ void __init iSeries_pcibios_init(void) +@@ -767,11 +895,21 @@ phb = pcibios_alloc_controller(node); if (phb == NULL) continue; @@ -51696,10 +51114,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.c } of_node_put(root); -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/pci.h -+++ linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.h +--- a/arch/powerpc/platforms/iseries/pci.h ++++ b/arch/powerpc/platforms/iseries/pci.h @@ -30,10 +30,6 @@ * End Change Activity */ @@ -51711,7 +51127,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.h /* * Decodes Linux DevFn to iSeries DevFn, bridge device, or function. * For Linux, see PCI_SLOT and PCI_FUNC in include/linux/pci.h -@@ -47,17 +43,16 @@ struct pci_dev; /* For Forward Refere +@@ -47,17 +43,16 @@ #define ISERIES_GET_DEVICE_FROM_SUBBUS(subbus) ((subbus >> 5) & 0x7) #define ISERIES_GET_FUNCTION_FROM_SUBBUS(subbus) ((subbus >> 2) & 0x7) @@ -51739,10 +51155,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/pci.h +#endif #endif /* _PLATFORMS_ISERIES_PCI_H */ -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c +--- a/arch/powerpc/platforms/iseries/setup.c ++++ b/arch/powerpc/platforms/iseries/setup.c @@ -63,6 +63,7 @@ #include "main_store.h" #include "call_sm.h" @@ -51763,7 +51177,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c struct MemoryBlock { -@@ -112,13 +108,13 @@ static unsigned long iSeries_process_Con +@@ -112,13 +108,13 @@ * correctly. */ mb_array[0].logicalStart = 0; @@ -51780,7 +51194,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c holeStart = addr_to_chunk(holeStart); holeFirstChunk = holeStart; holeSize = addr_to_chunk(holeSize); -@@ -128,9 +124,9 @@ static unsigned long iSeries_process_Con +@@ -128,9 +124,9 @@ mb_array[0].logicalEnd = holeFirstChunk; mb_array[0].absEnd = holeFirstChunk; mb_array[1].logicalStart = holeFirstChunk; @@ -51792,7 +51206,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c } return numMemoryBlocks; } -@@ -234,9 +230,9 @@ static unsigned long iSeries_process_Reg +@@ -234,9 +230,9 @@ mb_array[i].logicalEnd, mb_array[i].absStart, mb_array[i].absEnd); mb_array[i].absStart = addr_to_chunk(mb_array[i].absStart & @@ -51804,7 +51218,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c mb_array[i].logicalStart = addr_to_chunk(mb_array[i].logicalStart); mb_array[i].logicalEnd = addr_to_chunk(mb_array[i].logicalEnd); -@@ -320,7 +316,7 @@ struct mschunks_map mschunks_map = { +@@ -320,7 +316,7 @@ }; EXPORT_SYMBOL(mschunks_map); @@ -51813,7 +51227,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c { klimit = _ALIGN(klimit, sizeof(u32)); mschunks_map.mapping = (u32 *)klimit; -@@ -499,6 +495,8 @@ static void __init iSeries_setup_arch(vo +@@ -499,6 +495,8 @@ itVpdAreas.xSlicMaxLogicalProcs); printk("Max physical processors = %d\n", itVpdAreas.xSlicMaxPhysicalProcs); @@ -51822,7 +51236,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c } static void iSeries_show_cpuinfo(struct seq_file *m) -@@ -641,24 +639,25 @@ static int __init iseries_probe(void) +@@ -641,24 +639,25 @@ } define_machine(iseries) { @@ -51866,10 +51280,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.c /* XXX Implement enable_pmcs for iSeries */ }; -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/setup.h -+++ linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.h +--- a/arch/powerpc/platforms/iseries/setup.h ++++ b/arch/powerpc/platforms/iseries/setup.h @@ -17,6 +17,7 @@ #ifndef __ISERIES_SETUP_H__ #define __ISERIES_SETUP_H__ @@ -51878,9 +51290,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/setup.h extern unsigned long iSeries_get_boot_time(void); extern int iSeries_set_rtc_time(struct rtc_time *tm); extern void iSeries_get_rtc_time(struct rtc_time *tm); -Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/vpdinfo.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/iseries/vpdinfo.c +--- a/arch/powerpc/platforms/iseries/vpdinfo.c +++ /dev/null @@ -1,275 +0,0 @@ -/* @@ -52158,10 +51568,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/iseries/vpdinfo.c - card, (int)(PciDev->class >> 8)); - } -} -Index: linux-2.6.24.7/arch/powerpc/platforms/maple/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/maple/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/maple/Kconfig +--- a/arch/powerpc/platforms/maple/Kconfig ++++ b/arch/powerpc/platforms/maple/Kconfig @@ -1,6 +1,7 @@ config PPC_MAPLE depends on PPC_MULTIPLATFORM && PPC64 @@ -52170,11 +51578,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/maple/Kconfig select MPIC select U3_DART select MPIC_U3_HT_IRQS -Index: linux-2.6.24.7/arch/powerpc/platforms/maple/pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/maple/pci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/maple/pci.c -@@ -558,7 +558,7 @@ void __init maple_pci_init(void) +--- a/arch/powerpc/platforms/maple/pci.c ++++ b/arch/powerpc/platforms/maple/pci.c +@@ -558,7 +558,7 @@ * safe assumptions hopefully. */ if (u3_agp) { @@ -52183,10 +51589,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/maple/pci.c PCI_DN(np)->busno = 0xf0; for (np = np->child; np; np = np->sibling) PCI_DN(np)->busno = 0xf0; -Index: linux-2.6.24.7/arch/powerpc/platforms/maple/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/maple/setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/maple/setup.c +--- a/arch/powerpc/platforms/maple/setup.c ++++ b/arch/powerpc/platforms/maple/setup.c @@ -42,6 +42,7 @@ #include <linux/serial.h> #include <linux/smp.h> @@ -52203,11 +51607,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/maple/setup.c #include <asm/lmb.h> #include <asm/mpic.h> #include <asm/rtas.h> -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/Kconfig -@@ -3,6 +3,7 @@ config PPC_PASEMI +--- a/arch/powerpc/platforms/pasemi/Kconfig ++++ b/arch/powerpc/platforms/pasemi/Kconfig +@@ -3,6 +3,7 @@ bool "PA Semi SoC-based platforms" default n select MPIC @@ -52215,7 +51617,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/Kconfig select PPC_UDBG_16550 select PPC_NATIVE select MPIC_BROKEN_REGREAD -@@ -17,7 +18,7 @@ config PPC_PASEMI_IOMMU +@@ -17,7 +18,7 @@ bool "PA Semi IOMMU support" depends on PPC_PASEMI help @@ -52224,7 +51626,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/Kconfig config PPC_PASEMI_IOMMU_DMA_FORCE bool "Force DMA engine to use IOMMU" -@@ -36,13 +37,4 @@ config PPC_PASEMI_MDIO +@@ -36,13 +37,4 @@ help Driver for MDIO via GPIO on PWRficient platforms @@ -52238,19 +51640,15 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/Kconfig - interface. - endmenu -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/Makefile -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/Makefile +--- a/arch/powerpc/platforms/pasemi/Makefile ++++ b/arch/powerpc/platforms/pasemi/Makefile @@ -1,4 +1,3 @@ obj-y += setup.o pci.o time.o idle.o powersave.o iommu.o obj-$(CONFIG_PPC_PASEMI_MDIO) += gpio_mdio.o -obj-$(CONFIG_ELECTRA_IDE) += electra_ide.o obj-$(CONFIG_PPC_PASEMI_CPUFREQ) += cpufreq.o -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/cpufreq.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/cpufreq.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/cpufreq.c +--- a/arch/powerpc/platforms/pasemi/cpufreq.c ++++ b/arch/powerpc/platforms/pasemi/cpufreq.c @@ -32,6 +32,7 @@ #include <asm/io.h> #include <asm/prom.h> @@ -52259,7 +51657,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/cpufreq.c #define SDCASR_REG 0x0100 #define SDCASR_REG_STRIDE 0x1000 -@@ -124,6 +125,11 @@ static void set_astate(int cpu, unsigned +@@ -124,6 +125,11 @@ local_irq_restore(flags); } @@ -52271,7 +51669,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/cpufreq.c void restore_astate(int cpu) { set_astate(cpu, current_astate); -@@ -147,7 +153,10 @@ static int pas_cpufreq_cpu_init(struct c +@@ -147,7 +153,10 @@ if (!cpu) goto out; @@ -52283,7 +51681,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/cpufreq.c if (!dn) goto out; err = of_address_to_resource(dn, 0, &res); -@@ -160,7 +169,10 @@ static int pas_cpufreq_cpu_init(struct c +@@ -160,7 +169,10 @@ goto out; } @@ -52295,7 +51693,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/cpufreq.c if (!dn) { err = -ENODEV; goto out_unmap_sdcasr; -@@ -292,7 +304,8 @@ static struct cpufreq_driver pas_cpufreq +@@ -292,7 +304,8 @@ static int __init pas_cpufreq_init(void) { @@ -52305,9 +51703,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/cpufreq.c return -ENODEV; return cpufreq_register_driver(&pas_cpufreq_driver); -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/electra_ide.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/electra_ide.c +--- a/arch/powerpc/platforms/pasemi/electra_ide.c +++ /dev/null @@ -1,96 +0,0 @@ -/* @@ -52406,10 +51802,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/electra_ide.c -MODULE_LICENSE("GPL"); -MODULE_AUTHOR ("Olof Johansson <olof@lixom.net>"); -MODULE_DESCRIPTION("PA Semi Electra IDE driver"); -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/gpio_mdio.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c +--- a/arch/powerpc/platforms/pasemi/gpio_mdio.c ++++ b/arch/powerpc/platforms/pasemi/gpio_mdio.c @@ -30,7 +30,7 @@ #include <linux/interrupt.h> #include <linux/phy.h> @@ -52419,7 +51813,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c #define DELAY 1 -@@ -218,45 +218,27 @@ static int __devinit gpio_mdio_probe(str +@@ -218,45 +218,27 @@ const struct of_device_id *match) { struct device *dev = &ofdev->dev; @@ -52476,7 +51870,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c prop = of_get_property(np, "reg", NULL); new_bus->id = *prop; -@@ -265,9 +247,24 @@ static int __devinit gpio_mdio_probe(str +@@ -265,9 +247,24 @@ new_bus->phy_mask = 0; new_bus->irq = kmalloc(sizeof(int)*PHY_MAX_ADDR, GFP_KERNEL); @@ -52503,7 +51897,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c prop = of_get_property(np, "mdc-pin", NULL); priv->mdc_pin = *prop; -@@ -280,17 +277,21 @@ static int __devinit gpio_mdio_probe(str +@@ -280,17 +277,21 @@ err = mdiobus_register(new_bus); @@ -52529,7 +51923,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c return err; } -@@ -317,6 +318,7 @@ static struct of_device_id gpio_mdio_mat +@@ -317,6 +318,7 @@ }, {}, }; @@ -52537,7 +51931,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c static struct of_platform_driver gpio_mdio_driver = { -@@ -330,12 +332,32 @@ static struct of_platform_driver gpio_md +@@ -330,12 +332,32 @@ int gpio_mdio_init(void) { @@ -52571,11 +51965,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/gpio_mdio.c +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Olof Johansson <olof@lixom.net>"); +MODULE_DESCRIPTION("Driver for MDIO over GPIO on PA Semi PWRficient-based boards"); -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/idle.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/idle.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/idle.c -@@ -74,9 +74,6 @@ static int pasemi_system_reset_exception +--- a/arch/powerpc/platforms/pasemi/idle.c ++++ b/arch/powerpc/platforms/pasemi/idle.c +@@ -74,9 +74,6 @@ static int __init pasemi_idle_init(void) { @@ -52585,7 +51977,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/idle.c #ifndef CONFIG_PPC_PASEMI_CPUFREQ printk(KERN_WARNING "No cpufreq driver, powersavings modes disabled\n"); current_mode = 0; -@@ -88,7 +85,7 @@ static int __init pasemi_idle_init(void) +@@ -88,7 +85,7 @@ return 0; } @@ -52594,11 +51986,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/idle.c static int __init idle_param(char *p) { -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/pasemi.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/pasemi.h -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/pasemi.h -@@ -16,8 +16,14 @@ extern void idle_doze(void); +--- a/arch/powerpc/platforms/pasemi/pasemi.h ++++ b/arch/powerpc/platforms/pasemi/pasemi.h +@@ -16,8 +16,14 @@ /* Restore astate to last set */ #ifdef CONFIG_PPC_PASEMI_CPUFREQ @@ -52613,11 +52003,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/pasemi.h static inline void restore_astate(int cpu) { } -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/powersave.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/powersave.S -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/powersave.S -@@ -62,7 +62,16 @@ sleep_common: +--- a/arch/powerpc/platforms/pasemi/powersave.S ++++ b/arch/powerpc/platforms/pasemi/powersave.S +@@ -62,7 +62,16 @@ mflr r0 std r0, 16(r1) stdu r1,-64(r1) @@ -52634,7 +52022,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/powersave.S LOAD_REG_IMMEDIATE(r6,MSR_DR|MSR_IR|MSR_ME|MSR_EE) mfmsr r4 andc r5,r4,r6 -@@ -73,7 +82,7 @@ sleep_common: +@@ -73,7 +82,7 @@ mtmsrd r4,0 @@ -52643,10 +52031,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/powersave.S ld r0,16(r1) mtlr r0 blr -Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pasemi/setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c +--- a/arch/powerpc/platforms/pasemi/setup.c ++++ b/arch/powerpc/platforms/pasemi/setup.c @@ -27,6 +27,7 @@ #include <linux/delay.h> #include <linux/console.h> @@ -52675,7 +52061,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c /* SDC reset register, must be pre-mapped at reset time */ static void __iomem *reset_reg; -@@ -56,10 +61,14 @@ struct mce_regs { +@@ -56,10 +61,14 @@ static struct mce_regs mce_regs[MAX_MCE_REGS]; static int num_mce_regs; @@ -52690,7 +52076,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c printk("Restarting...\n"); while (1) out_le32(reset_reg, 0x6000000); -@@ -126,9 +135,6 @@ static int __init pas_setup_mce_regs(voi +@@ -126,9 +135,6 @@ struct pci_dev *dev; int reg; @@ -52700,7 +52086,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c /* Remap various SoC status registers for use by the MCE handler */ reg = 0; -@@ -172,7 +178,7 @@ static int __init pas_setup_mce_regs(voi +@@ -172,7 +178,7 @@ return 0; } @@ -52709,7 +52095,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c static __init void pas_init_IRQ(void) { -@@ -181,6 +187,8 @@ static __init void pas_init_IRQ(void) +@@ -181,6 +187,8 @@ unsigned long openpic_addr; const unsigned int *opprop; int naddr, opplen; @@ -52718,7 +52104,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c struct mpic *mpic; mpic_node = NULL; -@@ -213,13 +221,26 @@ static __init void pas_init_IRQ(void) +@@ -213,13 +221,26 @@ openpic_addr = of_read_number(opprop, naddr); printk(KERN_DEBUG "OpenPIC addr: %lx\n", openpic_addr); @@ -52747,7 +52133,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c of_node_put(mpic_node); of_node_put(root); } -@@ -239,6 +260,14 @@ static int pas_machine_check_handler(str +@@ -239,6 +260,14 @@ srr0 = regs->nip; srr1 = regs->msr; @@ -52762,7 +52148,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c dsisr = mfspr(SPRN_DSISR); printk(KERN_ERR "Machine Check on CPU %d\n", cpu); printk(KERN_ERR "SRR0 0x%016lx SRR1 0x%016lx\n", srr0, srr1); -@@ -295,14 +324,14 @@ static int pas_machine_check_handler(str +@@ -295,14 +324,14 @@ int i; printk(KERN_ERR "slb contents:\n"); @@ -52779,7 +52165,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c /* SRR1[62] is from MSR[62] if recoverable, so pass that back */ return !!(srr1 & 0x2); } -@@ -362,16 +391,17 @@ static inline void pasemi_pcmcia_init(vo +@@ -362,16 +391,17 @@ static struct of_device_id pasemi_bus_ids[] = { @@ -52800,7 +52186,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c pasemi_pcmcia_init(); /* Publish OF platform devices for SDC and other non-PCI devices */ -@@ -379,7 +409,7 @@ static int __init pasemi_publish_devices +@@ -379,7 +409,7 @@ return 0; } @@ -52809,7 +52195,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c /* -@@ -389,7 +419,8 @@ static int __init pas_probe(void) +@@ -389,7 +419,8 @@ { unsigned long root = of_get_flat_dt_root(); @@ -52819,7 +52205,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c return 0; hpte_init_native(); -@@ -400,7 +431,7 @@ static int __init pas_probe(void) +@@ -400,7 +431,7 @@ } define_machine(pasemi) { @@ -52828,11 +52214,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pasemi/setup.c .probe = pas_probe, .setup_arch = pas_setup_arch, .init_early = pas_init_early, -Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/low_i2c.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/powermac/low_i2c.c -+++ linux-2.6.24.7/arch/powerpc/platforms/powermac/low_i2c.c -@@ -585,8 +585,7 @@ static void __init kw_i2c_probe(void) +--- a/arch/powerpc/platforms/powermac/low_i2c.c ++++ b/arch/powerpc/platforms/powermac/low_i2c.c +@@ -585,8 +585,7 @@ struct device_node *np, *child, *parent; /* Probe keywest-i2c busses */ @@ -52842,7 +52226,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/low_i2c.c struct pmac_i2c_host_kw *host; int multibus, chans, i; -@@ -1462,9 +1461,6 @@ int __init pmac_i2c_init(void) +@@ -1462,9 +1461,6 @@ return 0; i2c_inited = 1; @@ -52852,7 +52236,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/low_i2c.c /* Probe keywest-i2c busses */ kw_i2c_probe(); -@@ -1483,7 +1479,7 @@ int __init pmac_i2c_init(void) +@@ -1483,7 +1479,7 @@ return 0; } @@ -52861,16 +52245,14 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/low_i2c.c /* Since pmac_i2c_init can be called too early for the platform device * registration, we need to do it at a later time. In our case, subsys -@@ -1515,4 +1511,4 @@ static int __init pmac_i2c_create_platfo +@@ -1515,4 +1511,4 @@ return 0; } -subsys_initcall(pmac_i2c_create_platform_devices); +machine_subsys_initcall(powermac, pmac_i2c_create_platform_devices); -Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/powermac/pci.c -+++ linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c +--- a/arch/powerpc/platforms/powermac/pci.c ++++ b/arch/powerpc/platforms/powermac/pci.c @@ -40,8 +40,6 @@ static int has_uninorth; #ifdef CONFIG_PPC64 @@ -52880,7 +52262,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c #else static int has_second_ohare; #endif /* CONFIG_PPC64 */ -@@ -314,12 +312,15 @@ static int u3_ht_skip_device(struct pci_ +@@ -314,12 +312,15 @@ /* We only allow config cycles to devices that are in OF device-tree * as we are apparently having some weird things going on with some @@ -52898,7 +52280,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c for (dn = busdn->child; dn; dn = dn->sibling) if (PCI_DN(dn) && PCI_DN(dn)->devfn == devfn) break; -@@ -344,14 +345,15 @@ static int u3_ht_skip_device(struct pci_ +@@ -344,14 +345,15 @@ + (((unsigned int)bus) << 16) \ + 0x01000000UL) @@ -52920,7 +52302,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c } else return hose->cfg_data + U3_HT_CFA1(bus, devfn, offset); } -@@ -360,14 +362,15 @@ static int u3_ht_read_config(struct pci_ +@@ -360,14 +362,15 @@ int offset, int len, u32 *val) { struct pci_controller *hose; @@ -52938,7 +52320,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c if (!addr) return PCIBIOS_DEVICE_NOT_FOUND; -@@ -397,10 +400,10 @@ static int u3_ht_read_config(struct pci_ +@@ -397,10 +400,10 @@ *val = in_8(addr); break; case 2: @@ -52951,7 +52333,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c break; } return PCIBIOS_SUCCESSFUL; -@@ -410,14 +413,15 @@ static int u3_ht_write_config(struct pci +@@ -410,14 +413,15 @@ int offset, int len, u32 val) { struct pci_controller *hose; @@ -52969,7 +52351,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c if (!addr) return PCIBIOS_DEVICE_NOT_FOUND; -@@ -439,10 +443,10 @@ static int u3_ht_write_config(struct pci +@@ -439,10 +443,10 @@ out_8(addr, val); break; case 2: @@ -52982,7 +52364,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c break; } return PCIBIOS_SUCCESSFUL; -@@ -725,7 +729,7 @@ static void __init setup_bandit(struct p +@@ -725,7 +729,7 @@ static int __init setup_uninorth(struct pci_controller *hose, struct resource *addr) { @@ -52991,7 +52373,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c has_uninorth = 1; hose->ops = ¯isc_pci_ops; hose->cfg_addr = ioremap(addr->start + 0x800000, 0x1000); -@@ -773,31 +777,72 @@ static void __init setup_u4_pcie(struct +@@ -773,31 +777,72 @@ */ hose->first_busno = 0x00; hose->last_busno = 0xff; @@ -53079,7 +52461,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c */ hose->io_base_phys = 0xf4000000; hose->pci_io_size = 0x00400000; -@@ -808,76 +853,33 @@ static void __init setup_u3_ht(struct pc +@@ -808,76 +853,33 @@ hose->pci_mem_offset = 0; hose->first_busno = 0; hose->last_busno = 0xef; @@ -53181,7 +52563,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c } #endif /* CONFIG_PPC64 */ -@@ -994,6 +996,8 @@ void __init pmac_pci_init(void) +@@ -994,6 +996,8 @@ struct device_node *np, *root; struct device_node *ht = NULL; @@ -53190,7 +52572,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c root = of_find_node_by_path("/"); if (root == NULL) { printk(KERN_CRIT "pmac_pci_init: can't find root " -@@ -1032,15 +1036,15 @@ void __init pmac_pci_init(void) +@@ -1032,15 +1036,15 @@ * future though */ if (u3_agp) { @@ -53209,7 +52591,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c #else /* CONFIG_PPC64 */ init_p2pbridge(); -@@ -1051,13 +1055,13 @@ void __init pmac_pci_init(void) +@@ -1051,13 +1055,13 @@ * some offset between bus number and domains for now when we * assign all busses should help for now */ @@ -53226,7 +52608,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c { struct device_node* node; int updatecfg = 0; -@@ -1099,24 +1103,21 @@ pmac_pci_enable_device_hook(struct pci_d +@@ -1099,24 +1103,21 @@ updatecfg = 1; } @@ -53258,7 +52640,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, L1_CACHE_BYTES >> 2); } -@@ -1124,6 +1125,18 @@ pmac_pci_enable_device_hook(struct pci_d +@@ -1124,6 +1125,18 @@ return 0; } @@ -53277,7 +52659,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c /* We power down some devices after they have been probed. They'll * be powered back on later on */ -@@ -1171,7 +1184,6 @@ void __init pmac_pcibios_after_init(void +@@ -1171,7 +1184,6 @@ of_node_put(nd); } @@ -53285,7 +52667,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c void pmac_pci_fixup_cardbus(struct pci_dev* dev) { if (!machine_is(powermac)) -@@ -1259,7 +1271,7 @@ void pmac_pci_fixup_pciata(struct pci_de +@@ -1259,7 +1271,7 @@ } } DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, pmac_pci_fixup_pciata); @@ -53294,11 +52676,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pci.c /* * Disable second function on K2-SATA, it's broken -Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pfunc_base.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/powermac/pfunc_base.c -+++ linux-2.6.24.7/arch/powerpc/platforms/powermac/pfunc_base.c -@@ -363,8 +363,7 @@ int __init pmac_pfunc_base_install(void) +--- a/arch/powerpc/platforms/powermac/pfunc_base.c ++++ b/arch/powerpc/platforms/powermac/pfunc_base.c +@@ -363,8 +363,7 @@ return 0; } @@ -53308,11 +52688,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pfunc_base.c #ifdef CONFIG_PM -Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/powermac/pic.c -+++ linux-2.6.24.7/arch/powerpc/platforms/powermac/pic.c -@@ -690,6 +690,5 @@ static int __init init_pmacpic_sysfs(voi +--- a/arch/powerpc/platforms/powermac/pic.c ++++ b/arch/powerpc/platforms/powermac/pic.c +@@ -690,6 +690,5 @@ sysdev_driver_register(&pmacpic_sysclass, &driver_pmacpic); return 0; } @@ -53320,11 +52698,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pic.c -subsys_initcall(init_pmacpic_sysfs); +machine_subsys_initcall(powermac, init_pmacpic_sysfs); -Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pmac.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/powermac/pmac.h -+++ linux-2.6.24.7/arch/powerpc/platforms/powermac/pmac.h -@@ -26,7 +26,7 @@ extern void pmac_pci_init(void); +--- a/arch/powerpc/platforms/powermac/pmac.h ++++ b/arch/powerpc/platforms/powermac/pmac.h +@@ -26,7 +26,7 @@ extern void pmac_nvram_update(void); extern unsigned char pmac_nvram_read_byte(int addr); extern void pmac_nvram_write_byte(int addr, unsigned char val); @@ -53333,10 +52709,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/pmac.h extern void pmac_pcibios_after_init(void); extern int of_show_percpuinfo(struct seq_file *m, int i); -Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/powermac/setup.c -+++ linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c +--- a/arch/powerpc/platforms/powermac/setup.c ++++ b/arch/powerpc/platforms/powermac/setup.c @@ -51,6 +51,8 @@ #include <linux/root_dev.h> #include <linux/bitops.h> @@ -53355,7 +52729,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c #include <asm/mmu_context.h> #include <asm/iommu.h> #include <asm/smu.h> -@@ -94,7 +94,6 @@ extern struct machdep_calls pmac_md; +@@ -94,7 +94,6 @@ #define DEFAULT_ROOT_DEVICE Root_SDA1 /* sda1 - slightly silly choice */ #ifdef CONFIG_PPC64 @@ -53363,7 +52737,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c int sccdbg; #endif -@@ -398,17 +397,13 @@ static int initializing = 1; +@@ -398,17 +397,13 @@ static int pmac_late_init(void) { @@ -53382,7 +52756,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c /* * This is __init_refok because we check for "initializing" before -@@ -535,9 +530,6 @@ static int __init pmac_declare_of_platfo +@@ -535,9 +530,6 @@ if (machine_is(chrp)) return -1; @@ -53392,7 +52766,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c np = of_find_node_by_name(NULL, "valkyrie"); if (np) of_platform_device_create(np, "valkyrie", NULL); -@@ -552,8 +544,7 @@ static int __init pmac_declare_of_platfo +@@ -552,8 +544,7 @@ return 0; } @@ -53402,7 +52776,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c /* * Called very early, MMU is off, device-tree isn't unflattened -@@ -613,9 +604,11 @@ static int pmac_pci_probe_mode(struct pc +@@ -613,9 +604,11 @@ /* We need to use normal PCI probing for the AGP bus, * since the device for the AGP bridge isn't in the tree. @@ -53415,11 +52789,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/setup.c return PCI_PROBE_NORMAL; return PCI_PROBE_DEVTREE; } -Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/time.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/powermac/time.c -+++ linux-2.6.24.7/arch/powerpc/platforms/powermac/time.c -@@ -84,12 +84,14 @@ long __init pmac_time_init(void) +--- a/arch/powerpc/platforms/powermac/time.c ++++ b/arch/powerpc/platforms/powermac/time.c +@@ -84,12 +84,14 @@ return delta; } @@ -53434,11 +52806,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/powermac/time.c static unsigned long from_rtc_time(struct rtc_time *tm) { -Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/ps3/Kconfig -+++ linux-2.6.24.7/arch/powerpc/platforms/ps3/Kconfig -@@ -61,17 +61,6 @@ config PS3_DYNAMIC_DMA +--- a/arch/powerpc/platforms/ps3/Kconfig ++++ b/arch/powerpc/platforms/ps3/Kconfig +@@ -61,17 +61,6 @@ This support is mainly for Linux kernel development. If unsure, say N. @@ -53456,7 +52826,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/Kconfig config PS3_VUART depends on PPC_PS3 tristate -@@ -138,4 +127,17 @@ config PS3_FLASH +@@ -138,4 +127,17 @@ be disabled on the kernel command line using "ps3flash=off", to not allocate this fixed buffer. @@ -53474,10 +52844,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/Kconfig + oprofile and perfmon2, then say Y or M, otherwise say N. + endmenu -Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/ps3/device-init.c -+++ linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c +--- a/arch/powerpc/platforms/ps3/device-init.c ++++ b/arch/powerpc/platforms/ps3/device-init.c @@ -23,6 +23,7 @@ #include <linux/kernel.h> #include <linux/kthread.h> @@ -53576,7 +52944,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c /** * ps3_setup_gelic_device - Setup and register a gelic device instance. * -@@ -238,166 +322,6 @@ static int __init ps3_setup_vuart_device +@@ -238,166 +322,6 @@ return result; } @@ -53743,7 +53111,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c static int ps3_setup_storage_dev(const struct ps3_repository_device *repo, enum ps3_match_id match_id) { -@@ -449,16 +373,6 @@ static int ps3_setup_storage_dev(const s +@@ -449,16 +373,6 @@ goto fail_find_interrupt; } @@ -53760,7 +53128,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c for (i = 0; i < num_regions; i++) { unsigned int id; u64 start, size; -@@ -494,7 +408,6 @@ static int ps3_setup_storage_dev(const s +@@ -494,7 +408,6 @@ fail_device_register: fail_read_region: @@ -53768,7 +53136,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c fail_find_interrupt: kfree(p); fail_malloc: -@@ -659,62 +572,268 @@ static int ps3_register_repository_devic +@@ -659,62 +572,268 @@ return result; } @@ -54065,7 +53433,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c * ps3_start_probe_thread - Starts the background probe thread. * */ -@@ -723,7 +842,7 @@ static int __init ps3_start_probe_thread +@@ -723,7 +842,7 @@ { int result; struct task_struct *task; @@ -54074,7 +53442,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c pr_debug(" -> %s:%d\n", __func__, __LINE__); -@@ -746,7 +865,8 @@ static int __init ps3_start_probe_thread +@@ -746,7 +865,8 @@ return -ENODEV; } @@ -54084,7 +53452,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c if (IS_ERR(task)) { result = PTR_ERR(task); -@@ -755,6 +875,9 @@ static int __init ps3_start_probe_thread +@@ -755,6 +875,9 @@ return result; } @@ -54094,7 +53462,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c pr_debug(" <- %s:%d\n", __func__, __LINE__); return 0; } -@@ -787,6 +910,8 @@ static int __init ps3_register_devices(v +@@ -787,6 +910,8 @@ ps3_register_sound_devices(); @@ -54103,10 +53471,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/device-init.c pr_debug(" <- %s:%d\n", __func__, __LINE__); return 0; } -Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/ps3/mm.c -+++ linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c +--- a/arch/powerpc/platforms/ps3/mm.c ++++ b/arch/powerpc/platforms/ps3/mm.c @@ -36,11 +36,6 @@ #endif @@ -54119,7 +53485,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c #if defined(CONFIG_PS3_DYNAMIC_DMA) USE_DYNAMIC_DMA = 1, #else -@@ -137,11 +132,8 @@ static struct map map; +@@ -137,11 +132,8 @@ unsigned long ps3_mm_phys_to_lpar(unsigned long phys_addr) { BUG_ON(is_kernel_addr(phys_addr)); @@ -54133,7 +53499,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c } EXPORT_SYMBOL(ps3_mm_phys_to_lpar); -@@ -309,7 +301,7 @@ static int __init ps3_mm_add_memory(void +@@ -309,7 +301,7 @@ BUG_ON(!mem_init_done); @@ -54142,7 +53508,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c start_pfn = start_addr >> PAGE_SHIFT; nr_pages = (map.r1.size + PAGE_SIZE - 1) >> PAGE_SHIFT; -@@ -359,7 +351,7 @@ static unsigned long dma_sb_lpar_to_bus( +@@ -359,7 +351,7 @@ static void __maybe_unused _dma_dump_region(const struct ps3_dma_region *r, const char *func, int line) { @@ -54151,7 +53517,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c r->dev->dev_id); DBG("%s:%d: page_size %u\n", func, line, r->page_size); DBG("%s:%d: bus_addr %lxh\n", func, line, r->bus_addr); -@@ -394,7 +386,7 @@ struct dma_chunk { +@@ -394,7 +386,7 @@ static void _dma_dump_chunk (const struct dma_chunk* c, const char* func, int line) { @@ -54160,7 +53526,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c c->region->dev->bus_id, c->region->dev->dev_id); DBG("%s:%d: r.bus_addr %lxh\n", func, line, c->region->bus_addr); DBG("%s:%d: r.page_size %u\n", func, line, c->region->page_size); -@@ -658,7 +650,7 @@ static int dma_sb_region_create(struct p +@@ -658,7 +650,7 @@ BUG_ON(!r); if (!r->dev->bus_id) { @@ -54169,7 +53535,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c r->dev->bus_id, r->dev->dev_id); return 0; } -@@ -724,7 +716,7 @@ static int dma_sb_region_free(struct ps3 +@@ -724,7 +716,7 @@ BUG_ON(!r); if (!r->dev->bus_id) { @@ -54178,7 +53544,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c r->dev->bus_id, r->dev->dev_id); return 0; } -@@ -1007,7 +999,7 @@ static int dma_sb_region_create_linear(s +@@ -1007,7 +999,7 @@ if (r->offset + r->len > map.rm.size) { /* Map (part of) 2nd RAM chunk */ @@ -54187,11 +53553,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/mm.c len = r->len; if (r->offset >= map.rm.size) virt_addr += r->offset - map.rm.size; -Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/platform.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/ps3/platform.h -+++ linux-2.6.24.7/arch/powerpc/platforms/ps3/platform.h -@@ -89,13 +89,11 @@ enum ps3_dev_type { +--- a/arch/powerpc/platforms/ps3/platform.h ++++ b/arch/powerpc/platforms/ps3/platform.h +@@ -89,13 +89,11 @@ PS3_DEV_TYPE_STOR_ROM = TYPE_ROM, /* 5 */ PS3_DEV_TYPE_SB_GPIO = 6, PS3_DEV_TYPE_STOR_FLASH = TYPE_RBC, /* 14 */ @@ -54206,7 +53570,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/platform.h int ps3_repository_read_bus_type(unsigned int bus_index, enum ps3_bus_type *bus_type); int ps3_repository_read_bus_num_dev(unsigned int bus_index, -@@ -119,7 +117,7 @@ enum ps3_reg_type { +@@ -119,7 +117,7 @@ int ps3_repository_read_dev_str(unsigned int bus_index, unsigned int dev_index, const char *dev_str, u64 *value); int ps3_repository_read_dev_id(unsigned int bus_index, unsigned int dev_index, @@ -54215,7 +53579,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/platform.h int ps3_repository_read_dev_type(unsigned int bus_index, unsigned int dev_index, enum ps3_dev_type *dev_type); int ps3_repository_read_dev_intr(unsigned int bus_index, -@@ -138,21 +136,17 @@ int ps3_repository_read_dev_reg(unsigned +@@ -138,21 +136,17 @@ /* repository bus enumerators */ struct ps3_repository_device { @@ -54243,7 +53607,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/platform.h int ps3_repository_find_devices(enum ps3_bus_type bus_type, int (*callback)(const struct ps3_repository_device *repo)); int ps3_repository_find_bus(enum ps3_bus_type bus_type, unsigned int from, -@@ -186,10 +180,10 @@ int ps3_repository_read_stor_dev_region( +@@ -186,10 +180,10 @@ unsigned int dev_index, unsigned int region_index, unsigned int *region_id, u64 *region_start, u64 *region_size); @@ -54257,7 +53621,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/platform.h int ps3_repository_read_rm_base(unsigned int ppe_id, u64 *rm_base); int ps3_repository_read_rm_size(unsigned int ppe_id, u64 *rm_size); int ps3_repository_read_region_total(u64 *region_total); -@@ -200,9 +194,15 @@ int ps3_repository_read_mm_info(u64 *rm_ +@@ -200,9 +194,15 @@ int ps3_repository_read_num_be(unsigned int *num_be); int ps3_repository_read_be_node_id(unsigned int be_index, u64 *node_id); @@ -54273,11 +53637,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/platform.h /* repository 'Other OS' area */ int ps3_repository_read_boot_dat_addr(u64 *lpar_addr); -Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/ps3/repository.c -+++ linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c -@@ -33,7 +33,7 @@ enum ps3_lpar_id { +--- a/arch/powerpc/platforms/ps3/repository.c ++++ b/arch/powerpc/platforms/ps3/repository.c +@@ -33,7 +33,7 @@ }; #define dump_field(_a, _b) _dump_field(_a, _b, __func__, __LINE__) @@ -54286,7 +53648,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c { #if defined(DEBUG) char s[16]; -@@ -50,8 +50,8 @@ static void _dump_field(const char *hdr, +@@ -50,8 +50,8 @@ #define dump_node_name(_a, _b, _c, _d, _e) \ _dump_node_name(_a, _b, _c, _d, _e, __func__, __LINE__) @@ -54297,7 +53659,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c { pr_debug("%s:%d: lpar: %u\n", func, line, lpar_id); _dump_field("n1: ", n1, func, line); -@@ -63,7 +63,7 @@ static void _dump_node_name (unsigned in +@@ -63,7 +63,7 @@ #define dump_node(_a, _b, _c, _d, _e, _f, _g) \ _dump_node(_a, _b, _c, _d, _e, _f, _g, __func__, __LINE__) static void _dump_node(unsigned int lpar_id, u64 n1, u64 n2, u64 n3, u64 n4, @@ -54306,7 +53668,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c { pr_debug("%s:%d: lpar: %u\n", func, line, lpar_id); _dump_field("n1: ", n1, func, line); -@@ -165,21 +165,18 @@ int ps3_repository_read_bus_str(unsigned +@@ -165,21 +165,18 @@ make_first_field("bus", bus_index), make_field(bus_str, 0), 0, 0, @@ -54331,7 +53693,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c return result; } -@@ -193,7 +190,7 @@ int ps3_repository_read_bus_type(unsigne +@@ -193,7 +190,7 @@ make_first_field("bus", bus_index), make_field("type", 0), 0, 0, @@ -54340,7 +53702,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *bus_type = v1; return result; } -@@ -208,7 +205,7 @@ int ps3_repository_read_bus_num_dev(unsi +@@ -208,7 +205,7 @@ make_first_field("bus", bus_index), make_field("num_dev", 0), 0, 0, @@ -54349,7 +53711,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *num_dev = v1; return result; } -@@ -221,22 +218,20 @@ int ps3_repository_read_dev_str(unsigned +@@ -221,22 +218,20 @@ make_field("dev", dev_index), make_field(dev_str, 0), 0, @@ -54375,7 +53737,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c return result; } -@@ -251,14 +246,14 @@ int ps3_repository_read_dev_type(unsigne +@@ -251,14 +246,14 @@ make_field("dev", dev_index), make_field("type", 0), 0, @@ -54392,7 +53754,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c { int result; u64 v1; -@@ -287,7 +282,7 @@ int ps3_repository_read_dev_reg_type(uns +@@ -287,7 +282,7 @@ make_field("dev", dev_index), make_field("reg", reg_index), make_field("type", 0), @@ -54401,7 +53763,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *reg_type = v1; return result; } -@@ -332,7 +327,7 @@ int ps3_repository_find_device(struct ps +@@ -332,7 +327,7 @@ return result; } @@ -54410,7 +53772,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c __func__, __LINE__, tmp.bus_type, tmp.bus_index, tmp.bus_id, num_dev); -@@ -349,47 +344,95 @@ int ps3_repository_find_device(struct ps +@@ -349,47 +344,95 @@ return result; } @@ -54534,7 +53896,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *repo = tmp; return 0; } -@@ -402,50 +445,34 @@ int __devinit ps3_repository_find_device +@@ -402,50 +445,34 @@ pr_debug(" -> %s:%d: find bus_type %u\n", __func__, __LINE__, bus_type); @@ -54607,7 +53969,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } pr_debug(" <- %s:%d\n", __func__, __LINE__); -@@ -561,7 +588,7 @@ int ps3_repository_read_stor_dev_port(un +@@ -561,7 +588,7 @@ make_first_field("bus", bus_index), make_field("dev", dev_index), make_field("port", 0), @@ -54616,7 +53978,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_stor_dev_blk_size(unsigned int bus_index, -@@ -571,7 +598,7 @@ int ps3_repository_read_stor_dev_blk_siz +@@ -571,7 +598,7 @@ make_first_field("bus", bus_index), make_field("dev", dev_index), make_field("blk_size", 0), @@ -54625,7 +53987,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_stor_dev_num_blocks(unsigned int bus_index, -@@ -581,7 +608,7 @@ int ps3_repository_read_stor_dev_num_blo +@@ -581,7 +608,7 @@ make_first_field("bus", bus_index), make_field("dev", dev_index), make_field("n_blocks", 0), @@ -54634,7 +53996,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_stor_dev_num_regions(unsigned int bus_index, -@@ -594,7 +621,7 @@ int ps3_repository_read_stor_dev_num_reg +@@ -594,7 +621,7 @@ make_first_field("bus", bus_index), make_field("dev", dev_index), make_field("n_regs", 0), @@ -54643,7 +54005,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *num_regions = v1; return result; } -@@ -611,7 +638,7 @@ int ps3_repository_read_stor_dev_region_ +@@ -611,7 +638,7 @@ make_field("dev", dev_index), make_field("region", region_index), make_field("id", 0), @@ -54652,7 +54014,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *region_id = v1; return result; } -@@ -624,7 +651,7 @@ int ps3_repository_read_stor_dev_region_ +@@ -624,7 +651,7 @@ make_field("dev", dev_index), make_field("region", region_index), make_field("size", 0), @@ -54661,7 +54023,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_stor_dev_region_start(unsigned int bus_index, -@@ -635,7 +662,7 @@ int ps3_repository_read_stor_dev_region_ +@@ -635,7 +662,7 @@ make_field("dev", dev_index), make_field("region", region_index), make_field("start", 0), @@ -54670,7 +54032,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_stor_dev_info(unsigned int bus_index, -@@ -684,6 +711,35 @@ int ps3_repository_read_stor_dev_region( +@@ -684,6 +711,35 @@ return result; } @@ -54706,7 +54068,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c int ps3_repository_read_rm_size(unsigned int ppe_id, u64 *rm_size) { return read_node(PS3_LPAR_ID_CURRENT, -@@ -691,7 +747,7 @@ int ps3_repository_read_rm_size(unsigned +@@ -691,7 +747,7 @@ make_field("pu", 0), ppe_id, make_field("rm_size", 0), @@ -54715,7 +54077,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_region_total(u64 *region_total) -@@ -700,7 +756,7 @@ int ps3_repository_read_region_total(u64 +@@ -700,7 +756,7 @@ make_first_field("bi", 0), make_field("rgntotal", 0), 0, 0, @@ -54724,7 +54086,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } /** -@@ -736,7 +792,7 @@ int ps3_repository_read_num_spu_reserved +@@ -736,7 +792,7 @@ make_first_field("bi", 0), make_field("spun", 0), 0, 0, @@ -54733,7 +54095,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *num_spu_reserved = v1; return result; } -@@ -755,7 +811,7 @@ int ps3_repository_read_num_spu_resource +@@ -755,7 +811,7 @@ make_first_field("bi", 0), make_field("spursvn", 0), 0, 0, @@ -54742,7 +54104,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *num_resource_id = v1; return result; } -@@ -768,7 +824,7 @@ int ps3_repository_read_num_spu_resource +@@ -768,7 +824,7 @@ */ int ps3_repository_read_spu_resource_id(unsigned int res_index, @@ -54751,7 +54113,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c { int result; u64 v1; -@@ -785,14 +841,14 @@ int ps3_repository_read_spu_resource_id( +@@ -785,14 +841,14 @@ return result; } @@ -54768,7 +54130,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_boot_dat_size(unsigned int *size) -@@ -805,7 +861,7 @@ int ps3_repository_read_boot_dat_size(un +@@ -805,7 +861,7 @@ make_field("boot_dat", 0), make_field("size", 0), 0, @@ -54777,7 +54139,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *size = v1; return result; } -@@ -820,7 +876,7 @@ int ps3_repository_read_vuart_av_port(un +@@ -820,7 +876,7 @@ make_field("vir_uart", 0), make_field("port", 0), make_field("avset", 0), @@ -54786,7 +54148,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *port = v1; return result; } -@@ -835,7 +891,7 @@ int ps3_repository_read_vuart_sysmgr_por +@@ -835,7 +891,7 @@ make_field("vir_uart", 0), make_field("port", 0), make_field("sysmgr", 0), @@ -54795,7 +54157,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c *port = v1; return result; } -@@ -856,6 +912,10 @@ int ps3_repository_read_boot_dat_info(u6 +@@ -856,6 +912,10 @@ : ps3_repository_read_boot_dat_size(size); } @@ -54806,7 +54168,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c int ps3_repository_read_num_be(unsigned int *num_be) { int result; -@@ -866,11 +926,17 @@ int ps3_repository_read_num_be(unsigned +@@ -866,11 +926,17 @@ 0, 0, 0, @@ -54825,7 +54187,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c int ps3_repository_read_be_node_id(unsigned int be_index, u64 *node_id) { return read_node(PS3_LPAR_ID_PME, -@@ -878,7 +944,23 @@ int ps3_repository_read_be_node_id(unsig +@@ -878,7 +944,23 @@ 0, 0, 0, @@ -54850,7 +54212,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_tb_freq(u64 node_id, u64 *tb_freq) -@@ -888,7 +970,7 @@ int ps3_repository_read_tb_freq(u64 node +@@ -888,7 +970,7 @@ node_id, make_field("clock", 0), 0, @@ -54859,7 +54221,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c } int ps3_repository_read_be_tb_freq(unsigned int be_index, u64 *tb_freq) -@@ -897,11 +979,29 @@ int ps3_repository_read_be_tb_freq(unsig +@@ -897,11 +979,29 @@ u64 node_id; *tb_freq = 0; @@ -54890,7 +54252,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c #if defined(DEBUG) int ps3_repository_dump_resource_info(const struct ps3_repository_device *repo) -@@ -1034,7 +1134,7 @@ static int dump_device_info(struct ps3_r +@@ -1034,7 +1134,7 @@ continue; } @@ -54899,7 +54261,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c __LINE__, repo->bus_index, repo->dev_index, repo->dev_type, repo->dev_id); -@@ -1091,7 +1191,7 @@ int ps3_repository_dump_bus_info(void) +@@ -1091,7 +1191,7 @@ continue; } @@ -54908,10 +54270,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/repository.c __func__, __LINE__, repo.bus_index, repo.bus_type, repo.bus_id, num_dev); -Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/spu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/ps3/spu.c -+++ linux-2.6.24.7/arch/powerpc/platforms/ps3/spu.c +--- a/arch/powerpc/platforms/ps3/spu.c ++++ b/arch/powerpc/platforms/ps3/spu.c @@ -28,6 +28,7 @@ #include <asm/spu_priv1.h> #include <asm/lv1call.h> @@ -54920,7 +54280,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/spu.c #include "platform.h" /* spu_management_ops */ -@@ -419,10 +420,34 @@ static int ps3_init_affinity(void) +@@ -419,10 +420,34 @@ return 0; } @@ -54955,7 +54315,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/spu.c .init_affinity = ps3_init_affinity, }; -@@ -505,8 +530,6 @@ static void mfc_sr1_set(struct spu *spu, +@@ -505,8 +530,6 @@ static const u64 allowed = ~(MFC_STATE1_LOCAL_STORAGE_DECODE_MASK | MFC_STATE1_PROBLEM_STATE_MASK); @@ -54964,11 +54324,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/spu.c BUG_ON((sr1 & allowed) != (spu_pdata(spu)->cache.sr1 & allowed)); spu_pdata(spu)->cache.sr1 = sr1; -Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/ps3/system-bus.c -+++ linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c -@@ -42,8 +42,8 @@ struct { +--- a/arch/powerpc/platforms/ps3/system-bus.c ++++ b/arch/powerpc/platforms/ps3/system-bus.c +@@ -42,8 +42,8 @@ int gpu; } static usage_hack; @@ -54979,7 +54337,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c { return dev->bus_id == bus_id && dev->dev_id == dev_id; } -@@ -182,8 +182,8 @@ int ps3_open_hv_device(struct ps3_system +@@ -182,8 +182,8 @@ case PS3_MATCH_ID_SYSTEM_MANAGER: pr_debug("%s:%d: unsupported match_id: %u\n", __func__, __LINE__, dev->match_id); @@ -54990,7 +54348,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c BUG(); return -EINVAL; -@@ -220,8 +220,8 @@ int ps3_close_hv_device(struct ps3_syste +@@ -220,8 +220,8 @@ case PS3_MATCH_ID_SYSTEM_MANAGER: pr_debug("%s:%d: unsupported match_id: %u\n", __func__, __LINE__, dev->match_id); @@ -55001,7 +54359,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c BUG(); return -EINVAL; -@@ -240,7 +240,7 @@ EXPORT_SYMBOL_GPL(ps3_close_hv_device); +@@ -240,7 +240,7 @@ static void _dump_mmio_region(const struct ps3_mmio_region* r, const char* func, int line) { @@ -55010,7 +54368,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c r->dev->dev_id); pr_debug("%s:%d: bus_addr %lxh\n", func, line, r->bus_addr); pr_debug("%s:%d: len %lxh\n", func, line, r->len); -@@ -715,6 +715,7 @@ int ps3_system_bus_device_register(struc +@@ -715,6 +715,7 @@ static unsigned int dev_ioc0_count; static unsigned int dev_sb_count; static unsigned int dev_vuart_count; @@ -55018,7 +54376,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c if (!dev->core.parent) dev->core.parent = &ps3_system_bus; -@@ -737,6 +738,10 @@ int ps3_system_bus_device_register(struc +@@ -737,6 +738,10 @@ snprintf(dev->core.bus_id, sizeof(dev->core.bus_id), "vuart_%02x", ++dev_vuart_count); break; @@ -55029,10 +54387,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/ps3/system-bus.c default: BUG(); }; -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/eeh.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c +--- a/arch/powerpc/platforms/pseries/eeh.c ++++ b/arch/powerpc/platforms/pseries/eeh.c @@ -29,6 +29,8 @@ #include <linux/rbtree.h> #include <linux/seq_file.h> @@ -55042,7 +54398,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c #include <asm/atomic.h> #include <asm/eeh.h> #include <asm/eeh_event.h> -@@ -169,7 +171,6 @@ static void rtas_slot_error_detail(struc +@@ -169,7 +171,6 @@ */ static size_t gather_pci_data(struct pci_dn *pdn, char * buf, size_t len) { @@ -55050,7 +54406,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c struct pci_dev *dev = pdn->pcidev; u32 cfg; int cap, i; -@@ -243,12 +244,12 @@ static size_t gather_pci_data(struct pci +@@ -243,12 +244,12 @@ /* Gather status on devices under the bridge */ if (dev->class >> 16 == PCI_BASE_CLASS_BRIDGE) { @@ -55066,7 +54422,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c } } -@@ -372,7 +373,7 @@ struct device_node * find_device_pe(stru +@@ -372,7 +373,7 @@ return dn; } @@ -55075,7 +54431,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c * Mark the device driver too, so that it can see the failure * immediately; this is critical, since some drivers poll * status registers in interrupts ... If a driver is polling, -@@ -380,9 +381,11 @@ struct device_node * find_device_pe(stru +@@ -380,9 +381,11 @@ * an interrupt context, which is bad. */ @@ -55089,7 +54445,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c if (PCI_DN(dn)) { /* Mark the pci device driver too */ struct pci_dev *dev = PCI_DN(dn)->pcidev; -@@ -392,10 +395,8 @@ static void __eeh_mark_slot (struct devi +@@ -392,10 +395,8 @@ if (dev && dev->driver) dev->error_state = pci_channel_io_frozen; @@ -55101,7 +54457,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c } } -@@ -415,19 +416,19 @@ void eeh_mark_slot (struct device_node * +@@ -415,19 +416,19 @@ if (dev) dev->error_state = pci_channel_io_frozen; @@ -55127,7 +54483,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c } } -@@ -444,7 +445,7 @@ void eeh_clear_slot (struct device_node +@@ -444,7 +445,7 @@ PCI_DN(dn)->eeh_mode &= ~mode_flag; PCI_DN(dn)->eeh_check_count = 0; @@ -55136,7 +54492,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c spin_unlock_irqrestore(&confirm_error_lock, flags); } -@@ -480,6 +481,7 @@ int eeh_dn_check_failure(struct device_n +@@ -480,6 +481,7 @@ no_dn++; return 0; } @@ -55144,7 +54500,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c pdn = PCI_DN(dn); /* Access to IO BARs might get this far and still not want checking. */ -@@ -545,7 +547,7 @@ int eeh_dn_check_failure(struct device_n +@@ -545,7 +547,7 @@ /* Note that config-io to empty slots may fail; * they are empty when they don't have children. */ @@ -55153,7 +54509,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c false_positives++; pdn->eeh_false_positives ++; rc = 0; -@@ -848,11 +850,8 @@ void eeh_restore_bars(struct pci_dn *pdn +@@ -848,11 +850,8 @@ if ((pdn->eeh_mode & EEH_MODE_SUPPORTED) && !IS_BRIDGE(pdn->class_code)) __restore_bars (pdn); @@ -55166,7 +54522,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c } /** -@@ -1130,7 +1129,8 @@ static void eeh_add_device_early(struct +@@ -1130,7 +1129,8 @@ void eeh_add_device_tree_early(struct device_node *dn) { struct device_node *sib; @@ -55176,11 +54532,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh.c eeh_add_device_tree_early(sib); eeh_add_device_early(dn); } -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh_driver.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/eeh_driver.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh_driver.c -@@ -310,8 +310,6 @@ struct pci_dn * handle_eeh_events (struc +--- a/arch/powerpc/platforms/pseries/eeh_driver.c ++++ b/arch/powerpc/platforms/pseries/eeh_driver.c +@@ -310,8 +310,6 @@ const char *location, *pci_str, *drv_str; frozen_dn = find_device_pe(event->dn); @@ -55189,7 +54543,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh_driver.c if (!frozen_dn) { location = of_get_property(event->dn, "ibm,loc-code", NULL); -@@ -321,6 +319,8 @@ struct pci_dn * handle_eeh_events (struc +@@ -321,6 +319,8 @@ location, pci_name(event->dev)); return NULL; } @@ -55198,7 +54552,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh_driver.c location = of_get_property(frozen_dn, "ibm,loc-code", NULL); location = location ? location : "unknown"; -@@ -354,13 +354,6 @@ struct pci_dn * handle_eeh_events (struc +@@ -354,13 +354,6 @@ if (frozen_pdn->eeh_freeze_count > EEH_MAX_ALLOWED_FREEZES) goto excess_failures; @@ -55212,7 +54566,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh_driver.c printk(KERN_WARNING "EEH: This PCI device has failed %d times in the last hour:\n", frozen_pdn->eeh_freeze_count); -@@ -376,6 +369,14 @@ struct pci_dn * handle_eeh_events (struc +@@ -376,6 +369,14 @@ */ pci_walk_bus(frozen_bus, eeh_report_error, &result); @@ -55227,11 +54581,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/eeh_driver.c /* Since rtas may enable MMIO when posting the error log, * don't post the error log until after all dev drivers * have been informed. -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/iommu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/iommu.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/iommu.c -@@ -251,7 +251,7 @@ static void iommu_table_setparms(struct +--- a/arch/powerpc/platforms/pseries/iommu.c ++++ b/arch/powerpc/platforms/pseries/iommu.c +@@ -251,7 +251,7 @@ const unsigned long *basep; const u32 *sizep; @@ -55240,7 +54592,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/iommu.c basep = of_get_property(node, "linux,tce-base", NULL); sizep = of_get_property(node, "linux,tce-size", NULL); -@@ -296,11 +296,12 @@ static void iommu_table_setparms(struct +@@ -296,11 +296,12 @@ static void iommu_table_setparms_lpar(struct pci_controller *phb, struct device_node *dn, struct iommu_table *tbl, @@ -55255,7 +54607,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/iommu.c of_parse_dma_window(dn, dma_window, &tbl->it_index, &offset, &size); tbl->it_base = 0; -@@ -420,17 +421,10 @@ static void pci_dma_bus_setup_pSeriesLP( +@@ -420,17 +421,10 @@ pdn->full_name, ppci->iommu_table); if (!ppci->iommu_table) { @@ -55275,7 +54627,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/iommu.c ppci->iommu_table = iommu_init_table(tbl, ppci->phb->node); DBG(" created table: %p\n", ppci->iommu_table); } -@@ -523,14 +517,10 @@ static void pci_dma_dev_setup_pSeriesLP( +@@ -523,14 +517,10 @@ pci = PCI_DN(pdn); if (!pci->iommu_table) { @@ -55292,7 +54644,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/iommu.c pci->iommu_table = iommu_init_table(tbl, pci->phb->node); DBG(" created table: %p\n", pci->iommu_table); } else { -@@ -556,7 +546,7 @@ static int iommu_reconfig_notifier(struc +@@ -556,7 +546,7 @@ case PSERIES_RECONFIG_REMOVE: if (pci && pci->iommu_table && of_get_property(np, "ibm,dma-window", NULL)) @@ -55301,11 +54653,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/iommu.c break; default: err = NOTIFY_DONE; -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/pci_dlpar.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c -@@ -83,7 +83,7 @@ EXPORT_SYMBOL_GPL(pcibios_remove_pci_dev +--- a/arch/powerpc/platforms/pseries/pci_dlpar.c ++++ b/arch/powerpc/platforms/pseries/pci_dlpar.c +@@ -83,7 +83,7 @@ /* Must be called before pci_bus_add_devices */ void @@ -55314,7 +54664,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c { struct pci_dev *dev; -@@ -98,8 +98,6 @@ pcibios_fixup_new_pci_devices(struct pci +@@ -98,8 +98,6 @@ /* Fill device archdata and setup iommu table */ pcibios_setup_new_device(dev); @@ -55323,7 +54673,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c pci_read_irq_line(dev); for (i = 0; i < PCI_NUM_RESOURCES; i++) { struct resource *r = &dev->resource[i]; -@@ -132,8 +130,8 @@ pcibios_pci_config_bridge(struct pci_dev +@@ -132,8 +130,8 @@ pci_scan_child_bus(child_bus); @@ -55334,7 +54684,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c /* Make the discovered devices available */ pci_bus_add_devices(child_bus); -@@ -169,7 +167,7 @@ pcibios_add_pci_devices(struct pci_bus * +@@ -169,7 +167,7 @@ /* use ofdt-based probe */ of_scan_bus(dn, bus); if (!list_empty(&bus->devices)) { @@ -55343,7 +54693,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c pci_bus_add_devices(bus); eeh_add_device_tree_late(bus); } -@@ -178,7 +176,7 @@ pcibios_add_pci_devices(struct pci_bus * +@@ -178,7 +176,7 @@ slotno = PCI_SLOT(PCI_DN(dn->child)->devfn); num = pci_scan_slot(bus, PCI_DEVFN(slotno, 0)); if (num) { @@ -55352,7 +54702,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c pci_bus_add_devices(bus); eeh_add_device_tree_late(bus); } -@@ -208,7 +206,7 @@ struct pci_controller * __devinit init_p +@@ -208,7 +206,7 @@ eeh_add_device_tree_early(dn); scan_phb(phb); @@ -55361,11 +54711,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/pci_dlpar.c pci_bus_add_devices(phb->bus); eeh_add_device_tree_late(phb->bus); -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/plpar_wrappers.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/plpar_wrappers.h -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/plpar_wrappers.h -@@ -8,11 +8,6 @@ static inline long poll_pending(void) +--- a/arch/powerpc/platforms/pseries/plpar_wrappers.h ++++ b/arch/powerpc/platforms/pseries/plpar_wrappers.h +@@ -8,11 +8,6 @@ return plpar_hcall_norets(H_POLL_PENDING); } @@ -55377,10 +54725,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/plpar_wrappers.h static inline long cede_processor(void) { return plpar_hcall_norets(H_CEDE); -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/smp.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/smp.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/smp.c +--- a/arch/powerpc/platforms/pseries/smp.c ++++ b/arch/powerpc/platforms/pseries/smp.c @@ -46,6 +46,7 @@ #include <asm/pSeries_reconfig.h> #include <asm/mpic.h> @@ -55389,7 +54735,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/smp.c #include "plpar_wrappers.h" #include "pseries.h" -@@ -202,7 +203,7 @@ static int smp_pSeries_cpu_bootable(unsi +@@ -202,7 +203,7 @@ */ if (system_state < SYSTEM_RUNNING && cpu_has_feature(CPU_FTR_SMT) && @@ -55398,11 +54744,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/smp.c return 0; return 1; -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/xics.c -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c -@@ -87,19 +87,25 @@ static int ibm_int_off; +--- a/arch/powerpc/platforms/pseries/xics.c ++++ b/arch/powerpc/platforms/pseries/xics.c +@@ -87,19 +87,25 @@ /* Direct HW low level accessors */ @@ -55434,7 +54778,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c } static inline void direct_qirr_info(int n_cpu, u8 value) -@@ -111,7 +117,7 @@ static inline void direct_qirr_info(int +@@ -111,7 +117,7 @@ /* LPAR low level accessors */ @@ -55443,7 +54787,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c { unsigned long lpar_rc; unsigned long return_value; -@@ -122,7 +128,7 @@ static inline unsigned int lpar_xirr_inf +@@ -122,7 +128,7 @@ return (unsigned int)return_value; } @@ -55452,7 +54796,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c { unsigned long lpar_rc; unsigned long val64 = value & 0xffffffff; -@@ -133,7 +139,7 @@ static inline void lpar_xirr_info_set(in +@@ -133,7 +139,7 @@ val64); } @@ -55461,7 +54805,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c { unsigned long lpar_rc; -@@ -275,21 +281,19 @@ static unsigned int xics_startup(unsigne +@@ -275,21 +281,19 @@ static void xics_eoi_direct(unsigned int virq) { @@ -55485,7 +54829,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c } static inline unsigned int xics_remap_irq(unsigned int vec) -@@ -312,16 +316,12 @@ static inline unsigned int xics_remap_ir +@@ -312,16 +316,12 @@ static unsigned int xics_get_irq_direct(void) { @@ -55504,7 +54848,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c } #ifdef CONFIG_SMP -@@ -387,12 +387,12 @@ void xics_cause_IPI(int cpu) +@@ -387,12 +387,12 @@ #endif /* CONFIG_SMP */ @@ -55520,7 +54864,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c iosync(); } -@@ -440,9 +440,7 @@ static void xics_set_affinity(unsigned i +@@ -440,9 +440,7 @@ void xics_setup_cpu(void) { @@ -55531,7 +54875,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c /* * Put the calling processor into the GIQ. This is really only -@@ -783,7 +781,7 @@ void xics_teardown_cpu(int secondary) +@@ -783,7 +781,7 @@ unsigned int ipi; struct irq_desc *desc; @@ -55540,7 +54884,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c /* * Clear IPI -@@ -824,10 +822,11 @@ void xics_teardown_cpu(int secondary) +@@ -824,10 +822,11 @@ void xics_migrate_irqs_away(void) { int status; @@ -55554,7 +54898,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c /* remove ourselves from the global interrupt queue */ status = rtas_set_indicator_fast(GLOBAL_INTERRUPT_QUEUE, -@@ -835,7 +834,7 @@ void xics_migrate_irqs_away(void) +@@ -835,7 +834,7 @@ WARN_ON(status < 0); /* Allow IPIs again... */ @@ -55563,7 +54907,7 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c for_each_irq(virq) { struct irq_desc *desc; -@@ -874,7 +873,7 @@ void xics_migrate_irqs_away(void) +@@ -874,7 +873,7 @@ * The irq has to be migrated only in the single cpu * case. */ @@ -55572,11 +54916,9 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.c goto unlock; printk(KERN_WARNING "IRQ %u affinity broken off cpu %u\n", -Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/platforms/pseries/xics.h -+++ linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.h -@@ -21,9 +21,6 @@ extern void xics_cause_IPI(int cpu); +--- a/arch/powerpc/platforms/pseries/xics.h ++++ b/arch/powerpc/platforms/pseries/xics.h +@@ -21,9 +21,6 @@ extern void xics_request_IPIs(void); extern void xics_migrate_irqs_away(void); @@ -55586,10 +54928,8 @@ Index: linux-2.6.24.7/arch/powerpc/platforms/pseries/xics.h struct xics_ipi_struct { volatile unsigned long value; } ____cacheline_aligned; -Index: linux-2.6.24.7/arch/powerpc/sysdev/Kconfig -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/sysdev/Kconfig ++++ b/arch/powerpc/sysdev/Kconfig @@ -0,0 +1,8 @@ +# For a description of the syntax of this configuration file, +# see Documentation/kbuild/kconfig-language.txt. @@ -55599,11 +54939,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/Kconfig + bool + depends on PCI && 4xx + default n -Index: linux-2.6.24.7/arch/powerpc/sysdev/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/Makefile -+++ linux-2.6.24.7/arch/powerpc/sysdev/Makefile -@@ -2,7 +2,7 @@ ifeq ($(CONFIG_PPC64),y) +--- a/arch/powerpc/sysdev/Makefile ++++ b/arch/powerpc/sysdev/Makefile +@@ -2,7 +2,7 @@ EXTRA_CFLAGS += -mno-minimal-toc endif @@ -55612,7 +54950,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/Makefile obj-$(CONFIG_MPIC) += mpic.o $(mpic-msi-obj-y) obj-$(CONFIG_PPC_MPC106) += grackle.o -@@ -12,6 +12,7 @@ obj-$(CONFIG_U3_DART) += dart_iommu.o +@@ -12,6 +12,7 @@ obj-$(CONFIG_MMIO_NVRAM) += mmio_nvram.o obj-$(CONFIG_FSL_SOC) += fsl_soc.o obj-$(CONFIG_FSL_PCI) += fsl_pci.o @@ -55620,7 +54958,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/Makefile obj-$(CONFIG_TSI108_BRIDGE) += tsi108_pci.o tsi108_dev.o obj-$(CONFIG_QUICC_ENGINE) += qe_lib/ obj-$(CONFIG_PPC_BESTCOMM) += bestcomm/ -@@ -24,9 +25,13 @@ obj-$(CONFIG_AXON_RAM) += axonram.o +@@ -24,9 +25,13 @@ ifeq ($(CONFIG_PPC_MERGE),y) obj-$(CONFIG_PPC_INDIRECT_PCI) += indirect_pci.o obj-$(CONFIG_PPC_I8259) += i8259.o @@ -55635,10 +54973,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/Makefile endif # Temporary hack until we have migrated to asm-powerpc -Index: linux-2.6.24.7/arch/powerpc/sysdev/axonram.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/axonram.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/axonram.c +--- a/arch/powerpc/sysdev/axonram.c ++++ b/arch/powerpc/sysdev/axonram.c @@ -42,8 +42,9 @@ #include <linux/slab.h> #include <linux/string.h> @@ -55651,11 +54987,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/axonram.c #include <asm/page.h> #include <asm/prom.h> -Index: linux-2.6.24.7/arch/powerpc/sysdev/bestcomm/bestcomm.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/bestcomm/bestcomm.h -+++ linux-2.6.24.7/arch/powerpc/sysdev/bestcomm/bestcomm.h -@@ -20,7 +20,7 @@ struct bcom_bd; /* defined later on ... +--- a/arch/powerpc/sysdev/bestcomm/bestcomm.h ++++ b/arch/powerpc/sysdev/bestcomm/bestcomm.h +@@ -20,7 +20,7 @@ /* ======================================================================== */ @@ -55664,11 +54998,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/bestcomm/bestcomm.h /* ======================================================================== */ /** -Index: linux-2.6.24.7/arch/powerpc/sysdev/commproc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/commproc.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/commproc.c -@@ -240,6 +240,34 @@ void __init cpm_reset(void) +--- a/arch/powerpc/sysdev/commproc.c ++++ b/arch/powerpc/sysdev/commproc.c +@@ -240,6 +240,34 @@ #endif } @@ -55703,7 +55035,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/commproc.c /* We used to do this earlier, but have to postpone as long as possible * to ensure the kernel VM is now running. */ -@@ -408,7 +436,7 @@ EXPORT_SYMBOL(cpm_dpram_phys); +@@ -408,7 +436,7 @@ #endif /* !CONFIG_PPC_CPM_NEW_BINDING */ struct cpm_ioport16 { @@ -55712,7 +55044,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/commproc.c __be16 res[3]; }; -@@ -438,6 +466,13 @@ static void cpm1_set_pin32(int port, int +@@ -438,6 +466,13 @@ else clrbits32(&iop->par, pin); @@ -55726,7 +55058,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/commproc.c if (port == CPM_PORTE) { if (flags & CPM_PIN_SECONDARY) setbits32(&iop->sor, pin); -@@ -471,11 +506,17 @@ static void cpm1_set_pin16(int port, int +@@ -471,11 +506,17 @@ else clrbits16(&iop->par, pin); @@ -55746,11 +55078,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/commproc.c } } -Index: linux-2.6.24.7/arch/powerpc/sysdev/cpm2_common.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/cpm2_common.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/cpm2_common.c -@@ -82,6 +82,31 @@ void __init cpm2_reset(void) +--- a/arch/powerpc/sysdev/cpm2_common.c ++++ b/arch/powerpc/sysdev/cpm2_common.c +@@ -82,6 +82,31 @@ cpmp = &cpm2_immr->im_cpm; } @@ -55782,11 +55112,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/cpm2_common.c /* Set a baud rate generator. This needs lots of work. There are * eight BRGs, which can be connected to the CPM channels or output * as clocks. The BRGs are in two different block of internal -Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/fsl_pci.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c -@@ -33,8 +33,8 @@ void __init setup_pci_atmu(struct pci_co +--- a/arch/powerpc/sysdev/fsl_pci.c ++++ b/arch/powerpc/sysdev/fsl_pci.c +@@ -33,8 +33,8 @@ struct ccsr_pci __iomem *pci; int i; @@ -55797,7 +55125,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c pci = ioremap(rsrc->start, rsrc->end - rsrc->start + 1); /* Disable all windows (except powar0 since its ignored) */ -@@ -46,17 +46,17 @@ void __init setup_pci_atmu(struct pci_co +@@ -46,17 +46,17 @@ /* Setup outbound MEM window */ for(i = 0; i < 3; i++) if (hose->mem_resources[i].flags & IORESOURCE_MEM){ @@ -55824,7 +55152,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c /* Enable, Mem R/W */ out_be32(&pci->pow[i+1].powar, 0x80044000 | (__ilog2(hose->mem_resources[i].end -@@ -65,15 +65,14 @@ void __init setup_pci_atmu(struct pci_co +@@ -65,15 +65,14 @@ /* Setup outbound IO window */ if (hose->io_resource.flags & IORESOURCE_IO){ @@ -55847,7 +55175,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c /* Enable, IO R/W */ out_be32(&pci->pow[i+1].powar, 0x80088000 | (__ilog2(hose->io_resource.end -@@ -107,55 +106,17 @@ void __init setup_pci_cmd(struct pci_con +@@ -107,55 +106,17 @@ } } @@ -55909,7 +55237,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c } int __init fsl_pcie_check_link(struct pci_controller *hose) -@@ -172,11 +133,24 @@ void fsl_pcibios_fixup_bus(struct pci_bu +@@ -172,11 +133,24 @@ struct pci_controller *hose = (struct pci_controller *) bus->sysdata; int i; @@ -55939,7 +55267,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c } } } -@@ -202,7 +176,7 @@ int __init fsl_add_bridge(struct device_ +@@ -202,7 +176,7 @@ printk(KERN_WARNING "Can't get bus-range for %s, assume" " bus 0\n", dev->full_name); @@ -55948,7 +55276,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c hose = pcibios_alloc_controller(dev); if (!hose) return -ENOMEM; -@@ -222,7 +196,7 @@ int __init fsl_add_bridge(struct device_ +@@ -222,7 +196,7 @@ hose->indirect_type |= PPC_INDIRECT_TYPE_NO_PCIE_LINK; } @@ -55957,7 +55285,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c "Firmware bus number: %d->%d\n", (unsigned long long)rsrc.start, hose->first_busno, hose->last_busno); -@@ -240,23 +214,23 @@ int __init fsl_add_bridge(struct device_ +@@ -240,23 +214,23 @@ return 0; } @@ -56001,10 +55329,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_pci.c +DECLARE_PCI_FIXUP_HEADER(0x1957, PCI_DEVICE_ID_MPC8641, quirk_fsl_pcie_header); +DECLARE_PCI_FIXUP_HEADER(0x1957, PCI_DEVICE_ID_MPC8641D, quirk_fsl_pcie_header); +DECLARE_PCI_FIXUP_HEADER(0x1957, PCI_DEVICE_ID_MPC8610, quirk_fsl_pcie_header); -Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_rio.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/sysdev/fsl_rio.c ++++ b/arch/powerpc/sysdev/fsl_rio.c @@ -0,0 +1,932 @@ +/* + * MPC85xx RapidIO support @@ -56938,10 +56264,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_rio.c + out_be32((void *)&dbell_atmu_regs->rowar, 0x8004200b); + mpc85xx_rio_doorbell_init(port); +} -Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_rio.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/sysdev/fsl_rio.h ++++ b/arch/powerpc/sysdev/fsl_rio.h @@ -0,0 +1,20 @@ +/* + * MPC85xx RapidIO definitions @@ -56963,10 +56287,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_rio.h +extern void mpc85xx_rio_setup(int law_start, int law_size); + +#endif /* __PPC_SYSLIB_PPC85XX_RIO_H */ -Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/fsl_soc.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c +--- a/arch/powerpc/sysdev/fsl_soc.c ++++ b/arch/powerpc/sysdev/fsl_soc.c @@ -24,6 +24,7 @@ #include <linux/platform_device.h> #include <linux/of_platform.h> @@ -56975,7 +56297,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c #include <linux/spi/spi.h> #include <linux/fsl_devices.h> #include <linux/fs_enet_pd.h> -@@ -54,10 +55,18 @@ phys_addr_t get_immrbase(void) +@@ -54,10 +55,18 @@ soc = of_find_node_by_type(NULL, "soc"); if (soc) { int size; @@ -56996,7 +56318,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c of_node_put(soc); } -@@ -130,17 +139,51 @@ u32 get_baudrate(void) +@@ -130,17 +139,51 @@ EXPORT_SYMBOL(get_baudrate); #endif /* CONFIG_CPM2 */ @@ -57053,7 +56375,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c int k; struct device_node *child = NULL; struct gianfar_mdio_data mdio_data; -@@ -179,11 +222,13 @@ static int __init gfar_mdio_of_init(void +@@ -179,11 +222,13 @@ goto unreg; } @@ -57067,7 +56389,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c return ret; } -@@ -193,7 +238,6 @@ static const char *gfar_tx_intr = "tx"; +@@ -193,7 +238,6 @@ static const char *gfar_rx_intr = "rx"; static const char *gfar_err_intr = "error"; @@ -57075,7 +56397,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c static int __init gfar_of_init(void) { struct device_node *np; -@@ -277,29 +321,43 @@ static int __init gfar_of_init(void) +@@ -277,29 +321,43 @@ gfar_data.interface = PHY_INTERFACE_MODE_MII; ph = of_get_property(np, "phy-handle", NULL); @@ -57135,7 +56457,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c ret = platform_device_add_data(gfar_dev, &gfar_data, sizeof(struct -@@ -390,13 +448,11 @@ static void __init of_register_i2c_devic +@@ -390,13 +448,11 @@ static int __init fsl_i2c_of_init(void) { struct device_node *np; @@ -57151,7 +56473,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c struct resource r[2]; struct fsl_i2c_platform_data i2c_data; const unsigned char *flags = NULL; -@@ -432,7 +488,7 @@ static int __init fsl_i2c_of_init(void) +@@ -432,7 +488,7 @@ if (ret) goto unreg; @@ -57160,7 +56482,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c } return 0; -@@ -528,14 +584,12 @@ static enum fsl_usb2_phy_modes determine +@@ -528,14 +584,12 @@ static int __init fsl_usb_of_init(void) { struct device_node *np; @@ -57177,7 +56499,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c struct resource r[2]; struct fsl_usb2_platform_data usb_data; const unsigned char *prop = NULL; -@@ -578,11 +632,10 @@ static int __init fsl_usb_of_init(void) +@@ -578,11 +632,10 @@ fsl_usb2_platform_data)); if (ret) goto unreg_mph; @@ -57191,7 +56513,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c struct resource r[2]; struct fsl_usb2_platform_data usb_data; const unsigned char *prop = NULL; -@@ -654,6 +707,7 @@ static int __init fsl_usb_of_init(void) +@@ -654,6 +707,7 @@ fsl_usb2_platform_data)))) goto unreg_dr; } @@ -57199,7 +56521,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c } return 0; -@@ -1125,13 +1179,12 @@ arch_initcall(fs_enet_of_init); +@@ -1125,13 +1179,12 @@ static int __init fsl_pcmcia_of_init(void) { @@ -57216,11 +56538,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/fsl_soc.c return 0; } -Index: linux-2.6.24.7/arch/powerpc/sysdev/grackle.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/grackle.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/grackle.c -@@ -57,7 +57,7 @@ void __init setup_grackle(struct pci_con +--- a/arch/powerpc/sysdev/grackle.c ++++ b/arch/powerpc/sysdev/grackle.c +@@ -57,7 +57,7 @@ { setup_indirect_pci(hose, 0xfec00000, 0xfee00000, 0); if (machine_is_compatible("PowerMac1,1")) @@ -57229,10 +56549,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/grackle.c if (machine_is_compatible("AAPL,PowerBook1998")) grackle_set_loop_snoop(hose, 1); #if 0 /* Disabled for now, HW problems ??? */ -Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/ipic.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/ipic.c +--- a/arch/powerpc/sysdev/ipic.c ++++ b/arch/powerpc/sysdev/ipic.c @@ -30,11 +30,67 @@ #include "ipic.h" @@ -57302,7 +56620,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_D, .force = IPIC_SIFCR_H, -@@ -42,7 +98,6 @@ static struct ipic_info ipic_info[] = { +@@ -42,7 +98,6 @@ .prio_mask = 0, }, [10] = { @@ -57310,7 +56628,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_D, .force = IPIC_SIFCR_H, -@@ -50,15 +105,27 @@ static struct ipic_info ipic_info[] = { +@@ -50,15 +105,27 @@ .prio_mask = 1, }, [11] = { @@ -57340,7 +56658,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_D, .force = IPIC_SIFCR_H, -@@ -66,7 +133,6 @@ static struct ipic_info ipic_info[] = { +@@ -66,7 +133,6 @@ .prio_mask = 5, }, [15] = { @@ -57348,7 +56666,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_D, .force = IPIC_SIFCR_H, -@@ -74,7 +140,6 @@ static struct ipic_info ipic_info[] = { +@@ -74,7 +140,6 @@ .prio_mask = 6, }, [16] = { @@ -57356,7 +56674,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_D, .force = IPIC_SIFCR_H, -@@ -82,7 +147,7 @@ static struct ipic_info ipic_info[] = { +@@ -82,7 +147,7 @@ .prio_mask = 7, }, [17] = { @@ -57365,7 +56683,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_A, .force = IPIC_SEFCR, -@@ -90,7 +155,7 @@ static struct ipic_info ipic_info[] = { +@@ -90,7 +155,7 @@ .prio_mask = 5, }, [18] = { @@ -57374,7 +56692,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_A, .force = IPIC_SEFCR, -@@ -98,7 +163,7 @@ static struct ipic_info ipic_info[] = { +@@ -98,7 +163,7 @@ .prio_mask = 6, }, [19] = { @@ -57383,7 +56701,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_A, .force = IPIC_SEFCR, -@@ -106,7 +171,7 @@ static struct ipic_info ipic_info[] = { +@@ -106,7 +171,7 @@ .prio_mask = 7, }, [20] = { @@ -57392,7 +56710,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_B, .force = IPIC_SEFCR, -@@ -114,7 +179,7 @@ static struct ipic_info ipic_info[] = { +@@ -114,7 +179,7 @@ .prio_mask = 4, }, [21] = { @@ -57401,7 +56719,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_B, .force = IPIC_SEFCR, -@@ -122,7 +187,7 @@ static struct ipic_info ipic_info[] = { +@@ -122,7 +187,7 @@ .prio_mask = 5, }, [22] = { @@ -57410,7 +56728,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_B, .force = IPIC_SEFCR, -@@ -130,7 +195,7 @@ static struct ipic_info ipic_info[] = { +@@ -130,7 +195,7 @@ .prio_mask = 6, }, [23] = { @@ -57419,7 +56737,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_B, .force = IPIC_SEFCR, -@@ -138,7 +203,6 @@ static struct ipic_info ipic_info[] = { +@@ -138,7 +203,6 @@ .prio_mask = 7, }, [32] = { @@ -57427,7 +56745,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_A, .force = IPIC_SIFCR_H, -@@ -146,7 +210,6 @@ static struct ipic_info ipic_info[] = { +@@ -146,7 +210,6 @@ .prio_mask = 0, }, [33] = { @@ -57435,7 +56753,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_A, .force = IPIC_SIFCR_H, -@@ -154,7 +217,6 @@ static struct ipic_info ipic_info[] = { +@@ -154,7 +217,6 @@ .prio_mask = 1, }, [34] = { @@ -57443,7 +56761,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_A, .force = IPIC_SIFCR_H, -@@ -162,7 +224,6 @@ static struct ipic_info ipic_info[] = { +@@ -162,7 +224,6 @@ .prio_mask = 2, }, [35] = { @@ -57451,7 +56769,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_A, .force = IPIC_SIFCR_H, -@@ -170,7 +231,6 @@ static struct ipic_info ipic_info[] = { +@@ -170,7 +231,6 @@ .prio_mask = 3, }, [36] = { @@ -57459,7 +56777,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_A, .force = IPIC_SIFCR_H, -@@ -178,7 +238,6 @@ static struct ipic_info ipic_info[] = { +@@ -178,7 +238,6 @@ .prio_mask = 4, }, [37] = { @@ -57467,7 +56785,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_A, .force = IPIC_SIFCR_H, -@@ -186,7 +245,6 @@ static struct ipic_info ipic_info[] = { +@@ -186,7 +245,6 @@ .prio_mask = 5, }, [38] = { @@ -57475,7 +56793,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_H, .prio = IPIC_SIPRR_A, .force = IPIC_SIFCR_H, -@@ -194,15 +252,69 @@ static struct ipic_info ipic_info[] = { +@@ -194,15 +252,69 @@ .prio_mask = 6, }, [39] = { @@ -57547,7 +56865,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SEMSR, .prio = IPIC_SMPRR_A, .force = IPIC_SEFCR, -@@ -210,7 +322,6 @@ static struct ipic_info ipic_info[] = { +@@ -210,7 +322,6 @@ .prio_mask = 4, }, [64] = { @@ -57555,7 +56873,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_A, .force = IPIC_SIFCR_L, -@@ -218,7 +329,6 @@ static struct ipic_info ipic_info[] = { +@@ -218,7 +329,6 @@ .prio_mask = 0, }, [65] = { @@ -57563,7 +56881,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_A, .force = IPIC_SIFCR_L, -@@ -226,7 +336,6 @@ static struct ipic_info ipic_info[] = { +@@ -226,7 +336,6 @@ .prio_mask = 1, }, [66] = { @@ -57571,7 +56889,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_A, .force = IPIC_SIFCR_L, -@@ -234,7 +343,6 @@ static struct ipic_info ipic_info[] = { +@@ -234,7 +343,6 @@ .prio_mask = 2, }, [67] = { @@ -57579,7 +56897,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_A, .force = IPIC_SIFCR_L, -@@ -242,7 +350,6 @@ static struct ipic_info ipic_info[] = { +@@ -242,7 +350,6 @@ .prio_mask = 3, }, [68] = { @@ -57587,7 +56905,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_B, .force = IPIC_SIFCR_L, -@@ -250,7 +357,6 @@ static struct ipic_info ipic_info[] = { +@@ -250,7 +357,6 @@ .prio_mask = 0, }, [69] = { @@ -57595,7 +56913,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_B, .force = IPIC_SIFCR_L, -@@ -258,7 +364,6 @@ static struct ipic_info ipic_info[] = { +@@ -258,7 +364,6 @@ .prio_mask = 1, }, [70] = { @@ -57603,7 +56921,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_B, .force = IPIC_SIFCR_L, -@@ -266,7 +371,6 @@ static struct ipic_info ipic_info[] = { +@@ -266,7 +371,6 @@ .prio_mask = 2, }, [71] = { @@ -57611,7 +56929,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = IPIC_SMPRR_B, .force = IPIC_SIFCR_L, -@@ -274,91 +378,120 @@ static struct ipic_info ipic_info[] = { +@@ -274,91 +378,120 @@ .prio_mask = 3, }, [72] = { @@ -57745,7 +57063,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .mask = IPIC_SIMSR_L, .prio = 0, .force = IPIC_SIFCR_L, -@@ -412,6 +545,10 @@ static void ipic_mask_irq(unsigned int v +@@ -412,6 +545,10 @@ temp &= ~(1 << (31 - ipic_info[src].bit)); ipic_write(ipic->regs, ipic_info[src].mask, temp); @@ -57756,7 +57074,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c spin_unlock_irqrestore(&ipic_lock, flags); } -@@ -424,9 +561,13 @@ static void ipic_ack_irq(unsigned int vi +@@ -424,9 +561,13 @@ spin_lock_irqsave(&ipic_lock, flags); @@ -57772,7 +57090,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c spin_unlock_irqrestore(&ipic_lock, flags); } -@@ -444,9 +585,13 @@ static void ipic_mask_irq_and_ack(unsign +@@ -444,9 +585,13 @@ temp &= ~(1 << (31 - ipic_info[src].bit)); ipic_write(ipic->regs, ipic_info[src].mask, temp); @@ -57788,7 +57106,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c spin_unlock_irqrestore(&ipic_lock, flags); } -@@ -468,14 +613,22 @@ static int ipic_set_irq_type(unsigned in +@@ -468,14 +613,22 @@ flow_type); return -EINVAL; } @@ -57811,7 +57129,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c } /* only EXT IRQ senses are programmable on ipic -@@ -500,7 +653,16 @@ static int ipic_set_irq_type(unsigned in +@@ -500,7 +653,16 @@ return 0; } @@ -57829,7 +57147,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c .typename = " IPIC ", .unmask = ipic_unmask_irq, .mask = ipic_mask_irq, -@@ -519,13 +681,9 @@ static int ipic_host_map(struct irq_host +@@ -519,13 +681,9 @@ irq_hw_number_t hw) { struct ipic *ipic = h->host_data; @@ -57844,7 +57162,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c /* Set default irq type */ set_irq_type(virq, IRQ_TYPE_NONE); -@@ -584,7 +742,6 @@ struct ipic * __init ipic_init(struct de +@@ -584,7 +742,6 @@ ipic->regs = ioremap(res.start, res.end - res.start + 1); ipic->irqhost->host_data = ipic; @@ -57852,7 +57170,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c /* init hw */ ipic_write(ipic->regs, IPIC_SICNR, 0x0); -@@ -593,6 +750,10 @@ struct ipic * __init ipic_init(struct de +@@ -593,6 +750,10 @@ * configure SICFR accordingly */ if (flags & IPIC_SPREADMODE_GRP_A) temp |= SICFR_IPSA; @@ -57863,7 +57181,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c if (flags & IPIC_SPREADMODE_GRP_D) temp |= SICFR_IPSD; if (flags & IPIC_SPREADMODE_MIX_A) -@@ -600,7 +761,7 @@ struct ipic * __init ipic_init(struct de +@@ -600,7 +761,7 @@ if (flags & IPIC_SPREADMODE_MIX_B) temp |= SICFR_MPSB; @@ -57872,7 +57190,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c /* handle MCP route */ temp = 0; -@@ -672,10 +833,12 @@ void ipic_set_highest_priority(unsigned +@@ -672,10 +833,12 @@ void ipic_set_default_priority(void) { @@ -57889,10 +57207,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.c } void ipic_enable_mcp(enum ipic_mcp_irq mcp_irq) -Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/ipic.h -+++ linux-2.6.24.7/arch/powerpc/sysdev/ipic.h +--- a/arch/powerpc/sysdev/ipic.h ++++ b/arch/powerpc/sysdev/ipic.h @@ -23,13 +23,12 @@ #define IPIC_IRQ_EXT7 23 @@ -57910,7 +57226,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.h #define SICFR_IPSD 0x00080000 #define SICFR_MPSA 0x00200000 #define SICFR_MPSB 0x00400000 -@@ -45,13 +44,11 @@ struct ipic { +@@ -45,13 +44,11 @@ /* The remapper for this IPIC */ struct irq_host *irqhost; @@ -57926,11 +57242,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ipic.h u8 mask; /* mask register offset from base */ u8 prio; /* priority register offset from base */ u8 force; /* force register offset from base */ -Index: linux-2.6.24.7/arch/powerpc/sysdev/mmio_nvram.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/mmio_nvram.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/mmio_nvram.c -@@ -99,7 +99,7 @@ int __init mmio_nvram_init(void) +--- a/arch/powerpc/sysdev/mmio_nvram.c ++++ b/arch/powerpc/sysdev/mmio_nvram.c +@@ -99,7 +99,7 @@ nvram_addr = r.start; mmio_nvram_len = r.end - r.start + 1; if ( (!mmio_nvram_len) || (!nvram_addr) ) { @@ -57939,11 +57253,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mmio_nvram.c ret = -EIO; goto out; } -Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/mpic.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/mpic.c -@@ -83,6 +83,7 @@ static u32 mpic_infos[][MPIC_IDX_END] = +--- a/arch/powerpc/sysdev/mpic.c ++++ b/arch/powerpc/sysdev/mpic.c +@@ -83,6 +83,7 @@ MPIC_CPU_WHOAMI, MPIC_CPU_INTACK, MPIC_CPU_EOI, @@ -57951,7 +57263,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c MPIC_IRQ_BASE, MPIC_IRQ_STRIDE, -@@ -121,6 +122,7 @@ static u32 mpic_infos[][MPIC_IDX_END] = +@@ -121,6 +122,7 @@ TSI108_CPU_WHOAMI, TSI108_CPU_INTACK, TSI108_CPU_EOI, @@ -57959,7 +57271,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c TSI108_IRQ_BASE, TSI108_IRQ_STRIDE, -@@ -265,7 +267,7 @@ static inline void _mpic_irq_write(struc +@@ -265,7 +267,7 @@ */ @@ -57968,7 +57280,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c struct mpic_reg_bank *rb, unsigned int offset, unsigned int size) { -@@ -285,7 +287,7 @@ static void _mpic_map_dcr(struct mpic *m +@@ -285,7 +287,7 @@ BUG_ON(!DCR_MAP_OK(rb->dhost)); } @@ -57977,7 +57289,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c struct mpic_reg_bank *rb, unsigned int offset, unsigned int size) { -@@ -612,12 +614,11 @@ static inline void mpic_eoi(struct mpic +@@ -612,12 +614,11 @@ } #ifdef CONFIG_SMP @@ -57993,7 +57305,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c return IRQ_HANDLED; } -@@ -842,6 +843,24 @@ int mpic_set_irq_type(unsigned int virq, +@@ -842,6 +843,24 @@ return 0; } @@ -58018,7 +57330,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c static struct irq_chip mpic_irq_chip = { .mask = mpic_mask_irq, .unmask = mpic_unmask_irq, -@@ -1109,6 +1128,11 @@ struct mpic * __init mpic_alloc(struct d +@@ -1109,6 +1128,11 @@ mb(); } @@ -58030,7 +57342,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c /* Read feature register, calculate num CPUs and, for non-ISU * MPICs, num sources as well. On ISU MPICs, sources are counted * as ISUs are added -@@ -1230,6 +1254,8 @@ void __init mpic_init(struct mpic *mpic) +@@ -1230,6 +1254,8 @@ mpic_u3msi_init(mpic); } @@ -58039,7 +57351,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c for (i = 0; i < mpic->num_sources; i++) { /* start with vector = source number, and masked */ u32 vecpri = MPIC_VECPRI_MASK | i | -@@ -1253,6 +1279,11 @@ void __init mpic_init(struct mpic *mpic) +@@ -1253,6 +1279,11 @@ mpic_read(mpic->gregs, MPIC_INFO(GREG_GLOBAL_CONF_0)) | MPIC_GREG_GCONF_8259_PTHROU_DIS); @@ -58051,7 +57363,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c /* Set current processor priority to 0 */ mpic_cpu_write(MPIC_INFO(CPU_CURRENT_TASK_PRI), 0); -@@ -1419,13 +1450,13 @@ void mpic_send_ipi(unsigned int ipi_no, +@@ -1419,13 +1450,13 @@ mpic_physmask(cpu_mask & cpus_addr(cpu_online_map)[0])); } @@ -58068,7 +57380,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c #endif if (unlikely(src == mpic->spurious_vec)) { if (mpic->flags & MPIC_SPV_EOI) -@@ -1443,6 +1474,11 @@ unsigned int mpic_get_one_irq(struct mpi +@@ -1443,6 +1474,11 @@ return irq_linear_revmap(mpic->irqhost, src); } @@ -58080,7 +57392,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c unsigned int mpic_get_irq(void) { struct mpic *mpic = mpic_primary; -@@ -1452,12 +1488,20 @@ unsigned int mpic_get_irq(void) +@@ -1452,12 +1488,20 @@ return mpic_get_one_irq(mpic); } @@ -58102,7 +57414,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c static char *ipi_names[] = { "IPI0 (call function)", "IPI1 (reschedule)", -@@ -1472,14 +1516,14 @@ void mpic_request_ipis(void) +@@ -1472,14 +1516,14 @@ unsigned int vipi = irq_create_mapping(mpic->irqhost, mpic->ipi_vecs[0] + i); if (vipi == NO_IRQ) { @@ -58120,11 +57432,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.c vipi, i); break; } -Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.h -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/mpic.h -+++ linux-2.6.24.7/arch/powerpc/sysdev/mpic.h -@@ -17,6 +17,7 @@ extern int mpic_msi_init_allocator(struc +--- a/arch/powerpc/sysdev/mpic.h ++++ b/arch/powerpc/sysdev/mpic.h +@@ -17,6 +17,7 @@ extern irq_hw_number_t mpic_msi_alloc_hwirqs(struct mpic *mpic, int num); extern void mpic_msi_free_hwirqs(struct mpic *mpic, int offset, int num); extern int mpic_u3msi_init(struct mpic *mpic); @@ -58132,7 +57442,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.h #else static inline void mpic_msi_reserve_hwirq(struct mpic *mpic, irq_hw_number_t hwirq) -@@ -28,12 +29,15 @@ static inline int mpic_u3msi_init(struct +@@ -28,12 +29,15 @@ { return -1; } @@ -58151,10 +57461,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic.h extern void mpic_set_affinity(unsigned int irq, cpumask_t cpumask); #endif /* _POWERPC_SYSDEV_MPIC_H */ -Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic_pasemi_msi.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/sysdev/mpic_pasemi_msi.c ++++ b/arch/powerpc/sysdev/mpic_pasemi_msi.c @@ -0,0 +1,172 @@ +/* + * Copyright 2007, Olof Johansson, PA Semi @@ -58328,11 +57636,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mpic_pasemi_msi.c + + return 0; +} -Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_dev.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/mv64x60_dev.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_dev.c -@@ -241,7 +241,7 @@ static int __init mv64x60_eth_device_set +--- a/arch/powerpc/sysdev/mv64x60_dev.c ++++ b/arch/powerpc/sysdev/mv64x60_dev.c +@@ -241,7 +241,7 @@ /* only register the shared platform device the first time through */ if (id == 0 && (err = eth_register_shared_pdev(np))) @@ -58341,7 +57647,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_dev.c memset(r, 0, sizeof(r)); of_irq_to_resource(np, 0, &r[0]); -@@ -451,22 +451,19 @@ static int __init mv64x60_device_setup(v +@@ -451,22 +451,19 @@ int id; int err; @@ -58373,7 +57679,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_dev.c goto error; /* support up to one watchdog timer */ -@@ -477,7 +474,6 @@ static int __init mv64x60_device_setup(v +@@ -477,7 +474,6 @@ of_node_put(np); } @@ -58381,11 +57687,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_dev.c return 0; error: -Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/mv64x60_pci.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_pci.c -@@ -164,8 +164,8 @@ static int __init mv64x60_add_bridge(str +--- a/arch/powerpc/sysdev/mv64x60_pci.c ++++ b/arch/powerpc/sysdev/mv64x60_pci.c +@@ -164,8 +164,8 @@ void __init mv64x60_pci_init(void) { @@ -58396,11 +57700,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_pci.c + for_each_compatible_node(np, "pci", "marvell,mv64x60-pci") mv64x60_add_bridge(np); } -Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_udbg.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/mv64x60_udbg.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_udbg.c -@@ -85,10 +85,10 @@ static void mv64x60_udbg_init(void) +--- a/arch/powerpc/sysdev/mv64x60_udbg.c ++++ b/arch/powerpc/sysdev/mv64x60_udbg.c +@@ -85,10 +85,10 @@ if (!stdout) return; @@ -58413,10 +57715,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/mv64x60_udbg.c of_node_put(stdout); if (!np) -Index: linux-2.6.24.7/arch/powerpc/sysdev/of_rtc.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/sysdev/of_rtc.c ++++ b/arch/powerpc/sysdev/of_rtc.c @@ -0,0 +1,59 @@ +/* + * Instantiate mmio-mapped RTC chips based on device tree information @@ -58477,10 +57777,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/of_rtc.c + } + } +} -Index: linux-2.6.24.7/arch/powerpc/sysdev/pmi.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/pmi.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/pmi.c +--- a/arch/powerpc/sysdev/pmi.c ++++ b/arch/powerpc/sysdev/pmi.c @@ -28,9 +28,9 @@ #include <linux/completion.h> #include <linux/spinlock.h> @@ -58493,10 +57791,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/pmi.c #include <asm/io.h> #include <asm/pmi.h> #include <asm/prom.h> -Index: linux-2.6.24.7/arch/powerpc/sysdev/ppc4xx_pci.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/sysdev/ppc4xx_pci.c ++++ b/arch/powerpc/sysdev/ppc4xx_pci.c @@ -0,0 +1,1528 @@ +/* + * PCI / PCI-X / PCI-Express support for 4xx parts @@ -60026,10 +59322,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ppc4xx_pci.c +} +arch_initcall(ppc4xx_pci_find_bridges); + -Index: linux-2.6.24.7/arch/powerpc/sysdev/ppc4xx_pci.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/arch/powerpc/sysdev/ppc4xx_pci.h ++++ b/arch/powerpc/sysdev/ppc4xx_pci.h @@ -0,0 +1,369 @@ +/* + * PCI / PCI-X / PCI-Express support for 4xx parts @@ -60400,10 +59694,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/ppc4xx_pci.h + + +#endif /* __PPC4XX_PCI_H__ */ -Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/qe_lib/Kconfig -+++ linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/Kconfig +--- a/arch/powerpc/sysdev/qe_lib/Kconfig ++++ b/arch/powerpc/sysdev/qe_lib/Kconfig @@ -4,7 +4,7 @@ config UCC_SLOW @@ -60413,10 +59705,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/Kconfig help This option provides qe_lib support to UCC slow protocols: UART, BISYNC, QMC -Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/qe.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/qe_lib/qe.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/qe.c +--- a/arch/powerpc/sysdev/qe_lib/qe.c ++++ b/arch/powerpc/sysdev/qe_lib/qe.c @@ -25,6 +25,7 @@ #include <linux/module.h> #include <linux/delay.h> @@ -60425,7 +59715,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/qe.c #include <asm/irq.h> #include <asm/page.h> #include <asm/pgtable.h> -@@ -167,19 +168,20 @@ unsigned int get_brg_clk(void) +@@ -167,19 +168,20 @@ /* Program the BRG to the given sampling rate and multiplier * @@ -60450,7 +59740,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/qe.c divisor = get_brg_clk() / (rate * multiplier); if (divisor > QE_BRGC_DIVISOR_MAX + 1) { -@@ -196,8 +198,43 @@ void qe_setbrg(unsigned int brg, unsigne +@@ -196,8 +198,43 @@ tempval = ((divisor - 1) << QE_BRGC_DIVISOR_SHIFT) | QE_BRGC_ENABLE | div16; @@ -60495,7 +59785,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/qe.c /* Initialize SNUMs (thread serial numbers) according to * QE Module Control chapter, SNUM table -@@ -358,3 +395,249 @@ void *qe_muram_addr(unsigned long offset +@@ -358,3 +395,249 @@ return (void *)&qe_immr->muram[offset]; } EXPORT_SYMBOL(qe_muram_addr); @@ -60745,10 +60035,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/qe.c +} +EXPORT_SYMBOL(qe_get_firmware_info); + -Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/qe_lib/ucc_slow.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c +--- a/arch/powerpc/sysdev/qe_lib/ucc_slow.c ++++ b/arch/powerpc/sysdev/qe_lib/ucc_slow.c @@ -19,6 +19,7 @@ #include <linux/stddef.h> #include <linux/interrupt.h> @@ -60757,7 +60045,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c #include <asm/io.h> #include <asm/immap_qe.h> -@@ -41,6 +42,7 @@ u32 ucc_slow_get_qe_cr_subblock(int uccs +@@ -41,6 +42,7 @@ default: return QE_CR_SUBBLOCK_INVALID; } } @@ -60765,7 +60053,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c void ucc_slow_poll_transmitter_now(struct ucc_slow_private * uccs) { -@@ -56,6 +58,7 @@ void ucc_slow_graceful_stop_tx(struct uc +@@ -56,6 +58,7 @@ qe_issue_cmd(QE_GRACEFUL_STOP_TX, id, QE_CR_PROTOCOL_UNSPECIFIED, 0); } @@ -60773,7 +60061,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c void ucc_slow_stop_tx(struct ucc_slow_private * uccs) { -@@ -65,6 +68,7 @@ void ucc_slow_stop_tx(struct ucc_slow_pr +@@ -65,6 +68,7 @@ id = ucc_slow_get_qe_cr_subblock(us_info->ucc_num); qe_issue_cmd(QE_STOP_TX, id, QE_CR_PROTOCOL_UNSPECIFIED, 0); } @@ -60781,7 +60069,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c void ucc_slow_restart_tx(struct ucc_slow_private * uccs) { -@@ -74,6 +78,7 @@ void ucc_slow_restart_tx(struct ucc_slow +@@ -74,6 +78,7 @@ id = ucc_slow_get_qe_cr_subblock(us_info->ucc_num); qe_issue_cmd(QE_RESTART_TX, id, QE_CR_PROTOCOL_UNSPECIFIED, 0); } @@ -60789,7 +60077,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c void ucc_slow_enable(struct ucc_slow_private * uccs, enum comm_dir mode) { -@@ -94,6 +99,7 @@ void ucc_slow_enable(struct ucc_slow_pri +@@ -94,6 +99,7 @@ } out_be32(&us_regs->gumr_l, gumr_l); } @@ -60797,7 +60085,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c void ucc_slow_disable(struct ucc_slow_private * uccs, enum comm_dir mode) { -@@ -114,6 +120,7 @@ void ucc_slow_disable(struct ucc_slow_pr +@@ -114,6 +120,7 @@ } out_be32(&us_regs->gumr_l, gumr_l); } @@ -60805,7 +60093,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c /* Initialize the UCC for Slow operations * -@@ -347,6 +354,7 @@ int ucc_slow_init(struct ucc_slow_info * +@@ -347,6 +354,7 @@ *uccs_ret = uccs; return 0; } @@ -60813,18 +60101,16 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/qe_lib/ucc_slow.c void ucc_slow_free(struct ucc_slow_private * uccs) { -@@ -366,5 +374,5 @@ void ucc_slow_free(struct ucc_slow_priva +@@ -366,5 +374,5 @@ kfree(uccs); } - +EXPORT_SYMBOL(ucc_slow_free); -Index: linux-2.6.24.7/arch/powerpc/sysdev/tsi108_dev.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/tsi108_dev.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/tsi108_dev.c -@@ -66,14 +66,12 @@ EXPORT_SYMBOL(get_vir_csrbase); +--- a/arch/powerpc/sysdev/tsi108_dev.c ++++ b/arch/powerpc/sysdev/tsi108_dev.c +@@ -66,14 +66,12 @@ static int __init tsi108_eth_of_init(void) { struct device_node *np; @@ -60841,7 +60127,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/tsi108_dev.c struct resource r[2]; struct device_node *phy, *mdio; hw_info tsi_eth_data; -@@ -98,7 +96,7 @@ static int __init tsi108_eth_of_init(voi +@@ -98,7 +96,7 @@ __FUNCTION__,r[1].name, r[1].start, r[1].end); tsi_eth_dev = @@ -60850,7 +60136,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/tsi108_dev.c 1); if (IS_ERR(tsi_eth_dev)) { -@@ -154,6 +152,7 @@ static int __init tsi108_eth_of_init(voi +@@ -154,6 +152,7 @@ unreg: platform_device_unregister(tsi_eth_dev); err: @@ -60858,11 +60144,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/tsi108_dev.c return ret; } -Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/uic.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/uic.c -@@ -53,21 +53,23 @@ struct uic { +--- a/arch/powerpc/sysdev/uic.c ++++ b/arch/powerpc/sysdev/uic.c +@@ -53,21 +53,23 @@ /* The remapper for this UIC */ struct irq_host *irqhost; @@ -60891,7 +60175,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c mtdcr(uic->dcrbase + UIC_ER, er); spin_unlock_irqrestore(&uic->lock, flags); } -@@ -99,6 +101,7 @@ static void uic_ack_irq(unsigned int vir +@@ -99,6 +101,7 @@ static void uic_mask_ack_irq(unsigned int virq) { @@ -60899,7 +60183,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c struct uic *uic = get_irq_chip_data(virq); unsigned int src = uic_irq_to_hw(virq); unsigned long flags; -@@ -109,7 +112,16 @@ static void uic_mask_ack_irq(unsigned in +@@ -109,7 +112,16 @@ er = mfdcr(uic->dcrbase + UIC_ER); er &= ~sr; mtdcr(uic->dcrbase + UIC_ER, er); @@ -60917,7 +60201,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c spin_unlock_irqrestore(&uic->lock, flags); } -@@ -173,64 +185,6 @@ static struct irq_chip uic_irq_chip = { +@@ -173,64 +185,6 @@ .set_type = uic_set_irq_type, }; @@ -60982,7 +60266,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c static int uic_host_map(struct irq_host *h, unsigned int virq, irq_hw_number_t hw) { -@@ -239,7 +193,7 @@ static int uic_host_map(struct irq_host +@@ -239,7 +193,7 @@ set_irq_chip_data(virq, uic); /* Despite the name, handle_level_irq() works for both level * and edge irqs on UIC. FIXME: check this is correct */ @@ -60991,7 +60275,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c /* Set default irq type */ set_irq_type(virq, IRQ_TYPE_NONE); -@@ -264,23 +218,36 @@ static struct irq_host_ops uic_host_ops +@@ -264,23 +218,36 @@ .xlate = uic_host_xlate, }; @@ -61032,7 +60316,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c } static struct uic * __init uic_init_one(struct device_node *node) -@@ -342,33 +309,27 @@ void __init uic_init_tree(void) +@@ -342,33 +309,27 @@ const u32 *interrupts; /* First locate and initialize the top-level UIC */ @@ -61070,7 +60354,7 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c uic = uic_init_one(np); if (! uic) -@@ -377,20 +338,11 @@ void __init uic_init_tree(void) +@@ -377,20 +338,11 @@ cascade_virq = irq_of_parse_and_map(np, 0); @@ -61093,11 +60377,9 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/uic.c } } -Index: linux-2.6.24.7/arch/powerpc/sysdev/xilinx_intc.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/sysdev/xilinx_intc.c -+++ linux-2.6.24.7/arch/powerpc/sysdev/xilinx_intc.c -@@ -135,10 +135,16 @@ void __init xilinx_intc_init_tree(void) +--- a/arch/powerpc/sysdev/xilinx_intc.c ++++ b/arch/powerpc/sysdev/xilinx_intc.c +@@ -135,10 +135,16 @@ struct device_node *np; /* find top level interrupt controller */ @@ -61115,10 +60397,8 @@ Index: linux-2.6.24.7/arch/powerpc/sysdev/xilinx_intc.c /* xilinx interrupt controller needs to be top level */ BUG_ON(!np); -Index: linux-2.6.24.7/arch/powerpc/xmon/setjmp.S -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/xmon/setjmp.S -+++ linux-2.6.24.7/arch/powerpc/xmon/setjmp.S +--- a/arch/powerpc/xmon/setjmp.S ++++ b/arch/powerpc/xmon/setjmp.S @@ -12,67 +12,6 @@ #include <asm/ppc_asm.h> #include <asm/asm-offsets.h> @@ -61187,10 +60467,8 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/setjmp.S /* * Grab the register values as they are now. * This won't do a particularily good job because we really -Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c -=================================================================== ---- linux-2.6.24.7.orig/arch/powerpc/xmon/xmon.c -+++ linux-2.6.24.7/arch/powerpc/xmon/xmon.c +--- a/arch/powerpc/xmon/xmon.c ++++ b/arch/powerpc/xmon/xmon.c @@ -40,6 +40,7 @@ #include <asm/spu.h> #include <asm/spu_priv1.h> @@ -61199,7 +60477,7 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c #ifdef CONFIG_PPC64 #include <asm/hvcall.h> -@@ -71,12 +72,9 @@ static unsigned long ncsum = 4096; +@@ -71,12 +72,9 @@ static int termch; static char tmpstr[128]; @@ -61212,7 +60490,7 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c /* Breakpoint stuff */ struct bpt { -@@ -153,13 +151,15 @@ static const char *getvecname(unsigned l +@@ -153,13 +151,15 @@ static int do_spu_cmd(void); @@ -61230,7 +60508,7 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c extern void xmon_save_regs(struct pt_regs *); #ifdef CONFIG_PPC64 -@@ -231,6 +231,9 @@ Commands:\n\ +@@ -231,6 +231,9 @@ #ifdef CONFIG_PPC_STD_MMU_32 " u dump segment registers\n" #endif @@ -61240,7 +60518,7 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c " ? help\n" " zr reboot\n\ zh halt\n" -@@ -856,6 +859,11 @@ cmds(struct pt_regs *excp) +@@ -856,6 +859,11 @@ dump_segments(); break; #endif @@ -61252,7 +60530,7 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c default: printf("Unrecognized command: "); do { -@@ -2527,16 +2535,33 @@ static void xmon_print_symbol(unsigned l +@@ -2527,16 +2535,33 @@ static void dump_slb(void) { int i; @@ -61293,7 +60571,7 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c } } -@@ -2581,6 +2606,32 @@ void dump_segments(void) +@@ -2581,6 +2606,32 @@ } #endif @@ -61326,11 +60604,9 @@ Index: linux-2.6.24.7/arch/powerpc/xmon/xmon.c void xmon_init(int enable) { #ifdef CONFIG_PPC_ISERIES -Index: linux-2.6.24.7/arch/ppc/kernel/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/kernel/Makefile -+++ linux-2.6.24.7/arch/ppc/kernel/Makefile -@@ -13,7 +13,6 @@ obj-y := entry.o traps.o time.o misc. +--- a/arch/ppc/kernel/Makefile ++++ b/arch/ppc/kernel/Makefile +@@ -13,7 +13,6 @@ ppc_htab.o obj-$(CONFIG_MODULES) += ppc_ksyms.o obj-$(CONFIG_PCI) += pci.o @@ -61338,11 +60614,9 @@ Index: linux-2.6.24.7/arch/ppc/kernel/Makefile obj-$(CONFIG_KGDB) += ppc-stub.o obj-$(CONFIG_SMP) += smp.o smp-tbsync.o obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o -Index: linux-2.6.24.7/arch/ppc/kernel/head_44x.S -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/kernel/head_44x.S -+++ linux-2.6.24.7/arch/ppc/kernel/head_44x.S -@@ -195,7 +195,7 @@ skpinv: addi r4,r4,1 /* Increment */ +--- a/arch/ppc/kernel/head_44x.S ++++ b/arch/ppc/kernel/head_44x.S +@@ -195,7 +195,7 @@ li r5,0 ori r5,r5,(PPC44x_TLB_SW | PPC44x_TLB_SR | PPC44x_TLB_I | PPC44x_TLB_G) @@ -61351,9 +60625,7 @@ Index: linux-2.6.24.7/arch/ppc/kernel/head_44x.S tlbwe r3,r0,PPC44x_TLB_PAGEID /* Load the pageid fields */ tlbwe r4,r0,PPC44x_TLB_XLAT /* Load the translation fields */ -Index: linux-2.6.24.7/arch/ppc/kernel/rio.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/kernel/rio.c +--- a/arch/ppc/kernel/rio.c +++ /dev/null @@ -1,52 +0,0 @@ -/* @@ -61408,10 +60680,8 @@ Index: linux-2.6.24.7/arch/ppc/kernel/rio.c -} - -subsys_initcall(ppc_rio_init); -Index: linux-2.6.24.7/arch/ppc/kernel/setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/kernel/setup.c -+++ linux-2.6.24.7/arch/ppc/kernel/setup.c +--- a/arch/ppc/kernel/setup.c ++++ b/arch/ppc/kernel/setup.c @@ -37,7 +37,6 @@ #include <asm/nvram.h> #include <asm/xmon.h> @@ -61420,11 +60690,9 @@ Index: linux-2.6.24.7/arch/ppc/kernel/setup.c #define USES_PPC_SYS (defined(CONFIG_85xx) || defined(CONFIG_83xx) || \ defined(CONFIG_MPC10X_BRIDGE) || defined(CONFIG_8260) || \ -Index: linux-2.6.24.7/arch/ppc/kernel/traps.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/kernel/traps.c -+++ linux-2.6.24.7/arch/ppc/kernel/traps.c -@@ -231,39 +231,25 @@ platform_machine_check(struct pt_regs *r +--- a/arch/ppc/kernel/traps.c ++++ b/arch/ppc/kernel/traps.c +@@ -231,39 +231,25 @@ { } @@ -61474,7 +60742,7 @@ Index: linux-2.6.24.7/arch/ppc/kernel/traps.c printk("Machine check in kernel mode.\n"); if (reason & ESR_IMCP){ printk("Instruction Synchronous Machine Check exception\n"); -@@ -293,7 +279,13 @@ void machine_check_exception(struct pt_r +@@ -293,7 +279,13 @@ /* Clear MCSR */ mtspr(SPRN_MCSR, mcsr); } @@ -61489,7 +60757,7 @@ Index: linux-2.6.24.7/arch/ppc/kernel/traps.c printk("Machine check in kernel mode.\n"); printk("Caused by (from MCSR=%lx): ", reason); -@@ -305,8 +297,6 @@ void machine_check_exception(struct pt_r +@@ -305,8 +297,6 @@ printk("Data Cache Push Parity Error\n"); if (reason & MCSR_DCPERR) printk("Data Cache Parity Error\n"); @@ -61498,7 +60766,7 @@ Index: linux-2.6.24.7/arch/ppc/kernel/traps.c if (reason & MCSR_BUS_IAERR) printk("Bus - Instruction Address Error\n"); if (reason & MCSR_BUS_RAERR) -@@ -318,12 +308,19 @@ void machine_check_exception(struct pt_r +@@ -318,12 +308,19 @@ if (reason & MCSR_BUS_RBERR) printk("Bus - Read Data Bus Error\n"); if (reason & MCSR_BUS_WBERR) @@ -61520,7 +60788,7 @@ Index: linux-2.6.24.7/arch/ppc/kernel/traps.c printk("Machine check in kernel mode.\n"); printk("Caused by (from MCSR=%lx): ", reason); -@@ -341,7 +338,14 @@ void machine_check_exception(struct pt_r +@@ -341,7 +338,14 @@ printk("Bus - Read Bus Error on data load\n"); if (reason & MCSR_BUS_WRERR) printk("Bus - Write Bus Error on buffered store or cache line push\n"); @@ -61536,7 +60804,7 @@ Index: linux-2.6.24.7/arch/ppc/kernel/traps.c printk("Machine check in kernel mode.\n"); printk("Caused by (from SRR1=%lx): ", reason); switch (reason & 0x601F0000) { -@@ -371,7 +375,39 @@ void machine_check_exception(struct pt_r +@@ -371,7 +375,39 @@ default: printk("Unknown values in msr\n"); } @@ -61577,11 +60845,9 @@ Index: linux-2.6.24.7/arch/ppc/kernel/traps.c /* * Optional platform-provided routine to print out -Index: linux-2.6.24.7/arch/ppc/mm/44x_mmu.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/mm/44x_mmu.c -+++ linux-2.6.24.7/arch/ppc/mm/44x_mmu.c -@@ -60,38 +60,28 @@ extern char etext[], _stext[]; +--- a/arch/ppc/mm/44x_mmu.c ++++ b/arch/ppc/mm/44x_mmu.c +@@ -60,38 +60,28 @@ * Just needed it declared someplace. */ unsigned int tlb_44x_index = 0; @@ -61630,7 +60896,7 @@ Index: linux-2.6.24.7/arch/ppc/mm/44x_mmu.c void __init MMU_init_hw(void) { flush_instruction_cache(); -@@ -99,22 +89,13 @@ void __init MMU_init_hw(void) +@@ -99,22 +89,13 @@ unsigned long __init mmu_mapin_ram(void) { @@ -61659,10 +60925,8 @@ Index: linux-2.6.24.7/arch/ppc/mm/44x_mmu.c return total_lowmem; } -Index: linux-2.6.24.7/arch/ppc/platforms/85xx/mpc85xx_ads_common.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/platforms/85xx/mpc85xx_ads_common.c -+++ linux-2.6.24.7/arch/ppc/platforms/85xx/mpc85xx_ads_common.c +--- a/arch/ppc/platforms/85xx/mpc85xx_ads_common.c ++++ b/arch/ppc/platforms/85xx/mpc85xx_ads_common.c @@ -42,8 +42,6 @@ #include <mm/mmu_decl.h> @@ -61672,7 +60936,7 @@ Index: linux-2.6.24.7/arch/ppc/platforms/85xx/mpc85xx_ads_common.c #include <platforms/85xx/mpc85xx_ads_common.h> #ifndef CONFIG_PCI -@@ -190,6 +188,7 @@ mpc85xx_exclude_device(u_char bus, u_cha +@@ -190,6 +188,7 @@ #endif /* CONFIG_PCI */ #ifdef CONFIG_RAPIDIO @@ -61680,10 +60944,8 @@ Index: linux-2.6.24.7/arch/ppc/platforms/85xx/mpc85xx_ads_common.c void platform_rio_init(void) { /* 512MB RIO LAW at 0xc0000000 */ -Index: linux-2.6.24.7/arch/ppc/platforms/85xx/stx_gp3.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/platforms/85xx/stx_gp3.c -+++ linux-2.6.24.7/arch/ppc/platforms/85xx/stx_gp3.c +--- a/arch/ppc/platforms/85xx/stx_gp3.c ++++ b/arch/ppc/platforms/85xx/stx_gp3.c @@ -50,12 +50,10 @@ #include <asm/irq.h> #include <asm/immap_85xx.h> @@ -61697,7 +60959,7 @@ Index: linux-2.6.24.7/arch/ppc/platforms/85xx/stx_gp3.c unsigned char __res[sizeof(bd_t)]; -@@ -271,6 +269,7 @@ int mpc85xx_exclude_device(u_char bus, u +@@ -271,6 +269,7 @@ #endif /* CONFIG_PCI */ #ifdef CONFIG_RAPIDIO @@ -61705,10 +60967,8 @@ Index: linux-2.6.24.7/arch/ppc/platforms/85xx/stx_gp3.c void platform_rio_init(void) { -Index: linux-2.6.24.7/arch/ppc/platforms/85xx/tqm85xx.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/platforms/85xx/tqm85xx.c -+++ linux-2.6.24.7/arch/ppc/platforms/85xx/tqm85xx.c +--- a/arch/ppc/platforms/85xx/tqm85xx.c ++++ b/arch/ppc/platforms/85xx/tqm85xx.c @@ -54,7 +54,6 @@ #include <syslib/ppc85xx_setup.h> #include <syslib/cpm2_pic.h> @@ -61717,7 +60977,7 @@ Index: linux-2.6.24.7/arch/ppc/platforms/85xx/tqm85xx.c #ifndef CONFIG_PCI unsigned long isa_io_base = 0; -@@ -309,6 +308,7 @@ int mpc85xx_exclude_device(u_char bus, u +@@ -309,6 +308,7 @@ #endif /* CONFIG_PCI */ #ifdef CONFIG_RAPIDIO @@ -61725,11 +60985,9 @@ Index: linux-2.6.24.7/arch/ppc/platforms/85xx/tqm85xx.c void platform_rio_init(void) { /* 512MB RIO LAW at 0xc0000000 */ -Index: linux-2.6.24.7/arch/ppc/platforms/ev64260.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/platforms/ev64260.c -+++ linux-2.6.24.7/arch/ppc/platforms/ev64260.c -@@ -336,7 +336,7 @@ ev64260_early_serial_map(void) +--- a/arch/ppc/platforms/ev64260.c ++++ b/arch/ppc/platforms/ev64260.c +@@ -336,7 +336,7 @@ #endif if (early_serial_setup(&port) != 0) @@ -61738,7 +60996,7 @@ Index: linux-2.6.24.7/arch/ppc/platforms/ev64260.c "failed\n"); first_time = 0; -@@ -388,7 +388,7 @@ ev64260_setup_arch(void) +@@ -388,7 +388,7 @@ ev64260_early_serial_map(); #endif @@ -61747,11 +61005,9 @@ Index: linux-2.6.24.7/arch/ppc/platforms/ev64260.c "(source@mvista.com)\n", BOARD_VENDOR, BOARD_MACHINE); if (ppc_md.progress) -Index: linux-2.6.24.7/arch/ppc/platforms/prep_pci.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/platforms/prep_pci.c -+++ linux-2.6.24.7/arch/ppc/platforms/prep_pci.c -@@ -1099,7 +1099,6 @@ prep_pib_init(void) +--- a/arch/ppc/platforms/prep_pci.c ++++ b/arch/ppc/platforms/prep_pci.c +@@ -1099,7 +1099,6 @@ pci_write_config_byte(dev, 0x43, reg); } } @@ -61759,11 +61015,9 @@ Index: linux-2.6.24.7/arch/ppc/platforms/prep_pci.c } if ((dev = pci_get_device(PCI_VENDOR_ID_WINBOND, -Index: linux-2.6.24.7/arch/ppc/syslib/Makefile -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/Makefile -+++ linux-2.6.24.7/arch/ppc/syslib/Makefile -@@ -93,7 +93,6 @@ obj-$(CONFIG_85xx) += open_pic.o ppc85x +--- a/arch/ppc/syslib/Makefile ++++ b/arch/ppc/syslib/Makefile +@@ -93,7 +93,6 @@ ifeq ($(CONFIG_85xx),y) obj-$(CONFIG_PCI) += pci_auto.o endif @@ -61771,10 +61025,8 @@ Index: linux-2.6.24.7/arch/ppc/syslib/Makefile obj-$(CONFIG_83xx) += ppc83xx_setup.o ppc_sys.o \ mpc83xx_sys.o mpc83xx_devices.o ipic.o ifeq ($(CONFIG_83xx),y) -Index: linux-2.6.24.7/arch/ppc/syslib/gt64260_pic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/gt64260_pic.c -+++ linux-2.6.24.7/arch/ppc/syslib/gt64260_pic.c +--- a/arch/ppc/syslib/gt64260_pic.c ++++ b/arch/ppc/syslib/gt64260_pic.c @@ -35,7 +35,6 @@ #include <linux/interrupt.h> #include <linux/sched.h> @@ -61783,10 +61035,8 @@ Index: linux-2.6.24.7/arch/ppc/syslib/gt64260_pic.c #include <linux/delay.h> #include <linux/irq.h> -Index: linux-2.6.24.7/arch/ppc/syslib/mpc52xx_pic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/mpc52xx_pic.c -+++ linux-2.6.24.7/arch/ppc/syslib/mpc52xx_pic.c +--- a/arch/ppc/syslib/mpc52xx_pic.c ++++ b/arch/ppc/syslib/mpc52xx_pic.c @@ -20,7 +20,6 @@ #include <linux/init.h> #include <linux/sched.h> @@ -61795,10 +61045,8 @@ Index: linux-2.6.24.7/arch/ppc/syslib/mpc52xx_pic.c #include <linux/delay.h> #include <linux/irq.h> -Index: linux-2.6.24.7/arch/ppc/syslib/mv64360_pic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/mv64360_pic.c -+++ linux-2.6.24.7/arch/ppc/syslib/mv64360_pic.c +--- a/arch/ppc/syslib/mv64360_pic.c ++++ b/arch/ppc/syslib/mv64360_pic.c @@ -36,7 +36,6 @@ #include <linux/init.h> #include <linux/sched.h> @@ -61807,11 +61055,9 @@ Index: linux-2.6.24.7/arch/ppc/syslib/mv64360_pic.c #include <linux/delay.h> #include <linux/irq.h> #include <linux/interrupt.h> -Index: linux-2.6.24.7/arch/ppc/syslib/ocp.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/ocp.c -+++ linux-2.6.24.7/arch/ppc/syslib/ocp.c -@@ -376,7 +376,7 @@ ocp_remove_one_device(unsigned int vendo +--- a/arch/ppc/syslib/ocp.c ++++ b/arch/ppc/syslib/ocp.c +@@ -376,7 +376,7 @@ down_write(&ocp_devices_sem); dev = __ocp_find_device(vendor, function, index); @@ -61820,10 +61066,8 @@ Index: linux-2.6.24.7/arch/ppc/syslib/ocp.c up_write(&ocp_devices_sem); DBG(("ocp: ocp_remove_one_device(vendor: %x, function: %x, index: %d)... done.\n", vendor, function, index)); -Index: linux-2.6.24.7/arch/ppc/syslib/ppc83xx_setup.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/ppc83xx_setup.c -+++ linux-2.6.24.7/arch/ppc/syslib/ppc83xx_setup.c +--- a/arch/ppc/syslib/ppc83xx_setup.c ++++ b/arch/ppc/syslib/ppc83xx_setup.c @@ -41,7 +41,6 @@ #include <syslib/ppc83xx_setup.h> @@ -61832,9 +61076,7 @@ Index: linux-2.6.24.7/arch/ppc/syslib/ppc83xx_setup.c #include <syslib/ppc83xx_pci.h> #endif -Index: linux-2.6.24.7/arch/ppc/syslib/ppc85xx_rio.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/ppc85xx_rio.c +--- a/arch/ppc/syslib/ppc85xx_rio.c +++ /dev/null @@ -1,932 +0,0 @@ -/* @@ -62769,9 +62011,7 @@ Index: linux-2.6.24.7/arch/ppc/syslib/ppc85xx_rio.c - out_be32((void *)&dbell_atmu_regs->rowar, 0x8004200b); - mpc85xx_rio_doorbell_init(port); -} -Index: linux-2.6.24.7/arch/ppc/syslib/ppc85xx_rio.h -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/ppc85xx_rio.h +--- a/arch/ppc/syslib/ppc85xx_rio.h +++ /dev/null @@ -1,20 +0,0 @@ -/* @@ -62794,11 +62034,9 @@ Index: linux-2.6.24.7/arch/ppc/syslib/ppc85xx_rio.h -extern void mpc85xx_rio_setup(int law_start, int law_size); - -#endif /* __PPC_SYSLIB_PPC85XX_RIO_H */ -Index: linux-2.6.24.7/arch/ppc/syslib/ppc8xx_pic.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/ppc8xx_pic.c -+++ linux-2.6.24.7/arch/ppc/syslib/ppc8xx_pic.c -@@ -16,7 +16,7 @@ extern int cpm_get_irq(void); +--- a/arch/ppc/syslib/ppc8xx_pic.c ++++ b/arch/ppc/syslib/ppc8xx_pic.c +@@ -16,7 +16,7 @@ * the only interrupt controller. Some boards, like the MBX and * Sandpoint have the 8259 as a secondary controller. Depending * upon the processor type, the internal controller can have as @@ -62807,11 +62045,9 @@ Index: linux-2.6.24.7/arch/ppc/syslib/ppc8xx_pic.c * "clear_bit()" and "set_bit()" functions like other platforms, * but they are overkill for us. */ -Index: linux-2.6.24.7/arch/ppc/syslib/ppc_sys.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/syslib/ppc_sys.c -+++ linux-2.6.24.7/arch/ppc/syslib/ppc_sys.c -@@ -185,7 +185,7 @@ void platform_notify_map(const struct pl +--- a/arch/ppc/syslib/ppc_sys.c ++++ b/arch/ppc/syslib/ppc_sys.c +@@ -185,7 +185,7 @@ */ /* @@ -62820,10 +62056,8 @@ Index: linux-2.6.24.7/arch/ppc/syslib/ppc_sys.c Hereby, this should be called *before* any func stuff triggeded. */ void ppc_sys_device_initfunc(void) -Index: linux-2.6.24.7/arch/ppc/xmon/start.c -=================================================================== ---- linux-2.6.24.7.orig/arch/ppc/xmon/start.c -+++ linux-2.6.24.7/arch/ppc/xmon/start.c +--- a/arch/ppc/xmon/start.c ++++ b/arch/ppc/xmon/start.c @@ -10,7 +10,6 @@ #include <linux/sysrq.h> #include <linux/bitops.h> @@ -62832,11 +62066,9 @@ Index: linux-2.6.24.7/arch/ppc/xmon/start.c #include <asm/errno.h> #include <asm/processor.h> #include <asm/delay.h> -Index: linux-2.6.24.7/drivers/ata/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/drivers/ata/Kconfig -+++ linux-2.6.24.7/drivers/ata/Kconfig -@@ -607,13 +607,23 @@ config PATA_WINBOND_VLB +--- a/drivers/ata/Kconfig ++++ b/drivers/ata/Kconfig +@@ -607,13 +607,23 @@ config PATA_PLATFORM tristate "Generic platform device PATA support" @@ -62861,11 +62093,9 @@ Index: linux-2.6.24.7/drivers/ata/Kconfig config PATA_ICSIDE tristate "Acorn ICS PATA support" depends on ARM && ARCH_ACORN -Index: linux-2.6.24.7/drivers/ata/Makefile -=================================================================== ---- linux-2.6.24.7.orig/drivers/ata/Makefile -+++ linux-2.6.24.7/drivers/ata/Makefile -@@ -67,6 +67,7 @@ obj-$(CONFIG_PATA_IXP4XX_CF) += pata_ixp +--- a/drivers/ata/Makefile ++++ b/drivers/ata/Makefile +@@ -67,6 +67,7 @@ obj-$(CONFIG_PATA_SCC) += pata_scc.o obj-$(CONFIG_PATA_BF54X) += pata_bf54x.o obj-$(CONFIG_PATA_PLATFORM) += pata_platform.o @@ -62873,10 +62103,8 @@ Index: linux-2.6.24.7/drivers/ata/Makefile obj-$(CONFIG_PATA_ICSIDE) += pata_icside.o # Should be last but two libata driver obj-$(CONFIG_PATA_ACPI) += pata_acpi.o -Index: linux-2.6.24.7/drivers/ata/pata_of_platform.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/drivers/ata/pata_of_platform.c ++++ b/drivers/ata/pata_of_platform.c @@ -0,0 +1,114 @@ +/* + * OF-platform PATA driver @@ -62992,11 +62220,9 @@ Index: linux-2.6.24.7/drivers/ata/pata_of_platform.c +MODULE_DESCRIPTION("OF-platform PATA driver"); +MODULE_AUTHOR("Anton Vorontsov <avorontsov@ru.mvista.com>"); +MODULE_LICENSE("GPL"); -Index: linux-2.6.24.7/drivers/ata/pata_platform.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/ata/pata_platform.c -+++ linux-2.6.24.7/drivers/ata/pata_platform.c -@@ -93,14 +93,9 @@ static struct ata_port_operations pata_p +--- a/drivers/ata/pata_platform.c ++++ b/drivers/ata/pata_platform.c +@@ -93,14 +93,9 @@ }; static void pata_platform_setup_port(struct ata_ioports *ioaddr, @@ -63012,7 +62238,7 @@ Index: linux-2.6.24.7/drivers/ata/pata_platform.c ioaddr->data_addr = ioaddr->cmd_addr + (ATA_REG_DATA << shift); ioaddr->error_addr = ioaddr->cmd_addr + (ATA_REG_ERR << shift); ioaddr->feature_addr = ioaddr->cmd_addr + (ATA_REG_FEATURE << shift); -@@ -114,8 +109,13 @@ static void pata_platform_setup_port(str +@@ -114,8 +109,13 @@ } /** @@ -63028,7 +62254,7 @@ Index: linux-2.6.24.7/drivers/ata/pata_platform.c * * Register a platform bus IDE interface. Such interfaces are PIO and we * assume do not support IRQ sharing. -@@ -135,42 +135,18 @@ static void pata_platform_setup_port(str +@@ -135,42 +135,18 @@ * * If no IRQ resource is present, PIO polling mode is used instead. */ @@ -63079,7 +62305,7 @@ Index: linux-2.6.24.7/drivers/ata/pata_platform.c /* * Check for MMIO -@@ -181,20 +157,21 @@ static int __devinit pata_platform_probe +@@ -181,20 +157,21 @@ /* * And the IRQ */ @@ -63106,7 +62332,7 @@ Index: linux-2.6.24.7/drivers/ata/pata_platform.c ap->flags |= ATA_FLAG_SLAVE_POSS; /* -@@ -209,25 +186,24 @@ static int __devinit pata_platform_probe +@@ -209,25 +186,24 @@ * Handle the MMIO case */ if (mmio) { @@ -63138,7 +62364,7 @@ Index: linux-2.6.24.7/drivers/ata/pata_platform.c ata_port_desc(ap, "%s cmd 0x%llx ctl 0x%llx", mmio ? "mmio" : "ioport", (unsigned long long)io_res->start, -@@ -235,26 +211,78 @@ static int __devinit pata_platform_probe +@@ -235,26 +211,78 @@ /* activate */ return ata_host_activate(host, irq, irq ? ata_interrupt : NULL, @@ -63223,11 +62449,9 @@ Index: linux-2.6.24.7/drivers/ata/pata_platform.c static struct platform_driver pata_platform_driver = { .probe = pata_platform_probe, -Index: linux-2.6.24.7/drivers/char/hw_random/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/drivers/char/hw_random/Kconfig -+++ linux-2.6.24.7/drivers/char/hw_random/Kconfig -@@ -98,7 +98,7 @@ config HW_RANDOM_PASEMI +--- a/drivers/char/hw_random/Kconfig ++++ b/drivers/char/hw_random/Kconfig +@@ -98,7 +98,7 @@ default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number @@ -63236,11 +62460,9 @@ Index: linux-2.6.24.7/drivers/char/hw_random/Kconfig To compile this driver as a module, choose M here: the module will be called pasemi-rng. -Index: linux-2.6.24.7/drivers/char/hw_random/pasemi-rng.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/char/hw_random/pasemi-rng.c -+++ linux-2.6.24.7/drivers/char/hw_random/pasemi-rng.c -@@ -126,10 +126,9 @@ static int __devexit rng_remove(struct o +--- a/drivers/char/hw_random/pasemi-rng.c ++++ b/drivers/char/hw_random/pasemi-rng.c +@@ -126,10 +126,9 @@ } static struct of_device_id rng_match[] = { @@ -63254,11 +62476,9 @@ Index: linux-2.6.24.7/drivers/char/hw_random/pasemi-rng.c }; static struct of_platform_driver rng_driver = { -Index: linux-2.6.24.7/drivers/edac/pasemi_edac.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/edac/pasemi_edac.c -+++ linux-2.6.24.7/drivers/edac/pasemi_edac.c -@@ -225,7 +225,7 @@ static int __devinit pasemi_edac_probe(s +--- a/drivers/edac/pasemi_edac.c ++++ b/drivers/edac/pasemi_edac.c +@@ -225,7 +225,7 @@ EDAC_FLAG_NONE; mci->mod_name = MODULE_NAME; mci->dev_name = pci_name(pdev); @@ -63267,16 +62487,14 @@ Index: linux-2.6.24.7/drivers/edac/pasemi_edac.c mci->edac_check = pasemi_edac_check; mci->ctl_page_to_phys = NULL; pci_read_config_dword(pdev, MCCFG_SCRUB, &scrub); -@@ -297,4 +297,4 @@ module_exit(pasemi_edac_exit); +@@ -297,4 +297,4 @@ MODULE_LICENSE("GPL"); MODULE_AUTHOR("Egor Martovetsky <egor@pasemi.com>"); -MODULE_DESCRIPTION("MC support for PA Semi PA6T-1682M memory controller"); +MODULE_DESCRIPTION("MC support for PA Semi PWRficient memory controller"); -Index: linux-2.6.24.7/drivers/macintosh/adb.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/macintosh/adb.c -+++ linux-2.6.24.7/drivers/macintosh/adb.c +--- a/drivers/macintosh/adb.c ++++ b/drivers/macintosh/adb.c @@ -35,6 +35,7 @@ #include <linux/spinlock.h> #include <linux/completion.h> @@ -63285,7 +62503,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c #include <asm/uaccess.h> #include <asm/semaphore.h> -@@ -82,21 +83,11 @@ struct adb_driver *adb_controller; +@@ -82,21 +83,11 @@ BLOCKING_NOTIFIER_HEAD(adb_client_list); static int adb_got_sleep; static int adb_inited; @@ -63307,7 +62525,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c static int adb_scan_bus(void); static int do_adb_reset_bus(void); static void adbdev_init(void); -@@ -134,16 +125,6 @@ static void printADBreply(struct adb_req +@@ -134,16 +125,6 @@ } #endif @@ -63324,7 +62542,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c static int adb_scan_bus(void) { int i, highFree=0, noMovement; -@@ -248,13 +229,10 @@ static int adb_scan_bus(void) +@@ -248,13 +229,10 @@ static int adb_probe_task(void *x) { @@ -63338,7 +62556,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c up(&adb_probe_mutex); return 0; -@@ -263,7 +241,7 @@ adb_probe_task(void *x) +@@ -263,7 +241,7 @@ static void __adb_probe_task(struct work_struct *bullshit) { @@ -63347,7 +62565,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c } static DECLARE_WORK(adb_reset_work, __adb_probe_task); -@@ -281,6 +259,36 @@ adb_reset_bus(void) +@@ -281,6 +259,36 @@ return 0; } @@ -63384,7 +62602,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c int __init adb_init(void) { struct adb_driver *driver; -@@ -313,15 +321,12 @@ int __init adb_init(void) +@@ -313,15 +321,12 @@ printk(KERN_WARNING "Warning: no ADB interface detected\n"); adb_controller = NULL; } else { @@ -63401,7 +62619,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c adbdev_init(); adb_reset_bus(); } -@@ -330,33 +335,6 @@ int __init adb_init(void) +@@ -330,33 +335,6 @@ __initcall(adb_init); @@ -63435,7 +62653,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c static int do_adb_reset_bus(void) { -@@ -373,7 +351,7 @@ do_adb_reset_bus(void) +@@ -373,7 +351,7 @@ if (sleepy_trackpad) { /* Let the trackpad settle down */ @@ -63444,7 +62662,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c } down(&adb_handler_sem); -@@ -389,7 +367,7 @@ do_adb_reset_bus(void) +@@ -389,7 +367,7 @@ if (sleepy_trackpad) { /* Let the trackpad settle down */ @@ -63453,7 +62671,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c } if (!ret) { -@@ -413,41 +391,27 @@ adb_poll(void) +@@ -413,41 +391,27 @@ adb_controller->poll(); } @@ -63502,7 +62720,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c req->nbytes = nbytes+1; req->done = done; req->reply_expected = flags & ADBREQ_REPLY; -@@ -460,25 +424,18 @@ adb_request(struct adb_request *req, voi +@@ -460,25 +424,18 @@ if (flags & ADBREQ_NOSEND) return 0; @@ -63540,7 +62758,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c return rc; } -@@ -864,7 +821,29 @@ static const struct file_operations adb_ +@@ -864,7 +821,29 @@ .release = adb_release, }; @@ -63571,7 +62789,7 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c adbdev_init(void) { if (register_chrdev(ADB_MAJOR, "adb", &adb_fops)) { -@@ -876,4 +855,7 @@ adbdev_init(void) +@@ -876,4 +855,7 @@ if (IS_ERR(adb_dev_class)) return; class_device_create(adb_dev_class, NULL, MKDEV(ADB_MAJOR, 0), NULL, "adb"); @@ -63579,10 +62797,8 @@ Index: linux-2.6.24.7/drivers/macintosh/adb.c + platform_device_register(&adb_pfdev); + platform_driver_probe(&adb_pfdrv, adb_dummy_probe); } -Index: linux-2.6.24.7/drivers/macintosh/mediabay.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/macintosh/mediabay.c -+++ linux-2.6.24.7/drivers/macintosh/mediabay.c +--- a/drivers/macintosh/mediabay.c ++++ b/drivers/macintosh/mediabay.c @@ -20,6 +20,7 @@ #include <linux/stddef.h> #include <linux/init.h> @@ -63599,7 +62815,7 @@ Index: linux-2.6.24.7/drivers/macintosh/mediabay.c #ifdef MB_DEBUG #define MBDBG(fmt, arg...) printk(KERN_INFO fmt , ## arg) -@@ -622,12 +622,7 @@ static int media_bay_task(void *x) +@@ -622,12 +622,7 @@ { int i; @@ -63613,7 +62829,7 @@ Index: linux-2.6.24.7/drivers/macintosh/mediabay.c for (i = 0; i < media_bay_count; ++i) { down(&media_bays[i].lock); if (!media_bays[i].sleeping) -@@ -636,9 +631,8 @@ static int media_bay_task(void *x) +@@ -636,9 +631,8 @@ } msleep_interruptible(MB_POLL_DELAY); @@ -63624,7 +62840,7 @@ Index: linux-2.6.24.7/drivers/macintosh/mediabay.c } static int __devinit media_bay_attach(struct macio_dev *mdev, const struct of_device_id *match) -@@ -699,7 +693,7 @@ static int __devinit media_bay_attach(st +@@ -699,7 +693,7 @@ /* Startup kernel thread */ if (i == 0) @@ -63633,11 +62849,9 @@ Index: linux-2.6.24.7/drivers/macintosh/mediabay.c return 0; -Index: linux-2.6.24.7/drivers/macintosh/therm_adt746x.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/macintosh/therm_adt746x.c -+++ linux-2.6.24.7/drivers/macintosh/therm_adt746x.c -@@ -553,6 +553,7 @@ thermostat_init(void) +--- a/drivers/macintosh/therm_adt746x.c ++++ b/drivers/macintosh/therm_adt746x.c +@@ -553,6 +553,7 @@ struct device_node* np; const u32 *prop; int i = 0, offset = 0; @@ -63645,7 +62859,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_adt746x.c np = of_find_node_by_name(NULL, "fan"); if (!np) -@@ -612,17 +613,20 @@ thermostat_init(void) +@@ -612,17 +613,20 @@ return -ENODEV; } @@ -63676,10 +62890,8 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_adt746x.c #ifndef CONFIG_I2C_POWERMAC request_module("i2c-powermac"); -Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/macintosh/therm_pm72.c -+++ linux-2.6.24.7/drivers/macintosh/therm_pm72.c +--- a/drivers/macintosh/therm_pm72.c ++++ b/drivers/macintosh/therm_pm72.c @@ -121,6 +121,7 @@ #include <linux/reboot.h> #include <linux/kmod.h> @@ -63688,7 +62900,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c #include <asm/prom.h> #include <asm/machdep.h> #include <asm/io.h> -@@ -161,7 +162,7 @@ static struct slots_pid_state slots_sta +@@ -161,7 +162,7 @@ static int state; static int cpu_count; static int cpu_pid_type; @@ -63697,7 +62909,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c static struct completion ctrl_complete; static int critical_state; static int rackmac; -@@ -1156,6 +1157,8 @@ static void do_monitor_cpu_rack(struct c +@@ -1156,6 +1157,8 @@ */ static int init_cpu_state(struct cpu_pid_state *state, int index) { @@ -63706,7 +62918,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c state->index = index; state->first = 1; state->rpm = (cpu_pid_type == CPU_PID_TYPE_RACKMAC) ? 4000 : 1000; -@@ -1181,18 +1184,21 @@ static int init_cpu_state(struct cpu_pid +@@ -1181,18 +1184,21 @@ DBG("CPU %d Using %d power history entries\n", index, state->count_power); if (index == 0) { @@ -63739,7 +62951,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c return 0; fail: -@@ -1328,6 +1334,7 @@ static int init_backside_state(struct ba +@@ -1328,6 +1334,7 @@ { struct device_node *u3; int u3h = 1; /* conservative by default */ @@ -63747,7 +62959,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c /* * There are different PID params for machines with U3 and machines -@@ -1379,8 +1386,11 @@ static int init_backside_state(struct ba +@@ -1379,8 +1386,11 @@ if (state->monitor == NULL) return -ENODEV; @@ -63761,7 +62973,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c return 0; } -@@ -1491,6 +1501,8 @@ static void do_monitor_drives(struct dri +@@ -1491,6 +1501,8 @@ */ static int init_drives_state(struct drives_pid_state *state) { @@ -63770,7 +62982,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c state->ticks = 1; state->first = 1; state->rpm = 1000; -@@ -1499,8 +1511,11 @@ static int init_drives_state(struct driv +@@ -1499,8 +1511,11 @@ if (state->monitor == NULL) return -ENODEV; @@ -63784,7 +62996,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c return 0; } -@@ -1621,7 +1636,9 @@ static int init_dimms_state(struct dimm_ +@@ -1621,7 +1636,9 @@ if (state->monitor == NULL) return -ENODEV; @@ -63795,7 +63007,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c return 0; } -@@ -1731,6 +1748,8 @@ static void do_monitor_slots(struct slot +@@ -1731,6 +1748,8 @@ */ static int init_slots_state(struct slots_pid_state *state) { @@ -63804,7 +63016,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c state->ticks = 1; state->first = 1; state->pwm = 50; -@@ -1739,8 +1758,11 @@ static int init_slots_state(struct slots +@@ -1739,8 +1758,11 @@ if (state->monitor == NULL) return -ENODEV; @@ -63818,7 +63030,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c return 0; } -@@ -1779,8 +1801,6 @@ static int call_critical_overtemp(void) +@@ -1779,8 +1801,6 @@ */ static int main_control_loop(void *x) { @@ -63827,7 +63039,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c DBG("main_control_loop started\n"); down(&driver_lock); -@@ -1956,7 +1976,7 @@ static void start_control_loops(void) +@@ -1956,7 +1976,7 @@ { init_completion(&ctrl_complete); @@ -63836,7 +63048,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c } /* -@@ -1964,7 +1984,7 @@ static void start_control_loops(void) +@@ -1964,7 +1984,7 @@ */ static void stop_control_loops(void) { @@ -63845,10 +63057,8 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_pm72.c wait_for_completion(&ctrl_complete); } -Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/macintosh/therm_windtunnel.c -+++ linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c +--- a/drivers/macintosh/therm_windtunnel.c ++++ b/drivers/macintosh/therm_windtunnel.c @@ -36,6 +36,7 @@ #include <linux/i2c.h> #include <linux/slab.h> @@ -63857,7 +63067,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c #include <asm/prom.h> #include <asm/machdep.h> -@@ -61,8 +62,7 @@ I2C_CLIENT_INSMOD; +@@ -61,8 +62,7 @@ static struct { volatile int running; @@ -63867,7 +63077,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c struct semaphore lock; struct of_device *of_dev; -@@ -223,6 +223,7 @@ static void +@@ -223,6 +223,7 @@ setup_hardware( void ) { int val; @@ -63875,7 +63085,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c /* save registers (if we unload the module) */ x.r0 = read_reg( x.fan, 0x00, 1 ); -@@ -265,8 +266,11 @@ setup_hardware( void ) +@@ -265,8 +266,11 @@ x.upind = -1; /* tune_fan( fan_up_table[x.upind].fan_setting ); */ @@ -63889,7 +63099,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c } static void -@@ -282,27 +286,27 @@ restore_regs( void ) +@@ -282,27 +286,27 @@ write_reg( x.fan, 0x00, x.r0, 1 ); } @@ -63929,7 +63139,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c } -@@ -322,8 +326,7 @@ do_attach( struct i2c_adapter *adapter ) +@@ -322,8 +326,7 @@ ret = i2c_probe( adapter, &addr_data, &do_probe ); if( x.thermostat && x.fan ) { x.running = 1; @@ -63939,7 +63149,7 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c } } return ret; -@@ -339,7 +342,8 @@ do_detach( struct i2c_client *client ) +@@ -339,7 +342,8 @@ else { if( x.running ) { x.running = 0; @@ -63949,11 +63159,9 @@ Index: linux-2.6.24.7/drivers/macintosh/therm_windtunnel.c } if( client == x.thermostat ) x.thermostat = NULL; -Index: linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/macintosh/via-pmu-backlight.c -+++ linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c -@@ -22,7 +22,7 @@ static u8 bl_curve[FB_BACKLIGHT_LEVELS]; +--- a/drivers/macintosh/via-pmu-backlight.c ++++ b/drivers/macintosh/via-pmu-backlight.c +@@ -22,7 +22,7 @@ static void pmu_backlight_init_curve(u8 off, u8 min, u8 max) { @@ -63962,7 +63170,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c bl_curve[0] = off; -@@ -68,17 +68,11 @@ static int pmu_backlight_get_level_brigh +@@ -68,17 +68,11 @@ return pmulevel; } @@ -63981,7 +63189,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c if (bd->props.power != FB_BLANK_UNBLANK || bd->props.fb_blank != FB_BLANK_UNBLANK) -@@ -99,12 +93,23 @@ static int pmu_backlight_update_status(s +@@ -99,12 +93,23 @@ pmu_wait_complete(&req); } @@ -64008,7 +63216,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c static int pmu_backlight_get_brightness(struct backlight_device *bd) { return bd->props.brightness; -@@ -123,6 +128,16 @@ void pmu_backlight_set_sleep(int sleep) +@@ -123,6 +128,16 @@ spin_lock_irqsave(&pmu_backlight_lock, flags); sleeping = sleep; @@ -64025,7 +63233,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c spin_unlock_irqrestore(&pmu_backlight_lock, flags); } #endif /* CONFIG_PM */ -@@ -148,8 +163,8 @@ void __init pmu_backlight_init() +@@ -148,8 +163,8 @@ bd = backlight_device_register(name, NULL, NULL, &pmu_backlight_data); if (IS_ERR(bd)) { @@ -64036,7 +63244,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c } bd->props.max_brightness = FB_BACKLIGHT_LEVELS - 1; pmu_backlight_init_curve(0x7F, 0x46, 0x0E); -@@ -171,10 +186,5 @@ void __init pmu_backlight_init() +@@ -171,10 +186,5 @@ bd->props.power = FB_BLANK_UNBLANK; backlight_update_status(bd); @@ -64048,10 +63256,8 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu-backlight.c - return; + printk(KERN_INFO "PMU Backlight initialized (%s)\n", name); } -Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/macintosh/via-pmu.c -+++ linux-2.6.24.7/drivers/macintosh/via-pmu.c +--- a/drivers/macintosh/via-pmu.c ++++ b/drivers/macintosh/via-pmu.c @@ -10,13 +10,11 @@ * * Copyright (C) 1998 Paul Mackerras and Fabio Riccardi. @@ -64086,7 +63292,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c /* Misc minor number allocated for /dev/pmu */ #define PMU_MINOR 154 -@@ -152,12 +147,9 @@ static spinlock_t pmu_lock; +@@ -152,12 +147,9 @@ static u8 pmu_intr_mask; static int pmu_version; static int drop_interrupts; @@ -64101,7 +63307,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c static unsigned long async_req_locks; static unsigned int pmu_irq_stats[11]; -@@ -177,7 +169,6 @@ static struct proc_dir_entry *proc_pmu_b +@@ -177,7 +169,6 @@ int __fake_sleep; int asleep; @@ -64109,7 +63315,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c #ifdef CONFIG_ADB static int adb_dev_map; -@@ -224,7 +215,7 @@ extern void enable_kernel_fp(void); +@@ -224,7 +215,7 @@ #ifdef DEBUG_SLEEP int pmu_polled_request(struct adb_request *req); @@ -64118,7 +63324,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c #endif /* -@@ -875,7 +866,7 @@ proc_read_options(char *page, char **sta +@@ -875,7 +866,7 @@ { char *p = page; @@ -64127,7 +63333,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c if (pmu_kind == PMU_KEYLARGO_BASED && pmac_call_feature(PMAC_FTR_SLEEP_STATE,NULL,0,-1) >= 0) p += sprintf(p, "lid_wakeup=%d\n", option_lid_wakeup); -@@ -916,7 +907,7 @@ proc_write_options(struct file *file, co +@@ -916,7 +907,7 @@ *(val++) = 0; while(*val == ' ') val++; @@ -64136,7 +63342,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c if (pmu_kind == PMU_KEYLARGO_BASED && pmac_call_feature(PMAC_FTR_SLEEP_STATE,NULL,0,-1) >= 0) if (!strcmp(label, "lid_wakeup")) -@@ -1256,9 +1247,7 @@ void +@@ -1256,9 +1247,7 @@ pmu_suspend(void) { unsigned long flags; @@ -64147,7 +63353,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c if (!via) return; -@@ -1276,17 +1265,10 @@ pmu_suspend(void) +@@ -1276,17 +1265,10 @@ via_pmu_interrupt(0, NULL); spin_lock_irqsave(&pmu_lock, flags); if (!adb_int_pending && pmu_state == idle && !req_awaiting_reply) { @@ -64165,7 +63371,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c break; } } while (1); -@@ -1307,18 +1289,11 @@ pmu_resume(void) +@@ -1307,18 +1289,11 @@ return; } adb_int_pending = 1; @@ -64184,7 +63390,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c } /* Interrupt data could be the result data from an ADB cmd */ -@@ -1738,228 +1713,7 @@ pmu_present(void) +@@ -1738,228 +1713,7 @@ return via != 0; } @@ -64414,7 +63620,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c /* * Put the powerbook to sleep. */ -@@ -1994,134 +1748,6 @@ restore_via_state(void) +@@ -1994,134 +1748,6 @@ out_8(&via[IER], IER_SET | SR_INT | CB1_INT); } @@ -64549,7 +63755,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c #define GRACKLE_PM (1<<7) #define GRACKLE_DOZE (1<<5) #define GRACKLE_NAP (1<<4) -@@ -2132,19 +1758,12 @@ static int powerbook_sleep_grackle(void) +@@ -2132,19 +1758,12 @@ unsigned long save_l2cr; unsigned short pmcr1; struct adb_request req; @@ -64569,7 +63775,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c /* Turn off various things. Darwin does some retry tests here... */ pmu_request(&req, NULL, 2, PMU_POWER_CTRL0, PMU_POW0_OFF|PMU_POW0_HARD_DRIVE); pmu_wait_complete(&req); -@@ -2207,8 +1826,6 @@ static int powerbook_sleep_grackle(void) +@@ -2207,8 +1826,6 @@ PMU_POW_ON|PMU_POW_BACKLIGHT|PMU_POW_CHARGER|PMU_POW_IRLED|PMU_POW_MEDIABAY); pmu_wait_complete(&req); @@ -64578,7 +63784,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c return 0; } -@@ -2218,7 +1835,6 @@ powerbook_sleep_Core99(void) +@@ -2218,7 +1835,6 @@ unsigned long save_l2cr; unsigned long save_l3cr; struct adb_request req; @@ -64586,7 +63792,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c if (pmac_call_feature(PMAC_FTR_SLEEP_STATE,NULL,0,-1) < 0) { printk(KERN_ERR "Sleep mode not supported on this machine\n"); -@@ -2228,12 +1844,6 @@ powerbook_sleep_Core99(void) +@@ -2228,12 +1844,6 @@ if (num_online_cpus() > 1 || cpu_is_offline(0)) return -EAGAIN; @@ -64599,7 +63805,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c /* Stop environment and ADB interrupts */ pmu_request(&req, NULL, 2, PMU_SET_INTR_MASK, 0); pmu_wait_complete(&req); -@@ -2304,45 +1914,33 @@ powerbook_sleep_Core99(void) +@@ -2304,45 +1914,33 @@ /* Restore LPJ, cpufreq will adjust the cpu frequency */ loops_per_jiffy /= 2; @@ -64660,7 +63866,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c /* Set the memory controller to keep the memory refreshed while we're asleep */ -@@ -2357,41 +1955,34 @@ powerbook_sleep_3400(void) +@@ -2357,41 +1955,34 @@ /* Ask the PMU to put us to sleep */ pmu_request(&sleep_req, NULL, 5, PMU_SLEEP, 'M', 'A', 'T', 'T'); @@ -64715,7 +63921,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c /* * Support for /dev/pmu device -@@ -2548,7 +2139,6 @@ pmu_release(struct inode *inode, struct +@@ -2548,7 +2139,6 @@ struct pmu_private *pp = file->private_data; unsigned long flags; @@ -64723,7 +63929,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c if (pp != 0) { file->private_data = NULL; spin_lock_irqsave(&all_pvt_lock, flags); -@@ -2562,10 +2152,96 @@ pmu_release(struct inode *inode, struct +@@ -2562,10 +2152,96 @@ kfree(pp); } @@ -64821,7 +64027,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c static int pmu_ioctl(struct inode * inode, struct file *filp, u_int cmd, u_long arg) -@@ -2574,35 +2250,15 @@ pmu_ioctl(struct inode * inode, struct f +@@ -2574,35 +2250,15 @@ int error = -EINVAL; switch (cmd) { @@ -64859,7 +64065,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c #ifdef CONFIG_PMAC_BACKLIGHT_LEGACY /* Compatibility ioctl's for backlight */ -@@ -2610,9 +2266,6 @@ pmu_ioctl(struct inode * inode, struct f +@@ -2610,9 +2266,6 @@ { int brightness; @@ -64869,7 +64075,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c brightness = pmac_backlight_get_legacy_brightness(); if (brightness < 0) return brightness; -@@ -2624,9 +2277,6 @@ pmu_ioctl(struct inode * inode, struct f +@@ -2624,9 +2277,6 @@ { int brightness; @@ -64879,7 +64085,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c error = get_user(brightness, argp); if (error) return error; -@@ -2751,15 +2401,43 @@ pmu_polled_request(struct adb_request *r +@@ -2751,15 +2401,43 @@ local_irq_restore(flags); return 0; } @@ -64928,7 +64134,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c int pmu_sys_suspended; static int pmu_sys_suspend(struct sys_device *sysdev, pm_message_t state) -@@ -2767,10 +2445,15 @@ static int pmu_sys_suspend(struct sys_de +@@ -2767,10 +2445,15 @@ if (state.event != PM_EVENT_SUSPEND || pmu_sys_suspended) return 0; @@ -64946,7 +64152,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c return 0; } -@@ -2785,15 +2468,18 @@ static int pmu_sys_resume(struct sys_dev +@@ -2785,15 +2468,18 @@ pmu_request(&req, NULL, 2, PMU_SYSTEM_READY, 2); pmu_wait_complete(&req); @@ -64967,7 +64173,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c static struct sysdev_class pmu_sysclass = { set_kset_name("pmu"), -@@ -2804,10 +2490,10 @@ static struct sys_device device_pmu = { +@@ -2804,10 +2490,10 @@ }; static struct sysdev_driver driver_pmu = { @@ -64980,7 +64186,7 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c }; static int __init init_pmu_sysfs(void) -@@ -2842,10 +2528,10 @@ EXPORT_SYMBOL(pmu_wait_complete); +@@ -2842,10 +2528,10 @@ EXPORT_SYMBOL(pmu_suspend); EXPORT_SYMBOL(pmu_resume); EXPORT_SYMBOL(pmu_unlock); @@ -64993,11 +64199,9 @@ Index: linux-2.6.24.7/drivers/macintosh/via-pmu.c -#endif /* CONFIG_PM_SLEEP && CONFIG_PPC32 */ +#endif /* CONFIG_SUSPEND && CONFIG_PPC32 */ -Index: linux-2.6.24.7/drivers/net/fs_enet/fs_enet-main.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/fs_enet/fs_enet-main.c -+++ linux-2.6.24.7/drivers/net/fs_enet/fs_enet-main.c -@@ -1178,8 +1178,15 @@ static int __devinit find_phy(struct dev +--- a/drivers/net/fs_enet/fs_enet-main.c ++++ b/drivers/net/fs_enet/fs_enet-main.c +@@ -1178,8 +1178,15 @@ struct device_node *phynode, *mdionode; struct resource res; int ret = 0, len; @@ -65014,10 +64218,8 @@ Index: linux-2.6.24.7/drivers/net/fs_enet/fs_enet-main.c if (!data || len != 4) return -EINVAL; -Index: linux-2.6.24.7/drivers/net/fs_enet/mac-fcc.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/fs_enet/mac-fcc.c -+++ linux-2.6.24.7/drivers/net/fs_enet/mac-fcc.c +--- a/drivers/net/fs_enet/mac-fcc.c ++++ b/drivers/net/fs_enet/mac-fcc.c @@ -81,16 +81,8 @@ static inline int fcc_cr_cmd(struct fs_enet_private *fep, u32 op) { @@ -65036,10 +64238,8 @@ Index: linux-2.6.24.7/drivers/net/fs_enet/mac-fcc.c } static int do_pd_setup(struct fs_enet_private *fep) -Index: linux-2.6.24.7/drivers/net/fs_enet/mac-scc.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/fs_enet/mac-scc.c -+++ linux-2.6.24.7/drivers/net/fs_enet/mac-scc.c +--- a/drivers/net/fs_enet/mac-scc.c ++++ b/drivers/net/fs_enet/mac-scc.c @@ -89,21 +89,12 @@ * Delay to wait for SCC reset command to complete (in us) */ @@ -65063,10 +64263,8 @@ Index: linux-2.6.24.7/drivers/net/fs_enet/mac-scc.c } static int do_pd_setup(struct fs_enet_private *fep) -Index: linux-2.6.24.7/drivers/net/ibm_newemac/core.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/ibm_newemac/core.c -+++ linux-2.6.24.7/drivers/net/ibm_newemac/core.c +--- a/drivers/net/ibm_newemac/core.c ++++ b/drivers/net/ibm_newemac/core.c @@ -37,6 +37,7 @@ #include <linux/mii.h> #include <linux/bitops.h> @@ -65075,11 +64273,9 @@ Index: linux-2.6.24.7/drivers/net/ibm_newemac/core.c #include <asm/processor.h> #include <asm/io.h> -Index: linux-2.6.24.7/drivers/net/phy/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/phy/Kconfig -+++ linux-2.6.24.7/drivers/net/phy/Kconfig -@@ -61,34 +61,12 @@ config ICPLUS_PHY +--- a/drivers/net/phy/Kconfig ++++ b/drivers/net/phy/Kconfig +@@ -61,34 +61,12 @@ Currently supports the IP175C PHY. config FIXED_PHY @@ -65118,10 +64314,8 @@ Index: linux-2.6.24.7/drivers/net/phy/Kconfig config MDIO_BITBANG tristate "Support for bitbanged MDIO buses" -Index: linux-2.6.24.7/drivers/net/phy/fixed.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/phy/fixed.c -+++ linux-2.6.24.7/drivers/net/phy/fixed.c +--- a/drivers/net/phy/fixed.c ++++ b/drivers/net/phy/fixed.c @@ -1,362 +1,253 @@ /* - * drivers/net/phy/fixed.c @@ -65654,11 +64848,9 @@ Index: linux-2.6.24.7/drivers/net/phy/fixed.c +MODULE_DESCRIPTION("Fixed MDIO bus (MDIO bus emulation with fixed PHYs)"); +MODULE_AUTHOR("Vitaly Bordug"); +MODULE_LICENSE("GPL"); -Index: linux-2.6.24.7/drivers/net/ps3_gelic_net.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/ps3_gelic_net.c -+++ linux-2.6.24.7/drivers/net/ps3_gelic_net.c -@@ -58,11 +58,11 @@ static inline struct device *ctodev(stru +--- a/drivers/net/ps3_gelic_net.c ++++ b/drivers/net/ps3_gelic_net.c +@@ -58,11 +58,11 @@ { return &card->dev->core; } @@ -65672,11 +64864,9 @@ Index: linux-2.6.24.7/drivers/net/ps3_gelic_net.c { return card->dev->dev_id; } -Index: linux-2.6.24.7/drivers/net/ucc_geth.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/ucc_geth.c -+++ linux-2.6.24.7/drivers/net/ucc_geth.c -@@ -3822,6 +3822,7 @@ static int ucc_geth_probe(struct of_devi +--- a/drivers/net/ucc_geth.c ++++ b/drivers/net/ucc_geth.c +@@ -3822,6 +3822,7 @@ int err, ucc_num, max_speed = 0; const phandle *ph; const unsigned int *prop; @@ -65684,7 +64874,7 @@ Index: linux-2.6.24.7/drivers/net/ucc_geth.c const void *mac_addr; phy_interface_t phy_interface; static const int enet_to_speed[] = { -@@ -3854,10 +3855,56 @@ static int ucc_geth_probe(struct of_devi +@@ -3854,10 +3855,56 @@ ug_info->uf_info.ucc_num = ucc_num; @@ -65745,11 +64935,9 @@ Index: linux-2.6.24.7/drivers/net/ucc_geth.c err = of_address_to_resource(np, 0, &res); if (err) return -EINVAL; -Index: linux-2.6.24.7/drivers/of/base.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/of/base.c -+++ linux-2.6.24.7/drivers/of/base.c -@@ -273,3 +273,61 @@ struct device_node *of_find_compatible_n +--- a/drivers/of/base.c ++++ b/drivers/of/base.c +@@ -273,3 +273,61 @@ return np; } EXPORT_SYMBOL(of_find_compatible_node); @@ -65811,10 +64999,8 @@ Index: linux-2.6.24.7/drivers/of/base.c + return np; +} +EXPORT_SYMBOL(of_find_matching_node); -Index: linux-2.6.24.7/drivers/of/device.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/of/device.c -+++ linux-2.6.24.7/drivers/of/device.c +--- a/drivers/of/device.c ++++ b/drivers/of/device.c @@ -10,35 +10,6 @@ #include <asm/errno.h> @@ -65851,19 +65037,15 @@ Index: linux-2.6.24.7/drivers/of/device.c * of_match_device - Tell if an of_device structure has a matching * of_match structure * @ids: array of of device match structures to search in -Index: linux-2.6.24.7/drivers/ps3/Makefile -=================================================================== ---- linux-2.6.24.7.orig/drivers/ps3/Makefile -+++ linux-2.6.24.7/drivers/ps3/Makefile -@@ -4,3 +4,4 @@ ps3av_mod-objs += ps3av.o ps3av_cmd.o +--- a/drivers/ps3/Makefile ++++ b/drivers/ps3/Makefile +@@ -4,3 +4,4 @@ obj-$(CONFIG_PPC_PS3) += sys-manager-core.o obj-$(CONFIG_PS3_SYS_MANAGER) += ps3-sys-manager.o obj-$(CONFIG_PS3_STORAGE) += ps3stor_lib.o +obj-$(CONFIG_PS3_LPM) += ps3-lpm.o -Index: linux-2.6.24.7/drivers/ps3/ps3-lpm.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/drivers/ps3/ps3-lpm.c ++++ b/drivers/ps3/ps3-lpm.c @@ -0,0 +1,1248 @@ +/* + * PS3 Logical Performance Monitor. @@ -67113,11 +66295,9 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-lpm.c +MODULE_DESCRIPTION("PS3 Logical Performance Monitor Driver"); +MODULE_AUTHOR("Sony Corporation"); +MODULE_ALIAS(PS3_MODULE_ALIAS_LPM); -Index: linux-2.6.24.7/drivers/ps3/ps3-sys-manager.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/ps3/ps3-sys-manager.c -+++ linux-2.6.24.7/drivers/ps3/ps3-sys-manager.c -@@ -452,7 +452,7 @@ static int ps3_sys_manager_handle_event( +--- a/drivers/ps3/ps3-sys-manager.c ++++ b/drivers/ps3/ps3-sys-manager.c +@@ -452,7 +452,7 @@ case PS3_SM_EVENT_THERMAL_ALERT: dev_dbg(&dev->core, "%s:%d: THERMAL_ALERT (zone %u)\n", __func__, __LINE__, event.value); @@ -67126,7 +66306,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-sys-manager.c break; case PS3_SM_EVENT_THERMAL_CLEARED: dev_dbg(&dev->core, "%s:%d: THERMAL_CLEARED (zone %u)\n", -@@ -488,7 +488,7 @@ static int ps3_sys_manager_handle_cmd(st +@@ -488,7 +488,7 @@ result = ps3_vuart_read(dev, &cmd, sizeof(cmd)); BUG_ON(result && "need to retry here"); @@ -67135,7 +66315,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-sys-manager.c return result; if (cmd.version != 1) { -@@ -521,7 +521,7 @@ static int ps3_sys_manager_handle_msg(st +@@ -521,7 +521,7 @@ result = ps3_vuart_read(dev, &header, sizeof(struct ps3_sys_manager_header)); @@ -67144,7 +66324,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-sys-manager.c return result; if (header.version != 1) { -@@ -589,9 +589,9 @@ static void ps3_sys_manager_final_power_ +@@ -589,9 +589,9 @@ PS3_SM_WAKE_DEFAULT); ps3_sys_manager_send_request_shutdown(dev); @@ -67156,7 +66336,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-sys-manager.c ps3_sys_manager_handle_msg(dev); } -@@ -626,9 +626,9 @@ static void ps3_sys_manager_final_restar +@@ -626,9 +626,9 @@ PS3_SM_WAKE_DEFAULT); ps3_sys_manager_send_request_shutdown(dev); @@ -67168,11 +66348,9 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-sys-manager.c ps3_sys_manager_handle_msg(dev); } -Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/ps3/ps3-vuart.c -+++ linux-2.6.24.7/drivers/ps3/ps3-vuart.c -@@ -108,18 +108,18 @@ static struct ps3_vuart_port_priv *to_po +--- a/drivers/ps3/ps3-vuart.c ++++ b/drivers/ps3/ps3-vuart.c +@@ -108,18 +108,18 @@ struct ports_bmp { u64 status; u64 unused[3]; @@ -67194,7 +66372,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c { #if defined(DEBUG) static const char *strings[] = { -@@ -363,7 +363,7 @@ int ps3_vuart_disable_interrupt_disconne +@@ -363,7 +363,7 @@ */ static int ps3_vuart_raw_write(struct ps3_system_bus_device *dev, @@ -67203,7 +66381,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c { int result; struct ps3_vuart_port_priv *priv = to_port_priv(dev); -@@ -431,7 +431,7 @@ void ps3_vuart_clear_rx_bytes(struct ps3 +@@ -431,7 +431,7 @@ int result; struct ps3_vuart_port_priv *priv = to_port_priv(dev); u64 bytes_waiting; @@ -67212,7 +66390,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c result = ps3_vuart_get_rx_bytes_waiting(dev, &bytes_waiting); -@@ -526,9 +526,8 @@ int ps3_vuart_write(struct ps3_system_bu +@@ -526,9 +526,8 @@ lb = kmalloc(sizeof(struct list_buffer) + bytes, GFP_KERNEL); @@ -67223,7 +66401,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c memcpy(lb->data, buf, bytes); lb->head = lb->data; -@@ -878,7 +877,7 @@ static int ps3_vuart_handle_port_interru +@@ -878,7 +877,7 @@ struct vuart_bus_priv { struct ports_bmp *bmp; unsigned int virq; @@ -67232,7 +66410,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c int use_count; struct ps3_system_bus_device *devices[PORT_COUNT]; } static vuart_bus_priv; -@@ -926,9 +925,8 @@ static int ps3_vuart_bus_interrupt_get(v +@@ -926,9 +925,8 @@ BUG_ON(vuart_bus_priv.use_count > 2); @@ -67243,7 +66421,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c BUG_ON(vuart_bus_priv.bmp); -@@ -1017,7 +1015,7 @@ static int ps3_vuart_probe(struct ps3_sy +@@ -1017,7 +1015,7 @@ return -EINVAL; } @@ -67252,7 +66430,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c result = ps3_vuart_bus_interrupt_get(); -@@ -1077,7 +1075,7 @@ static int ps3_vuart_probe(struct ps3_sy +@@ -1077,7 +1075,7 @@ goto fail_probe; } @@ -67261,7 +66439,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c return result; -@@ -1090,7 +1088,7 @@ fail_dev_malloc: +@@ -1090,7 +1088,7 @@ fail_busy: ps3_vuart_bus_interrupt_put(); fail_setup_interrupt: @@ -67270,7 +66448,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c dev_dbg(&dev->core, "%s:%d: failed\n", __func__, __LINE__); return result; } -@@ -1129,7 +1127,7 @@ static int ps3_vuart_remove(struct ps3_s +@@ -1129,7 +1127,7 @@ BUG_ON(!dev); @@ -67279,7 +66457,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c dev_dbg(&dev->core, " -> %s:%d: match_id %d\n", __func__, __LINE__, dev->match_id); -@@ -1137,7 +1135,7 @@ static int ps3_vuart_remove(struct ps3_s +@@ -1137,7 +1135,7 @@ if (!dev->core.driver) { dev_dbg(&dev->core, "%s:%d: no driver bound\n", __func__, __LINE__); @@ -67288,7 +66466,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c return 0; } -@@ -1160,7 +1158,7 @@ static int ps3_vuart_remove(struct ps3_s +@@ -1160,7 +1158,7 @@ priv = NULL; dev_dbg(&dev->core, " <- %s:%d\n", __func__, __LINE__); @@ -67297,7 +66475,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c return 0; } -@@ -1180,7 +1178,7 @@ static int ps3_vuart_shutdown(struct ps3 +@@ -1180,7 +1178,7 @@ BUG_ON(!dev); @@ -67306,7 +66484,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c dev_dbg(&dev->core, " -> %s:%d: match_id %d\n", __func__, __LINE__, dev->match_id); -@@ -1188,7 +1186,7 @@ static int ps3_vuart_shutdown(struct ps3 +@@ -1188,7 +1186,7 @@ if (!dev->core.driver) { dev_dbg(&dev->core, "%s:%d: no driver bound\n", __func__, __LINE__); @@ -67315,7 +66493,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c return 0; } -@@ -1212,7 +1210,7 @@ static int ps3_vuart_shutdown(struct ps3 +@@ -1212,7 +1210,7 @@ dev_dbg(&dev->core, " <- %s:%d\n", __func__, __LINE__); @@ -67324,7 +66502,7 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c return 0; } -@@ -1223,7 +1221,7 @@ static int __init ps3_vuart_bus_init(voi +@@ -1223,7 +1221,7 @@ if (!firmware_has_feature(FW_FEATURE_PS3_LV1)) return -ENODEV; @@ -67333,11 +66511,9 @@ Index: linux-2.6.24.7/drivers/ps3/ps3-vuart.c return 0; } -Index: linux-2.6.24.7/drivers/serial/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/drivers/serial/Kconfig -+++ linux-2.6.24.7/drivers/serial/Kconfig -@@ -1284,4 +1284,14 @@ config SERIAL_OF_PLATFORM +--- a/drivers/serial/Kconfig ++++ b/drivers/serial/Kconfig +@@ -1284,4 +1284,14 @@ Currently, only 8250 compatible ports are supported, but others can easily be added. @@ -67352,19 +66528,15 @@ Index: linux-2.6.24.7/drivers/serial/Kconfig + PowerPC that contain a QUICC Engine. + endmenu -Index: linux-2.6.24.7/drivers/serial/Makefile -=================================================================== ---- linux-2.6.24.7.orig/drivers/serial/Makefile -+++ linux-2.6.24.7/drivers/serial/Makefile -@@ -64,3 +64,4 @@ obj-$(CONFIG_SERIAL_UARTLITE) += uartlit +--- a/drivers/serial/Makefile ++++ b/drivers/serial/Makefile +@@ -64,3 +64,4 @@ obj-$(CONFIG_SERIAL_NETX) += netx-serial.o obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_serial.o obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o +obj-$(CONFIG_SERIAL_QE) += ucc_uart.o -Index: linux-2.6.24.7/drivers/serial/cpm_uart/cpm_uart_cpm1.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/serial/cpm_uart/cpm_uart_cpm1.c -+++ linux-2.6.24.7/drivers/serial/cpm_uart/cpm_uart_cpm1.c +--- a/drivers/serial/cpm_uart/cpm_uart_cpm1.c ++++ b/drivers/serial/cpm_uart/cpm_uart_cpm1.c @@ -52,11 +52,7 @@ #ifdef CONFIG_PPC_CPM_NEW_BINDING void cpm_line_cr_cmd(struct uart_cpm_port *port, int cmd) @@ -67378,10 +66550,8 @@ Index: linux-2.6.24.7/drivers/serial/cpm_uart/cpm_uart_cpm1.c } #else void cpm_line_cr_cmd(struct uart_cpm_port *port, int cmd) -Index: linux-2.6.24.7/drivers/serial/cpm_uart/cpm_uart_cpm2.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/serial/cpm_uart/cpm_uart_cpm2.c -+++ linux-2.6.24.7/drivers/serial/cpm_uart/cpm_uart_cpm2.c +--- a/drivers/serial/cpm_uart/cpm_uart_cpm2.c ++++ b/drivers/serial/cpm_uart/cpm_uart_cpm2.c @@ -52,13 +52,7 @@ #ifdef CONFIG_PPC_CPM_NEW_BINDING void cpm_line_cr_cmd(struct uart_cpm_port *port, int cmd) @@ -67397,7 +66567,7 @@ Index: linux-2.6.24.7/drivers/serial/cpm_uart/cpm_uart_cpm2.c } #else void cpm_line_cr_cmd(struct uart_cpm_port *port, int cmd) -@@ -171,9 +165,9 @@ void scc2_lineif(struct uart_cpm_port *p +@@ -171,9 +165,9 @@ * really has to get out of the driver so boards can * be supported in a sane fashion. */ @@ -67408,10 +66578,8 @@ Index: linux-2.6.24.7/drivers/serial/cpm_uart/cpm_uart_cpm2.c io->iop_pparb |= 0x008b0000; io->iop_pdirb |= 0x00880000; -Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/serial/mpc52xx_uart.c -+++ linux-2.6.24.7/drivers/serial/mpc52xx_uart.c +--- a/drivers/serial/mpc52xx_uart.c ++++ b/drivers/serial/mpc52xx_uart.c @@ -36,7 +36,7 @@ * DCD. However, the pin multiplexing aren't changed and should be set either * by the bootloader or in the platform init code. @@ -67437,7 +66605,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c #else #include <linux/platform_device.h> #endif -@@ -111,16 +112,18 @@ static void mpc52xx_uart_of_enumerate(vo +@@ -111,16 +112,18 @@ #endif #define PSC(port) ((struct mpc52xx_psc __iomem *)((port)->membase)) @@ -67458,7 +66626,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c #else #define uart_console(port) (0) #endif -@@ -162,7 +165,7 @@ mpc52xx_uart_stop_tx(struct uart_port *p +@@ -162,7 +165,7 @@ { /* port->lock taken by caller */ port->read_status_mask &= ~MPC52xx_PSC_IMR_TXRDY; @@ -67467,7 +66635,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } static void -@@ -170,7 +173,7 @@ mpc52xx_uart_start_tx(struct uart_port * +@@ -170,7 +173,7 @@ { /* port->lock taken by caller */ port->read_status_mask |= MPC52xx_PSC_IMR_TXRDY; @@ -67476,7 +66644,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } static void -@@ -184,7 +187,7 @@ mpc52xx_uart_send_xchar(struct uart_port +@@ -184,7 +187,7 @@ /* Make sure tx interrupts are on */ /* Truly necessary ??? They should be anyway */ port->read_status_mask |= MPC52xx_PSC_IMR_TXRDY; @@ -67485,7 +66653,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } spin_unlock_irqrestore(&port->lock, flags); -@@ -195,7 +198,7 @@ mpc52xx_uart_stop_rx(struct uart_port *p +@@ -195,7 +198,7 @@ { /* port->lock taken by caller */ port->read_status_mask &= ~MPC52xx_PSC_IMR_RXRDY; @@ -67494,7 +66662,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } static void -@@ -210,10 +213,10 @@ mpc52xx_uart_break_ctl(struct uart_port +@@ -210,10 +213,10 @@ unsigned long flags; spin_lock_irqsave(&port->lock, flags); @@ -67508,7 +66676,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c spin_unlock_irqrestore(&port->lock, flags); } -@@ -222,6 +225,7 @@ static int +@@ -222,6 +225,7 @@ mpc52xx_uart_startup(struct uart_port *port) { struct mpc52xx_psc __iomem *psc = PSC(port); @@ -67516,7 +66684,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c int ret; /* Request IRQ */ -@@ -231,23 +235,23 @@ mpc52xx_uart_startup(struct uart_port *p +@@ -231,23 +235,23 @@ return ret; /* Reset/activate the port, clear and enable interrupts */ @@ -67550,7 +66718,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c return 0; } -@@ -258,12 +262,12 @@ mpc52xx_uart_shutdown(struct uart_port * +@@ -258,12 +262,12 @@ struct mpc52xx_psc __iomem *psc = PSC(port); /* Shut down the port. Leave TX active if on a console port */ @@ -67566,7 +66734,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c /* Release interrupt */ free_irq(port->irq, port); -@@ -271,7 +275,7 @@ mpc52xx_uart_shutdown(struct uart_port * +@@ -271,7 +275,7 @@ static void mpc52xx_uart_set_termios(struct uart_port *port, struct ktermios *new, @@ -67575,7 +66743,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c { struct mpc52xx_psc __iomem *psc = PSC(port); unsigned long flags; -@@ -283,14 +287,14 @@ mpc52xx_uart_set_termios(struct uart_por +@@ -283,14 +287,14 @@ mr1 = 0; switch (new->c_cflag & CSIZE) { @@ -67598,7 +66766,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } if (new->c_cflag & PARENB) { -@@ -332,24 +336,24 @@ mpc52xx_uart_set_termios(struct uart_por +@@ -332,24 +336,24 @@ udelay(1); if (!j) @@ -67634,7 +66802,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c /* We're all set, release the lock */ spin_unlock_irqrestore(&port->lock, flags); -@@ -364,7 +368,8 @@ mpc52xx_uart_type(struct uart_port *port +@@ -364,7 +368,8 @@ static void mpc52xx_uart_release_port(struct uart_port *port) { @@ -67644,7 +66812,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c iounmap(port->membase); port->membase = NULL; } -@@ -379,7 +384,7 @@ mpc52xx_uart_request_port(struct uart_po +@@ -379,7 +384,7 @@ if (port->flags & UPF_IOREMAP) /* Need to remap ? */ port->membase = ioremap(port->mapbase, @@ -67653,7 +66821,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c if (!port->membase) return -EINVAL; -@@ -398,22 +403,22 @@ mpc52xx_uart_request_port(struct uart_po +@@ -398,22 +403,22 @@ static void mpc52xx_uart_config_port(struct uart_port *port, int flags) { @@ -67685,7 +66853,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c return -EINVAL; return 0; -@@ -455,8 +460,8 @@ mpc52xx_uart_int_rx_chars(struct uart_po +@@ -455,8 +460,8 @@ unsigned short status; /* While we can read, do so ! */ @@ -67696,7 +66864,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c /* Get the char */ ch = in_8(&PSC(port)->mpc52xx_psc_buffer_8); -@@ -474,9 +479,9 @@ mpc52xx_uart_int_rx_chars(struct uart_po +@@ -474,9 +479,9 @@ flag = TTY_NORMAL; port->icount.rx++; @@ -67709,7 +66877,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c if (status & MPC52xx_PSC_SR_RB) { flag = TTY_BREAK; -@@ -487,7 +492,7 @@ mpc52xx_uart_int_rx_chars(struct uart_po +@@ -487,7 +492,7 @@ flag = TTY_FRAME; /* Clear error condition */ @@ -67718,7 +66886,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } tty_insert_flip_char(tty, ch, flag); -@@ -568,16 +573,16 @@ mpc52xx_uart_int(int irq, void *dev_id) +@@ -568,16 +573,16 @@ /* Do we need to receive chars ? */ /* For this RX interrupts must be on and some chars waiting */ @@ -67738,7 +66906,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c keepgoing = 0; } while (keepgoing); -@@ -596,7 +601,7 @@ mpc52xx_uart_int(int irq, void *dev_id) +@@ -596,7 +601,7 @@ static void __init mpc52xx_console_get_options(struct uart_port *port, @@ -67747,7 +66915,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c { struct mpc52xx_psc __iomem *psc = PSC(port); unsigned char mr1; -@@ -604,7 +609,7 @@ mpc52xx_console_get_options(struct uart_ +@@ -604,7 +609,7 @@ pr_debug("mpc52xx_console_get_options(port=%p)\n", port); /* Read the mode registers */ @@ -67756,7 +66924,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c mr1 = in_8(&psc->mode); /* CT{U,L}R are write-only ! */ -@@ -616,11 +621,18 @@ mpc52xx_console_get_options(struct uart_ +@@ -616,11 +621,18 @@ /* Parse them */ switch (mr1 & MPC52xx_PSC_MODE_BITS_MASK) { @@ -67780,7 +66948,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } if (mr1 & MPC52xx_PSC_MODE_PARNONE) -@@ -657,7 +669,7 @@ mpc52xx_console_write(struct console *co +@@ -657,7 +669,7 @@ /* Wait the TX buffer to be empty */ j = 20000; /* Maximum wait */ while (!(in_be16(&psc->mpc52xx_psc_status) & @@ -67789,7 +66957,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c udelay(1); } -@@ -730,16 +742,18 @@ mpc52xx_console_setup(struct console *co +@@ -730,16 +742,18 @@ } pr_debug("Console on ttyPSC%x is %s\n", @@ -67811,7 +66979,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c pr_debug("Could not find IPB bus frequency!\n"); return -EINVAL; } -@@ -757,7 +771,8 @@ mpc52xx_console_setup(struct console *co +@@ -757,7 +771,8 @@ return -EINVAL; pr_debug("mpc52xx-psc uart at %p, mapped to %p, irq=%x, freq=%i\n", @@ -67821,7 +66989,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c /* Setup the port parameters accoding to options */ if (options) -@@ -766,7 +781,7 @@ mpc52xx_console_setup(struct console *co +@@ -766,7 +781,7 @@ mpc52xx_console_get_options(port, &baud, &parity, &bits, &flow); pr_debug("Setting console parameters: %i %i%c1 flow=%c\n", @@ -67830,7 +66998,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c return uart_set_options(port, co, baud, parity, bits, flow); } -@@ -781,7 +796,7 @@ static struct console mpc52xx_console = +@@ -781,7 +796,7 @@ .device = uart_console_device, .setup = mpc52xx_console_setup, .flags = CON_PRINTBUFFER, @@ -67839,7 +67007,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c .data = &mpc52xx_uart_driver, }; -@@ -809,7 +824,6 @@ console_initcall(mpc52xx_console_init); +@@ -809,7 +824,6 @@ /* ======================================================================== */ static struct uart_driver mpc52xx_uart_driver = { @@ -67847,7 +67015,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c .driver_name = "mpc52xx_psc_uart", .dev_name = "ttyPSC", .major = SERIAL_PSC_MAJOR, -@@ -837,7 +851,7 @@ mpc52xx_uart_probe(struct platform_devic +@@ -837,7 +851,7 @@ if (idx < 0 || idx >= MPC52xx_PSC_MAXNUM) return -EINVAL; @@ -67856,7 +67024,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c return -ENODEV; /* Init the port structure */ -@@ -848,13 +862,13 @@ mpc52xx_uart_probe(struct platform_devic +@@ -848,13 +862,13 @@ port->fifosize = 512; port->iotype = UPIO_MEM; port->flags = UPF_BOOT_AUTOCONF | @@ -67872,7 +67040,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c if (res->flags & IORESOURCE_MEM) port->mapbase = res->start; else if (res->flags & IORESOURCE_IRQ) -@@ -866,7 +880,7 @@ mpc52xx_uart_probe(struct platform_devic +@@ -866,7 +880,7 @@ /* Add the port to the uart sub-system */ ret = uart_add_one_port(&mpc52xx_uart_driver, port); if (!ret) @@ -67881,7 +67049,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c return ret; } -@@ -917,6 +931,7 @@ static struct platform_driver mpc52xx_ua +@@ -917,6 +931,7 @@ .resume = mpc52xx_uart_resume, #endif .driver = { @@ -67889,7 +67057,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c .name = "mpc52xx-psc", }, }; -@@ -946,10 +961,11 @@ mpc52xx_uart_of_probe(struct of_device * +@@ -946,10 +961,11 @@ if (idx >= MPC52xx_PSC_MAXNUM) return -EINVAL; pr_debug("Found %s assigned to ttyPSC%x\n", @@ -67903,7 +67071,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c dev_dbg(&op->dev, "Could not find IPB bus frequency!\n"); return -EINVAL; } -@@ -962,22 +978,23 @@ mpc52xx_uart_of_probe(struct of_device * +@@ -962,22 +978,23 @@ port->fifosize = 512; port->iotype = UPIO_MEM; port->flags = UPF_BOOT_AUTOCONF | @@ -67931,7 +67099,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c printk(KERN_ERR "Could not allocate resources for PSC\n"); return -EINVAL; } -@@ -985,7 +1002,7 @@ mpc52xx_uart_of_probe(struct of_device * +@@ -985,7 +1002,7 @@ /* Add the port to the uart sub-system */ ret = uart_add_one_port(&mpc52xx_uart_driver, port); if (!ret) @@ -67940,7 +67108,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c return ret; } -@@ -1048,6 +1065,7 @@ mpc52xx_uart_of_assign(struct device_nod +@@ -1048,6 +1065,7 @@ if (idx < 0) return; /* No free slot; abort */ @@ -67948,7 +67116,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c /* If the slot is already occupied, then swap slots */ if (mpc52xx_uart_nodes[idx] && (free_idx != -1)) mpc52xx_uart_nodes[free_idx] = mpc52xx_uart_nodes[idx]; -@@ -1057,7 +1075,7 @@ mpc52xx_uart_of_assign(struct device_nod +@@ -1057,7 +1075,7 @@ static void mpc52xx_uart_of_enumerate(void) { @@ -67957,7 +67125,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c struct device_node *np; const unsigned int *devno; int i; -@@ -1071,7 +1089,7 @@ mpc52xx_uart_of_enumerate(void) +@@ -1071,7 +1089,7 @@ /* Is a particular device number requested? */ devno = of_get_property(np, "port-number", NULL); @@ -67966,7 +67134,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c } enum_done = 1; -@@ -1079,15 +1097,13 @@ mpc52xx_uart_of_enumerate(void) +@@ -1079,15 +1097,13 @@ for (i = 0; i < MPC52xx_PSC_MAXNUM; i++) { if (mpc52xx_uart_nodes[i]) pr_debug("%s assigned to ttyPSC%x\n", @@ -67983,7 +67151,7 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c .match_table = mpc52xx_uart_of_match, .probe = mpc52xx_uart_of_probe, .remove = mpc52xx_uart_of_remove, -@@ -1113,7 +1129,8 @@ mpc52xx_uart_init(void) +@@ -1113,7 +1129,8 @@ printk(KERN_INFO "Serial: MPC52xx PSC UART driver\n"); @@ -67993,11 +67161,9 @@ Index: linux-2.6.24.7/drivers/serial/mpc52xx_uart.c printk(KERN_ERR "%s: uart_register_driver failed (%i)\n", __FILE__, ret); return ret; -Index: linux-2.6.24.7/drivers/serial/uartlite.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/serial/uartlite.c -+++ linux-2.6.24.7/drivers/serial/uartlite.c -@@ -539,7 +539,7 @@ static int __devinit ulite_assign(struct +--- a/drivers/serial/uartlite.c ++++ b/drivers/serial/uartlite.c +@@ -539,7 +539,7 @@ * * @dev: pointer to device structure */ @@ -68006,7 +67172,7 @@ Index: linux-2.6.24.7/drivers/serial/uartlite.c { struct uart_port *port = dev_get_drvdata(dev); int rc = 0; -@@ -572,14 +572,14 @@ static int __devinit ulite_probe(struct +@@ -572,14 +572,14 @@ return ulite_assign(&pdev->dev, pdev->id, res->start, res2->start); } @@ -68023,10 +67189,8 @@ Index: linux-2.6.24.7/drivers/serial/uartlite.c .driver = { .owner = THIS_MODULE, .name = "uartlite", -Index: linux-2.6.24.7/drivers/serial/ucc_uart.c -=================================================================== --- /dev/null -+++ linux-2.6.24.7/drivers/serial/ucc_uart.c ++++ b/drivers/serial/ucc_uart.c @@ -0,0 +1,1514 @@ +/* + * Freescale QUICC Engine UART device driver @@ -69542,11 +68706,9 @@ Index: linux-2.6.24.7/drivers/serial/ucc_uart.c +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS_CHARDEV_MAJOR(SERIAL_QE_MAJOR); + -Index: linux-2.6.24.7/drivers/spi/mpc52xx_psc_spi.c -=================================================================== ---- linux-2.6.24.7.orig/drivers/spi/mpc52xx_psc_spi.c -+++ linux-2.6.24.7/drivers/spi/mpc52xx_psc_spi.c -@@ -330,6 +330,7 @@ static void mpc52xx_psc_spi_cleanup(stru +--- a/drivers/spi/mpc52xx_psc_spi.c ++++ b/drivers/spi/mpc52xx_psc_spi.c +@@ -330,6 +330,7 @@ static int mpc52xx_psc_spi_port_config(int psc_id, struct mpc52xx_psc_spi *mps) { @@ -69554,7 +68716,7 @@ Index: linux-2.6.24.7/drivers/spi/mpc52xx_psc_spi.c struct mpc52xx_cdm __iomem *cdm; struct mpc52xx_gpio __iomem *gpio; struct mpc52xx_psc __iomem *psc = mps->psc; -@@ -338,8 +339,12 @@ static int mpc52xx_psc_spi_port_config(i +@@ -338,8 +339,12 @@ int ret = 0; #if defined(CONFIG_PPC_MERGE) @@ -69569,11 +68731,9 @@ Index: linux-2.6.24.7/drivers/spi/mpc52xx_psc_spi.c #else cdm = ioremap(MPC52xx_PA(MPC52xx_CDM_OFFSET), MPC52xx_CDM_SIZE); gpio = ioremap(MPC52xx_PA(MPC52xx_GPIO_OFFSET), MPC52xx_GPIO_SIZE); -Index: linux-2.6.24.7/fs/openpromfs/inode.c -=================================================================== ---- linux-2.6.24.7.orig/fs/openpromfs/inode.c -+++ linux-2.6.24.7/fs/openpromfs/inode.c -@@ -131,7 +131,7 @@ static void property_stop(struct seq_fil +--- a/fs/openpromfs/inode.c ++++ b/fs/openpromfs/inode.c +@@ -131,7 +131,7 @@ /* Nothing to do */ } @@ -69582,11 +68742,9 @@ Index: linux-2.6.24.7/fs/openpromfs/inode.c .start = property_start, .next = property_next, .stop = property_stop, -Index: linux-2.6.24.7/include/asm-powerpc/8xx_immap.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/8xx_immap.h -+++ linux-2.6.24.7/include/asm-powerpc/8xx_immap.h -@@ -123,7 +123,7 @@ typedef struct mem_ctlr { +--- a/include/asm-powerpc/8xx_immap.h ++++ b/include/asm-powerpc/8xx_immap.h +@@ -123,7 +123,7 @@ #define OR_G5LA 0x00000400 /* Output #GPL5 on #GPL_A5 */ #define OR_G5LS 0x00000200 /* Drive #GPL high on falling edge of...*/ #define OR_BI 0x00000100 /* Burst inhibit */ @@ -69595,11 +68753,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/8xx_immap.h #define OR_SCY_0_CLK 0x00000000 /* 0 clock cycles wait states */ #define OR_SCY_1_CLK 0x00000010 /* 1 clock cycles wait states */ #define OR_SCY_2_CLK 0x00000020 /* 2 clock cycles wait states */ -Index: linux-2.6.24.7/include/asm-powerpc/commproc.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/commproc.h -+++ linux-2.6.24.7/include/asm-powerpc/commproc.h -@@ -693,7 +693,7 @@ typedef struct risc_timer_pram { +--- a/include/asm-powerpc/commproc.h ++++ b/include/asm-powerpc/commproc.h +@@ -693,7 +693,7 @@ #define CICR_SCC_SCC3 ((uint)0x00200000) /* SCC3 @ SCCc */ #define CICR_SCB_SCC2 ((uint)0x00040000) /* SCC2 @ SCCb */ #define CICR_SCA_SCC1 ((uint)0x00000000) /* SCC1 @ SCCa */ @@ -69608,22 +68764,18 @@ Index: linux-2.6.24.7/include/asm-powerpc/commproc.h #define CICR_HP_MASK ((uint)0x00001f00) /* Hi-pri int. */ #define CICR_IEN ((uint)0x00000080) /* Int. enable */ #define CICR_SPS ((uint)0x00000001) /* SCC Spread */ -Index: linux-2.6.24.7/include/asm-powerpc/cpm.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/cpm.h -+++ linux-2.6.24.7/include/asm-powerpc/cpm.h -@@ -10,5 +10,6 @@ int cpm_muram_free(unsigned long offset) +--- a/include/asm-powerpc/cpm.h ++++ b/include/asm-powerpc/cpm.h +@@ -10,5 +10,6 @@ unsigned long cpm_muram_alloc_fixed(unsigned long offset, unsigned long size); void __iomem *cpm_muram_addr(unsigned long offset); dma_addr_t cpm_muram_dma(void __iomem *addr); +int cpm_command(u32 command, u8 opcode); #endif -Index: linux-2.6.24.7/include/asm-powerpc/cputable.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/cputable.h -+++ linux-2.6.24.7/include/asm-powerpc/cputable.h -@@ -57,6 +57,14 @@ enum powerpc_pmc_type { +--- a/include/asm-powerpc/cputable.h ++++ b/include/asm-powerpc/cputable.h +@@ -57,6 +57,14 @@ PPC_PMC_PA6T = 2, }; @@ -69638,7 +68790,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/cputable.h /* NOTE WELL: Update identify_cpu() if fields are added or removed! */ struct cpu_spec { /* CPU is matched via (PVR & pvr_mask) == pvr_value */ -@@ -97,6 +105,11 @@ struct cpu_spec { +@@ -97,6 +105,11 @@ /* Name of processor class, for the ELF AT_PLATFORM entry */ char *platform; @@ -69650,10 +68802,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/cputable.h }; extern struct cpu_spec *cur_cpu_spec; -Index: linux-2.6.24.7/include/asm-powerpc/cputhreads.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/include/asm-powerpc/cputhreads.h ++++ b/include/asm-powerpc/cputhreads.h @@ -0,0 +1,71 @@ +#ifndef _ASM_POWERPC_CPUTHREADS_H +#define _ASM_POWERPC_CPUTHREADS_H @@ -69726,10 +68876,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/cputhreads.h + +#endif /* _ASM_POWERPC_CPUTHREADS_H */ + -Index: linux-2.6.24.7/include/asm-powerpc/dcr-native.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/dcr-native.h -+++ linux-2.6.24.7/include/asm-powerpc/dcr-native.h +--- a/include/asm-powerpc/dcr-native.h ++++ b/include/asm-powerpc/dcr-native.h @@ -22,6 +22,8 @@ #ifdef __KERNEL__ #ifndef __ASSEMBLY__ @@ -69739,7 +68887,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/dcr-native.h typedef struct { unsigned int base; } dcr_host_t; -@@ -55,20 +57,28 @@ do { \ +@@ -55,20 +57,28 @@ } while (0) /* R/W of indirect DCRs make use of standard naming conventions for DCRs */ @@ -69778,10 +68926,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/dcr-native.h #endif /* _ASM_POWERPC_DCR_NATIVE_H */ - - -Index: linux-2.6.24.7/include/asm-powerpc/dcr-regs.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/include/asm-powerpc/dcr-regs.h ++++ b/include/asm-powerpc/dcr-regs.h @@ -0,0 +1,71 @@ +/* + * Common DCR / SDR / CPR register definitions used on various IBM/AMCC @@ -69854,11 +69000,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/dcr-regs.h +#define SDR0_CUST0 0x4000 + +#endif /* __DCR_REGS_H__ */ -Index: linux-2.6.24.7/include/asm-powerpc/dma-mapping.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/dma-mapping.h -+++ linux-2.6.24.7/include/asm-powerpc/dma-mapping.h -@@ -87,6 +87,9 @@ static inline int dma_supported(struct d +--- a/include/asm-powerpc/dma-mapping.h ++++ b/include/asm-powerpc/dma-mapping.h +@@ -87,6 +87,9 @@ return dma_ops->dma_supported(dev, mask); } @@ -69868,7 +69012,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/dma-mapping.h static inline int dma_set_mask(struct device *dev, u64 dma_mask) { struct dma_mapping_ops *dma_ops = get_dma_ops(dev); -@@ -186,8 +189,6 @@ static inline void dma_unmap_sg(struct d +@@ -186,8 +189,6 @@ extern struct dma_mapping_ops dma_iommu_ops; extern struct dma_mapping_ops dma_direct_ops; @@ -69877,11 +69021,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/dma-mapping.h #else /* CONFIG_PPC64 */ #define dma_supported(dev, mask) (1) -Index: linux-2.6.24.7/include/asm-powerpc/firmware.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/firmware.h -+++ linux-2.6.24.7/include/asm-powerpc/firmware.h -@@ -64,7 +64,7 @@ enum { +--- a/include/asm-powerpc/firmware.h ++++ b/include/asm-powerpc/firmware.h +@@ -64,7 +64,7 @@ FW_FEATURE_PS3_POSSIBLE = FW_FEATURE_LPAR | FW_FEATURE_PS3_LV1, FW_FEATURE_PS3_ALWAYS = FW_FEATURE_LPAR | FW_FEATURE_PS3_LV1, FW_FEATURE_CELLEB_POSSIBLE = FW_FEATURE_LPAR | FW_FEATURE_BEAT, @@ -69890,11 +69032,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/firmware.h FW_FEATURE_NATIVE_POSSIBLE = 0, FW_FEATURE_NATIVE_ALWAYS = 0, FW_FEATURE_POSSIBLE = -Index: linux-2.6.24.7/include/asm-powerpc/immap_86xx.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/immap_86xx.h -+++ linux-2.6.24.7/include/asm-powerpc/immap_86xx.h -@@ -89,14 +89,14 @@ struct ccsr_guts { +--- a/include/asm-powerpc/immap_86xx.h ++++ b/include/asm-powerpc/immap_86xx.h +@@ -89,14 +89,14 @@ * them. * * guts: Pointer to GUTS structure @@ -69911,7 +69051,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/immap_86xx.h clrsetbits_be32(&guts->dmacr, 3 << shift, device << shift); } -@@ -118,6 +118,27 @@ static inline void guts_set_dmacr(struct +@@ -118,6 +118,27 @@ #define CCSR_GUTS_PMUXCR_DMA1_0 0x00000002 #define CCSR_GUTS_PMUXCR_DMA1_3 0x00000001 @@ -69939,11 +69079,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/immap_86xx.h #define CCSR_GUTS_CLKDVDR_PXCKEN 0x80000000 #define CCSR_GUTS_CLKDVDR_SSICKEN 0x20000000 #define CCSR_GUTS_CLKDVDR_PXCKINV 0x10000000 -Index: linux-2.6.24.7/include/asm-powerpc/immap_qe.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/immap_qe.h -+++ linux-2.6.24.7/include/asm-powerpc/immap_qe.h -@@ -393,9 +393,39 @@ struct dbg { +--- a/include/asm-powerpc/immap_qe.h ++++ b/include/asm-powerpc/immap_qe.h +@@ -393,9 +393,39 @@ u8 res2[0x48]; } __attribute__ ((packed)); @@ -69985,11 +69123,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/immap_qe.h } __attribute__ ((packed)); struct qe_immap { -Index: linux-2.6.24.7/include/asm-powerpc/io.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/io.h -+++ linux-2.6.24.7/include/asm-powerpc/io.h -@@ -50,15 +50,16 @@ extern int check_legacy_ioport(unsigned +--- a/include/asm-powerpc/io.h ++++ b/include/asm-powerpc/io.h +@@ -50,15 +50,16 @@ #define PCI_DRAM_OFFSET pci_dram_offset #else #define _IO_BASE pci_io_base @@ -70008,11 +69144,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/io.h #if defined(CONFIG_PPC32) && defined(CONFIG_PPC_INDIRECT_IO) #error CONFIG_PPC_INDIRECT_IO is not yet supported on 32 bits #endif -Index: linux-2.6.24.7/include/asm-powerpc/iommu.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/iommu.h -+++ linux-2.6.24.7/include/asm-powerpc/iommu.h -@@ -69,10 +69,9 @@ struct iommu_table { +--- a/include/asm-powerpc/iommu.h ++++ b/include/asm-powerpc/iommu.h +@@ -69,10 +69,9 @@ }; struct scatterlist; @@ -70024,10 +69158,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/iommu.h /* Initializes an iommu_table based in values set in the passed-in * structure -Index: linux-2.6.24.7/include/asm-powerpc/ipic.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/ipic.h -+++ linux-2.6.24.7/include/asm-powerpc/ipic.h +--- a/include/asm-powerpc/ipic.h ++++ b/include/asm-powerpc/ipic.h @@ -20,11 +20,13 @@ /* Flags when we init the IPIC */ @@ -70047,11 +69179,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/ipic.h /* IPIC registers offsets */ #define IPIC_SICFR 0x00 /* System Global Interrupt Configuration Register */ -Index: linux-2.6.24.7/include/asm-powerpc/iseries/hv_lp_event.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/iseries/hv_lp_event.h -+++ linux-2.6.24.7/include/asm-powerpc/iseries/hv_lp_event.h -@@ -78,7 +78,7 @@ extern int HvLpEvent_openPath(HvLpEvent_ +--- a/include/asm-powerpc/iseries/hv_lp_event.h ++++ b/include/asm-powerpc/iseries/hv_lp_event.h +@@ -78,7 +78,7 @@ /* * Close an Lp Event Path for a type and partition @@ -70060,11 +69190,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/iseries/hv_lp_event.h */ extern int HvLpEvent_closePath(HvLpEvent_Type eventType, HvLpIndex lpIndex); -Index: linux-2.6.24.7/include/asm-powerpc/kexec.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/kexec.h -+++ linux-2.6.24.7/include/asm-powerpc/kexec.h -@@ -123,6 +123,9 @@ struct pt_regs; +--- a/include/asm-powerpc/kexec.h ++++ b/include/asm-powerpc/kexec.h +@@ -123,6 +123,9 @@ extern void default_machine_kexec(struct kimage *image); extern int default_machine_kexec_prepare(struct kimage *image); extern void default_machine_crash_shutdown(struct pt_regs *regs); @@ -70074,11 +69202,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/kexec.h extern void machine_kexec_simple(struct kimage *image); extern void crash_kexec_secondary(struct pt_regs *regs); -Index: linux-2.6.24.7/include/asm-powerpc/lmb.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/lmb.h -+++ linux-2.6.24.7/include/asm-powerpc/lmb.h -@@ -51,6 +51,7 @@ extern unsigned long __init __lmb_alloc_ +--- a/include/asm-powerpc/lmb.h ++++ b/include/asm-powerpc/lmb.h +@@ -51,6 +51,7 @@ extern unsigned long __init lmb_phys_mem_size(void); extern unsigned long __init lmb_end_of_DRAM(void); extern void __init lmb_enforce_memory_limit(unsigned long memory_limit); @@ -70086,11 +69212,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/lmb.h extern void lmb_dump_all(void); -Index: linux-2.6.24.7/include/asm-powerpc/machdep.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/machdep.h -+++ linux-2.6.24.7/include/asm-powerpc/machdep.h -@@ -204,6 +204,13 @@ struct machdep_calls { +--- a/include/asm-powerpc/machdep.h ++++ b/include/asm-powerpc/machdep.h +@@ -204,6 +204,13 @@ /* * optional PCI "hooks" */ @@ -70104,7 +69228,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/machdep.h /* Called after PPC generic resource fixup to perform machine specific fixups */ -@@ -212,18 +219,9 @@ struct machdep_calls { +@@ -212,18 +219,9 @@ /* Called for each PCI bus in the system when it's probed */ void (*pcibios_fixup_bus)(struct pci_bus *); @@ -70126,7 +69250,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/machdep.h /* Called to shutdown machine specific hardware not already controlled * by other drivers. -@@ -253,6 +251,16 @@ struct machdep_calls { +@@ -253,6 +251,16 @@ */ void (*machine_kexec)(struct kimage *image); #endif /* CONFIG_KEXEC */ @@ -70143,7 +69267,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/machdep.h }; extern void power4_idle(void); -@@ -326,5 +334,31 @@ static inline void log_error(char *buf, +@@ -326,5 +334,31 @@ ppc_md.log_error(buf, err_type, fatal); } @@ -70175,11 +69299,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/machdep.h + #endif /* __KERNEL__ */ #endif /* _ASM_POWERPC_MACHDEP_H */ -Index: linux-2.6.24.7/include/asm-powerpc/mmu-hash64.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/mmu-hash64.h -+++ linux-2.6.24.7/include/asm-powerpc/mmu-hash64.h -@@ -80,7 +80,7 @@ extern char initial_stab[]; +--- a/include/asm-powerpc/mmu-hash64.h ++++ b/include/asm-powerpc/mmu-hash64.h +@@ -80,7 +80,7 @@ #define HPTE_V_AVPN_SHIFT 7 #define HPTE_V_AVPN ASM_CONST(0x3fffffffffffff80) #define HPTE_V_AVPN_VAL(x) (((x) & HPTE_V_AVPN) >> HPTE_V_AVPN_SHIFT) @@ -70188,7 +69310,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/mmu-hash64.h #define HPTE_V_BOLTED ASM_CONST(0x0000000000000010) #define HPTE_V_LOCK ASM_CONST(0x0000000000000008) #define HPTE_V_LARGE ASM_CONST(0x0000000000000004) -@@ -180,6 +180,7 @@ extern int mmu_vmalloc_psize; +@@ -180,6 +180,7 @@ extern int mmu_io_psize; extern int mmu_kernel_ssize; extern int mmu_highuser_ssize; @@ -70196,7 +69318,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/mmu-hash64.h /* * If the processor supports 64k normal pages but not 64k cache -@@ -277,6 +278,7 @@ extern int hash_huge_page(struct mm_stru +@@ -277,6 +278,7 @@ extern int htab_bolt_mapping(unsigned long vstart, unsigned long vend, unsigned long pstart, unsigned long mode, int psize, int ssize); @@ -70204,11 +69326,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/mmu-hash64.h extern void htab_initialize(void); extern void htab_initialize_secondary(void); -Index: linux-2.6.24.7/include/asm-powerpc/mpc52xx.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/mpc52xx.h -+++ linux-2.6.24.7/include/asm-powerpc/mpc52xx.h -@@ -248,8 +248,6 @@ struct mpc52xx_cdm { +--- a/include/asm-powerpc/mpc52xx.h ++++ b/include/asm-powerpc/mpc52xx.h +@@ -248,8 +248,6 @@ #ifndef __ASSEMBLY__ @@ -70217,7 +69337,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpc52xx.h extern unsigned int mpc52xx_find_ipb_freq(struct device_node *node); extern void mpc5200_setup_xlb_arbiter(void); extern void mpc52xx_declare_of_platform_devices(void); -@@ -257,7 +255,12 @@ extern void mpc52xx_declare_of_platform_ +@@ -257,7 +255,12 @@ extern void mpc52xx_init_irq(void); extern unsigned int mpc52xx_get_irq(void); @@ -70230,11 +69350,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpc52xx.h extern void __init mpc52xx_map_wdt(void); extern void mpc52xx_restart(char *cmd); -Index: linux-2.6.24.7/include/asm-powerpc/mpc52xx_psc.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/mpc52xx_psc.h -+++ linux-2.6.24.7/include/asm-powerpc/mpc52xx_psc.h -@@ -153,6 +153,9 @@ struct mpc52xx_psc { +--- a/include/asm-powerpc/mpc52xx_psc.h ++++ b/include/asm-powerpc/mpc52xx_psc.h +@@ -153,6 +153,9 @@ u8 reserved16[3]; u8 irfdr; /* PSC + 0x54 */ u8 reserved17[3]; @@ -70244,10 +69362,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpc52xx_psc.h u16 rfnum; /* PSC + 0x58 */ u16 reserved18; u16 tfnum; /* PSC + 0x5c */ -Index: linux-2.6.24.7/include/asm-powerpc/mpc8260.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/mpc8260.h -+++ linux-2.6.24.7/include/asm-powerpc/mpc8260.h +--- a/include/asm-powerpc/mpc8260.h ++++ b/include/asm-powerpc/mpc8260.h @@ -8,6 +8,7 @@ #ifndef __ASM_POWERPC_MPC8260_H__ #define __ASM_POWERPC_MPC8260_H__ @@ -70256,10 +69372,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpc8260.h #ifdef CONFIG_8260 -Index: linux-2.6.24.7/include/asm-powerpc/mpic.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/mpic.h -+++ linux-2.6.24.7/include/asm-powerpc/mpic.h +--- a/include/asm-powerpc/mpic.h ++++ b/include/asm-powerpc/mpic.h @@ -22,7 +22,9 @@ #define MPIC_GREG_GLOBAL_CONF_0 0x00020 #define MPIC_GREG_GCONF_RESET 0x80000000 @@ -70286,7 +69400,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpic.h /* * Per-source registers -@@ -183,6 +187,7 @@ enum { +@@ -183,6 +187,7 @@ MPIC_IDX_CPU_WHOAMI, MPIC_IDX_CPU_INTACK, MPIC_IDX_CPU_EOI, @@ -70294,7 +69408,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpic.h MPIC_IDX_IRQ_BASE, MPIC_IDX_IRQ_STRIDE, -@@ -344,6 +349,10 @@ struct mpic +@@ -344,6 +349,10 @@ #define MPIC_USES_DCR 0x00000080 /* MPIC has 11-bit vector fields (or larger) */ #define MPIC_LARGE_VECTORS 0x00000100 @@ -70305,7 +69419,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpic.h /* MPIC HW modification ID */ #define MPIC_REGSET_MASK 0xf0000000 -@@ -447,10 +456,19 @@ extern void mpic_send_ipi(unsigned int i +@@ -447,10 +456,19 @@ /* Send a message (IPI) to a given target (cpu number or MSG_*) */ void smp_mpic_message_pass(int target, int msg); @@ -70326,10 +69440,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/mpic.h /* Set the EPIC clock ratio */ void mpic_set_clk_ratio(struct mpic *mpic, u32 clock_ratio); -Index: linux-2.6.24.7/include/asm-powerpc/nvram.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/nvram.h -+++ linux-2.6.24.7/include/asm-powerpc/nvram.h +--- a/include/asm-powerpc/nvram.h ++++ b/include/asm-powerpc/nvram.h @@ -10,6 +10,8 @@ #ifndef _ASM_POWERPC_NVRAM_H #define _ASM_POWERPC_NVRAM_H @@ -70339,7 +69451,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/nvram.h #define NVRW_CNT 0x20 #define NVRAM_HEADER_LEN 16 /* sizeof(struct nvram_header) */ #define NVRAM_BLOCK_LEN 16 -@@ -71,7 +73,16 @@ extern int nvram_clear_error_log(void); +@@ -71,7 +73,16 @@ extern struct nvram_partition *nvram_find_partition(int sig, const char *name); extern int pSeries_nvram_init(void); @@ -70356,10 +69468,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/nvram.h #endif /* __KERNEL__ */ /* PowerMac specific nvram stuffs */ -Index: linux-2.6.24.7/include/asm-powerpc/of_platform.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/of_platform.h -+++ linux-2.6.24.7/include/asm-powerpc/of_platform.h +--- a/include/asm-powerpc/of_platform.h ++++ b/include/asm-powerpc/of_platform.h @@ -15,8 +15,14 @@ #include <linux/of_platform.h> @@ -70377,7 +69487,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/of_platform.h /* Platform devices and busses creation */ extern struct of_device *of_platform_device_create(struct device_node *np, -@@ -26,9 +32,11 @@ extern struct of_device *of_platform_dev +@@ -26,9 +32,11 @@ #define OF_NO_DEEP_PROBE ((struct of_device_id *)-1) extern int of_platform_bus_probe(struct device_node *root, @@ -70390,10 +69500,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/of_platform.h +extern void of_instantiate_rtc(void); + #endif /* _ASM_POWERPC_OF_PLATFORM_H */ -Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/pci-bridge.h -+++ linux-2.6.24.7/include/asm-powerpc/pci-bridge.h +--- a/include/asm-powerpc/pci-bridge.h ++++ b/include/asm-powerpc/pci-bridge.h @@ -1,15 +1,42 @@ #ifndef _ASM_POWERPC_PCI_BRIDGE_H #define _ASM_POWERPC_PCI_BRIDGE_H @@ -70441,7 +69549,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h /* * Structure of a PCI controller (host bridge) -@@ -17,26 +44,41 @@ struct pci_controller; +@@ -17,26 +44,41 @@ struct pci_controller { struct pci_bus *bus; char is_dynamic; @@ -70486,7 +69594,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h /* * Used for variants of PCI indirect handling and possible quirks: * SET_CFG_TYPE - used on 4xx or any PHB that does explicit type0/1 -@@ -51,21 +93,30 @@ struct pci_controller { +@@ -51,21 +93,30 @@ * set. * BIG_ENDIAN - cfg_addr is a big endian register */ @@ -70523,7 +69631,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h static inline struct pci_controller *pci_bus_to_host(struct pci_bus *bus) { return bus->sysdata; -@@ -81,18 +132,18 @@ static inline int isa_vaddr_is_ioport(vo +@@ -81,18 +132,18 @@ /* These are used for config access before all the PCI probing has been done. */ @@ -70554,7 +69662,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h extern int early_find_capability(struct pci_controller *hose, int bus, int dev_fn, int cap); -@@ -101,87 +152,33 @@ extern void setup_indirect_pci(struct pc +@@ -101,87 +152,33 @@ resource_size_t cfg_addr, resource_size_t cfg_data, u32 flags); extern void setup_grackle(struct pci_controller *hose); @@ -70648,7 +69756,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h u32 config_space[16]; /* saved PCI config space */ #endif }; -@@ -189,7 +186,7 @@ struct pci_dn { +@@ -189,7 +186,7 @@ /* Get the pointer to a device_node's pci_dn */ #define PCI_DN(dn) ((struct pci_dn *) (dn)->data) @@ -70657,7 +69765,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h /* Get a device_node from a pci_dev. This code must be fast except * in the case where the sysdata is incorrect and needs to be fixed -@@ -227,14 +224,14 @@ static inline struct device_node *pci_bu +@@ -227,14 +224,14 @@ } /** Find the bus corresponding to the indicated device node */ @@ -70676,7 +69784,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h extern int pcibios_remove_root_bus(struct pci_controller *phb); -@@ -270,20 +267,18 @@ extern int pcibios_map_io_space(struct p +@@ -270,20 +267,18 @@ #define PHB_SET_NODE(PHB, NODE) ((PHB)->node = -1) #endif @@ -70703,7 +69811,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h extern void pcibios_free_controller(struct pci_controller *phb); #ifdef CONFIG_PCI -@@ -298,9 +293,7 @@ static inline int pcibios_vaddr_is_iopor +@@ -298,9 +293,7 @@ { return 0; } @@ -70716,11 +69824,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci-bridge.h -#endif +#endif /* __KERNEL__ */ +#endif /* _ASM_POWERPC_PCI_BRIDGE_H */ -Index: linux-2.6.24.7/include/asm-powerpc/pci.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/pci.h -+++ linux-2.6.24.7/include/asm-powerpc/pci.h -@@ -36,11 +36,10 @@ struct pci_dev; +--- a/include/asm-powerpc/pci.h ++++ b/include/asm-powerpc/pci.h +@@ -36,11 +36,10 @@ /* * Set this to 1 if you want the kernel to re-assign all PCI @@ -70735,7 +69841,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci.h #define pcibios_scan_all_fns(a, b) 0 static inline void pcibios_set_master(struct pci_dev *dev) -@@ -95,9 +94,6 @@ static inline void pci_dma_burst_advice( +@@ -95,9 +94,6 @@ #define get_pci_dma_ops() NULL #endif @@ -70745,7 +69851,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci.h #else /* 32-bit */ #ifdef CONFIG_PCI -@@ -109,17 +105,14 @@ static inline void pci_dma_burst_advice( +@@ -109,17 +105,14 @@ *strategy_parameter = ~0UL; } #endif @@ -70767,7 +69873,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci.h struct vm_area_struct; /* Map a range of PCI memory or I/O space for a device into user space */ int pci_mmap_page_range(struct pci_dev *pdev, struct vm_area_struct *vma, -@@ -199,13 +192,12 @@ static inline struct resource *pcibios_s +@@ -199,13 +192,12 @@ return root; } @@ -70783,7 +69889,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci.h extern struct pci_controller *init_phb_dynamic(struct device_node *dn); extern struct pci_dev *of_create_pci_dev(struct device_node *node, -@@ -229,5 +221,8 @@ extern void pci_resource_to_user(const s +@@ -229,5 +221,8 @@ const struct resource *rsrc, resource_size_t *start, resource_size_t *end); @@ -70792,11 +69898,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/pci.h + #endif /* __KERNEL__ */ #endif /* __ASM_POWERPC_PCI_H */ -Index: linux-2.6.24.7/include/asm-powerpc/ppc-pci.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/ppc-pci.h -+++ linux-2.6.24.7/include/asm-powerpc/ppc-pci.h -@@ -22,7 +22,6 @@ extern void pci_setup_phb_io_dynamic(str +--- a/include/asm-powerpc/ppc-pci.h ++++ b/include/asm-powerpc/ppc-pci.h +@@ -22,7 +22,6 @@ extern struct list_head hose_list; @@ -70804,7 +69908,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/ppc-pci.h extern void find_and_init_phbs(void); -@@ -47,9 +46,6 @@ extern void init_pci_config_tokens (void +@@ -47,9 +46,6 @@ extern unsigned long get_phb_buid (struct device_node *); extern int rtas_setup_phb(struct pci_controller *phb); @@ -70814,11 +69918,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/ppc-pci.h extern unsigned long pci_probe_only; /* ---- EEH internal-use-only related routines ---- */ -Index: linux-2.6.24.7/include/asm-powerpc/prom.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/prom.h -+++ linux-2.6.24.7/include/asm-powerpc/prom.h -@@ -202,6 +202,10 @@ static inline unsigned long of_read_ulon +--- a/include/asm-powerpc/prom.h ++++ b/include/asm-powerpc/prom.h +@@ -202,6 +202,10 @@ */ extern u64 of_translate_address(struct device_node *np, const u32 *addr); @@ -70829,10 +69931,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/prom.h /* Extract an address from a device, returns the region size and * the address space flags too. The PCI version uses a BAR number * instead of an absolute index -Index: linux-2.6.24.7/include/asm-powerpc/ps3.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/ps3.h -+++ linux-2.6.24.7/include/asm-powerpc/ps3.h +--- a/include/asm-powerpc/ps3.h ++++ b/include/asm-powerpc/ps3.h @@ -24,6 +24,7 @@ #include <linux/init.h> #include <linux/types.h> @@ -70841,7 +69941,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/ps3.h union ps3_firmware_version { u64 raw; -@@ -317,6 +318,7 @@ enum ps3_match_id { +@@ -317,6 +318,7 @@ PS3_MATCH_ID_STOR_FLASH = 8, PS3_MATCH_ID_SOUND = 9, PS3_MATCH_ID_GRAPHICS = 10, @@ -70849,7 +69949,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/ps3.h }; #define PS3_MODULE_ALIAS_EHCI "ps3:1" -@@ -329,11 +331,13 @@ enum ps3_match_id { +@@ -329,11 +331,13 @@ #define PS3_MODULE_ALIAS_STOR_FLASH "ps3:8" #define PS3_MODULE_ALIAS_SOUND "ps3:9" #define PS3_MODULE_ALIAS_GRAPHICS "ps3:10" @@ -70863,7 +69963,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/ps3.h }; /** -@@ -344,12 +348,17 @@ struct ps3_system_bus_device { +@@ -344,12 +348,17 @@ enum ps3_match_id match_id; enum ps3_system_bus_device_type dev_type; @@ -70883,7 +69983,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/ps3.h /* struct iommu_table *iommu_table; -- waiting for BenH's cleanups */ struct device core; -@@ -438,5 +447,66 @@ struct ps3_prealloc { +@@ -438,5 +447,66 @@ extern struct ps3_prealloc ps3fb_videomemory; extern struct ps3_prealloc ps3flash_bounce_buffer; @@ -70950,11 +70050,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/ps3.h +u64 ps3_get_spe_id(void *arg); #endif -Index: linux-2.6.24.7/include/asm-powerpc/ptrace.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/ptrace.h -+++ linux-2.6.24.7/include/asm-powerpc/ptrace.h -@@ -106,7 +106,8 @@ extern int ptrace_put_reg(struct task_st +--- a/include/asm-powerpc/ptrace.h ++++ b/include/asm-powerpc/ptrace.h +@@ -106,7 +106,8 @@ */ #define FULL_REGS(regs) (((regs)->trap & 1) == 0) #ifndef __powerpc64__ @@ -70964,10 +70062,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/ptrace.h #endif /* ! __powerpc64__ */ #define TRAP(regs) ((regs)->trap & ~0xF) #ifdef __powerpc64__ -Index: linux-2.6.24.7/include/asm-powerpc/qe.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/qe.h -+++ linux-2.6.24.7/include/asm-powerpc/qe.h +--- a/include/asm-powerpc/qe.h ++++ b/include/asm-powerpc/qe.h @@ -28,6 +28,52 @@ #define MEM_PART_SECONDARY 1 #define MEM_PART_MURAM 2 @@ -71021,7 +70117,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/qe.h /* Export QE common operations */ extern void qe_reset(void); extern int par_io_init(struct device_node *np); -@@ -38,7 +84,8 @@ extern int par_io_data_set(u8 port, u8 p +@@ -38,7 +84,8 @@ /* QE internal API */ int qe_issue_cmd(u32 cmd, u32 device, u8 mcn_protocol, u32 cmd_input); @@ -71031,7 +70127,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/qe.h int qe_get_snum(void); void qe_put_snum(u8 snum); unsigned long qe_muram_alloc(int size, int align); -@@ -47,6 +94,58 @@ unsigned long qe_muram_alloc_fixed(unsig +@@ -47,6 +94,58 @@ void qe_muram_dump(void); void *qe_muram_addr(unsigned long offset); @@ -71090,7 +70186,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/qe.h /* Buffer descriptors */ struct qe_bd { __be16 status; -@@ -129,52 +228,6 @@ enum comm_dir { +@@ -129,52 +228,6 @@ COMM_DIR_RX_AND_TX = 3 }; @@ -71143,7 +70239,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/qe.h /* QE CMXUCR Registers. * There are two UCCs represented in each of the four CMXUCR registers. * These values are for the UCC in the LSBs -@@ -328,6 +381,15 @@ enum qe_clock { +@@ -328,6 +381,15 @@ #define QE_SDEBCR_BA_MASK 0x01FFFFFF @@ -71159,10 +70255,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/qe.h /* UPC */ #define UPGCR_PROTOCOL 0x80000000 /* protocol ul2 or pl2 */ #define UPGCR_TMS 0x40000000 /* Transmit master/slave mode */ -Index: linux-2.6.24.7/include/asm-powerpc/reg.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/reg.h -+++ linux-2.6.24.7/include/asm-powerpc/reg.h +--- a/include/asm-powerpc/reg.h ++++ b/include/asm-powerpc/reg.h @@ -553,6 +553,7 @@ #define SPRN_PA6T_BTCR 978 /* Breakpoint and Tagging Control Register */ #define SPRN_PA6T_IMAAT 979 /* Instruction Match Array Action Table */ @@ -71184,10 +70278,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/reg.h /* Macros for setting and retrieving special purpose registers */ #ifndef __ASSEMBLY__ #define mfmsr() ({unsigned long rval; \ -Index: linux-2.6.24.7/include/asm-powerpc/reg_booke.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/reg_booke.h -+++ linux-2.6.24.7/include/asm-powerpc/reg_booke.h +--- a/include/asm-powerpc/reg_booke.h ++++ b/include/asm-powerpc/reg_booke.h @@ -123,16 +123,23 @@ #define SPRN_SPEFSCR 0x200 /* SPE & Embedded FP Status & Control */ #define SPRN_BBEAR 0x201 /* Branch Buffer Entry Address Register */ @@ -71266,10 +70358,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/reg_booke.h #define ESR_PTR 0x02000000 /* Program Exception - Trap */ #define ESR_FP 0x01000000 /* Floating Point Operation */ #define ESR_DST 0x00800000 /* Storage Exception - Data miss */ -Index: linux-2.6.24.7/include/asm-powerpc/setjmp.h -=================================================================== --- /dev/null -+++ linux-2.6.24.7/include/asm-powerpc/setjmp.h ++++ b/include/asm-powerpc/setjmp.h @@ -0,0 +1,18 @@ +/* + * Copyright © 2008 Michael Neuling IBM Corporation @@ -71289,10 +70379,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/setjmp.h +extern void longjmp(long *, long); + +#endif /* _ASM_POWERPC_SETJMP_H */ -Index: linux-2.6.24.7/include/asm-powerpc/smu.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/smu.h -+++ linux-2.6.24.7/include/asm-powerpc/smu.h +--- a/include/asm-powerpc/smu.h ++++ b/include/asm-powerpc/smu.h @@ -22,7 +22,7 @@ * Partition info commands * @@ -71477,7 +70565,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/smu.h /* * - Kernel side interface - -@@ -564,13 +688,13 @@ struct smu_user_cmd_hdr +@@ -564,13 +688,13 @@ __u8 cmd; /* SMU command byte */ __u8 pad[3]; /* padding */ @@ -71493,10 +70581,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/smu.h }; #endif /* _SMU_H */ -Index: linux-2.6.24.7/include/asm-powerpc/sparsemem.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/sparsemem.h -+++ linux-2.6.24.7/include/asm-powerpc/sparsemem.h +--- a/include/asm-powerpc/sparsemem.h ++++ b/include/asm-powerpc/sparsemem.h @@ -10,13 +10,8 @@ */ #define SECTION_SIZE_BITS 24 @@ -71511,10 +70597,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/sparsemem.h #ifdef CONFIG_MEMORY_HOTPLUG extern void create_section_mapping(unsigned long start, unsigned long end); -Index: linux-2.6.24.7/include/asm-powerpc/spu.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/spu.h -+++ linux-2.6.24.7/include/asm-powerpc/spu.h +--- a/include/asm-powerpc/spu.h ++++ b/include/asm-powerpc/spu.h @@ -104,6 +104,7 @@ struct spu_context; @@ -71523,7 +70607,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu.h struct device_node; enum spu_utilization_state { -@@ -145,7 +146,6 @@ struct spu { +@@ -145,7 +146,6 @@ void (* ibox_callback)(struct spu *spu); void (* stop_callback)(struct spu *spu); void (* mfc_callback)(struct spu *spu); @@ -71531,7 +70615,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu.h char irq_c0[8]; char irq_c1[8]; -@@ -196,10 +196,11 @@ struct cbe_spu_info { +@@ -196,10 +196,11 @@ extern struct cbe_spu_info cbe_spu_info[]; void spu_init_channels(struct spu *spu); @@ -71545,7 +70629,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu.h #ifdef CONFIG_KEXEC void crash_register_spus(struct list_head *list); #else -@@ -210,6 +211,7 @@ static inline void crash_register_spus(s +@@ -210,6 +211,7 @@ extern void spu_invalidate_slbs(struct spu *spu); extern void spu_associate_mm(struct spu *spu, struct mm_struct *mm); @@ -71553,7 +70637,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu.h /* Calls from the memory management to the SPU */ struct mm_struct; -@@ -279,6 +281,8 @@ void spu_remove_sysdev_attr(struct sysde +@@ -279,6 +281,8 @@ int spu_add_sysdev_attr_group(struct attribute_group *attrs); void spu_remove_sysdev_attr_group(struct attribute_group *attrs); @@ -71562,7 +70646,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu.h /* * Notifier blocks: -@@ -303,7 +307,7 @@ extern void notify_spus_active(void); +@@ -303,7 +307,7 @@ extern void do_notify_spus_active(void); /* @@ -71571,7 +70655,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu.h */ union mfc_tag_size_class_cmd { -@@ -524,8 +528,24 @@ struct spu_priv1 { +@@ -524,8 +528,24 @@ #define CLASS2_ENABLE_SPU_STOP_INTR 0x2L #define CLASS2_ENABLE_SPU_HALT_INTR 0x4L #define CLASS2_ENABLE_SPU_DMA_TAG_GROUP_COMPLETE_INTR 0x8L @@ -71596,11 +70680,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu.h u8 pad_0x158_0x180[0x28]; /* 0x158 */ u64 int_route_RW; /* 0x180 */ -Index: linux-2.6.24.7/include/asm-powerpc/spu_csa.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/spu_csa.h -+++ linux-2.6.24.7/include/asm-powerpc/spu_csa.h -@@ -194,7 +194,7 @@ struct spu_priv1_collapsed { +--- a/include/asm-powerpc/spu_csa.h ++++ b/include/asm-powerpc/spu_csa.h +@@ -194,7 +194,7 @@ }; /* @@ -71609,7 +70691,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu_csa.h */ struct spu_priv2_collapsed { u64 slb_index_W; -@@ -254,20 +254,11 @@ struct spu_state { +@@ -254,20 +254,11 @@ u64 spu_chnldata_RW[32]; u32 spu_mailbox_data[4]; u32 pu_mailbox_data[1]; @@ -71631,10 +70713,8 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu_csa.h #endif /* !__SPU__ */ #endif /* __KERNEL__ */ #endif /* !__ASSEMBLY__ */ -Index: linux-2.6.24.7/include/asm-powerpc/spu_priv1.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/spu_priv1.h -+++ linux-2.6.24.7/include/asm-powerpc/spu_priv1.h +--- a/include/asm-powerpc/spu_priv1.h ++++ b/include/asm-powerpc/spu_priv1.h @@ -24,6 +24,7 @@ #include <linux/types.h> @@ -71643,7 +70723,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu_priv1.h /* access to priv1 registers */ -@@ -178,6 +179,8 @@ struct spu_management_ops { +@@ -178,6 +179,8 @@ int (*enumerate_spus)(int (*fn)(void *data)); int (*create_spu)(struct spu *spu, void *data); int (*destroy_spu)(struct spu *spu); @@ -71652,7 +70732,7 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu_priv1.h int (*init_affinity)(void); }; -@@ -207,6 +210,18 @@ spu_init_affinity (void) +@@ -207,6 +210,18 @@ return spu_management_ops->init_affinity(); } @@ -71671,11 +70751,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/spu_priv1.h /* * The declarations folowing are put here for convenience * and only intended to be used by the platform setup code. -Index: linux-2.6.24.7/include/asm-powerpc/system.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/system.h -+++ linux-2.6.24.7/include/asm-powerpc/system.h -@@ -169,6 +169,8 @@ extern int do_page_fault(struct pt_regs +--- a/include/asm-powerpc/system.h ++++ b/include/asm-powerpc/system.h +@@ -169,6 +169,8 @@ extern void bad_page_fault(struct pt_regs *, unsigned long, int); extern int die(const char *, struct pt_regs *, long); extern void _exception(int, struct pt_regs *, int, unsigned long); @@ -71684,11 +70762,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/system.h #ifdef CONFIG_BOOKE_WDT extern u32 booke_wdt_enabled; extern u32 booke_wdt_period; -Index: linux-2.6.24.7/include/asm-powerpc/udbg.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-powerpc/udbg.h -+++ linux-2.6.24.7/include/asm-powerpc/udbg.h -@@ -48,6 +48,7 @@ extern void __init udbg_init_rtas_consol +--- a/include/asm-powerpc/udbg.h ++++ b/include/asm-powerpc/udbg.h +@@ -48,6 +48,7 @@ extern void __init udbg_init_debug_beat(void); extern void __init udbg_init_btext(void); extern void __init udbg_init_44x_as1(void); @@ -71696,11 +70772,9 @@ Index: linux-2.6.24.7/include/asm-powerpc/udbg.h extern void __init udbg_init_cpm(void); #endif /* __KERNEL__ */ -Index: linux-2.6.24.7/include/asm-ppc/8xx_immap.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-ppc/8xx_immap.h -+++ linux-2.6.24.7/include/asm-ppc/8xx_immap.h -@@ -123,7 +123,7 @@ typedef struct mem_ctlr { +--- a/include/asm-ppc/8xx_immap.h ++++ b/include/asm-ppc/8xx_immap.h +@@ -123,7 +123,7 @@ #define OR_G5LA 0x00000400 /* Output #GPL5 on #GPL_A5 */ #define OR_G5LS 0x00000200 /* Drive #GPL high on falling edge of...*/ #define OR_BI 0x00000100 /* Burst inhibit */ @@ -71709,11 +70783,9 @@ Index: linux-2.6.24.7/include/asm-ppc/8xx_immap.h #define OR_SCY_0_CLK 0x00000000 /* 0 clock cycles wait states */ #define OR_SCY_1_CLK 0x00000010 /* 1 clock cycles wait states */ #define OR_SCY_2_CLK 0x00000020 /* 2 clock cycles wait states */ -Index: linux-2.6.24.7/include/asm-ppc/commproc.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-ppc/commproc.h -+++ linux-2.6.24.7/include/asm-ppc/commproc.h -@@ -681,7 +681,7 @@ typedef struct risc_timer_pram { +--- a/include/asm-ppc/commproc.h ++++ b/include/asm-ppc/commproc.h +@@ -681,7 +681,7 @@ #define CICR_SCC_SCC3 ((uint)0x00200000) /* SCC3 @ SCCc */ #define CICR_SCB_SCC2 ((uint)0x00040000) /* SCC2 @ SCCb */ #define CICR_SCA_SCC1 ((uint)0x00000000) /* SCC1 @ SCCa */ @@ -71722,11 +70794,9 @@ Index: linux-2.6.24.7/include/asm-ppc/commproc.h #define CICR_HP_MASK ((uint)0x00001f00) /* Hi-pri int. */ #define CICR_IEN ((uint)0x00000080) /* Int. enable */ #define CICR_SPS ((uint)0x00000001) /* SCC Spread */ -Index: linux-2.6.24.7/include/asm-ppc/mmu.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-ppc/mmu.h -+++ linux-2.6.24.7/include/asm-ppc/mmu.h -@@ -383,6 +383,12 @@ typedef struct _P601_BAT { +--- a/include/asm-ppc/mmu.h ++++ b/include/asm-ppc/mmu.h +@@ -383,6 +383,12 @@ #define BOOKE_PAGESZ_256GB 14 #define BOOKE_PAGESZ_1TB 15 @@ -71739,11 +70809,9 @@ Index: linux-2.6.24.7/include/asm-ppc/mmu.h /* * Freescale Book-E MMU support */ -Index: linux-2.6.24.7/include/asm-ppc/mpc52xx_psc.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-ppc/mpc52xx_psc.h -+++ linux-2.6.24.7/include/asm-ppc/mpc52xx_psc.h -@@ -159,6 +159,9 @@ struct mpc52xx_psc { +--- a/include/asm-ppc/mpc52xx_psc.h ++++ b/include/asm-ppc/mpc52xx_psc.h +@@ -159,6 +159,9 @@ u8 reserved16[3]; u8 irfdr; /* PSC + 0x54 */ u8 reserved17[3]; @@ -71753,10 +70821,8 @@ Index: linux-2.6.24.7/include/asm-ppc/mpc52xx_psc.h u16 rfnum; /* PSC + 0x58 */ u16 reserved18; u16 tfnum; /* PSC + 0x5c */ -Index: linux-2.6.24.7/include/asm-ppc/reg_booke.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-ppc/reg_booke.h -+++ linux-2.6.24.7/include/asm-ppc/reg_booke.h +--- a/include/asm-ppc/reg_booke.h ++++ b/include/asm-ppc/reg_booke.h @@ -207,7 +207,7 @@ #define CCR1_TCS 0x00000080 /* Timer Clock Select */ @@ -71775,10 +70841,8 @@ Index: linux-2.6.24.7/include/asm-ppc/reg_booke.h #define ESR_PTR 0x02000000 /* Program Exception - Trap */ #define ESR_FP 0x01000000 /* Floating Point Operation */ #define ESR_DST 0x00800000 /* Storage Exception - Data miss */ -Index: linux-2.6.24.7/include/linux/of.h -=================================================================== ---- linux-2.6.24.7.orig/include/linux/of.h -+++ linux-2.6.24.7/include/linux/of.h +--- a/include/linux/of.h ++++ b/include/linux/of.h @@ -17,6 +17,7 @@ */ #include <linux/types.h> @@ -71787,7 +70851,7 @@ Index: linux-2.6.24.7/include/linux/of.h #include <asm/prom.h> -@@ -41,11 +42,20 @@ extern struct device_node *of_find_compa +@@ -41,11 +42,20 @@ #define for_each_compatible_node(dn, type, compatible) \ for (dn = of_find_compatible_node(NULL, type, compatible); dn; \ dn = of_find_compatible_node(dn, type, compatible)) @@ -71808,7 +70872,7 @@ Index: linux-2.6.24.7/include/linux/of.h extern struct property *of_find_property(const struct device_node *np, const char *name, int *lenp); -@@ -56,5 +66,7 @@ extern const void *of_get_property(const +@@ -56,5 +66,7 @@ int *lenp); extern int of_n_addr_cells(struct device_node *np); extern int of_n_size_cells(struct device_node *np); @@ -71816,10 +70880,8 @@ Index: linux-2.6.24.7/include/linux/of.h + const struct of_device_id *matches, const struct device_node *node); #endif /* _LINUX_OF_H */ -Index: linux-2.6.24.7/include/linux/of_device.h -=================================================================== ---- linux-2.6.24.7.orig/include/linux/of_device.h -+++ linux-2.6.24.7/include/linux/of_device.h +--- a/include/linux/of_device.h ++++ b/include/linux/of_device.h @@ -10,8 +10,6 @@ #define to_of_device(d) container_of(d, struct of_device, dev) @@ -71829,11 +70891,9 @@ Index: linux-2.6.24.7/include/linux/of_device.h extern const struct of_device_id *of_match_device( const struct of_device_id *matches, const struct of_device *dev); -Index: linux-2.6.24.7/include/linux/pata_platform.h -=================================================================== ---- linux-2.6.24.7.orig/include/linux/pata_platform.h -+++ linux-2.6.24.7/include/linux/pata_platform.h -@@ -15,4 +15,13 @@ struct pata_platform_info { +--- a/include/linux/pata_platform.h ++++ b/include/linux/pata_platform.h +@@ -15,4 +15,13 @@ unsigned int irq_flags; }; @@ -71847,10 +70907,8 @@ Index: linux-2.6.24.7/include/linux/pata_platform.h +extern int __devexit __pata_platform_remove(struct device *dev); + #endif /* __LINUX_PATA_PLATFORM_H */ -Index: linux-2.6.24.7/include/linux/phy_fixed.h -=================================================================== ---- linux-2.6.24.7.orig/include/linux/phy_fixed.h -+++ linux-2.6.24.7/include/linux/phy_fixed.h +--- a/include/linux/phy_fixed.h ++++ b/include/linux/phy_fixed.h @@ -1,38 +1,31 @@ #ifndef __PHY_FIXED_H #define __PHY_FIXED_H @@ -71912,11 +70970,9 @@ Index: linux-2.6.24.7/include/linux/phy_fixed.h + struct fixed_phy_status *)); #endif /* __PHY_FIXED_H */ -Index: linux-2.6.24.7/include/linux/pmu.h -=================================================================== ---- linux-2.6.24.7.orig/include/linux/pmu.h -+++ linux-2.6.24.7/include/linux/pmu.h -@@ -159,41 +159,7 @@ extern void pmu_unlock(void); +--- a/include/linux/pmu.h ++++ b/include/linux/pmu.h +@@ -159,41 +159,7 @@ extern int pmu_present(void); extern int pmu_get_model(void); |