diff options
author | David Woodhouse <dwmw2@shinybook.infradead.org> | 2005-08-09 11:51:35 -0400 |
---|---|---|
committer | David Woodhouse <dwmw2@shinybook.infradead.org> | 2005-08-09 11:51:35 -0400 |
commit | c973b112c76c9d8fd042991128f218a738cc8d0a (patch) | |
tree | e813b0da5d0a0e19e06de6462d145a29ad683026 /arch/ppc/syslib | |
parent | c5fbc3966f48279dbebfde10248c977014aa9988 (diff) | |
parent | 00dd1e433967872f3997a45d5adf35056fdf2f56 (diff) |
Merge with /shiny/git/linux-2.6/.git
Diffstat (limited to 'arch/ppc/syslib')
-rw-r--r-- | arch/ppc/syslib/Makefile | 2 | ||||
-rw-r--r-- | arch/ppc/syslib/cpm2_common.c | 1 | ||||
-rw-r--r-- | arch/ppc/syslib/ibm440gx_common.c | 15 | ||||
-rw-r--r-- | arch/ppc/syslib/ibm44x_common.h | 4 | ||||
-rw-r--r-- | arch/ppc/syslib/m8260_setup.c | 3 | ||||
-rw-r--r-- | arch/ppc/syslib/m82xx_pci.c | 6 | ||||
-rw-r--r-- | arch/ppc/syslib/m8xx_setup.c | 8 | ||||
-rw-r--r-- | arch/ppc/syslib/mpc10x_common.c | 53 | ||||
-rw-r--r-- | arch/ppc/syslib/mpc83xx_devices.c | 8 | ||||
-rw-r--r-- | arch/ppc/syslib/ppc85xx_setup.c | 4 |
10 files changed, 76 insertions, 28 deletions
diff --git a/arch/ppc/syslib/Makefile b/arch/ppc/syslib/Makefile index dec5bf4f6879..220a65ab0a51 100644 --- a/arch/ppc/syslib/Makefile +++ b/arch/ppc/syslib/Makefile | |||
@@ -11,6 +11,7 @@ obj-$(CONFIG_PPCBUG_NVRAM) += prep_nvram.o | |||
11 | obj-$(CONFIG_PPC_OCP) += ocp.o | 11 | obj-$(CONFIG_PPC_OCP) += ocp.o |
12 | obj-$(CONFIG_IBM_OCP) += ibm_ocp.o | 12 | obj-$(CONFIG_IBM_OCP) += ibm_ocp.o |
13 | obj-$(CONFIG_44x) += ibm44x_common.o | 13 | obj-$(CONFIG_44x) += ibm44x_common.o |
14 | obj-$(CONFIG_440EP) += ibm440gx_common.o | ||
14 | obj-$(CONFIG_440GP) += ibm440gp_common.o | 15 | obj-$(CONFIG_440GP) += ibm440gp_common.o |
15 | obj-$(CONFIG_440GX) += ibm440gx_common.o | 16 | obj-$(CONFIG_440GX) += ibm440gx_common.o |
16 | obj-$(CONFIG_440SP) += ibm440gx_common.o ibm440sp_common.o | 17 | obj-$(CONFIG_440SP) += ibm440gx_common.o ibm440sp_common.o |
@@ -44,6 +45,7 @@ obj-$(CONFIG_PPC_CHRP) += open_pic.o indirect_pci.o i8259.o | |||
44 | obj-$(CONFIG_PPC_PREP) += open_pic.o indirect_pci.o i8259.o todc_time.o | 45 | obj-$(CONFIG_PPC_PREP) += open_pic.o indirect_pci.o i8259.o todc_time.o |
45 | obj-$(CONFIG_ADIR) += i8259.o indirect_pci.o pci_auto.o \ | 46 | obj-$(CONFIG_ADIR) += i8259.o indirect_pci.o pci_auto.o \ |
46 | todc_time.o | 47 | todc_time.o |
48 | obj-$(CONFIG_BAMBOO) += indirect_pci.o pci_auto.o todc_time.o | ||
47 | obj-$(CONFIG_CPCI690) += todc_time.o pci_auto.o | 49 | obj-$(CONFIG_CPCI690) += todc_time.o pci_auto.o |
48 | obj-$(CONFIG_EBONY) += indirect_pci.o pci_auto.o todc_time.o | 50 | obj-$(CONFIG_EBONY) += indirect_pci.o pci_auto.o todc_time.o |
49 | obj-$(CONFIG_EV64260) += todc_time.o pci_auto.o | 51 | obj-$(CONFIG_EV64260) += todc_time.o pci_auto.o |
diff --git a/arch/ppc/syslib/cpm2_common.c b/arch/ppc/syslib/cpm2_common.c index 4c19a4ac7163..cbac44b1620c 100644 --- a/arch/ppc/syslib/cpm2_common.c +++ b/arch/ppc/syslib/cpm2_common.c | |||
@@ -27,7 +27,6 @@ | |||
27 | #include <asm/mpc8260.h> | 27 | #include <asm/mpc8260.h> |
28 | #include <asm/page.h> | 28 | #include <asm/page.h> |
29 | #include <asm/pgtable.h> | 29 | #include <asm/pgtable.h> |
30 | #include <asm/immap_cpm2.h> | ||
31 | #include <asm/cpm2.h> | 30 | #include <asm/cpm2.h> |
32 | #include <asm/rheap.h> | 31 | #include <asm/rheap.h> |
33 | 32 | ||
diff --git a/arch/ppc/syslib/ibm440gx_common.c b/arch/ppc/syslib/ibm440gx_common.c index 4ad85e0e0234..d4776af6a3ca 100644 --- a/arch/ppc/syslib/ibm440gx_common.c +++ b/arch/ppc/syslib/ibm440gx_common.c | |||
@@ -34,6 +34,10 @@ void __init ibm440gx_get_clocks(struct ibm44x_clocks* p, unsigned int sys_clk, | |||
34 | u32 plld = CPR_READ(DCRN_CPR_PLLD); | 34 | u32 plld = CPR_READ(DCRN_CPR_PLLD); |
35 | u32 uart0 = SDR_READ(DCRN_SDR_UART0); | 35 | u32 uart0 = SDR_READ(DCRN_SDR_UART0); |
36 | u32 uart1 = SDR_READ(DCRN_SDR_UART1); | 36 | u32 uart1 = SDR_READ(DCRN_SDR_UART1); |
37 | #ifdef CONFIG_440EP | ||
38 | u32 uart2 = SDR_READ(DCRN_SDR_UART2); | ||
39 | u32 uart3 = SDR_READ(DCRN_SDR_UART3); | ||
40 | #endif | ||
37 | 41 | ||
38 | /* Dividers */ | 42 | /* Dividers */ |
39 | u32 fbdv = __fix_zero((plld >> 24) & 0x1f, 32); | 43 | u32 fbdv = __fix_zero((plld >> 24) & 0x1f, 32); |
@@ -96,6 +100,17 @@ bypass: | |||
96 | p->uart1 = ser_clk; | 100 | p->uart1 = ser_clk; |
97 | else | 101 | else |
98 | p->uart1 = p->plb / __fix_zero(uart1 & 0xff, 256); | 102 | p->uart1 = p->plb / __fix_zero(uart1 & 0xff, 256); |
103 | #ifdef CONFIG_440EP | ||
104 | if (uart2 & 0x00800000) | ||
105 | p->uart2 = ser_clk; | ||
106 | else | ||
107 | p->uart2 = p->plb / __fix_zero(uart2 & 0xff, 256); | ||
108 | |||
109 | if (uart3 & 0x00800000) | ||
110 | p->uart3 = ser_clk; | ||
111 | else | ||
112 | p->uart3 = p->plb / __fix_zero(uart3 & 0xff, 256); | ||
113 | #endif | ||
99 | } | 114 | } |
100 | 115 | ||
101 | /* Issue L2C diagnostic command */ | 116 | /* Issue L2C diagnostic command */ |
diff --git a/arch/ppc/syslib/ibm44x_common.h b/arch/ppc/syslib/ibm44x_common.h index b14eb603ce01..c16b6a5ac6ab 100644 --- a/arch/ppc/syslib/ibm44x_common.h +++ b/arch/ppc/syslib/ibm44x_common.h | |||
@@ -29,6 +29,10 @@ struct ibm44x_clocks { | |||
29 | unsigned int ebc; /* PerClk */ | 29 | unsigned int ebc; /* PerClk */ |
30 | unsigned int uart0; | 30 | unsigned int uart0; |
31 | unsigned int uart1; | 31 | unsigned int uart1; |
32 | #ifdef CONFIG_440EP | ||
33 | unsigned int uart2; | ||
34 | unsigned int uart3; | ||
35 | #endif | ||
32 | }; | 36 | }; |
33 | 37 | ||
34 | /* common 44x platform init */ | 38 | /* common 44x platform init */ |
diff --git a/arch/ppc/syslib/m8260_setup.c b/arch/ppc/syslib/m8260_setup.c index fda75d79050c..8f80a42dfdb7 100644 --- a/arch/ppc/syslib/m8260_setup.c +++ b/arch/ppc/syslib/m8260_setup.c | |||
@@ -24,7 +24,7 @@ | |||
24 | #include <asm/io.h> | 24 | #include <asm/io.h> |
25 | #include <asm/pgtable.h> | 25 | #include <asm/pgtable.h> |
26 | #include <asm/mpc8260.h> | 26 | #include <asm/mpc8260.h> |
27 | #include <asm/immap_cpm2.h> | 27 | #include <asm/cpm2.h> |
28 | #include <asm/machdep.h> | 28 | #include <asm/machdep.h> |
29 | #include <asm/bootinfo.h> | 29 | #include <asm/bootinfo.h> |
30 | #include <asm/time.h> | 30 | #include <asm/time.h> |
@@ -33,7 +33,6 @@ | |||
33 | 33 | ||
34 | unsigned char __res[sizeof(bd_t)]; | 34 | unsigned char __res[sizeof(bd_t)]; |
35 | 35 | ||
36 | extern void cpm2_reset(void); | ||
37 | extern void pq2_find_bridges(void); | 36 | extern void pq2_find_bridges(void); |
38 | extern void pq2pci_init_irq(void); | 37 | extern void pq2pci_init_irq(void); |
39 | extern void idma_pci9_init(void); | 38 | extern void idma_pci9_init(void); |
diff --git a/arch/ppc/syslib/m82xx_pci.c b/arch/ppc/syslib/m82xx_pci.c index 5e7a7edcea74..9db58c587b46 100644 --- a/arch/ppc/syslib/m82xx_pci.c +++ b/arch/ppc/syslib/m82xx_pci.c | |||
@@ -238,9 +238,9 @@ pq2ads_setup_pci(struct pci_controller *hose) | |||
238 | * Setting required to enable IRQ1-IRQ7 (SIUMCR [DPPC]), | 238 | * Setting required to enable IRQ1-IRQ7 (SIUMCR [DPPC]), |
239 | * and local bus for PCI (SIUMCR [LBPC]). | 239 | * and local bus for PCI (SIUMCR [LBPC]). |
240 | */ | 240 | */ |
241 | immap->im_siu_conf.siu_82xx.sc_siumcr = (immap->im_siu_conf.sc_siumcr & | 241 | immap->im_siu_conf.siu_82xx.sc_siumcr = (immap->im_siu_conf.siu_82xx.sc_siumcr & |
242 | ~(SIUMCR_L2PC11 | SIUMCR_LBPC11 | SIUMCR_CS10PC11 | SIUMCR_APPC11) | | 242 | ~(SIUMCR_L2CPC11 | SIUMCR_LBPC11 | SIUMCR_CS10PC11 | SIUMCR_APPC11) | |
243 | SIUMCR_BBD | SIUMCR_LBPC01 | SIUMCR_DPPC11 | SIUMCR_APPC10; | 243 | SIUMCR_BBD | SIUMCR_LBPC01 | SIUMCR_DPPC11 | SIUMCR_APPC10); |
244 | #endif | 244 | #endif |
245 | /* Enable PCI */ | 245 | /* Enable PCI */ |
246 | immap->im_pci.pci_gcr = cpu_to_le32(PCIGCR_PCI_BUS_EN); | 246 | immap->im_pci.pci_gcr = cpu_to_le32(PCIGCR_PCI_BUS_EN); |
diff --git a/arch/ppc/syslib/m8xx_setup.c b/arch/ppc/syslib/m8xx_setup.c index c1db2ab1d154..55a381af4e37 100644 --- a/arch/ppc/syslib/m8xx_setup.c +++ b/arch/ppc/syslib/m8xx_setup.c | |||
@@ -57,7 +57,7 @@ unsigned char __res[sizeof(bd_t)]; | |||
57 | extern void m8xx_ide_init(void); | 57 | extern void m8xx_ide_init(void); |
58 | 58 | ||
59 | extern unsigned long find_available_memory(void); | 59 | extern unsigned long find_available_memory(void); |
60 | extern void m8xx_cpm_reset(uint cpm_page); | 60 | extern void m8xx_cpm_reset(); |
61 | extern void m8xx_wdt_handler_install(bd_t *bp); | 61 | extern void m8xx_wdt_handler_install(bd_t *bp); |
62 | extern void rpxfb_alloc_pages(void); | 62 | extern void rpxfb_alloc_pages(void); |
63 | extern void cpm_interrupt_init(void); | 63 | extern void cpm_interrupt_init(void); |
@@ -70,13 +70,9 @@ board_init(void) | |||
70 | void __init | 70 | void __init |
71 | m8xx_setup_arch(void) | 71 | m8xx_setup_arch(void) |
72 | { | 72 | { |
73 | int cpm_page; | ||
74 | |||
75 | cpm_page = (int) alloc_bootmem_pages(PAGE_SIZE); | ||
76 | |||
77 | /* Reset the Communication Processor Module. | 73 | /* Reset the Communication Processor Module. |
78 | */ | 74 | */ |
79 | m8xx_cpm_reset(cpm_page); | 75 | m8xx_cpm_reset(); |
80 | 76 | ||
81 | #ifdef CONFIG_FB_RPX | 77 | #ifdef CONFIG_FB_RPX |
82 | rpxfb_alloc_pages(); | 78 | rpxfb_alloc_pages(); |
diff --git a/arch/ppc/syslib/mpc10x_common.c b/arch/ppc/syslib/mpc10x_common.c index 8fc5f4154521..87065e2e4c5f 100644 --- a/arch/ppc/syslib/mpc10x_common.c +++ b/arch/ppc/syslib/mpc10x_common.c | |||
@@ -45,24 +45,29 @@ | |||
45 | #define MPC10X_DMA0_IRQ (EPIC_IRQ_BASE + 1 + NUM_8259_INTERRUPTS) | 45 | #define MPC10X_DMA0_IRQ (EPIC_IRQ_BASE + 1 + NUM_8259_INTERRUPTS) |
46 | #define MPC10X_DMA1_IRQ (EPIC_IRQ_BASE + 2 + NUM_8259_INTERRUPTS) | 46 | #define MPC10X_DMA1_IRQ (EPIC_IRQ_BASE + 2 + NUM_8259_INTERRUPTS) |
47 | #define MPC10X_UART0_IRQ (EPIC_IRQ_BASE + 4 + NUM_8259_INTERRUPTS) | 47 | #define MPC10X_UART0_IRQ (EPIC_IRQ_BASE + 4 + NUM_8259_INTERRUPTS) |
48 | #define MPC10X_UART1_IRQ (EPIC_IRQ_BASE + 5 + NUM_8259_INTERRUPTS) | ||
48 | #else | 49 | #else |
49 | #define MPC10X_I2C_IRQ -1 | 50 | #define MPC10X_I2C_IRQ -1 |
50 | #define MPC10X_DMA0_IRQ -1 | 51 | #define MPC10X_DMA0_IRQ -1 |
51 | #define MPC10X_DMA1_IRQ -1 | 52 | #define MPC10X_DMA1_IRQ -1 |
52 | #define MPC10X_UART0_IRQ -1 | 53 | #define MPC10X_UART0_IRQ -1 |
54 | #define MPC10X_UART1_IRQ -1 | ||
53 | #endif | 55 | #endif |
54 | 56 | ||
55 | static struct fsl_i2c_platform_data mpc10x_i2c_pdata = { | 57 | static struct fsl_i2c_platform_data mpc10x_i2c_pdata = { |
56 | .device_flags = 0, | 58 | .device_flags = 0, |
57 | }; | 59 | }; |
58 | 60 | ||
59 | static struct plat_serial8250_port serial_platform_data[] = { | 61 | static struct plat_serial8250_port serial_plat_uart0[] = { |
60 | [0] = { | 62 | [0] = { |
61 | .mapbase = 0x4500, | 63 | .mapbase = 0x4500, |
62 | .iotype = UPIO_MEM, | 64 | .iotype = UPIO_MEM, |
63 | .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, | 65 | .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, |
64 | }, | 66 | }, |
65 | [1] = { | 67 | { }, |
68 | }; | ||
69 | static struct plat_serial8250_port serial_plat_uart1[] = { | ||
70 | [0] = { | ||
66 | .mapbase = 0x4600, | 71 | .mapbase = 0x4600, |
67 | .iotype = UPIO_MEM, | 72 | .iotype = UPIO_MEM, |
68 | .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, | 73 | .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, |
@@ -133,11 +138,17 @@ struct platform_device ppc_sys_platform_devices[] = { | |||
133 | }, | 138 | }, |
134 | }, | 139 | }, |
135 | }, | 140 | }, |
136 | [MPC10X_DUART] = { | 141 | [MPC10X_UART0] = { |
137 | .name = "serial8250", | 142 | .name = "serial8250", |
138 | .id = 0, | 143 | .id = 0, |
139 | .dev.platform_data = serial_platform_data, | 144 | .dev.platform_data = serial_plat_uart0, |
140 | }, | 145 | }, |
146 | [MPC10X_UART1] = { | ||
147 | .name = "serial8250", | ||
148 | .id = 1, | ||
149 | .dev.platform_data = serial_plat_uart1, | ||
150 | }, | ||
151 | |||
141 | }; | 152 | }; |
142 | 153 | ||
143 | /* We use the PCI ID to match on */ | 154 | /* We use the PCI ID to match on */ |
@@ -147,10 +158,10 @@ struct ppc_sys_spec ppc_sys_specs[] = { | |||
147 | .ppc_sys_name = "8245", | 158 | .ppc_sys_name = "8245", |
148 | .mask = 0xFFFFFFFF, | 159 | .mask = 0xFFFFFFFF, |
149 | .value = MPC10X_BRIDGE_8245, | 160 | .value = MPC10X_BRIDGE_8245, |
150 | .num_devices = 4, | 161 | .num_devices = 5, |
151 | .device_list = (enum ppc_sys_devices[]) | 162 | .device_list = (enum ppc_sys_devices[]) |
152 | { | 163 | { |
153 | MPC10X_IIC1, MPC10X_DMA0, MPC10X_DMA1, MPC10X_DUART, | 164 | MPC10X_IIC1, MPC10X_DMA0, MPC10X_DMA1, MPC10X_UART0, MPC10X_UART1, |
154 | }, | 165 | }, |
155 | }, | 166 | }, |
156 | { | 167 | { |
@@ -180,6 +191,25 @@ struct ppc_sys_spec ppc_sys_specs[] = { | |||
180 | }, | 191 | }, |
181 | }; | 192 | }; |
182 | 193 | ||
194 | /* | ||
195 | * mach_mpc10x_fixup: This function enables DUART mode if it detects | ||
196 | * if it detects two UARTS in the platform device entries. | ||
197 | */ | ||
198 | static int __init mach_mpc10x_fixup(struct platform_device *pdev) | ||
199 | { | ||
200 | if (strncmp (pdev->name, "serial8250", 10) == 0 && pdev->id == 1) | ||
201 | writeb(readb(serial_plat_uart1[0].membase + 0x11) | 0x1, | ||
202 | serial_plat_uart1[0].membase + 0x11); | ||
203 | return 0; | ||
204 | } | ||
205 | |||
206 | static int __init mach_mpc10x_init(void) | ||
207 | { | ||
208 | ppc_sys_device_fixup = mach_mpc10x_fixup; | ||
209 | return 0; | ||
210 | } | ||
211 | postcore_initcall(mach_mpc10x_init); | ||
212 | |||
183 | /* Set resources to match bridge memory map */ | 213 | /* Set resources to match bridge memory map */ |
184 | void __init | 214 | void __init |
185 | mpc10x_bridge_set_resources(int map, struct pci_controller *hose) | 215 | mpc10x_bridge_set_resources(int map, struct pci_controller *hose) |
@@ -219,6 +249,7 @@ mpc10x_bridge_set_resources(int map, struct pci_controller *hose) | |||
219 | ppc_md.progress("mpc10x:exit1", 0x100); | 249 | ppc_md.progress("mpc10x:exit1", 0x100); |
220 | } | 250 | } |
221 | } | 251 | } |
252 | |||
222 | /* | 253 | /* |
223 | * Do some initialization and put the EUMB registers at the specified address | 254 | * Do some initialization and put the EUMB registers at the specified address |
224 | * (also map the EPIC registers into virtual space--OpenPIC_Addr will be set). | 255 | * (also map the EPIC registers into virtual space--OpenPIC_Addr will be set). |
@@ -411,11 +442,13 @@ mpc10x_bridge_init(struct pci_controller *hose, | |||
411 | ppc_sys_platform_devices[MPC10X_DMA1].resource[1].start = MPC10X_DMA1_IRQ; | 442 | ppc_sys_platform_devices[MPC10X_DMA1].resource[1].start = MPC10X_DMA1_IRQ; |
412 | ppc_sys_platform_devices[MPC10X_DMA1].resource[1].end = MPC10X_DMA1_IRQ; | 443 | ppc_sys_platform_devices[MPC10X_DMA1].resource[1].end = MPC10X_DMA1_IRQ; |
413 | 444 | ||
414 | serial_platform_data[0].mapbase += phys_eumb_base; | 445 | serial_plat_uart0[0].mapbase += phys_eumb_base; |
415 | serial_platform_data[0].irq = MPC10X_UART0_IRQ; | 446 | serial_plat_uart0[0].irq = MPC10X_UART0_IRQ; |
447 | serial_plat_uart0[0].membase = ioremap(serial_plat_uart0[0].mapbase, 0x100); | ||
416 | 448 | ||
417 | serial_platform_data[1].mapbase += phys_eumb_base; | 449 | serial_plat_uart1[0].mapbase += phys_eumb_base; |
418 | serial_platform_data[1].irq = MPC10X_UART0_IRQ + 1; | 450 | serial_plat_uart1[0].irq = MPC10X_UART1_IRQ; |
451 | serial_plat_uart1[0].membase = ioremap(serial_plat_uart1[0].mapbase, 0x100); | ||
419 | 452 | ||
420 | /* | 453 | /* |
421 | * 8240 erratum 26, 8241/8245 erratum 29, 107 erratum 23: speculative | 454 | * 8240 erratum 26, 8241/8245 erratum 29, 107 erratum 23: speculative |
diff --git a/arch/ppc/syslib/mpc83xx_devices.c b/arch/ppc/syslib/mpc83xx_devices.c index 75c8e9834ae7..5aaf0e58e1f9 100644 --- a/arch/ppc/syslib/mpc83xx_devices.c +++ b/arch/ppc/syslib/mpc83xx_devices.c | |||
@@ -191,8 +191,8 @@ struct platform_device ppc_sys_platform_devices[] = { | |||
191 | .num_resources = 2, | 191 | .num_resources = 2, |
192 | .resource = (struct resource[]) { | 192 | .resource = (struct resource[]) { |
193 | { | 193 | { |
194 | .start = 0x22000, | 194 | .start = 0x23000, |
195 | .end = 0x22fff, | 195 | .end = 0x23fff, |
196 | .flags = IORESOURCE_MEM, | 196 | .flags = IORESOURCE_MEM, |
197 | }, | 197 | }, |
198 | { | 198 | { |
@@ -208,8 +208,8 @@ struct platform_device ppc_sys_platform_devices[] = { | |||
208 | .num_resources = 2, | 208 | .num_resources = 2, |
209 | .resource = (struct resource[]) { | 209 | .resource = (struct resource[]) { |
210 | { | 210 | { |
211 | .start = 0x23000, | 211 | .start = 0x22000, |
212 | .end = 0x23fff, | 212 | .end = 0x22fff, |
213 | .flags = IORESOURCE_MEM, | 213 | .flags = IORESOURCE_MEM, |
214 | }, | 214 | }, |
215 | { | 215 | { |
diff --git a/arch/ppc/syslib/ppc85xx_setup.c b/arch/ppc/syslib/ppc85xx_setup.c index ca95d79a704e..b7242f1bd931 100644 --- a/arch/ppc/syslib/ppc85xx_setup.c +++ b/arch/ppc/syslib/ppc85xx_setup.c | |||
@@ -233,14 +233,14 @@ mpc85xx_setup_pci2(struct pci_controller *hose) | |||
233 | pci->powbar1 = (MPC85XX_PCI2_LOWER_MEM >> 12) & 0x000fffff; | 233 | pci->powbar1 = (MPC85XX_PCI2_LOWER_MEM >> 12) & 0x000fffff; |
234 | /* Enable, Mem R/W */ | 234 | /* Enable, Mem R/W */ |
235 | pci->powar1 = 0x80044000 | | 235 | pci->powar1 = 0x80044000 | |
236 | (__ilog2(MPC85XX_PCI1_UPPER_MEM - MPC85XX_PCI1_LOWER_MEM + 1) - 1); | 236 | (__ilog2(MPC85XX_PCI2_UPPER_MEM - MPC85XX_PCI2_LOWER_MEM + 1) - 1); |
237 | 237 | ||
238 | /* Setup outboud IO windows @ MPC85XX_PCI2_IO_BASE */ | 238 | /* Setup outboud IO windows @ MPC85XX_PCI2_IO_BASE */ |
239 | pci->potar2 = 0x00000000; | 239 | pci->potar2 = 0x00000000; |
240 | pci->potear2 = 0x00000000; | 240 | pci->potear2 = 0x00000000; |
241 | pci->powbar2 = (MPC85XX_PCI2_IO_BASE >> 12) & 0x000fffff; | 241 | pci->powbar2 = (MPC85XX_PCI2_IO_BASE >> 12) & 0x000fffff; |
242 | /* Enable, IO R/W */ | 242 | /* Enable, IO R/W */ |
243 | pci->powar2 = 0x80088000 | (__ilog2(MPC85XX_PCI1_IO_SIZE) - 1); | 243 | pci->powar2 = 0x80088000 | (__ilog2(MPC85XX_PCI2_IO_SIZE) - 1); |
244 | 244 | ||
245 | /* Setup 2G inbound Memory Window @ 0 */ | 245 | /* Setup 2G inbound Memory Window @ 0 */ |
246 | pci->pitar1 = 0x00000000; | 246 | pci->pitar1 = 0x00000000; |