Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powerpc/embedded6xx: Remove C2K board support

The C2K platform appears to be orphaned so remove code supporting it.

CC: Remi Machet <rmachet@nvidia.com>
Signed-off-by: Mark Greer <mgreer@animalcreek.com>
Acked-by: Remi Machet <remi@machet.us>
Signed-off-by: Mark Greer <mgreer@animalcreek.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>

authored by

Mark Greer and committed by
Michael Ellerman
92c8c16f 2676b89e

+2 -1106
+2 -3
arch/powerpc/boot/Makefile
··· 149 149 src-plat-$(CONFIG_PPC_83xx) += cuboot-83xx.c fixed-head.S redboot-83xx.c 150 150 src-plat-$(CONFIG_FSL_SOC_BOOKE) += cuboot-85xx.c cuboot-85xx-cpm2.c 151 151 src-plat-$(CONFIG_EMBEDDED6xx) += cuboot-pq2.c cuboot-mpc7448hpc2.c \ 152 - cuboot-c2k.c gamecube-head.S \ 153 - gamecube.c wii-head.S wii.c holly.c \ 152 + gamecube-head.S gamecube.c \ 153 + wii-head.S wii.c holly.c \ 154 154 fixed-head.S mvme5100.c 155 155 src-plat-$(CONFIG_AMIGAONE) += cuboot-amigaone.c 156 156 src-plat-$(CONFIG_PPC_PS3) += ps3-head.S ps3-hvcall.S ps3.c ··· 345 345 # Board ports in arch/powerpc/platform/embedded6xx/Kconfig 346 346 image-$(CONFIG_STORCENTER) += cuImage.storcenter 347 347 image-$(CONFIG_MPC7448HPC2) += cuImage.mpc7448hpc2 348 - image-$(CONFIG_PPC_C2K) += cuImage.c2k 349 348 image-$(CONFIG_GAMECUBE) += dtbImage.gamecube 350 349 image-$(CONFIG_WII) += dtbImage.wii 351 350 image-$(CONFIG_MVME5100) += dtbImage.mvme5100
-189
arch/powerpc/boot/cuboot-c2k.c
··· 1 - /* 2 - * GEFanuc C2K platform code. 3 - * 4 - * Author: Remi Machet <rmachet@slac.stanford.edu> 5 - * 6 - * Originated from prpmc2800.c 7 - * 8 - * 2008 (c) Stanford University 9 - * 2007 (c) MontaVista, Software, Inc. 10 - * 11 - * This program is free software; you can redistribute it and/or modify it 12 - * under the terms of the GNU General Public License version 2 as published 13 - * by the Free Software Foundation. 14 - */ 15 - 16 - #include "types.h" 17 - #include "stdio.h" 18 - #include "io.h" 19 - #include "ops.h" 20 - #include "elf.h" 21 - #include "mv64x60.h" 22 - #include "cuboot.h" 23 - #include "ppcboot.h" 24 - 25 - static u8 *bridge_base; 26 - 27 - static void c2k_bridge_setup(u32 mem_size) 28 - { 29 - u32 i, v[30], enables, acc_bits; 30 - u32 pci_base_hi, pci_base_lo, size, buf[2]; 31 - unsigned long cpu_base; 32 - int rc; 33 - void *devp, *mv64x60_devp; 34 - u8 *bridge_pbase, is_coherent; 35 - struct mv64x60_cpu2pci_win *tbl; 36 - int bus; 37 - 38 - bridge_pbase = mv64x60_get_bridge_pbase(); 39 - is_coherent = mv64x60_is_coherent(); 40 - 41 - if (is_coherent) 42 - acc_bits = MV64x60_PCI_ACC_CNTL_SNOOP_WB 43 - | MV64x60_PCI_ACC_CNTL_SWAP_NONE 44 - | MV64x60_PCI_ACC_CNTL_MBURST_32_BYTES 45 - | MV64x60_PCI_ACC_CNTL_RDSIZE_32_BYTES; 46 - else 47 - acc_bits = MV64x60_PCI_ACC_CNTL_SNOOP_NONE 48 - | MV64x60_PCI_ACC_CNTL_SWAP_NONE 49 - | MV64x60_PCI_ACC_CNTL_MBURST_128_BYTES 50 - | MV64x60_PCI_ACC_CNTL_RDSIZE_256_BYTES; 51 - 52 - mv64x60_config_ctlr_windows(bridge_base, bridge_pbase, is_coherent); 53 - mv64x60_devp = find_node_by_compatible(NULL, "marvell,mv64360"); 54 - if (mv64x60_devp == NULL) 55 - fatal("Error: Missing marvell,mv64360 device tree node\n\r"); 56 - 57 - enables = in_le32((u32 *)(bridge_base + MV64x60_CPU_BAR_ENABLE)); 58 - enables |= 0x007ffe00; /* Disable all cpu->pci windows */ 59 - out_le32((u32 *)(bridge_base + MV64x60_CPU_BAR_ENABLE), enables); 60 - 61 - /* Get the cpu -> pci i/o & mem mappings from the device tree */ 62 - devp = NULL; 63 - for (bus = 0; ; bus++) { 64 - char name[] = "pci "; 65 - 66 - name[strlen(name)-1] = bus+'0'; 67 - 68 - devp = find_node_by_alias(name); 69 - if (devp == NULL) 70 - break; 71 - 72 - if (bus >= 2) 73 - fatal("Error: Only 2 PCI controllers are supported at" \ 74 - " this time.\n"); 75 - 76 - mv64x60_config_pci_windows(bridge_base, bridge_pbase, bus, 0, 77 - mem_size, acc_bits); 78 - 79 - rc = getprop(devp, "ranges", v, sizeof(v)); 80 - if (rc == 0) 81 - fatal("Error: Can't find marvell,mv64360-pci ranges" 82 - " property\n\r"); 83 - 84 - /* Get the cpu -> pci i/o & mem mappings from the device tree */ 85 - 86 - for (i = 0; i < rc; i += 6) { 87 - switch (v[i] & 0xff000000) { 88 - case 0x01000000: /* PCI I/O Space */ 89 - tbl = mv64x60_cpu2pci_io; 90 - break; 91 - case 0x02000000: /* PCI MEM Space */ 92 - tbl = mv64x60_cpu2pci_mem; 93 - break; 94 - default: 95 - continue; 96 - } 97 - 98 - pci_base_hi = v[i+1]; 99 - pci_base_lo = v[i+2]; 100 - cpu_base = v[i+3]; 101 - size = v[i+5]; 102 - 103 - buf[0] = cpu_base; 104 - buf[1] = size; 105 - 106 - if (!dt_xlate_addr(devp, buf, sizeof(buf), &cpu_base)) 107 - fatal("Error: Can't translate PCI address " \ 108 - "0x%x\n\r", (u32)cpu_base); 109 - 110 - mv64x60_config_cpu2pci_window(bridge_base, bus, 111 - pci_base_hi, pci_base_lo, cpu_base, size, tbl); 112 - } 113 - 114 - enables &= ~(3<<(9+bus*5)); /* Enable cpu->pci<bus> i/o, 115 - cpu->pci<bus> mem0 */ 116 - out_le32((u32 *)(bridge_base + MV64x60_CPU_BAR_ENABLE), 117 - enables); 118 - }; 119 - } 120 - 121 - static void c2k_fixups(void) 122 - { 123 - u32 mem_size; 124 - 125 - mem_size = mv64x60_get_mem_size(bridge_base); 126 - c2k_bridge_setup(mem_size); /* Do necessary bridge setup */ 127 - } 128 - 129 - #define MV64x60_MPP_CNTL_0 0xf000 130 - #define MV64x60_MPP_CNTL_2 0xf008 131 - #define MV64x60_GPP_IO_CNTL 0xf100 132 - #define MV64x60_GPP_LEVEL_CNTL 0xf110 133 - #define MV64x60_GPP_VALUE_SET 0xf118 134 - 135 - static void c2k_reset(void) 136 - { 137 - u32 temp; 138 - 139 - udelay(5000000); 140 - 141 - if (bridge_base != 0) { 142 - temp = in_le32((u32 *)(bridge_base + MV64x60_MPP_CNTL_0)); 143 - temp &= 0xFFFF0FFF; 144 - out_le32((u32 *)(bridge_base + MV64x60_MPP_CNTL_0), temp); 145 - 146 - temp = in_le32((u32 *)(bridge_base + MV64x60_GPP_LEVEL_CNTL)); 147 - temp |= 0x00000004; 148 - out_le32((u32 *)(bridge_base + MV64x60_GPP_LEVEL_CNTL), temp); 149 - 150 - temp = in_le32((u32 *)(bridge_base + MV64x60_GPP_IO_CNTL)); 151 - temp |= 0x00000004; 152 - out_le32((u32 *)(bridge_base + MV64x60_GPP_IO_CNTL), temp); 153 - 154 - temp = in_le32((u32 *)(bridge_base + MV64x60_MPP_CNTL_2)); 155 - temp &= 0xFFFF0FFF; 156 - out_le32((u32 *)(bridge_base + MV64x60_MPP_CNTL_2), temp); 157 - 158 - temp = in_le32((u32 *)(bridge_base + MV64x60_GPP_LEVEL_CNTL)); 159 - temp |= 0x00080000; 160 - out_le32((u32 *)(bridge_base + MV64x60_GPP_LEVEL_CNTL), temp); 161 - 162 - temp = in_le32((u32 *)(bridge_base + MV64x60_GPP_IO_CNTL)); 163 - temp |= 0x00080000; 164 - out_le32((u32 *)(bridge_base + MV64x60_GPP_IO_CNTL), temp); 165 - 166 - out_le32((u32 *)(bridge_base + MV64x60_GPP_VALUE_SET), 167 - 0x00080004); 168 - } 169 - 170 - for (;;); 171 - } 172 - 173 - static bd_t bd; 174 - 175 - void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, 176 - unsigned long r6, unsigned long r7) 177 - { 178 - CUBOOT_INIT(); 179 - 180 - fdt_init(_dtb_start); 181 - 182 - bridge_base = mv64x60_get_bridge_base(); 183 - 184 - platform_ops.fixups = c2k_fixups; 185 - platform_ops.exit = c2k_reset; 186 - 187 - if (serial_console_init() < 0) 188 - exit(); 189 - }
-366
arch/powerpc/boot/dts/c2k.dts
··· 1 - /* Device Tree Source for GEFanuc C2K 2 - * 3 - * Author: Remi Machet <rmachet@slac.stanford.edu> 4 - * 5 - * Originated from prpmc2800.dts 6 - * 7 - * 2008 (c) Stanford University 8 - * 2007 (c) MontaVista, Software, Inc. 9 - * 10 - * This program is free software; you can redistribute it and/or modify it 11 - * under the terms of the GNU General Public License version 2 as published 12 - * by the Free Software Foundation. 13 - */ 14 - 15 - /dts-v1/; 16 - 17 - / { 18 - #address-cells = <1>; 19 - #size-cells = <1>; 20 - model = "C2K"; 21 - compatible = "GEFanuc,C2K"; 22 - coherency-off; 23 - 24 - aliases { 25 - pci0 = &PCI0; 26 - pci1 = &PCI1; 27 - }; 28 - 29 - cpus { 30 - #address-cells = <1>; 31 - #size-cells = <0>; 32 - 33 - cpu@0 { 34 - device_type = "cpu"; 35 - compatible = "PowerPC,7447"; 36 - reg = <0>; 37 - clock-frequency = <996000000>; /* 996 MHz */ 38 - bus-frequency = <166666667>; /* 166.6666 MHz */ 39 - timebase-frequency = <41666667>; /* 166.6666/4 MHz */ 40 - i-cache-line-size = <32>; 41 - d-cache-line-size = <32>; 42 - i-cache-size = <32768>; 43 - d-cache-size = <32768>; 44 - }; 45 - }; 46 - 47 - memory { 48 - device_type = "memory"; 49 - reg = <0x00000000 0x40000000>; /* 1GB */ 50 - }; 51 - 52 - system-controller@d8000000 { /* Marvell Discovery */ 53 - #address-cells = <1>; 54 - #size-cells = <1>; 55 - model = "mv64460"; 56 - compatible = "marvell,mv64360"; 57 - clock-frequency = <166666667>; /* 166.66... MHz */ 58 - reg = <0xd8000000 0x00010000>; 59 - virtual-reg = <0xd8000000>; 60 - ranges = <0xd4000000 0xd4000000 0x01000000 /* PCI 0 I/O Space */ 61 - 0x80000000 0x80000000 0x08000000 /* PCI 0 MEM Space */ 62 - 0xd0000000 0xd0000000 0x01000000 /* PCI 1 I/O Space */ 63 - 0xa0000000 0xa0000000 0x08000000 /* PCI 1 MEM Space */ 64 - 0xd8100000 0xd8100000 0x00010000 /* FPGA */ 65 - 0xd8110000 0xd8110000 0x00010000 /* FPGA USARTs */ 66 - 0xf8000000 0xf8000000 0x08000000 /* User FLASH */ 67 - 0x00000000 0xd8000000 0x00010000 /* Bridge's regs */ 68 - 0xd8140000 0xd8140000 0x00040000>; /* Integrated SRAM */ 69 - 70 - mdio@2000 { 71 - #address-cells = <1>; 72 - #size-cells = <0>; 73 - compatible = "marvell,mv64360-mdio"; 74 - reg = <0x2000 4>; 75 - PHY0: ethernet-phy@0 { 76 - interrupts = <76>; /* GPP 12 */ 77 - interrupt-parent = <&PIC>; 78 - reg = <0>; 79 - }; 80 - PHY1: ethernet-phy@1 { 81 - interrupts = <76>; /* GPP 12 */ 82 - interrupt-parent = <&PIC>; 83 - reg = <1>; 84 - }; 85 - PHY2: ethernet-phy@2 { 86 - interrupts = <76>; /* GPP 12 */ 87 - interrupt-parent = <&PIC>; 88 - reg = <2>; 89 - }; 90 - }; 91 - 92 - ethernet-group@2000 { 93 - #address-cells = <1>; 94 - #size-cells = <0>; 95 - compatible = "marvell,mv64360-eth-group"; 96 - reg = <0x2000 0x2000>; 97 - ethernet@0 { 98 - device_type = "network"; 99 - compatible = "marvell,mv64360-eth"; 100 - reg = <0>; 101 - interrupts = <32>; 102 - interrupt-parent = <&PIC>; 103 - phy = <&PHY0>; 104 - local-mac-address = [ 00 00 00 00 00 00 ]; 105 - }; 106 - ethernet@1 { 107 - device_type = "network"; 108 - compatible = "marvell,mv64360-eth"; 109 - reg = <1>; 110 - interrupts = <33>; 111 - interrupt-parent = <&PIC>; 112 - phy = <&PHY1>; 113 - local-mac-address = [ 00 00 00 00 00 00 ]; 114 - }; 115 - ethernet@2 { 116 - device_type = "network"; 117 - compatible = "marvell,mv64360-eth"; 118 - reg = <2>; 119 - interrupts = <34>; 120 - interrupt-parent = <&PIC>; 121 - phy = <&PHY2>; 122 - local-mac-address = [ 00 00 00 00 00 00 ]; 123 - }; 124 - }; 125 - 126 - SDMA0: sdma@4000 { 127 - compatible = "marvell,mv64360-sdma"; 128 - reg = <0x4000 0xc18>; 129 - virtual-reg = <0xd8004000>; 130 - interrupt-base = <0>; 131 - interrupts = <36>; 132 - interrupt-parent = <&PIC>; 133 - }; 134 - 135 - SDMA1: sdma@6000 { 136 - compatible = "marvell,mv64360-sdma"; 137 - reg = <0x6000 0xc18>; 138 - virtual-reg = <0xd8006000>; 139 - interrupt-base = <0>; 140 - interrupts = <38>; 141 - interrupt-parent = <&PIC>; 142 - }; 143 - 144 - BRG0: brg@b200 { 145 - compatible = "marvell,mv64360-brg"; 146 - reg = <0xb200 0x8>; 147 - clock-src = <8>; 148 - clock-frequency = <133333333>; 149 - current-speed = <115200>; 150 - }; 151 - 152 - BRG1: brg@b208 { 153 - compatible = "marvell,mv64360-brg"; 154 - reg = <0xb208 0x8>; 155 - clock-src = <8>; 156 - clock-frequency = <133333333>; 157 - current-speed = <115200>; 158 - }; 159 - 160 - CUNIT: cunit@f200 { 161 - reg = <0xf200 0x200>; 162 - }; 163 - 164 - MPSCROUTING: mpscrouting@b400 { 165 - reg = <0xb400 0xc>; 166 - }; 167 - 168 - MPSCINTR: mpscintr@b800 { 169 - reg = <0xb800 0x100>; 170 - virtual-reg = <0xd800b800>; 171 - }; 172 - 173 - MPSC0: mpsc@8000 { 174 - compatible = "marvell,mv64360-mpsc"; 175 - reg = <0x8000 0x38>; 176 - virtual-reg = <0xd8008000>; 177 - sdma = <&SDMA0>; 178 - brg = <&BRG0>; 179 - cunit = <&CUNIT>; 180 - mpscrouting = <&MPSCROUTING>; 181 - mpscintr = <&MPSCINTR>; 182 - cell-index = <0>; 183 - interrupts = <40>; 184 - interrupt-parent = <&PIC>; 185 - }; 186 - 187 - MPSC1: mpsc@9000 { 188 - compatible = "marvell,mv64360-mpsc"; 189 - reg = <0x9000 0x38>; 190 - virtual-reg = <0xd8009000>; 191 - sdma = <&SDMA1>; 192 - brg = <&BRG1>; 193 - cunit = <&CUNIT>; 194 - mpscrouting = <&MPSCROUTING>; 195 - mpscintr = <&MPSCINTR>; 196 - cell-index = <1>; 197 - interrupts = <42>; 198 - interrupt-parent = <&PIC>; 199 - }; 200 - 201 - wdt@b410 { /* watchdog timer */ 202 - compatible = "marvell,mv64360-wdt"; 203 - reg = <0xb410 0x8>; 204 - }; 205 - 206 - i2c@c000 { 207 - compatible = "marvell,mv64360-i2c"; 208 - reg = <0xc000 0x20>; 209 - virtual-reg = <0xd800c000>; 210 - interrupts = <37>; 211 - interrupt-parent = <&PIC>; 212 - }; 213 - 214 - PIC: pic { 215 - #interrupt-cells = <1>; 216 - #address-cells = <0>; 217 - compatible = "marvell,mv64360-pic"; 218 - reg = <0x0000 0x88>; 219 - interrupt-controller; 220 - }; 221 - 222 - mpp@f000 { 223 - compatible = "marvell,mv64360-mpp"; 224 - reg = <0xf000 0x10>; 225 - }; 226 - 227 - gpp@f100 { 228 - compatible = "marvell,mv64360-gpp"; 229 - reg = <0xf100 0x20>; 230 - }; 231 - 232 - PCI0: pci@80000000 { 233 - #address-cells = <3>; 234 - #size-cells = <2>; 235 - #interrupt-cells = <1>; 236 - device_type = "pci"; 237 - compatible = "marvell,mv64360-pci"; 238 - reg = <0x0cf8 0x8>; 239 - ranges = <0x01000000 0x0 0x00000000 0xd4000000 0x0 0x01000000 240 - 0x02000000 0x0 0x80000000 0x80000000 0x0 0x08000000>; 241 - bus-range = <0 255>; 242 - clock-frequency = <66000000>; 243 - interrupt-pci-iack = <0x0c34>; 244 - interrupt-parent = <&PIC>; 245 - interrupt-map-mask = <0x0000 0x0 0x0 0x7>; 246 - interrupt-map = < 247 - /* Only one interrupt line for PMC0 slot (INTA) */ 248 - 0x0000 0 0 1 &PIC 88 249 - >; 250 - }; 251 - 252 - 253 - PCI1: pci@a0000000 { 254 - #address-cells = <3>; 255 - #size-cells = <2>; 256 - #interrupt-cells = <1>; 257 - device_type = "pci"; 258 - compatible = "marvell,mv64360-pci"; 259 - reg = <0x0c78 0x8>; 260 - ranges = <0x01000000 0x0 0x00000000 0xd0000000 0x0 0x01000000 261 - 0x02000000 0x0 0x80000000 0xa0000000 0x0 0x08000000>; 262 - bus-range = <0 255>; 263 - clock-frequency = <66000000>; 264 - interrupt-pci-iack = <0x0cb4>; 265 - interrupt-parent = <&PIC>; 266 - interrupt-map-mask = <0xf800 0x00 0x00 0x7>; 267 - interrupt-map = < 268 - /* IDSEL 0x01: PMC1 ? */ 269 - 0x0800 0 0 1 &PIC 88 270 - /* IDSEL 0x02: cPCI bridge */ 271 - 0x1000 0 0 1 &PIC 88 272 - /* IDSEL 0x03: USB controller */ 273 - 0x1800 0 0 1 &PIC 91 274 - /* IDSEL 0x04: SATA controller */ 275 - 0x2000 0 0 1 &PIC 95 276 - >; 277 - }; 278 - 279 - cpu-error@70 { 280 - compatible = "marvell,mv64360-cpu-error"; 281 - reg = <0x0070 0x10 0x0128 0x28>; 282 - interrupts = <3>; 283 - interrupt-parent = <&PIC>; 284 - }; 285 - 286 - sram-ctrl@380 { 287 - compatible = "marvell,mv64360-sram-ctrl"; 288 - reg = <0x0380 0x80>; 289 - interrupts = <13>; 290 - interrupt-parent = <&PIC>; 291 - }; 292 - 293 - pci-error@1d40 { 294 - compatible = "marvell,mv64360-pci-error"; 295 - reg = <0x1d40 0x40 0x0c28 0x4>; 296 - interrupts = <12>; 297 - interrupt-parent = <&PIC>; 298 - }; 299 - 300 - pci-error@1dc0 { 301 - compatible = "marvell,mv64360-pci-error"; 302 - reg = <0x1dc0 0x40 0x0ca8 0x4>; 303 - interrupts = <16>; 304 - interrupt-parent = <&PIC>; 305 - }; 306 - 307 - mem-ctrl@1400 { 308 - compatible = "marvell,mv64360-mem-ctrl"; 309 - reg = <0x1400 0x60>; 310 - interrupts = <17>; 311 - interrupt-parent = <&PIC>; 312 - }; 313 - /* Devices attached to the device controller */ 314 - devicebus@45c { 315 - #address-cells = <2>; 316 - #size-cells = <1>; 317 - compatible = "marvell,mv64306-devctrl"; 318 - reg = <0x45C 0x88>; 319 - interrupts = <1>; 320 - interrupt-parent = <&PIC>; 321 - ranges = <0 0 0xd8100000 0x10000 322 - 2 0 0xd8110000 0x10000 323 - 4 0 0xf8000000 0x8000000>; 324 - fpga@0,0 { 325 - compatible = "sbs,fpga-c2k"; 326 - reg = <0 0 0x10000>; 327 - }; 328 - fpga_usart@2,0 { 329 - compatible = "sbs,fpga_usart-c2k"; 330 - reg = <2 0 0x10000>; 331 - }; 332 - nor_flash@4,0 { 333 - compatible = "cfi-flash"; 334 - reg = <4 0 0x8000000>; /* 128MB */ 335 - bank-width = <4>; 336 - device-width = <1>; 337 - #address-cells = <1>; 338 - #size-cells = <1>; 339 - partition@0 { 340 - label = "boot"; 341 - reg = <0x00000000 0x00080000>; 342 - }; 343 - partition@40000 { 344 - label = "kernel"; 345 - reg = <0x00080000 0x00400000>; 346 - }; 347 - partition@440000 { 348 - label = "initrd"; 349 - reg = <0x00480000 0x00B80000>; 350 - }; 351 - partition@1000000 { 352 - label = "rootfs"; 353 - reg = <0x01000000 0x06800000>; 354 - }; 355 - partition@7800000 { 356 - label = "recovery"; 357 - reg = <0x07800000 0x00800000>; 358 - read-only; 359 - }; 360 - }; 361 - }; 362 - }; 363 - chosen { 364 - stdout-path = &MPSC0; 365 - }; 366 - };
-389
arch/powerpc/configs/c2k_defconfig
··· 1 - CONFIG_SYSVIPC=y 2 - CONFIG_POSIX_MQUEUE=y 3 - CONFIG_AUDIT=y 4 - CONFIG_BSD_PROCESS_ACCT=y 5 - CONFIG_BLK_DEV_INITRD=y 6 - CONFIG_PROFILING=y 7 - CONFIG_OPROFILE=m 8 - CONFIG_KPROBES=y 9 - CONFIG_MODULES=y 10 - CONFIG_MODULE_UNLOAD=y 11 - CONFIG_MODVERSIONS=y 12 - CONFIG_PARTITION_ADVANCED=y 13 - CONFIG_OSF_PARTITION=y 14 - CONFIG_MAC_PARTITION=y 15 - CONFIG_BSD_DISKLABEL=y 16 - CONFIG_MINIX_SUBPARTITION=y 17 - CONFIG_SOLARIS_X86_PARTITION=y 18 - CONFIG_UNIXWARE_DISKLABEL=y 19 - CONFIG_SGI_PARTITION=y 20 - CONFIG_SUN_PARTITION=y 21 - # CONFIG_PPC_CHRP is not set 22 - # CONFIG_PPC_PMAC is not set 23 - CONFIG_EMBEDDED6xx=y 24 - CONFIG_PPC_C2K=y 25 - CONFIG_CPU_FREQ=y 26 - CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y 27 - CONFIG_CPU_FREQ_GOV_PERFORMANCE=y 28 - CONFIG_CPU_FREQ_GOV_POWERSAVE=m 29 - CONFIG_CPU_FREQ_GOV_ONDEMAND=m 30 - CONFIG_GEN_RTC=y 31 - CONFIG_HIGHMEM=y 32 - CONFIG_PREEMPT_VOLUNTARY=y 33 - CONFIG_BINFMT_MISC=y 34 - CONFIG_PM=y 35 - CONFIG_PCI_MSI=y 36 - CONFIG_HOTPLUG_PCI=y 37 - CONFIG_HOTPLUG_PCI_SHPC=m 38 - CONFIG_NET=y 39 - CONFIG_PACKET=y 40 - CONFIG_UNIX=y 41 - CONFIG_XFRM_USER=y 42 - CONFIG_NET_KEY=m 43 - CONFIG_INET=y 44 - CONFIG_IP_MULTICAST=y 45 - CONFIG_IP_ADVANCED_ROUTER=y 46 - CONFIG_IP_MULTIPLE_TABLES=y 47 - CONFIG_IP_ROUTE_MULTIPATH=y 48 - CONFIG_IP_ROUTE_VERBOSE=y 49 - CONFIG_IP_PNP=y 50 - CONFIG_IP_PNP_DHCP=y 51 - CONFIG_NET_IPIP=m 52 - CONFIG_IP_MROUTE=y 53 - CONFIG_IP_PIMSM_V1=y 54 - CONFIG_IP_PIMSM_V2=y 55 - CONFIG_SYN_COOKIES=y 56 - CONFIG_INET_AH=m 57 - CONFIG_INET_ESP=m 58 - CONFIG_INET_IPCOMP=m 59 - CONFIG_INET6_AH=m 60 - CONFIG_INET6_ESP=m 61 - CONFIG_INET6_IPCOMP=m 62 - CONFIG_IPV6_TUNNEL=m 63 - CONFIG_NETFILTER=y 64 - # CONFIG_NETFILTER_XT_MATCH_SCTP is not set 65 - CONFIG_IP_NF_IPTABLES=m 66 - CONFIG_IP_NF_MATCH_ECN=m 67 - CONFIG_IP_NF_MATCH_TTL=m 68 - CONFIG_IP_NF_FILTER=m 69 - CONFIG_IP_NF_TARGET_REJECT=m 70 - CONFIG_IP_NF_MANGLE=m 71 - CONFIG_IP_NF_TARGET_ECN=m 72 - CONFIG_IP_NF_RAW=m 73 - CONFIG_IP_NF_ARPTABLES=m 74 - CONFIG_IP_NF_ARPFILTER=m 75 - CONFIG_IP_NF_ARP_MANGLE=m 76 - CONFIG_IP6_NF_IPTABLES=m 77 - CONFIG_IP6_NF_MATCH_EUI64=m 78 - CONFIG_IP6_NF_MATCH_FRAG=m 79 - CONFIG_IP6_NF_MATCH_OPTS=m 80 - CONFIG_IP6_NF_MATCH_HL=m 81 - CONFIG_IP6_NF_MATCH_IPV6HEADER=m 82 - CONFIG_IP6_NF_MATCH_RT=m 83 - CONFIG_IP6_NF_FILTER=m 84 - CONFIG_IP6_NF_MANGLE=m 85 - CONFIG_IP6_NF_RAW=m 86 - CONFIG_BRIDGE_NF_EBTABLES=m 87 - CONFIG_BRIDGE_EBT_BROUTE=m 88 - CONFIG_BRIDGE_EBT_T_FILTER=m 89 - CONFIG_BRIDGE_EBT_T_NAT=m 90 - CONFIG_BRIDGE_EBT_802_3=m 91 - CONFIG_BRIDGE_EBT_AMONG=m 92 - CONFIG_BRIDGE_EBT_ARP=m 93 - CONFIG_BRIDGE_EBT_IP=m 94 - CONFIG_BRIDGE_EBT_LIMIT=m 95 - CONFIG_BRIDGE_EBT_MARK=m 96 - CONFIG_BRIDGE_EBT_PKTTYPE=m 97 - CONFIG_BRIDGE_EBT_STP=m 98 - CONFIG_BRIDGE_EBT_VLAN=m 99 - CONFIG_BRIDGE_EBT_ARPREPLY=m 100 - CONFIG_BRIDGE_EBT_DNAT=m 101 - CONFIG_BRIDGE_EBT_MARK_T=m 102 - CONFIG_BRIDGE_EBT_REDIRECT=m 103 - CONFIG_BRIDGE_EBT_SNAT=m 104 - CONFIG_BRIDGE_EBT_LOG=m 105 - CONFIG_IP_SCTP=m 106 - CONFIG_ATM=m 107 - CONFIG_ATM_CLIP=m 108 - CONFIG_ATM_LANE=m 109 - CONFIG_ATM_BR2684=m 110 - CONFIG_BRIDGE=m 111 - CONFIG_VLAN_8021Q=m 112 - CONFIG_NET_SCHED=y 113 - CONFIG_NET_SCH_CBQ=m 114 - CONFIG_NET_SCH_HTB=m 115 - CONFIG_NET_SCH_HFSC=m 116 - CONFIG_NET_SCH_ATM=m 117 - CONFIG_NET_SCH_PRIO=m 118 - CONFIG_NET_SCH_RED=m 119 - CONFIG_NET_SCH_SFQ=m 120 - CONFIG_NET_SCH_TEQL=m 121 - CONFIG_NET_SCH_TBF=m 122 - CONFIG_NET_SCH_GRED=m 123 - CONFIG_NET_SCH_DSMARK=m 124 - CONFIG_NET_SCH_NETEM=m 125 - CONFIG_NET_CLS_TCINDEX=m 126 - CONFIG_NET_CLS_ROUTE4=m 127 - CONFIG_NET_CLS_FW=m 128 - CONFIG_NET_CLS_U32=m 129 - CONFIG_CLS_U32_PERF=y 130 - CONFIG_NET_CLS_RSVP=m 131 - CONFIG_NET_CLS_RSVP6=m 132 - CONFIG_NET_CLS_IND=y 133 - CONFIG_BT=m 134 - CONFIG_BT_RFCOMM=m 135 - CONFIG_BT_RFCOMM_TTY=y 136 - CONFIG_BT_BNEP=m 137 - CONFIG_BT_BNEP_MC_FILTER=y 138 - CONFIG_BT_BNEP_PROTO_FILTER=y 139 - CONFIG_BT_HIDP=m 140 - CONFIG_BT_HCIUART=m 141 - CONFIG_BT_HCIUART_H4=y 142 - CONFIG_BT_HCIUART_BCSP=y 143 - CONFIG_BT_HCIBCM203X=m 144 - CONFIG_BT_HCIBFUSB=m 145 - CONFIG_BT_HCIVHCI=m 146 - CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 147 - CONFIG_MTD=y 148 - CONFIG_MTD_BLOCK=y 149 - CONFIG_MTD_CFI=y 150 - CONFIG_MTD_CFI_AMDSTD=y 151 - CONFIG_MTD_COMPLEX_MAPPINGS=y 152 - CONFIG_MTD_PHYSMAP_OF=y 153 - CONFIG_BLK_DEV_LOOP=m 154 - CONFIG_BLK_DEV_CRYPTOLOOP=m 155 - CONFIG_BLK_DEV_NBD=m 156 - CONFIG_BLK_DEV_RAM=y 157 - CONFIG_BLK_DEV_RAM_SIZE=16384 158 - CONFIG_SCSI=m 159 - CONFIG_BLK_DEV_SD=m 160 - CONFIG_CHR_DEV_ST=m 161 - CONFIG_CHR_DEV_OSST=m 162 - CONFIG_BLK_DEV_SR=m 163 - CONFIG_BLK_DEV_SR_VENDOR=y 164 - CONFIG_CHR_DEV_SG=m 165 - CONFIG_SCSI_CONSTANTS=y 166 - CONFIG_SCSI_LOGGING=y 167 - CONFIG_SCSI_ISCSI_ATTRS=m 168 - CONFIG_BLK_DEV_3W_XXXX_RAID=m 169 - CONFIG_SCSI_3W_9XXX=m 170 - CONFIG_SCSI_ACARD=m 171 - CONFIG_SCSI_AACRAID=m 172 - CONFIG_SCSI_AIC7XXX=m 173 - CONFIG_AIC7XXX_CMDS_PER_DEVICE=4 174 - CONFIG_AIC7XXX_RESET_DELAY_MS=15000 175 - # CONFIG_AIC7XXX_DEBUG_ENABLE is not set 176 - # CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set 177 - CONFIG_SCSI_AIC79XX=m 178 - CONFIG_AIC79XX_CMDS_PER_DEVICE=4 179 - CONFIG_AIC79XX_RESET_DELAY_MS=15000 180 - # CONFIG_AIC79XX_DEBUG_ENABLE is not set 181 - # CONFIG_AIC79XX_REG_PRETTY_PRINT is not set 182 - CONFIG_SCSI_ARCMSR=m 183 - CONFIG_MEGARAID_NEWGEN=y 184 - CONFIG_MEGARAID_MM=m 185 - CONFIG_MEGARAID_MAILBOX=m 186 - CONFIG_MEGARAID_SAS=m 187 - CONFIG_SCSI_GDTH=m 188 - CONFIG_SCSI_IPS=m 189 - CONFIG_SCSI_INITIO=m 190 - CONFIG_SCSI_SYM53C8XX_2=m 191 - CONFIG_SCSI_QLOGIC_1280=m 192 - CONFIG_NETDEVICES=y 193 - CONFIG_BONDING=m 194 - CONFIG_DUMMY=m 195 - CONFIG_NETCONSOLE=m 196 - CONFIG_TUN=m 197 - # CONFIG_ATM_DRIVERS is not set 198 - CONFIG_MV643XX_ETH=y 199 - CONFIG_VITESSE_PHY=y 200 - CONFIG_INPUT_EVDEV=y 201 - # CONFIG_INPUT_KEYBOARD is not set 202 - # CONFIG_INPUT_MOUSE is not set 203 - CONFIG_INPUT_MISC=y 204 - CONFIG_INPUT_UINPUT=m 205 - # CONFIG_SERIO is not set 206 - # CONFIG_LEGACY_PTYS is not set 207 - CONFIG_SERIAL_NONSTANDARD=y 208 - CONFIG_SERIAL_MPSC=y 209 - CONFIG_SERIAL_MPSC_CONSOLE=y 210 - CONFIG_NVRAM=m 211 - CONFIG_RAW_DRIVER=y 212 - CONFIG_MAX_RAW_DEVS=8192 213 - CONFIG_I2C=m 214 - CONFIG_I2C_CHARDEV=m 215 - CONFIG_I2C_MV64XXX=m 216 - CONFIG_HWMON=m 217 - CONFIG_SENSORS_ADM1021=m 218 - CONFIG_SENSORS_ADM1025=m 219 - CONFIG_SENSORS_ADM1026=m 220 - CONFIG_SENSORS_ADM1031=m 221 - CONFIG_SENSORS_DS1621=m 222 - CONFIG_SENSORS_GL518SM=m 223 - CONFIG_SENSORS_MAX1619=m 224 - CONFIG_SENSORS_LM75=m 225 - CONFIG_SENSORS_LM77=m 226 - CONFIG_SENSORS_LM78=m 227 - CONFIG_SENSORS_LM80=m 228 - CONFIG_SENSORS_LM83=m 229 - CONFIG_SENSORS_LM85=m 230 - CONFIG_SENSORS_LM87=m 231 - CONFIG_SENSORS_LM90=m 232 - CONFIG_SENSORS_PCF8591=m 233 - CONFIG_SENSORS_VIA686A=m 234 - CONFIG_SENSORS_W83781D=m 235 - CONFIG_SENSORS_W83L785TS=m 236 - CONFIG_WATCHDOG=y 237 - CONFIG_SOFT_WATCHDOG=m 238 - CONFIG_PCIPCWATCHDOG=m 239 - CONFIG_WDTPCI=m 240 - CONFIG_USBPCWATCHDOG=m 241 - # CONFIG_VGA_CONSOLE is not set 242 - CONFIG_USB=m 243 - CONFIG_USB_MON=m 244 - CONFIG_USB_EHCI_HCD=m 245 - CONFIG_USB_EHCI_ROOT_HUB_TT=y 246 - CONFIG_USB_OHCI_HCD=m 247 - CONFIG_USB_OHCI_HCD_PPC_OF_BE=y 248 - CONFIG_USB_UHCI_HCD=m 249 - CONFIG_USB_ACM=m 250 - CONFIG_USB_PRINTER=m 251 - CONFIG_USB_STORAGE=m 252 - CONFIG_USB_STORAGE_DATAFAB=m 253 - CONFIG_USB_STORAGE_FREECOM=m 254 - CONFIG_USB_STORAGE_ISD200=m 255 - CONFIG_USB_STORAGE_SDDR09=m 256 - CONFIG_USB_STORAGE_SDDR55=m 257 - CONFIG_USB_STORAGE_JUMPSHOT=m 258 - CONFIG_USB_MDC800=m 259 - CONFIG_USB_MICROTEK=m 260 - CONFIG_USB_SERIAL=m 261 - CONFIG_USB_SERIAL_GENERIC=y 262 - CONFIG_USB_SERIAL_BELKIN=m 263 - CONFIG_USB_SERIAL_WHITEHEAT=m 264 - CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m 265 - CONFIG_USB_SERIAL_EMPEG=m 266 - CONFIG_USB_SERIAL_FTDI_SIO=m 267 - CONFIG_USB_SERIAL_VISOR=m 268 - CONFIG_USB_SERIAL_IPAQ=m 269 - CONFIG_USB_SERIAL_IR=m 270 - CONFIG_USB_SERIAL_EDGEPORT=m 271 - CONFIG_USB_SERIAL_EDGEPORT_TI=m 272 - CONFIG_USB_SERIAL_KEYSPAN_PDA=m 273 - CONFIG_USB_SERIAL_KEYSPAN=m 274 - CONFIG_USB_SERIAL_KLSI=m 275 - CONFIG_USB_SERIAL_KOBIL_SCT=m 276 - CONFIG_USB_SERIAL_MCT_U232=m 277 - CONFIG_USB_SERIAL_PL2303=m 278 - CONFIG_USB_SERIAL_SAFE=m 279 - CONFIG_USB_SERIAL_SAFE_PADDED=y 280 - CONFIG_USB_SERIAL_CYBERJACK=m 281 - CONFIG_USB_SERIAL_XIRCOM=m 282 - CONFIG_USB_SERIAL_OMNINET=m 283 - CONFIG_USB_EMI62=m 284 - CONFIG_USB_RIO500=m 285 - CONFIG_USB_LEGOTOWER=m 286 - CONFIG_USB_LCD=m 287 - CONFIG_USB_LED=m 288 - CONFIG_USB_TEST=m 289 - CONFIG_USB_ATM=m 290 - CONFIG_USB_SPEEDTOUCH=m 291 - CONFIG_INFINIBAND=m 292 - CONFIG_INFINIBAND_USER_MAD=m 293 - CONFIG_INFINIBAND_USER_ACCESS=m 294 - CONFIG_INFINIBAND_MTHCA=m 295 - CONFIG_INFINIBAND_IPOIB=m 296 - CONFIG_INFINIBAND_IPOIB_CM=y 297 - CONFIG_INFINIBAND_SRP=m 298 - CONFIG_DMADEVICES=y 299 - CONFIG_EXT4_FS=m 300 - CONFIG_EXT4_FS_POSIX_ACL=y 301 - CONFIG_EXT4_FS_SECURITY=y 302 - CONFIG_QUOTA=y 303 - CONFIG_QFMT_V2=y 304 - CONFIG_AUTOFS4_FS=m 305 - CONFIG_UDF_FS=m 306 - CONFIG_MSDOS_FS=m 307 - CONFIG_VFAT_FS=m 308 - CONFIG_FAT_DEFAULT_IOCHARSET="ascii" 309 - CONFIG_PROC_KCORE=y 310 - CONFIG_TMPFS=y 311 - CONFIG_HFS_FS=m 312 - CONFIG_HFSPLUS_FS=m 313 - CONFIG_JFFS2_FS=y 314 - CONFIG_CRAMFS=m 315 - CONFIG_VXFS_FS=m 316 - CONFIG_NFS_FS=y 317 - CONFIG_NFS_V3_ACL=y 318 - CONFIG_NFS_V4=y 319 - CONFIG_ROOT_NFS=y 320 - CONFIG_CIFS=m 321 - CONFIG_CIFS_XATTR=y 322 - CONFIG_CIFS_POSIX=y 323 - CONFIG_NLS=y 324 - CONFIG_NLS_DEFAULT="utf8" 325 - CONFIG_NLS_CODEPAGE_437=y 326 - CONFIG_NLS_CODEPAGE_737=m 327 - CONFIG_NLS_CODEPAGE_775=m 328 - CONFIG_NLS_CODEPAGE_850=m 329 - CONFIG_NLS_CODEPAGE_852=m 330 - CONFIG_NLS_CODEPAGE_855=m 331 - CONFIG_NLS_CODEPAGE_857=m 332 - CONFIG_NLS_CODEPAGE_860=m 333 - CONFIG_NLS_CODEPAGE_861=m 334 - CONFIG_NLS_CODEPAGE_862=m 335 - CONFIG_NLS_CODEPAGE_863=m 336 - CONFIG_NLS_CODEPAGE_864=m 337 - CONFIG_NLS_CODEPAGE_865=m 338 - CONFIG_NLS_CODEPAGE_866=m 339 - CONFIG_NLS_CODEPAGE_869=m 340 - CONFIG_NLS_CODEPAGE_936=m 341 - CONFIG_NLS_CODEPAGE_950=m 342 - CONFIG_NLS_CODEPAGE_932=m 343 - CONFIG_NLS_CODEPAGE_949=m 344 - CONFIG_NLS_CODEPAGE_874=m 345 - CONFIG_NLS_ISO8859_8=m 346 - CONFIG_NLS_CODEPAGE_1250=m 347 - CONFIG_NLS_CODEPAGE_1251=m 348 - CONFIG_NLS_ASCII=y 349 - CONFIG_NLS_ISO8859_1=m 350 - CONFIG_NLS_ISO8859_2=m 351 - CONFIG_NLS_ISO8859_3=m 352 - CONFIG_NLS_ISO8859_4=m 353 - CONFIG_NLS_ISO8859_5=m 354 - CONFIG_NLS_ISO8859_6=m 355 - CONFIG_NLS_ISO8859_7=m 356 - CONFIG_NLS_ISO8859_9=m 357 - CONFIG_NLS_ISO8859_13=m 358 - CONFIG_NLS_ISO8859_14=m 359 - CONFIG_NLS_ISO8859_15=m 360 - CONFIG_NLS_KOI8_R=m 361 - CONFIG_NLS_KOI8_U=m 362 - CONFIG_CRC_CCITT=m 363 - CONFIG_CRC_T10DIF=m 364 - CONFIG_DEBUG_INFO=y 365 - CONFIG_MAGIC_SYSRQ=y 366 - CONFIG_DEBUG_KERNEL=y 367 - CONFIG_DEBUG_STACK_USAGE=y 368 - CONFIG_DEBUG_HIGHMEM=y 369 - CONFIG_DEBUG_STACKOVERFLOW=y 370 - CONFIG_DETECT_HUNG_TASK=y 371 - CONFIG_DEBUG_SPINLOCK=y 372 - CONFIG_BOOTX_TEXT=y 373 - CONFIG_PPC_EARLY_DEBUG=y 374 - CONFIG_SECURITY=y 375 - CONFIG_SECURITY_NETWORK=y 376 - CONFIG_SECURITY_SELINUX=y 377 - CONFIG_SECURITY_SELINUX_BOOTPARAM=y 378 - CONFIG_SECURITY_SELINUX_DISABLE=y 379 - CONFIG_CRYPTO_HMAC=y 380 - CONFIG_CRYPTO_MICHAEL_MIC=m 381 - CONFIG_CRYPTO_SHA1=y 382 - CONFIG_CRYPTO_SHA512=m 383 - CONFIG_CRYPTO_WP512=m 384 - CONFIG_CRYPTO_BLOWFISH=m 385 - CONFIG_CRYPTO_CAST6=m 386 - CONFIG_CRYPTO_KHAZAD=m 387 - CONFIG_CRYPTO_SERPENT=m 388 - CONFIG_CRYPTO_TEA=m 389 - CONFIG_CRYPTO_TWOFISH=m
-10
arch/powerpc/platforms/embedded6xx/Kconfig
··· 48 48 Select PPC_HOLLY if configuring for an IBM 750GX/CL Eval 49 49 Board with TSI108/9 bridge (Hickory/Holly) 50 50 51 - config PPC_C2K 52 - bool "SBS/GEFanuc C2K board" 53 - depends on EMBEDDED6xx 54 - select MV64X60 55 - select NOT_COHERENT_CACHE 56 - select MTD_CFI_I4 57 - help 58 - This option enables support for the GE Fanuc C2K board (formerly 59 - an SBS board). 60 - 61 51 config MVME5100 62 52 bool "Motorola/Emerson MVME5100" 63 53 depends on EMBEDDED6xx
-1
arch/powerpc/platforms/embedded6xx/Makefile
··· 6 6 obj-$(CONFIG_LINKSTATION) += linkstation.o ls_uart.o 7 7 obj-$(CONFIG_STORCENTER) += storcenter.o 8 8 obj-$(CONFIG_PPC_HOLLY) += holly.o 9 - obj-$(CONFIG_PPC_C2K) += c2k.o 10 9 obj-$(CONFIG_USBGECKO_UDBG) += usbgecko_udbg.o 11 10 obj-$(CONFIG_GAMECUBE_COMMON) += flipper-pic.o 12 11 obj-$(CONFIG_GAMECUBE) += gamecube.o
-148
arch/powerpc/platforms/embedded6xx/c2k.c
··· 1 - /* 2 - * Board setup routines for the GEFanuc C2K board 3 - * 4 - * Author: Remi Machet <rmachet@slac.stanford.edu> 5 - * 6 - * Originated from prpmc2800.c 7 - * 8 - * 2008 (c) Stanford University 9 - * 2007 (c) MontaVista, Software, Inc. 10 - * 11 - * This program is free software; you can redistribute it and/or modify it 12 - * under the terms of the GNU General Public License version 2 as published 13 - * by the Free Software Foundation. 14 - */ 15 - 16 - #include <linux/stddef.h> 17 - #include <linux/kernel.h> 18 - #include <linux/delay.h> 19 - #include <linux/interrupt.h> 20 - #include <linux/seq_file.h> 21 - #include <linux/time.h> 22 - #include <linux/of.h> 23 - 24 - #include <asm/machdep.h> 25 - #include <asm/prom.h> 26 - #include <asm/time.h> 27 - 28 - #include <mm/mmu_decl.h> 29 - 30 - #include <sysdev/mv64x60.h> 31 - 32 - #define MV64x60_MPP_CNTL_0 0x0000 33 - #define MV64x60_MPP_CNTL_2 0x0008 34 - 35 - #define MV64x60_GPP_IO_CNTL 0x0000 36 - #define MV64x60_GPP_LEVEL_CNTL 0x0010 37 - #define MV64x60_GPP_VALUE_SET 0x0018 38 - 39 - static void __iomem *mv64x60_mpp_reg_base; 40 - static void __iomem *mv64x60_gpp_reg_base; 41 - 42 - static void __init c2k_setup_arch(void) 43 - { 44 - struct device_node *np; 45 - phys_addr_t paddr; 46 - const unsigned int *reg; 47 - 48 - /* 49 - * ioremap mpp and gpp registers in case they are later 50 - * needed by c2k_reset_board(). 51 - */ 52 - np = of_find_compatible_node(NULL, NULL, "marvell,mv64360-mpp"); 53 - reg = of_get_property(np, "reg", NULL); 54 - paddr = of_translate_address(np, reg); 55 - of_node_put(np); 56 - mv64x60_mpp_reg_base = ioremap(paddr, reg[1]); 57 - 58 - np = of_find_compatible_node(NULL, NULL, "marvell,mv64360-gpp"); 59 - reg = of_get_property(np, "reg", NULL); 60 - paddr = of_translate_address(np, reg); 61 - of_node_put(np); 62 - mv64x60_gpp_reg_base = ioremap(paddr, reg[1]); 63 - 64 - #ifdef CONFIG_PCI 65 - mv64x60_pci_init(); 66 - #endif 67 - } 68 - 69 - static void c2k_reset_board(void) 70 - { 71 - u32 temp; 72 - 73 - local_irq_disable(); 74 - 75 - temp = in_le32(mv64x60_mpp_reg_base + MV64x60_MPP_CNTL_0); 76 - temp &= 0xFFFF0FFF; 77 - out_le32(mv64x60_mpp_reg_base + MV64x60_MPP_CNTL_0, temp); 78 - 79 - temp = in_le32(mv64x60_gpp_reg_base + MV64x60_GPP_LEVEL_CNTL); 80 - temp |= 0x00000004; 81 - out_le32(mv64x60_gpp_reg_base + MV64x60_GPP_LEVEL_CNTL, temp); 82 - 83 - temp = in_le32(mv64x60_gpp_reg_base + MV64x60_GPP_IO_CNTL); 84 - temp |= 0x00000004; 85 - out_le32(mv64x60_gpp_reg_base + MV64x60_GPP_IO_CNTL, temp); 86 - 87 - temp = in_le32(mv64x60_mpp_reg_base + MV64x60_MPP_CNTL_2); 88 - temp &= 0xFFFF0FFF; 89 - out_le32(mv64x60_mpp_reg_base + MV64x60_MPP_CNTL_2, temp); 90 - 91 - temp = in_le32(mv64x60_gpp_reg_base + MV64x60_GPP_LEVEL_CNTL); 92 - temp |= 0x00080000; 93 - out_le32(mv64x60_gpp_reg_base + MV64x60_GPP_LEVEL_CNTL, temp); 94 - 95 - temp = in_le32(mv64x60_gpp_reg_base + MV64x60_GPP_IO_CNTL); 96 - temp |= 0x00080000; 97 - out_le32(mv64x60_gpp_reg_base + MV64x60_GPP_IO_CNTL, temp); 98 - 99 - out_le32(mv64x60_gpp_reg_base + MV64x60_GPP_VALUE_SET, 0x00080004); 100 - } 101 - 102 - static void __noreturn c2k_restart(char *cmd) 103 - { 104 - c2k_reset_board(); 105 - msleep(100); 106 - panic("restart failed\n"); 107 - } 108 - 109 - #ifdef CONFIG_NOT_COHERENT_CACHE 110 - #define COHERENCY_SETTING "off" 111 - #else 112 - #define COHERENCY_SETTING "on" 113 - #endif 114 - 115 - void c2k_show_cpuinfo(struct seq_file *m) 116 - { 117 - seq_printf(m, "Vendor\t\t: GEFanuc\n"); 118 - seq_printf(m, "coherency\t: %s\n", COHERENCY_SETTING); 119 - } 120 - 121 - /* 122 - * Called very early, device-tree isn't unflattened 123 - */ 124 - static int __init c2k_probe(void) 125 - { 126 - if (!of_machine_is_compatible("GEFanuc,C2K")) 127 - return 0; 128 - 129 - printk(KERN_INFO "Detected a GEFanuc C2K board\n"); 130 - 131 - _set_L2CR(0); 132 - _set_L2CR(L2CR_L2E | L2CR_L2PE | L2CR_L2I); 133 - 134 - mv64x60_init_early(); 135 - 136 - return 1; 137 - } 138 - 139 - define_machine(c2k) { 140 - .name = "C2K", 141 - .probe = c2k_probe, 142 - .setup_arch = c2k_setup_arch, 143 - .show_cpuinfo = c2k_show_cpuinfo, 144 - .init_IRQ = mv64x60_init_irq, 145 - .get_irq = mv64x60_get_irq, 146 - .restart = c2k_restart, 147 - .calibrate_decr = generic_calibrate_decr, 148 - };