diff options
Diffstat (limited to 'arch/mips')
482 files changed, 31893 insertions, 14198 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index fd7620f025fa..7e6fd1cbd3f8 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
@@ -5,9 +5,12 @@ config MIPS | |||
5 | select HAVE_IDE | 5 | select HAVE_IDE |
6 | select HAVE_OPROFILE | 6 | select HAVE_OPROFILE |
7 | select HAVE_ARCH_KGDB | 7 | select HAVE_ARCH_KGDB |
8 | # Horrible source of confusion. Die, die, die ... | 8 | select HAVE_FUNCTION_TRACER |
9 | select EMBEDDED | 9 | select HAVE_FUNCTION_TRACE_MCOUNT_TEST |
10 | select RTC_LIB if !LEMOTE_FULOONG2E | 10 | select HAVE_DYNAMIC_FTRACE |
11 | select HAVE_FTRACE_MCOUNT_RECORD | ||
12 | select HAVE_FUNCTION_GRAPH_TRACER | ||
13 | select RTC_LIB if !MACH_LOONGSON | ||
11 | 14 | ||
12 | mainmenu "Linux/MIPS Kernel Configuration" | 15 | mainmenu "Linux/MIPS Kernel Configuration" |
13 | 16 | ||
@@ -22,6 +25,7 @@ choice | |||
22 | 25 | ||
23 | config MACH_ALCHEMY | 26 | config MACH_ALCHEMY |
24 | bool "Alchemy processor based machines" | 27 | bool "Alchemy processor based machines" |
28 | select SYS_SUPPORTS_ZBOOT | ||
25 | 29 | ||
26 | config AR7 | 30 | config AR7 |
27 | bool "Texas Instruments AR7" | 31 | bool "Texas Instruments AR7" |
@@ -36,32 +40,16 @@ config AR7 | |||
36 | select SYS_HAS_EARLY_PRINTK | 40 | select SYS_HAS_EARLY_PRINTK |
37 | select SYS_SUPPORTS_32BIT_KERNEL | 41 | select SYS_SUPPORTS_32BIT_KERNEL |
38 | select SYS_SUPPORTS_LITTLE_ENDIAN | 42 | select SYS_SUPPORTS_LITTLE_ENDIAN |
39 | select GENERIC_GPIO | 43 | select SYS_SUPPORTS_ZBOOT_UART16550 |
44 | select ARCH_REQUIRE_GPIOLIB | ||
40 | select GCD | 45 | select GCD |
41 | select VLYNQ | 46 | select VLYNQ |
42 | help | 47 | help |
43 | Support for the Texas Instruments AR7 System-on-a-Chip | 48 | Support for the Texas Instruments AR7 System-on-a-Chip |
44 | family: TNETD7100, 7200 and 7300. | 49 | family: TNETD7100, 7200 and 7300. |
45 | 50 | ||
46 | config BASLER_EXCITE | ||
47 | bool "Basler eXcite smart camera" | ||
48 | select CEVT_R4K | ||
49 | select CSRC_R4K | ||
50 | select DMA_COHERENT | ||
51 | select HW_HAS_PCI | ||
52 | select IRQ_CPU | ||
53 | select IRQ_CPU_RM7K | ||
54 | select IRQ_CPU_RM9K | ||
55 | select MIPS_RM9122 | ||
56 | select SYS_HAS_CPU_RM9000 | ||
57 | select SYS_SUPPORTS_32BIT_KERNEL | ||
58 | select SYS_SUPPORTS_BIG_ENDIAN | ||
59 | help | ||
60 | The eXcite is a smart camera platform manufactured by | ||
61 | Basler Vision Technologies AG. | ||
62 | |||
63 | config BCM47XX | 51 | config BCM47XX |
64 | bool "BCM47XX based boards" | 52 | bool "Broadcom BCM47XX based boards" |
65 | select CEVT_R4K | 53 | select CEVT_R4K |
66 | select CSRC_R4K | 54 | select CSRC_R4K |
67 | select DMA_NONCOHERENT | 55 | select DMA_NONCOHERENT |
@@ -192,6 +180,7 @@ config LASAT | |||
192 | 180 | ||
193 | config MACH_LOONGSON | 181 | config MACH_LOONGSON |
194 | bool "Loongson family of machines" | 182 | bool "Loongson family of machines" |
183 | select SYS_SUPPORTS_ZBOOT | ||
195 | help | 184 | help |
196 | This enables the support of Loongson family of machines. | 185 | This enables the support of Loongson family of machines. |
197 | 186 | ||
@@ -233,6 +222,7 @@ config MIPS_MALTA | |||
233 | select SYS_SUPPORTS_MIPS_CMP | 222 | select SYS_SUPPORTS_MIPS_CMP |
234 | select SYS_SUPPORTS_MULTITHREADING | 223 | select SYS_SUPPORTS_MULTITHREADING |
235 | select SYS_SUPPORTS_SMARTMIPS | 224 | select SYS_SUPPORTS_SMARTMIPS |
225 | select SYS_SUPPORTS_ZBOOT | ||
236 | help | 226 | help |
237 | This enables support for the MIPS Technologies Malta evaluation | 227 | This enables support for the MIPS Technologies Malta evaluation |
238 | board. | 228 | board. |
@@ -334,6 +324,24 @@ config PMC_YOSEMITE | |||
334 | Yosemite is an evaluation board for the RM9000x2 processor | 324 | Yosemite is an evaluation board for the RM9000x2 processor |
335 | manufactured by PMC-Sierra. | 325 | manufactured by PMC-Sierra. |
336 | 326 | ||
327 | config POWERTV | ||
328 | bool "Cisco PowerTV" | ||
329 | select BOOT_ELF32 | ||
330 | select CEVT_R4K | ||
331 | select CPU_MIPSR2_IRQ_VI | ||
332 | select CPU_MIPSR2_IRQ_EI | ||
333 | select CSRC_POWERTV | ||
334 | select DMA_NONCOHERENT | ||
335 | select HW_HAS_PCI | ||
336 | select SYS_HAS_EARLY_PRINTK | ||
337 | select SYS_HAS_CPU_MIPS32_R2 | ||
338 | select SYS_SUPPORTS_32BIT_KERNEL | ||
339 | select SYS_SUPPORTS_BIG_ENDIAN | ||
340 | select SYS_SUPPORTS_HIGHMEM | ||
341 | select USB_OHCI_LITTLE_ENDIAN | ||
342 | help | ||
343 | This enables support for the Cisco PowerTV Platform. | ||
344 | |||
337 | config SGI_IP22 | 345 | config SGI_IP22 |
338 | bool "SGI IP22 (Indy/Indigo2)" | 346 | bool "SGI IP22 (Indy/Indigo2)" |
339 | select ARC | 347 | select ARC |
@@ -501,6 +509,7 @@ config SIBYTE_SWARM | |||
501 | bool "Sibyte BCM91250A-SWARM" | 509 | bool "Sibyte BCM91250A-SWARM" |
502 | select BOOT_ELF32 | 510 | select BOOT_ELF32 |
503 | select DMA_COHERENT | 511 | select DMA_COHERENT |
512 | select HAVE_PATA_PLATFORM | ||
504 | select NR_CPUS_DEFAULT_2 | 513 | select NR_CPUS_DEFAULT_2 |
505 | select SIBYTE_SB1250 | 514 | select SIBYTE_SB1250 |
506 | select SWAP_IO_SPACE | 515 | select SWAP_IO_SPACE |
@@ -515,6 +524,7 @@ config SIBYTE_LITTLESUR | |||
515 | depends on EXPERIMENTAL | 524 | depends on EXPERIMENTAL |
516 | select BOOT_ELF32 | 525 | select BOOT_ELF32 |
517 | select DMA_COHERENT | 526 | select DMA_COHERENT |
527 | select HAVE_PATA_PLATFORM | ||
518 | select NR_CPUS_DEFAULT_2 | 528 | select NR_CPUS_DEFAULT_2 |
519 | select SIBYTE_SB1250 | 529 | select SIBYTE_SB1250 |
520 | select SWAP_IO_SPACE | 530 | select SWAP_IO_SPACE |
@@ -674,11 +684,11 @@ config CAVIUM_OCTEON_REFERENCE_BOARD | |||
674 | endchoice | 684 | endchoice |
675 | 685 | ||
676 | source "arch/mips/alchemy/Kconfig" | 686 | source "arch/mips/alchemy/Kconfig" |
677 | source "arch/mips/basler/excite/Kconfig" | ||
678 | source "arch/mips/bcm63xx/Kconfig" | 687 | source "arch/mips/bcm63xx/Kconfig" |
679 | source "arch/mips/jazz/Kconfig" | 688 | source "arch/mips/jazz/Kconfig" |
680 | source "arch/mips/lasat/Kconfig" | 689 | source "arch/mips/lasat/Kconfig" |
681 | source "arch/mips/pmc-sierra/Kconfig" | 690 | source "arch/mips/pmc-sierra/Kconfig" |
691 | source "arch/mips/powertv/Kconfig" | ||
682 | source "arch/mips/sgi-ip27/Kconfig" | 692 | source "arch/mips/sgi-ip27/Kconfig" |
683 | source "arch/mips/sibyte/Kconfig" | 693 | source "arch/mips/sibyte/Kconfig" |
684 | source "arch/mips/txx9/Kconfig" | 694 | source "arch/mips/txx9/Kconfig" |
@@ -778,6 +788,9 @@ config CSRC_BCM1480 | |||
778 | config CSRC_IOASIC | 788 | config CSRC_IOASIC |
779 | bool | 789 | bool |
780 | 790 | ||
791 | config CSRC_POWERTV | ||
792 | bool | ||
793 | |||
781 | config CSRC_R4K_LIB | 794 | config CSRC_R4K_LIB |
782 | bool | 795 | bool |
783 | 796 | ||
@@ -801,25 +814,11 @@ config DMA_COHERENT | |||
801 | 814 | ||
802 | config DMA_NONCOHERENT | 815 | config DMA_NONCOHERENT |
803 | bool | 816 | bool |
804 | select DMA_NEED_PCI_MAP_STATE | 817 | select NEED_DMA_MAP_STATE |
805 | 818 | ||
806 | config DMA_NEED_PCI_MAP_STATE | 819 | config NEED_DMA_MAP_STATE |
807 | bool | 820 | bool |
808 | 821 | ||
809 | config EARLY_PRINTK | ||
810 | bool "Early printk" if EMBEDDED && DEBUG_KERNEL | ||
811 | depends on SYS_HAS_EARLY_PRINTK | ||
812 | default y | ||
813 | help | ||
814 | This option enables special console drivers which allow the kernel | ||
815 | to print messages very early in the bootup process. | ||
816 | |||
817 | This is useful for kernel debugging when your machine crashes very | ||
818 | early before the console code is initialized. For normal operation, | ||
819 | it is not recommended because it looks ugly on some machines and | ||
820 | doesn't cooperate with an X server. You should normally say N here, | ||
821 | unless you want to debug such a crash. | ||
822 | |||
823 | config SYS_HAS_EARLY_PRINTK | 822 | config SYS_HAS_EARLY_PRINTK |
824 | bool | 823 | bool |
825 | 824 | ||
@@ -1069,6 +1068,21 @@ config CPU_LOONGSON2E | |||
1069 | The Loongson 2E processor implements the MIPS III instruction set | 1068 | The Loongson 2E processor implements the MIPS III instruction set |
1070 | with many extensions. | 1069 | with many extensions. |
1071 | 1070 | ||
1071 | It has an internal FPGA northbridge, which is compatiable to | ||
1072 | bonito64. | ||
1073 | |||
1074 | config CPU_LOONGSON2F | ||
1075 | bool "Loongson 2F" | ||
1076 | depends on SYS_HAS_CPU_LOONGSON2F | ||
1077 | select CPU_LOONGSON2 | ||
1078 | help | ||
1079 | The Loongson 2F processor implements the MIPS III instruction set | ||
1080 | with many extensions. | ||
1081 | |||
1082 | Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller | ||
1083 | have a similar programming interface with FPGA northbridge used in | ||
1084 | Loongson2E. | ||
1085 | |||
1072 | config CPU_MIPS32_R1 | 1086 | config CPU_MIPS32_R1 |
1073 | bool "MIPS32 Release 1" | 1087 | bool "MIPS32 Release 1" |
1074 | depends on SYS_HAS_CPU_MIPS32_R1 | 1088 | depends on SYS_HAS_CPU_MIPS32_R1 |
@@ -1283,7 +1297,6 @@ config CPU_CAVIUM_OCTEON | |||
1283 | select SYS_SUPPORTS_SMP | 1297 | select SYS_SUPPORTS_SMP |
1284 | select NR_CPUS_DEFAULT_16 | 1298 | select NR_CPUS_DEFAULT_16 |
1285 | select WEAK_ORDERING | 1299 | select WEAK_ORDERING |
1286 | select WEAK_REORDERING_BEYOND_LLSC | ||
1287 | select CPU_SUPPORTS_HIGHMEM | 1300 | select CPU_SUPPORTS_HIGHMEM |
1288 | select CPU_SUPPORTS_HUGEPAGES | 1301 | select CPU_SUPPORTS_HUGEPAGES |
1289 | help | 1302 | help |
@@ -1294,6 +1307,44 @@ config CPU_CAVIUM_OCTEON | |||
1294 | 1307 | ||
1295 | endchoice | 1308 | endchoice |
1296 | 1309 | ||
1310 | if CPU_LOONGSON2F | ||
1311 | config CPU_NOP_WORKAROUNDS | ||
1312 | bool | ||
1313 | |||
1314 | config CPU_JUMP_WORKAROUNDS | ||
1315 | bool | ||
1316 | |||
1317 | config CPU_LOONGSON2F_WORKAROUNDS | ||
1318 | bool "Loongson 2F Workarounds" | ||
1319 | default y | ||
1320 | select CPU_NOP_WORKAROUNDS | ||
1321 | select CPU_JUMP_WORKAROUNDS | ||
1322 | help | ||
1323 | Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which | ||
1324 | require workarounds. Without workarounds the system may hang | ||
1325 | unexpectedly. For more information please refer to the gas | ||
1326 | -mfix-loongson2f-nop and -mfix-loongson2f-jump options. | ||
1327 | |||
1328 | Loongson 2F03 and later have fixed these issues and no workarounds | ||
1329 | are needed. The workarounds have no significant side effect on them | ||
1330 | but may decrease the performance of the system so this option should | ||
1331 | be disabled unless the kernel is intended to be run on 2F01 or 2F02 | ||
1332 | systems. | ||
1333 | |||
1334 | If unsure, please say Y. | ||
1335 | endif # CPU_LOONGSON2F | ||
1336 | |||
1337 | config SYS_SUPPORTS_ZBOOT | ||
1338 | bool | ||
1339 | select HAVE_KERNEL_GZIP | ||
1340 | select HAVE_KERNEL_BZIP2 | ||
1341 | select HAVE_KERNEL_LZMA | ||
1342 | select HAVE_KERNEL_LZO | ||
1343 | |||
1344 | config SYS_SUPPORTS_ZBOOT_UART16550 | ||
1345 | bool | ||
1346 | select SYS_SUPPORTS_ZBOOT | ||
1347 | |||
1297 | config CPU_LOONGSON2 | 1348 | config CPU_LOONGSON2 |
1298 | bool | 1349 | bool |
1299 | select CPU_SUPPORTS_32BIT_KERNEL | 1350 | select CPU_SUPPORTS_32BIT_KERNEL |
@@ -1303,6 +1354,12 @@ config CPU_LOONGSON2 | |||
1303 | config SYS_HAS_CPU_LOONGSON2E | 1354 | config SYS_HAS_CPU_LOONGSON2E |
1304 | bool | 1355 | bool |
1305 | 1356 | ||
1357 | config SYS_HAS_CPU_LOONGSON2F | ||
1358 | bool | ||
1359 | select CPU_SUPPORTS_CPUFREQ | ||
1360 | select CPU_SUPPORTS_ADDRWINCFG if 64BIT | ||
1361 | select CPU_SUPPORTS_UNCACHED_ACCELERATED | ||
1362 | |||
1306 | config SYS_HAS_CPU_MIPS32_R1 | 1363 | config SYS_HAS_CPU_MIPS32_R1 |
1307 | bool | 1364 | bool |
1308 | 1365 | ||
@@ -1411,8 +1468,17 @@ config CPU_SUPPORTS_32BIT_KERNEL | |||
1411 | bool | 1468 | bool |
1412 | config CPU_SUPPORTS_64BIT_KERNEL | 1469 | config CPU_SUPPORTS_64BIT_KERNEL |
1413 | bool | 1470 | bool |
1471 | config CPU_SUPPORTS_CPUFREQ | ||
1472 | bool | ||
1473 | config CPU_SUPPORTS_ADDRWINCFG | ||
1474 | bool | ||
1414 | config CPU_SUPPORTS_HUGEPAGES | 1475 | config CPU_SUPPORTS_HUGEPAGES |
1415 | bool | 1476 | bool |
1477 | config CPU_SUPPORTS_UNCACHED_ACCELERATED | ||
1478 | bool | ||
1479 | config MIPS_PGD_C0_CONTEXT | ||
1480 | bool | ||
1481 | default y if 64BIT && CPU_MIPSR2 | ||
1416 | 1482 | ||
1417 | # | 1483 | # |
1418 | # Set to y for ptrace access to watch registers. | 1484 | # Set to y for ptrace access to watch registers. |
@@ -1688,6 +1754,9 @@ config SB1_PASS_2_1_WORKAROUNDS | |||
1688 | config 64BIT_PHYS_ADDR | 1754 | config 64BIT_PHYS_ADDR |
1689 | bool | 1755 | bool |
1690 | 1756 | ||
1757 | config ARCH_PHYS_ADDR_T_64BIT | ||
1758 | def_bool 64BIT_PHYS_ADDR | ||
1759 | |||
1691 | config CPU_HAS_SMARTMIPS | 1760 | config CPU_HAS_SMARTMIPS |
1692 | depends on SYS_SUPPORTS_SMARTMIPS | 1761 | depends on SYS_SUPPORTS_SMARTMIPS |
1693 | bool "Support for the SmartMIPS ASE" | 1762 | bool "Support for the SmartMIPS ASE" |
@@ -2024,15 +2093,6 @@ config STACKTRACE_SUPPORT | |||
2024 | 2093 | ||
2025 | source "init/Kconfig" | 2094 | source "init/Kconfig" |
2026 | 2095 | ||
2027 | config PROBE_INITRD_HEADER | ||
2028 | bool "Probe initrd header created by addinitrd" | ||
2029 | depends on BLK_DEV_INITRD | ||
2030 | help | ||
2031 | Probe initrd header at the last page of kernel image. | ||
2032 | Say Y here if you are using arch/mips/boot/addinitrd.c to | ||
2033 | add initrd or initramfs image to the kernel image. | ||
2034 | Otherwise, say N. | ||
2035 | |||
2036 | source "kernel/Kconfig.freezer" | 2096 | source "kernel/Kconfig.freezer" |
2037 | 2097 | ||
2038 | menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)" | 2098 | menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)" |
@@ -2104,6 +2164,7 @@ config MMU | |||
2104 | 2164 | ||
2105 | config I8253 | 2165 | config I8253 |
2106 | bool | 2166 | bool |
2167 | select MIPS_EXTERNAL_TIMER | ||
2107 | 2168 | ||
2108 | config ZONE_DMA32 | 2169 | config ZONE_DMA32 |
2109 | bool | 2170 | bool |
@@ -2180,6 +2241,8 @@ source "kernel/power/Kconfig" | |||
2180 | 2241 | ||
2181 | endmenu | 2242 | endmenu |
2182 | 2243 | ||
2244 | source "arch/mips/kernel/cpufreq/Kconfig" | ||
2245 | |||
2183 | source "net/Kconfig" | 2246 | source "net/Kconfig" |
2184 | 2247 | ||
2185 | source "drivers/Kconfig" | 2248 | source "drivers/Kconfig" |
diff --git a/arch/mips/Kconfig.debug b/arch/mips/Kconfig.debug index 364ca8938807..43dc27997730 100644 --- a/arch/mips/Kconfig.debug +++ b/arch/mips/Kconfig.debug | |||
@@ -6,15 +6,66 @@ config TRACE_IRQFLAGS_SUPPORT | |||
6 | 6 | ||
7 | source "lib/Kconfig.debug" | 7 | source "lib/Kconfig.debug" |
8 | 8 | ||
9 | config EARLY_PRINTK | ||
10 | bool "Early printk" if EMBEDDED | ||
11 | depends on SYS_HAS_EARLY_PRINTK | ||
12 | default y | ||
13 | help | ||
14 | This option enables special console drivers which allow the kernel | ||
15 | to print messages very early in the bootup process. | ||
16 | |||
17 | This is useful for kernel debugging when your machine crashes very | ||
18 | early before the console code is initialized. For normal operation, | ||
19 | it is not recommended because it looks ugly on some machines and | ||
20 | doesn't cooperate with an X server. You should normally say N here, | ||
21 | unless you want to debug such a crash. | ||
22 | |||
23 | config CMDLINE_BOOL | ||
24 | bool "Built-in kernel command line" | ||
25 | default n | ||
26 | help | ||
27 | For most systems, it is firmware or second stage bootloader that | ||
28 | by default specifies the kernel command line options. However, | ||
29 | it might be necessary or advantageous to either override the | ||
30 | default kernel command line or add a few extra options to it. | ||
31 | For such cases, this option allows you to hardcode your own | ||
32 | command line options directly into the kernel. For that, you | ||
33 | should choose 'Y' here, and fill in the extra boot arguments | ||
34 | in CONFIG_CMDLINE. | ||
35 | |||
36 | The built-in options will be concatenated to the default command | ||
37 | line if CMDLINE_OVERRIDE is set to 'N'. Otherwise, the default | ||
38 | command line will be ignored and replaced by the built-in string. | ||
39 | |||
40 | Most MIPS systems will normally expect 'N' here and rely upon | ||
41 | the command line from the firmware or the second-stage bootloader. | ||
42 | |||
9 | config CMDLINE | 43 | config CMDLINE |
10 | string "Default kernel command string" | 44 | string "Default kernel command string" |
45 | depends on CMDLINE_BOOL | ||
11 | default "" | 46 | default "" |
12 | help | 47 | help |
13 | On some platforms, there is currently no way for the boot loader to | 48 | On some platforms, there is currently no way for the boot loader to |
14 | pass arguments to the kernel. For these platforms, you can supply | 49 | pass arguments to the kernel. For these platforms, and for the cases |
15 | some command-line options at build time by entering them here. In | 50 | when you want to add some extra options to the command line or ignore |
16 | other cases you can specify kernel args so that you don't have | 51 | the default command line, you can supply some command-line options at |
17 | to set them up in board prom initialization routines. | 52 | build time by entering them here. In other cases you can specify |
53 | kernel args so that you don't have to set them up in board prom | ||
54 | initialization routines. | ||
55 | |||
56 | For more information, see the CMDLINE_BOOL and CMDLINE_OVERRIDE | ||
57 | options. | ||
58 | |||
59 | config CMDLINE_OVERRIDE | ||
60 | bool "Built-in command line overrides firware arguments" | ||
61 | default n | ||
62 | depends on CMDLINE_BOOL | ||
63 | help | ||
64 | By setting this option to 'Y' you will have your kernel ignore | ||
65 | command line arguments from firmware or second stage bootloader. | ||
66 | Instead, the built-in command line will be used exclusively. | ||
67 | |||
68 | Normally, you will choose 'N' here. | ||
18 | 69 | ||
19 | config DEBUG_STACK_USAGE | 70 | config DEBUG_STACK_USAGE |
20 | bool "Enable stack utilization instrumentation" | 71 | bool "Enable stack utilization instrumentation" |
@@ -51,4 +102,30 @@ config RUNTIME_DEBUG | |||
51 | arch/mips/include/asm/debug.h for debugging macros. | 102 | arch/mips/include/asm/debug.h for debugging macros. |
52 | If unsure, say N. | 103 | If unsure, say N. |
53 | 104 | ||
105 | config DEBUG_ZBOOT | ||
106 | bool "Enable compressed kernel support debugging" | ||
107 | depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT | ||
108 | default n | ||
109 | help | ||
110 | If you want to add compressed kernel support to a new board, and the | ||
111 | board supports uart16550 compatible serial port, please select | ||
112 | SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to | ||
113 | debug it. | ||
114 | |||
115 | If your board doesn't support uart16550 compatible serial port, you | ||
116 | can try to select SYS_SUPPORTS_ZBOOT and use the other methods to | ||
117 | debug it. for example, add a new serial port support just as | ||
118 | arch/mips/boot/compressed/uart-16550.c does. | ||
119 | |||
120 | After the compressed kernel support works, please disable this option | ||
121 | to reduce the kernel image size and speed up the booting procedure a | ||
122 | little. | ||
123 | |||
124 | config SPINLOCK_TEST | ||
125 | bool "Enable spinlock timing tests in debugfs" | ||
126 | depends on DEBUG_FS | ||
127 | default n | ||
128 | help | ||
129 | Add several files to the debugfs to test spinlock speed. | ||
130 | |||
54 | endmenu | 131 | endmenu |
diff --git a/arch/mips/Makefile b/arch/mips/Makefile index 77f5021218d3..0b9c01add0a0 100644 --- a/arch/mips/Makefile +++ b/arch/mips/Makefile | |||
@@ -48,7 +48,16 @@ ifneq ($(SUBARCH),$(ARCH)) | |||
48 | endif | 48 | endif |
49 | endif | 49 | endif |
50 | 50 | ||
51 | ifndef CONFIG_FUNCTION_TRACER | ||
51 | cflags-y := -ffunction-sections | 52 | cflags-y := -ffunction-sections |
53 | endif | ||
54 | ifdef CONFIG_FUNCTION_GRAPH_TRACER | ||
55 | ifndef KBUILD_MCOUNT_RA_ADDRESS | ||
56 | ifeq ($(call cc-option-yn,-mmcount-ra-address), y) | ||
57 | cflags-y += -mmcount-ra-address -DKBUILD_MCOUNT_RA_ADDRESS | ||
58 | endif | ||
59 | endif | ||
60 | endif | ||
52 | cflags-y += $(call cc-option, -mno-check-zero-division) | 61 | cflags-y += $(call cc-option, -mno-check-zero-division) |
53 | 62 | ||
54 | ifdef CONFIG_32BIT | 63 | ifdef CONFIG_32BIT |
@@ -69,6 +78,7 @@ endif | |||
69 | 78 | ||
70 | all-$(CONFIG_BOOT_ELF32) := $(vmlinux-32) | 79 | all-$(CONFIG_BOOT_ELF32) := $(vmlinux-32) |
71 | all-$(CONFIG_BOOT_ELF64) := $(vmlinux-64) | 80 | all-$(CONFIG_BOOT_ELF64) := $(vmlinux-64) |
81 | all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlinuz | ||
72 | 82 | ||
73 | # | 83 | # |
74 | # GCC uses -G 0 -mabicalls -fpic as default. We don't want PIC in the kernel | 84 | # GCC uses -G 0 -mabicalls -fpic as default. We don't want PIC in the kernel |
@@ -124,6 +134,21 @@ cflags-$(CONFIG_CPU_TX49XX) += -march=r4600 -Wa,--trap | |||
124 | cflags-$(CONFIG_CPU_LOONGSON2) += -Wa,--trap | 134 | cflags-$(CONFIG_CPU_LOONGSON2) += -Wa,--trap |
125 | cflags-$(CONFIG_CPU_LOONGSON2E) += \ | 135 | cflags-$(CONFIG_CPU_LOONGSON2E) += \ |
126 | $(call cc-option,-march=loongson2e,-march=r4600) | 136 | $(call cc-option,-march=loongson2e,-march=r4600) |
137 | cflags-$(CONFIG_CPU_LOONGSON2F) += \ | ||
138 | $(call cc-option,-march=loongson2f,-march=r4600) | ||
139 | # enable the workarounds for loongson2f | ||
140 | ifdef CONFIG_CPU_LOONGSON2F_WORKAROUNDS | ||
141 | ifeq ($(call as-option,-Wa$(comma)-mfix-loongson2f-nop,),) | ||
142 | $(error only binutils >= 2.20.2 have needed option -mfix-loongson2f-nop) | ||
143 | else | ||
144 | cflags-$(CONFIG_CPU_NOP_WORKAROUNDS) += -Wa$(comma)-mfix-loongson2f-nop | ||
145 | endif | ||
146 | ifeq ($(call as-option,-Wa$(comma)-mfix-loongson2f-jump,),) | ||
147 | $(error only binutils >= 2.20.2 have needed option -mfix-loongson2f-jump) | ||
148 | else | ||
149 | cflags-$(CONFIG_CPU_JUMP_WORKAROUNDS) += -Wa$(comma)-mfix-loongson2f-jump | ||
150 | endif | ||
151 | endif | ||
127 | 152 | ||
128 | cflags-$(CONFIG_CPU_MIPS32_R1) += $(call cc-option,-march=mips32,-mips32 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS32) \ | 153 | cflags-$(CONFIG_CPU_MIPS32_R1) += $(call cc-option,-march=mips32,-mips32 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS32) \ |
129 | -Wa,-mips32 -Wa,--trap | 154 | -Wa,-mips32 -Wa,--trap |
@@ -173,6 +198,15 @@ libs-$(CONFIG_SNIPROM) += arch/mips/fw/sni/ | |||
173 | libs-y += arch/mips/fw/lib/ | 198 | libs-y += arch/mips/fw/lib/ |
174 | 199 | ||
175 | # | 200 | # |
201 | # Kernel compression | ||
202 | # | ||
203 | ifdef SYS_SUPPORTS_ZBOOT | ||
204 | COMPRESSION_FNAME = vmlinuz | ||
205 | else | ||
206 | COMPRESSION_FNAME = vmlinux | ||
207 | endif | ||
208 | |||
209 | # | ||
176 | # Board-dependent options and extra files | 210 | # Board-dependent options and extra files |
177 | # | 211 | # |
178 | 212 | ||
@@ -320,10 +354,11 @@ load-$(CONFIG_WR_PPMC) += 0xffffffff80100000 | |||
320 | # | 354 | # |
321 | # Loongson family | 355 | # Loongson family |
322 | # | 356 | # |
323 | core-$(CONFIG_MACH_LOONGSON) +=arch/mips/loongson/ | 357 | core-$(CONFIG_MACH_LOONGSON) += arch/mips/loongson/ |
324 | cflags-$(CONFIG_MACH_LOONGSON) += -I$(srctree)/arch/mips/include/asm/mach-loongson \ | 358 | cflags-$(CONFIG_MACH_LOONGSON) += -I$(srctree)/arch/mips/include/asm/mach-loongson \ |
325 | -mno-branch-likely | 359 | -mno-branch-likely |
326 | load-$(CONFIG_LEMOTE_FULOONG2E) +=0xffffffff80100000 | 360 | load-$(CONFIG_LEMOTE_FULOONG2E) += 0xffffffff80100000 |
361 | load-$(CONFIG_LEMOTE_MACH2F) += 0xffffffff80200000 | ||
327 | 362 | ||
328 | # | 363 | # |
329 | # MIPS Malta board | 364 | # MIPS Malta board |
@@ -331,7 +366,7 @@ load-$(CONFIG_LEMOTE_FULOONG2E) +=0xffffffff80100000 | |||
331 | core-$(CONFIG_MIPS_MALTA) += arch/mips/mti-malta/ | 366 | core-$(CONFIG_MIPS_MALTA) += arch/mips/mti-malta/ |
332 | cflags-$(CONFIG_MIPS_MALTA) += -I$(srctree)/arch/mips/include/asm/mach-malta | 367 | cflags-$(CONFIG_MIPS_MALTA) += -I$(srctree)/arch/mips/include/asm/mach-malta |
333 | load-$(CONFIG_MIPS_MALTA) += 0xffffffff80100000 | 368 | load-$(CONFIG_MIPS_MALTA) += 0xffffffff80100000 |
334 | all-$(CONFIG_MIPS_MALTA) := vmlinux.bin | 369 | all-$(CONFIG_MIPS_MALTA) := $(COMPRESSION_FNAME).bin |
335 | 370 | ||
336 | # | 371 | # |
337 | # MIPS SIM | 372 | # MIPS SIM |
@@ -356,13 +391,6 @@ cflags-$(CONFIG_PMC_YOSEMITE) += -I$(srctree)/arch/mips/include/asm/mach-yosemit | |||
356 | load-$(CONFIG_PMC_YOSEMITE) += 0xffffffff80100000 | 391 | load-$(CONFIG_PMC_YOSEMITE) += 0xffffffff80100000 |
357 | 392 | ||
358 | # | 393 | # |
359 | # Basler eXcite | ||
360 | # | ||
361 | core-$(CONFIG_BASLER_EXCITE) += arch/mips/basler/excite/ | ||
362 | cflags-$(CONFIG_BASLER_EXCITE) += -I$(srctree)/arch/mips/include/asm/mach-excite | ||
363 | load-$(CONFIG_BASLER_EXCITE) += 0x80100000 | ||
364 | |||
365 | # | ||
366 | # LASAT platforms | 394 | # LASAT platforms |
367 | # | 395 | # |
368 | core-$(CONFIG_LASAT) += arch/mips/lasat/ | 396 | core-$(CONFIG_LASAT) += arch/mips/lasat/ |
@@ -441,6 +469,13 @@ core-$(CONFIG_NEC_MARKEINS) += arch/mips/emma/markeins/ | |||
441 | load-$(CONFIG_NEC_MARKEINS) += 0xffffffff88100000 | 469 | load-$(CONFIG_NEC_MARKEINS) += 0xffffffff88100000 |
442 | 470 | ||
443 | # | 471 | # |
472 | # Cisco PowerTV Platform | ||
473 | # | ||
474 | core-$(CONFIG_POWERTV) += arch/mips/powertv/ | ||
475 | cflags-$(CONFIG_POWERTV) += -I$(srctree)/arch/mips/include/asm/mach-powertv | ||
476 | load-$(CONFIG_POWERTV) += 0xffffffff90800000 | ||
477 | |||
478 | # | ||
444 | # SGI IP22 (Indy/Indigo2) | 479 | # SGI IP22 (Indy/Indigo2) |
445 | # | 480 | # |
446 | # Set the load address to >= 0xffffffff88069000 if you want to leave space for | 481 | # Set the load address to >= 0xffffffff88069000 if you want to leave space for |
@@ -581,7 +616,7 @@ load-$(CONFIG_SNI_RM) += 0xffffffff80600000 | |||
581 | else | 616 | else |
582 | load-$(CONFIG_SNI_RM) += 0xffffffff80030000 | 617 | load-$(CONFIG_SNI_RM) += 0xffffffff80030000 |
583 | endif | 618 | endif |
584 | all-$(CONFIG_SNI_RM) := vmlinux.ecoff | 619 | all-$(CONFIG_SNI_RM) := $(COMPRESSION_FNAME).ecoff |
585 | 620 | ||
586 | # | 621 | # |
587 | # Common TXx9 | 622 | # Common TXx9 |
@@ -699,9 +734,23 @@ vmlinux.64: vmlinux | |||
699 | $(OBJCOPY) -O $(64bit-bfd) $(OBJCOPYFLAGS) $< $@ | 734 | $(OBJCOPY) -O $(64bit-bfd) $(OBJCOPYFLAGS) $< $@ |
700 | 735 | ||
701 | makeboot =$(Q)$(MAKE) $(build)=arch/mips/boot VMLINUX=$(vmlinux-32) $(1) | 736 | makeboot =$(Q)$(MAKE) $(build)=arch/mips/boot VMLINUX=$(vmlinux-32) $(1) |
737 | makezboot =$(Q)$(MAKE) $(build)=arch/mips/boot/compressed \ | ||
738 | VMLINUX_LOAD_ADDRESS=$(load-y) 32bit-bfd=$(32bit-bfd) $(1) | ||
702 | 739 | ||
703 | all: $(all-y) | 740 | all: $(all-y) |
704 | 741 | ||
742 | vmlinuz: vmlinux FORCE | ||
743 | +@$(call makezboot,$@) | ||
744 | |||
745 | vmlinuz.bin: vmlinux | ||
746 | +@$(call makezboot,$@) | ||
747 | |||
748 | vmlinuz.ecoff: vmlinux | ||
749 | +@$(call makezboot,$@) | ||
750 | |||
751 | vmlinuz.srec: vmlinux | ||
752 | +@$(call makezboot,$@) | ||
753 | |||
705 | vmlinux.bin: $(vmlinux-32) | 754 | vmlinux.bin: $(vmlinux-32) |
706 | +@$(call makeboot,$@) | 755 | +@$(call makeboot,$@) |
707 | 756 | ||
@@ -726,11 +775,13 @@ endif | |||
726 | 775 | ||
727 | install: | 776 | install: |
728 | $(Q)install -D -m 755 vmlinux $(INSTALL_PATH)/vmlinux-$(KERNELRELEASE) | 777 | $(Q)install -D -m 755 vmlinux $(INSTALL_PATH)/vmlinux-$(KERNELRELEASE) |
778 | $(Q)install -D -m 755 vmlinuz $(INSTALL_PATH)/vmlinuz-$(KERNELRELEASE) | ||
729 | $(Q)install -D -m 644 .config $(INSTALL_PATH)/config-$(KERNELRELEASE) | 779 | $(Q)install -D -m 644 .config $(INSTALL_PATH)/config-$(KERNELRELEASE) |
730 | $(Q)install -D -m 644 System.map $(INSTALL_PATH)/System.map-$(KERNELRELEASE) | 780 | $(Q)install -D -m 644 System.map $(INSTALL_PATH)/System.map-$(KERNELRELEASE) |
731 | 781 | ||
732 | archclean: | 782 | archclean: |
733 | @$(MAKE) $(clean)=arch/mips/boot | 783 | @$(MAKE) $(clean)=arch/mips/boot |
784 | @$(MAKE) $(clean)=arch/mips/boot/compressed | ||
734 | @$(MAKE) $(clean)=arch/mips/lasat | 785 | @$(MAKE) $(clean)=arch/mips/lasat |
735 | 786 | ||
736 | define archhelp | 787 | define archhelp |
@@ -738,10 +789,18 @@ define archhelp | |||
738 | echo ' vmlinux.ecoff - ECOFF boot image' | 789 | echo ' vmlinux.ecoff - ECOFF boot image' |
739 | echo ' vmlinux.bin - Raw binary boot image' | 790 | echo ' vmlinux.bin - Raw binary boot image' |
740 | echo ' vmlinux.srec - SREC boot image' | 791 | echo ' vmlinux.srec - SREC boot image' |
792 | echo ' vmlinuz - Compressed boot(zboot) image' | ||
793 | echo ' vmlinuz.ecoff - ECOFF zboot image' | ||
794 | echo ' vmlinuz.bin - Raw binary zboot image' | ||
795 | echo ' vmlinuz.srec - SREC zboot image' | ||
741 | echo | 796 | echo |
742 | echo ' These will be default as apropriate for a configured platform.' | 797 | echo ' These will be default as apropriate for a configured platform.' |
743 | endef | 798 | endef |
744 | 799 | ||
745 | CLEAN_FILES += vmlinux.32 \ | 800 | CLEAN_FILES += vmlinux.32 \ |
746 | vmlinux.64 \ | 801 | vmlinux.64 \ |
747 | vmlinux.ecoff | 802 | vmlinux.ecoff \ |
803 | vmlinuz \ | ||
804 | vmlinuz.ecoff \ | ||
805 | vmlinuz.bin \ | ||
806 | vmlinuz.srec | ||
diff --git a/arch/mips/alchemy/Kconfig b/arch/mips/alchemy/Kconfig index 00b498e97c83..df3b1a7eb15d 100644 --- a/arch/mips/alchemy/Kconfig +++ b/arch/mips/alchemy/Kconfig | |||
@@ -1,5 +1,5 @@ | |||
1 | # au1000-style gpio | 1 | # au1000-style gpio and interrupt controllers |
2 | config ALCHEMY_GPIO_AU1000 | 2 | config ALCHEMY_GPIOINT_AU1000 |
3 | bool | 3 | bool |
4 | 4 | ||
5 | # select this in your board config if you don't want to use the gpio | 5 | # select this in your board config if you don't want to use the gpio |
@@ -20,12 +20,14 @@ config MIPS_MTX1 | |||
20 | select HW_HAS_PCI | 20 | select HW_HAS_PCI |
21 | select SOC_AU1500 | 21 | select SOC_AU1500 |
22 | select SYS_SUPPORTS_LITTLE_ENDIAN | 22 | select SYS_SUPPORTS_LITTLE_ENDIAN |
23 | select SYS_HAS_EARLY_PRINTK | ||
23 | 24 | ||
24 | config MIPS_BOSPORUS | 25 | config MIPS_BOSPORUS |
25 | bool "Alchemy Bosporus board" | 26 | bool "Alchemy Bosporus board" |
26 | select SOC_AU1500 | 27 | select SOC_AU1500 |
27 | select DMA_NONCOHERENT | 28 | select DMA_NONCOHERENT |
28 | select SYS_SUPPORTS_LITTLE_ENDIAN | 29 | select SYS_SUPPORTS_LITTLE_ENDIAN |
30 | select SYS_HAS_EARLY_PRINTK | ||
29 | 31 | ||
30 | config MIPS_DB1000 | 32 | config MIPS_DB1000 |
31 | bool "Alchemy DB1000 board" | 33 | bool "Alchemy DB1000 board" |
@@ -33,12 +35,14 @@ config MIPS_DB1000 | |||
33 | select DMA_NONCOHERENT | 35 | select DMA_NONCOHERENT |
34 | select HW_HAS_PCI | 36 | select HW_HAS_PCI |
35 | select SYS_SUPPORTS_LITTLE_ENDIAN | 37 | select SYS_SUPPORTS_LITTLE_ENDIAN |
38 | select SYS_HAS_EARLY_PRINTK | ||
36 | 39 | ||
37 | config MIPS_DB1100 | 40 | config MIPS_DB1100 |
38 | bool "Alchemy DB1100 board" | 41 | bool "Alchemy DB1100 board" |
39 | select SOC_AU1100 | 42 | select SOC_AU1100 |
40 | select DMA_NONCOHERENT | 43 | select DMA_NONCOHERENT |
41 | select SYS_SUPPORTS_LITTLE_ENDIAN | 44 | select SYS_SUPPORTS_LITTLE_ENDIAN |
45 | select SYS_HAS_EARLY_PRINTK | ||
42 | 46 | ||
43 | config MIPS_DB1200 | 47 | config MIPS_DB1200 |
44 | bool "Alchemy DB1200 board" | 48 | bool "Alchemy DB1200 board" |
@@ -46,6 +50,7 @@ config MIPS_DB1200 | |||
46 | select DMA_COHERENT | 50 | select DMA_COHERENT |
47 | select MIPS_DISABLE_OBSOLETE_IDE | 51 | select MIPS_DISABLE_OBSOLETE_IDE |
48 | select SYS_SUPPORTS_LITTLE_ENDIAN | 52 | select SYS_SUPPORTS_LITTLE_ENDIAN |
53 | select SYS_HAS_EARLY_PRINTK | ||
49 | 54 | ||
50 | config MIPS_DB1500 | 55 | config MIPS_DB1500 |
51 | bool "Alchemy DB1500 board" | 56 | bool "Alchemy DB1500 board" |
@@ -55,6 +60,7 @@ config MIPS_DB1500 | |||
55 | select MIPS_DISABLE_OBSOLETE_IDE | 60 | select MIPS_DISABLE_OBSOLETE_IDE |
56 | select SYS_SUPPORTS_BIG_ENDIAN | 61 | select SYS_SUPPORTS_BIG_ENDIAN |
57 | select SYS_SUPPORTS_LITTLE_ENDIAN | 62 | select SYS_SUPPORTS_LITTLE_ENDIAN |
63 | select SYS_HAS_EARLY_PRINTK | ||
58 | 64 | ||
59 | config MIPS_DB1550 | 65 | config MIPS_DB1550 |
60 | bool "Alchemy DB1550 board" | 66 | bool "Alchemy DB1550 board" |
@@ -63,12 +69,14 @@ config MIPS_DB1550 | |||
63 | select DMA_NONCOHERENT | 69 | select DMA_NONCOHERENT |
64 | select MIPS_DISABLE_OBSOLETE_IDE | 70 | select MIPS_DISABLE_OBSOLETE_IDE |
65 | select SYS_SUPPORTS_LITTLE_ENDIAN | 71 | select SYS_SUPPORTS_LITTLE_ENDIAN |
72 | select SYS_HAS_EARLY_PRINTK | ||
66 | 73 | ||
67 | config MIPS_MIRAGE | 74 | config MIPS_MIRAGE |
68 | bool "Alchemy Mirage board" | 75 | bool "Alchemy Mirage board" |
69 | select DMA_NONCOHERENT | 76 | select DMA_NONCOHERENT |
70 | select SOC_AU1500 | 77 | select SOC_AU1500 |
71 | select SYS_SUPPORTS_LITTLE_ENDIAN | 78 | select SYS_SUPPORTS_LITTLE_ENDIAN |
79 | select SYS_HAS_EARLY_PRINTK | ||
72 | 80 | ||
73 | config MIPS_PB1000 | 81 | config MIPS_PB1000 |
74 | bool "Alchemy PB1000 board" | 82 | bool "Alchemy PB1000 board" |
@@ -77,6 +85,7 @@ config MIPS_PB1000 | |||
77 | select HW_HAS_PCI | 85 | select HW_HAS_PCI |
78 | select SWAP_IO_SPACE | 86 | select SWAP_IO_SPACE |
79 | select SYS_SUPPORTS_LITTLE_ENDIAN | 87 | select SYS_SUPPORTS_LITTLE_ENDIAN |
88 | select SYS_HAS_EARLY_PRINTK | ||
80 | 89 | ||
81 | config MIPS_PB1100 | 90 | config MIPS_PB1100 |
82 | bool "Alchemy PB1100 board" | 91 | bool "Alchemy PB1100 board" |
@@ -85,6 +94,7 @@ config MIPS_PB1100 | |||
85 | select HW_HAS_PCI | 94 | select HW_HAS_PCI |
86 | select SWAP_IO_SPACE | 95 | select SWAP_IO_SPACE |
87 | select SYS_SUPPORTS_LITTLE_ENDIAN | 96 | select SYS_SUPPORTS_LITTLE_ENDIAN |
97 | select SYS_HAS_EARLY_PRINTK | ||
88 | 98 | ||
89 | config MIPS_PB1200 | 99 | config MIPS_PB1200 |
90 | bool "Alchemy PB1200 board" | 100 | bool "Alchemy PB1200 board" |
@@ -92,6 +102,7 @@ config MIPS_PB1200 | |||
92 | select DMA_NONCOHERENT | 102 | select DMA_NONCOHERENT |
93 | select MIPS_DISABLE_OBSOLETE_IDE | 103 | select MIPS_DISABLE_OBSOLETE_IDE |
94 | select SYS_SUPPORTS_LITTLE_ENDIAN | 104 | select SYS_SUPPORTS_LITTLE_ENDIAN |
105 | select SYS_HAS_EARLY_PRINTK | ||
95 | 106 | ||
96 | config MIPS_PB1500 | 107 | config MIPS_PB1500 |
97 | bool "Alchemy PB1500 board" | 108 | bool "Alchemy PB1500 board" |
@@ -99,6 +110,7 @@ config MIPS_PB1500 | |||
99 | select DMA_NONCOHERENT | 110 | select DMA_NONCOHERENT |
100 | select HW_HAS_PCI | 111 | select HW_HAS_PCI |
101 | select SYS_SUPPORTS_LITTLE_ENDIAN | 112 | select SYS_SUPPORTS_LITTLE_ENDIAN |
113 | select SYS_HAS_EARLY_PRINTK | ||
102 | 114 | ||
103 | config MIPS_PB1550 | 115 | config MIPS_PB1550 |
104 | bool "Alchemy PB1550 board" | 116 | bool "Alchemy PB1550 board" |
@@ -107,39 +119,41 @@ config MIPS_PB1550 | |||
107 | select HW_HAS_PCI | 119 | select HW_HAS_PCI |
108 | select MIPS_DISABLE_OBSOLETE_IDE | 120 | select MIPS_DISABLE_OBSOLETE_IDE |
109 | select SYS_SUPPORTS_LITTLE_ENDIAN | 121 | select SYS_SUPPORTS_LITTLE_ENDIAN |
122 | select SYS_HAS_EARLY_PRINTK | ||
110 | 123 | ||
111 | config MIPS_XXS1500 | 124 | config MIPS_XXS1500 |
112 | bool "MyCable XXS1500 board" | 125 | bool "MyCable XXS1500 board" |
113 | select DMA_NONCOHERENT | 126 | select DMA_NONCOHERENT |
114 | select SOC_AU1500 | 127 | select SOC_AU1500 |
115 | select SYS_SUPPORTS_LITTLE_ENDIAN | 128 | select SYS_SUPPORTS_LITTLE_ENDIAN |
129 | select SYS_HAS_EARLY_PRINTK | ||
116 | 130 | ||
117 | endchoice | 131 | endchoice |
118 | 132 | ||
119 | config SOC_AU1000 | 133 | config SOC_AU1000 |
120 | bool | 134 | bool |
121 | select SOC_AU1X00 | 135 | select SOC_AU1X00 |
122 | select ALCHEMY_GPIO_AU1000 | 136 | select ALCHEMY_GPIOINT_AU1000 |
123 | 137 | ||
124 | config SOC_AU1100 | 138 | config SOC_AU1100 |
125 | bool | 139 | bool |
126 | select SOC_AU1X00 | 140 | select SOC_AU1X00 |
127 | select ALCHEMY_GPIO_AU1000 | 141 | select ALCHEMY_GPIOINT_AU1000 |
128 | 142 | ||
129 | config SOC_AU1500 | 143 | config SOC_AU1500 |
130 | bool | 144 | bool |
131 | select SOC_AU1X00 | 145 | select SOC_AU1X00 |
132 | select ALCHEMY_GPIO_AU1000 | 146 | select ALCHEMY_GPIOINT_AU1000 |
133 | 147 | ||
134 | config SOC_AU1550 | 148 | config SOC_AU1550 |
135 | bool | 149 | bool |
136 | select SOC_AU1X00 | 150 | select SOC_AU1X00 |
137 | select ALCHEMY_GPIO_AU1000 | 151 | select ALCHEMY_GPIOINT_AU1000 |
138 | 152 | ||
139 | config SOC_AU1200 | 153 | config SOC_AU1200 |
140 | bool | 154 | bool |
141 | select SOC_AU1X00 | 155 | select SOC_AU1X00 |
142 | select ALCHEMY_GPIO_AU1000 | 156 | select ALCHEMY_GPIOINT_AU1000 |
143 | 157 | ||
144 | config SOC_AU1X00 | 158 | config SOC_AU1X00 |
145 | bool | 159 | bool |
diff --git a/arch/mips/alchemy/common/Makefile b/arch/mips/alchemy/common/Makefile index b67fb512529d..06c0e65a54b5 100644 --- a/arch/mips/alchemy/common/Makefile +++ b/arch/mips/alchemy/common/Makefile | |||
@@ -5,14 +5,15 @@ | |||
5 | # Makefile for the Alchemy Au1xx0 CPUs, generic files. | 5 | # Makefile for the Alchemy Au1xx0 CPUs, generic files. |
6 | # | 6 | # |
7 | 7 | ||
8 | obj-y += prom.o irq.o puts.o time.o reset.o \ | 8 | obj-y += prom.o time.o clocks.o platform.o power.o setup.o \ |
9 | clocks.o platform.o power.o setup.o \ | ||
10 | sleeper.o dma.o dbdma.o | 9 | sleeper.o dma.o dbdma.o |
11 | 10 | ||
11 | obj-$(CONFIG_ALCHEMY_GPIOINT_AU1000) += irq.o | ||
12 | |||
12 | # optional gpiolib support | 13 | # optional gpiolib support |
13 | ifeq ($(CONFIG_ALCHEMY_GPIO_INDIRECT),) | 14 | ifeq ($(CONFIG_ALCHEMY_GPIO_INDIRECT),) |
14 | ifeq ($(CONFIG_GPIOLIB),y) | 15 | ifeq ($(CONFIG_GPIOLIB),y) |
15 | obj-$(CONFIG_ALCHEMY_GPIO_AU1000) += gpiolib-au1000.o | 16 | obj-$(CONFIG_ALCHEMY_GPIOINT_AU1000) += gpiolib-au1000.o |
16 | endif | 17 | endif |
17 | endif | 18 | endif |
18 | 19 | ||
diff --git a/arch/mips/alchemy/common/clocks.c b/arch/mips/alchemy/common/clocks.c index d8991854530e..460c6285c1bb 100644 --- a/arch/mips/alchemy/common/clocks.c +++ b/arch/mips/alchemy/common/clocks.c | |||
@@ -40,8 +40,6 @@ | |||
40 | static unsigned int au1x00_clock; /* Hz */ | 40 | static unsigned int au1x00_clock; /* Hz */ |
41 | static unsigned long uart_baud_base; | 41 | static unsigned long uart_baud_base; |
42 | 42 | ||
43 | static DEFINE_SPINLOCK(time_lock); | ||
44 | |||
45 | /* | 43 | /* |
46 | * Set the au1000_clock | 44 | * Set the au1000_clock |
47 | */ | 45 | */ |
@@ -84,9 +82,6 @@ void set_au1x00_uart_baud_base(unsigned long new_baud_base) | |||
84 | unsigned long au1xxx_calc_clock(void) | 82 | unsigned long au1xxx_calc_clock(void) |
85 | { | 83 | { |
86 | unsigned long cpu_speed; | 84 | unsigned long cpu_speed; |
87 | unsigned long flags; | ||
88 | |||
89 | spin_lock_irqsave(&time_lock, flags); | ||
90 | 85 | ||
91 | /* | 86 | /* |
92 | * On early Au1000, sys_cpupll was write-only. Since these | 87 | * On early Au1000, sys_cpupll was write-only. Since these |
@@ -108,8 +103,6 @@ unsigned long au1xxx_calc_clock(void) | |||
108 | set_au1x00_uart_baud_base(cpu_speed / (2 * ((int)(au_readl(SYS_POWERCTRL) | 103 | set_au1x00_uart_baud_base(cpu_speed / (2 * ((int)(au_readl(SYS_POWERCTRL) |
109 | & 0x03) + 2) * 16)); | 104 | & 0x03) + 2) * 16)); |
110 | 105 | ||
111 | spin_unlock_irqrestore(&time_lock, flags); | ||
112 | |||
113 | set_au1x00_speed(cpu_speed); | 106 | set_au1x00_speed(cpu_speed); |
114 | 107 | ||
115 | return cpu_speed; | 108 | return cpu_speed; |
diff --git a/arch/mips/alchemy/common/dbdma.c b/arch/mips/alchemy/common/dbdma.c index 19c1c82849ff..99ae84ce5af3 100644 --- a/arch/mips/alchemy/common/dbdma.c +++ b/arch/mips/alchemy/common/dbdma.c | |||
@@ -30,6 +30,7 @@ | |||
30 | * | 30 | * |
31 | */ | 31 | */ |
32 | 32 | ||
33 | #include <linux/init.h> | ||
33 | #include <linux/kernel.h> | 34 | #include <linux/kernel.h> |
34 | #include <linux/slab.h> | 35 | #include <linux/slab.h> |
35 | #include <linux/spinlock.h> | 36 | #include <linux/spinlock.h> |
@@ -58,7 +59,6 @@ static DEFINE_SPINLOCK(au1xxx_dbdma_spin_lock); | |||
58 | 59 | ||
59 | static dbdma_global_t *dbdma_gptr = (dbdma_global_t *)DDMA_GLOBAL_BASE; | 60 | static dbdma_global_t *dbdma_gptr = (dbdma_global_t *)DDMA_GLOBAL_BASE; |
60 | static int dbdma_initialized; | 61 | static int dbdma_initialized; |
61 | static void au1xxx_dbdma_init(void); | ||
62 | 62 | ||
63 | static dbdev_tab_t dbdev_tab[] = { | 63 | static dbdev_tab_t dbdev_tab[] = { |
64 | #ifdef CONFIG_SOC_AU1550 | 64 | #ifdef CONFIG_SOC_AU1550 |
@@ -237,7 +237,7 @@ u32 au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid, | |||
237 | void (*callback)(int, void *), void *callparam) | 237 | void (*callback)(int, void *), void *callparam) |
238 | { | 238 | { |
239 | unsigned long flags; | 239 | unsigned long flags; |
240 | u32 used, chan, rv; | 240 | u32 used, chan; |
241 | u32 dcp; | 241 | u32 dcp; |
242 | int i; | 242 | int i; |
243 | dbdev_tab_t *stp, *dtp; | 243 | dbdev_tab_t *stp, *dtp; |
@@ -250,8 +250,7 @@ u32 au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid, | |||
250 | * which can't be done successfully during board set up. | 250 | * which can't be done successfully during board set up. |
251 | */ | 251 | */ |
252 | if (!dbdma_initialized) | 252 | if (!dbdma_initialized) |
253 | au1xxx_dbdma_init(); | 253 | return 0; |
254 | dbdma_initialized = 1; | ||
255 | 254 | ||
256 | stp = find_dbdev_id(srcid); | 255 | stp = find_dbdev_id(srcid); |
257 | if (stp == NULL) | 256 | if (stp == NULL) |
@@ -261,7 +260,6 @@ u32 au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid, | |||
261 | return 0; | 260 | return 0; |
262 | 261 | ||
263 | used = 0; | 262 | used = 0; |
264 | rv = 0; | ||
265 | 263 | ||
266 | /* Check to see if we can get both channels. */ | 264 | /* Check to see if we can get both channels. */ |
267 | spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags); | 265 | spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags); |
@@ -282,63 +280,65 @@ u32 au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid, | |||
282 | used++; | 280 | used++; |
283 | spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags); | 281 | spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags); |
284 | 282 | ||
285 | if (!used) { | 283 | if (used) |
286 | /* Let's see if we can allocate a channel for it. */ | 284 | return 0; |
287 | ctp = NULL; | ||
288 | chan = 0; | ||
289 | spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags); | ||
290 | for (i = 0; i < NUM_DBDMA_CHANS; i++) | ||
291 | if (chan_tab_ptr[i] == NULL) { | ||
292 | /* | ||
293 | * If kmalloc fails, it is caught below same | ||
294 | * as a channel not available. | ||
295 | */ | ||
296 | ctp = kmalloc(sizeof(chan_tab_t), GFP_ATOMIC); | ||
297 | chan_tab_ptr[i] = ctp; | ||
298 | break; | ||
299 | } | ||
300 | spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags); | ||
301 | |||
302 | if (ctp != NULL) { | ||
303 | memset(ctp, 0, sizeof(chan_tab_t)); | ||
304 | ctp->chan_index = chan = i; | ||
305 | dcp = DDMA_CHANNEL_BASE; | ||
306 | dcp += (0x0100 * chan); | ||
307 | ctp->chan_ptr = (au1x_dma_chan_t *)dcp; | ||
308 | cp = (au1x_dma_chan_t *)dcp; | ||
309 | ctp->chan_src = stp; | ||
310 | ctp->chan_dest = dtp; | ||
311 | ctp->chan_callback = callback; | ||
312 | ctp->chan_callparam = callparam; | ||
313 | |||
314 | /* Initialize channel configuration. */ | ||
315 | i = 0; | ||
316 | if (stp->dev_intlevel) | ||
317 | i |= DDMA_CFG_SED; | ||
318 | if (stp->dev_intpolarity) | ||
319 | i |= DDMA_CFG_SP; | ||
320 | if (dtp->dev_intlevel) | ||
321 | i |= DDMA_CFG_DED; | ||
322 | if (dtp->dev_intpolarity) | ||
323 | i |= DDMA_CFG_DP; | ||
324 | if ((stp->dev_flags & DEV_FLAGS_SYNC) || | ||
325 | (dtp->dev_flags & DEV_FLAGS_SYNC)) | ||
326 | i |= DDMA_CFG_SYNC; | ||
327 | cp->ddma_cfg = i; | ||
328 | au_sync(); | ||
329 | 285 | ||
330 | /* Return a non-zero value that can be used to | 286 | /* Let's see if we can allocate a channel for it. */ |
331 | * find the channel information in subsequent | 287 | ctp = NULL; |
332 | * operations. | 288 | chan = 0; |
289 | spin_lock_irqsave(&au1xxx_dbdma_spin_lock, flags); | ||
290 | for (i = 0; i < NUM_DBDMA_CHANS; i++) | ||
291 | if (chan_tab_ptr[i] == NULL) { | ||
292 | /* | ||
293 | * If kmalloc fails, it is caught below same | ||
294 | * as a channel not available. | ||
333 | */ | 295 | */ |
334 | rv = (u32)(&chan_tab_ptr[chan]); | 296 | ctp = kmalloc(sizeof(chan_tab_t), GFP_ATOMIC); |
335 | } else { | 297 | chan_tab_ptr[i] = ctp; |
336 | /* Release devices */ | 298 | break; |
337 | stp->dev_flags &= ~DEV_FLAGS_INUSE; | ||
338 | dtp->dev_flags &= ~DEV_FLAGS_INUSE; | ||
339 | } | 299 | } |
300 | spin_unlock_irqrestore(&au1xxx_dbdma_spin_lock, flags); | ||
301 | |||
302 | if (ctp != NULL) { | ||
303 | memset(ctp, 0, sizeof(chan_tab_t)); | ||
304 | ctp->chan_index = chan = i; | ||
305 | dcp = DDMA_CHANNEL_BASE; | ||
306 | dcp += (0x0100 * chan); | ||
307 | ctp->chan_ptr = (au1x_dma_chan_t *)dcp; | ||
308 | cp = (au1x_dma_chan_t *)dcp; | ||
309 | ctp->chan_src = stp; | ||
310 | ctp->chan_dest = dtp; | ||
311 | ctp->chan_callback = callback; | ||
312 | ctp->chan_callparam = callparam; | ||
313 | |||
314 | /* Initialize channel configuration. */ | ||
315 | i = 0; | ||
316 | if (stp->dev_intlevel) | ||
317 | i |= DDMA_CFG_SED; | ||
318 | if (stp->dev_intpolarity) | ||
319 | i |= DDMA_CFG_SP; | ||
320 | if (dtp->dev_intlevel) | ||
321 | i |= DDMA_CFG_DED; | ||
322 | if (dtp->dev_intpolarity) | ||
323 | i |= DDMA_CFG_DP; | ||
324 | if ((stp->dev_flags & DEV_FLAGS_SYNC) || | ||
325 | (dtp->dev_flags & DEV_FLAGS_SYNC)) | ||
326 | i |= DDMA_CFG_SYNC; | ||
327 | cp->ddma_cfg = i; | ||
328 | au_sync(); | ||
329 | |||
330 | /* | ||
331 | * Return a non-zero value that can be used to find the channel | ||
332 | * information in subsequent operations. | ||
333 | */ | ||
334 | return (u32)(&chan_tab_ptr[chan]); | ||
340 | } | 335 | } |
341 | return rv; | 336 | |
337 | /* Release devices */ | ||
338 | stp->dev_flags &= ~DEV_FLAGS_INUSE; | ||
339 | dtp->dev_flags &= ~DEV_FLAGS_INUSE; | ||
340 | |||
341 | return 0; | ||
342 | } | 342 | } |
343 | EXPORT_SYMBOL(au1xxx_dbdma_chan_alloc); | 343 | EXPORT_SYMBOL(au1xxx_dbdma_chan_alloc); |
344 | 344 | ||
@@ -412,8 +412,11 @@ u32 au1xxx_dbdma_ring_alloc(u32 chanid, int entries) | |||
412 | if (desc_base == 0) | 412 | if (desc_base == 0) |
413 | return 0; | 413 | return 0; |
414 | 414 | ||
415 | ctp->cdb_membase = desc_base; | ||
415 | desc_base = ALIGN_ADDR(desc_base, sizeof(au1x_ddma_desc_t)); | 416 | desc_base = ALIGN_ADDR(desc_base, sizeof(au1x_ddma_desc_t)); |
416 | } | 417 | } else |
418 | ctp->cdb_membase = desc_base; | ||
419 | |||
417 | dp = (au1x_ddma_desc_t *)desc_base; | 420 | dp = (au1x_ddma_desc_t *)desc_base; |
418 | 421 | ||
419 | /* Keep track of the base descriptor. */ | 422 | /* Keep track of the base descriptor. */ |
@@ -569,7 +572,7 @@ EXPORT_SYMBOL(au1xxx_dbdma_ring_alloc); | |||
569 | * This updates the source pointer and byte count. Normally used | 572 | * This updates the source pointer and byte count. Normally used |
570 | * for memory to fifo transfers. | 573 | * for memory to fifo transfers. |
571 | */ | 574 | */ |
572 | u32 _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags) | 575 | u32 au1xxx_dbdma_put_source(u32 chanid, dma_addr_t buf, int nbytes, u32 flags) |
573 | { | 576 | { |
574 | chan_tab_t *ctp; | 577 | chan_tab_t *ctp; |
575 | au1x_ddma_desc_t *dp; | 578 | au1x_ddma_desc_t *dp; |
@@ -595,7 +598,7 @@ u32 _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags) | |||
595 | return 0; | 598 | return 0; |
596 | 599 | ||
597 | /* Load up buffer address and byte count. */ | 600 | /* Load up buffer address and byte count. */ |
598 | dp->dscr_source0 = virt_to_phys(buf); | 601 | dp->dscr_source0 = buf & ~0UL; |
599 | dp->dscr_cmd1 = nbytes; | 602 | dp->dscr_cmd1 = nbytes; |
600 | /* Check flags */ | 603 | /* Check flags */ |
601 | if (flags & DDMA_FLAGS_IE) | 604 | if (flags & DDMA_FLAGS_IE) |
@@ -613,7 +616,7 @@ u32 _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags) | |||
613 | dma_cache_wback_inv((unsigned long)buf, nbytes); | 616 | dma_cache_wback_inv((unsigned long)buf, nbytes); |
614 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ | 617 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ |
615 | au_sync(); | 618 | au_sync(); |
616 | dma_cache_wback_inv((unsigned long)dp, sizeof(dp)); | 619 | dma_cache_wback_inv((unsigned long)dp, sizeof(*dp)); |
617 | ctp->chan_ptr->ddma_dbell = 0; | 620 | ctp->chan_ptr->ddma_dbell = 0; |
618 | 621 | ||
619 | /* Get next descriptor pointer. */ | 622 | /* Get next descriptor pointer. */ |
@@ -622,14 +625,13 @@ u32 _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags) | |||
622 | /* Return something non-zero. */ | 625 | /* Return something non-zero. */ |
623 | return nbytes; | 626 | return nbytes; |
624 | } | 627 | } |
625 | EXPORT_SYMBOL(_au1xxx_dbdma_put_source); | 628 | EXPORT_SYMBOL(au1xxx_dbdma_put_source); |
626 | 629 | ||
627 | /* Put a destination buffer into the DMA ring. | 630 | /* Put a destination buffer into the DMA ring. |
628 | * This updates the destination pointer and byte count. Normally used | 631 | * This updates the destination pointer and byte count. Normally used |
629 | * to place an empty buffer into the ring for fifo to memory transfers. | 632 | * to place an empty buffer into the ring for fifo to memory transfers. |
630 | */ | 633 | */ |
631 | u32 | 634 | u32 au1xxx_dbdma_put_dest(u32 chanid, dma_addr_t buf, int nbytes, u32 flags) |
632 | _au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes, u32 flags) | ||
633 | { | 635 | { |
634 | chan_tab_t *ctp; | 636 | chan_tab_t *ctp; |
635 | au1x_ddma_desc_t *dp; | 637 | au1x_ddma_desc_t *dp; |
@@ -659,7 +661,7 @@ _au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes, u32 flags) | |||
659 | if (flags & DDMA_FLAGS_NOIE) | 661 | if (flags & DDMA_FLAGS_NOIE) |
660 | dp->dscr_cmd0 &= ~DSCR_CMD0_IE; | 662 | dp->dscr_cmd0 &= ~DSCR_CMD0_IE; |
661 | 663 | ||
662 | dp->dscr_dest0 = virt_to_phys(buf); | 664 | dp->dscr_dest0 = buf & ~0UL; |
663 | dp->dscr_cmd1 = nbytes; | 665 | dp->dscr_cmd1 = nbytes; |
664 | #if 0 | 666 | #if 0 |
665 | printk(KERN_DEBUG "cmd0:%x cmd1:%x source0:%x source1:%x dest0:%x dest1:%x\n", | 667 | printk(KERN_DEBUG "cmd0:%x cmd1:%x source0:%x source1:%x dest0:%x dest1:%x\n", |
@@ -676,7 +678,7 @@ _au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes, u32 flags) | |||
676 | dma_cache_inv((unsigned long)buf, nbytes); | 678 | dma_cache_inv((unsigned long)buf, nbytes); |
677 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ | 679 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ |
678 | au_sync(); | 680 | au_sync(); |
679 | dma_cache_wback_inv((unsigned long)dp, sizeof(dp)); | 681 | dma_cache_wback_inv((unsigned long)dp, sizeof(*dp)); |
680 | ctp->chan_ptr->ddma_dbell = 0; | 682 | ctp->chan_ptr->ddma_dbell = 0; |
681 | 683 | ||
682 | /* Get next descriptor pointer. */ | 684 | /* Get next descriptor pointer. */ |
@@ -685,7 +687,7 @@ _au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes, u32 flags) | |||
685 | /* Return something non-zero. */ | 687 | /* Return something non-zero. */ |
686 | return nbytes; | 688 | return nbytes; |
687 | } | 689 | } |
688 | EXPORT_SYMBOL(_au1xxx_dbdma_put_dest); | 690 | EXPORT_SYMBOL(au1xxx_dbdma_put_dest); |
689 | 691 | ||
690 | /* | 692 | /* |
691 | * Get a destination buffer into the DMA ring. | 693 | * Get a destination buffer into the DMA ring. |
@@ -831,7 +833,7 @@ void au1xxx_dbdma_chan_free(u32 chanid) | |||
831 | 833 | ||
832 | au1xxx_dbdma_stop(chanid); | 834 | au1xxx_dbdma_stop(chanid); |
833 | 835 | ||
834 | kfree((void *)ctp->chan_desc_base); | 836 | kfree((void *)ctp->cdb_membase); |
835 | 837 | ||
836 | stp->dev_flags &= ~DEV_FLAGS_INUSE; | 838 | stp->dev_flags &= ~DEV_FLAGS_INUSE; |
837 | dtp->dev_flags &= ~DEV_FLAGS_INUSE; | 839 | dtp->dev_flags &= ~DEV_FLAGS_INUSE; |
@@ -868,28 +870,6 @@ static irqreturn_t dbdma_interrupt(int irq, void *dev_id) | |||
868 | return IRQ_RETVAL(1); | 870 | return IRQ_RETVAL(1); |
869 | } | 871 | } |
870 | 872 | ||
871 | static void au1xxx_dbdma_init(void) | ||
872 | { | ||
873 | int irq_nr; | ||
874 | |||
875 | dbdma_gptr->ddma_config = 0; | ||
876 | dbdma_gptr->ddma_throttle = 0; | ||
877 | dbdma_gptr->ddma_inten = 0xffff; | ||
878 | au_sync(); | ||
879 | |||
880 | #if defined(CONFIG_SOC_AU1550) | ||
881 | irq_nr = AU1550_DDMA_INT; | ||
882 | #elif defined(CONFIG_SOC_AU1200) | ||
883 | irq_nr = AU1200_DDMA_INT; | ||
884 | #else | ||
885 | #error Unknown Au1x00 SOC | ||
886 | #endif | ||
887 | |||
888 | if (request_irq(irq_nr, dbdma_interrupt, IRQF_DISABLED, | ||
889 | "Au1xxx dbdma", (void *)dbdma_gptr)) | ||
890 | printk(KERN_ERR "Can't get 1550 dbdma irq"); | ||
891 | } | ||
892 | |||
893 | void au1xxx_dbdma_dump(u32 chanid) | 873 | void au1xxx_dbdma_dump(u32 chanid) |
894 | { | 874 | { |
895 | chan_tab_t *ctp; | 875 | chan_tab_t *ctp; |
@@ -903,7 +883,7 @@ void au1xxx_dbdma_dump(u32 chanid) | |||
903 | dtp = ctp->chan_dest; | 883 | dtp = ctp->chan_dest; |
904 | cp = ctp->chan_ptr; | 884 | cp = ctp->chan_ptr; |
905 | 885 | ||
906 | printk(KERN_DEBUG "Chan %x, stp %x (dev %d) dtp %x (dev %d) \n", | 886 | printk(KERN_DEBUG "Chan %x, stp %x (dev %d) dtp %x (dev %d)\n", |
907 | (u32)ctp, (u32)stp, stp - dbdev_tab, (u32)dtp, | 887 | (u32)ctp, (u32)stp, stp - dbdev_tab, (u32)dtp, |
908 | dtp - dbdev_tab); | 888 | dtp - dbdev_tab); |
909 | printk(KERN_DEBUG "desc base %x, get %x, put %x, cur %x\n", | 889 | printk(KERN_DEBUG "desc base %x, get %x, put %x, cur %x\n", |
@@ -1038,4 +1018,38 @@ void au1xxx_dbdma_resume(void) | |||
1038 | } | 1018 | } |
1039 | } | 1019 | } |
1040 | #endif /* CONFIG_PM */ | 1020 | #endif /* CONFIG_PM */ |
1021 | |||
1022 | static int __init au1xxx_dbdma_init(void) | ||
1023 | { | ||
1024 | int irq_nr, ret; | ||
1025 | |||
1026 | dbdma_gptr->ddma_config = 0; | ||
1027 | dbdma_gptr->ddma_throttle = 0; | ||
1028 | dbdma_gptr->ddma_inten = 0xffff; | ||
1029 | au_sync(); | ||
1030 | |||
1031 | switch (alchemy_get_cputype()) { | ||
1032 | case ALCHEMY_CPU_AU1550: | ||
1033 | irq_nr = AU1550_DDMA_INT; | ||
1034 | break; | ||
1035 | case ALCHEMY_CPU_AU1200: | ||
1036 | irq_nr = AU1200_DDMA_INT; | ||
1037 | break; | ||
1038 | default: | ||
1039 | return -ENODEV; | ||
1040 | } | ||
1041 | |||
1042 | ret = request_irq(irq_nr, dbdma_interrupt, IRQF_DISABLED, | ||
1043 | "Au1xxx dbdma", (void *)dbdma_gptr); | ||
1044 | if (ret) | ||
1045 | printk(KERN_ERR "Cannot grab DBDMA interrupt!\n"); | ||
1046 | else { | ||
1047 | dbdma_initialized = 1; | ||
1048 | printk(KERN_INFO "Alchemy DBDMA initialized\n"); | ||
1049 | } | ||
1050 | |||
1051 | return ret; | ||
1052 | } | ||
1053 | subsys_initcall(au1xxx_dbdma_init); | ||
1054 | |||
1041 | #endif /* defined(CONFIG_SOC_AU1550) || defined(CONFIG_SOC_AU1200) */ | 1055 | #endif /* defined(CONFIG_SOC_AU1550) || defined(CONFIG_SOC_AU1200) */ |
diff --git a/arch/mips/alchemy/common/dma.c b/arch/mips/alchemy/common/dma.c index d6fbda232e6a..d5278877891d 100644 --- a/arch/mips/alchemy/common/dma.c +++ b/arch/mips/alchemy/common/dma.c | |||
@@ -29,6 +29,8 @@ | |||
29 | * 675 Mass Ave, Cambridge, MA 02139, USA. | 29 | * 675 Mass Ave, Cambridge, MA 02139, USA. |
30 | * | 30 | * |
31 | */ | 31 | */ |
32 | |||
33 | #include <linux/init.h> | ||
32 | #include <linux/module.h> | 34 | #include <linux/module.h> |
33 | #include <linux/kernel.h> | 35 | #include <linux/kernel.h> |
34 | #include <linux/errno.h> | 36 | #include <linux/errno.h> |
@@ -188,17 +190,14 @@ int request_au1000_dma(int dev_id, const char *dev_str, | |||
188 | dev = &dma_dev_table[dev_id]; | 190 | dev = &dma_dev_table[dev_id]; |
189 | 191 | ||
190 | if (irqhandler) { | 192 | if (irqhandler) { |
191 | chan->irq = AU1000_DMA_INT_BASE + i; | ||
192 | chan->irq_dev = irq_dev_id; | 193 | chan->irq_dev = irq_dev_id; |
193 | ret = request_irq(chan->irq, irqhandler, irqflags, dev_str, | 194 | ret = request_irq(chan->irq, irqhandler, irqflags, dev_str, |
194 | chan->irq_dev); | 195 | chan->irq_dev); |
195 | if (ret) { | 196 | if (ret) { |
196 | chan->irq = 0; | ||
197 | chan->irq_dev = NULL; | 197 | chan->irq_dev = NULL; |
198 | return ret; | 198 | return ret; |
199 | } | 199 | } |
200 | } else { | 200 | } else { |
201 | chan->irq = 0; | ||
202 | chan->irq_dev = NULL; | 201 | chan->irq_dev = NULL; |
203 | } | 202 | } |
204 | 203 | ||
@@ -226,13 +225,40 @@ void free_au1000_dma(unsigned int dmanr) | |||
226 | } | 225 | } |
227 | 226 | ||
228 | disable_dma(dmanr); | 227 | disable_dma(dmanr); |
229 | if (chan->irq) | 228 | if (chan->irq_dev) |
230 | free_irq(chan->irq, chan->irq_dev); | 229 | free_irq(chan->irq, chan->irq_dev); |
231 | 230 | ||
232 | chan->irq = 0; | ||
233 | chan->irq_dev = NULL; | 231 | chan->irq_dev = NULL; |
234 | chan->dev_id = -1; | 232 | chan->dev_id = -1; |
235 | } | 233 | } |
236 | EXPORT_SYMBOL(free_au1000_dma); | 234 | EXPORT_SYMBOL(free_au1000_dma); |
237 | 235 | ||
236 | static int __init au1000_dma_init(void) | ||
237 | { | ||
238 | int base, i; | ||
239 | |||
240 | switch (alchemy_get_cputype()) { | ||
241 | case ALCHEMY_CPU_AU1000: | ||
242 | base = AU1000_DMA_INT_BASE; | ||
243 | break; | ||
244 | case ALCHEMY_CPU_AU1500: | ||
245 | base = AU1500_DMA_INT_BASE; | ||
246 | break; | ||
247 | case ALCHEMY_CPU_AU1100: | ||
248 | base = AU1100_DMA_INT_BASE; | ||
249 | break; | ||
250 | default: | ||
251 | goto out; | ||
252 | } | ||
253 | |||
254 | for (i = 0; i < NUM_AU1000_DMA_CHANNELS; i++) | ||
255 | au1000_dma_table[i].irq = base + i; | ||
256 | |||
257 | printk(KERN_INFO "Alchemy DMA initialized\n"); | ||
258 | |||
259 | out: | ||
260 | return 0; | ||
261 | } | ||
262 | arch_initcall(au1000_dma_init); | ||
263 | |||
238 | #endif /* AU1000 AU1500 AU1100 */ | 264 | #endif /* AU1000 AU1500 AU1100 */ |
diff --git a/arch/mips/alchemy/common/gpiolib-au1000.c b/arch/mips/alchemy/common/gpiolib-au1000.c index 1bfa91f939f4..c8e1a94d4a95 100644 --- a/arch/mips/alchemy/common/gpiolib-au1000.c +++ b/arch/mips/alchemy/common/gpiolib-au1000.c | |||
@@ -36,7 +36,6 @@ | |||
36 | #include <asm/mach-au1x00/au1000.h> | 36 | #include <asm/mach-au1x00/au1000.h> |
37 | #include <asm/mach-au1x00/gpio.h> | 37 | #include <asm/mach-au1x00/gpio.h> |
38 | 38 | ||
39 | #if !defined(CONFIG_SOC_AU1000) | ||
40 | static int gpio2_get(struct gpio_chip *chip, unsigned offset) | 39 | static int gpio2_get(struct gpio_chip *chip, unsigned offset) |
41 | { | 40 | { |
42 | return alchemy_gpio2_get_value(offset + ALCHEMY_GPIO2_BASE); | 41 | return alchemy_gpio2_get_value(offset + ALCHEMY_GPIO2_BASE); |
@@ -63,7 +62,7 @@ static int gpio2_to_irq(struct gpio_chip *chip, unsigned offset) | |||
63 | { | 62 | { |
64 | return alchemy_gpio2_to_irq(offset + ALCHEMY_GPIO2_BASE); | 63 | return alchemy_gpio2_to_irq(offset + ALCHEMY_GPIO2_BASE); |
65 | } | 64 | } |
66 | #endif /* !defined(CONFIG_SOC_AU1000) */ | 65 | |
67 | 66 | ||
68 | static int gpio1_get(struct gpio_chip *chip, unsigned offset) | 67 | static int gpio1_get(struct gpio_chip *chip, unsigned offset) |
69 | { | 68 | { |
@@ -104,7 +103,6 @@ struct gpio_chip alchemy_gpio_chip[] = { | |||
104 | .base = ALCHEMY_GPIO1_BASE, | 103 | .base = ALCHEMY_GPIO1_BASE, |
105 | .ngpio = ALCHEMY_GPIO1_NUM, | 104 | .ngpio = ALCHEMY_GPIO1_NUM, |
106 | }, | 105 | }, |
107 | #if !defined(CONFIG_SOC_AU1000) | ||
108 | [1] = { | 106 | [1] = { |
109 | .label = "alchemy-gpio2", | 107 | .label = "alchemy-gpio2", |
110 | .direction_input = gpio2_direction_input, | 108 | .direction_input = gpio2_direction_input, |
@@ -115,15 +113,13 @@ struct gpio_chip alchemy_gpio_chip[] = { | |||
115 | .base = ALCHEMY_GPIO2_BASE, | 113 | .base = ALCHEMY_GPIO2_BASE, |
116 | .ngpio = ALCHEMY_GPIO2_NUM, | 114 | .ngpio = ALCHEMY_GPIO2_NUM, |
117 | }, | 115 | }, |
118 | #endif | ||
119 | }; | 116 | }; |
120 | 117 | ||
121 | static int __init alchemy_gpiolib_init(void) | 118 | static int __init alchemy_gpiolib_init(void) |
122 | { | 119 | { |
123 | gpiochip_add(&alchemy_gpio_chip[0]); | 120 | gpiochip_add(&alchemy_gpio_chip[0]); |
124 | #if !defined(CONFIG_SOC_AU1000) | 121 | if (alchemy_get_cputype() != ALCHEMY_CPU_AU1000) |
125 | gpiochip_add(&alchemy_gpio_chip[1]); | 122 | gpiochip_add(&alchemy_gpio_chip[1]); |
126 | #endif | ||
127 | 123 | ||
128 | return 0; | 124 | return 0; |
129 | } | 125 | } |
diff --git a/arch/mips/alchemy/common/irq.c b/arch/mips/alchemy/common/irq.c index d670928afcfd..b2821ace4d00 100644 --- a/arch/mips/alchemy/common/irq.c +++ b/arch/mips/alchemy/common/irq.c | |||
@@ -39,168 +39,180 @@ | |||
39 | 39 | ||
40 | static int au1x_ic_settype(unsigned int irq, unsigned int flow_type); | 40 | static int au1x_ic_settype(unsigned int irq, unsigned int flow_type); |
41 | 41 | ||
42 | /* NOTE on interrupt priorities: The original writers of this code said: | ||
43 | * | ||
44 | * Because of the tight timing of SETUP token to reply transactions, | ||
45 | * the USB devices-side packet complete interrupt (USB_DEV_REQ_INT) | ||
46 | * needs the highest priority. | ||
47 | */ | ||
48 | |||
42 | /* per-processor fixed function irqs */ | 49 | /* per-processor fixed function irqs */ |
43 | struct au1xxx_irqmap au1xxx_ic0_map[] __initdata = { | 50 | struct au1xxx_irqmap { |
44 | 51 | int im_irq; | |
45 | #if defined(CONFIG_SOC_AU1000) | 52 | int im_type; |
46 | { AU1000_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 53 | int im_request; /* set 1 to get higher priority */ |
47 | { AU1000_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 54 | }; |
48 | { AU1000_UART2_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 55 | |
49 | { AU1000_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 56 | struct au1xxx_irqmap au1000_irqmap[] __initdata = { |
50 | { AU1000_SSI0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 57 | { AU1000_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
51 | { AU1000_SSI1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 58 | { AU1000_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
52 | { AU1000_DMA_INT_BASE, IRQ_TYPE_LEVEL_HIGH, 0 }, | 59 | { AU1000_UART2_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
53 | { AU1000_DMA_INT_BASE+1, IRQ_TYPE_LEVEL_HIGH, 0 }, | 60 | { AU1000_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
54 | { AU1000_DMA_INT_BASE+2, IRQ_TYPE_LEVEL_HIGH, 0 }, | 61 | { AU1000_SSI0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
55 | { AU1000_DMA_INT_BASE+3, IRQ_TYPE_LEVEL_HIGH, 0 }, | 62 | { AU1000_SSI1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
56 | { AU1000_DMA_INT_BASE+4, IRQ_TYPE_LEVEL_HIGH, 0 }, | 63 | { AU1000_DMA_INT_BASE, IRQ_TYPE_LEVEL_HIGH, 0 }, |
57 | { AU1000_DMA_INT_BASE+5, IRQ_TYPE_LEVEL_HIGH, 0 }, | 64 | { AU1000_DMA_INT_BASE+1, IRQ_TYPE_LEVEL_HIGH, 0 }, |
58 | { AU1000_DMA_INT_BASE+6, IRQ_TYPE_LEVEL_HIGH, 0 }, | 65 | { AU1000_DMA_INT_BASE+2, IRQ_TYPE_LEVEL_HIGH, 0 }, |
59 | { AU1000_DMA_INT_BASE+7, IRQ_TYPE_LEVEL_HIGH, 0 }, | 66 | { AU1000_DMA_INT_BASE+3, IRQ_TYPE_LEVEL_HIGH, 0 }, |
60 | { AU1000_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 67 | { AU1000_DMA_INT_BASE+4, IRQ_TYPE_LEVEL_HIGH, 0 }, |
61 | { AU1000_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 68 | { AU1000_DMA_INT_BASE+5, IRQ_TYPE_LEVEL_HIGH, 0 }, |
62 | { AU1000_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 69 | { AU1000_DMA_INT_BASE+6, IRQ_TYPE_LEVEL_HIGH, 0 }, |
63 | { AU1000_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, | 70 | { AU1000_DMA_INT_BASE+7, IRQ_TYPE_LEVEL_HIGH, 0 }, |
64 | { AU1000_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 71 | { AU1000_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
65 | { AU1000_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 72 | { AU1000_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
66 | { AU1000_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 73 | { AU1000_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
67 | { AU1000_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 74 | { AU1000_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
68 | { AU1000_IRDA_TX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 75 | { AU1000_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
69 | { AU1000_IRDA_RX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 76 | { AU1000_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
70 | { AU1000_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 77 | { AU1000_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
71 | { AU1000_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 78 | { AU1000_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, |
72 | { AU1000_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | 79 | { AU1000_IRDA_TX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
73 | { AU1000_ACSYNC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 80 | { AU1000_IRDA_RX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
74 | { AU1000_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 81 | { AU1000_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 1 }, |
75 | { AU1000_MAC1_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
76 | { AU1000_AC97C_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
77 | |||
78 | #elif defined(CONFIG_SOC_AU1500) | ||
79 | |||
80 | { AU1500_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
81 | { AU1000_PCI_INTA, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
82 | { AU1000_PCI_INTB, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
83 | { AU1500_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
84 | { AU1000_PCI_INTC, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
85 | { AU1000_PCI_INTD, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
86 | { AU1000_DMA_INT_BASE, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
87 | { AU1000_DMA_INT_BASE+1, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
88 | { AU1000_DMA_INT_BASE+2, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
89 | { AU1000_DMA_INT_BASE+3, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
90 | { AU1000_DMA_INT_BASE+4, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
91 | { AU1000_DMA_INT_BASE+5, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
92 | { AU1000_DMA_INT_BASE+6, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
93 | { AU1000_DMA_INT_BASE+7, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
94 | { AU1000_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
95 | { AU1000_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
96 | { AU1000_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
97 | { AU1000_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, | ||
98 | { AU1000_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
99 | { AU1000_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
100 | { AU1000_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
101 | { AU1000_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
102 | { AU1000_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
103 | { AU1000_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
104 | { AU1000_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
105 | { AU1000_ACSYNC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
106 | { AU1500_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
107 | { AU1500_MAC1_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
108 | { AU1000_AC97C_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
109 | |||
110 | #elif defined(CONFIG_SOC_AU1100) | ||
111 | |||
112 | { AU1100_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
113 | { AU1100_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
114 | { AU1100_SD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
115 | { AU1100_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
116 | { AU1000_SSI0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
117 | { AU1000_SSI1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
118 | { AU1000_DMA_INT_BASE, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
119 | { AU1000_DMA_INT_BASE+1, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
120 | { AU1000_DMA_INT_BASE+2, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
121 | { AU1000_DMA_INT_BASE+3, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
122 | { AU1000_DMA_INT_BASE+4, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
123 | { AU1000_DMA_INT_BASE+5, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
124 | { AU1000_DMA_INT_BASE+6, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
125 | { AU1000_DMA_INT_BASE+7, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
126 | { AU1000_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
127 | { AU1000_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
128 | { AU1000_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
129 | { AU1000_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, | ||
130 | { AU1000_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
131 | { AU1000_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
132 | { AU1000_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
133 | { AU1000_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
134 | { AU1000_IRDA_TX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
135 | { AU1000_IRDA_RX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
136 | { AU1000_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
137 | { AU1000_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 82 | { AU1000_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
138 | { AU1000_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | 83 | { AU1000_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, |
139 | { AU1000_ACSYNC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 84 | { AU1000_ACSYNC_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
140 | { AU1100_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 85 | { AU1000_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
141 | { AU1100_LCD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 86 | { AU1000_MAC1_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
142 | { AU1000_AC97C_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 87 | { AU1000_AC97C_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
143 | 88 | { -1, }, | |
144 | #elif defined(CONFIG_SOC_AU1550) | 89 | }; |
145 | 90 | ||
146 | { AU1550_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 91 | struct au1xxx_irqmap au1500_irqmap[] __initdata = { |
147 | { AU1550_PCI_INTA, IRQ_TYPE_LEVEL_LOW, 0 }, | 92 | { AU1500_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
148 | { AU1550_PCI_INTB, IRQ_TYPE_LEVEL_LOW, 0 }, | 93 | { AU1500_PCI_INTA, IRQ_TYPE_LEVEL_LOW, 0 }, |
149 | { AU1550_DDMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 94 | { AU1500_PCI_INTB, IRQ_TYPE_LEVEL_LOW, 0 }, |
150 | { AU1550_CRYPTO_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 95 | { AU1500_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
151 | { AU1550_PCI_INTC, IRQ_TYPE_LEVEL_LOW, 0 }, | 96 | { AU1500_PCI_INTC, IRQ_TYPE_LEVEL_LOW, 0 }, |
152 | { AU1550_PCI_INTD, IRQ_TYPE_LEVEL_LOW, 0 }, | 97 | { AU1500_PCI_INTD, IRQ_TYPE_LEVEL_LOW, 0 }, |
153 | { AU1550_PCI_RST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | 98 | { AU1500_DMA_INT_BASE, IRQ_TYPE_LEVEL_HIGH, 0 }, |
154 | { AU1550_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 99 | { AU1500_DMA_INT_BASE+1, IRQ_TYPE_LEVEL_HIGH, 0 }, |
155 | { AU1550_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 100 | { AU1500_DMA_INT_BASE+2, IRQ_TYPE_LEVEL_HIGH, 0 }, |
156 | { AU1550_PSC0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 101 | { AU1500_DMA_INT_BASE+3, IRQ_TYPE_LEVEL_HIGH, 0 }, |
157 | { AU1550_PSC1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 102 | { AU1500_DMA_INT_BASE+4, IRQ_TYPE_LEVEL_HIGH, 0 }, |
158 | { AU1550_PSC2_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 103 | { AU1500_DMA_INT_BASE+5, IRQ_TYPE_LEVEL_HIGH, 0 }, |
159 | { AU1550_PSC3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 104 | { AU1500_DMA_INT_BASE+6, IRQ_TYPE_LEVEL_HIGH, 0 }, |
160 | { AU1000_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 105 | { AU1500_DMA_INT_BASE+7, IRQ_TYPE_LEVEL_HIGH, 0 }, |
161 | { AU1000_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 106 | { AU1500_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
162 | { AU1000_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 107 | { AU1500_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
163 | { AU1000_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, | 108 | { AU1500_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
164 | { AU1000_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 109 | { AU1500_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
165 | { AU1000_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 110 | { AU1500_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
166 | { AU1000_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 111 | { AU1500_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
167 | { AU1000_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 112 | { AU1500_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
168 | { AU1550_NAND_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 113 | { AU1500_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, |
169 | { AU1550_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 114 | { AU1500_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 1 }, |
115 | { AU1500_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
116 | { AU1500_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
117 | { AU1500_ACSYNC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
118 | { AU1500_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
119 | { AU1500_MAC1_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
120 | { AU1500_AC97C_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
121 | { -1, }, | ||
122 | }; | ||
123 | |||
124 | struct au1xxx_irqmap au1100_irqmap[] __initdata = { | ||
125 | { AU1100_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
126 | { AU1100_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
127 | { AU1100_SD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
128 | { AU1100_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
129 | { AU1100_SSI0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
130 | { AU1100_SSI1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
131 | { AU1100_DMA_INT_BASE, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
132 | { AU1100_DMA_INT_BASE+1, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
133 | { AU1100_DMA_INT_BASE+2, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
134 | { AU1100_DMA_INT_BASE+3, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
135 | { AU1100_DMA_INT_BASE+4, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
136 | { AU1100_DMA_INT_BASE+5, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
137 | { AU1100_DMA_INT_BASE+6, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
138 | { AU1100_DMA_INT_BASE+7, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
139 | { AU1100_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
140 | { AU1100_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
141 | { AU1100_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
142 | { AU1100_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
143 | { AU1100_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
144 | { AU1100_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
145 | { AU1100_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
146 | { AU1100_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, | ||
147 | { AU1100_IRDA_TX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
148 | { AU1100_IRDA_RX_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
149 | { AU1100_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 1 }, | ||
150 | { AU1100_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
151 | { AU1100_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
152 | { AU1100_ACSYNC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
153 | { AU1100_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
154 | { AU1100_LCD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
155 | { AU1100_AC97C_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
156 | { -1, }, | ||
157 | }; | ||
158 | |||
159 | struct au1xxx_irqmap au1550_irqmap[] __initdata = { | ||
160 | { AU1550_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
161 | { AU1550_PCI_INTA, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
162 | { AU1550_PCI_INTB, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
163 | { AU1550_DDMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
164 | { AU1550_CRYPTO_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
165 | { AU1550_PCI_INTC, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
166 | { AU1550_PCI_INTD, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
167 | { AU1550_PCI_RST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | ||
168 | { AU1550_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
169 | { AU1550_UART3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
170 | { AU1550_PSC0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
171 | { AU1550_PSC1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
172 | { AU1550_PSC2_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
173 | { AU1550_PSC3_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | ||
174 | { AU1550_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
175 | { AU1550_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
176 | { AU1550_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
177 | { AU1550_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
178 | { AU1550_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
179 | { AU1550_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
180 | { AU1550_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
181 | { AU1550_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, | ||
182 | { AU1550_NAND_INT, IRQ_TYPE_EDGE_RISING, 0 }, | ||
183 | { AU1550_USB_DEV_REQ_INT, IRQ_TYPE_LEVEL_HIGH, 1 }, | ||
170 | { AU1550_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 184 | { AU1550_USB_DEV_SUS_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
171 | { AU1550_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, | 185 | { AU1550_USB_HOST_INT, IRQ_TYPE_LEVEL_LOW, 0 }, |
172 | { AU1550_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 186 | { AU1550_MAC0_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
173 | { AU1550_MAC1_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 187 | { AU1550_MAC1_DMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
174 | 188 | { -1, }, | |
175 | #elif defined(CONFIG_SOC_AU1200) | 189 | }; |
176 | 190 | ||
177 | { AU1200_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 191 | struct au1xxx_irqmap au1200_irqmap[] __initdata = { |
178 | { AU1200_SWT_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 192 | { AU1200_UART0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
179 | { AU1200_SD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 193 | { AU1200_SWT_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
180 | { AU1200_DDMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 194 | { AU1200_SD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
181 | { AU1200_MAE_BE_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 195 | { AU1200_DDMA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
182 | { AU1200_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 196 | { AU1200_MAE_BE_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
183 | { AU1200_MAE_FE_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 197 | { AU1200_UART1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
184 | { AU1200_PSC0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 198 | { AU1200_MAE_FE_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
185 | { AU1200_PSC1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 199 | { AU1200_PSC0_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
186 | { AU1200_AES_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 200 | { AU1200_PSC1_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
187 | { AU1200_CAMERA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 201 | { AU1200_AES_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
188 | { AU1000_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 202 | { AU1200_CAMERA_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
189 | { AU1000_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 203 | { AU1200_TOY_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
190 | { AU1000_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 204 | { AU1200_TOY_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
191 | { AU1000_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, | 205 | { AU1200_TOY_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
192 | { AU1000_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 206 | { AU1200_TOY_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
193 | { AU1000_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 207 | { AU1200_RTC_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
194 | { AU1000_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 208 | { AU1200_RTC_MATCH0_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
195 | { AU1000_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 209 | { AU1200_RTC_MATCH1_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
196 | { AU1200_NAND_INT, IRQ_TYPE_EDGE_RISING, 0 }, | 210 | { AU1200_RTC_MATCH2_INT, IRQ_TYPE_EDGE_RISING, 1 }, |
197 | { AU1200_USB_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 211 | { AU1200_NAND_INT, IRQ_TYPE_EDGE_RISING, 0 }, |
198 | { AU1200_LCD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 212 | { AU1200_USB_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
199 | { AU1200_MAE_BOTH_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | 213 | { AU1200_LCD_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, |
200 | 214 | { AU1200_MAE_BOTH_INT, IRQ_TYPE_LEVEL_HIGH, 0 }, | |
201 | #else | 215 | { -1, }, |
202 | #error "Error: Unknown Alchemy SOC" | ||
203 | #endif | ||
204 | }; | 216 | }; |
205 | 217 | ||
206 | 218 | ||
@@ -306,7 +318,7 @@ static void au1x_ic1_unmask(unsigned int irq_nr) | |||
306 | * nowhere in the current kernel sources is it disabled. --mlau | 318 | * nowhere in the current kernel sources is it disabled. --mlau |
307 | */ | 319 | */ |
308 | #if defined(CONFIG_MIPS_PB1000) | 320 | #if defined(CONFIG_MIPS_PB1000) |
309 | if (irq_nr == AU1000_GPIO_15) | 321 | if (irq_nr == AU1000_GPIO15_INT) |
310 | au_writel(0x4000, PB1000_MDR); /* enable int */ | 322 | au_writel(0x4000, PB1000_MDR); /* enable int */ |
311 | #endif | 323 | #endif |
312 | au_sync(); | 324 | au_sync(); |
@@ -378,11 +390,13 @@ static void au1x_ic1_maskack(unsigned int irq_nr) | |||
378 | 390 | ||
379 | static int au1x_ic1_setwake(unsigned int irq, unsigned int on) | 391 | static int au1x_ic1_setwake(unsigned int irq, unsigned int on) |
380 | { | 392 | { |
381 | unsigned int bit = irq - AU1000_INTC1_INT_BASE; | 393 | int bit = irq - AU1000_INTC1_INT_BASE; |
382 | unsigned long wakemsk, flags; | 394 | unsigned long wakemsk, flags; |
383 | 395 | ||
384 | /* only GPIO 0-7 can act as wakeup source: */ | 396 | /* only GPIO 0-7 can act as wakeup source. Fortunately these |
385 | if ((irq < AU1000_GPIO_0) || (irq > AU1000_GPIO_7)) | 397 | * are wired up identically on all supported variants. |
398 | */ | ||
399 | if ((bit < 0) || (bit > 7)) | ||
386 | return -EINVAL; | 400 | return -EINVAL; |
387 | 401 | ||
388 | local_irq_save(flags); | 402 | local_irq_save(flags); |
@@ -504,11 +518,11 @@ static int au1x_ic_settype(unsigned int irq, unsigned int flow_type) | |||
504 | asmlinkage void plat_irq_dispatch(void) | 518 | asmlinkage void plat_irq_dispatch(void) |
505 | { | 519 | { |
506 | unsigned int pending = read_c0_status() & read_c0_cause(); | 520 | unsigned int pending = read_c0_status() & read_c0_cause(); |
507 | unsigned long s, off, bit; | 521 | unsigned long s, off; |
508 | 522 | ||
509 | if (pending & CAUSEF_IP7) { | 523 | if (pending & CAUSEF_IP7) { |
510 | do_IRQ(MIPS_CPU_IRQ_BASE + 7); | 524 | off = MIPS_CPU_IRQ_BASE + 7; |
511 | return; | 525 | goto handle; |
512 | } else if (pending & CAUSEF_IP2) { | 526 | } else if (pending & CAUSEF_IP2) { |
513 | s = IC0_REQ0INT; | 527 | s = IC0_REQ0INT; |
514 | off = AU1000_INTC0_INT_BASE; | 528 | off = AU1000_INTC0_INT_BASE; |
@@ -524,58 +538,20 @@ asmlinkage void plat_irq_dispatch(void) | |||
524 | } else | 538 | } else |
525 | goto spurious; | 539 | goto spurious; |
526 | 540 | ||
527 | bit = 0; | ||
528 | s = au_readl(s); | 541 | s = au_readl(s); |
529 | if (unlikely(!s)) { | 542 | if (unlikely(!s)) { |
530 | spurious: | 543 | spurious: |
531 | spurious_interrupt(); | 544 | spurious_interrupt(); |
532 | return; | 545 | return; |
533 | } | 546 | } |
534 | #ifdef AU1000_USB_DEV_REQ_INT | 547 | off += __ffs(s); |
535 | /* | 548 | handle: |
536 | * Because of the tight timing of SETUP token to reply | 549 | do_IRQ(off); |
537 | * transactions, the USB devices-side packet complete | ||
538 | * interrupt needs the highest priority. | ||
539 | */ | ||
540 | bit = 1 << (AU1000_USB_DEV_REQ_INT - AU1000_INTC0_INT_BASE); | ||
541 | if ((pending & CAUSEF_IP2) && (s & bit)) { | ||
542 | do_IRQ(AU1000_USB_DEV_REQ_INT); | ||
543 | return; | ||
544 | } | ||
545 | #endif | ||
546 | do_IRQ(__ffs(s) + off); | ||
547 | } | 550 | } |
548 | 551 | ||
549 | /* setup edge/level and assign request 0/1 */ | 552 | static void __init au1000_init_irq(struct au1xxx_irqmap *map) |
550 | void __init au1xxx_setup_irqmap(struct au1xxx_irqmap *map, int count) | ||
551 | { | 553 | { |
552 | unsigned int bit, irq_nr; | 554 | unsigned int bit, irq_nr; |
553 | |||
554 | while (count--) { | ||
555 | irq_nr = map[count].im_irq; | ||
556 | |||
557 | if (((irq_nr < AU1000_INTC0_INT_BASE) || | ||
558 | (irq_nr >= AU1000_INTC0_INT_BASE + 32)) && | ||
559 | ((irq_nr < AU1000_INTC1_INT_BASE) || | ||
560 | (irq_nr >= AU1000_INTC1_INT_BASE + 32))) | ||
561 | continue; | ||
562 | |||
563 | if (irq_nr >= AU1000_INTC1_INT_BASE) { | ||
564 | bit = irq_nr - AU1000_INTC1_INT_BASE; | ||
565 | if (map[count].im_request) | ||
566 | au_writel(1 << bit, IC1_ASSIGNCLR); | ||
567 | } else { | ||
568 | bit = irq_nr - AU1000_INTC0_INT_BASE; | ||
569 | if (map[count].im_request) | ||
570 | au_writel(1 << bit, IC0_ASSIGNCLR); | ||
571 | } | ||
572 | |||
573 | au1x_ic_settype(irq_nr, map[count].im_type); | ||
574 | } | ||
575 | } | ||
576 | |||
577 | void __init arch_init_irq(void) | ||
578 | { | ||
579 | int i; | 555 | int i; |
580 | 556 | ||
581 | /* | 557 | /* |
@@ -585,7 +561,7 @@ void __init arch_init_irq(void) | |||
585 | au_writel(0xffffffff, IC0_CFG1CLR); | 561 | au_writel(0xffffffff, IC0_CFG1CLR); |
586 | au_writel(0xffffffff, IC0_CFG2CLR); | 562 | au_writel(0xffffffff, IC0_CFG2CLR); |
587 | au_writel(0xffffffff, IC0_MASKCLR); | 563 | au_writel(0xffffffff, IC0_MASKCLR); |
588 | au_writel(0xffffffff, IC0_ASSIGNSET); | 564 | au_writel(0xffffffff, IC0_ASSIGNCLR); |
589 | au_writel(0xffffffff, IC0_WAKECLR); | 565 | au_writel(0xffffffff, IC0_WAKECLR); |
590 | au_writel(0xffffffff, IC0_SRCSET); | 566 | au_writel(0xffffffff, IC0_SRCSET); |
591 | au_writel(0xffffffff, IC0_FALLINGCLR); | 567 | au_writel(0xffffffff, IC0_FALLINGCLR); |
@@ -596,7 +572,7 @@ void __init arch_init_irq(void) | |||
596 | au_writel(0xffffffff, IC1_CFG1CLR); | 572 | au_writel(0xffffffff, IC1_CFG1CLR); |
597 | au_writel(0xffffffff, IC1_CFG2CLR); | 573 | au_writel(0xffffffff, IC1_CFG2CLR); |
598 | au_writel(0xffffffff, IC1_MASKCLR); | 574 | au_writel(0xffffffff, IC1_MASKCLR); |
599 | au_writel(0xffffffff, IC1_ASSIGNSET); | 575 | au_writel(0xffffffff, IC1_ASSIGNCLR); |
600 | au_writel(0xffffffff, IC1_WAKECLR); | 576 | au_writel(0xffffffff, IC1_WAKECLR); |
601 | au_writel(0xffffffff, IC1_SRCSET); | 577 | au_writel(0xffffffff, IC1_SRCSET); |
602 | au_writel(0xffffffff, IC1_FALLINGCLR); | 578 | au_writel(0xffffffff, IC1_FALLINGCLR); |
@@ -619,11 +595,43 @@ void __init arch_init_irq(void) | |||
619 | /* | 595 | /* |
620 | * Initialize IC0, which is fixed per processor. | 596 | * Initialize IC0, which is fixed per processor. |
621 | */ | 597 | */ |
622 | au1xxx_setup_irqmap(au1xxx_ic0_map, ARRAY_SIZE(au1xxx_ic0_map)); | 598 | while (map->im_irq != -1) { |
599 | irq_nr = map->im_irq; | ||
623 | 600 | ||
624 | /* Boards can register additional (GPIO-based) IRQs. | 601 | if (irq_nr >= AU1000_INTC1_INT_BASE) { |
625 | */ | 602 | bit = irq_nr - AU1000_INTC1_INT_BASE; |
626 | board_init_irq(); | 603 | if (map->im_request) |
604 | au_writel(1 << bit, IC1_ASSIGNSET); | ||
605 | } else { | ||
606 | bit = irq_nr - AU1000_INTC0_INT_BASE; | ||
607 | if (map->im_request) | ||
608 | au_writel(1 << bit, IC0_ASSIGNSET); | ||
609 | } | ||
610 | |||
611 | au1x_ic_settype(irq_nr, map->im_type); | ||
612 | ++map; | ||
613 | } | ||
627 | 614 | ||
628 | set_c0_status(IE_IRQ0 | IE_IRQ1 | IE_IRQ2 | IE_IRQ3); | 615 | set_c0_status(IE_IRQ0 | IE_IRQ1 | IE_IRQ2 | IE_IRQ3); |
629 | } | 616 | } |
617 | |||
618 | void __init arch_init_irq(void) | ||
619 | { | ||
620 | switch (alchemy_get_cputype()) { | ||
621 | case ALCHEMY_CPU_AU1000: | ||
622 | au1000_init_irq(au1000_irqmap); | ||
623 | break; | ||
624 | case ALCHEMY_CPU_AU1500: | ||
625 | au1000_init_irq(au1500_irqmap); | ||
626 | break; | ||
627 | case ALCHEMY_CPU_AU1100: | ||
628 | au1000_init_irq(au1100_irqmap); | ||
629 | break; | ||
630 | case ALCHEMY_CPU_AU1550: | ||
631 | au1000_init_irq(au1550_irqmap); | ||
632 | break; | ||
633 | case ALCHEMY_CPU_AU1200: | ||
634 | au1000_init_irq(au1200_irqmap); | ||
635 | break; | ||
636 | } | ||
637 | } | ||
diff --git a/arch/mips/alchemy/common/platform.c b/arch/mips/alchemy/common/platform.c index 117f99f70649..2580e77624d2 100644 --- a/arch/mips/alchemy/common/platform.c +++ b/arch/mips/alchemy/common/platform.c | |||
@@ -19,39 +19,40 @@ | |||
19 | #include <asm/mach-au1x00/au1xxx.h> | 19 | #include <asm/mach-au1x00/au1xxx.h> |
20 | #include <asm/mach-au1x00/au1xxx_dbdma.h> | 20 | #include <asm/mach-au1x00/au1xxx_dbdma.h> |
21 | #include <asm/mach-au1x00/au1100_mmc.h> | 21 | #include <asm/mach-au1x00/au1100_mmc.h> |
22 | 22 | #include <asm/mach-au1x00/au1xxx_eth.h> | |
23 | #define PORT(_base, _irq) \ | 23 | |
24 | { \ | 24 | #define PORT(_base, _irq) \ |
25 | .iobase = _base, \ | 25 | { \ |
26 | .membase = (void __iomem *)_base,\ | 26 | .mapbase = _base, \ |
27 | .mapbase = CPHYSADDR(_base), \ | 27 | .irq = _irq, \ |
28 | .irq = _irq, \ | 28 | .regshift = 2, \ |
29 | .regshift = 2, \ | 29 | .iotype = UPIO_AU, \ |
30 | .iotype = UPIO_AU, \ | 30 | .flags = UPF_SKIP_TEST | UPF_IOREMAP | \ |
31 | .flags = UPF_SKIP_TEST \ | 31 | UPF_FIXED_TYPE, \ |
32 | .type = PORT_16550A, \ | ||
32 | } | 33 | } |
33 | 34 | ||
34 | static struct plat_serial8250_port au1x00_uart_data[] = { | 35 | static struct plat_serial8250_port au1x00_uart_data[] = { |
35 | #if defined(CONFIG_SERIAL_8250_AU1X00) | 36 | #if defined(CONFIG_SERIAL_8250_AU1X00) |
36 | #if defined(CONFIG_SOC_AU1000) | 37 | #if defined(CONFIG_SOC_AU1000) |
37 | PORT(UART0_ADDR, AU1000_UART0_INT), | 38 | PORT(UART0_PHYS_ADDR, AU1000_UART0_INT), |
38 | PORT(UART1_ADDR, AU1000_UART1_INT), | 39 | PORT(UART1_PHYS_ADDR, AU1000_UART1_INT), |
39 | PORT(UART2_ADDR, AU1000_UART2_INT), | 40 | PORT(UART2_PHYS_ADDR, AU1000_UART2_INT), |
40 | PORT(UART3_ADDR, AU1000_UART3_INT), | 41 | PORT(UART3_PHYS_ADDR, AU1000_UART3_INT), |
41 | #elif defined(CONFIG_SOC_AU1500) | 42 | #elif defined(CONFIG_SOC_AU1500) |
42 | PORT(UART0_ADDR, AU1500_UART0_INT), | 43 | PORT(UART0_PHYS_ADDR, AU1500_UART0_INT), |
43 | PORT(UART3_ADDR, AU1500_UART3_INT), | 44 | PORT(UART3_PHYS_ADDR, AU1500_UART3_INT), |
44 | #elif defined(CONFIG_SOC_AU1100) | 45 | #elif defined(CONFIG_SOC_AU1100) |
45 | PORT(UART0_ADDR, AU1100_UART0_INT), | 46 | PORT(UART0_PHYS_ADDR, AU1100_UART0_INT), |
46 | PORT(UART1_ADDR, AU1100_UART1_INT), | 47 | PORT(UART1_PHYS_ADDR, AU1100_UART1_INT), |
47 | PORT(UART3_ADDR, AU1100_UART3_INT), | 48 | PORT(UART3_PHYS_ADDR, AU1100_UART3_INT), |
48 | #elif defined(CONFIG_SOC_AU1550) | 49 | #elif defined(CONFIG_SOC_AU1550) |
49 | PORT(UART0_ADDR, AU1550_UART0_INT), | 50 | PORT(UART0_PHYS_ADDR, AU1550_UART0_INT), |
50 | PORT(UART1_ADDR, AU1550_UART1_INT), | 51 | PORT(UART1_PHYS_ADDR, AU1550_UART1_INT), |
51 | PORT(UART3_ADDR, AU1550_UART3_INT), | 52 | PORT(UART3_PHYS_ADDR, AU1550_UART3_INT), |
52 | #elif defined(CONFIG_SOC_AU1200) | 53 | #elif defined(CONFIG_SOC_AU1200) |
53 | PORT(UART0_ADDR, AU1200_UART0_INT), | 54 | PORT(UART0_PHYS_ADDR, AU1200_UART0_INT), |
54 | PORT(UART1_ADDR, AU1200_UART1_INT), | 55 | PORT(UART1_PHYS_ADDR, AU1200_UART1_INT), |
55 | #endif | 56 | #endif |
56 | #endif /* CONFIG_SERIAL_8250_AU1X00 */ | 57 | #endif /* CONFIG_SERIAL_8250_AU1X00 */ |
57 | { }, | 58 | { }, |
@@ -73,8 +74,8 @@ static struct resource au1xxx_usb_ohci_resources[] = { | |||
73 | .flags = IORESOURCE_MEM, | 74 | .flags = IORESOURCE_MEM, |
74 | }, | 75 | }, |
75 | [1] = { | 76 | [1] = { |
76 | .start = AU1000_USB_HOST_INT, | 77 | .start = FOR_PLATFORM_C_USB_HOST_INT, |
77 | .end = AU1000_USB_HOST_INT, | 78 | .end = FOR_PLATFORM_C_USB_HOST_INT, |
78 | .flags = IORESOURCE_IRQ, | 79 | .flags = IORESOURCE_IRQ, |
79 | }, | 80 | }, |
80 | }; | 81 | }; |
@@ -132,8 +133,8 @@ static struct resource au1xxx_usb_ehci_resources[] = { | |||
132 | .flags = IORESOURCE_MEM, | 133 | .flags = IORESOURCE_MEM, |
133 | }, | 134 | }, |
134 | [1] = { | 135 | [1] = { |
135 | .start = AU1000_USB_HOST_INT, | 136 | .start = AU1200_USB_INT, |
136 | .end = AU1000_USB_HOST_INT, | 137 | .end = AU1200_USB_INT, |
137 | .flags = IORESOURCE_IRQ, | 138 | .flags = IORESOURCE_IRQ, |
138 | }, | 139 | }, |
139 | }; | 140 | }; |
@@ -308,11 +309,6 @@ static struct platform_device au1200_mmc1_device = { | |||
308 | #endif /* #ifndef CONFIG_MIPS_DB1200 */ | 309 | #endif /* #ifndef CONFIG_MIPS_DB1200 */ |
309 | #endif /* #ifdef CONFIG_SOC_AU1200 */ | 310 | #endif /* #ifdef CONFIG_SOC_AU1200 */ |
310 | 311 | ||
311 | static struct platform_device au1x00_pcmcia_device = { | ||
312 | .name = "au1x00-pcmcia", | ||
313 | .id = 0, | ||
314 | }; | ||
315 | |||
316 | /* All Alchemy demoboards with I2C have this #define in their headers */ | 312 | /* All Alchemy demoboards with I2C have this #define in their headers */ |
317 | #ifdef SMBUS_PSC_BASE | 313 | #ifdef SMBUS_PSC_BASE |
318 | static struct resource pbdb_smbus_resources[] = { | 314 | static struct resource pbdb_smbus_resources[] = { |
@@ -331,10 +327,92 @@ static struct platform_device pbdb_smbus_device = { | |||
331 | }; | 327 | }; |
332 | #endif | 328 | #endif |
333 | 329 | ||
330 | /* Macro to help defining the Ethernet MAC resources */ | ||
331 | #define MAC_RES(_base, _enable, _irq) \ | ||
332 | { \ | ||
333 | .start = CPHYSADDR(_base), \ | ||
334 | .end = CPHYSADDR(_base + 0xffff), \ | ||
335 | .flags = IORESOURCE_MEM, \ | ||
336 | }, \ | ||
337 | { \ | ||
338 | .start = CPHYSADDR(_enable), \ | ||
339 | .end = CPHYSADDR(_enable + 0x3), \ | ||
340 | .flags = IORESOURCE_MEM, \ | ||
341 | }, \ | ||
342 | { \ | ||
343 | .start = _irq, \ | ||
344 | .end = _irq, \ | ||
345 | .flags = IORESOURCE_IRQ \ | ||
346 | } | ||
347 | |||
348 | static struct resource au1xxx_eth0_resources[] = { | ||
349 | #if defined(CONFIG_SOC_AU1000) | ||
350 | MAC_RES(AU1000_ETH0_BASE, AU1000_MAC0_ENABLE, AU1000_MAC0_DMA_INT), | ||
351 | #elif defined(CONFIG_SOC_AU1100) | ||
352 | MAC_RES(AU1100_ETH0_BASE, AU1100_MAC0_ENABLE, AU1100_MAC0_DMA_INT), | ||
353 | #elif defined(CONFIG_SOC_AU1550) | ||
354 | MAC_RES(AU1550_ETH0_BASE, AU1550_MAC0_ENABLE, AU1550_MAC0_DMA_INT), | ||
355 | #elif defined(CONFIG_SOC_AU1500) | ||
356 | MAC_RES(AU1500_ETH0_BASE, AU1500_MAC0_ENABLE, AU1500_MAC0_DMA_INT), | ||
357 | #endif | ||
358 | }; | ||
359 | |||
360 | |||
361 | static struct au1000_eth_platform_data au1xxx_eth0_platform_data = { | ||
362 | .phy1_search_mac0 = 1, | ||
363 | }; | ||
364 | |||
365 | static struct platform_device au1xxx_eth0_device = { | ||
366 | .name = "au1000-eth", | ||
367 | .id = 0, | ||
368 | .num_resources = ARRAY_SIZE(au1xxx_eth0_resources), | ||
369 | .resource = au1xxx_eth0_resources, | ||
370 | .dev.platform_data = &au1xxx_eth0_platform_data, | ||
371 | }; | ||
372 | |||
373 | #ifndef CONFIG_SOC_AU1100 | ||
374 | static struct resource au1xxx_eth1_resources[] = { | ||
375 | #if defined(CONFIG_SOC_AU1000) | ||
376 | MAC_RES(AU1000_ETH1_BASE, AU1000_MAC1_ENABLE, AU1000_MAC1_DMA_INT), | ||
377 | #elif defined(CONFIG_SOC_AU1550) | ||
378 | MAC_RES(AU1550_ETH1_BASE, AU1550_MAC1_ENABLE, AU1550_MAC1_DMA_INT), | ||
379 | #elif defined(CONFIG_SOC_AU1500) | ||
380 | MAC_RES(AU1500_ETH1_BASE, AU1500_MAC1_ENABLE, AU1500_MAC1_DMA_INT), | ||
381 | #endif | ||
382 | }; | ||
383 | |||
384 | static struct au1000_eth_platform_data au1xxx_eth1_platform_data = { | ||
385 | .phy1_search_mac0 = 1, | ||
386 | }; | ||
387 | |||
388 | static struct platform_device au1xxx_eth1_device = { | ||
389 | .name = "au1000-eth", | ||
390 | .id = 1, | ||
391 | .num_resources = ARRAY_SIZE(au1xxx_eth1_resources), | ||
392 | .resource = au1xxx_eth1_resources, | ||
393 | .dev.platform_data = &au1xxx_eth1_platform_data, | ||
394 | }; | ||
395 | #endif | ||
396 | |||
397 | void __init au1xxx_override_eth_cfg(unsigned int port, | ||
398 | struct au1000_eth_platform_data *eth_data) | ||
399 | { | ||
400 | if (!eth_data || port > 1) | ||
401 | return; | ||
402 | |||
403 | if (port == 0) | ||
404 | memcpy(&au1xxx_eth0_platform_data, eth_data, | ||
405 | sizeof(struct au1000_eth_platform_data)); | ||
406 | #ifndef CONFIG_SOC_AU1100 | ||
407 | else | ||
408 | memcpy(&au1xxx_eth1_platform_data, eth_data, | ||
409 | sizeof(struct au1000_eth_platform_data)); | ||
410 | #endif | ||
411 | } | ||
412 | |||
334 | static struct platform_device *au1xxx_platform_devices[] __initdata = { | 413 | static struct platform_device *au1xxx_platform_devices[] __initdata = { |
335 | &au1xx0_uart_device, | 414 | &au1xx0_uart_device, |
336 | &au1xxx_usb_ohci_device, | 415 | &au1xxx_usb_ohci_device, |
337 | &au1x00_pcmcia_device, | ||
338 | #ifdef CONFIG_FB_AU1100 | 416 | #ifdef CONFIG_FB_AU1100 |
339 | &au1100_lcd_device, | 417 | &au1100_lcd_device, |
340 | #endif | 418 | #endif |
@@ -351,6 +429,7 @@ static struct platform_device *au1xxx_platform_devices[] __initdata = { | |||
351 | #ifdef SMBUS_PSC_BASE | 429 | #ifdef SMBUS_PSC_BASE |
352 | &pbdb_smbus_device, | 430 | &pbdb_smbus_device, |
353 | #endif | 431 | #endif |
432 | &au1xxx_eth0_device, | ||
354 | }; | 433 | }; |
355 | 434 | ||
356 | static int __init au1xxx_platform_init(void) | 435 | static int __init au1xxx_platform_init(void) |
@@ -362,6 +441,12 @@ static int __init au1xxx_platform_init(void) | |||
362 | for (i = 0; au1x00_uart_data[i].flags; i++) | 441 | for (i = 0; au1x00_uart_data[i].flags; i++) |
363 | au1x00_uart_data[i].uartclk = uartclk; | 442 | au1x00_uart_data[i].uartclk = uartclk; |
364 | 443 | ||
444 | #ifndef CONFIG_SOC_AU1100 | ||
445 | /* Register second MAC if enabled in pinfunc */ | ||
446 | if (!(au_readl(SYS_PINFUNC) & (u32)SYS_PF_NI2)) | ||
447 | platform_device_register(&au1xxx_eth1_device); | ||
448 | #endif | ||
449 | |||
365 | return platform_add_devices(au1xxx_platform_devices, | 450 | return platform_add_devices(au1xxx_platform_devices, |
366 | ARRAY_SIZE(au1xxx_platform_devices)); | 451 | ARRAY_SIZE(au1xxx_platform_devices)); |
367 | } | 452 | } |
diff --git a/arch/mips/alchemy/common/prom.c b/arch/mips/alchemy/common/prom.c index 18b310b475ca..c29511b11d44 100644 --- a/arch/mips/alchemy/common/prom.c +++ b/arch/mips/alchemy/common/prom.c | |||
@@ -43,29 +43,15 @@ int prom_argc; | |||
43 | char **prom_argv; | 43 | char **prom_argv; |
44 | char **prom_envp; | 44 | char **prom_envp; |
45 | 45 | ||
46 | char * __init_or_module prom_getcmdline(void) | ||
47 | { | ||
48 | return &(arcs_cmdline[0]); | ||
49 | } | ||
50 | |||
51 | void prom_init_cmdline(void) | 46 | void prom_init_cmdline(void) |
52 | { | 47 | { |
53 | char *cp; | 48 | int i; |
54 | int actr; | ||
55 | |||
56 | actr = 1; /* Always ignore argv[0] */ | ||
57 | 49 | ||
58 | cp = &(arcs_cmdline[0]); | 50 | for (i = 1; i < prom_argc; i++) { |
59 | while (actr < prom_argc) { | 51 | strlcat(arcs_cmdline, prom_argv[i], COMMAND_LINE_SIZE); |
60 | strcpy(cp, prom_argv[actr]); | 52 | if (i < (prom_argc - 1)) |
61 | cp += strlen(prom_argv[actr]); | 53 | strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE); |
62 | *cp++ = ' '; | ||
63 | actr++; | ||
64 | } | 54 | } |
65 | if (cp != &(arcs_cmdline[0])) /* get rid of trailing space */ | ||
66 | --cp; | ||
67 | if (prom_argc > 1) | ||
68 | *cp = '\0'; | ||
69 | } | 55 | } |
70 | 56 | ||
71 | char *prom_getenv(char *envname) | 57 | char *prom_getenv(char *envname) |
@@ -121,14 +107,12 @@ static inline void str2eaddr(unsigned char *ea, unsigned char *str) | |||
121 | int prom_get_ethernet_addr(char *ethernet_addr) | 107 | int prom_get_ethernet_addr(char *ethernet_addr) |
122 | { | 108 | { |
123 | char *ethaddr_str; | 109 | char *ethaddr_str; |
124 | char *argptr; | ||
125 | 110 | ||
126 | /* Check the environment variables first */ | 111 | /* Check the environment variables first */ |
127 | ethaddr_str = prom_getenv("ethaddr"); | 112 | ethaddr_str = prom_getenv("ethaddr"); |
128 | if (!ethaddr_str) { | 113 | if (!ethaddr_str) { |
129 | /* Check command line */ | 114 | /* Check command line */ |
130 | argptr = prom_getcmdline(); | 115 | ethaddr_str = strstr(arcs_cmdline, "ethaddr="); |
131 | ethaddr_str = strstr(argptr, "ethaddr="); | ||
132 | if (!ethaddr_str) | 116 | if (!ethaddr_str) |
133 | return -1; | 117 | return -1; |
134 | 118 | ||
diff --git a/arch/mips/alchemy/common/puts.c b/arch/mips/alchemy/common/puts.c deleted file mode 100644 index 55bbe24d45b6..000000000000 --- a/arch/mips/alchemy/common/puts.c +++ /dev/null | |||
@@ -1,68 +0,0 @@ | |||
1 | /* | ||
2 | * | ||
3 | * BRIEF MODULE DESCRIPTION | ||
4 | * Low level UART routines to directly access Alchemy UART. | ||
5 | * | ||
6 | * Copyright 2001, 2008 MontaVista Software Inc. | ||
7 | * Author: MontaVista Software, Inc. <source@mvista.com> | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify it | ||
10 | * under the terms of the GNU General Public License as published by the | ||
11 | * Free Software Foundation; either version 2 of the License, or (at your | ||
12 | * option) any later version. | ||
13 | * | ||
14 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
15 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
16 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
17 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
18 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
19 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
20 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
21 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
22 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
23 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
24 | * | ||
25 | * You should have received a copy of the GNU General Public License along | ||
26 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
27 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
28 | */ | ||
29 | |||
30 | #include <asm/mach-au1x00/au1000.h> | ||
31 | |||
32 | #define SERIAL_BASE UART_BASE | ||
33 | #define SER_CMD 0x7 | ||
34 | #define SER_DATA 0x1 | ||
35 | #define TX_BUSY 0x20 | ||
36 | |||
37 | #define TIMEOUT 0xffffff | ||
38 | #define SLOW_DOWN | ||
39 | |||
40 | static volatile unsigned long * const com1 = (unsigned long *)SERIAL_BASE; | ||
41 | |||
42 | #ifdef SLOW_DOWN | ||
43 | static inline void slow_down(void) | ||
44 | { | ||
45 | int k; | ||
46 | |||
47 | for (k = 0; k < 10000; k++); | ||
48 | } | ||
49 | #else | ||
50 | #define slow_down() | ||
51 | #endif | ||
52 | |||
53 | void | ||
54 | prom_putchar(const unsigned char c) | ||
55 | { | ||
56 | unsigned char ch; | ||
57 | int i = 0; | ||
58 | |||
59 | do { | ||
60 | ch = com1[SER_CMD]; | ||
61 | slow_down(); | ||
62 | i++; | ||
63 | if (i > TIMEOUT) | ||
64 | break; | ||
65 | } while (0 == (ch & TX_BUSY)); | ||
66 | |||
67 | com1[SER_DATA] = c; | ||
68 | } | ||
diff --git a/arch/mips/alchemy/common/reset.c b/arch/mips/alchemy/common/reset.c deleted file mode 100644 index 4791011e8f92..000000000000 --- a/arch/mips/alchemy/common/reset.c +++ /dev/null | |||
@@ -1,188 +0,0 @@ | |||
1 | /* | ||
2 | * | ||
3 | * BRIEF MODULE DESCRIPTION | ||
4 | * Au1xx0 reset routines. | ||
5 | * | ||
6 | * Copyright 2001, 2006, 2008 MontaVista Software Inc. | ||
7 | * Author: MontaVista Software, Inc. <source@mvista.com> | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify it | ||
10 | * under the terms of the GNU General Public License as published by the | ||
11 | * Free Software Foundation; either version 2 of the License, or (at your | ||
12 | * option) any later version. | ||
13 | * | ||
14 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
15 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
16 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
17 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
18 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
19 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
20 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
21 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
22 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
23 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
24 | * | ||
25 | * You should have received a copy of the GNU General Public License along | ||
26 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
27 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
28 | */ | ||
29 | |||
30 | #include <linux/gpio.h> | ||
31 | |||
32 | #include <asm/cacheflush.h> | ||
33 | #include <asm/mach-au1x00/au1000.h> | ||
34 | |||
35 | void au1000_restart(char *command) | ||
36 | { | ||
37 | /* Set all integrated peripherals to disabled states */ | ||
38 | extern void board_reset(void); | ||
39 | u32 prid = read_c0_prid(); | ||
40 | |||
41 | printk(KERN_NOTICE "\n** Resetting Integrated Peripherals\n"); | ||
42 | |||
43 | switch (prid & 0xFF000000) { | ||
44 | case 0x00000000: /* Au1000 */ | ||
45 | au_writel(0x02, 0xb0000010); /* ac97_enable */ | ||
46 | au_writel(0x08, 0xb017fffc); /* usbh_enable - early errata */ | ||
47 | asm("sync"); | ||
48 | au_writel(0x00, 0xb017fffc); /* usbh_enable */ | ||
49 | au_writel(0x00, 0xb0200058); /* usbd_enable */ | ||
50 | au_writel(0x00, 0xb0300040); /* ir_enable */ | ||
51 | au_writel(0x00, 0xb4004104); /* mac dma */ | ||
52 | au_writel(0x00, 0xb4004114); /* mac dma */ | ||
53 | au_writel(0x00, 0xb4004124); /* mac dma */ | ||
54 | au_writel(0x00, 0xb4004134); /* mac dma */ | ||
55 | au_writel(0x00, 0xb0520000); /* macen0 */ | ||
56 | au_writel(0x00, 0xb0520004); /* macen1 */ | ||
57 | au_writel(0x00, 0xb1000008); /* i2s_enable */ | ||
58 | au_writel(0x00, 0xb1100100); /* uart0_enable */ | ||
59 | au_writel(0x00, 0xb1200100); /* uart1_enable */ | ||
60 | au_writel(0x00, 0xb1300100); /* uart2_enable */ | ||
61 | au_writel(0x00, 0xb1400100); /* uart3_enable */ | ||
62 | au_writel(0x02, 0xb1600100); /* ssi0_enable */ | ||
63 | au_writel(0x02, 0xb1680100); /* ssi1_enable */ | ||
64 | au_writel(0x00, 0xb1900020); /* sys_freqctrl0 */ | ||
65 | au_writel(0x00, 0xb1900024); /* sys_freqctrl1 */ | ||
66 | au_writel(0x00, 0xb1900028); /* sys_clksrc */ | ||
67 | au_writel(0x10, 0xb1900060); /* sys_cpupll */ | ||
68 | au_writel(0x00, 0xb1900064); /* sys_auxpll */ | ||
69 | au_writel(0x00, 0xb1900100); /* sys_pininputen */ | ||
70 | break; | ||
71 | case 0x01000000: /* Au1500 */ | ||
72 | au_writel(0x02, 0xb0000010); /* ac97_enable */ | ||
73 | au_writel(0x08, 0xb017fffc); /* usbh_enable - early errata */ | ||
74 | asm("sync"); | ||
75 | au_writel(0x00, 0xb017fffc); /* usbh_enable */ | ||
76 | au_writel(0x00, 0xb0200058); /* usbd_enable */ | ||
77 | au_writel(0x00, 0xb4004104); /* mac dma */ | ||
78 | au_writel(0x00, 0xb4004114); /* mac dma */ | ||
79 | au_writel(0x00, 0xb4004124); /* mac dma */ | ||
80 | au_writel(0x00, 0xb4004134); /* mac dma */ | ||
81 | au_writel(0x00, 0xb1520000); /* macen0 */ | ||
82 | au_writel(0x00, 0xb1520004); /* macen1 */ | ||
83 | au_writel(0x00, 0xb1100100); /* uart0_enable */ | ||
84 | au_writel(0x00, 0xb1400100); /* uart3_enable */ | ||
85 | au_writel(0x00, 0xb1900020); /* sys_freqctrl0 */ | ||
86 | au_writel(0x00, 0xb1900024); /* sys_freqctrl1 */ | ||
87 | au_writel(0x00, 0xb1900028); /* sys_clksrc */ | ||
88 | au_writel(0x10, 0xb1900060); /* sys_cpupll */ | ||
89 | au_writel(0x00, 0xb1900064); /* sys_auxpll */ | ||
90 | au_writel(0x00, 0xb1900100); /* sys_pininputen */ | ||
91 | break; | ||
92 | case 0x02000000: /* Au1100 */ | ||
93 | au_writel(0x02, 0xb0000010); /* ac97_enable */ | ||
94 | au_writel(0x08, 0xb017fffc); /* usbh_enable - early errata */ | ||
95 | asm("sync"); | ||
96 | au_writel(0x00, 0xb017fffc); /* usbh_enable */ | ||
97 | au_writel(0x00, 0xb0200058); /* usbd_enable */ | ||
98 | au_writel(0x00, 0xb0300040); /* ir_enable */ | ||
99 | au_writel(0x00, 0xb4004104); /* mac dma */ | ||
100 | au_writel(0x00, 0xb4004114); /* mac dma */ | ||
101 | au_writel(0x00, 0xb4004124); /* mac dma */ | ||
102 | au_writel(0x00, 0xb4004134); /* mac dma */ | ||
103 | au_writel(0x00, 0xb0520000); /* macen0 */ | ||
104 | au_writel(0x00, 0xb1000008); /* i2s_enable */ | ||
105 | au_writel(0x00, 0xb1100100); /* uart0_enable */ | ||
106 | au_writel(0x00, 0xb1200100); /* uart1_enable */ | ||
107 | au_writel(0x00, 0xb1400100); /* uart3_enable */ | ||
108 | au_writel(0x02, 0xb1600100); /* ssi0_enable */ | ||
109 | au_writel(0x02, 0xb1680100); /* ssi1_enable */ | ||
110 | au_writel(0x00, 0xb1900020); /* sys_freqctrl0 */ | ||
111 | au_writel(0x00, 0xb1900024); /* sys_freqctrl1 */ | ||
112 | au_writel(0x00, 0xb1900028); /* sys_clksrc */ | ||
113 | au_writel(0x10, 0xb1900060); /* sys_cpupll */ | ||
114 | au_writel(0x00, 0xb1900064); /* sys_auxpll */ | ||
115 | au_writel(0x00, 0xb1900100); /* sys_pininputen */ | ||
116 | break; | ||
117 | case 0x03000000: /* Au1550 */ | ||
118 | au_writel(0x00, 0xb1a00004); /* psc 0 */ | ||
119 | au_writel(0x00, 0xb1b00004); /* psc 1 */ | ||
120 | au_writel(0x00, 0xb0a00004); /* psc 2 */ | ||
121 | au_writel(0x00, 0xb0b00004); /* psc 3 */ | ||
122 | au_writel(0x00, 0xb017fffc); /* usbh_enable */ | ||
123 | au_writel(0x00, 0xb0200058); /* usbd_enable */ | ||
124 | au_writel(0x00, 0xb4004104); /* mac dma */ | ||
125 | au_writel(0x00, 0xb4004114); /* mac dma */ | ||
126 | au_writel(0x00, 0xb4004124); /* mac dma */ | ||
127 | au_writel(0x00, 0xb4004134); /* mac dma */ | ||
128 | au_writel(0x00, 0xb1520000); /* macen0 */ | ||
129 | au_writel(0x00, 0xb1520004); /* macen1 */ | ||
130 | au_writel(0x00, 0xb1100100); /* uart0_enable */ | ||
131 | au_writel(0x00, 0xb1200100); /* uart1_enable */ | ||
132 | au_writel(0x00, 0xb1400100); /* uart3_enable */ | ||
133 | au_writel(0x00, 0xb1900020); /* sys_freqctrl0 */ | ||
134 | au_writel(0x00, 0xb1900024); /* sys_freqctrl1 */ | ||
135 | au_writel(0x00, 0xb1900028); /* sys_clksrc */ | ||
136 | au_writel(0x10, 0xb1900060); /* sys_cpupll */ | ||
137 | au_writel(0x00, 0xb1900064); /* sys_auxpll */ | ||
138 | au_writel(0x00, 0xb1900100); /* sys_pininputen */ | ||
139 | break; | ||
140 | } | ||
141 | |||
142 | set_c0_status(ST0_BEV | ST0_ERL); | ||
143 | change_c0_config(CONF_CM_CMASK, CONF_CM_UNCACHED); | ||
144 | flush_cache_all(); | ||
145 | write_c0_wired(0); | ||
146 | |||
147 | /* Give board a chance to do a hardware reset */ | ||
148 | board_reset(); | ||
149 | |||
150 | /* Jump to the beggining in case board_reset() is empty */ | ||
151 | __asm__ __volatile__("jr\t%0"::"r"(0xbfc00000)); | ||
152 | } | ||
153 | |||
154 | void au1000_halt(void) | ||
155 | { | ||
156 | #if defined(CONFIG_MIPS_PB1550) || defined(CONFIG_MIPS_DB1550) | ||
157 | /* Power off system */ | ||
158 | printk(KERN_NOTICE "\n** Powering off...\n"); | ||
159 | au_writew(au_readw(0xAF00001C) | (3 << 14), 0xAF00001C); | ||
160 | au_sync(); | ||
161 | while (1); /* should not get here */ | ||
162 | #else | ||
163 | printk(KERN_NOTICE "\n** You can safely turn off the power\n"); | ||
164 | #ifdef CONFIG_MIPS_MIRAGE | ||
165 | gpio_direction_output(210, 1); | ||
166 | #endif | ||
167 | #ifdef CONFIG_MIPS_DB1200 | ||
168 | au_writew(au_readw(0xB980001C) | (1 << 14), 0xB980001C); | ||
169 | #endif | ||
170 | #ifdef CONFIG_PM | ||
171 | au_sleep(); | ||
172 | |||
173 | /* Should not get here */ | ||
174 | printk(KERN_ERR "Unable to put CPU in sleep mode\n"); | ||
175 | while (1); | ||
176 | #else | ||
177 | while (1) | ||
178 | __asm__(".set\tmips3\n\t" | ||
179 | "wait\n\t" | ||
180 | ".set\tmips0"); | ||
181 | #endif | ||
182 | #endif /* defined(CONFIG_MIPS_PB1550) || defined(CONFIG_MIPS_DB1550) */ | ||
183 | } | ||
184 | |||
185 | void au1000_power_off(void) | ||
186 | { | ||
187 | au1000_halt(); | ||
188 | } | ||
diff --git a/arch/mips/alchemy/common/setup.c b/arch/mips/alchemy/common/setup.c index 6184baa56786..561e5da2658b 100644 --- a/arch/mips/alchemy/common/setup.c +++ b/arch/mips/alchemy/common/setup.c | |||
@@ -29,18 +29,13 @@ | |||
29 | #include <linux/ioport.h> | 29 | #include <linux/ioport.h> |
30 | #include <linux/jiffies.h> | 30 | #include <linux/jiffies.h> |
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/pm.h> | ||
33 | 32 | ||
34 | #include <asm/mipsregs.h> | 33 | #include <asm/mipsregs.h> |
35 | #include <asm/reboot.h> | ||
36 | #include <asm/time.h> | 34 | #include <asm/time.h> |
37 | 35 | ||
38 | #include <au1000.h> | 36 | #include <au1000.h> |
39 | 37 | ||
40 | extern void __init board_setup(void); | 38 | extern void __init board_setup(void); |
41 | extern void au1000_restart(char *); | ||
42 | extern void au1000_halt(void); | ||
43 | extern void au1000_power_off(void); | ||
44 | extern void set_cpuspec(void); | 39 | extern void set_cpuspec(void); |
45 | 40 | ||
46 | void __init plat_mem_setup(void) | 41 | void __init plat_mem_setup(void) |
@@ -57,10 +52,6 @@ void __init plat_mem_setup(void) | |||
57 | /* this is faster than wasting cycles trying to approximate it */ | 52 | /* this is faster than wasting cycles trying to approximate it */ |
58 | preset_lpj = (est_freq >> 1) / HZ; | 53 | preset_lpj = (est_freq >> 1) / HZ; |
59 | 54 | ||
60 | _machine_restart = au1000_restart; | ||
61 | _machine_halt = au1000_halt; | ||
62 | pm_power_off = au1000_power_off; | ||
63 | |||
64 | board_setup(); /* board specific setup */ | 55 | board_setup(); /* board specific setup */ |
65 | 56 | ||
66 | if (au1xxx_cpu_needs_config_od()) | 57 | if (au1xxx_cpu_needs_config_od()) |
@@ -78,37 +69,20 @@ void __init plat_mem_setup(void) | |||
78 | iomem_resource.end = IOMEM_RESOURCE_END; | 69 | iomem_resource.end = IOMEM_RESOURCE_END; |
79 | } | 70 | } |
80 | 71 | ||
81 | #if defined(CONFIG_64BIT_PHYS_ADDR) | 72 | #if defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_PCI) |
82 | /* This routine should be valid for all Au1x based boards */ | 73 | /* This routine should be valid for all Au1x based boards */ |
83 | phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size) | 74 | phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size) |
84 | { | 75 | { |
76 | u32 start = (u32)Au1500_PCI_MEM_START; | ||
77 | u32 end = (u32)Au1500_PCI_MEM_END; | ||
78 | |||
85 | /* Don't fixup 36-bit addresses */ | 79 | /* Don't fixup 36-bit addresses */ |
86 | if ((phys_addr >> 32) != 0) | 80 | if ((phys_addr >> 32) != 0) |
87 | return phys_addr; | 81 | return phys_addr; |
88 | 82 | ||
89 | #ifdef CONFIG_PCI | 83 | /* Check for PCI memory window */ |
90 | { | 84 | if (phys_addr >= start && (phys_addr + size - 1) <= end) |
91 | u32 start = (u32)Au1500_PCI_MEM_START; | 85 | return (phys_t)((phys_addr - start) + Au1500_PCI_MEM_START); |
92 | u32 end = (u32)Au1500_PCI_MEM_END; | ||
93 | |||
94 | /* Check for PCI memory window */ | ||
95 | if (phys_addr >= start && (phys_addr + size - 1) <= end) | ||
96 | return (phys_t) | ||
97 | ((phys_addr - start) + Au1500_PCI_MEM_START); | ||
98 | } | ||
99 | #endif | ||
100 | |||
101 | /* | ||
102 | * All Au1xx0 SOCs have a PCMCIA controller. | ||
103 | * We setup our 32-bit pseudo addresses to be equal to the | ||
104 | * 36-bit addr >> 4, to make it easier to check the address | ||
105 | * and fix it. | ||
106 | * The PCMCIA socket 0 physical attribute address is 0xF 4000 0000. | ||
107 | * The pseudo address we use is 0xF400 0000. Any address over | ||
108 | * 0xF400 0000 is a PCMCIA pseudo address. | ||
109 | */ | ||
110 | if ((phys_addr >= 0xF4000000) && (phys_addr < 0xFFFFFFFF)) | ||
111 | return (phys_t)(phys_addr << 4); | ||
112 | 86 | ||
113 | /* default nop */ | 87 | /* default nop */ |
114 | return phys_addr; | 88 | return phys_addr; |
diff --git a/arch/mips/alchemy/common/time.c b/arch/mips/alchemy/common/time.c index 379a664809b0..2aecb2fdf982 100644 --- a/arch/mips/alchemy/common/time.c +++ b/arch/mips/alchemy/common/time.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2008 Manuel Lauss <mano@roarinelk.homelinux.net> | 2 | * Copyright (C) 2008-2009 Manuel Lauss <manuel.lauss@gmail.com> |
3 | * | 3 | * |
4 | * Previous incarnations were: | 4 | * Previous incarnations were: |
5 | * Copyright (C) 2001, 2006, 2008 MontaVista Software, <source@mvista.com> | 5 | * Copyright (C) 2001, 2006, 2008 MontaVista Software, <source@mvista.com> |
@@ -85,7 +85,6 @@ static struct clock_event_device au1x_rtcmatch2_clockdev = { | |||
85 | .name = "rtcmatch2", | 85 | .name = "rtcmatch2", |
86 | .features = CLOCK_EVT_FEAT_ONESHOT, | 86 | .features = CLOCK_EVT_FEAT_ONESHOT, |
87 | .rating = 100, | 87 | .rating = 100, |
88 | .irq = AU1000_RTC_MATCH2_INT, | ||
89 | .set_next_event = au1x_rtcmatch2_set_next_event, | 88 | .set_next_event = au1x_rtcmatch2_set_next_event, |
90 | .set_mode = au1x_rtcmatch2_set_mode, | 89 | .set_mode = au1x_rtcmatch2_set_mode, |
91 | .cpumask = cpu_all_mask, | 90 | .cpumask = cpu_all_mask, |
@@ -98,11 +97,13 @@ static struct irqaction au1x_rtcmatch2_irqaction = { | |||
98 | .dev_id = &au1x_rtcmatch2_clockdev, | 97 | .dev_id = &au1x_rtcmatch2_clockdev, |
99 | }; | 98 | }; |
100 | 99 | ||
101 | void __init plat_time_init(void) | 100 | static int __init alchemy_time_init(unsigned int m2int) |
102 | { | 101 | { |
103 | struct clock_event_device *cd = &au1x_rtcmatch2_clockdev; | 102 | struct clock_event_device *cd = &au1x_rtcmatch2_clockdev; |
104 | unsigned long t; | 103 | unsigned long t; |
105 | 104 | ||
105 | au1x_rtcmatch2_clockdev.irq = m2int; | ||
106 | |||
106 | /* Check if firmware (YAMON, ...) has enabled 32kHz and clock | 107 | /* Check if firmware (YAMON, ...) has enabled 32kHz and clock |
107 | * has been detected. If so install the rtcmatch2 clocksource, | 108 | * has been detected. If so install the rtcmatch2 clocksource, |
108 | * otherwise don't bother. Note that both bits being set is by | 109 | * otherwise don't bother. Note that both bits being set is by |
@@ -148,13 +149,18 @@ void __init plat_time_init(void) | |||
148 | cd->max_delta_ns = clockevent_delta2ns(0xffffffff, cd); | 149 | cd->max_delta_ns = clockevent_delta2ns(0xffffffff, cd); |
149 | cd->min_delta_ns = clockevent_delta2ns(8, cd); /* ~0.25ms */ | 150 | cd->min_delta_ns = clockevent_delta2ns(8, cd); /* ~0.25ms */ |
150 | clockevents_register_device(cd); | 151 | clockevents_register_device(cd); |
151 | setup_irq(AU1000_RTC_MATCH2_INT, &au1x_rtcmatch2_irqaction); | 152 | setup_irq(m2int, &au1x_rtcmatch2_irqaction); |
152 | 153 | ||
153 | printk(KERN_INFO "Alchemy clocksource installed\n"); | 154 | printk(KERN_INFO "Alchemy clocksource installed\n"); |
154 | 155 | ||
155 | return; | 156 | return 0; |
156 | 157 | ||
157 | cntr_err: | 158 | cntr_err: |
159 | return -1; | ||
160 | } | ||
161 | |||
162 | static void __init alchemy_setup_c0timer(void) | ||
163 | { | ||
158 | /* | 164 | /* |
159 | * MIPS kernel assigns 'au1k_wait' to 'cpu_wait' before this | 165 | * MIPS kernel assigns 'au1k_wait' to 'cpu_wait' before this |
160 | * function is called. Because the Alchemy counters are unusable | 166 | * function is called. Because the Alchemy counters are unusable |
@@ -166,3 +172,22 @@ cntr_err: | |||
166 | r4k_clockevent_init(); | 172 | r4k_clockevent_init(); |
167 | init_r4k_clocksource(); | 173 | init_r4k_clocksource(); |
168 | } | 174 | } |
175 | |||
176 | static int alchemy_m2inttab[] __initdata = { | ||
177 | AU1000_RTC_MATCH2_INT, | ||
178 | AU1500_RTC_MATCH2_INT, | ||
179 | AU1100_RTC_MATCH2_INT, | ||
180 | AU1550_RTC_MATCH2_INT, | ||
181 | AU1200_RTC_MATCH2_INT, | ||
182 | }; | ||
183 | |||
184 | void __init plat_time_init(void) | ||
185 | { | ||
186 | int t; | ||
187 | |||
188 | t = alchemy_get_cputype(); | ||
189 | if (t == ALCHEMY_CPU_UNKNOWN) | ||
190 | alchemy_setup_c0timer(); | ||
191 | else if (alchemy_time_init(alchemy_m2inttab[t])) | ||
192 | alchemy_setup_c0timer(); | ||
193 | } | ||
diff --git a/arch/mips/alchemy/devboards/Makefile b/arch/mips/alchemy/devboards/Makefile index 730f9f2b30e8..ecbd37f9ee87 100644 --- a/arch/mips/alchemy/devboards/Makefile +++ b/arch/mips/alchemy/devboards/Makefile | |||
@@ -2,7 +2,7 @@ | |||
2 | # Alchemy Develboards | 2 | # Alchemy Develboards |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-y += prom.o | 5 | obj-y += prom.o bcsr.o platform.o |
6 | obj-$(CONFIG_PM) += pm.o | 6 | obj-$(CONFIG_PM) += pm.o |
7 | obj-$(CONFIG_MIPS_PB1000) += pb1000/ | 7 | obj-$(CONFIG_MIPS_PB1000) += pb1000/ |
8 | obj-$(CONFIG_MIPS_PB1100) += pb1100/ | 8 | obj-$(CONFIG_MIPS_PB1100) += pb1100/ |
@@ -11,8 +11,10 @@ obj-$(CONFIG_MIPS_PB1500) += pb1500/ | |||
11 | obj-$(CONFIG_MIPS_PB1550) += pb1550/ | 11 | obj-$(CONFIG_MIPS_PB1550) += pb1550/ |
12 | obj-$(CONFIG_MIPS_DB1000) += db1x00/ | 12 | obj-$(CONFIG_MIPS_DB1000) += db1x00/ |
13 | obj-$(CONFIG_MIPS_DB1100) += db1x00/ | 13 | obj-$(CONFIG_MIPS_DB1100) += db1x00/ |
14 | obj-$(CONFIG_MIPS_DB1200) += pb1200/ | 14 | obj-$(CONFIG_MIPS_DB1200) += db1200/ |
15 | obj-$(CONFIG_MIPS_DB1500) += db1x00/ | 15 | obj-$(CONFIG_MIPS_DB1500) += db1x00/ |
16 | obj-$(CONFIG_MIPS_DB1550) += db1x00/ | 16 | obj-$(CONFIG_MIPS_DB1550) += db1x00/ |
17 | obj-$(CONFIG_MIPS_BOSPORUS) += db1x00/ | 17 | obj-$(CONFIG_MIPS_BOSPORUS) += db1x00/ |
18 | obj-$(CONFIG_MIPS_MIRAGE) += db1x00/ | 18 | obj-$(CONFIG_MIPS_MIRAGE) += db1x00/ |
19 | |||
20 | EXTRA_CFLAGS += -Werror | ||
diff --git a/arch/mips/alchemy/devboards/bcsr.c b/arch/mips/alchemy/devboards/bcsr.c new file mode 100644 index 000000000000..3bc4fd2155d7 --- /dev/null +++ b/arch/mips/alchemy/devboards/bcsr.c | |||
@@ -0,0 +1,148 @@ | |||
1 | /* | ||
2 | * bcsr.h -- Db1xxx/Pb1xxx Devboard CPLD registers ("BCSR") abstraction. | ||
3 | * | ||
4 | * All Alchemy development boards (except, of course, the weird PB1000) | ||
5 | * have a few registers in a CPLD with standardised layout; they mostly | ||
6 | * only differ in base address. | ||
7 | * All registers are 16bits wide with 32bit spacing. | ||
8 | */ | ||
9 | |||
10 | #include <linux/interrupt.h> | ||
11 | #include <linux/module.h> | ||
12 | #include <linux/spinlock.h> | ||
13 | #include <asm/addrspace.h> | ||
14 | #include <asm/io.h> | ||
15 | #include <asm/mach-db1x00/bcsr.h> | ||
16 | |||
17 | static struct bcsr_reg { | ||
18 | void __iomem *raddr; | ||
19 | spinlock_t lock; | ||
20 | } bcsr_regs[BCSR_CNT]; | ||
21 | |||
22 | static void __iomem *bcsr_virt; /* KSEG1 addr of BCSR base */ | ||
23 | static int bcsr_csc_base; /* linux-irq of first cascaded irq */ | ||
24 | |||
25 | void __init bcsr_init(unsigned long bcsr1_phys, unsigned long bcsr2_phys) | ||
26 | { | ||
27 | int i; | ||
28 | |||
29 | bcsr1_phys = KSEG1ADDR(CPHYSADDR(bcsr1_phys)); | ||
30 | bcsr2_phys = KSEG1ADDR(CPHYSADDR(bcsr2_phys)); | ||
31 | |||
32 | bcsr_virt = (void __iomem *)bcsr1_phys; | ||
33 | |||
34 | for (i = 0; i < BCSR_CNT; i++) { | ||
35 | if (i >= BCSR_HEXLEDS) | ||
36 | bcsr_regs[i].raddr = (void __iomem *)bcsr2_phys + | ||
37 | (0x04 * (i - BCSR_HEXLEDS)); | ||
38 | else | ||
39 | bcsr_regs[i].raddr = (void __iomem *)bcsr1_phys + | ||
40 | (0x04 * i); | ||
41 | |||
42 | spin_lock_init(&bcsr_regs[i].lock); | ||
43 | } | ||
44 | } | ||
45 | |||
46 | unsigned short bcsr_read(enum bcsr_id reg) | ||
47 | { | ||
48 | unsigned short r; | ||
49 | unsigned long flags; | ||
50 | |||
51 | spin_lock_irqsave(&bcsr_regs[reg].lock, flags); | ||
52 | r = __raw_readw(bcsr_regs[reg].raddr); | ||
53 | spin_unlock_irqrestore(&bcsr_regs[reg].lock, flags); | ||
54 | return r; | ||
55 | } | ||
56 | EXPORT_SYMBOL_GPL(bcsr_read); | ||
57 | |||
58 | void bcsr_write(enum bcsr_id reg, unsigned short val) | ||
59 | { | ||
60 | unsigned long flags; | ||
61 | |||
62 | spin_lock_irqsave(&bcsr_regs[reg].lock, flags); | ||
63 | __raw_writew(val, bcsr_regs[reg].raddr); | ||
64 | wmb(); | ||
65 | spin_unlock_irqrestore(&bcsr_regs[reg].lock, flags); | ||
66 | } | ||
67 | EXPORT_SYMBOL_GPL(bcsr_write); | ||
68 | |||
69 | void bcsr_mod(enum bcsr_id reg, unsigned short clr, unsigned short set) | ||
70 | { | ||
71 | unsigned short r; | ||
72 | unsigned long flags; | ||
73 | |||
74 | spin_lock_irqsave(&bcsr_regs[reg].lock, flags); | ||
75 | r = __raw_readw(bcsr_regs[reg].raddr); | ||
76 | r &= ~clr; | ||
77 | r |= set; | ||
78 | __raw_writew(r, bcsr_regs[reg].raddr); | ||
79 | wmb(); | ||
80 | spin_unlock_irqrestore(&bcsr_regs[reg].lock, flags); | ||
81 | } | ||
82 | EXPORT_SYMBOL_GPL(bcsr_mod); | ||
83 | |||
84 | /* | ||
85 | * DB1200/PB1200 CPLD IRQ muxer | ||
86 | */ | ||
87 | static void bcsr_csc_handler(unsigned int irq, struct irq_desc *d) | ||
88 | { | ||
89 | unsigned short bisr = __raw_readw(bcsr_virt + BCSR_REG_INTSTAT); | ||
90 | |||
91 | for ( ; bisr; bisr &= bisr - 1) | ||
92 | generic_handle_irq(bcsr_csc_base + __ffs(bisr)); | ||
93 | } | ||
94 | |||
95 | /* NOTE: both the enable and mask bits must be cleared, otherwise the | ||
96 | * CPLD generates tons of spurious interrupts (at least on my DB1200). | ||
97 | * -- mlau | ||
98 | */ | ||
99 | static void bcsr_irq_mask(unsigned int irq_nr) | ||
100 | { | ||
101 | unsigned short v = 1 << (irq_nr - bcsr_csc_base); | ||
102 | __raw_writew(v, bcsr_virt + BCSR_REG_INTCLR); | ||
103 | __raw_writew(v, bcsr_virt + BCSR_REG_MASKCLR); | ||
104 | wmb(); | ||
105 | } | ||
106 | |||
107 | static void bcsr_irq_maskack(unsigned int irq_nr) | ||
108 | { | ||
109 | unsigned short v = 1 << (irq_nr - bcsr_csc_base); | ||
110 | __raw_writew(v, bcsr_virt + BCSR_REG_INTCLR); | ||
111 | __raw_writew(v, bcsr_virt + BCSR_REG_MASKCLR); | ||
112 | __raw_writew(v, bcsr_virt + BCSR_REG_INTSTAT); /* ack */ | ||
113 | wmb(); | ||
114 | } | ||
115 | |||
116 | static void bcsr_irq_unmask(unsigned int irq_nr) | ||
117 | { | ||
118 | unsigned short v = 1 << (irq_nr - bcsr_csc_base); | ||
119 | __raw_writew(v, bcsr_virt + BCSR_REG_INTSET); | ||
120 | __raw_writew(v, bcsr_virt + BCSR_REG_MASKSET); | ||
121 | wmb(); | ||
122 | } | ||
123 | |||
124 | static struct irq_chip bcsr_irq_type = { | ||
125 | .name = "CPLD", | ||
126 | .mask = bcsr_irq_mask, | ||
127 | .mask_ack = bcsr_irq_maskack, | ||
128 | .unmask = bcsr_irq_unmask, | ||
129 | }; | ||
130 | |||
131 | void __init bcsr_init_irq(int csc_start, int csc_end, int hook_irq) | ||
132 | { | ||
133 | unsigned int irq; | ||
134 | |||
135 | /* mask & disable & ack all */ | ||
136 | __raw_writew(0xffff, bcsr_virt + BCSR_REG_INTCLR); | ||
137 | __raw_writew(0xffff, bcsr_virt + BCSR_REG_MASKCLR); | ||
138 | __raw_writew(0xffff, bcsr_virt + BCSR_REG_INTSTAT); | ||
139 | wmb(); | ||
140 | |||
141 | bcsr_csc_base = csc_start; | ||
142 | |||
143 | for (irq = csc_start; irq <= csc_end; irq++) | ||
144 | set_irq_chip_and_handler_name(irq, &bcsr_irq_type, | ||
145 | handle_level_irq, "level"); | ||
146 | |||
147 | set_irq_chained_handler(hook_irq, bcsr_csc_handler); | ||
148 | } | ||
diff --git a/arch/mips/alchemy/devboards/db1200/Makefile b/arch/mips/alchemy/devboards/db1200/Makefile new file mode 100644 index 000000000000..17840a5e2738 --- /dev/null +++ b/arch/mips/alchemy/devboards/db1200/Makefile | |||
@@ -0,0 +1 @@ | |||
obj-y += setup.o platform.o | |||
diff --git a/arch/mips/alchemy/devboards/db1200/platform.c b/arch/mips/alchemy/devboards/db1200/platform.c new file mode 100644 index 000000000000..3cb95a98ab31 --- /dev/null +++ b/arch/mips/alchemy/devboards/db1200/platform.c | |||
@@ -0,0 +1,561 @@ | |||
1 | /* | ||
2 | * DBAu1200 board platform device registration | ||
3 | * | ||
4 | * Copyright (C) 2008-2009 Manuel Lauss | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/dma-mapping.h> | ||
22 | #include <linux/gpio.h> | ||
23 | #include <linux/i2c.h> | ||
24 | #include <linux/init.h> | ||
25 | #include <linux/io.h> | ||
26 | #include <linux/leds.h> | ||
27 | #include <linux/mmc/host.h> | ||
28 | #include <linux/mtd/mtd.h> | ||
29 | #include <linux/mtd/nand.h> | ||
30 | #include <linux/mtd/partitions.h> | ||
31 | #include <linux/platform_device.h> | ||
32 | #include <linux/serial_8250.h> | ||
33 | #include <linux/spi/spi.h> | ||
34 | #include <linux/spi/flash.h> | ||
35 | #include <linux/smc91x.h> | ||
36 | |||
37 | #include <asm/mach-au1x00/au1100_mmc.h> | ||
38 | #include <asm/mach-au1x00/au1xxx_dbdma.h> | ||
39 | #include <asm/mach-au1x00/au1550_spi.h> | ||
40 | #include <asm/mach-db1x00/bcsr.h> | ||
41 | #include <asm/mach-db1x00/db1200.h> | ||
42 | |||
43 | #include "../platform.h" | ||
44 | |||
45 | static struct mtd_partition db1200_spiflash_parts[] = { | ||
46 | { | ||
47 | .name = "DB1200 SPI flash", | ||
48 | .offset = 0, | ||
49 | .size = MTDPART_SIZ_FULL, | ||
50 | }, | ||
51 | }; | ||
52 | |||
53 | static struct flash_platform_data db1200_spiflash_data = { | ||
54 | .name = "s25fl001", | ||
55 | .parts = db1200_spiflash_parts, | ||
56 | .nr_parts = ARRAY_SIZE(db1200_spiflash_parts), | ||
57 | .type = "m25p10", | ||
58 | }; | ||
59 | |||
60 | static struct spi_board_info db1200_spi_devs[] __initdata = { | ||
61 | { | ||
62 | /* TI TMP121AIDBVR temp sensor */ | ||
63 | .modalias = "tmp121", | ||
64 | .max_speed_hz = 2000000, | ||
65 | .bus_num = 0, | ||
66 | .chip_select = 0, | ||
67 | .mode = 0, | ||
68 | }, | ||
69 | { | ||
70 | /* Spansion S25FL001D0FMA SPI flash */ | ||
71 | .modalias = "m25p80", | ||
72 | .max_speed_hz = 50000000, | ||
73 | .bus_num = 0, | ||
74 | .chip_select = 1, | ||
75 | .mode = 0, | ||
76 | .platform_data = &db1200_spiflash_data, | ||
77 | }, | ||
78 | }; | ||
79 | |||
80 | static struct i2c_board_info db1200_i2c_devs[] __initdata = { | ||
81 | { | ||
82 | /* AT24C04-10 I2C eeprom */ | ||
83 | I2C_BOARD_INFO("24c04", 0x52), | ||
84 | }, | ||
85 | { | ||
86 | /* Philips NE1619 temp/voltage sensor (adm1025 drv) */ | ||
87 | I2C_BOARD_INFO("ne1619", 0x2d), | ||
88 | }, | ||
89 | { | ||
90 | /* I2S audio codec WM8731 */ | ||
91 | I2C_BOARD_INFO("wm8731", 0x1b), | ||
92 | }, | ||
93 | }; | ||
94 | |||
95 | /**********************************************************************/ | ||
96 | |||
97 | static void au1200_nand_cmd_ctrl(struct mtd_info *mtd, int cmd, | ||
98 | unsigned int ctrl) | ||
99 | { | ||
100 | struct nand_chip *this = mtd->priv; | ||
101 | unsigned long ioaddr = (unsigned long)this->IO_ADDR_W; | ||
102 | |||
103 | ioaddr &= 0xffffff00; | ||
104 | |||
105 | if (ctrl & NAND_CLE) { | ||
106 | ioaddr += MEM_STNAND_CMD; | ||
107 | } else if (ctrl & NAND_ALE) { | ||
108 | ioaddr += MEM_STNAND_ADDR; | ||
109 | } else { | ||
110 | /* assume we want to r/w real data by default */ | ||
111 | ioaddr += MEM_STNAND_DATA; | ||
112 | } | ||
113 | this->IO_ADDR_R = this->IO_ADDR_W = (void __iomem *)ioaddr; | ||
114 | if (cmd != NAND_CMD_NONE) { | ||
115 | __raw_writeb(cmd, this->IO_ADDR_W); | ||
116 | wmb(); | ||
117 | } | ||
118 | } | ||
119 | |||
120 | static int au1200_nand_device_ready(struct mtd_info *mtd) | ||
121 | { | ||
122 | return __raw_readl((void __iomem *)MEM_STSTAT) & 1; | ||
123 | } | ||
124 | |||
125 | static const char *db1200_part_probes[] = { "cmdlinepart", NULL }; | ||
126 | |||
127 | static struct mtd_partition db1200_nand_parts[] = { | ||
128 | { | ||
129 | .name = "NAND FS 0", | ||
130 | .offset = 0, | ||
131 | .size = 8 * 1024 * 1024, | ||
132 | }, | ||
133 | { | ||
134 | .name = "NAND FS 1", | ||
135 | .offset = MTDPART_OFS_APPEND, | ||
136 | .size = MTDPART_SIZ_FULL | ||
137 | }, | ||
138 | }; | ||
139 | |||
140 | struct platform_nand_data db1200_nand_platdata = { | ||
141 | .chip = { | ||
142 | .nr_chips = 1, | ||
143 | .chip_offset = 0, | ||
144 | .nr_partitions = ARRAY_SIZE(db1200_nand_parts), | ||
145 | .partitions = db1200_nand_parts, | ||
146 | .chip_delay = 20, | ||
147 | .part_probe_types = db1200_part_probes, | ||
148 | }, | ||
149 | .ctrl = { | ||
150 | .dev_ready = au1200_nand_device_ready, | ||
151 | .cmd_ctrl = au1200_nand_cmd_ctrl, | ||
152 | }, | ||
153 | }; | ||
154 | |||
155 | static struct resource db1200_nand_res[] = { | ||
156 | [0] = { | ||
157 | .start = DB1200_NAND_PHYS_ADDR, | ||
158 | .end = DB1200_NAND_PHYS_ADDR + 0xff, | ||
159 | .flags = IORESOURCE_MEM, | ||
160 | }, | ||
161 | }; | ||
162 | |||
163 | static struct platform_device db1200_nand_dev = { | ||
164 | .name = "gen_nand", | ||
165 | .num_resources = ARRAY_SIZE(db1200_nand_res), | ||
166 | .resource = db1200_nand_res, | ||
167 | .id = -1, | ||
168 | .dev = { | ||
169 | .platform_data = &db1200_nand_platdata, | ||
170 | } | ||
171 | }; | ||
172 | |||
173 | /**********************************************************************/ | ||
174 | |||
175 | static struct smc91x_platdata db1200_eth_data = { | ||
176 | .flags = SMC91X_NOWAIT | SMC91X_USE_16BIT, | ||
177 | .leda = RPC_LED_100_10, | ||
178 | .ledb = RPC_LED_TX_RX, | ||
179 | }; | ||
180 | |||
181 | static struct resource db1200_eth_res[] = { | ||
182 | [0] = { | ||
183 | .start = DB1200_ETH_PHYS_ADDR, | ||
184 | .end = DB1200_ETH_PHYS_ADDR + 0xf, | ||
185 | .flags = IORESOURCE_MEM, | ||
186 | }, | ||
187 | [1] = { | ||
188 | .start = DB1200_ETH_INT, | ||
189 | .end = DB1200_ETH_INT, | ||
190 | .flags = IORESOURCE_IRQ, | ||
191 | }, | ||
192 | }; | ||
193 | |||
194 | static struct platform_device db1200_eth_dev = { | ||
195 | .dev = { | ||
196 | .platform_data = &db1200_eth_data, | ||
197 | }, | ||
198 | .name = "smc91x", | ||
199 | .id = -1, | ||
200 | .num_resources = ARRAY_SIZE(db1200_eth_res), | ||
201 | .resource = db1200_eth_res, | ||
202 | }; | ||
203 | |||
204 | /**********************************************************************/ | ||
205 | |||
206 | static struct resource db1200_ide_res[] = { | ||
207 | [0] = { | ||
208 | .start = DB1200_IDE_PHYS_ADDR, | ||
209 | .end = DB1200_IDE_PHYS_ADDR + DB1200_IDE_PHYS_LEN - 1, | ||
210 | .flags = IORESOURCE_MEM, | ||
211 | }, | ||
212 | [1] = { | ||
213 | .start = DB1200_IDE_INT, | ||
214 | .end = DB1200_IDE_INT, | ||
215 | .flags = IORESOURCE_IRQ, | ||
216 | } | ||
217 | }; | ||
218 | |||
219 | static u64 ide_dmamask = DMA_32BIT_MASK; | ||
220 | |||
221 | static struct platform_device db1200_ide_dev = { | ||
222 | .name = "au1200-ide", | ||
223 | .id = 0, | ||
224 | .dev = { | ||
225 | .dma_mask = &ide_dmamask, | ||
226 | .coherent_dma_mask = DMA_32BIT_MASK, | ||
227 | }, | ||
228 | .num_resources = ARRAY_SIZE(db1200_ide_res), | ||
229 | .resource = db1200_ide_res, | ||
230 | }; | ||
231 | |||
232 | /**********************************************************************/ | ||
233 | |||
234 | static struct platform_device db1200_rtc_dev = { | ||
235 | .name = "rtc-au1xxx", | ||
236 | .id = -1, | ||
237 | }; | ||
238 | |||
239 | /**********************************************************************/ | ||
240 | |||
241 | /* SD carddetects: they're supposed to be edge-triggered, but ack | ||
242 | * doesn't seem to work (CPLD Rev 2). Instead, the screaming one | ||
243 | * is disabled and its counterpart enabled. The 500ms timeout is | ||
244 | * because the carddetect isn't debounced in hardware. | ||
245 | */ | ||
246 | static irqreturn_t db1200_mmc_cd(int irq, void *ptr) | ||
247 | { | ||
248 | void(*mmc_cd)(struct mmc_host *, unsigned long); | ||
249 | |||
250 | if (irq == DB1200_SD0_INSERT_INT) { | ||
251 | disable_irq_nosync(DB1200_SD0_INSERT_INT); | ||
252 | enable_irq(DB1200_SD0_EJECT_INT); | ||
253 | } else { | ||
254 | disable_irq_nosync(DB1200_SD0_EJECT_INT); | ||
255 | enable_irq(DB1200_SD0_INSERT_INT); | ||
256 | } | ||
257 | |||
258 | /* link against CONFIG_MMC=m */ | ||
259 | mmc_cd = symbol_get(mmc_detect_change); | ||
260 | if (mmc_cd) { | ||
261 | mmc_cd(ptr, msecs_to_jiffies(500)); | ||
262 | symbol_put(mmc_detect_change); | ||
263 | } | ||
264 | |||
265 | return IRQ_HANDLED; | ||
266 | } | ||
267 | |||
268 | static int db1200_mmc_cd_setup(void *mmc_host, int en) | ||
269 | { | ||
270 | int ret; | ||
271 | |||
272 | if (en) { | ||
273 | ret = request_irq(DB1200_SD0_INSERT_INT, db1200_mmc_cd, | ||
274 | IRQF_DISABLED, "sd_insert", mmc_host); | ||
275 | if (ret) | ||
276 | goto out; | ||
277 | |||
278 | ret = request_irq(DB1200_SD0_EJECT_INT, db1200_mmc_cd, | ||
279 | IRQF_DISABLED, "sd_eject", mmc_host); | ||
280 | if (ret) { | ||
281 | free_irq(DB1200_SD0_INSERT_INT, mmc_host); | ||
282 | goto out; | ||
283 | } | ||
284 | |||
285 | if (bcsr_read(BCSR_SIGSTAT) & BCSR_INT_SD0INSERT) | ||
286 | enable_irq(DB1200_SD0_EJECT_INT); | ||
287 | else | ||
288 | enable_irq(DB1200_SD0_INSERT_INT); | ||
289 | |||
290 | } else { | ||
291 | free_irq(DB1200_SD0_INSERT_INT, mmc_host); | ||
292 | free_irq(DB1200_SD0_EJECT_INT, mmc_host); | ||
293 | } | ||
294 | ret = 0; | ||
295 | out: | ||
296 | return ret; | ||
297 | } | ||
298 | |||
299 | static void db1200_mmc_set_power(void *mmc_host, int state) | ||
300 | { | ||
301 | if (state) { | ||
302 | bcsr_mod(BCSR_BOARD, 0, BCSR_BOARD_SD0PWR); | ||
303 | msleep(400); /* stabilization time */ | ||
304 | } else | ||
305 | bcsr_mod(BCSR_BOARD, BCSR_BOARD_SD0PWR, 0); | ||
306 | } | ||
307 | |||
308 | static int db1200_mmc_card_readonly(void *mmc_host) | ||
309 | { | ||
310 | return (bcsr_read(BCSR_STATUS) & BCSR_STATUS_SD0WP) ? 1 : 0; | ||
311 | } | ||
312 | |||
313 | static int db1200_mmc_card_inserted(void *mmc_host) | ||
314 | { | ||
315 | return (bcsr_read(BCSR_SIGSTAT) & BCSR_INT_SD0INSERT) ? 1 : 0; | ||
316 | } | ||
317 | |||
318 | static void db1200_mmcled_set(struct led_classdev *led, | ||
319 | enum led_brightness brightness) | ||
320 | { | ||
321 | if (brightness != LED_OFF) | ||
322 | bcsr_mod(BCSR_LEDS, BCSR_LEDS_LED0, 0); | ||
323 | else | ||
324 | bcsr_mod(BCSR_LEDS, 0, BCSR_LEDS_LED0); | ||
325 | } | ||
326 | |||
327 | static struct led_classdev db1200_mmc_led = { | ||
328 | .brightness_set = db1200_mmcled_set, | ||
329 | }; | ||
330 | |||
331 | /* needed by arch/mips/alchemy/common/platform.c */ | ||
332 | struct au1xmmc_platform_data au1xmmc_platdata[] = { | ||
333 | [0] = { | ||
334 | .cd_setup = db1200_mmc_cd_setup, | ||
335 | .set_power = db1200_mmc_set_power, | ||
336 | .card_inserted = db1200_mmc_card_inserted, | ||
337 | .card_readonly = db1200_mmc_card_readonly, | ||
338 | .led = &db1200_mmc_led, | ||
339 | }, | ||
340 | }; | ||
341 | |||
342 | /**********************************************************************/ | ||
343 | |||
344 | static struct resource au1200_psc0_res[] = { | ||
345 | [0] = { | ||
346 | .start = PSC0_PHYS_ADDR, | ||
347 | .end = PSC0_PHYS_ADDR + 0x000fffff, | ||
348 | .flags = IORESOURCE_MEM, | ||
349 | }, | ||
350 | [1] = { | ||
351 | .start = AU1200_PSC0_INT, | ||
352 | .end = AU1200_PSC0_INT, | ||
353 | .flags = IORESOURCE_IRQ, | ||
354 | }, | ||
355 | [2] = { | ||
356 | .start = DSCR_CMD0_PSC0_TX, | ||
357 | .end = DSCR_CMD0_PSC0_TX, | ||
358 | .flags = IORESOURCE_DMA, | ||
359 | }, | ||
360 | [3] = { | ||
361 | .start = DSCR_CMD0_PSC0_RX, | ||
362 | .end = DSCR_CMD0_PSC0_RX, | ||
363 | .flags = IORESOURCE_DMA, | ||
364 | }, | ||
365 | }; | ||
366 | |||
367 | static struct platform_device db1200_i2c_dev = { | ||
368 | .name = "au1xpsc_smbus", | ||
369 | .id = 0, /* bus number */ | ||
370 | .num_resources = ARRAY_SIZE(au1200_psc0_res), | ||
371 | .resource = au1200_psc0_res, | ||
372 | }; | ||
373 | |||
374 | static void db1200_spi_cs_en(struct au1550_spi_info *spi, int cs, int pol) | ||
375 | { | ||
376 | if (cs) | ||
377 | bcsr_mod(BCSR_RESETS, 0, BCSR_RESETS_SPISEL); | ||
378 | else | ||
379 | bcsr_mod(BCSR_RESETS, BCSR_RESETS_SPISEL, 0); | ||
380 | } | ||
381 | |||
382 | static struct au1550_spi_info db1200_spi_platdata = { | ||
383 | .mainclk_hz = 50000000, /* PSC0 clock */ | ||
384 | .num_chipselect = 2, | ||
385 | .activate_cs = db1200_spi_cs_en, | ||
386 | }; | ||
387 | |||
388 | static u64 spi_dmamask = DMA_32BIT_MASK; | ||
389 | |||
390 | static struct platform_device db1200_spi_dev = { | ||
391 | .dev = { | ||
392 | .dma_mask = &spi_dmamask, | ||
393 | .coherent_dma_mask = DMA_32BIT_MASK, | ||
394 | .platform_data = &db1200_spi_platdata, | ||
395 | }, | ||
396 | .name = "au1550-spi", | ||
397 | .id = 0, /* bus number */ | ||
398 | .num_resources = ARRAY_SIZE(au1200_psc0_res), | ||
399 | .resource = au1200_psc0_res, | ||
400 | }; | ||
401 | |||
402 | static struct resource au1200_psc1_res[] = { | ||
403 | [0] = { | ||
404 | .start = PSC1_PHYS_ADDR, | ||
405 | .end = PSC1_PHYS_ADDR + 0x000fffff, | ||
406 | .flags = IORESOURCE_MEM, | ||
407 | }, | ||
408 | [1] = { | ||
409 | .start = AU1200_PSC1_INT, | ||
410 | .end = AU1200_PSC1_INT, | ||
411 | .flags = IORESOURCE_IRQ, | ||
412 | }, | ||
413 | [2] = { | ||
414 | .start = DSCR_CMD0_PSC1_TX, | ||
415 | .end = DSCR_CMD0_PSC1_TX, | ||
416 | .flags = IORESOURCE_DMA, | ||
417 | }, | ||
418 | [3] = { | ||
419 | .start = DSCR_CMD0_PSC1_RX, | ||
420 | .end = DSCR_CMD0_PSC1_RX, | ||
421 | .flags = IORESOURCE_DMA, | ||
422 | }, | ||
423 | }; | ||
424 | |||
425 | static struct platform_device db1200_audio_dev = { | ||
426 | /* name assigned later based on switch setting */ | ||
427 | .id = 1, /* PSC ID */ | ||
428 | .num_resources = ARRAY_SIZE(au1200_psc1_res), | ||
429 | .resource = au1200_psc1_res, | ||
430 | }; | ||
431 | |||
432 | static struct platform_device *db1200_devs[] __initdata = { | ||
433 | NULL, /* PSC0, selected by S6.8 */ | ||
434 | &db1200_ide_dev, | ||
435 | &db1200_eth_dev, | ||
436 | &db1200_rtc_dev, | ||
437 | &db1200_nand_dev, | ||
438 | &db1200_audio_dev, | ||
439 | }; | ||
440 | |||
441 | static int __init db1200_dev_init(void) | ||
442 | { | ||
443 | unsigned long pfc; | ||
444 | unsigned short sw; | ||
445 | int swapped; | ||
446 | |||
447 | i2c_register_board_info(0, db1200_i2c_devs, | ||
448 | ARRAY_SIZE(db1200_i2c_devs)); | ||
449 | spi_register_board_info(db1200_spi_devs, | ||
450 | ARRAY_SIZE(db1200_i2c_devs)); | ||
451 | |||
452 | /* SWITCHES: S6.8 I2C/SPI selector (OFF=I2C ON=SPI) | ||
453 | * S6.7 AC97/I2S selector (OFF=AC97 ON=I2S) | ||
454 | */ | ||
455 | |||
456 | /* NOTE: GPIO215 controls OTG VBUS supply. In SPI mode however | ||
457 | * this pin is claimed by PSC0 (unused though, but pinmux doesn't | ||
458 | * allow to free it without crippling the SPI interface). | ||
459 | * As a result, in SPI mode, OTG simply won't work (PSC0 uses | ||
460 | * it as an input pin which is pulled high on the boards). | ||
461 | */ | ||
462 | pfc = __raw_readl((void __iomem *)SYS_PINFUNC) & ~SYS_PINFUNC_P0A; | ||
463 | |||
464 | /* switch off OTG VBUS supply */ | ||
465 | gpio_request(215, "otg-vbus"); | ||
466 | gpio_direction_output(215, 1); | ||
467 | |||
468 | printk(KERN_INFO "DB1200 device configuration:\n"); | ||
469 | |||
470 | sw = bcsr_read(BCSR_SWITCHES); | ||
471 | if (sw & BCSR_SWITCHES_DIP_8) { | ||
472 | db1200_devs[0] = &db1200_i2c_dev; | ||
473 | bcsr_mod(BCSR_RESETS, BCSR_RESETS_PSC0MUX, 0); | ||
474 | |||
475 | pfc |= (2 << 17); /* GPIO2 block owns GPIO215 */ | ||
476 | |||
477 | printk(KERN_INFO " S6.8 OFF: PSC0 mode I2C\n"); | ||
478 | printk(KERN_INFO " OTG port VBUS supply available!\n"); | ||
479 | } else { | ||
480 | db1200_devs[0] = &db1200_spi_dev; | ||
481 | bcsr_mod(BCSR_RESETS, 0, BCSR_RESETS_PSC0MUX); | ||
482 | |||
483 | pfc |= (1 << 17); /* PSC0 owns GPIO215 */ | ||
484 | |||
485 | printk(KERN_INFO " S6.8 ON : PSC0 mode SPI\n"); | ||
486 | printk(KERN_INFO " OTG port VBUS supply disabled\n"); | ||
487 | } | ||
488 | __raw_writel(pfc, (void __iomem *)SYS_PINFUNC); | ||
489 | wmb(); | ||
490 | |||
491 | /* Audio: DIP7 selects I2S(0)/AC97(1), but need I2C for I2S! | ||
492 | * so: DIP7=1 || DIP8=0 => AC97, DIP7=0 && DIP8=1 => I2S | ||
493 | */ | ||
494 | sw &= BCSR_SWITCHES_DIP_8 | BCSR_SWITCHES_DIP_7; | ||
495 | if (sw == BCSR_SWITCHES_DIP_8) { | ||
496 | bcsr_mod(BCSR_RESETS, 0, BCSR_RESETS_PSC1MUX); | ||
497 | db1200_audio_dev.name = "au1xpsc_i2s"; | ||
498 | printk(KERN_INFO " S6.7 ON : PSC1 mode I2S\n"); | ||
499 | } else { | ||
500 | bcsr_mod(BCSR_RESETS, BCSR_RESETS_PSC1MUX, 0); | ||
501 | db1200_audio_dev.name = "au1xpsc_ac97"; | ||
502 | printk(KERN_INFO " S6.7 OFF: PSC1 mode AC97\n"); | ||
503 | } | ||
504 | |||
505 | /* Audio PSC clock is supplied externally. (FIXME: platdata!!) */ | ||
506 | __raw_writel(PSC_SEL_CLK_SERCLK, | ||
507 | (void __iomem *)KSEG1ADDR(PSC1_PHYS_ADDR) + PSC_SEL_OFFSET); | ||
508 | wmb(); | ||
509 | |||
510 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR, | ||
511 | PCMCIA_ATTR_PHYS_ADDR + 0x000400000 - 1, | ||
512 | PCMCIA_MEM_PHYS_ADDR, | ||
513 | PCMCIA_MEM_PHYS_ADDR + 0x000400000 - 1, | ||
514 | PCMCIA_IO_PHYS_ADDR, | ||
515 | PCMCIA_IO_PHYS_ADDR + 0x000010000 - 1, | ||
516 | DB1200_PC0_INT, | ||
517 | DB1200_PC0_INSERT_INT, | ||
518 | /*DB1200_PC0_STSCHG_INT*/0, | ||
519 | DB1200_PC0_EJECT_INT, | ||
520 | 0); | ||
521 | |||
522 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR + 0x004000000, | ||
523 | PCMCIA_ATTR_PHYS_ADDR + 0x004400000 - 1, | ||
524 | PCMCIA_MEM_PHYS_ADDR + 0x004000000, | ||
525 | PCMCIA_MEM_PHYS_ADDR + 0x004400000 - 1, | ||
526 | PCMCIA_IO_PHYS_ADDR + 0x004000000, | ||
527 | PCMCIA_IO_PHYS_ADDR + 0x004010000 - 1, | ||
528 | DB1200_PC1_INT, | ||
529 | DB1200_PC1_INSERT_INT, | ||
530 | /*DB1200_PC1_STSCHG_INT*/0, | ||
531 | DB1200_PC1_EJECT_INT, | ||
532 | 1); | ||
533 | |||
534 | swapped = bcsr_read(BCSR_STATUS) & BCSR_STATUS_DB1200_SWAPBOOT; | ||
535 | db1x_register_norflash(64 << 20, 2, swapped); | ||
536 | |||
537 | return platform_add_devices(db1200_devs, ARRAY_SIZE(db1200_devs)); | ||
538 | } | ||
539 | device_initcall(db1200_dev_init); | ||
540 | |||
541 | /* au1200fb calls these: STERBT EINEN TRAGISCHEN TOD!!! */ | ||
542 | int board_au1200fb_panel(void) | ||
543 | { | ||
544 | return (bcsr_read(BCSR_SWITCHES) >> 8) & 0x0f; | ||
545 | } | ||
546 | |||
547 | int board_au1200fb_panel_init(void) | ||
548 | { | ||
549 | /* Apply power */ | ||
550 | bcsr_mod(BCSR_BOARD, 0, BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | | ||
551 | BCSR_BOARD_LCDBL); | ||
552 | return 0; | ||
553 | } | ||
554 | |||
555 | int board_au1200fb_panel_shutdown(void) | ||
556 | { | ||
557 | /* Remove power */ | ||
558 | bcsr_mod(BCSR_BOARD, BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | | ||
559 | BCSR_BOARD_LCDBL, 0); | ||
560 | return 0; | ||
561 | } | ||
diff --git a/arch/mips/alchemy/devboards/db1200/setup.c b/arch/mips/alchemy/devboards/db1200/setup.c new file mode 100644 index 000000000000..887619547553 --- /dev/null +++ b/arch/mips/alchemy/devboards/db1200/setup.c | |||
@@ -0,0 +1,82 @@ | |||
1 | /* | ||
2 | * Alchemy/AMD/RMI DB1200 board setup. | ||
3 | * | ||
4 | * Licensed under the terms outlined in the file COPYING in the root of | ||
5 | * this source archive. | ||
6 | */ | ||
7 | |||
8 | #include <linux/init.h> | ||
9 | #include <linux/interrupt.h> | ||
10 | #include <linux/io.h> | ||
11 | #include <linux/kernel.h> | ||
12 | #include <asm/mach-au1x00/au1000.h> | ||
13 | #include <asm/mach-db1x00/bcsr.h> | ||
14 | #include <asm/mach-db1x00/db1200.h> | ||
15 | |||
16 | const char *get_system_type(void) | ||
17 | { | ||
18 | return "Alchemy Db1200"; | ||
19 | } | ||
20 | |||
21 | void __init board_setup(void) | ||
22 | { | ||
23 | unsigned long freq0, clksrc, div, pfc; | ||
24 | unsigned short whoami; | ||
25 | |||
26 | bcsr_init(DB1200_BCSR_PHYS_ADDR, | ||
27 | DB1200_BCSR_PHYS_ADDR + DB1200_BCSR_HEXLED_OFS); | ||
28 | |||
29 | whoami = bcsr_read(BCSR_WHOAMI); | ||
30 | printk(KERN_INFO "Alchemy/AMD/RMI DB1200 Board, CPLD Rev %d" | ||
31 | " Board-ID %d Daughtercard ID %d\n", | ||
32 | (whoami >> 4) & 0xf, (whoami >> 8) & 0xf, whoami & 0xf); | ||
33 | |||
34 | /* SMBus/SPI on PSC0, Audio on PSC1 */ | ||
35 | pfc = __raw_readl((void __iomem *)SYS_PINFUNC); | ||
36 | pfc &= ~(SYS_PINFUNC_P0A | SYS_PINFUNC_P0B); | ||
37 | pfc &= ~(SYS_PINFUNC_P1A | SYS_PINFUNC_P1B | SYS_PINFUNC_FS3); | ||
38 | pfc |= SYS_PINFUNC_P1C; /* SPI is configured later */ | ||
39 | __raw_writel(pfc, (void __iomem *)SYS_PINFUNC); | ||
40 | wmb(); | ||
41 | |||
42 | /* Clock configurations: PSC0: ~50MHz via Clkgen0, derived from | ||
43 | * CPU clock; all other clock generators off/unused. | ||
44 | */ | ||
45 | div = (get_au1x00_speed() + 25000000) / 50000000; | ||
46 | if (div & 1) | ||
47 | div++; | ||
48 | div = ((div >> 1) - 1) & 0xff; | ||
49 | |||
50 | freq0 = div << SYS_FC_FRDIV0_BIT; | ||
51 | __raw_writel(freq0, (void __iomem *)SYS_FREQCTRL0); | ||
52 | wmb(); | ||
53 | freq0 |= SYS_FC_FE0; /* enable F0 */ | ||
54 | __raw_writel(freq0, (void __iomem *)SYS_FREQCTRL0); | ||
55 | wmb(); | ||
56 | |||
57 | /* psc0_intclk comes 1:1 from F0 */ | ||
58 | clksrc = SYS_CS_MUX_FQ0 << SYS_CS_ME0_BIT; | ||
59 | __raw_writel(clksrc, (void __iomem *)SYS_CLKSRC); | ||
60 | wmb(); | ||
61 | } | ||
62 | |||
63 | static int __init db1200_arch_init(void) | ||
64 | { | ||
65 | /* GPIO7 is low-level triggered CPLD cascade */ | ||
66 | set_irq_type(AU1200_GPIO7_INT, IRQF_TRIGGER_LOW); | ||
67 | bcsr_init_irq(DB1200_INT_BEGIN, DB1200_INT_END, AU1200_GPIO7_INT); | ||
68 | |||
69 | /* insert/eject pairs: one of both is always screaming. To avoid | ||
70 | * issues they must not be automatically enabled when initially | ||
71 | * requested. | ||
72 | */ | ||
73 | irq_to_desc(DB1200_SD0_INSERT_INT)->status |= IRQ_NOAUTOEN; | ||
74 | irq_to_desc(DB1200_SD0_EJECT_INT)->status |= IRQ_NOAUTOEN; | ||
75 | irq_to_desc(DB1200_PC0_INSERT_INT)->status |= IRQ_NOAUTOEN; | ||
76 | irq_to_desc(DB1200_PC0_EJECT_INT)->status |= IRQ_NOAUTOEN; | ||
77 | irq_to_desc(DB1200_PC1_INSERT_INT)->status |= IRQ_NOAUTOEN; | ||
78 | irq_to_desc(DB1200_PC1_EJECT_INT)->status |= IRQ_NOAUTOEN; | ||
79 | |||
80 | return 0; | ||
81 | } | ||
82 | arch_initcall(db1200_arch_init); | ||
diff --git a/arch/mips/alchemy/devboards/db1x00/Makefile b/arch/mips/alchemy/devboards/db1x00/Makefile index 432241ab8677..613c0c0c8be9 100644 --- a/arch/mips/alchemy/devboards/db1x00/Makefile +++ b/arch/mips/alchemy/devboards/db1x00/Makefile | |||
@@ -5,4 +5,4 @@ | |||
5 | # Makefile for the Alchemy Semiconductor DBAu1xx0 boards. | 5 | # Makefile for the Alchemy Semiconductor DBAu1xx0 boards. |
6 | # | 6 | # |
7 | 7 | ||
8 | obj-y := board_setup.o irqmap.o | 8 | obj-y := board_setup.o platform.o |
diff --git a/arch/mips/alchemy/devboards/db1x00/board_setup.c b/arch/mips/alchemy/devboards/db1x00/board_setup.c index de30d8ea7176..50c9bef99daa 100644 --- a/arch/mips/alchemy/devboards/db1x00/board_setup.c +++ b/arch/mips/alchemy/devboards/db1x00/board_setup.c | |||
@@ -29,59 +29,139 @@ | |||
29 | 29 | ||
30 | #include <linux/gpio.h> | 30 | #include <linux/gpio.h> |
31 | #include <linux/init.h> | 31 | #include <linux/init.h> |
32 | #include <linux/interrupt.h> | ||
33 | #include <linux/pm.h> | ||
32 | 34 | ||
33 | #include <asm/mach-au1x00/au1000.h> | 35 | #include <asm/mach-au1x00/au1000.h> |
36 | #include <asm/mach-au1x00/au1xxx_eth.h> | ||
34 | #include <asm/mach-db1x00/db1x00.h> | 37 | #include <asm/mach-db1x00/db1x00.h> |
38 | #include <asm/mach-db1x00/bcsr.h> | ||
39 | #include <asm/reboot.h> | ||
35 | 40 | ||
36 | #include <prom.h> | 41 | #include <prom.h> |
37 | 42 | ||
43 | #ifdef CONFIG_MIPS_DB1500 | ||
44 | char irq_tab_alchemy[][5] __initdata = { | ||
45 | [12] = { -1, AU1500_PCI_INTA, 0xff, 0xff, 0xff }, /* IDSEL 12 - HPT371 */ | ||
46 | [13] = { -1, AU1500_PCI_INTA, AU1500_PCI_INTB, AU1500_PCI_INTC, AU1500_PCI_INTD }, /* IDSEL 13 - PCI slot */ | ||
47 | }; | ||
48 | |||
49 | #endif | ||
38 | 50 | ||
39 | static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; | 51 | |
52 | #ifdef CONFIG_MIPS_DB1550 | ||
53 | char irq_tab_alchemy[][5] __initdata = { | ||
54 | [11] = { -1, AU1550_PCI_INTC, 0xff, 0xff, 0xff }, /* IDSEL 11 - on-board HPT371 */ | ||
55 | [12] = { -1, AU1550_PCI_INTB, AU1550_PCI_INTC, AU1550_PCI_INTD, AU1550_PCI_INTA }, /* IDSEL 12 - PCI slot 2 (left) */ | ||
56 | [13] = { -1, AU1550_PCI_INTA, AU1550_PCI_INTB, AU1550_PCI_INTC, AU1550_PCI_INTD }, /* IDSEL 13 - PCI slot 1 (right) */ | ||
57 | }; | ||
58 | #endif | ||
59 | |||
60 | |||
61 | #ifdef CONFIG_MIPS_BOSPORUS | ||
62 | char irq_tab_alchemy[][5] __initdata = { | ||
63 | [11] = { -1, AU1500_PCI_INTA, AU1500_PCI_INTB, 0xff, 0xff }, /* IDSEL 11 - miniPCI */ | ||
64 | [12] = { -1, AU1500_PCI_INTA, 0xff, 0xff, 0xff }, /* IDSEL 12 - SN1741 */ | ||
65 | [13] = { -1, AU1500_PCI_INTA, AU1500_PCI_INTB, AU1500_PCI_INTC, AU1500_PCI_INTD }, /* IDSEL 13 - PCI slot */ | ||
66 | }; | ||
67 | |||
68 | /* | ||
69 | * Micrel/Kendin 5 port switch attached to MAC0, | ||
70 | * MAC0 is associated with PHY address 5 (== WAN port) | ||
71 | * MAC1 is not associated with any PHY, since it's connected directly | ||
72 | * to the switch. | ||
73 | * no interrupts are used | ||
74 | */ | ||
75 | static struct au1000_eth_platform_data eth0_pdata = { | ||
76 | .phy_static_config = 1, | ||
77 | .phy_addr = 5, | ||
78 | }; | ||
79 | |||
80 | static void bosporus_power_off(void) | ||
81 | { | ||
82 | printk(KERN_INFO "It's now safe to turn off power\n"); | ||
83 | while (1) | ||
84 | asm volatile (".set mips3 ; wait ; .set mips0"); | ||
85 | } | ||
40 | 86 | ||
41 | const char *get_system_type(void) | 87 | const char *get_system_type(void) |
42 | { | 88 | { |
43 | #ifdef CONFIG_MIPS_BOSPORUS | ||
44 | return "Alchemy Bosporus Gateway Reference"; | 89 | return "Alchemy Bosporus Gateway Reference"; |
45 | #else | 90 | } |
46 | return "Alchemy Db1x00"; | ||
47 | #endif | 91 | #endif |
92 | |||
93 | |||
94 | #ifdef CONFIG_MIPS_MIRAGE | ||
95 | char irq_tab_alchemy[][5] __initdata = { | ||
96 | [11] = { -1, AU1500_PCI_INTD, 0xff, 0xff, 0xff }, /* IDSEL 11 - SMI VGX */ | ||
97 | [12] = { -1, 0xff, 0xff, AU1500_PCI_INTC, 0xff }, /* IDSEL 12 - PNX1300 */ | ||
98 | [13] = { -1, AU1500_PCI_INTA, AU1500_PCI_INTB, 0xff, 0xff }, /* IDSEL 13 - miniPCI */ | ||
99 | }; | ||
100 | |||
101 | static void mirage_power_off(void) | ||
102 | { | ||
103 | alchemy_gpio_direction_output(210, 1); | ||
104 | } | ||
105 | |||
106 | const char *get_system_type(void) | ||
107 | { | ||
108 | return "Alchemy Mirage"; | ||
109 | } | ||
110 | #endif | ||
111 | |||
112 | |||
113 | #if defined(CONFIG_MIPS_BOSPORUS) || defined(CONFIG_MIPS_MIRAGE) | ||
114 | static void mips_softreset(void) | ||
115 | { | ||
116 | asm volatile ("jr\t%0" : : "r"(0xbfc00000)); | ||
48 | } | 117 | } |
49 | 118 | ||
50 | void board_reset(void) | 119 | #else |
120 | |||
121 | const char *get_system_type(void) | ||
51 | { | 122 | { |
52 | /* Hit BCSR.SW_RESET[RESET] */ | 123 | return "Alchemy Db1x00"; |
53 | bcsr->swreset = 0x0000; | ||
54 | } | 124 | } |
125 | #endif | ||
126 | |||
55 | 127 | ||
56 | void __init board_setup(void) | 128 | void __init board_setup(void) |
57 | { | 129 | { |
58 | u32 pin_func = 0; | 130 | unsigned long bcsr1, bcsr2; |
59 | char *argptr; | 131 | u32 pin_func; |
60 | 132 | ||
61 | argptr = prom_getcmdline(); | 133 | bcsr1 = DB1000_BCSR_PHYS_ADDR; |
62 | #ifdef CONFIG_SERIAL_8250_CONSOLE | 134 | bcsr2 = DB1000_BCSR_PHYS_ADDR + DB1000_BCSR_HEXLED_OFS; |
63 | argptr = strstr(argptr, "console="); | 135 | |
64 | if (argptr == NULL) { | 136 | pin_func = 0; |
65 | argptr = prom_getcmdline(); | 137 | |
66 | strcat(argptr, " console=ttyS0,115200"); | 138 | #ifdef CONFIG_MIPS_DB1000 |
67 | } | 139 | printk(KERN_INFO "AMD Alchemy Au1000/Db1000 Board\n"); |
140 | #endif | ||
141 | #ifdef CONFIG_MIPS_DB1500 | ||
142 | printk(KERN_INFO "AMD Alchemy Au1500/Db1500 Board\n"); | ||
68 | #endif | 143 | #endif |
144 | #ifdef CONFIG_MIPS_DB1100 | ||
145 | printk(KERN_INFO "AMD Alchemy Au1100/Db1100 Board\n"); | ||
146 | #endif | ||
147 | #ifdef CONFIG_MIPS_BOSPORUS | ||
148 | au1xxx_override_eth_cfg(0, ð0_pdata); | ||
69 | 149 | ||
70 | #ifdef CONFIG_FB_AU1100 | 150 | printk(KERN_INFO "AMD Alchemy Bosporus Board\n"); |
71 | argptr = strstr(argptr, "video="); | ||
72 | if (argptr == NULL) { | ||
73 | argptr = prom_getcmdline(); | ||
74 | /* default panel */ | ||
75 | /*strcat(argptr, " video=au1100fb:panel:Sharp_320x240_16");*/ | ||
76 | } | ||
77 | #endif | 151 | #endif |
152 | #ifdef CONFIG_MIPS_MIRAGE | ||
153 | printk(KERN_INFO "AMD Alchemy Mirage Board\n"); | ||
154 | #endif | ||
155 | #ifdef CONFIG_MIPS_DB1550 | ||
156 | printk(KERN_INFO "AMD Alchemy Au1550/Db1550 Board\n"); | ||
78 | 157 | ||
79 | #if defined(CONFIG_SOUND_AU1X00) && !defined(CONFIG_SOC_AU1000) | 158 | bcsr1 = DB1550_BCSR_PHYS_ADDR; |
80 | /* au1000 does not support vra, au1500 and au1100 do */ | 159 | bcsr2 = DB1550_BCSR_PHYS_ADDR + DB1550_BCSR_HEXLED_OFS; |
81 | strcat(argptr, " au1000_audio=vra"); | ||
82 | argptr = prom_getcmdline(); | ||
83 | #endif | 160 | #endif |
84 | 161 | ||
162 | /* initialize board register space */ | ||
163 | bcsr_init(bcsr1, bcsr2); | ||
164 | |||
85 | /* Not valid for Au1550 */ | 165 | /* Not valid for Au1550 */ |
86 | #if defined(CONFIG_IRDA) && \ | 166 | #if defined(CONFIG_IRDA) && \ |
87 | (defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1100)) | 167 | (defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1100)) |
@@ -89,11 +169,10 @@ void __init board_setup(void) | |||
89 | pin_func = au_readl(SYS_PINFUNC) | SYS_PF_IRF; | 169 | pin_func = au_readl(SYS_PINFUNC) | SYS_PF_IRF; |
90 | au_writel(pin_func, SYS_PINFUNC); | 170 | au_writel(pin_func, SYS_PINFUNC); |
91 | /* Power off until the driver is in use */ | 171 | /* Power off until the driver is in use */ |
92 | bcsr->resets &= ~BCSR_RESETS_IRDA_MODE_MASK; | 172 | bcsr_mod(BCSR_RESETS, BCSR_RESETS_IRDA_MODE_MASK, |
93 | bcsr->resets |= BCSR_RESETS_IRDA_MODE_OFF; | 173 | BCSR_RESETS_IRDA_MODE_OFF); |
94 | au_sync(); | ||
95 | #endif | 174 | #endif |
96 | bcsr->pcmcia = 0x0000; /* turn off PCMCIA power */ | 175 | bcsr_write(BCSR_PCMCIA, 0); /* turn off PCMCIA power */ |
97 | 176 | ||
98 | /* Enable GPIO[31:0] inputs */ | 177 | /* Enable GPIO[31:0] inputs */ |
99 | alchemy_gpio1_input_enable(); | 178 | alchemy_gpio1_input_enable(); |
@@ -120,26 +199,53 @@ void __init board_setup(void) | |||
120 | * be part of the audio driver. | 199 | * be part of the audio driver. |
121 | */ | 200 | */ |
122 | alchemy_gpio_direction_output(209, 1); | 201 | alchemy_gpio_direction_output(209, 1); |
123 | #endif | ||
124 | |||
125 | au_sync(); | ||
126 | 202 | ||
127 | #ifdef CONFIG_MIPS_DB1000 | 203 | pm_power_off = mirage_power_off; |
128 | printk(KERN_INFO "AMD Alchemy Au1000/Db1000 Board\n"); | 204 | _machine_halt = mirage_power_off; |
129 | #endif | 205 | _machine_restart = (void(*)(char *))mips_softreset; |
130 | #ifdef CONFIG_MIPS_DB1500 | ||
131 | printk(KERN_INFO "AMD Alchemy Au1500/Db1500 Board\n"); | ||
132 | #endif | ||
133 | #ifdef CONFIG_MIPS_DB1100 | ||
134 | printk(KERN_INFO "AMD Alchemy Au1100/Db1100 Board\n"); | ||
135 | #endif | 206 | #endif |
207 | |||
136 | #ifdef CONFIG_MIPS_BOSPORUS | 208 | #ifdef CONFIG_MIPS_BOSPORUS |
137 | printk(KERN_INFO "AMD Alchemy Bosporus Board\n"); | 209 | pm_power_off = bosporus_power_off; |
210 | _machine_halt = bosporus_power_off; | ||
211 | _machine_restart = (void(*)(char *))mips_softreset; | ||
138 | #endif | 212 | #endif |
139 | #ifdef CONFIG_MIPS_MIRAGE | 213 | au_sync(); |
140 | printk(KERN_INFO "AMD Alchemy Mirage Board\n"); | 214 | } |
141 | #endif | 215 | |
142 | #ifdef CONFIG_MIPS_DB1550 | 216 | static int __init db1x00_init_irq(void) |
143 | printk(KERN_INFO "AMD Alchemy Au1550/Db1550 Board\n"); | 217 | { |
218 | #if defined(CONFIG_MIPS_MIRAGE) | ||
219 | set_irq_type(AU1500_GPIO7_INT, IRQF_TRIGGER_RISING); /* TS pendown */ | ||
220 | #elif defined(CONFIG_MIPS_DB1550) | ||
221 | set_irq_type(AU1550_GPIO0_INT, IRQF_TRIGGER_LOW); /* CD0# */ | ||
222 | set_irq_type(AU1550_GPIO1_INT, IRQF_TRIGGER_LOW); /* CD1# */ | ||
223 | set_irq_type(AU1550_GPIO3_INT, IRQF_TRIGGER_LOW); /* CARD0# */ | ||
224 | set_irq_type(AU1550_GPIO5_INT, IRQF_TRIGGER_LOW); /* CARD1# */ | ||
225 | set_irq_type(AU1550_GPIO21_INT, IRQF_TRIGGER_LOW); /* STSCHG0# */ | ||
226 | set_irq_type(AU1550_GPIO22_INT, IRQF_TRIGGER_LOW); /* STSCHG1# */ | ||
227 | #elif defined(CONFIG_MIPS_DB1500) | ||
228 | set_irq_type(AU1500_GPIO0_INT, IRQF_TRIGGER_LOW); /* CD0# */ | ||
229 | set_irq_type(AU1500_GPIO3_INT, IRQF_TRIGGER_LOW); /* CD1# */ | ||
230 | set_irq_type(AU1500_GPIO2_INT, IRQF_TRIGGER_LOW); /* CARD0# */ | ||
231 | set_irq_type(AU1500_GPIO5_INT, IRQF_TRIGGER_LOW); /* CARD1# */ | ||
232 | set_irq_type(AU1500_GPIO1_INT, IRQF_TRIGGER_LOW); /* STSCHG0# */ | ||
233 | set_irq_type(AU1500_GPIO4_INT, IRQF_TRIGGER_LOW); /* STSCHG1# */ | ||
234 | #elif defined(CONFIG_MIPS_DB1100) | ||
235 | set_irq_type(AU1100_GPIO0_INT, IRQF_TRIGGER_LOW); /* CD0# */ | ||
236 | set_irq_type(AU1100_GPIO3_INT, IRQF_TRIGGER_LOW); /* CD1# */ | ||
237 | set_irq_type(AU1100_GPIO2_INT, IRQF_TRIGGER_LOW); /* CARD0# */ | ||
238 | set_irq_type(AU1100_GPIO5_INT, IRQF_TRIGGER_LOW); /* CARD1# */ | ||
239 | set_irq_type(AU1100_GPIO1_INT, IRQF_TRIGGER_LOW); /* STSCHG0# */ | ||
240 | set_irq_type(AU1100_GPIO4_INT, IRQF_TRIGGER_LOW); /* STSCHG1# */ | ||
241 | #elif defined(CONFIG_MIPS_DB1000) | ||
242 | set_irq_type(AU1000_GPIO0_INT, IRQF_TRIGGER_LOW); /* CD0# */ | ||
243 | set_irq_type(AU1000_GPIO3_INT, IRQF_TRIGGER_LOW); /* CD1# */ | ||
244 | set_irq_type(AU1000_GPIO2_INT, IRQF_TRIGGER_LOW); /* CARD0# */ | ||
245 | set_irq_type(AU1000_GPIO5_INT, IRQF_TRIGGER_LOW); /* CARD1# */ | ||
246 | set_irq_type(AU1000_GPIO1_INT, IRQF_TRIGGER_LOW); /* STSCHG0# */ | ||
247 | set_irq_type(AU1000_GPIO4_INT, IRQF_TRIGGER_LOW); /* STSCHG1# */ | ||
144 | #endif | 248 | #endif |
249 | return 0; | ||
145 | } | 250 | } |
251 | arch_initcall(db1x00_init_irq); | ||
diff --git a/arch/mips/alchemy/devboards/db1x00/irqmap.c b/arch/mips/alchemy/devboards/db1x00/irqmap.c deleted file mode 100644 index 0b09025087c6..000000000000 --- a/arch/mips/alchemy/devboards/db1x00/irqmap.c +++ /dev/null | |||
@@ -1,90 +0,0 @@ | |||
1 | /* | ||
2 | * BRIEF MODULE DESCRIPTION | ||
3 | * Au1xxx irq map table | ||
4 | * | ||
5 | * Copyright 2003 Embedded Edge, LLC | ||
6 | * dan@embeddededge.com | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify it | ||
9 | * under the terms of the GNU General Public License as published by the | ||
10 | * Free Software Foundation; either version 2 of the License, or (at your | ||
11 | * option) any later version. | ||
12 | * | ||
13 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
14 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
15 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
16 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
17 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
18 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
19 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
20 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
21 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
22 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License along | ||
25 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
26 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
27 | */ | ||
28 | |||
29 | #include <linux/init.h> | ||
30 | #include <linux/interrupt.h> | ||
31 | |||
32 | #include <asm/mach-au1x00/au1000.h> | ||
33 | |||
34 | #ifdef CONFIG_MIPS_DB1500 | ||
35 | char irq_tab_alchemy[][5] __initdata = { | ||
36 | [12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - HPT371 */ | ||
37 | [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */ | ||
38 | }; | ||
39 | #endif | ||
40 | |||
41 | #ifdef CONFIG_MIPS_BOSPORUS | ||
42 | char irq_tab_alchemy[][5] __initdata = { | ||
43 | [11] = { -1, INTA, INTB, INTX, INTX }, /* IDSEL 11 - miniPCI */ | ||
44 | [12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - SN1741 */ | ||
45 | [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */ | ||
46 | }; | ||
47 | #endif | ||
48 | |||
49 | #ifdef CONFIG_MIPS_MIRAGE | ||
50 | char irq_tab_alchemy[][5] __initdata = { | ||
51 | [11] = { -1, INTD, INTX, INTX, INTX }, /* IDSEL 11 - SMI VGX */ | ||
52 | [12] = { -1, INTX, INTX, INTC, INTX }, /* IDSEL 12 - PNX1300 */ | ||
53 | [13] = { -1, INTA, INTB, INTX, INTX }, /* IDSEL 13 - miniPCI */ | ||
54 | }; | ||
55 | #endif | ||
56 | |||
57 | #ifdef CONFIG_MIPS_DB1550 | ||
58 | char irq_tab_alchemy[][5] __initdata = { | ||
59 | [11] = { -1, INTC, INTX, INTX, INTX }, /* IDSEL 11 - on-board HPT371 */ | ||
60 | [12] = { -1, INTB, INTC, INTD, INTA }, /* IDSEL 12 - PCI slot 2 (left) */ | ||
61 | [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot 1 (right) */ | ||
62 | }; | ||
63 | #endif | ||
64 | |||
65 | |||
66 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
67 | |||
68 | #ifndef CONFIG_MIPS_MIRAGE | ||
69 | #ifdef CONFIG_MIPS_DB1550 | ||
70 | { AU1000_GPIO_3, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 0 IRQ# */ | ||
71 | { AU1000_GPIO_5, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 1 IRQ# */ | ||
72 | #else | ||
73 | { AU1000_GPIO_0, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 0 Fully_Interted# */ | ||
74 | { AU1000_GPIO_1, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 0 STSCHG# */ | ||
75 | { AU1000_GPIO_2, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 0 IRQ# */ | ||
76 | |||
77 | { AU1000_GPIO_3, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 1 Fully_Interted# */ | ||
78 | { AU1000_GPIO_4, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 1 STSCHG# */ | ||
79 | { AU1000_GPIO_5, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card 1 IRQ# */ | ||
80 | #endif | ||
81 | #else | ||
82 | { AU1000_GPIO_7, IRQF_TRIGGER_RISING, 0 }, /* touchscreen pen down */ | ||
83 | #endif | ||
84 | |||
85 | }; | ||
86 | |||
87 | void __init board_init_irq(void) | ||
88 | { | ||
89 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
90 | } | ||
diff --git a/arch/mips/alchemy/devboards/db1x00/platform.c b/arch/mips/alchemy/devboards/db1x00/platform.c new file mode 100644 index 000000000000..978d5ab3d678 --- /dev/null +++ b/arch/mips/alchemy/devboards/db1x00/platform.c | |||
@@ -0,0 +1,118 @@ | |||
1 | /* | ||
2 | * DBAu1xxx board platform device registration | ||
3 | * | ||
4 | * Copyright (C) 2009 Manuel Lauss | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/init.h> | ||
22 | #include <linux/platform_device.h> | ||
23 | |||
24 | #include <asm/mach-au1x00/au1xxx.h> | ||
25 | #include <asm/mach-db1x00/bcsr.h> | ||
26 | #include "../platform.h" | ||
27 | |||
28 | /* DB1xxx PCMCIA interrupt sources: | ||
29 | * CD0/1 GPIO0/3 | ||
30 | * STSCHG0/1 GPIO1/4 | ||
31 | * CARD0/1 GPIO2/5 | ||
32 | * Db1550: 0/1, 21/22, 3/5 | ||
33 | */ | ||
34 | |||
35 | #define DB1XXX_HAS_PCMCIA | ||
36 | #define F_SWAPPED (bcsr_read(BCSR_STATUS) & BCSR_STATUS_DB1000_SWAPBOOT) | ||
37 | |||
38 | #if defined(CONFIG_MIPS_DB1000) | ||
39 | #define DB1XXX_PCMCIA_CD0 AU1000_GPIO0_INT | ||
40 | #define DB1XXX_PCMCIA_STSCHG0 AU1000_GPIO1_INT | ||
41 | #define DB1XXX_PCMCIA_CARD0 AU1000_GPIO2_INT | ||
42 | #define DB1XXX_PCMCIA_CD1 AU1000_GPIO3_INT | ||
43 | #define DB1XXX_PCMCIA_STSCHG1 AU1000_GPIO4_INT | ||
44 | #define DB1XXX_PCMCIA_CARD1 AU1000_GPIO5_INT | ||
45 | #define BOARD_FLASH_SIZE 0x02000000 /* 32MB */ | ||
46 | #define BOARD_FLASH_WIDTH 4 /* 32-bits */ | ||
47 | #elif defined(CONFIG_MIPS_DB1100) | ||
48 | #define DB1XXX_PCMCIA_CD0 AU1100_GPIO0_INT | ||
49 | #define DB1XXX_PCMCIA_STSCHG0 AU1100_GPIO1_INT | ||
50 | #define DB1XXX_PCMCIA_CARD0 AU1100_GPIO2_INT | ||
51 | #define DB1XXX_PCMCIA_CD1 AU1100_GPIO3_INT | ||
52 | #define DB1XXX_PCMCIA_STSCHG1 AU1100_GPIO4_INT | ||
53 | #define DB1XXX_PCMCIA_CARD1 AU1100_GPIO5_INT | ||
54 | #define BOARD_FLASH_SIZE 0x02000000 /* 32MB */ | ||
55 | #define BOARD_FLASH_WIDTH 4 /* 32-bits */ | ||
56 | #elif defined(CONFIG_MIPS_DB1500) | ||
57 | #define DB1XXX_PCMCIA_CD0 AU1500_GPIO0_INT | ||
58 | #define DB1XXX_PCMCIA_STSCHG0 AU1500_GPIO1_INT | ||
59 | #define DB1XXX_PCMCIA_CARD0 AU1500_GPIO2_INT | ||
60 | #define DB1XXX_PCMCIA_CD1 AU1500_GPIO3_INT | ||
61 | #define DB1XXX_PCMCIA_STSCHG1 AU1500_GPIO4_INT | ||
62 | #define DB1XXX_PCMCIA_CARD1 AU1500_GPIO5_INT | ||
63 | #define BOARD_FLASH_SIZE 0x02000000 /* 32MB */ | ||
64 | #define BOARD_FLASH_WIDTH 4 /* 32-bits */ | ||
65 | #elif defined(CONFIG_MIPS_DB1550) | ||
66 | #define DB1XXX_PCMCIA_CD0 AU1550_GPIO0_INT | ||
67 | #define DB1XXX_PCMCIA_STSCHG0 AU1550_GPIO21_INT | ||
68 | #define DB1XXX_PCMCIA_CARD0 AU1550_GPIO3_INT | ||
69 | #define DB1XXX_PCMCIA_CD1 AU1550_GPIO1_INT | ||
70 | #define DB1XXX_PCMCIA_STSCHG1 AU1550_GPIO22_INT | ||
71 | #define DB1XXX_PCMCIA_CARD1 AU1550_GPIO5_INT | ||
72 | #define BOARD_FLASH_SIZE 0x08000000 /* 128MB */ | ||
73 | #define BOARD_FLASH_WIDTH 4 /* 32-bits */ | ||
74 | #else | ||
75 | /* other board: no PCMCIA */ | ||
76 | #undef DB1XXX_HAS_PCMCIA | ||
77 | #undef F_SWAPPED | ||
78 | #define F_SWAPPED 0 | ||
79 | #if defined(CONFIG_MIPS_BOSPORUS) | ||
80 | #define BOARD_FLASH_SIZE 0x01000000 /* 16MB */ | ||
81 | #define BOARD_FLASH_WIDTH 2 /* 16-bits */ | ||
82 | #elif defined(CONFIG_MIPS_MIRAGE) | ||
83 | #define BOARD_FLASH_SIZE 0x04000000 /* 64MB */ | ||
84 | #define BOARD_FLASH_WIDTH 4 /* 32-bits */ | ||
85 | #endif | ||
86 | #endif | ||
87 | |||
88 | static int __init db1xxx_dev_init(void) | ||
89 | { | ||
90 | #ifdef DB1XXX_HAS_PCMCIA | ||
91 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR, | ||
92 | PCMCIA_ATTR_PHYS_ADDR + 0x000400000 - 1, | ||
93 | PCMCIA_MEM_PHYS_ADDR, | ||
94 | PCMCIA_MEM_PHYS_ADDR + 0x000400000 - 1, | ||
95 | PCMCIA_IO_PHYS_ADDR, | ||
96 | PCMCIA_IO_PHYS_ADDR + 0x000010000 - 1, | ||
97 | DB1XXX_PCMCIA_CARD0, | ||
98 | DB1XXX_PCMCIA_CD0, | ||
99 | /*DB1XXX_PCMCIA_STSCHG0*/0, | ||
100 | 0, | ||
101 | 0); | ||
102 | |||
103 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR + 0x004000000, | ||
104 | PCMCIA_ATTR_PHYS_ADDR + 0x004400000 - 1, | ||
105 | PCMCIA_MEM_PHYS_ADDR + 0x004000000, | ||
106 | PCMCIA_MEM_PHYS_ADDR + 0x004400000 - 1, | ||
107 | PCMCIA_IO_PHYS_ADDR + 0x004000000, | ||
108 | PCMCIA_IO_PHYS_ADDR + 0x004010000 - 1, | ||
109 | DB1XXX_PCMCIA_CARD1, | ||
110 | DB1XXX_PCMCIA_CD1, | ||
111 | /*DB1XXX_PCMCIA_STSCHG1*/0, | ||
112 | 0, | ||
113 | 1); | ||
114 | #endif | ||
115 | db1x_register_norflash(BOARD_FLASH_SIZE, BOARD_FLASH_WIDTH, F_SWAPPED); | ||
116 | return 0; | ||
117 | } | ||
118 | device_initcall(db1xxx_dev_init); | ||
diff --git a/arch/mips/alchemy/devboards/pb1000/board_setup.c b/arch/mips/alchemy/devboards/pb1000/board_setup.c index cd273545e810..b5311d8a29ab 100644 --- a/arch/mips/alchemy/devboards/pb1000/board_setup.c +++ b/arch/mips/alchemy/devboards/pb1000/board_setup.c | |||
@@ -31,11 +31,7 @@ | |||
31 | #include <asm/mach-pb1x00/pb1000.h> | 31 | #include <asm/mach-pb1x00/pb1000.h> |
32 | #include <prom.h> | 32 | #include <prom.h> |
33 | 33 | ||
34 | 34 | #include "../platform.h" | |
35 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
36 | { AU1000_GPIO_15, IRQF_TRIGGER_LOW, 0 }, | ||
37 | }; | ||
38 | |||
39 | 35 | ||
40 | const char *get_system_type(void) | 36 | const char *get_system_type(void) |
41 | { | 37 | { |
@@ -46,25 +42,14 @@ void board_reset(void) | |||
46 | { | 42 | { |
47 | } | 43 | } |
48 | 44 | ||
49 | void __init board_init_irq(void) | ||
50 | { | ||
51 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
52 | } | ||
53 | |||
54 | void __init board_setup(void) | 45 | void __init board_setup(void) |
55 | { | 46 | { |
56 | u32 pin_func, static_cfg0; | 47 | u32 pin_func, static_cfg0; |
57 | u32 sys_freqctrl, sys_clksrc; | 48 | u32 sys_freqctrl, sys_clksrc; |
58 | u32 prid = read_c0_prid(); | 49 | u32 prid = read_c0_prid(); |
59 | 50 | ||
60 | #ifdef CONFIG_SERIAL_8250_CONSOLE | 51 | sys_freqctrl = 0; |
61 | char *argptr = prom_getcmdline(); | 52 | sys_clksrc = 0; |
62 | argptr = strstr(argptr, "console="); | ||
63 | if (argptr == NULL) { | ||
64 | argptr = prom_getcmdline(); | ||
65 | strcat(argptr, " console=ttyS0,115200"); | ||
66 | } | ||
67 | #endif | ||
68 | 53 | ||
69 | /* Set AUX clock to 12 MHz * 8 = 96 MHz */ | 54 | /* Set AUX clock to 12 MHz * 8 = 96 MHz */ |
70 | au_writel(8, SYS_AUXPLL); | 55 | au_writel(8, SYS_AUXPLL); |
@@ -193,3 +178,16 @@ void __init board_setup(void) | |||
193 | break; | 178 | break; |
194 | } | 179 | } |
195 | } | 180 | } |
181 | |||
182 | static int __init pb1000_init_irq(void) | ||
183 | { | ||
184 | set_irq_type(AU1000_GPIO15_INT, IRQF_TRIGGER_LOW); | ||
185 | return 0; | ||
186 | } | ||
187 | arch_initcall(pb1000_init_irq); | ||
188 | |||
189 | static int __init pb1000_device_init(void) | ||
190 | { | ||
191 | return db1x_register_norflash(8 * 1024 * 1024, 4, 0); | ||
192 | } | ||
193 | device_initcall(pb1000_device_init); | ||
diff --git a/arch/mips/alchemy/devboards/pb1100/Makefile b/arch/mips/alchemy/devboards/pb1100/Makefile index c586dd7e91dc..7e3756c83fe5 100644 --- a/arch/mips/alchemy/devboards/pb1100/Makefile +++ b/arch/mips/alchemy/devboards/pb1100/Makefile | |||
@@ -5,4 +5,4 @@ | |||
5 | # Makefile for the Alchemy Semiconductor Pb1100 board. | 5 | # Makefile for the Alchemy Semiconductor Pb1100 board. |
6 | # | 6 | # |
7 | 7 | ||
8 | obj-y := board_setup.o | 8 | obj-y := board_setup.o platform.o |
diff --git a/arch/mips/alchemy/devboards/pb1100/board_setup.c b/arch/mips/alchemy/devboards/pb1100/board_setup.c index 61263081ef58..c7b4caa81a35 100644 --- a/arch/mips/alchemy/devboards/pb1100/board_setup.c +++ b/arch/mips/alchemy/devboards/pb1100/board_setup.c | |||
@@ -29,19 +29,11 @@ | |||
29 | #include <linux/interrupt.h> | 29 | #include <linux/interrupt.h> |
30 | 30 | ||
31 | #include <asm/mach-au1x00/au1000.h> | 31 | #include <asm/mach-au1x00/au1000.h> |
32 | #include <asm/mach-pb1x00/pb1100.h> | 32 | #include <asm/mach-db1x00/bcsr.h> |
33 | 33 | ||
34 | #include <prom.h> | 34 | #include <prom.h> |
35 | 35 | ||
36 | 36 | ||
37 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
38 | { AU1000_GPIO_9, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card Fully_Inserted# */ | ||
39 | { AU1000_GPIO_10, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card STSCHG# */ | ||
40 | { AU1000_GPIO_11, IRQF_TRIGGER_LOW, 0 }, /* PCMCIA Card IRQ# */ | ||
41 | { AU1000_GPIO_13, IRQF_TRIGGER_LOW, 0 }, /* DC_IRQ# */ | ||
42 | }; | ||
43 | |||
44 | |||
45 | const char *get_system_type(void) | 37 | const char *get_system_type(void) |
46 | { | 38 | { |
47 | return "Alchemy Pb1100"; | 39 | return "Alchemy Pb1100"; |
@@ -49,43 +41,15 @@ const char *get_system_type(void) | |||
49 | 41 | ||
50 | void board_reset(void) | 42 | void board_reset(void) |
51 | { | 43 | { |
52 | /* Hit BCSR.RST_VDDI[SOFT_RESET] */ | 44 | bcsr_write(BCSR_SYSTEM, 0); |
53 | au_writel(0x00000000, PB1100_RST_VDDI); | ||
54 | } | ||
55 | |||
56 | void __init board_init_irq(void) | ||
57 | { | ||
58 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
59 | } | 45 | } |
60 | 46 | ||
61 | void __init board_setup(void) | 47 | void __init board_setup(void) |
62 | { | 48 | { |
63 | volatile void __iomem *base = (volatile void __iomem *)0xac000000UL; | 49 | volatile void __iomem *base = (volatile void __iomem *)0xac000000UL; |
64 | char *argptr; | ||
65 | |||
66 | argptr = prom_getcmdline(); | ||
67 | #ifdef CONFIG_SERIAL_8250_CONSOLE | ||
68 | argptr = strstr(argptr, "console="); | ||
69 | if (argptr == NULL) { | ||
70 | argptr = prom_getcmdline(); | ||
71 | strcat(argptr, " console=ttyS0,115200"); | ||
72 | } | ||
73 | #endif | ||
74 | |||
75 | #ifdef CONFIG_FB_AU1100 | ||
76 | argptr = strstr(argptr, "video="); | ||
77 | if (argptr == NULL) { | ||
78 | argptr = prom_getcmdline(); | ||
79 | /* default panel */ | ||
80 | /*strcat(argptr, " video=au1100fb:panel:Sharp_320x240_16");*/ | ||
81 | } | ||
82 | #endif | ||
83 | 50 | ||
84 | #if defined(CONFIG_SOUND_AU1X00) && !defined(CONFIG_SOC_AU1000) | 51 | bcsr_init(DB1000_BCSR_PHYS_ADDR, |
85 | /* au1000 does not support vra, au1500 and au1100 do */ | 52 | DB1000_BCSR_PHYS_ADDR + DB1000_BCSR_HEXLED_OFS); |
86 | strcat(argptr, " au1000_audio=vra"); | ||
87 | argptr = prom_getcmdline(); | ||
88 | #endif | ||
89 | 53 | ||
90 | /* Set AUX clock to 12 MHz * 8 = 96 MHz */ | 54 | /* Set AUX clock to 12 MHz * 8 = 96 MHz */ |
91 | au_writel(8, SYS_AUXPLL); | 55 | au_writel(8, SYS_AUXPLL); |
@@ -155,3 +119,14 @@ void __init board_setup(void) | |||
155 | au_sync(); | 119 | au_sync(); |
156 | } | 120 | } |
157 | } | 121 | } |
122 | |||
123 | static int __init pb1100_init_irq(void) | ||
124 | { | ||
125 | set_irq_type(AU1100_GPIO9_INT, IRQF_TRIGGER_LOW); /* PCCD# */ | ||
126 | set_irq_type(AU1100_GPIO10_INT, IRQF_TRIGGER_LOW); /* PCSTSCHG# */ | ||
127 | set_irq_type(AU1100_GPIO11_INT, IRQF_TRIGGER_LOW); /* PCCard# */ | ||
128 | set_irq_type(AU1100_GPIO13_INT, IRQF_TRIGGER_LOW); /* DC_IRQ# */ | ||
129 | |||
130 | return 0; | ||
131 | } | ||
132 | arch_initcall(pb1100_init_irq); | ||
diff --git a/arch/mips/alchemy/devboards/pb1100/platform.c b/arch/mips/alchemy/devboards/pb1100/platform.c new file mode 100644 index 000000000000..2c8dc29759fd --- /dev/null +++ b/arch/mips/alchemy/devboards/pb1100/platform.c | |||
@@ -0,0 +1,50 @@ | |||
1 | /* | ||
2 | * Pb1100 board platform device registration | ||
3 | * | ||
4 | * Copyright (C) 2009 Manuel Lauss | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/init.h> | ||
22 | |||
23 | #include <asm/mach-au1x00/au1000.h> | ||
24 | #include <asm/mach-db1x00/bcsr.h> | ||
25 | |||
26 | #include "../platform.h" | ||
27 | |||
28 | static int __init pb1100_dev_init(void) | ||
29 | { | ||
30 | int swapped; | ||
31 | |||
32 | /* PCMCIA. single socket, identical to Pb1500 */ | ||
33 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR, | ||
34 | PCMCIA_ATTR_PHYS_ADDR + 0x000400000 - 1, | ||
35 | PCMCIA_MEM_PHYS_ADDR, | ||
36 | PCMCIA_MEM_PHYS_ADDR + 0x000400000 - 1, | ||
37 | PCMCIA_IO_PHYS_ADDR, | ||
38 | PCMCIA_IO_PHYS_ADDR + 0x000010000 - 1, | ||
39 | AU1100_GPIO11_INT, /* card */ | ||
40 | AU1100_GPIO9_INT, /* insert */ | ||
41 | /*AU1100_GPIO10_INT*/0, /* stschg */ | ||
42 | 0, /* eject */ | ||
43 | 0); /* id */ | ||
44 | |||
45 | swapped = bcsr_read(BCSR_STATUS) & BCSR_STATUS_DB1000_SWAPBOOT; | ||
46 | db1x_register_norflash(64 * 1024 * 1024, 4, swapped); | ||
47 | |||
48 | return 0; | ||
49 | } | ||
50 | device_initcall(pb1100_dev_init); | ||
diff --git a/arch/mips/alchemy/devboards/pb1200/Makefile b/arch/mips/alchemy/devboards/pb1200/Makefile index c8c3a99fb68a..2ea9b02ef09f 100644 --- a/arch/mips/alchemy/devboards/pb1200/Makefile +++ b/arch/mips/alchemy/devboards/pb1200/Makefile | |||
@@ -2,6 +2,6 @@ | |||
2 | # Makefile for the Alchemy Semiconductor Pb1200/DBAu1200 boards. | 2 | # Makefile for the Alchemy Semiconductor Pb1200/DBAu1200 boards. |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-y := board_setup.o irqmap.o platform.o | 5 | obj-y := board_setup.o platform.o |
6 | 6 | ||
7 | EXTRA_CFLAGS += -Werror | 7 | EXTRA_CFLAGS += -Werror |
diff --git a/arch/mips/alchemy/devboards/pb1200/board_setup.c b/arch/mips/alchemy/devboards/pb1200/board_setup.c index 94e6b7e7753d..3184063f8042 100644 --- a/arch/mips/alchemy/devboards/pb1200/board_setup.c +++ b/arch/mips/alchemy/devboards/pb1200/board_setup.c | |||
@@ -25,11 +25,23 @@ | |||
25 | */ | 25 | */ |
26 | 26 | ||
27 | #include <linux/init.h> | 27 | #include <linux/init.h> |
28 | #include <linux/interrupt.h> | ||
28 | #include <linux/sched.h> | 29 | #include <linux/sched.h> |
29 | 30 | ||
30 | #include <prom.h> | 31 | #include <asm/mach-au1x00/au1000.h> |
31 | #include <au1xxx.h> | 32 | #include <asm/mach-db1x00/bcsr.h> |
33 | |||
34 | #ifdef CONFIG_MIPS_PB1200 | ||
35 | #include <asm/mach-pb1x00/pb1200.h> | ||
36 | #endif | ||
37 | |||
38 | #ifdef CONFIG_MIPS_DB1200 | ||
39 | #include <asm/mach-db1x00/db1200.h> | ||
40 | #define PB1200_INT_BEGIN DB1200_INT_BEGIN | ||
41 | #define PB1200_INT_END DB1200_INT_END | ||
42 | #endif | ||
32 | 43 | ||
44 | #include <prom.h> | ||
33 | 45 | ||
34 | const char *get_system_type(void) | 46 | const char *get_system_type(void) |
35 | { | 47 | { |
@@ -38,25 +50,15 @@ const char *get_system_type(void) | |||
38 | 50 | ||
39 | void board_reset(void) | 51 | void board_reset(void) |
40 | { | 52 | { |
41 | bcsr->resets = 0; | 53 | bcsr_write(BCSR_RESETS, 0); |
42 | bcsr->system = 0; | 54 | bcsr_write(BCSR_SYSTEM, 0); |
43 | } | 55 | } |
44 | 56 | ||
45 | void __init board_setup(void) | 57 | void __init board_setup(void) |
46 | { | 58 | { |
47 | char *argptr; | 59 | printk(KERN_INFO "AMD Alchemy Pb1200 Board\n"); |
48 | 60 | bcsr_init(PB1200_BCSR_PHYS_ADDR, | |
49 | argptr = prom_getcmdline(); | 61 | PB1200_BCSR_PHYS_ADDR + PB1200_BCSR_HEXLED_OFS); |
50 | #ifdef CONFIG_SERIAL_8250_CONSOLE | ||
51 | argptr = strstr(argptr, "console="); | ||
52 | if (argptr == NULL) { | ||
53 | argptr = prom_getcmdline(); | ||
54 | strcat(argptr, " console=ttyS0,115200"); | ||
55 | } | ||
56 | #endif | ||
57 | #ifdef CONFIG_FB_AU1200 | ||
58 | strcat(argptr, " video=au1200fb:panel:bs"); | ||
59 | #endif | ||
60 | 62 | ||
61 | #if 0 | 63 | #if 0 |
62 | { | 64 | { |
@@ -82,7 +84,7 @@ void __init board_setup(void) | |||
82 | u32 pin_func; | 84 | u32 pin_func; |
83 | 85 | ||
84 | /* Select SMBus in CPLD */ | 86 | /* Select SMBus in CPLD */ |
85 | bcsr->resets &= ~BCSR_RESETS_PCS0MUX; | 87 | bcsr_mod(BCSR_RESETS, BCSR_RESETS_PSC0MUX, 0); |
86 | 88 | ||
87 | pin_func = au_readl(SYS_PINFUNC); | 89 | pin_func = au_readl(SYS_PINFUNC); |
88 | au_sync(); | 90 | au_sync(); |
@@ -116,38 +118,54 @@ void __init board_setup(void) | |||
116 | 118 | ||
117 | /* | 119 | /* |
118 | * The Pb1200 development board uses external MUX for PSC0 to | 120 | * The Pb1200 development board uses external MUX for PSC0 to |
119 | * support SMB/SPI. bcsr->resets bit 12: 0=SMB 1=SPI | 121 | * support SMB/SPI. bcsr_resets bit 12: 0=SMB 1=SPI |
120 | */ | 122 | */ |
121 | #ifdef CONFIG_I2C_AU1550 | 123 | #ifdef CONFIG_I2C_AU1550 |
122 | bcsr->resets &= ~BCSR_RESETS_PCS0MUX; | 124 | bcsr_mod(BCSR_RESETS, BCSR_RESETS_PSC0MUX, 0); |
123 | #endif | 125 | #endif |
124 | au_sync(); | 126 | au_sync(); |
127 | } | ||
125 | 128 | ||
126 | #ifdef CONFIG_MIPS_PB1200 | 129 | static int __init pb1200_init_irq(void) |
127 | printk(KERN_INFO "AMD Alchemy Pb1200 Board\n"); | 130 | { |
128 | #endif | 131 | /* We have a problem with CPLD rev 3. */ |
129 | #ifdef CONFIG_MIPS_DB1200 | 132 | if (BCSR_WHOAMI_CPLD(bcsr_read(BCSR_WHOAMI)) <= 3) { |
130 | printk(KERN_INFO "AMD Alchemy Db1200 Board\n"); | 133 | printk(KERN_ERR "WARNING!!!\n"); |
131 | #endif | 134 | printk(KERN_ERR "WARNING!!!\n"); |
135 | printk(KERN_ERR "WARNING!!!\n"); | ||
136 | printk(KERN_ERR "WARNING!!!\n"); | ||
137 | printk(KERN_ERR "WARNING!!!\n"); | ||
138 | printk(KERN_ERR "WARNING!!!\n"); | ||
139 | printk(KERN_ERR "Pb1200 must be at CPLD rev 4. Please have Pb1200\n"); | ||
140 | printk(KERN_ERR "updated to latest revision. This software will\n"); | ||
141 | printk(KERN_ERR "not work on anything less than CPLD rev 4.\n"); | ||
142 | printk(KERN_ERR "WARNING!!!\n"); | ||
143 | printk(KERN_ERR "WARNING!!!\n"); | ||
144 | printk(KERN_ERR "WARNING!!!\n"); | ||
145 | printk(KERN_ERR "WARNING!!!\n"); | ||
146 | printk(KERN_ERR "WARNING!!!\n"); | ||
147 | printk(KERN_ERR "WARNING!!!\n"); | ||
148 | panic("Game over. Your score is 0."); | ||
149 | } | ||
150 | |||
151 | set_irq_type(AU1200_GPIO7_INT, IRQF_TRIGGER_LOW); | ||
152 | bcsr_init_irq(PB1200_INT_BEGIN, PB1200_INT_END, AU1200_GPIO7_INT); | ||
153 | |||
154 | return 0; | ||
132 | } | 155 | } |
156 | arch_initcall(pb1200_init_irq); | ||
157 | |||
133 | 158 | ||
134 | int board_au1200fb_panel(void) | 159 | int board_au1200fb_panel(void) |
135 | { | 160 | { |
136 | BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR; | 161 | return (bcsr_read(BCSR_SWITCHES) >> 8) & 0x0f; |
137 | int p; | ||
138 | |||
139 | p = bcsr->switches; | ||
140 | p >>= 8; | ||
141 | p &= 0x0F; | ||
142 | return p; | ||
143 | } | 162 | } |
144 | 163 | ||
145 | int board_au1200fb_panel_init(void) | 164 | int board_au1200fb_panel_init(void) |
146 | { | 165 | { |
147 | /* Apply power */ | 166 | /* Apply power */ |
148 | BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR; | 167 | bcsr_mod(BCSR_BOARD, 0, BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | |
149 | 168 | BCSR_BOARD_LCDBL); | |
150 | bcsr->board |= BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | BCSR_BOARD_LCDBL; | ||
151 | /* printk(KERN_DEBUG "board_au1200fb_panel_init()\n"); */ | 169 | /* printk(KERN_DEBUG "board_au1200fb_panel_init()\n"); */ |
152 | return 0; | 170 | return 0; |
153 | } | 171 | } |
@@ -155,10 +173,8 @@ int board_au1200fb_panel_init(void) | |||
155 | int board_au1200fb_panel_shutdown(void) | 173 | int board_au1200fb_panel_shutdown(void) |
156 | { | 174 | { |
157 | /* Remove power */ | 175 | /* Remove power */ |
158 | BCSR *bcsr = (BCSR *)BCSR_KSEG1_ADDR; | 176 | bcsr_mod(BCSR_BOARD, BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | |
159 | 177 | BCSR_BOARD_LCDBL, 0); | |
160 | bcsr->board &= ~(BCSR_BOARD_LCDVEE | BCSR_BOARD_LCDVDD | | ||
161 | BCSR_BOARD_LCDBL); | ||
162 | /* printk(KERN_DEBUG "board_au1200fb_panel_shutdown()\n"); */ | 178 | /* printk(KERN_DEBUG "board_au1200fb_panel_shutdown()\n"); */ |
163 | return 0; | 179 | return 0; |
164 | } | 180 | } |
diff --git a/arch/mips/alchemy/devboards/pb1200/irqmap.c b/arch/mips/alchemy/devboards/pb1200/irqmap.c deleted file mode 100644 index fe47498da280..000000000000 --- a/arch/mips/alchemy/devboards/pb1200/irqmap.c +++ /dev/null | |||
@@ -1,134 +0,0 @@ | |||
1 | /* | ||
2 | * BRIEF MODULE DESCRIPTION | ||
3 | * Au1xxx irq map table | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify it | ||
6 | * under the terms of the GNU General Public License as published by the | ||
7 | * Free Software Foundation; either version 2 of the License, or (at your | ||
8 | * option) any later version. | ||
9 | * | ||
10 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
11 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
12 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
13 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
14 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
15 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
16 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
17 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
18 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
19 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
20 | * | ||
21 | * You should have received a copy of the GNU General Public License along | ||
22 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
23 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
24 | */ | ||
25 | |||
26 | #include <linux/init.h> | ||
27 | #include <linux/interrupt.h> | ||
28 | |||
29 | #include <asm/mach-au1x00/au1000.h> | ||
30 | |||
31 | #ifdef CONFIG_MIPS_PB1200 | ||
32 | #include <asm/mach-pb1x00/pb1200.h> | ||
33 | #endif | ||
34 | |||
35 | #ifdef CONFIG_MIPS_DB1200 | ||
36 | #include <asm/mach-db1x00/db1200.h> | ||
37 | #define PB1200_INT_BEGIN DB1200_INT_BEGIN | ||
38 | #define PB1200_INT_END DB1200_INT_END | ||
39 | #endif | ||
40 | |||
41 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
42 | /* This is external interrupt cascade */ | ||
43 | { AU1000_GPIO_7, IRQF_TRIGGER_LOW, 0 }, | ||
44 | }; | ||
45 | |||
46 | |||
47 | /* | ||
48 | * Support for External interrupts on the Pb1200 Development platform. | ||
49 | */ | ||
50 | |||
51 | static void pb1200_cascade_handler(unsigned int irq, struct irq_desc *d) | ||
52 | { | ||
53 | unsigned short bisr = bcsr->int_status; | ||
54 | |||
55 | for ( ; bisr; bisr &= bisr - 1) | ||
56 | generic_handle_irq(PB1200_INT_BEGIN + __ffs(bisr)); | ||
57 | } | ||
58 | |||
59 | /* NOTE: both the enable and mask bits must be cleared, otherwise the | ||
60 | * CPLD generates tons of spurious interrupts (at least on the DB1200). | ||
61 | */ | ||
62 | static void pb1200_mask_irq(unsigned int irq_nr) | ||
63 | { | ||
64 | bcsr->intclr_mask = 1 << (irq_nr - PB1200_INT_BEGIN); | ||
65 | bcsr->intclr = 1 << (irq_nr - PB1200_INT_BEGIN); | ||
66 | au_sync(); | ||
67 | } | ||
68 | |||
69 | static void pb1200_maskack_irq(unsigned int irq_nr) | ||
70 | { | ||
71 | bcsr->intclr_mask = 1 << (irq_nr - PB1200_INT_BEGIN); | ||
72 | bcsr->intclr = 1 << (irq_nr - PB1200_INT_BEGIN); | ||
73 | bcsr->int_status = 1 << (irq_nr - PB1200_INT_BEGIN); /* ack */ | ||
74 | au_sync(); | ||
75 | } | ||
76 | |||
77 | static void pb1200_unmask_irq(unsigned int irq_nr) | ||
78 | { | ||
79 | bcsr->intset = 1 << (irq_nr - PB1200_INT_BEGIN); | ||
80 | bcsr->intset_mask = 1 << (irq_nr - PB1200_INT_BEGIN); | ||
81 | au_sync(); | ||
82 | } | ||
83 | |||
84 | static struct irq_chip pb1200_cpld_irq_type = { | ||
85 | #ifdef CONFIG_MIPS_PB1200 | ||
86 | .name = "Pb1200 Ext", | ||
87 | #endif | ||
88 | #ifdef CONFIG_MIPS_DB1200 | ||
89 | .name = "Db1200 Ext", | ||
90 | #endif | ||
91 | .mask = pb1200_mask_irq, | ||
92 | .mask_ack = pb1200_maskack_irq, | ||
93 | .unmask = pb1200_unmask_irq, | ||
94 | }; | ||
95 | |||
96 | void __init board_init_irq(void) | ||
97 | { | ||
98 | unsigned int irq; | ||
99 | |||
100 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
101 | |||
102 | #ifdef CONFIG_MIPS_PB1200 | ||
103 | /* We have a problem with CPLD rev 3. */ | ||
104 | if (((bcsr->whoami & BCSR_WHOAMI_CPLD) >> 4) <= 3) { | ||
105 | printk(KERN_ERR "WARNING!!!\n"); | ||
106 | printk(KERN_ERR "WARNING!!!\n"); | ||
107 | printk(KERN_ERR "WARNING!!!\n"); | ||
108 | printk(KERN_ERR "WARNING!!!\n"); | ||
109 | printk(KERN_ERR "WARNING!!!\n"); | ||
110 | printk(KERN_ERR "WARNING!!!\n"); | ||
111 | printk(KERN_ERR "Pb1200 must be at CPLD rev 4. Please have Pb1200\n"); | ||
112 | printk(KERN_ERR "updated to latest revision. This software will\n"); | ||
113 | printk(KERN_ERR "not work on anything less than CPLD rev 4.\n"); | ||
114 | printk(KERN_ERR "WARNING!!!\n"); | ||
115 | printk(KERN_ERR "WARNING!!!\n"); | ||
116 | printk(KERN_ERR "WARNING!!!\n"); | ||
117 | printk(KERN_ERR "WARNING!!!\n"); | ||
118 | printk(KERN_ERR "WARNING!!!\n"); | ||
119 | printk(KERN_ERR "WARNING!!!\n"); | ||
120 | panic("Game over. Your score is 0."); | ||
121 | } | ||
122 | #endif | ||
123 | /* mask & disable & ack all */ | ||
124 | bcsr->intclr_mask = 0xffff; | ||
125 | bcsr->intclr = 0xffff; | ||
126 | bcsr->int_status = 0xffff; | ||
127 | au_sync(); | ||
128 | |||
129 | for (irq = PB1200_INT_BEGIN; irq <= PB1200_INT_END; irq++) | ||
130 | set_irq_chip_and_handler_name(irq, &pb1200_cpld_irq_type, | ||
131 | handle_level_irq, "level"); | ||
132 | |||
133 | set_irq_chained_handler(AU1000_GPIO_7, pb1200_cascade_handler); | ||
134 | } | ||
diff --git a/arch/mips/alchemy/devboards/pb1200/platform.c b/arch/mips/alchemy/devboards/pb1200/platform.c index b93dff4a6789..3ef2dceeb796 100644 --- a/arch/mips/alchemy/devboards/pb1200/platform.c +++ b/arch/mips/alchemy/devboards/pb1200/platform.c | |||
@@ -26,27 +26,30 @@ | |||
26 | 26 | ||
27 | #include <asm/mach-au1x00/au1xxx.h> | 27 | #include <asm/mach-au1x00/au1xxx.h> |
28 | #include <asm/mach-au1x00/au1100_mmc.h> | 28 | #include <asm/mach-au1x00/au1100_mmc.h> |
29 | #include <asm/mach-db1x00/bcsr.h> | ||
30 | |||
31 | #include "../platform.h" | ||
29 | 32 | ||
30 | static int mmc_activity; | 33 | static int mmc_activity; |
31 | 34 | ||
32 | static void pb1200mmc0_set_power(void *mmc_host, int state) | 35 | static void pb1200mmc0_set_power(void *mmc_host, int state) |
33 | { | 36 | { |
34 | if (state) | 37 | if (state) |
35 | bcsr->board |= BCSR_BOARD_SD0PWR; | 38 | bcsr_mod(BCSR_BOARD, 0, BCSR_BOARD_SD0PWR); |
36 | else | 39 | else |
37 | bcsr->board &= ~BCSR_BOARD_SD0PWR; | 40 | bcsr_mod(BCSR_BOARD, BCSR_BOARD_SD0PWR, 0); |
38 | 41 | ||
39 | au_sync_delay(1); | 42 | msleep(1); |
40 | } | 43 | } |
41 | 44 | ||
42 | static int pb1200mmc0_card_readonly(void *mmc_host) | 45 | static int pb1200mmc0_card_readonly(void *mmc_host) |
43 | { | 46 | { |
44 | return (bcsr->status & BCSR_STATUS_SD0WP) ? 1 : 0; | 47 | return (bcsr_read(BCSR_STATUS) & BCSR_STATUS_SD0WP) ? 1 : 0; |
45 | } | 48 | } |
46 | 49 | ||
47 | static int pb1200mmc0_card_inserted(void *mmc_host) | 50 | static int pb1200mmc0_card_inserted(void *mmc_host) |
48 | { | 51 | { |
49 | return (bcsr->sig_status & BCSR_INT_SD0INSERT) ? 1 : 0; | 52 | return (bcsr_read(BCSR_SIGSTAT) & BCSR_INT_SD0INSERT) ? 1 : 0; |
50 | } | 53 | } |
51 | 54 | ||
52 | static void pb1200_mmcled_set(struct led_classdev *led, | 55 | static void pb1200_mmcled_set(struct led_classdev *led, |
@@ -54,10 +57,10 @@ static void pb1200_mmcled_set(struct led_classdev *led, | |||
54 | { | 57 | { |
55 | if (brightness != LED_OFF) { | 58 | if (brightness != LED_OFF) { |
56 | if (++mmc_activity == 1) | 59 | if (++mmc_activity == 1) |
57 | bcsr->disk_leds &= ~(1 << 8); | 60 | bcsr_mod(BCSR_LEDS, BCSR_LEDS_LED0, 0); |
58 | } else { | 61 | } else { |
59 | if (--mmc_activity == 0) | 62 | if (--mmc_activity == 0) |
60 | bcsr->disk_leds |= (1 << 8); | 63 | bcsr_mod(BCSR_LEDS, 0, BCSR_LEDS_LED0); |
61 | } | 64 | } |
62 | } | 65 | } |
63 | 66 | ||
@@ -65,27 +68,25 @@ static struct led_classdev pb1200mmc_led = { | |||
65 | .brightness_set = pb1200_mmcled_set, | 68 | .brightness_set = pb1200_mmcled_set, |
66 | }; | 69 | }; |
67 | 70 | ||
68 | #ifndef CONFIG_MIPS_DB1200 | ||
69 | static void pb1200mmc1_set_power(void *mmc_host, int state) | 71 | static void pb1200mmc1_set_power(void *mmc_host, int state) |
70 | { | 72 | { |
71 | if (state) | 73 | if (state) |
72 | bcsr->board |= BCSR_BOARD_SD1PWR; | 74 | bcsr_mod(BCSR_BOARD, 0, BCSR_BOARD_SD1PWR); |
73 | else | 75 | else |
74 | bcsr->board &= ~BCSR_BOARD_SD1PWR; | 76 | bcsr_mod(BCSR_BOARD, BCSR_BOARD_SD1PWR, 0); |
75 | 77 | ||
76 | au_sync_delay(1); | 78 | msleep(1); |
77 | } | 79 | } |
78 | 80 | ||
79 | static int pb1200mmc1_card_readonly(void *mmc_host) | 81 | static int pb1200mmc1_card_readonly(void *mmc_host) |
80 | { | 82 | { |
81 | return (bcsr->status & BCSR_STATUS_SD1WP) ? 1 : 0; | 83 | return (bcsr_read(BCSR_STATUS) & BCSR_STATUS_SD1WP) ? 1 : 0; |
82 | } | 84 | } |
83 | 85 | ||
84 | static int pb1200mmc1_card_inserted(void *mmc_host) | 86 | static int pb1200mmc1_card_inserted(void *mmc_host) |
85 | { | 87 | { |
86 | return (bcsr->sig_status & BCSR_INT_SD1INSERT) ? 1 : 0; | 88 | return (bcsr_read(BCSR_SIGSTAT) & BCSR_INT_SD1INSERT) ? 1 : 0; |
87 | } | 89 | } |
88 | #endif | ||
89 | 90 | ||
90 | const struct au1xmmc_platform_data au1xmmc_platdata[2] = { | 91 | const struct au1xmmc_platform_data au1xmmc_platdata[2] = { |
91 | [0] = { | 92 | [0] = { |
@@ -95,7 +96,6 @@ const struct au1xmmc_platform_data au1xmmc_platdata[2] = { | |||
95 | .cd_setup = NULL, /* use poll-timer in driver */ | 96 | .cd_setup = NULL, /* use poll-timer in driver */ |
96 | .led = &pb1200mmc_led, | 97 | .led = &pb1200mmc_led, |
97 | }, | 98 | }, |
98 | #ifndef CONFIG_MIPS_DB1200 | ||
99 | [1] = { | 99 | [1] = { |
100 | .set_power = pb1200mmc1_set_power, | 100 | .set_power = pb1200mmc1_set_power, |
101 | .card_inserted = pb1200mmc1_card_inserted, | 101 | .card_inserted = pb1200mmc1_card_inserted, |
@@ -103,7 +103,6 @@ const struct au1xmmc_platform_data au1xmmc_platdata[2] = { | |||
103 | .cd_setup = NULL, /* use poll-timer in driver */ | 103 | .cd_setup = NULL, /* use poll-timer in driver */ |
104 | .led = &pb1200mmc_led, | 104 | .led = &pb1200mmc_led, |
105 | }, | 105 | }, |
106 | #endif | ||
107 | }; | 106 | }; |
108 | 107 | ||
109 | static struct resource ide_resources[] = { | 108 | static struct resource ide_resources[] = { |
@@ -169,8 +168,36 @@ static struct platform_device *board_platform_devices[] __initdata = { | |||
169 | 168 | ||
170 | static int __init board_register_devices(void) | 169 | static int __init board_register_devices(void) |
171 | { | 170 | { |
171 | int swapped; | ||
172 | |||
173 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR, | ||
174 | PCMCIA_ATTR_PHYS_ADDR + 0x000400000 - 1, | ||
175 | PCMCIA_MEM_PHYS_ADDR, | ||
176 | PCMCIA_MEM_PHYS_ADDR + 0x000400000 - 1, | ||
177 | PCMCIA_IO_PHYS_ADDR, | ||
178 | PCMCIA_IO_PHYS_ADDR + 0x000010000 - 1, | ||
179 | PB1200_PC0_INT, | ||
180 | PB1200_PC0_INSERT_INT, | ||
181 | /*PB1200_PC0_STSCHG_INT*/0, | ||
182 | PB1200_PC0_EJECT_INT, | ||
183 | 0); | ||
184 | |||
185 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR + 0x008000000, | ||
186 | PCMCIA_ATTR_PHYS_ADDR + 0x008400000 - 1, | ||
187 | PCMCIA_MEM_PHYS_ADDR + 0x008000000, | ||
188 | PCMCIA_MEM_PHYS_ADDR + 0x008400000 - 1, | ||
189 | PCMCIA_IO_PHYS_ADDR + 0x008000000, | ||
190 | PCMCIA_IO_PHYS_ADDR + 0x008010000 - 1, | ||
191 | PB1200_PC1_INT, | ||
192 | PB1200_PC1_INSERT_INT, | ||
193 | /*PB1200_PC1_STSCHG_INT*/0, | ||
194 | PB1200_PC1_EJECT_INT, | ||
195 | 1); | ||
196 | |||
197 | swapped = bcsr_read(BCSR_STATUS) & BCSR_STATUS_DB1200_SWAPBOOT; | ||
198 | db1x_register_norflash(128 * 1024 * 1024, 2, swapped); | ||
199 | |||
172 | return platform_add_devices(board_platform_devices, | 200 | return platform_add_devices(board_platform_devices, |
173 | ARRAY_SIZE(board_platform_devices)); | 201 | ARRAY_SIZE(board_platform_devices)); |
174 | } | 202 | } |
175 | 203 | device_initcall(board_register_devices); | |
176 | arch_initcall(board_register_devices); | ||
diff --git a/arch/mips/alchemy/devboards/pb1500/Makefile b/arch/mips/alchemy/devboards/pb1500/Makefile index 173b419a7479..e83b151b5b63 100644 --- a/arch/mips/alchemy/devboards/pb1500/Makefile +++ b/arch/mips/alchemy/devboards/pb1500/Makefile | |||
@@ -5,4 +5,4 @@ | |||
5 | # Makefile for the Alchemy Semiconductor Pb1500 board. | 5 | # Makefile for the Alchemy Semiconductor Pb1500 board. |
6 | # | 6 | # |
7 | 7 | ||
8 | obj-y := board_setup.o | 8 | obj-y := board_setup.o platform.o |
diff --git a/arch/mips/alchemy/devboards/pb1500/board_setup.c b/arch/mips/alchemy/devboards/pb1500/board_setup.c index d7a56569e7ed..fa9770ac358a 100644 --- a/arch/mips/alchemy/devboards/pb1500/board_setup.c +++ b/arch/mips/alchemy/devboards/pb1500/board_setup.c | |||
@@ -29,22 +29,14 @@ | |||
29 | #include <linux/interrupt.h> | 29 | #include <linux/interrupt.h> |
30 | 30 | ||
31 | #include <asm/mach-au1x00/au1000.h> | 31 | #include <asm/mach-au1x00/au1000.h> |
32 | #include <asm/mach-pb1x00/pb1500.h> | 32 | #include <asm/mach-db1x00/bcsr.h> |
33 | 33 | ||
34 | #include <prom.h> | 34 | #include <prom.h> |
35 | 35 | ||
36 | 36 | ||
37 | char irq_tab_alchemy[][5] __initdata = { | 37 | char irq_tab_alchemy[][5] __initdata = { |
38 | [12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - HPT370 */ | 38 | [12] = { -1, AU1500_PCI_INTA, 0xff, 0xff, 0xff }, /* IDSEL 12 - HPT370 */ |
39 | [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */ | 39 | [13] = { -1, AU1500_PCI_INTA, AU1500_PCI_INTB, AU1500_PCI_INTC, AU1500_PCI_INTD }, /* IDSEL 13 - PCI slot */ |
40 | }; | ||
41 | |||
42 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
43 | { AU1500_GPIO_204, IRQF_TRIGGER_HIGH, 0 }, | ||
44 | { AU1500_GPIO_201, IRQF_TRIGGER_LOW, 0 }, | ||
45 | { AU1500_GPIO_202, IRQF_TRIGGER_LOW, 0 }, | ||
46 | { AU1500_GPIO_203, IRQF_TRIGGER_LOW, 0 }, | ||
47 | { AU1500_GPIO_205, IRQF_TRIGGER_LOW, 0 }, | ||
48 | }; | 40 | }; |
49 | 41 | ||
50 | 42 | ||
@@ -55,35 +47,16 @@ const char *get_system_type(void) | |||
55 | 47 | ||
56 | void board_reset(void) | 48 | void board_reset(void) |
57 | { | 49 | { |
58 | /* Hit BCSR.RST_VDDI[SOFT_RESET] */ | 50 | bcsr_write(BCSR_SYSTEM, 0); |
59 | au_writel(0x00000000, PB1500_RST_VDDI); | ||
60 | } | ||
61 | |||
62 | void __init board_init_irq(void) | ||
63 | { | ||
64 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
65 | } | 51 | } |
66 | 52 | ||
67 | void __init board_setup(void) | 53 | void __init board_setup(void) |
68 | { | 54 | { |
69 | u32 pin_func; | 55 | u32 pin_func; |
70 | u32 sys_freqctrl, sys_clksrc; | 56 | u32 sys_freqctrl, sys_clksrc; |
71 | char *argptr; | ||
72 | |||
73 | argptr = prom_getcmdline(); | ||
74 | #ifdef CONFIG_SERIAL_8250_CONSOLE | ||
75 | argptr = strstr(argptr, "console="); | ||
76 | if (argptr == NULL) { | ||
77 | argptr = prom_getcmdline(); | ||
78 | strcat(argptr, " console=ttyS0,115200"); | ||
79 | } | ||
80 | #endif | ||
81 | 57 | ||
82 | #if defined(CONFIG_SOUND_AU1X00) && !defined(CONFIG_SOC_AU1000) | 58 | bcsr_init(DB1000_BCSR_PHYS_ADDR, |
83 | /* au1000 does not support vra, au1500 and au1100 do */ | 59 | DB1000_BCSR_PHYS_ADDR + DB1000_BCSR_HEXLED_OFS); |
84 | strcat(argptr, " au1000_audio=vra"); | ||
85 | argptr = prom_getcmdline(); | ||
86 | #endif | ||
87 | 60 | ||
88 | sys_clksrc = sys_freqctrl = pin_func = 0; | 61 | sys_clksrc = sys_freqctrl = pin_func = 0; |
89 | /* Set AUX clock to 12 MHz * 8 = 96 MHz */ | 62 | /* Set AUX clock to 12 MHz * 8 = 96 MHz */ |
@@ -163,3 +136,18 @@ void __init board_setup(void) | |||
163 | au_sync(); | 136 | au_sync(); |
164 | } | 137 | } |
165 | } | 138 | } |
139 | |||
140 | static int __init pb1500_init_irq(void) | ||
141 | { | ||
142 | set_irq_type(AU1500_GPIO9_INT, IRQF_TRIGGER_LOW); /* CD0# */ | ||
143 | set_irq_type(AU1500_GPIO10_INT, IRQF_TRIGGER_LOW); /* CARD0 */ | ||
144 | set_irq_type(AU1500_GPIO11_INT, IRQF_TRIGGER_LOW); /* STSCHG0# */ | ||
145 | set_irq_type(AU1500_GPIO204_INT, IRQF_TRIGGER_HIGH); | ||
146 | set_irq_type(AU1500_GPIO201_INT, IRQF_TRIGGER_LOW); | ||
147 | set_irq_type(AU1500_GPIO202_INT, IRQF_TRIGGER_LOW); | ||
148 | set_irq_type(AU1500_GPIO203_INT, IRQF_TRIGGER_LOW); | ||
149 | set_irq_type(AU1500_GPIO205_INT, IRQF_TRIGGER_LOW); | ||
150 | |||
151 | return 0; | ||
152 | } | ||
153 | arch_initcall(pb1500_init_irq); | ||
diff --git a/arch/mips/alchemy/devboards/pb1500/platform.c b/arch/mips/alchemy/devboards/pb1500/platform.c new file mode 100644 index 000000000000..d443bc7aa76e --- /dev/null +++ b/arch/mips/alchemy/devboards/pb1500/platform.c | |||
@@ -0,0 +1,49 @@ | |||
1 | /* | ||
2 | * Pb1500 board platform device registration | ||
3 | * | ||
4 | * Copyright (C) 2009 Manuel Lauss | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/init.h> | ||
22 | #include <asm/mach-au1x00/au1000.h> | ||
23 | #include <asm/mach-db1x00/bcsr.h> | ||
24 | |||
25 | #include "../platform.h" | ||
26 | |||
27 | static int __init pb1500_dev_init(void) | ||
28 | { | ||
29 | int swapped; | ||
30 | |||
31 | /* PCMCIA. single socket, identical to Pb1500 */ | ||
32 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR, | ||
33 | PCMCIA_ATTR_PHYS_ADDR + 0x000400000 - 1, | ||
34 | PCMCIA_MEM_PHYS_ADDR, | ||
35 | PCMCIA_MEM_PHYS_ADDR + 0x000400000 - 1, | ||
36 | PCMCIA_IO_PHYS_ADDR, | ||
37 | PCMCIA_IO_PHYS_ADDR + 0x000010000 - 1, | ||
38 | AU1500_GPIO11_INT, /* card */ | ||
39 | AU1500_GPIO9_INT, /* insert */ | ||
40 | /*AU1500_GPIO10_INT*/0, /* stschg */ | ||
41 | 0, /* eject */ | ||
42 | 0); /* id */ | ||
43 | |||
44 | swapped = bcsr_read(BCSR_STATUS) & BCSR_STATUS_DB1000_SWAPBOOT; | ||
45 | db1x_register_norflash(64 * 1024 * 1024, 4, swapped); | ||
46 | |||
47 | return 0; | ||
48 | } | ||
49 | device_initcall(pb1500_dev_init); | ||
diff --git a/arch/mips/alchemy/devboards/pb1550/Makefile b/arch/mips/alchemy/devboards/pb1550/Makefile index cff95bcdb2ca..9661b6ec5dd3 100644 --- a/arch/mips/alchemy/devboards/pb1550/Makefile +++ b/arch/mips/alchemy/devboards/pb1550/Makefile | |||
@@ -5,4 +5,4 @@ | |||
5 | # Makefile for the Alchemy Semiconductor Pb1550 board. | 5 | # Makefile for the Alchemy Semiconductor Pb1550 board. |
6 | # | 6 | # |
7 | 7 | ||
8 | obj-y := board_setup.o | 8 | obj-y := board_setup.o platform.o |
diff --git a/arch/mips/alchemy/devboards/pb1550/board_setup.c b/arch/mips/alchemy/devboards/pb1550/board_setup.c index b6e9e7d247a3..1e8fb3ddd726 100644 --- a/arch/mips/alchemy/devboards/pb1550/board_setup.c +++ b/arch/mips/alchemy/devboards/pb1550/board_setup.c | |||
@@ -32,18 +32,15 @@ | |||
32 | 32 | ||
33 | #include <asm/mach-au1x00/au1000.h> | 33 | #include <asm/mach-au1x00/au1000.h> |
34 | #include <asm/mach-pb1x00/pb1550.h> | 34 | #include <asm/mach-pb1x00/pb1550.h> |
35 | #include <asm/mach-db1x00/bcsr.h> | ||
36 | #include <asm/mach-au1x00/gpio.h> | ||
35 | 37 | ||
36 | #include <prom.h> | 38 | #include <prom.h> |
37 | 39 | ||
38 | 40 | ||
39 | char irq_tab_alchemy[][5] __initdata = { | 41 | char irq_tab_alchemy[][5] __initdata = { |
40 | [12] = { -1, INTB, INTC, INTD, INTA }, /* IDSEL 12 - PCI slot 2 (left) */ | 42 | [12] = { -1, AU1550_PCI_INTB, AU1550_PCI_INTC, AU1550_PCI_INTD, AU1550_PCI_INTA }, /* IDSEL 12 - PCI slot 2 (left) */ |
41 | [13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot 1 (right) */ | 43 | [13] = { -1, AU1550_PCI_INTA, AU1550_PCI_INTB, AU1550_PCI_INTC, AU1550_PCI_INTD }, /* IDSEL 13 - PCI slot 1 (right) */ |
42 | }; | ||
43 | |||
44 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
45 | { AU1000_GPIO_0, IRQF_TRIGGER_LOW, 0 }, | ||
46 | { AU1000_GPIO_1, IRQF_TRIGGER_LOW, 0 }, | ||
47 | }; | 44 | }; |
48 | 45 | ||
49 | const char *get_system_type(void) | 46 | const char *get_system_type(void) |
@@ -53,28 +50,17 @@ const char *get_system_type(void) | |||
53 | 50 | ||
54 | void board_reset(void) | 51 | void board_reset(void) |
55 | { | 52 | { |
56 | /* Hit BCSR.SYSTEM[RESET] */ | 53 | bcsr_write(BCSR_SYSTEM, 0); |
57 | au_writew(au_readw(0xAF00001C) & ~BCSR_SYSTEM_RESET, 0xAF00001C); | ||
58 | } | ||
59 | |||
60 | void __init board_init_irq(void) | ||
61 | { | ||
62 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
63 | } | 54 | } |
64 | 55 | ||
65 | void __init board_setup(void) | 56 | void __init board_setup(void) |
66 | { | 57 | { |
67 | u32 pin_func; | 58 | u32 pin_func; |
68 | 59 | ||
69 | #ifdef CONFIG_SERIAL_8250_CONSOLE | 60 | bcsr_init(PB1550_BCSR_PHYS_ADDR, |
70 | char *argptr; | 61 | PB1550_BCSR_PHYS_ADDR + PB1550_BCSR_HEXLED_OFS); |
71 | argptr = prom_getcmdline(); | 62 | |
72 | argptr = strstr(argptr, "console="); | 63 | alchemy_gpio2_enable(); |
73 | if (argptr == NULL) { | ||
74 | argptr = prom_getcmdline(); | ||
75 | strcat(argptr, " console=ttyS0,115200"); | ||
76 | } | ||
77 | #endif | ||
78 | 64 | ||
79 | /* | 65 | /* |
80 | * Enable PSC1 SYNC for AC'97. Normaly done in audio driver, | 66 | * Enable PSC1 SYNC for AC'97. Normaly done in audio driver, |
@@ -85,8 +71,21 @@ void __init board_setup(void) | |||
85 | pin_func |= SYS_PF_MUST_BE_SET | SYS_PF_PSC1_S1; | 71 | pin_func |= SYS_PF_MUST_BE_SET | SYS_PF_PSC1_S1; |
86 | au_writel(pin_func, SYS_PINFUNC); | 72 | au_writel(pin_func, SYS_PINFUNC); |
87 | 73 | ||
88 | au_writel(0, (u32)bcsr | 0x10); /* turn off PCMCIA power */ | 74 | bcsr_write(BCSR_PCMCIA, 0); /* turn off PCMCIA power */ |
89 | au_sync(); | ||
90 | 75 | ||
91 | printk(KERN_INFO "AMD Alchemy Pb1550 Board\n"); | 76 | printk(KERN_INFO "AMD Alchemy Pb1550 Board\n"); |
92 | } | 77 | } |
78 | |||
79 | static int __init pb1550_init_irq(void) | ||
80 | { | ||
81 | set_irq_type(AU1550_GPIO0_INT, IRQF_TRIGGER_LOW); | ||
82 | set_irq_type(AU1550_GPIO1_INT, IRQF_TRIGGER_LOW); | ||
83 | set_irq_type(AU1550_GPIO201_205_INT, IRQF_TRIGGER_HIGH); | ||
84 | |||
85 | /* enable both PCMCIA card irqs in the shared line */ | ||
86 | alchemy_gpio2_enable_int(201); | ||
87 | alchemy_gpio2_enable_int(202); | ||
88 | |||
89 | return 0; | ||
90 | } | ||
91 | arch_initcall(pb1550_init_irq); | ||
diff --git a/arch/mips/alchemy/devboards/pb1550/platform.c b/arch/mips/alchemy/devboards/pb1550/platform.c new file mode 100644 index 000000000000..d7150d0f49c0 --- /dev/null +++ b/arch/mips/alchemy/devboards/pb1550/platform.c | |||
@@ -0,0 +1,69 @@ | |||
1 | /* | ||
2 | * Pb1550 board platform device registration | ||
3 | * | ||
4 | * Copyright (C) 2009 Manuel Lauss | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/init.h> | ||
22 | |||
23 | #include <asm/mach-au1x00/au1000.h> | ||
24 | #include <asm/mach-pb1x00/pb1550.h> | ||
25 | #include <asm/mach-db1x00/bcsr.h> | ||
26 | |||
27 | #include "../platform.h" | ||
28 | |||
29 | static int __init pb1550_dev_init(void) | ||
30 | { | ||
31 | int swapped; | ||
32 | |||
33 | /* Pb1550, like all others, also has statuschange irqs; however they're | ||
34 | * wired up on one of the Au1550's shared GPIO201_205 line, which also | ||
35 | * services the PCMCIA card interrupts. So we ignore statuschange and | ||
36 | * use the GPIO201_205 exclusively for card interrupts, since a) pcmcia | ||
37 | * drivers are used to shared irqs and b) statuschange isn't really use- | ||
38 | * ful anyway. | ||
39 | */ | ||
40 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR, | ||
41 | PCMCIA_ATTR_PHYS_ADDR + 0x000400000 - 1, | ||
42 | PCMCIA_MEM_PHYS_ADDR, | ||
43 | PCMCIA_MEM_PHYS_ADDR + 0x000400000 - 1, | ||
44 | PCMCIA_IO_PHYS_ADDR, | ||
45 | PCMCIA_IO_PHYS_ADDR + 0x000010000 - 1, | ||
46 | AU1550_GPIO201_205_INT, | ||
47 | AU1550_GPIO0_INT, | ||
48 | 0, | ||
49 | 0, | ||
50 | 0); | ||
51 | |||
52 | db1x_register_pcmcia_socket(PCMCIA_ATTR_PHYS_ADDR + 0x008000000, | ||
53 | PCMCIA_ATTR_PHYS_ADDR + 0x008400000 - 1, | ||
54 | PCMCIA_MEM_PHYS_ADDR + 0x008000000, | ||
55 | PCMCIA_MEM_PHYS_ADDR + 0x008400000 - 1, | ||
56 | PCMCIA_IO_PHYS_ADDR + 0x008000000, | ||
57 | PCMCIA_IO_PHYS_ADDR + 0x008010000 - 1, | ||
58 | AU1550_GPIO201_205_INT, | ||
59 | AU1550_GPIO1_INT, | ||
60 | 0, | ||
61 | 0, | ||
62 | 1); | ||
63 | |||
64 | swapped = bcsr_read(BCSR_STATUS) & BCSR_STATUS_PB1550_SWAPBOOT; | ||
65 | db1x_register_norflash(128 * 1024 * 1024, 4, swapped); | ||
66 | |||
67 | return 0; | ||
68 | } | ||
69 | device_initcall(pb1550_dev_init); | ||
diff --git a/arch/mips/alchemy/devboards/platform.c b/arch/mips/alchemy/devboards/platform.c new file mode 100644 index 000000000000..49a4b3244d8e --- /dev/null +++ b/arch/mips/alchemy/devboards/platform.c | |||
@@ -0,0 +1,222 @@ | |||
1 | /* | ||
2 | * devoard misc stuff. | ||
3 | */ | ||
4 | |||
5 | #include <linux/init.h> | ||
6 | #include <linux/mtd/mtd.h> | ||
7 | #include <linux/mtd/map.h> | ||
8 | #include <linux/mtd/physmap.h> | ||
9 | #include <linux/slab.h> | ||
10 | #include <linux/platform_device.h> | ||
11 | #include <linux/pm.h> | ||
12 | |||
13 | #include <asm/reboot.h> | ||
14 | #include <asm/mach-db1x00/bcsr.h> | ||
15 | |||
16 | static void db1x_power_off(void) | ||
17 | { | ||
18 | bcsr_write(BCSR_RESETS, 0); | ||
19 | bcsr_write(BCSR_SYSTEM, BCSR_SYSTEM_PWROFF | BCSR_SYSTEM_RESET); | ||
20 | } | ||
21 | |||
22 | static void db1x_reset(char *c) | ||
23 | { | ||
24 | bcsr_write(BCSR_RESETS, 0); | ||
25 | bcsr_write(BCSR_SYSTEM, 0); | ||
26 | } | ||
27 | |||
28 | static int __init db1x_poweroff_setup(void) | ||
29 | { | ||
30 | if (!pm_power_off) | ||
31 | pm_power_off = db1x_power_off; | ||
32 | if (!_machine_halt) | ||
33 | _machine_halt = db1x_power_off; | ||
34 | if (!_machine_restart) | ||
35 | _machine_restart = db1x_reset; | ||
36 | |||
37 | return 0; | ||
38 | } | ||
39 | late_initcall(db1x_poweroff_setup); | ||
40 | |||
41 | /* register a pcmcia socket */ | ||
42 | int __init db1x_register_pcmcia_socket(phys_addr_t pcmcia_attr_start, | ||
43 | phys_addr_t pcmcia_attr_end, | ||
44 | phys_addr_t pcmcia_mem_start, | ||
45 | phys_addr_t pcmcia_mem_end, | ||
46 | phys_addr_t pcmcia_io_start, | ||
47 | phys_addr_t pcmcia_io_end, | ||
48 | int card_irq, | ||
49 | int cd_irq, | ||
50 | int stschg_irq, | ||
51 | int eject_irq, | ||
52 | int id) | ||
53 | { | ||
54 | int cnt, i, ret; | ||
55 | struct resource *sr; | ||
56 | struct platform_device *pd; | ||
57 | |||
58 | cnt = 5; | ||
59 | if (eject_irq) | ||
60 | cnt++; | ||
61 | if (stschg_irq) | ||
62 | cnt++; | ||
63 | |||
64 | sr = kzalloc(sizeof(struct resource) * cnt, GFP_KERNEL); | ||
65 | if (!sr) | ||
66 | return -ENOMEM; | ||
67 | |||
68 | pd = platform_device_alloc("db1xxx_pcmcia", id); | ||
69 | if (!pd) { | ||
70 | ret = -ENOMEM; | ||
71 | goto out; | ||
72 | } | ||
73 | |||
74 | sr[0].name = "pcmcia-attr"; | ||
75 | sr[0].flags = IORESOURCE_MEM; | ||
76 | sr[0].start = pcmcia_attr_start; | ||
77 | sr[0].end = pcmcia_attr_end; | ||
78 | |||
79 | sr[1].name = "pcmcia-mem"; | ||
80 | sr[1].flags = IORESOURCE_MEM; | ||
81 | sr[1].start = pcmcia_mem_start; | ||
82 | sr[1].end = pcmcia_mem_end; | ||
83 | |||
84 | sr[2].name = "pcmcia-io"; | ||
85 | sr[2].flags = IORESOURCE_MEM; | ||
86 | sr[2].start = pcmcia_io_start; | ||
87 | sr[2].end = pcmcia_io_end; | ||
88 | |||
89 | sr[3].name = "insert"; | ||
90 | sr[3].flags = IORESOURCE_IRQ; | ||
91 | sr[3].start = sr[3].end = cd_irq; | ||
92 | |||
93 | sr[4].name = "card"; | ||
94 | sr[4].flags = IORESOURCE_IRQ; | ||
95 | sr[4].start = sr[4].end = card_irq; | ||
96 | |||
97 | i = 5; | ||
98 | if (stschg_irq) { | ||
99 | sr[i].name = "stschg"; | ||
100 | sr[i].flags = IORESOURCE_IRQ; | ||
101 | sr[i].start = sr[i].end = stschg_irq; | ||
102 | i++; | ||
103 | } | ||
104 | if (eject_irq) { | ||
105 | sr[i].name = "eject"; | ||
106 | sr[i].flags = IORESOURCE_IRQ; | ||
107 | sr[i].start = sr[i].end = eject_irq; | ||
108 | } | ||
109 | |||
110 | pd->resource = sr; | ||
111 | pd->num_resources = cnt; | ||
112 | |||
113 | ret = platform_device_add(pd); | ||
114 | if (!ret) | ||
115 | return 0; | ||
116 | |||
117 | platform_device_put(pd); | ||
118 | out: | ||
119 | kfree(sr); | ||
120 | return ret; | ||
121 | } | ||
122 | |||
123 | #define YAMON_SIZE 0x00100000 | ||
124 | #define YAMON_ENV_SIZE 0x00040000 | ||
125 | |||
126 | int __init db1x_register_norflash(unsigned long size, int width, | ||
127 | int swapped) | ||
128 | { | ||
129 | struct physmap_flash_data *pfd; | ||
130 | struct platform_device *pd; | ||
131 | struct mtd_partition *parts; | ||
132 | struct resource *res; | ||
133 | int ret, i; | ||
134 | |||
135 | if (size < (8 * 1024 * 1024)) | ||
136 | return -EINVAL; | ||
137 | |||
138 | ret = -ENOMEM; | ||
139 | parts = kzalloc(sizeof(struct mtd_partition) * 5, GFP_KERNEL); | ||
140 | if (!parts) | ||
141 | goto out; | ||
142 | |||
143 | res = kzalloc(sizeof(struct resource), GFP_KERNEL); | ||
144 | if (!res) | ||
145 | goto out1; | ||
146 | |||
147 | pfd = kzalloc(sizeof(struct physmap_flash_data), GFP_KERNEL); | ||
148 | if (!pfd) | ||
149 | goto out2; | ||
150 | |||
151 | pd = platform_device_alloc("physmap-flash", 0); | ||
152 | if (!pd) | ||
153 | goto out3; | ||
154 | |||
155 | /* NOR flash ends at 0x20000000, regardless of size */ | ||
156 | res->start = 0x20000000 - size; | ||
157 | res->end = 0x20000000 - 1; | ||
158 | res->flags = IORESOURCE_MEM; | ||
159 | |||
160 | /* partition setup. Most Develboards have a switch which allows | ||
161 | * to swap the physical locations of the 2 NOR flash banks. | ||
162 | */ | ||
163 | i = 0; | ||
164 | if (!swapped) { | ||
165 | /* first NOR chip */ | ||
166 | parts[i].offset = 0; | ||
167 | parts[i].name = "User FS"; | ||
168 | parts[i].size = size / 2; | ||
169 | i++; | ||
170 | } | ||
171 | |||
172 | parts[i].offset = MTDPART_OFS_APPEND; | ||
173 | parts[i].name = "User FS 2"; | ||
174 | parts[i].size = (size / 2) - (0x20000000 - 0x1fc00000); | ||
175 | i++; | ||
176 | |||
177 | parts[i].offset = MTDPART_OFS_APPEND; | ||
178 | parts[i].name = "YAMON"; | ||
179 | parts[i].size = YAMON_SIZE; | ||
180 | parts[i].mask_flags = MTD_WRITEABLE; | ||
181 | i++; | ||
182 | |||
183 | parts[i].offset = MTDPART_OFS_APPEND; | ||
184 | parts[i].name = "raw kernel"; | ||
185 | parts[i].size = 0x00400000 - YAMON_SIZE - YAMON_ENV_SIZE; | ||
186 | i++; | ||
187 | |||
188 | parts[i].offset = MTDPART_OFS_APPEND; | ||
189 | parts[i].name = "YAMON Env"; | ||
190 | parts[i].size = YAMON_ENV_SIZE; | ||
191 | parts[i].mask_flags = MTD_WRITEABLE; | ||
192 | i++; | ||
193 | |||
194 | if (swapped) { | ||
195 | parts[i].offset = MTDPART_OFS_APPEND; | ||
196 | parts[i].name = "User FS"; | ||
197 | parts[i].size = size / 2; | ||
198 | i++; | ||
199 | } | ||
200 | |||
201 | pfd->width = width; | ||
202 | pfd->parts = parts; | ||
203 | pfd->nr_parts = 5; | ||
204 | |||
205 | pd->dev.platform_data = pfd; | ||
206 | pd->resource = res; | ||
207 | pd->num_resources = 1; | ||
208 | |||
209 | ret = platform_device_add(pd); | ||
210 | if (!ret) | ||
211 | return ret; | ||
212 | |||
213 | platform_device_put(pd); | ||
214 | out3: | ||
215 | kfree(pfd); | ||
216 | out2: | ||
217 | kfree(res); | ||
218 | out1: | ||
219 | kfree(parts); | ||
220 | out: | ||
221 | return ret; | ||
222 | } | ||
diff --git a/arch/mips/alchemy/devboards/platform.h b/arch/mips/alchemy/devboards/platform.h new file mode 100644 index 000000000000..5ac055d2cda9 --- /dev/null +++ b/arch/mips/alchemy/devboards/platform.h | |||
@@ -0,0 +1,21 @@ | |||
1 | #ifndef _DEVBOARD_PLATFORM_H_ | ||
2 | #define _DEVBOARD_PLATFORM_H_ | ||
3 | |||
4 | #include <linux/init.h> | ||
5 | |||
6 | int __init db1x_register_pcmcia_socket(phys_addr_t pcmcia_attr_start, | ||
7 | phys_addr_t pcmcia_attr_len, | ||
8 | phys_addr_t pcmcia_mem_start, | ||
9 | phys_addr_t pcmcia_mem_end, | ||
10 | phys_addr_t pcmcia_io_start, | ||
11 | phys_addr_t pcmcia_io_end, | ||
12 | int card_irq, | ||
13 | int cd_irq, | ||
14 | int stschg_irq, | ||
15 | int eject_irq, | ||
16 | int id); | ||
17 | |||
18 | int __init db1x_register_norflash(unsigned long size, int width, | ||
19 | int swapped); | ||
20 | |||
21 | #endif | ||
diff --git a/arch/mips/alchemy/devboards/pm.c b/arch/mips/alchemy/devboards/pm.c index 632f9862a0fb..4bbd3133e451 100644 --- a/arch/mips/alchemy/devboards/pm.c +++ b/arch/mips/alchemy/devboards/pm.c | |||
@@ -10,6 +10,7 @@ | |||
10 | #include <linux/sysfs.h> | 10 | #include <linux/sysfs.h> |
11 | #include <asm/mach-au1x00/au1000.h> | 11 | #include <asm/mach-au1x00/au1000.h> |
12 | #include <asm/mach-au1x00/gpio.h> | 12 | #include <asm/mach-au1x00/gpio.h> |
13 | #include <asm/mach-db1x00/bcsr.h> | ||
13 | 14 | ||
14 | /* | 15 | /* |
15 | * Generic suspend userspace interface for Alchemy development boards. | 16 | * Generic suspend userspace interface for Alchemy development boards. |
@@ -26,6 +27,20 @@ static unsigned long db1x_pm_last_wakesrc; | |||
26 | 27 | ||
27 | static int db1x_pm_enter(suspend_state_t state) | 28 | static int db1x_pm_enter(suspend_state_t state) |
28 | { | 29 | { |
30 | unsigned short bcsrs[16]; | ||
31 | int i, j, hasint; | ||
32 | |||
33 | /* save CPLD regs */ | ||
34 | hasint = bcsr_read(BCSR_WHOAMI); | ||
35 | hasint = BCSR_WHOAMI_BOARD(hasint) >= BCSR_WHOAMI_DB1200; | ||
36 | j = (hasint) ? BCSR_MASKSET : BCSR_SYSTEM; | ||
37 | |||
38 | for (i = BCSR_STATUS; i <= j; i++) | ||
39 | bcsrs[i] = bcsr_read(i); | ||
40 | |||
41 | /* shut off hexleds */ | ||
42 | bcsr_write(BCSR_HEXCLEAR, 3); | ||
43 | |||
29 | /* enable GPIO based wakeup */ | 44 | /* enable GPIO based wakeup */ |
30 | alchemy_gpio1_input_enable(); | 45 | alchemy_gpio1_input_enable(); |
31 | 46 | ||
@@ -52,6 +67,23 @@ static int db1x_pm_enter(suspend_state_t state) | |||
52 | /* ...and now the sandman can come! */ | 67 | /* ...and now the sandman can come! */ |
53 | au_sleep(); | 68 | au_sleep(); |
54 | 69 | ||
70 | |||
71 | /* restore CPLD regs */ | ||
72 | for (i = BCSR_STATUS; i <= BCSR_SYSTEM; i++) | ||
73 | bcsr_write(i, bcsrs[i]); | ||
74 | |||
75 | /* restore CPLD int registers */ | ||
76 | if (hasint) { | ||
77 | bcsr_write(BCSR_INTCLR, 0xffff); | ||
78 | bcsr_write(BCSR_MASKCLR, 0xffff); | ||
79 | bcsr_write(BCSR_INTSTAT, 0xffff); | ||
80 | bcsr_write(BCSR_INTSET, bcsrs[BCSR_INTSET]); | ||
81 | bcsr_write(BCSR_MASKSET, bcsrs[BCSR_MASKSET]); | ||
82 | } | ||
83 | |||
84 | /* light up hexleds */ | ||
85 | bcsr_write(BCSR_HEXCLEAR, 0); | ||
86 | |||
55 | return 0; | 87 | return 0; |
56 | } | 88 | } |
57 | 89 | ||
diff --git a/arch/mips/alchemy/devboards/prom.c b/arch/mips/alchemy/devboards/prom.c index 0042bd6b1d7d..b30df5c97ad3 100644 --- a/arch/mips/alchemy/devboards/prom.c +++ b/arch/mips/alchemy/devboards/prom.c | |||
@@ -60,3 +60,8 @@ void __init prom_init(void) | |||
60 | strict_strtoul(memsize_str, 0, &memsize); | 60 | strict_strtoul(memsize_str, 0, &memsize); |
61 | add_memory_region(0, memsize, BOOT_MEM_RAM); | 61 | add_memory_region(0, memsize, BOOT_MEM_RAM); |
62 | } | 62 | } |
63 | |||
64 | void prom_putchar(unsigned char c) | ||
65 | { | ||
66 | alchemy_uart_putchar(UART0_PHYS_ADDR, c); | ||
67 | } | ||
diff --git a/arch/mips/alchemy/mtx-1/Makefile b/arch/mips/alchemy/mtx-1/Makefile index 7c67b3d33bec..4a53815b3c6c 100644 --- a/arch/mips/alchemy/mtx-1/Makefile +++ b/arch/mips/alchemy/mtx-1/Makefile | |||
@@ -6,7 +6,7 @@ | |||
6 | # Makefile for 4G Systems MTX-1 board. | 6 | # Makefile for 4G Systems MTX-1 board. |
7 | # | 7 | # |
8 | 8 | ||
9 | lib-y := init.o board_setup.o irqmap.o | 9 | lib-y := init.o board_setup.o |
10 | obj-y := platform.o | 10 | obj-y := platform.o |
11 | 11 | ||
12 | EXTRA_CFLAGS += -Werror | 12 | EXTRA_CFLAGS += -Werror |
diff --git a/arch/mips/alchemy/mtx-1/board_setup.c b/arch/mips/alchemy/mtx-1/board_setup.c index 45b61c9b82b9..a9f0336e1f1f 100644 --- a/arch/mips/alchemy/mtx-1/board_setup.c +++ b/arch/mips/alchemy/mtx-1/board_setup.c | |||
@@ -30,32 +30,43 @@ | |||
30 | 30 | ||
31 | #include <linux/gpio.h> | 31 | #include <linux/gpio.h> |
32 | #include <linux/init.h> | 32 | #include <linux/init.h> |
33 | #include <linux/interrupt.h> | ||
34 | #include <linux/pm.h> | ||
33 | 35 | ||
36 | #include <asm/reboot.h> | ||
34 | #include <asm/mach-au1x00/au1000.h> | 37 | #include <asm/mach-au1x00/au1000.h> |
35 | 38 | ||
36 | #include <prom.h> | 39 | #include <prom.h> |
37 | 40 | ||
41 | char irq_tab_alchemy[][5] __initdata = { | ||
42 | [0] = { -1, AU1500_PCI_INTA, AU1500_PCI_INTA, 0xff, 0xff }, /* IDSEL 00 - AdapterA-Slot0 (top) */ | ||
43 | [1] = { -1, AU1500_PCI_INTB, AU1500_PCI_INTA, 0xff, 0xff }, /* IDSEL 01 - AdapterA-Slot1 (bottom) */ | ||
44 | [2] = { -1, AU1500_PCI_INTC, AU1500_PCI_INTD, 0xff, 0xff }, /* IDSEL 02 - AdapterB-Slot0 (top) */ | ||
45 | [3] = { -1, AU1500_PCI_INTD, AU1500_PCI_INTC, 0xff, 0xff }, /* IDSEL 03 - AdapterB-Slot1 (bottom) */ | ||
46 | [4] = { -1, AU1500_PCI_INTA, AU1500_PCI_INTB, 0xff, 0xff }, /* IDSEL 04 - AdapterC-Slot0 (top) */ | ||
47 | [5] = { -1, AU1500_PCI_INTB, AU1500_PCI_INTA, 0xff, 0xff }, /* IDSEL 05 - AdapterC-Slot1 (bottom) */ | ||
48 | [6] = { -1, AU1500_PCI_INTC, AU1500_PCI_INTD, 0xff, 0xff }, /* IDSEL 06 - AdapterD-Slot0 (top) */ | ||
49 | [7] = { -1, AU1500_PCI_INTD, AU1500_PCI_INTC, 0xff, 0xff }, /* IDSEL 07 - AdapterD-Slot1 (bottom) */ | ||
50 | }; | ||
51 | |||
38 | extern int (*board_pci_idsel)(unsigned int devsel, int assert); | 52 | extern int (*board_pci_idsel)(unsigned int devsel, int assert); |
39 | int mtx1_pci_idsel(unsigned int devsel, int assert); | 53 | int mtx1_pci_idsel(unsigned int devsel, int assert); |
40 | 54 | ||
41 | void board_reset(void) | 55 | static void mtx1_reset(char *c) |
42 | { | 56 | { |
43 | /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ | 57 | /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ |
44 | au_writel(0x00000000, 0xAE00001C); | 58 | au_writel(0x00000000, 0xAE00001C); |
45 | } | 59 | } |
46 | 60 | ||
47 | void __init board_setup(void) | 61 | static void mtx1_power_off(void) |
48 | { | 62 | { |
49 | #ifdef CONFIG_SERIAL_8250_CONSOLE | 63 | printk(KERN_ALERT "It's now safe to remove power\n"); |
50 | char *argptr; | 64 | while (1) |
51 | argptr = prom_getcmdline(); | 65 | asm volatile (".set mips3 ; wait ; .set mips1"); |
52 | argptr = strstr(argptr, "console="); | 66 | } |
53 | if (argptr == NULL) { | ||
54 | argptr = prom_getcmdline(); | ||
55 | strcat(argptr, " console=ttyS0,115200"); | ||
56 | } | ||
57 | #endif | ||
58 | 67 | ||
68 | void __init board_setup(void) | ||
69 | { | ||
59 | alchemy_gpio2_enable(); | 70 | alchemy_gpio2_enable(); |
60 | 71 | ||
61 | #if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) | 72 | #if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) |
@@ -86,6 +97,10 @@ void __init board_setup(void) | |||
86 | alchemy_gpio_direction_output(211, 1); /* green on */ | 97 | alchemy_gpio_direction_output(211, 1); /* green on */ |
87 | alchemy_gpio_direction_output(212, 0); /* red off */ | 98 | alchemy_gpio_direction_output(212, 0); /* red off */ |
88 | 99 | ||
100 | pm_power_off = mtx1_power_off; | ||
101 | _machine_halt = mtx1_power_off; | ||
102 | _machine_restart = mtx1_reset; | ||
103 | |||
89 | printk(KERN_INFO "4G Systems MTX-1 Board\n"); | 104 | printk(KERN_INFO "4G Systems MTX-1 Board\n"); |
90 | } | 105 | } |
91 | 106 | ||
@@ -109,3 +124,15 @@ mtx1_pci_idsel(unsigned int devsel, int assert) | |||
109 | au_sync_udelay(1); | 124 | au_sync_udelay(1); |
110 | return 1; | 125 | return 1; |
111 | } | 126 | } |
127 | |||
128 | static int __init mtx1_init_irq(void) | ||
129 | { | ||
130 | set_irq_type(AU1500_GPIO204_INT, IRQF_TRIGGER_HIGH); | ||
131 | set_irq_type(AU1500_GPIO201_INT, IRQF_TRIGGER_LOW); | ||
132 | set_irq_type(AU1500_GPIO202_INT, IRQF_TRIGGER_LOW); | ||
133 | set_irq_type(AU1500_GPIO203_INT, IRQF_TRIGGER_LOW); | ||
134 | set_irq_type(AU1500_GPIO205_INT, IRQF_TRIGGER_LOW); | ||
135 | |||
136 | return 0; | ||
137 | } | ||
138 | arch_initcall(mtx1_init_irq); | ||
diff --git a/arch/mips/alchemy/mtx-1/init.c b/arch/mips/alchemy/mtx-1/init.c index 5e871c8d9e96..f8d25575fa05 100644 --- a/arch/mips/alchemy/mtx-1/init.c +++ b/arch/mips/alchemy/mtx-1/init.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/init.h> | 32 | #include <linux/init.h> |
33 | 33 | ||
34 | #include <asm/bootinfo.h> | 34 | #include <asm/bootinfo.h> |
35 | #include <asm/mach-au1x00/au1000.h> | ||
35 | 36 | ||
36 | #include <prom.h> | 37 | #include <prom.h> |
37 | 38 | ||
@@ -58,3 +59,8 @@ void __init prom_init(void) | |||
58 | strict_strtoul(memsize_str, 0, &memsize); | 59 | strict_strtoul(memsize_str, 0, &memsize); |
59 | add_memory_region(0, memsize, BOOT_MEM_RAM); | 60 | add_memory_region(0, memsize, BOOT_MEM_RAM); |
60 | } | 61 | } |
62 | |||
63 | void prom_putchar(unsigned char c) | ||
64 | { | ||
65 | alchemy_uart_putchar(UART0_PHYS_ADDR, c); | ||
66 | } | ||
diff --git a/arch/mips/alchemy/mtx-1/irqmap.c b/arch/mips/alchemy/mtx-1/irqmap.c deleted file mode 100644 index f1ab12ab3433..000000000000 --- a/arch/mips/alchemy/mtx-1/irqmap.c +++ /dev/null | |||
@@ -1,56 +0,0 @@ | |||
1 | /* | ||
2 | * BRIEF MODULE DESCRIPTION | ||
3 | * Au1xxx irq map table | ||
4 | * | ||
5 | * Copyright 2003 Embedded Edge, LLC | ||
6 | * dan@embeddededge.com | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify it | ||
9 | * under the terms of the GNU General Public License as published by the | ||
10 | * Free Software Foundation; either version 2 of the License, or (at your | ||
11 | * option) any later version. | ||
12 | * | ||
13 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
14 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
15 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
16 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
17 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
18 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
19 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
20 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
21 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
22 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License along | ||
25 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
26 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
27 | */ | ||
28 | |||
29 | #include <linux/init.h> | ||
30 | #include <linux/interrupt.h> | ||
31 | #include <asm/mach-au1x00/au1000.h> | ||
32 | |||
33 | char irq_tab_alchemy[][5] __initdata = { | ||
34 | [0] = { -1, INTA, INTA, INTX, INTX }, /* IDSEL 00 - AdapterA-Slot0 (top) */ | ||
35 | [1] = { -1, INTB, INTA, INTX, INTX }, /* IDSEL 01 - AdapterA-Slot1 (bottom) */ | ||
36 | [2] = { -1, INTC, INTD, INTX, INTX }, /* IDSEL 02 - AdapterB-Slot0 (top) */ | ||
37 | [3] = { -1, INTD, INTC, INTX, INTX }, /* IDSEL 03 - AdapterB-Slot1 (bottom) */ | ||
38 | [4] = { -1, INTA, INTB, INTX, INTX }, /* IDSEL 04 - AdapterC-Slot0 (top) */ | ||
39 | [5] = { -1, INTB, INTA, INTX, INTX }, /* IDSEL 05 - AdapterC-Slot1 (bottom) */ | ||
40 | [6] = { -1, INTC, INTD, INTX, INTX }, /* IDSEL 06 - AdapterD-Slot0 (top) */ | ||
41 | [7] = { -1, INTD, INTC, INTX, INTX }, /* IDSEL 07 - AdapterD-Slot1 (bottom) */ | ||
42 | }; | ||
43 | |||
44 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
45 | { AU1500_GPIO_204, IRQF_TRIGGER_HIGH, 0 }, | ||
46 | { AU1500_GPIO_201, IRQF_TRIGGER_LOW, 0 }, | ||
47 | { AU1500_GPIO_202, IRQF_TRIGGER_LOW, 0 }, | ||
48 | { AU1500_GPIO_203, IRQF_TRIGGER_LOW, 0 }, | ||
49 | { AU1500_GPIO_205, IRQF_TRIGGER_LOW, 0 }, | ||
50 | }; | ||
51 | |||
52 | |||
53 | void __init board_init_irq(void) | ||
54 | { | ||
55 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
56 | } | ||
diff --git a/arch/mips/alchemy/xxs1500/Makefile b/arch/mips/alchemy/xxs1500/Makefile index db3c526f64d8..4dc81d794cb8 100644 --- a/arch/mips/alchemy/xxs1500/Makefile +++ b/arch/mips/alchemy/xxs1500/Makefile | |||
@@ -5,4 +5,6 @@ | |||
5 | # Makefile for MyCable XXS1500 board. | 5 | # Makefile for MyCable XXS1500 board. |
6 | # | 6 | # |
7 | 7 | ||
8 | lib-y := init.o board_setup.o irqmap.o | 8 | lib-y := init.o board_setup.o platform.o |
9 | |||
10 | EXTRA_CFLAGS += -Werror | ||
diff --git a/arch/mips/alchemy/xxs1500/board_setup.c b/arch/mips/alchemy/xxs1500/board_setup.c index 4de2d48caed8..47b42927607b 100644 --- a/arch/mips/alchemy/xxs1500/board_setup.c +++ b/arch/mips/alchemy/xxs1500/board_setup.c | |||
@@ -25,31 +25,35 @@ | |||
25 | 25 | ||
26 | #include <linux/gpio.h> | 26 | #include <linux/gpio.h> |
27 | #include <linux/init.h> | 27 | #include <linux/init.h> |
28 | #include <linux/interrupt.h> | ||
28 | #include <linux/delay.h> | 29 | #include <linux/delay.h> |
30 | #include <linux/pm.h> | ||
29 | 31 | ||
32 | #include <asm/reboot.h> | ||
30 | #include <asm/mach-au1x00/au1000.h> | 33 | #include <asm/mach-au1x00/au1000.h> |
31 | 34 | ||
32 | #include <prom.h> | 35 | #include <prom.h> |
33 | 36 | ||
34 | void board_reset(void) | 37 | static void xxs1500_reset(char *c) |
35 | { | 38 | { |
36 | /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ | 39 | /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ |
37 | au_writel(0x00000000, 0xAE00001C); | 40 | au_writel(0x00000000, 0xAE00001C); |
38 | } | 41 | } |
39 | 42 | ||
43 | static void xxs1500_power_off(void) | ||
44 | { | ||
45 | printk(KERN_ALERT "It's now safe to remove power\n"); | ||
46 | while (1) | ||
47 | asm volatile (".set mips3 ; wait ; .set mips1"); | ||
48 | } | ||
49 | |||
40 | void __init board_setup(void) | 50 | void __init board_setup(void) |
41 | { | 51 | { |
42 | u32 pin_func; | 52 | u32 pin_func; |
43 | 53 | ||
44 | #ifdef CONFIG_SERIAL_8250_CONSOLE | 54 | pm_power_off = xxs1500_power_off; |
45 | char *argptr; | 55 | _machine_halt = xxs1500_power_off; |
46 | argptr = prom_getcmdline(); | 56 | _machine_restart = xxs1500_reset; |
47 | argptr = strstr(argptr, "console="); | ||
48 | if (argptr == NULL) { | ||
49 | argptr = prom_getcmdline(); | ||
50 | strcat(argptr, " console=ttyS0,115200"); | ||
51 | } | ||
52 | #endif | ||
53 | 57 | ||
54 | alchemy_gpio1_input_enable(); | 58 | alchemy_gpio1_input_enable(); |
55 | alchemy_gpio2_enable(); | 59 | alchemy_gpio2_enable(); |
@@ -68,22 +72,6 @@ void __init board_setup(void) | |||
68 | /* Enable DTR = USB power up */ | 72 | /* Enable DTR = USB power up */ |
69 | au_writel(0x01, UART3_ADDR + UART_MCR); /* UART_MCR_DTR is 0x01??? */ | 73 | au_writel(0x01, UART3_ADDR + UART_MCR); /* UART_MCR_DTR is 0x01??? */ |
70 | 74 | ||
71 | #ifdef CONFIG_PCMCIA_XXS1500 | ||
72 | /* GPIO 0, 1, and 4 are inputs */ | ||
73 | alchemy_gpio_direction_input(0); | ||
74 | alchemy_gpio_direction_input(1); | ||
75 | alchemy_gpio_direction_input(4); | ||
76 | |||
77 | /* GPIO2 208/9/10/11 are inputs */ | ||
78 | alchemy_gpio_direction_input(208); | ||
79 | alchemy_gpio_direction_input(209); | ||
80 | alchemy_gpio_direction_input(210); | ||
81 | alchemy_gpio_direction_input(211); | ||
82 | |||
83 | /* Turn off power */ | ||
84 | alchemy_gpio_direction_output(214, 0); | ||
85 | #endif | ||
86 | |||
87 | #ifdef CONFIG_PCI | 75 | #ifdef CONFIG_PCI |
88 | #if defined(__MIPSEB__) | 76 | #if defined(__MIPSEB__) |
89 | au_writel(0xf | (2 << 6) | (1 << 4), Au1500_PCI_CFG); | 77 | au_writel(0xf | (2 << 6) | (1 << 4), Au1500_PCI_CFG); |
@@ -92,3 +80,23 @@ void __init board_setup(void) | |||
92 | #endif | 80 | #endif |
93 | #endif | 81 | #endif |
94 | } | 82 | } |
83 | |||
84 | static int __init xxs1500_init_irq(void) | ||
85 | { | ||
86 | set_irq_type(AU1500_GPIO204_INT, IRQF_TRIGGER_HIGH); | ||
87 | set_irq_type(AU1500_GPIO201_INT, IRQF_TRIGGER_LOW); | ||
88 | set_irq_type(AU1500_GPIO202_INT, IRQF_TRIGGER_LOW); | ||
89 | set_irq_type(AU1500_GPIO203_INT, IRQF_TRIGGER_LOW); | ||
90 | set_irq_type(AU1500_GPIO205_INT, IRQF_TRIGGER_LOW); | ||
91 | set_irq_type(AU1500_GPIO207_INT, IRQF_TRIGGER_LOW); | ||
92 | |||
93 | set_irq_type(AU1500_GPIO0_INT, IRQF_TRIGGER_LOW); | ||
94 | set_irq_type(AU1500_GPIO1_INT, IRQF_TRIGGER_LOW); | ||
95 | set_irq_type(AU1500_GPIO2_INT, IRQF_TRIGGER_LOW); | ||
96 | set_irq_type(AU1500_GPIO3_INT, IRQF_TRIGGER_LOW); | ||
97 | set_irq_type(AU1500_GPIO4_INT, IRQF_TRIGGER_LOW); /* CF irq */ | ||
98 | set_irq_type(AU1500_GPIO5_INT, IRQF_TRIGGER_LOW); | ||
99 | |||
100 | return 0; | ||
101 | } | ||
102 | arch_initcall(xxs1500_init_irq); | ||
diff --git a/arch/mips/alchemy/xxs1500/init.c b/arch/mips/alchemy/xxs1500/init.c index 456fa142c093..15125c2fda7d 100644 --- a/arch/mips/alchemy/xxs1500/init.c +++ b/arch/mips/alchemy/xxs1500/init.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/kernel.h> | 30 | #include <linux/kernel.h> |
31 | 31 | ||
32 | #include <asm/bootinfo.h> | 32 | #include <asm/bootinfo.h> |
33 | #include <asm/mach-au1x00/au1000.h> | ||
33 | 34 | ||
34 | #include <prom.h> | 35 | #include <prom.h> |
35 | 36 | ||
@@ -56,3 +57,8 @@ void __init prom_init(void) | |||
56 | strict_strtoul(memsize_str, 0, &memsize); | 57 | strict_strtoul(memsize_str, 0, &memsize); |
57 | add_memory_region(0, memsize, BOOT_MEM_RAM); | 58 | add_memory_region(0, memsize, BOOT_MEM_RAM); |
58 | } | 59 | } |
60 | |||
61 | void prom_putchar(unsigned char c) | ||
62 | { | ||
63 | alchemy_uart_putchar(UART0_PHYS_ADDR, c); | ||
64 | } | ||
diff --git a/arch/mips/alchemy/xxs1500/irqmap.c b/arch/mips/alchemy/xxs1500/irqmap.c deleted file mode 100644 index 0f0f3012e5fd..000000000000 --- a/arch/mips/alchemy/xxs1500/irqmap.c +++ /dev/null | |||
@@ -1,52 +0,0 @@ | |||
1 | /* | ||
2 | * BRIEF MODULE DESCRIPTION | ||
3 | * Au1xxx irq map table | ||
4 | * | ||
5 | * Copyright 2003 Embedded Edge, LLC | ||
6 | * dan@embeddededge.com | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify it | ||
9 | * under the terms of the GNU General Public License as published by the | ||
10 | * Free Software Foundation; either version 2 of the License, or (at your | ||
11 | * option) any later version. | ||
12 | * | ||
13 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
14 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
15 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
16 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
17 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
18 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
19 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
20 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
21 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
22 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License along | ||
25 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
26 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
27 | */ | ||
28 | |||
29 | #include <linux/init.h> | ||
30 | #include <linux/interrupt.h> | ||
31 | #include <asm/mach-au1x00/au1000.h> | ||
32 | |||
33 | struct au1xxx_irqmap __initdata au1xxx_irq_map[] = { | ||
34 | { AU1500_GPIO_204, IRQF_TRIGGER_HIGH, 0 }, | ||
35 | { AU1500_GPIO_201, IRQF_TRIGGER_LOW, 0 }, | ||
36 | { AU1500_GPIO_202, IRQF_TRIGGER_LOW, 0 }, | ||
37 | { AU1500_GPIO_203, IRQF_TRIGGER_LOW, 0 }, | ||
38 | { AU1500_GPIO_205, IRQF_TRIGGER_LOW, 0 }, | ||
39 | { AU1500_GPIO_207, IRQF_TRIGGER_LOW, 0 }, | ||
40 | |||
41 | { AU1000_GPIO_0, IRQF_TRIGGER_LOW, 0 }, | ||
42 | { AU1000_GPIO_1, IRQF_TRIGGER_LOW, 0 }, | ||
43 | { AU1000_GPIO_2, IRQF_TRIGGER_LOW, 0 }, | ||
44 | { AU1000_GPIO_3, IRQF_TRIGGER_LOW, 0 }, | ||
45 | { AU1000_GPIO_4, IRQF_TRIGGER_LOW, 0 }, /* CF interrupt */ | ||
46 | { AU1000_GPIO_5, IRQF_TRIGGER_LOW, 0 }, | ||
47 | }; | ||
48 | |||
49 | void __init board_init_irq(void) | ||
50 | { | ||
51 | au1xxx_setup_irqmap(au1xxx_irq_map, ARRAY_SIZE(au1xxx_irq_map)); | ||
52 | } | ||
diff --git a/arch/mips/alchemy/xxs1500/platform.c b/arch/mips/alchemy/xxs1500/platform.c new file mode 100644 index 000000000000..e87c45cde61b --- /dev/null +++ b/arch/mips/alchemy/xxs1500/platform.c | |||
@@ -0,0 +1,63 @@ | |||
1 | /* | ||
2 | * XXS1500 board platform device registration | ||
3 | * | ||
4 | * Copyright (C) 2009 Manuel Lauss | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/init.h> | ||
22 | #include <linux/platform_device.h> | ||
23 | |||
24 | #include <asm/mach-au1x00/au1000.h> | ||
25 | |||
26 | static struct resource xxs1500_pcmcia_res[] = { | ||
27 | { | ||
28 | .name = "pcmcia-io", | ||
29 | .flags = IORESOURCE_MEM, | ||
30 | .start = PCMCIA_IO_PHYS_ADDR, | ||
31 | .end = PCMCIA_IO_PHYS_ADDR + 0x000400000 - 1, | ||
32 | }, | ||
33 | { | ||
34 | .name = "pcmcia-attr", | ||
35 | .flags = IORESOURCE_MEM, | ||
36 | .start = PCMCIA_ATTR_PHYS_ADDR, | ||
37 | .end = PCMCIA_ATTR_PHYS_ADDR + 0x000400000 - 1, | ||
38 | }, | ||
39 | { | ||
40 | .name = "pcmcia-mem", | ||
41 | .flags = IORESOURCE_MEM, | ||
42 | .start = PCMCIA_MEM_PHYS_ADDR, | ||
43 | .end = PCMCIA_MEM_PHYS_ADDR + 0x000400000 - 1, | ||
44 | }, | ||
45 | }; | ||
46 | |||
47 | static struct platform_device xxs1500_pcmcia_dev = { | ||
48 | .name = "xxs1500_pcmcia", | ||
49 | .id = -1, | ||
50 | .num_resources = ARRAY_SIZE(xxs1500_pcmcia_res), | ||
51 | .resource = xxs1500_pcmcia_res, | ||
52 | }; | ||
53 | |||
54 | static struct platform_device *xxs1500_devs[] __initdata = { | ||
55 | &xxs1500_pcmcia_dev, | ||
56 | }; | ||
57 | |||
58 | static int __init xxs1500_dev_init(void) | ||
59 | { | ||
60 | return platform_add_devices(xxs1500_devs, | ||
61 | ARRAY_SIZE(xxs1500_devs)); | ||
62 | } | ||
63 | device_initcall(xxs1500_dev_init); | ||
diff --git a/arch/mips/ar7/clock.c b/arch/mips/ar7/clock.c index cc65c8eb391b..fc0e7154e8d6 100644 --- a/arch/mips/ar7/clock.c +++ b/arch/mips/ar7/clock.c | |||
@@ -1,6 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2007 Felix Fietkau <nbd@openwrt.org> | 2 | * Copyright (C) 2007 Felix Fietkau <nbd@openwrt.org> |
3 | * Copyright (C) 2007 Eugene Konev <ejka@openwrt.org> | 3 | * Copyright (C) 2007 Eugene Konev <ejka@openwrt.org> |
4 | * Copyright (C) 2009 Florian Fainelli <florian@openwrt.org> | ||
4 | * | 5 | * |
5 | * This program is free software; you can redistribute it and/or modify | 6 | * This program is free software; you can redistribute it and/or modify |
6 | * it under the terms of the GNU General Public License as published by | 7 | * it under the terms of the GNU General Public License as published by |
@@ -24,6 +25,8 @@ | |||
24 | #include <linux/delay.h> | 25 | #include <linux/delay.h> |
25 | #include <linux/gcd.h> | 26 | #include <linux/gcd.h> |
26 | #include <linux/io.h> | 27 | #include <linux/io.h> |
28 | #include <linux/err.h> | ||
29 | #include <linux/clk.h> | ||
27 | 30 | ||
28 | #include <asm/addrspace.h> | 31 | #include <asm/addrspace.h> |
29 | #include <asm/mach-ar7/ar7.h> | 32 | #include <asm/mach-ar7/ar7.h> |
@@ -94,12 +97,16 @@ struct tnetd7200_clocks { | |||
94 | struct tnetd7200_clock usb; | 97 | struct tnetd7200_clock usb; |
95 | }; | 98 | }; |
96 | 99 | ||
97 | int ar7_cpu_clock = 150000000; | 100 | static struct clk bus_clk = { |
98 | EXPORT_SYMBOL(ar7_cpu_clock); | 101 | .rate = 125000000, |
99 | int ar7_bus_clock = 125000000; | 102 | }; |
100 | EXPORT_SYMBOL(ar7_bus_clock); | 103 | |
101 | int ar7_dsp_clock; | 104 | static struct clk cpu_clk = { |
102 | EXPORT_SYMBOL(ar7_dsp_clock); | 105 | .rate = 150000000, |
106 | }; | ||
107 | |||
108 | static struct clk dsp_clk; | ||
109 | static struct clk vbus_clk; | ||
103 | 110 | ||
104 | static void approximate(int base, int target, int *prediv, | 111 | static void approximate(int base, int target, int *prediv, |
105 | int *postdiv, int *mul) | 112 | int *postdiv, int *mul) |
@@ -185,7 +192,7 @@ static int tnetd7300_get_clock(u32 shift, struct tnetd7300_clock *clock, | |||
185 | base_clock = AR7_XTAL_CLOCK; | 192 | base_clock = AR7_XTAL_CLOCK; |
186 | break; | 193 | break; |
187 | case BOOT_PLL_SOURCE_CPU: | 194 | case BOOT_PLL_SOURCE_CPU: |
188 | base_clock = ar7_cpu_clock; | 195 | base_clock = cpu_clk.rate; |
189 | break; | 196 | break; |
190 | } | 197 | } |
191 | 198 | ||
@@ -212,11 +219,11 @@ static void tnetd7300_set_clock(u32 shift, struct tnetd7300_clock *clock, | |||
212 | u32 *bootcr, u32 frequency) | 219 | u32 *bootcr, u32 frequency) |
213 | { | 220 | { |
214 | int prediv, postdiv, mul; | 221 | int prediv, postdiv, mul; |
215 | int base_clock = ar7_bus_clock; | 222 | int base_clock = bus_clk.rate; |
216 | 223 | ||
217 | switch ((*bootcr & (BOOT_PLL_SOURCE_MASK << shift)) >> shift) { | 224 | switch ((*bootcr & (BOOT_PLL_SOURCE_MASK << shift)) >> shift) { |
218 | case BOOT_PLL_SOURCE_BUS: | 225 | case BOOT_PLL_SOURCE_BUS: |
219 | base_clock = ar7_bus_clock; | 226 | base_clock = bus_clk.rate; |
220 | break; | 227 | break; |
221 | case BOOT_PLL_SOURCE_REF: | 228 | case BOOT_PLL_SOURCE_REF: |
222 | base_clock = AR7_REF_CLOCK; | 229 | base_clock = AR7_REF_CLOCK; |
@@ -225,7 +232,7 @@ static void tnetd7300_set_clock(u32 shift, struct tnetd7300_clock *clock, | |||
225 | base_clock = AR7_XTAL_CLOCK; | 232 | base_clock = AR7_XTAL_CLOCK; |
226 | break; | 233 | break; |
227 | case BOOT_PLL_SOURCE_CPU: | 234 | case BOOT_PLL_SOURCE_CPU: |
228 | base_clock = ar7_cpu_clock; | 235 | base_clock = cpu_clk.rate; |
229 | break; | 236 | break; |
230 | } | 237 | } |
231 | 238 | ||
@@ -247,18 +254,18 @@ static void __init tnetd7300_init_clocks(void) | |||
247 | ioremap_nocache(UR8_REGS_CLOCKS, | 254 | ioremap_nocache(UR8_REGS_CLOCKS, |
248 | sizeof(struct tnetd7300_clocks)); | 255 | sizeof(struct tnetd7300_clocks)); |
249 | 256 | ||
250 | ar7_bus_clock = tnetd7300_get_clock(BUS_PLL_SOURCE_SHIFT, | 257 | bus_clk.rate = tnetd7300_get_clock(BUS_PLL_SOURCE_SHIFT, |
251 | &clocks->bus, bootcr, AR7_AFE_CLOCK); | 258 | &clocks->bus, bootcr, AR7_AFE_CLOCK); |
252 | 259 | ||
253 | if (*bootcr & BOOT_PLL_ASYNC_MODE) | 260 | if (*bootcr & BOOT_PLL_ASYNC_MODE) |
254 | ar7_cpu_clock = tnetd7300_get_clock(CPU_PLL_SOURCE_SHIFT, | 261 | cpu_clk.rate = tnetd7300_get_clock(CPU_PLL_SOURCE_SHIFT, |
255 | &clocks->cpu, bootcr, AR7_AFE_CLOCK); | 262 | &clocks->cpu, bootcr, AR7_AFE_CLOCK); |
256 | else | 263 | else |
257 | ar7_cpu_clock = ar7_bus_clock; | 264 | cpu_clk.rate = bus_clk.rate; |
258 | 265 | ||
259 | if (ar7_dsp_clock == 250000000) | 266 | if (dsp_clk.rate == 250000000) |
260 | tnetd7300_set_clock(DSP_PLL_SOURCE_SHIFT, &clocks->dsp, | 267 | tnetd7300_set_clock(DSP_PLL_SOURCE_SHIFT, &clocks->dsp, |
261 | bootcr, ar7_dsp_clock); | 268 | bootcr, dsp_clk.rate); |
262 | 269 | ||
263 | iounmap(clocks); | 270 | iounmap(clocks); |
264 | iounmap(bootcr); | 271 | iounmap(bootcr); |
@@ -343,20 +350,20 @@ static void __init tnetd7200_init_clocks(void) | |||
343 | printk(KERN_INFO "Clocks: Setting DSP clock\n"); | 350 | printk(KERN_INFO "Clocks: Setting DSP clock\n"); |
344 | calculate(dsp_base, TNETD7200_DEF_DSP_CLK, | 351 | calculate(dsp_base, TNETD7200_DEF_DSP_CLK, |
345 | &dsp_prediv, &dsp_postdiv, &dsp_mul); | 352 | &dsp_prediv, &dsp_postdiv, &dsp_mul); |
346 | ar7_bus_clock = | 353 | bus_clk.rate = |
347 | ((dsp_base / dsp_prediv) * dsp_mul) / dsp_postdiv; | 354 | ((dsp_base / dsp_prediv) * dsp_mul) / dsp_postdiv; |
348 | tnetd7200_set_clock(dsp_base, &clocks->dsp, | 355 | tnetd7200_set_clock(dsp_base, &clocks->dsp, |
349 | dsp_prediv, dsp_postdiv * 2, dsp_postdiv, dsp_mul * 2, | 356 | dsp_prediv, dsp_postdiv * 2, dsp_postdiv, dsp_mul * 2, |
350 | ar7_bus_clock); | 357 | bus_clk.rate); |
351 | 358 | ||
352 | printk(KERN_INFO "Clocks: Setting CPU clock\n"); | 359 | printk(KERN_INFO "Clocks: Setting CPU clock\n"); |
353 | calculate(cpu_base, TNETD7200_DEF_CPU_CLK, &cpu_prediv, | 360 | calculate(cpu_base, TNETD7200_DEF_CPU_CLK, &cpu_prediv, |
354 | &cpu_postdiv, &cpu_mul); | 361 | &cpu_postdiv, &cpu_mul); |
355 | ar7_cpu_clock = | 362 | cpu_clk.rate = |
356 | ((cpu_base / cpu_prediv) * cpu_mul) / cpu_postdiv; | 363 | ((cpu_base / cpu_prediv) * cpu_mul) / cpu_postdiv; |
357 | tnetd7200_set_clock(cpu_base, &clocks->cpu, | 364 | tnetd7200_set_clock(cpu_base, &clocks->cpu, |
358 | cpu_prediv, cpu_postdiv, -1, cpu_mul, | 365 | cpu_prediv, cpu_postdiv, -1, cpu_mul, |
359 | ar7_cpu_clock); | 366 | cpu_clk.rate); |
360 | 367 | ||
361 | } else | 368 | } else |
362 | if (*bootcr & BOOT_PLL_2TO1_MODE) { | 369 | if (*bootcr & BOOT_PLL_2TO1_MODE) { |
@@ -365,48 +372,90 @@ static void __init tnetd7200_init_clocks(void) | |||
365 | printk(KERN_INFO "Clocks: Setting CPU clock\n"); | 372 | printk(KERN_INFO "Clocks: Setting CPU clock\n"); |
366 | calculate(cpu_base, TNETD7200_DEF_CPU_CLK, &cpu_prediv, | 373 | calculate(cpu_base, TNETD7200_DEF_CPU_CLK, &cpu_prediv, |
367 | &cpu_postdiv, &cpu_mul); | 374 | &cpu_postdiv, &cpu_mul); |
368 | ar7_cpu_clock = ((cpu_base / cpu_prediv) * cpu_mul) | 375 | cpu_clk.rate = ((cpu_base / cpu_prediv) * cpu_mul) |
369 | / cpu_postdiv; | 376 | / cpu_postdiv; |
370 | tnetd7200_set_clock(cpu_base, &clocks->cpu, | 377 | tnetd7200_set_clock(cpu_base, &clocks->cpu, |
371 | cpu_prediv, cpu_postdiv, -1, cpu_mul, | 378 | cpu_prediv, cpu_postdiv, -1, cpu_mul, |
372 | ar7_cpu_clock); | 379 | cpu_clk.rate); |
373 | 380 | ||
374 | printk(KERN_INFO "Clocks: Setting DSP clock\n"); | 381 | printk(KERN_INFO "Clocks: Setting DSP clock\n"); |
375 | calculate(dsp_base, TNETD7200_DEF_DSP_CLK, &dsp_prediv, | 382 | calculate(dsp_base, TNETD7200_DEF_DSP_CLK, &dsp_prediv, |
376 | &dsp_postdiv, &dsp_mul); | 383 | &dsp_postdiv, &dsp_mul); |
377 | ar7_bus_clock = ar7_cpu_clock / 2; | 384 | bus_clk.rate = cpu_clk.rate / 2; |
378 | tnetd7200_set_clock(dsp_base, &clocks->dsp, | 385 | tnetd7200_set_clock(dsp_base, &clocks->dsp, |
379 | dsp_prediv, dsp_postdiv * 2, dsp_postdiv, | 386 | dsp_prediv, dsp_postdiv * 2, dsp_postdiv, |
380 | dsp_mul * 2, ar7_bus_clock); | 387 | dsp_mul * 2, bus_clk.rate); |
381 | } else { | 388 | } else { |
382 | printk(KERN_INFO "Clocks: Sync 1:1 mode\n"); | 389 | printk(KERN_INFO "Clocks: Sync 1:1 mode\n"); |
383 | 390 | ||
384 | printk(KERN_INFO "Clocks: Setting DSP clock\n"); | 391 | printk(KERN_INFO "Clocks: Setting DSP clock\n"); |
385 | calculate(dsp_base, TNETD7200_DEF_DSP_CLK, &dsp_prediv, | 392 | calculate(dsp_base, TNETD7200_DEF_DSP_CLK, &dsp_prediv, |
386 | &dsp_postdiv, &dsp_mul); | 393 | &dsp_postdiv, &dsp_mul); |
387 | ar7_bus_clock = ((dsp_base / dsp_prediv) * dsp_mul) | 394 | bus_clk.rate = ((dsp_base / dsp_prediv) * dsp_mul) |
388 | / dsp_postdiv; | 395 | / dsp_postdiv; |
389 | tnetd7200_set_clock(dsp_base, &clocks->dsp, | 396 | tnetd7200_set_clock(dsp_base, &clocks->dsp, |
390 | dsp_prediv, dsp_postdiv * 2, dsp_postdiv, | 397 | dsp_prediv, dsp_postdiv * 2, dsp_postdiv, |
391 | dsp_mul * 2, ar7_bus_clock); | 398 | dsp_mul * 2, bus_clk.rate); |
392 | 399 | ||
393 | ar7_cpu_clock = ar7_bus_clock; | 400 | cpu_clk.rate = bus_clk.rate; |
394 | } | 401 | } |
395 | 402 | ||
396 | printk(KERN_INFO "Clocks: Setting USB clock\n"); | 403 | printk(KERN_INFO "Clocks: Setting USB clock\n"); |
397 | usb_base = ar7_bus_clock; | 404 | usb_base = bus_clk.rate; |
398 | calculate(usb_base, TNETD7200_DEF_USB_CLK, &usb_prediv, | 405 | calculate(usb_base, TNETD7200_DEF_USB_CLK, &usb_prediv, |
399 | &usb_postdiv, &usb_mul); | 406 | &usb_postdiv, &usb_mul); |
400 | tnetd7200_set_clock(usb_base, &clocks->usb, | 407 | tnetd7200_set_clock(usb_base, &clocks->usb, |
401 | usb_prediv, usb_postdiv, -1, usb_mul, | 408 | usb_prediv, usb_postdiv, -1, usb_mul, |
402 | TNETD7200_DEF_USB_CLK); | 409 | TNETD7200_DEF_USB_CLK); |
403 | 410 | ||
404 | ar7_dsp_clock = ar7_cpu_clock; | 411 | dsp_clk.rate = cpu_clk.rate; |
405 | 412 | ||
406 | iounmap(clocks); | 413 | iounmap(clocks); |
407 | iounmap(bootcr); | 414 | iounmap(bootcr); |
408 | } | 415 | } |
409 | 416 | ||
417 | /* | ||
418 | * Linux clock API | ||
419 | */ | ||
420 | int clk_enable(struct clk *clk) | ||
421 | { | ||
422 | return 0; | ||
423 | } | ||
424 | EXPORT_SYMBOL(clk_enable); | ||
425 | |||
426 | void clk_disable(struct clk *clk) | ||
427 | { | ||
428 | } | ||
429 | EXPORT_SYMBOL(clk_disable); | ||
430 | |||
431 | unsigned long clk_get_rate(struct clk *clk) | ||
432 | { | ||
433 | return clk->rate; | ||
434 | } | ||
435 | EXPORT_SYMBOL(clk_get_rate); | ||
436 | |||
437 | struct clk *clk_get(struct device *dev, const char *id) | ||
438 | { | ||
439 | if (!strcmp(id, "bus")) | ||
440 | return &bus_clk; | ||
441 | /* cpmac and vbus share the same rate */ | ||
442 | if (!strcmp(id, "cpmac")) | ||
443 | return &vbus_clk; | ||
444 | if (!strcmp(id, "cpu")) | ||
445 | return &cpu_clk; | ||
446 | if (!strcmp(id, "dsp")); | ||
447 | return &dsp_clk; | ||
448 | if (!strcmp(id, "vbus")) | ||
449 | return &vbus_clk; | ||
450 | return ERR_PTR(-ENOENT); | ||
451 | } | ||
452 | EXPORT_SYMBOL(clk_get); | ||
453 | |||
454 | void clk_put(struct clk *clk) | ||
455 | { | ||
456 | } | ||
457 | EXPORT_SYMBOL(clk_put); | ||
458 | |||
410 | int __init ar7_init_clocks(void) | 459 | int __init ar7_init_clocks(void) |
411 | { | 460 | { |
412 | switch (ar7_chip_id()) { | 461 | switch (ar7_chip_id()) { |
@@ -415,12 +464,14 @@ int __init ar7_init_clocks(void) | |||
415 | tnetd7200_init_clocks(); | 464 | tnetd7200_init_clocks(); |
416 | break; | 465 | break; |
417 | case AR7_CHIP_7300: | 466 | case AR7_CHIP_7300: |
418 | ar7_dsp_clock = tnetd7300_dsp_clock(); | 467 | dsp_clk.rate = tnetd7300_dsp_clock(); |
419 | tnetd7300_init_clocks(); | 468 | tnetd7300_init_clocks(); |
420 | break; | 469 | break; |
421 | default: | 470 | default: |
422 | break; | 471 | break; |
423 | } | 472 | } |
473 | /* adjust vbus clock rate */ | ||
474 | vbus_clk.rate = bus_clk.rate / 2; | ||
424 | 475 | ||
425 | return 0; | 476 | return 0; |
426 | } | 477 | } |
diff --git a/arch/mips/ar7/gpio.c b/arch/mips/ar7/gpio.c index 74e14a3dbf4a..c32fbb57441a 100644 --- a/arch/mips/ar7/gpio.c +++ b/arch/mips/ar7/gpio.c | |||
@@ -1,6 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2007 Felix Fietkau <nbd@openwrt.org> | 2 | * Copyright (C) 2007 Felix Fietkau <nbd@openwrt.org> |
3 | * Copyright (C) 2007 Eugene Konev <ejka@openwrt.org> | 3 | * Copyright (C) 2007 Eugene Konev <ejka@openwrt.org> |
4 | * Copyright (C) 2009 Florian Fainelli <florian@openwrt.org> | ||
4 | * | 5 | * |
5 | * This program is free software; you can redistribute it and/or modify | 6 | * This program is free software; you can redistribute it and/or modify |
6 | * it under the terms of the GNU General Public License as published by | 7 | * it under the terms of the GNU General Public License as published by |
@@ -18,31 +19,113 @@ | |||
18 | */ | 19 | */ |
19 | 20 | ||
20 | #include <linux/module.h> | 21 | #include <linux/module.h> |
22 | #include <linux/gpio.h> | ||
21 | 23 | ||
22 | #include <asm/mach-ar7/gpio.h> | 24 | #include <asm/mach-ar7/gpio.h> |
23 | 25 | ||
24 | static const char *ar7_gpio_list[AR7_GPIO_MAX]; | 26 | struct ar7_gpio_chip { |
27 | void __iomem *regs; | ||
28 | struct gpio_chip chip; | ||
29 | }; | ||
25 | 30 | ||
26 | int gpio_request(unsigned gpio, const char *label) | 31 | static int ar7_gpio_get_value(struct gpio_chip *chip, unsigned gpio) |
27 | { | 32 | { |
28 | if (gpio >= AR7_GPIO_MAX) | 33 | struct ar7_gpio_chip *gpch = |
29 | return -EINVAL; | 34 | container_of(chip, struct ar7_gpio_chip, chip); |
35 | void __iomem *gpio_in = gpch->regs + AR7_GPIO_INPUT; | ||
30 | 36 | ||
31 | if (ar7_gpio_list[gpio]) | 37 | return readl(gpio_in) & (1 << gpio); |
32 | return -EBUSY; | 38 | } |
39 | |||
40 | static void ar7_gpio_set_value(struct gpio_chip *chip, | ||
41 | unsigned gpio, int value) | ||
42 | { | ||
43 | struct ar7_gpio_chip *gpch = | ||
44 | container_of(chip, struct ar7_gpio_chip, chip); | ||
45 | void __iomem *gpio_out = gpch->regs + AR7_GPIO_OUTPUT; | ||
46 | unsigned tmp; | ||
47 | |||
48 | tmp = readl(gpio_out) & ~(1 << gpio); | ||
49 | if (value) | ||
50 | tmp |= 1 << gpio; | ||
51 | writel(tmp, gpio_out); | ||
52 | } | ||
53 | |||
54 | static int ar7_gpio_direction_input(struct gpio_chip *chip, unsigned gpio) | ||
55 | { | ||
56 | struct ar7_gpio_chip *gpch = | ||
57 | container_of(chip, struct ar7_gpio_chip, chip); | ||
58 | void __iomem *gpio_dir = gpch->regs + AR7_GPIO_DIR; | ||
33 | 59 | ||
34 | if (label) | 60 | writel(readl(gpio_dir) | (1 << gpio), gpio_dir); |
35 | ar7_gpio_list[gpio] = label; | ||
36 | else | ||
37 | ar7_gpio_list[gpio] = "busy"; | ||
38 | 61 | ||
39 | return 0; | 62 | return 0; |
40 | } | 63 | } |
41 | EXPORT_SYMBOL(gpio_request); | ||
42 | 64 | ||
43 | void gpio_free(unsigned gpio) | 65 | static int ar7_gpio_direction_output(struct gpio_chip *chip, |
66 | unsigned gpio, int value) | ||
44 | { | 67 | { |
45 | BUG_ON(!ar7_gpio_list[gpio]); | 68 | struct ar7_gpio_chip *gpch = |
46 | ar7_gpio_list[gpio] = NULL; | 69 | container_of(chip, struct ar7_gpio_chip, chip); |
70 | void __iomem *gpio_dir = gpch->regs + AR7_GPIO_DIR; | ||
71 | |||
72 | ar7_gpio_set_value(chip, gpio, value); | ||
73 | writel(readl(gpio_dir) & ~(1 << gpio), gpio_dir); | ||
74 | |||
75 | return 0; | ||
76 | } | ||
77 | |||
78 | static struct ar7_gpio_chip ar7_gpio_chip = { | ||
79 | .chip = { | ||
80 | .label = "ar7-gpio", | ||
81 | .direction_input = ar7_gpio_direction_input, | ||
82 | .direction_output = ar7_gpio_direction_output, | ||
83 | .set = ar7_gpio_set_value, | ||
84 | .get = ar7_gpio_get_value, | ||
85 | .base = 0, | ||
86 | .ngpio = AR7_GPIO_MAX, | ||
87 | } | ||
88 | }; | ||
89 | |||
90 | int ar7_gpio_enable(unsigned gpio) | ||
91 | { | ||
92 | void __iomem *gpio_en = ar7_gpio_chip.regs + AR7_GPIO_ENABLE; | ||
93 | |||
94 | writel(readl(gpio_en) | (1 << gpio), gpio_en); | ||
95 | |||
96 | return 0; | ||
97 | } | ||
98 | EXPORT_SYMBOL(ar7_gpio_enable); | ||
99 | |||
100 | int ar7_gpio_disable(unsigned gpio) | ||
101 | { | ||
102 | void __iomem *gpio_en = ar7_gpio_chip.regs + AR7_GPIO_ENABLE; | ||
103 | |||
104 | writel(readl(gpio_en) & ~(1 << gpio), gpio_en); | ||
105 | |||
106 | return 0; | ||
107 | } | ||
108 | EXPORT_SYMBOL(ar7_gpio_disable); | ||
109 | |||
110 | static int __init ar7_gpio_init(void) | ||
111 | { | ||
112 | int ret; | ||
113 | |||
114 | ar7_gpio_chip.regs = ioremap_nocache(AR7_REGS_GPIO, | ||
115 | AR7_REGS_GPIO + 0x10); | ||
116 | |||
117 | if (!ar7_gpio_chip.regs) { | ||
118 | printk(KERN_ERR "ar7-gpio: failed to ioremap regs\n"); | ||
119 | return -ENOMEM; | ||
120 | } | ||
121 | |||
122 | ret = gpiochip_add(&ar7_gpio_chip.chip); | ||
123 | if (ret) { | ||
124 | printk(KERN_ERR "ar7-gpio: failed to add gpiochip\n"); | ||
125 | return ret; | ||
126 | } | ||
127 | printk(KERN_INFO "ar7-gpio: registered %d GPIOs\n", | ||
128 | ar7_gpio_chip.chip.ngpio); | ||
129 | return ret; | ||
47 | } | 130 | } |
48 | EXPORT_SYMBOL(gpio_free); | 131 | arch_initcall(ar7_gpio_init); |
diff --git a/arch/mips/ar7/memory.c b/arch/mips/ar7/memory.c index 696c723dc6d4..28abfeef09d6 100644 --- a/arch/mips/ar7/memory.c +++ b/arch/mips/ar7/memory.c | |||
@@ -62,8 +62,7 @@ void __init prom_meminit(void) | |||
62 | unsigned long pages; | 62 | unsigned long pages; |
63 | 63 | ||
64 | pages = memsize() >> PAGE_SHIFT; | 64 | pages = memsize() >> PAGE_SHIFT; |
65 | add_memory_region(PHYS_OFFSET, pages << PAGE_SHIFT, | 65 | add_memory_region(PHYS_OFFSET, pages << PAGE_SHIFT, BOOT_MEM_RAM); |
66 | BOOT_MEM_RAM); | ||
67 | } | 66 | } |
68 | 67 | ||
69 | void __init prom_free_prom_memory(void) | 68 | void __init prom_free_prom_memory(void) |
diff --git a/arch/mips/ar7/platform.c b/arch/mips/ar7/platform.c index 835f3f0319ca..2fafc78e5ce1 100644 --- a/arch/mips/ar7/platform.c +++ b/arch/mips/ar7/platform.c | |||
@@ -34,45 +34,50 @@ | |||
34 | #include <linux/etherdevice.h> | 34 | #include <linux/etherdevice.h> |
35 | #include <linux/phy.h> | 35 | #include <linux/phy.h> |
36 | #include <linux/phy_fixed.h> | 36 | #include <linux/phy_fixed.h> |
37 | #include <linux/gpio.h> | ||
38 | #include <linux/clk.h> | ||
37 | 39 | ||
38 | #include <asm/addrspace.h> | 40 | #include <asm/addrspace.h> |
39 | #include <asm/mach-ar7/ar7.h> | 41 | #include <asm/mach-ar7/ar7.h> |
40 | #include <asm/mach-ar7/gpio.h> | 42 | #include <asm/mach-ar7/gpio.h> |
41 | #include <asm/mach-ar7/prom.h> | 43 | #include <asm/mach-ar7/prom.h> |
42 | 44 | ||
45 | /***************************************************************************** | ||
46 | * VLYNQ Bus | ||
47 | ****************************************************************************/ | ||
43 | struct plat_vlynq_data { | 48 | struct plat_vlynq_data { |
44 | struct plat_vlynq_ops ops; | 49 | struct plat_vlynq_ops ops; |
45 | int gpio_bit; | 50 | int gpio_bit; |
46 | int reset_bit; | 51 | int reset_bit; |
47 | }; | 52 | }; |
48 | 53 | ||
49 | |||
50 | static int vlynq_on(struct vlynq_device *dev) | 54 | static int vlynq_on(struct vlynq_device *dev) |
51 | { | 55 | { |
52 | int result; | 56 | int ret; |
53 | struct plat_vlynq_data *pdata = dev->dev.platform_data; | 57 | struct plat_vlynq_data *pdata = dev->dev.platform_data; |
54 | 58 | ||
55 | result = gpio_request(pdata->gpio_bit, "vlynq"); | 59 | ret = gpio_request(pdata->gpio_bit, "vlynq"); |
56 | if (result) | 60 | if (ret) |
57 | goto out; | 61 | goto out; |
58 | 62 | ||
59 | ar7_device_reset(pdata->reset_bit); | 63 | ar7_device_reset(pdata->reset_bit); |
60 | 64 | ||
61 | result = ar7_gpio_disable(pdata->gpio_bit); | 65 | ret = ar7_gpio_disable(pdata->gpio_bit); |
62 | if (result) | 66 | if (ret) |
63 | goto out_enabled; | 67 | goto out_enabled; |
64 | 68 | ||
65 | result = ar7_gpio_enable(pdata->gpio_bit); | 69 | ret = ar7_gpio_enable(pdata->gpio_bit); |
66 | if (result) | 70 | if (ret) |
67 | goto out_enabled; | 71 | goto out_enabled; |
68 | 72 | ||
69 | result = gpio_direction_output(pdata->gpio_bit, 0); | 73 | ret = gpio_direction_output(pdata->gpio_bit, 0); |
70 | if (result) | 74 | if (ret) |
71 | goto out_gpio_enabled; | 75 | goto out_gpio_enabled; |
72 | 76 | ||
73 | msleep(50); | 77 | msleep(50); |
74 | 78 | ||
75 | gpio_set_value(pdata->gpio_bit, 1); | 79 | gpio_set_value(pdata->gpio_bit, 1); |
80 | |||
76 | msleep(50); | 81 | msleep(50); |
77 | 82 | ||
78 | return 0; | 83 | return 0; |
@@ -83,320 +88,384 @@ out_enabled: | |||
83 | ar7_device_disable(pdata->reset_bit); | 88 | ar7_device_disable(pdata->reset_bit); |
84 | gpio_free(pdata->gpio_bit); | 89 | gpio_free(pdata->gpio_bit); |
85 | out: | 90 | out: |
86 | return result; | 91 | return ret; |
87 | } | 92 | } |
88 | 93 | ||
89 | static void vlynq_off(struct vlynq_device *dev) | 94 | static void vlynq_off(struct vlynq_device *dev) |
90 | { | 95 | { |
91 | struct plat_vlynq_data *pdata = dev->dev.platform_data; | 96 | struct plat_vlynq_data *pdata = dev->dev.platform_data; |
97 | |||
92 | ar7_gpio_disable(pdata->gpio_bit); | 98 | ar7_gpio_disable(pdata->gpio_bit); |
93 | gpio_free(pdata->gpio_bit); | 99 | gpio_free(pdata->gpio_bit); |
94 | ar7_device_disable(pdata->reset_bit); | 100 | ar7_device_disable(pdata->reset_bit); |
95 | } | 101 | } |
96 | 102 | ||
97 | static struct resource physmap_flash_resource = { | 103 | static struct resource vlynq_low_res[] = { |
98 | .name = "mem", | ||
99 | .flags = IORESOURCE_MEM, | ||
100 | .start = 0x10000000, | ||
101 | .end = 0x107fffff, | ||
102 | }; | ||
103 | |||
104 | static struct resource cpmac_low_res[] = { | ||
105 | { | 104 | { |
106 | .name = "regs", | 105 | .name = "regs", |
107 | .flags = IORESOURCE_MEM, | 106 | .flags = IORESOURCE_MEM, |
108 | .start = AR7_REGS_MAC0, | 107 | .start = AR7_REGS_VLYNQ0, |
109 | .end = AR7_REGS_MAC0 + 0x7ff, | 108 | .end = AR7_REGS_VLYNQ0 + 0xff, |
110 | }, | 109 | }, |
111 | { | 110 | { |
112 | .name = "irq", | 111 | .name = "irq", |
113 | .flags = IORESOURCE_IRQ, | 112 | .flags = IORESOURCE_IRQ, |
114 | .start = 27, | 113 | .start = 29, |
115 | .end = 27, | 114 | .end = 29, |
116 | }, | 115 | }, |
117 | }; | ||
118 | |||
119 | static struct resource cpmac_high_res[] = { | ||
120 | { | 116 | { |
121 | .name = "regs", | 117 | .name = "mem", |
122 | .flags = IORESOURCE_MEM, | 118 | .flags = IORESOURCE_MEM, |
123 | .start = AR7_REGS_MAC1, | 119 | .start = 0x04000000, |
124 | .end = AR7_REGS_MAC1 + 0x7ff, | 120 | .end = 0x04ffffff, |
125 | }, | 121 | }, |
126 | { | 122 | { |
127 | .name = "irq", | 123 | .name = "devirq", |
128 | .flags = IORESOURCE_IRQ, | 124 | .flags = IORESOURCE_IRQ, |
129 | .start = 41, | 125 | .start = 80, |
130 | .end = 41, | 126 | .end = 111, |
131 | }, | 127 | }, |
132 | }; | 128 | }; |
133 | 129 | ||
134 | static struct resource vlynq_low_res[] = { | 130 | static struct resource vlynq_high_res[] = { |
135 | { | 131 | { |
136 | .name = "regs", | 132 | .name = "regs", |
137 | .flags = IORESOURCE_MEM, | 133 | .flags = IORESOURCE_MEM, |
138 | .start = AR7_REGS_VLYNQ0, | 134 | .start = AR7_REGS_VLYNQ1, |
139 | .end = AR7_REGS_VLYNQ0 + 0xff, | 135 | .end = AR7_REGS_VLYNQ1 + 0xff, |
140 | }, | 136 | }, |
141 | { | 137 | { |
142 | .name = "irq", | 138 | .name = "irq", |
143 | .flags = IORESOURCE_IRQ, | 139 | .flags = IORESOURCE_IRQ, |
144 | .start = 29, | 140 | .start = 33, |
145 | .end = 29, | 141 | .end = 33, |
146 | }, | 142 | }, |
147 | { | 143 | { |
148 | .name = "mem", | 144 | .name = "mem", |
149 | .flags = IORESOURCE_MEM, | 145 | .flags = IORESOURCE_MEM, |
150 | .start = 0x04000000, | 146 | .start = 0x0c000000, |
151 | .end = 0x04ffffff, | 147 | .end = 0x0cffffff, |
152 | }, | 148 | }, |
153 | { | 149 | { |
154 | .name = "devirq", | 150 | .name = "devirq", |
155 | .flags = IORESOURCE_IRQ, | 151 | .flags = IORESOURCE_IRQ, |
156 | .start = 80, | 152 | .start = 112, |
157 | .end = 111, | 153 | .end = 143, |
158 | }, | 154 | }, |
159 | }; | 155 | }; |
160 | 156 | ||
161 | static struct resource vlynq_high_res[] = { | 157 | static struct plat_vlynq_data vlynq_low_data = { |
162 | { | 158 | .ops = { |
163 | .name = "regs", | 159 | .on = vlynq_on, |
164 | .flags = IORESOURCE_MEM, | 160 | .off = vlynq_off, |
165 | .start = AR7_REGS_VLYNQ1, | ||
166 | .end = AR7_REGS_VLYNQ1 + 0xff, | ||
167 | }, | 161 | }, |
168 | { | 162 | .reset_bit = 20, |
169 | .name = "irq", | 163 | .gpio_bit = 18, |
170 | .flags = IORESOURCE_IRQ, | 164 | }; |
171 | .start = 33, | 165 | |
172 | .end = 33, | 166 | static struct plat_vlynq_data vlynq_high_data = { |
167 | .ops = { | ||
168 | .on = vlynq_on, | ||
169 | .off = vlynq_off, | ||
173 | }, | 170 | }, |
174 | { | 171 | .reset_bit = 16, |
175 | .name = "mem", | 172 | .gpio_bit = 19, |
176 | .flags = IORESOURCE_MEM, | 173 | }; |
177 | .start = 0x0c000000, | 174 | |
178 | .end = 0x0cffffff, | 175 | static struct platform_device vlynq_low = { |
176 | .id = 0, | ||
177 | .name = "vlynq", | ||
178 | .dev = { | ||
179 | .platform_data = &vlynq_low_data, | ||
179 | }, | 180 | }, |
180 | { | 181 | .resource = vlynq_low_res, |
181 | .name = "devirq", | 182 | .num_resources = ARRAY_SIZE(vlynq_low_res), |
182 | .flags = IORESOURCE_IRQ, | 183 | }; |
183 | .start = 112, | 184 | |
184 | .end = 143, | 185 | static struct platform_device vlynq_high = { |
186 | .id = 1, | ||
187 | .name = "vlynq", | ||
188 | .dev = { | ||
189 | .platform_data = &vlynq_high_data, | ||
185 | }, | 190 | }, |
191 | .resource = vlynq_high_res, | ||
192 | .num_resources = ARRAY_SIZE(vlynq_high_res), | ||
186 | }; | 193 | }; |
187 | 194 | ||
188 | static struct resource usb_res[] = { | 195 | /***************************************************************************** |
189 | { | 196 | * Flash |
190 | .name = "regs", | 197 | ****************************************************************************/ |
191 | .flags = IORESOURCE_MEM, | 198 | static struct resource physmap_flash_resource = { |
192 | .start = AR7_REGS_USB, | 199 | .name = "mem", |
193 | .end = AR7_REGS_USB + 0xff, | 200 | .flags = IORESOURCE_MEM, |
201 | .start = 0x10000000, | ||
202 | .end = 0x107fffff, | ||
203 | }; | ||
204 | |||
205 | static struct physmap_flash_data physmap_flash_data = { | ||
206 | .width = 2, | ||
207 | }; | ||
208 | |||
209 | static struct platform_device physmap_flash = { | ||
210 | .name = "physmap-flash", | ||
211 | .dev = { | ||
212 | .platform_data = &physmap_flash_data, | ||
194 | }, | 213 | }, |
214 | .resource = &physmap_flash_resource, | ||
215 | .num_resources = 1, | ||
216 | }; | ||
217 | |||
218 | /***************************************************************************** | ||
219 | * Ethernet | ||
220 | ****************************************************************************/ | ||
221 | static struct resource cpmac_low_res[] = { | ||
195 | { | 222 | { |
196 | .name = "irq", | 223 | .name = "regs", |
197 | .flags = IORESOURCE_IRQ, | 224 | .flags = IORESOURCE_MEM, |
198 | .start = 32, | 225 | .start = AR7_REGS_MAC0, |
199 | .end = 32, | 226 | .end = AR7_REGS_MAC0 + 0x7ff, |
200 | }, | 227 | }, |
201 | { | 228 | { |
202 | .name = "mem", | 229 | .name = "irq", |
203 | .flags = IORESOURCE_MEM, | 230 | .flags = IORESOURCE_IRQ, |
204 | .start = 0x03400000, | 231 | .start = 27, |
205 | .end = 0x034001fff, | 232 | .end = 27, |
206 | }, | 233 | }, |
207 | }; | 234 | }; |
208 | 235 | ||
209 | static struct physmap_flash_data physmap_flash_data = { | 236 | static struct resource cpmac_high_res[] = { |
210 | .width = 2, | 237 | { |
238 | .name = "regs", | ||
239 | .flags = IORESOURCE_MEM, | ||
240 | .start = AR7_REGS_MAC1, | ||
241 | .end = AR7_REGS_MAC1 + 0x7ff, | ||
242 | }, | ||
243 | { | ||
244 | .name = "irq", | ||
245 | .flags = IORESOURCE_IRQ, | ||
246 | .start = 41, | ||
247 | .end = 41, | ||
248 | }, | ||
211 | }; | 249 | }; |
212 | 250 | ||
213 | static struct fixed_phy_status fixed_phy_status __initdata = { | 251 | static struct fixed_phy_status fixed_phy_status __initdata = { |
214 | .link = 1, | 252 | .link = 1, |
215 | .speed = 100, | 253 | .speed = 100, |
216 | .duplex = 1, | 254 | .duplex = 1, |
217 | }; | 255 | }; |
218 | 256 | ||
219 | static struct plat_cpmac_data cpmac_low_data = { | 257 | static struct plat_cpmac_data cpmac_low_data = { |
220 | .reset_bit = 17, | 258 | .reset_bit = 17, |
221 | .power_bit = 20, | 259 | .power_bit = 20, |
222 | .phy_mask = 0x80000000, | 260 | .phy_mask = 0x80000000, |
223 | }; | 261 | }; |
224 | 262 | ||
225 | static struct plat_cpmac_data cpmac_high_data = { | 263 | static struct plat_cpmac_data cpmac_high_data = { |
226 | .reset_bit = 21, | 264 | .reset_bit = 21, |
227 | .power_bit = 22, | 265 | .power_bit = 22, |
228 | .phy_mask = 0x7fffffff, | 266 | .phy_mask = 0x7fffffff, |
229 | }; | ||
230 | |||
231 | static struct plat_vlynq_data vlynq_low_data = { | ||
232 | .ops.on = vlynq_on, | ||
233 | .ops.off = vlynq_off, | ||
234 | .reset_bit = 20, | ||
235 | .gpio_bit = 18, | ||
236 | }; | ||
237 | |||
238 | static struct plat_vlynq_data vlynq_high_data = { | ||
239 | .ops.on = vlynq_on, | ||
240 | .ops.off = vlynq_off, | ||
241 | .reset_bit = 16, | ||
242 | .gpio_bit = 19, | ||
243 | }; | ||
244 | |||
245 | static struct platform_device physmap_flash = { | ||
246 | .id = 0, | ||
247 | .name = "physmap-flash", | ||
248 | .dev.platform_data = &physmap_flash_data, | ||
249 | .resource = &physmap_flash_resource, | ||
250 | .num_resources = 1, | ||
251 | }; | 267 | }; |
252 | 268 | ||
253 | static u64 cpmac_dma_mask = DMA_BIT_MASK(32); | 269 | static u64 cpmac_dma_mask = DMA_BIT_MASK(32); |
270 | |||
254 | static struct platform_device cpmac_low = { | 271 | static struct platform_device cpmac_low = { |
255 | .id = 0, | 272 | .id = 0, |
256 | .name = "cpmac", | 273 | .name = "cpmac", |
257 | .dev = { | 274 | .dev = { |
258 | .dma_mask = &cpmac_dma_mask, | 275 | .dma_mask = &cpmac_dma_mask, |
259 | .coherent_dma_mask = DMA_BIT_MASK(32), | 276 | .coherent_dma_mask = DMA_BIT_MASK(32), |
260 | .platform_data = &cpmac_low_data, | 277 | .platform_data = &cpmac_low_data, |
261 | }, | 278 | }, |
262 | .resource = cpmac_low_res, | 279 | .resource = cpmac_low_res, |
263 | .num_resources = ARRAY_SIZE(cpmac_low_res), | 280 | .num_resources = ARRAY_SIZE(cpmac_low_res), |
264 | }; | 281 | }; |
265 | 282 | ||
266 | static struct platform_device cpmac_high = { | 283 | static struct platform_device cpmac_high = { |
267 | .id = 1, | 284 | .id = 1, |
268 | .name = "cpmac", | 285 | .name = "cpmac", |
269 | .dev = { | 286 | .dev = { |
270 | .dma_mask = &cpmac_dma_mask, | 287 | .dma_mask = &cpmac_dma_mask, |
271 | .coherent_dma_mask = DMA_BIT_MASK(32), | 288 | .coherent_dma_mask = DMA_BIT_MASK(32), |
272 | .platform_data = &cpmac_high_data, | 289 | .platform_data = &cpmac_high_data, |
273 | }, | 290 | }, |
274 | .resource = cpmac_high_res, | 291 | .resource = cpmac_high_res, |
275 | .num_resources = ARRAY_SIZE(cpmac_high_res), | 292 | .num_resources = ARRAY_SIZE(cpmac_high_res), |
276 | }; | 293 | }; |
277 | 294 | ||
278 | static struct platform_device vlynq_low = { | 295 | static inline unsigned char char2hex(char h) |
279 | .id = 0, | 296 | { |
280 | .name = "vlynq", | 297 | switch (h) { |
281 | .dev.platform_data = &vlynq_low_data, | 298 | case '0': case '1': case '2': case '3': case '4': |
282 | .resource = vlynq_low_res, | 299 | case '5': case '6': case '7': case '8': case '9': |
283 | .num_resources = ARRAY_SIZE(vlynq_low_res), | 300 | return h - '0'; |
284 | }; | 301 | case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': |
302 | return h - 'A' + 10; | ||
303 | case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': | ||
304 | return h - 'a' + 10; | ||
305 | default: | ||
306 | return 0; | ||
307 | } | ||
308 | } | ||
285 | 309 | ||
286 | static struct platform_device vlynq_high = { | 310 | static void cpmac_get_mac(int instance, unsigned char *dev_addr) |
287 | .id = 1, | 311 | { |
288 | .name = "vlynq", | 312 | int i; |
289 | .dev.platform_data = &vlynq_high_data, | 313 | char name[5], default_mac[ETH_ALEN], *mac; |
290 | .resource = vlynq_high_res, | 314 | |
291 | .num_resources = ARRAY_SIZE(vlynq_high_res), | 315 | mac = NULL; |
316 | sprintf(name, "mac%c", 'a' + instance); | ||
317 | mac = prom_getenv(name); | ||
318 | if (!mac) { | ||
319 | sprintf(name, "mac%c", 'a'); | ||
320 | mac = prom_getenv(name); | ||
321 | } | ||
322 | if (!mac) { | ||
323 | random_ether_addr(default_mac); | ||
324 | mac = default_mac; | ||
325 | } | ||
326 | for (i = 0; i < 6; i++) | ||
327 | dev_addr[i] = (char2hex(mac[i * 3]) << 4) + | ||
328 | char2hex(mac[i * 3 + 1]); | ||
329 | } | ||
330 | |||
331 | /***************************************************************************** | ||
332 | * USB | ||
333 | ****************************************************************************/ | ||
334 | static struct resource usb_res[] = { | ||
335 | { | ||
336 | .name = "regs", | ||
337 | .flags = IORESOURCE_MEM, | ||
338 | .start = AR7_REGS_USB, | ||
339 | .end = AR7_REGS_USB + 0xff, | ||
340 | }, | ||
341 | { | ||
342 | .name = "irq", | ||
343 | .flags = IORESOURCE_IRQ, | ||
344 | .start = 32, | ||
345 | .end = 32, | ||
346 | }, | ||
347 | { | ||
348 | .name = "mem", | ||
349 | .flags = IORESOURCE_MEM, | ||
350 | .start = 0x03400000, | ||
351 | .end = 0x03401fff, | ||
352 | }, | ||
292 | }; | 353 | }; |
293 | 354 | ||
355 | static struct platform_device ar7_udc = { | ||
356 | .name = "ar7_udc", | ||
357 | .resource = usb_res, | ||
358 | .num_resources = ARRAY_SIZE(usb_res), | ||
359 | }; | ||
294 | 360 | ||
361 | /***************************************************************************** | ||
362 | * LEDs | ||
363 | ****************************************************************************/ | ||
295 | static struct gpio_led default_leds[] = { | 364 | static struct gpio_led default_leds[] = { |
296 | { | 365 | { |
297 | .name = "status", | 366 | .name = "status", |
298 | .gpio = 8, | 367 | .gpio = 8, |
299 | .active_low = 1, | 368 | .active_low = 1, |
300 | }, | 369 | }, |
301 | }; | 370 | }; |
302 | 371 | ||
303 | static struct gpio_led dsl502t_leds[] = { | 372 | static struct gpio_led dsl502t_leds[] = { |
304 | { | 373 | { |
305 | .name = "status", | 374 | .name = "status", |
306 | .gpio = 9, | 375 | .gpio = 9, |
307 | .active_low = 1, | 376 | .active_low = 1, |
308 | }, | 377 | }, |
309 | { | 378 | { |
310 | .name = "ethernet", | 379 | .name = "ethernet", |
311 | .gpio = 7, | 380 | .gpio = 7, |
312 | .active_low = 1, | 381 | .active_low = 1, |
313 | }, | 382 | }, |
314 | { | 383 | { |
315 | .name = "usb", | 384 | .name = "usb", |
316 | .gpio = 12, | 385 | .gpio = 12, |
317 | .active_low = 1, | 386 | .active_low = 1, |
318 | }, | 387 | }, |
319 | }; | 388 | }; |
320 | 389 | ||
321 | static struct gpio_led dg834g_leds[] = { | 390 | static struct gpio_led dg834g_leds[] = { |
322 | { | 391 | { |
323 | .name = "ppp", | 392 | .name = "ppp", |
324 | .gpio = 6, | 393 | .gpio = 6, |
325 | .active_low = 1, | 394 | .active_low = 1, |
326 | }, | 395 | }, |
327 | { | 396 | { |
328 | .name = "status", | 397 | .name = "status", |
329 | .gpio = 7, | 398 | .gpio = 7, |
330 | .active_low = 1, | 399 | .active_low = 1, |
331 | }, | 400 | }, |
332 | { | 401 | { |
333 | .name = "adsl", | 402 | .name = "adsl", |
334 | .gpio = 8, | 403 | .gpio = 8, |
335 | .active_low = 1, | 404 | .active_low = 1, |
336 | }, | 405 | }, |
337 | { | 406 | { |
338 | .name = "wifi", | 407 | .name = "wifi", |
339 | .gpio = 12, | 408 | .gpio = 12, |
340 | .active_low = 1, | 409 | .active_low = 1, |
341 | }, | 410 | }, |
342 | { | 411 | { |
343 | .name = "power", | 412 | .name = "power", |
344 | .gpio = 14, | 413 | .gpio = 14, |
345 | .active_low = 1, | 414 | .active_low = 1, |
346 | .default_trigger = "default-on", | 415 | .default_trigger = "default-on", |
347 | }, | 416 | }, |
348 | }; | 417 | }; |
349 | 418 | ||
350 | static struct gpio_led fb_sl_leds[] = { | 419 | static struct gpio_led fb_sl_leds[] = { |
351 | { | 420 | { |
352 | .name = "1", | 421 | .name = "1", |
353 | .gpio = 7, | 422 | .gpio = 7, |
354 | }, | 423 | }, |
355 | { | 424 | { |
356 | .name = "2", | 425 | .name = "2", |
357 | .gpio = 13, | 426 | .gpio = 13, |
358 | .active_low = 1, | 427 | .active_low = 1, |
359 | }, | 428 | }, |
360 | { | 429 | { |
361 | .name = "3", | 430 | .name = "3", |
362 | .gpio = 10, | 431 | .gpio = 10, |
363 | .active_low = 1, | 432 | .active_low = 1, |
364 | }, | 433 | }, |
365 | { | 434 | { |
366 | .name = "4", | 435 | .name = "4", |
367 | .gpio = 12, | 436 | .gpio = 12, |
368 | .active_low = 1, | 437 | .active_low = 1, |
369 | }, | 438 | }, |
370 | { | 439 | { |
371 | .name = "5", | 440 | .name = "5", |
372 | .gpio = 9, | 441 | .gpio = 9, |
373 | .active_low = 1, | 442 | .active_low = 1, |
374 | }, | 443 | }, |
375 | }; | 444 | }; |
376 | 445 | ||
377 | static struct gpio_led fb_fon_leds[] = { | 446 | static struct gpio_led fb_fon_leds[] = { |
378 | { | 447 | { |
379 | .name = "1", | 448 | .name = "1", |
380 | .gpio = 8, | 449 | .gpio = 8, |
381 | }, | 450 | }, |
382 | { | 451 | { |
383 | .name = "2", | 452 | .name = "2", |
384 | .gpio = 3, | 453 | .gpio = 3, |
385 | .active_low = 1, | 454 | .active_low = 1, |
386 | }, | 455 | }, |
387 | { | 456 | { |
388 | .name = "3", | 457 | .name = "3", |
389 | .gpio = 5, | 458 | .gpio = 5, |
390 | }, | 459 | }, |
391 | { | 460 | { |
392 | .name = "4", | 461 | .name = "4", |
393 | .gpio = 4, | 462 | .gpio = 4, |
394 | .active_low = 1, | 463 | .active_low = 1, |
395 | }, | 464 | }, |
396 | { | 465 | { |
397 | .name = "5", | 466 | .name = "5", |
398 | .gpio = 11, | 467 | .gpio = 11, |
399 | .active_low = 1, | 468 | .active_low = 1, |
400 | }, | 469 | }, |
401 | }; | 470 | }; |
402 | 471 | ||
@@ -404,69 +473,11 @@ static struct gpio_led_platform_data ar7_led_data; | |||
404 | 473 | ||
405 | static struct platform_device ar7_gpio_leds = { | 474 | static struct platform_device ar7_gpio_leds = { |
406 | .name = "leds-gpio", | 475 | .name = "leds-gpio", |
407 | .id = -1, | ||
408 | .dev = { | 476 | .dev = { |
409 | .platform_data = &ar7_led_data, | 477 | .platform_data = &ar7_led_data, |
410 | } | 478 | } |
411 | }; | 479 | }; |
412 | 480 | ||
413 | static struct platform_device ar7_udc = { | ||
414 | .id = -1, | ||
415 | .name = "ar7_udc", | ||
416 | .resource = usb_res, | ||
417 | .num_resources = ARRAY_SIZE(usb_res), | ||
418 | }; | ||
419 | |||
420 | static struct resource ar7_wdt_res = { | ||
421 | .name = "regs", | ||
422 | .start = -1, /* Filled at runtime */ | ||
423 | .end = -1, /* Filled at runtime */ | ||
424 | .flags = IORESOURCE_MEM, | ||
425 | }; | ||
426 | |||
427 | static struct platform_device ar7_wdt = { | ||
428 | .id = -1, | ||
429 | .name = "ar7_wdt", | ||
430 | .resource = &ar7_wdt_res, | ||
431 | .num_resources = 1, | ||
432 | }; | ||
433 | |||
434 | static inline unsigned char char2hex(char h) | ||
435 | { | ||
436 | switch (h) { | ||
437 | case '0': case '1': case '2': case '3': case '4': | ||
438 | case '5': case '6': case '7': case '8': case '9': | ||
439 | return h - '0'; | ||
440 | case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': | ||
441 | return h - 'A' + 10; | ||
442 | case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': | ||
443 | return h - 'a' + 10; | ||
444 | default: | ||
445 | return 0; | ||
446 | } | ||
447 | } | ||
448 | |||
449 | static void cpmac_get_mac(int instance, unsigned char *dev_addr) | ||
450 | { | ||
451 | int i; | ||
452 | char name[5], default_mac[ETH_ALEN], *mac; | ||
453 | |||
454 | mac = NULL; | ||
455 | sprintf(name, "mac%c", 'a' + instance); | ||
456 | mac = prom_getenv(name); | ||
457 | if (!mac) { | ||
458 | sprintf(name, "mac%c", 'a'); | ||
459 | mac = prom_getenv(name); | ||
460 | } | ||
461 | if (!mac) { | ||
462 | random_ether_addr(default_mac); | ||
463 | mac = default_mac; | ||
464 | } | ||
465 | for (i = 0; i < 6; i++) | ||
466 | dev_addr[i] = (char2hex(mac[i * 3]) << 4) + | ||
467 | char2hex(mac[i * 3 + 1]); | ||
468 | } | ||
469 | |||
470 | static void __init detect_leds(void) | 481 | static void __init detect_leds(void) |
471 | { | 482 | { |
472 | char *prid, *usb_prod; | 483 | char *prid, *usb_prod; |
@@ -499,111 +510,150 @@ static void __init detect_leds(void) | |||
499 | } | 510 | } |
500 | } | 511 | } |
501 | 512 | ||
502 | static int __init ar7_register_devices(void) | 513 | /***************************************************************************** |
514 | * Watchdog | ||
515 | ****************************************************************************/ | ||
516 | static struct resource ar7_wdt_res = { | ||
517 | .name = "regs", | ||
518 | .flags = IORESOURCE_MEM, | ||
519 | .start = -1, /* Filled at runtime */ | ||
520 | .end = -1, /* Filled at runtime */ | ||
521 | }; | ||
522 | |||
523 | static struct platform_device ar7_wdt = { | ||
524 | .name = "ar7_wdt", | ||
525 | .resource = &ar7_wdt_res, | ||
526 | .num_resources = 1, | ||
527 | }; | ||
528 | |||
529 | /***************************************************************************** | ||
530 | * Init | ||
531 | ****************************************************************************/ | ||
532 | static int __init ar7_register_uarts(void) | ||
503 | { | 533 | { |
504 | u16 chip_id; | ||
505 | int res; | ||
506 | u32 *bootcr, val; | ||
507 | #ifdef CONFIG_SERIAL_8250 | 534 | #ifdef CONFIG_SERIAL_8250 |
508 | static struct uart_port uart_port[2]; | 535 | static struct uart_port uart_port __initdata; |
509 | 536 | struct clk *bus_clk; | |
510 | memset(uart_port, 0, sizeof(struct uart_port) * 2); | 537 | int res; |
511 | 538 | ||
512 | uart_port[0].type = PORT_16550A; | 539 | memset(&uart_port, 0, sizeof(struct uart_port)); |
513 | uart_port[0].line = 0; | 540 | |
514 | uart_port[0].irq = AR7_IRQ_UART0; | 541 | bus_clk = clk_get(NULL, "bus"); |
515 | uart_port[0].uartclk = ar7_bus_freq() / 2; | 542 | if (IS_ERR(bus_clk)) |
516 | uart_port[0].iotype = UPIO_MEM32; | 543 | panic("unable to get bus clk\n"); |
517 | uart_port[0].mapbase = AR7_REGS_UART0; | 544 | |
518 | uart_port[0].membase = ioremap(uart_port[0].mapbase, 256); | 545 | uart_port.type = PORT_16550A; |
519 | uart_port[0].regshift = 2; | 546 | uart_port.uartclk = clk_get_rate(bus_clk) / 2; |
520 | res = early_serial_setup(&uart_port[0]); | 547 | uart_port.iotype = UPIO_MEM32; |
548 | uart_port.regshift = 2; | ||
549 | |||
550 | uart_port.line = 0; | ||
551 | uart_port.irq = AR7_IRQ_UART0; | ||
552 | uart_port.mapbase = AR7_REGS_UART0; | ||
553 | uart_port.membase = ioremap(uart_port.mapbase, 256); | ||
554 | |||
555 | res = early_serial_setup(&uart_port); | ||
521 | if (res) | 556 | if (res) |
522 | return res; | 557 | return res; |
523 | 558 | ||
524 | |||
525 | /* Only TNETD73xx have a second serial port */ | 559 | /* Only TNETD73xx have a second serial port */ |
526 | if (ar7_has_second_uart()) { | 560 | if (ar7_has_second_uart()) { |
527 | uart_port[1].type = PORT_16550A; | 561 | uart_port.line = 1; |
528 | uart_port[1].line = 1; | 562 | uart_port.irq = AR7_IRQ_UART1; |
529 | uart_port[1].irq = AR7_IRQ_UART1; | 563 | uart_port.mapbase = UR8_REGS_UART1; |
530 | uart_port[1].uartclk = ar7_bus_freq() / 2; | 564 | uart_port.membase = ioremap(uart_port.mapbase, 256); |
531 | uart_port[1].iotype = UPIO_MEM32; | 565 | |
532 | uart_port[1].mapbase = UR8_REGS_UART1; | 566 | res = early_serial_setup(&uart_port); |
533 | uart_port[1].membase = ioremap(uart_port[1].mapbase, 256); | ||
534 | uart_port[1].regshift = 2; | ||
535 | res = early_serial_setup(&uart_port[1]); | ||
536 | if (res) | 567 | if (res) |
537 | return res; | 568 | return res; |
538 | } | 569 | } |
539 | #endif /* CONFIG_SERIAL_8250 */ | 570 | #endif |
571 | |||
572 | return 0; | ||
573 | } | ||
574 | |||
575 | static int __init ar7_register_devices(void) | ||
576 | { | ||
577 | void __iomem *bootcr; | ||
578 | u32 val; | ||
579 | u16 chip_id; | ||
580 | int res; | ||
581 | |||
582 | res = ar7_register_uarts(); | ||
583 | if (res) | ||
584 | pr_err("unable to setup uart(s): %d\n", res); | ||
585 | |||
540 | res = platform_device_register(&physmap_flash); | 586 | res = platform_device_register(&physmap_flash); |
541 | if (res) | 587 | if (res) |
542 | return res; | 588 | pr_warning("unable to register physmap-flash: %d\n", res); |
543 | 589 | ||
544 | ar7_device_disable(vlynq_low_data.reset_bit); | 590 | ar7_device_disable(vlynq_low_data.reset_bit); |
545 | res = platform_device_register(&vlynq_low); | 591 | res = platform_device_register(&vlynq_low); |
546 | if (res) | 592 | if (res) |
547 | return res; | 593 | pr_warning("unable to register vlynq-low: %d\n", res); |
548 | 594 | ||
549 | if (ar7_has_high_vlynq()) { | 595 | if (ar7_has_high_vlynq()) { |
550 | ar7_device_disable(vlynq_high_data.reset_bit); | 596 | ar7_device_disable(vlynq_high_data.reset_bit); |
551 | res = platform_device_register(&vlynq_high); | 597 | res = platform_device_register(&vlynq_high); |
552 | if (res) | 598 | if (res) |
553 | return res; | 599 | pr_warning("unable to register vlynq-high: %d\n", res); |
554 | } | 600 | } |
555 | 601 | ||
556 | if (ar7_has_high_cpmac()) { | 602 | if (ar7_has_high_cpmac()) { |
557 | res = fixed_phy_add(PHY_POLL, cpmac_high.id, &fixed_phy_status); | 603 | res = fixed_phy_add(PHY_POLL, cpmac_high.id, &fixed_phy_status); |
558 | if (res && res != -ENODEV) | 604 | if (!res) { |
559 | return res; | 605 | cpmac_get_mac(1, cpmac_high_data.dev_addr); |
560 | cpmac_get_mac(1, cpmac_high_data.dev_addr); | 606 | |
561 | res = platform_device_register(&cpmac_high); | 607 | res = platform_device_register(&cpmac_high); |
562 | if (res) | 608 | if (res) |
563 | return res; | 609 | pr_warning("unable to register cpmac-high: %d\n", res); |
564 | } else { | 610 | } else |
611 | pr_warning("unable to add cpmac-high phy: %d\n", res); | ||
612 | } else | ||
565 | cpmac_low_data.phy_mask = 0xffffffff; | 613 | cpmac_low_data.phy_mask = 0xffffffff; |
566 | } | ||
567 | 614 | ||
568 | res = fixed_phy_add(PHY_POLL, cpmac_low.id, &fixed_phy_status); | 615 | res = fixed_phy_add(PHY_POLL, cpmac_low.id, &fixed_phy_status); |
569 | if (res && res != -ENODEV) | 616 | if (!res) { |
570 | return res; | 617 | cpmac_get_mac(0, cpmac_low_data.dev_addr); |
571 | 618 | res = platform_device_register(&cpmac_low); | |
572 | cpmac_get_mac(0, cpmac_low_data.dev_addr); | 619 | if (res) |
573 | res = platform_device_register(&cpmac_low); | 620 | pr_warning("unable to register cpmac-low: %d\n", res); |
574 | if (res) | 621 | } else |
575 | return res; | 622 | pr_warning("unable to add cpmac-low phy: %d\n", res); |
576 | 623 | ||
577 | detect_leds(); | 624 | detect_leds(); |
578 | res = platform_device_register(&ar7_gpio_leds); | 625 | res = platform_device_register(&ar7_gpio_leds); |
579 | if (res) | 626 | if (res) |
580 | return res; | 627 | pr_warning("unable to register leds: %d\n", res); |
581 | 628 | ||
582 | res = platform_device_register(&ar7_udc); | 629 | res = platform_device_register(&ar7_udc); |
583 | 630 | if (res) | |
584 | chip_id = ar7_chip_id(); | 631 | pr_warning("unable to register usb slave: %d\n", res); |
585 | switch (chip_id) { | ||
586 | case AR7_CHIP_7100: | ||
587 | case AR7_CHIP_7200: | ||
588 | ar7_wdt_res.start = AR7_REGS_WDT; | ||
589 | break; | ||
590 | case AR7_CHIP_7300: | ||
591 | ar7_wdt_res.start = UR8_REGS_WDT; | ||
592 | break; | ||
593 | default: | ||
594 | break; | ||
595 | } | ||
596 | |||
597 | ar7_wdt_res.end = ar7_wdt_res.start + 0x20; | ||
598 | |||
599 | bootcr = (u32 *)ioremap_nocache(AR7_REGS_DCL, 4); | ||
600 | val = *bootcr; | ||
601 | iounmap(bootcr); | ||
602 | 632 | ||
603 | /* Register watchdog only if enabled in hardware */ | 633 | /* Register watchdog only if enabled in hardware */ |
604 | if (val & AR7_WDT_HW_ENA) | 634 | bootcr = ioremap_nocache(AR7_REGS_DCL, 4); |
635 | val = readl(bootcr); | ||
636 | iounmap(bootcr); | ||
637 | if (val & AR7_WDT_HW_ENA) { | ||
638 | chip_id = ar7_chip_id(); | ||
639 | switch (chip_id) { | ||
640 | case AR7_CHIP_7100: | ||
641 | case AR7_CHIP_7200: | ||
642 | ar7_wdt_res.start = AR7_REGS_WDT; | ||
643 | break; | ||
644 | case AR7_CHIP_7300: | ||
645 | ar7_wdt_res.start = UR8_REGS_WDT; | ||
646 | break; | ||
647 | default: | ||
648 | break; | ||
649 | } | ||
650 | |||
651 | ar7_wdt_res.end = ar7_wdt_res.start + 0x20; | ||
605 | res = platform_device_register(&ar7_wdt); | 652 | res = platform_device_register(&ar7_wdt); |
653 | if (res) | ||
654 | pr_warning("unable to register watchdog: %d\n", res); | ||
655 | } | ||
606 | 656 | ||
607 | return res; | 657 | return 0; |
608 | } | 658 | } |
609 | arch_initcall(ar7_register_devices); | 659 | arch_initcall(ar7_register_devices); |
diff --git a/arch/mips/ar7/prom.c b/arch/mips/ar7/prom.c index 5ad6f1db6567..52385790e5c1 100644 --- a/arch/mips/ar7/prom.c +++ b/arch/mips/ar7/prom.c | |||
@@ -32,8 +32,8 @@ | |||
32 | #define MAX_ENTRY 80 | 32 | #define MAX_ENTRY 80 |
33 | 33 | ||
34 | struct env_var { | 34 | struct env_var { |
35 | char *name; | 35 | char *name; |
36 | char *value; | 36 | char *value; |
37 | }; | 37 | }; |
38 | 38 | ||
39 | static struct env_var adam2_env[MAX_ENTRY]; | 39 | static struct env_var adam2_env[MAX_ENTRY]; |
@@ -41,6 +41,7 @@ static struct env_var adam2_env[MAX_ENTRY]; | |||
41 | char *prom_getenv(const char *name) | 41 | char *prom_getenv(const char *name) |
42 | { | 42 | { |
43 | int i; | 43 | int i; |
44 | |||
44 | for (i = 0; (i < MAX_ENTRY) && adam2_env[i].name; i++) | 45 | for (i = 0; (i < MAX_ENTRY) && adam2_env[i].name; i++) |
45 | if (!strcmp(name, adam2_env[i].name)) | 46 | if (!strcmp(name, adam2_env[i].name)) |
46 | return adam2_env[i].value; | 47 | return adam2_env[i].value; |
@@ -49,65 +50,50 @@ char *prom_getenv(const char *name) | |||
49 | } | 50 | } |
50 | EXPORT_SYMBOL(prom_getenv); | 51 | EXPORT_SYMBOL(prom_getenv); |
51 | 52 | ||
52 | char * __init prom_getcmdline(void) | ||
53 | { | ||
54 | return &(arcs_cmdline[0]); | ||
55 | } | ||
56 | |||
57 | static void __init ar7_init_cmdline(int argc, char *argv[]) | 53 | static void __init ar7_init_cmdline(int argc, char *argv[]) |
58 | { | 54 | { |
59 | char *cp; | 55 | int i; |
60 | int actr; | ||
61 | |||
62 | actr = 1; /* Always ignore argv[0] */ | ||
63 | 56 | ||
64 | cp = &(arcs_cmdline[0]); | 57 | for (i = 1; i < argc; i++) { |
65 | while (actr < argc) { | 58 | strlcat(arcs_cmdline, argv[i], COMMAND_LINE_SIZE); |
66 | strcpy(cp, argv[actr]); | 59 | if (i < (argc - 1)) |
67 | cp += strlen(argv[actr]); | 60 | strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE); |
68 | *cp++ = ' '; | ||
69 | actr++; | ||
70 | } | ||
71 | if (cp != &(arcs_cmdline[0])) { | ||
72 | /* get rid of trailing space */ | ||
73 | --cp; | ||
74 | *cp = '\0'; | ||
75 | } | 61 | } |
76 | } | 62 | } |
77 | 63 | ||
78 | struct psbl_rec { | 64 | struct psbl_rec { |
79 | u32 psbl_size; | 65 | u32 psbl_size; |
80 | u32 env_base; | 66 | u32 env_base; |
81 | u32 env_size; | 67 | u32 env_size; |
82 | u32 ffs_base; | 68 | u32 ffs_base; |
83 | u32 ffs_size; | 69 | u32 ffs_size; |
84 | }; | 70 | }; |
85 | 71 | ||
86 | static __initdata char psp_env_version[] = "TIENV0.8"; | 72 | static __initdata char psp_env_version[] = "TIENV0.8"; |
87 | 73 | ||
88 | struct psp_env_chunk { | 74 | struct psp_env_chunk { |
89 | u8 num; | 75 | u8 num; |
90 | u8 ctrl; | 76 | u8 ctrl; |
91 | u16 csum; | 77 | u16 csum; |
92 | u8 len; | 78 | u8 len; |
93 | char data[11]; | 79 | char data[11]; |
94 | } __attribute__ ((packed)); | 80 | } __attribute__ ((packed)); |
95 | 81 | ||
96 | struct psp_var_map_entry { | 82 | struct psp_var_map_entry { |
97 | u8 num; | 83 | u8 num; |
98 | char *value; | 84 | char *value; |
99 | }; | 85 | }; |
100 | 86 | ||
101 | static struct psp_var_map_entry psp_var_map[] = { | 87 | static struct psp_var_map_entry psp_var_map[] = { |
102 | { 1, "cpufrequency" }, | 88 | { 1, "cpufrequency" }, |
103 | { 2, "memsize" }, | 89 | { 2, "memsize" }, |
104 | { 3, "flashsize" }, | 90 | { 3, "flashsize" }, |
105 | { 4, "modetty0" }, | 91 | { 4, "modetty0" }, |
106 | { 5, "modetty1" }, | 92 | { 5, "modetty1" }, |
107 | { 8, "maca" }, | 93 | { 8, "maca" }, |
108 | { 9, "macb" }, | 94 | { 9, "macb" }, |
109 | { 28, "sysfrequency" }, | 95 | { 28, "sysfrequency" }, |
110 | { 38, "mipsfrequency" }, | 96 | { 38, "mipsfrequency" }, |
111 | }; | 97 | }; |
112 | 98 | ||
113 | /* | 99 | /* |
@@ -154,6 +140,7 @@ static char * __init lookup_psp_var_map(u8 num) | |||
154 | static void __init add_adam2_var(char *name, char *value) | 140 | static void __init add_adam2_var(char *name, char *value) |
155 | { | 141 | { |
156 | int i; | 142 | int i; |
143 | |||
157 | for (i = 0; i < MAX_ENTRY; i++) { | 144 | for (i = 0; i < MAX_ENTRY; i++) { |
158 | if (!adam2_env[i].name) { | 145 | if (!adam2_env[i].name) { |
159 | adam2_env[i].name = name; | 146 | adam2_env[i].name = name; |
@@ -216,17 +203,9 @@ static void __init console_config(void) | |||
216 | char parity = '\0', bits = '\0', flow = '\0'; | 203 | char parity = '\0', bits = '\0', flow = '\0'; |
217 | char *s, *p; | 204 | char *s, *p; |
218 | 205 | ||
219 | if (strstr(prom_getcmdline(), "console=")) | 206 | if (strstr(arcs_cmdline, "console=")) |
220 | return; | 207 | return; |
221 | 208 | ||
222 | #ifdef CONFIG_KGDB | ||
223 | if (!strstr(prom_getcmdline(), "nokgdb")) { | ||
224 | strcat(prom_getcmdline(), " console=kgdb"); | ||
225 | kgdb_enabled = 1; | ||
226 | return; | ||
227 | } | ||
228 | #endif | ||
229 | |||
230 | s = prom_getenv("modetty0"); | 209 | s = prom_getenv("modetty0"); |
231 | if (s) { | 210 | if (s) { |
232 | baud = simple_strtoul(s, &p, 10); | 211 | baud = simple_strtoul(s, &p, 10); |
@@ -258,7 +237,7 @@ static void __init console_config(void) | |||
258 | else | 237 | else |
259 | sprintf(console_string, " console=ttyS0,%d%c%c", baud, parity, | 238 | sprintf(console_string, " console=ttyS0,%d%c%c", baud, parity, |
260 | bits); | 239 | bits); |
261 | strcat(prom_getcmdline(), console_string); | 240 | strlcat(arcs_cmdline, console_string, COMMAND_LINE_SIZE); |
262 | #endif | 241 | #endif |
263 | } | 242 | } |
264 | 243 | ||
@@ -280,13 +259,6 @@ static inline void serial_out(int offset, int value) | |||
280 | writel(value, (void *)PORT(offset)); | 259 | writel(value, (void *)PORT(offset)); |
281 | } | 260 | } |
282 | 261 | ||
283 | char prom_getchar(void) | ||
284 | { | ||
285 | while (!(serial_in(UART_LSR) & UART_LSR_DR)) | ||
286 | ; | ||
287 | return serial_in(UART_RX); | ||
288 | } | ||
289 | |||
290 | int prom_putchar(char c) | 262 | int prom_putchar(char c) |
291 | { | 263 | { |
292 | while ((serial_in(UART_LSR) & UART_LSR_TEMT) == 0) | 264 | while ((serial_in(UART_LSR) & UART_LSR_TEMT) == 0) |
@@ -294,4 +266,3 @@ int prom_putchar(char c) | |||
294 | serial_out(UART_TX, c); | 266 | serial_out(UART_TX, c); |
295 | return 1; | 267 | return 1; |
296 | } | 268 | } |
297 | |||
diff --git a/arch/mips/ar7/setup.c b/arch/mips/ar7/setup.c index 39f6b5b96463..3a801d2cb6e5 100644 --- a/arch/mips/ar7/setup.c +++ b/arch/mips/ar7/setup.c | |||
@@ -26,8 +26,8 @@ | |||
26 | 26 | ||
27 | static void ar7_machine_restart(char *command) | 27 | static void ar7_machine_restart(char *command) |
28 | { | 28 | { |
29 | u32 *softres_reg = ioremap(AR7_REGS_RESET + | 29 | u32 *softres_reg = ioremap(AR7_REGS_RESET + AR7_RESET_SOFTWARE, 1); |
30 | AR7_RESET_SOFTWARE, 1); | 30 | |
31 | writel(1, softres_reg); | 31 | writel(1, softres_reg); |
32 | } | 32 | } |
33 | 33 | ||
@@ -41,6 +41,7 @@ static void ar7_machine_power_off(void) | |||
41 | { | 41 | { |
42 | u32 *power_reg = (u32 *)ioremap(AR7_REGS_POWER, 1); | 42 | u32 *power_reg = (u32 *)ioremap(AR7_REGS_POWER, 1); |
43 | u32 power_state = readl(power_reg) | (3 << 30); | 43 | u32 power_state = readl(power_reg) | (3 << 30); |
44 | |||
44 | writel(power_state, power_reg); | 45 | writel(power_state, power_reg); |
45 | ar7_machine_halt(); | 46 | ar7_machine_halt(); |
46 | } | 47 | } |
@@ -49,14 +50,14 @@ const char *get_system_type(void) | |||
49 | { | 50 | { |
50 | u16 chip_id = ar7_chip_id(); | 51 | u16 chip_id = ar7_chip_id(); |
51 | switch (chip_id) { | 52 | switch (chip_id) { |
52 | case AR7_CHIP_7300: | ||
53 | return "TI AR7 (TNETD7300)"; | ||
54 | case AR7_CHIP_7100: | 53 | case AR7_CHIP_7100: |
55 | return "TI AR7 (TNETD7100)"; | 54 | return "TI AR7 (TNETD7100)"; |
56 | case AR7_CHIP_7200: | 55 | case AR7_CHIP_7200: |
57 | return "TI AR7 (TNETD7200)"; | 56 | return "TI AR7 (TNETD7200)"; |
57 | case AR7_CHIP_7300: | ||
58 | return "TI AR7 (TNETD7300)"; | ||
58 | default: | 59 | default: |
59 | return "TI AR7 (Unknown)"; | 60 | return "TI AR7 (unknown)"; |
60 | } | 61 | } |
61 | } | 62 | } |
62 | 63 | ||
@@ -70,7 +71,6 @@ console_initcall(ar7_init_console); | |||
70 | * Initializes basic routines and structures pointers, memory size (as | 71 | * Initializes basic routines and structures pointers, memory size (as |
71 | * given by the bios and saves the command line. | 72 | * given by the bios and saves the command line. |
72 | */ | 73 | */ |
73 | |||
74 | void __init plat_mem_setup(void) | 74 | void __init plat_mem_setup(void) |
75 | { | 75 | { |
76 | unsigned long io_base; | 76 | unsigned long io_base; |
@@ -88,6 +88,5 @@ void __init plat_mem_setup(void) | |||
88 | prom_meminit(); | 88 | prom_meminit(); |
89 | 89 | ||
90 | printk(KERN_INFO "%s, ID: 0x%04x, Revision: 0x%02x\n", | 90 | printk(KERN_INFO "%s, ID: 0x%04x, Revision: 0x%02x\n", |
91 | get_system_type(), | 91 | get_system_type(), ar7_chip_id(), ar7_chip_rev()); |
92 | ar7_chip_id(), ar7_chip_rev()); | ||
93 | } | 92 | } |
diff --git a/arch/mips/ar7/time.c b/arch/mips/ar7/time.c index a1fba894daa2..5fb8a0134085 100644 --- a/arch/mips/ar7/time.c +++ b/arch/mips/ar7/time.c | |||
@@ -20,11 +20,21 @@ | |||
20 | 20 | ||
21 | #include <linux/init.h> | 21 | #include <linux/init.h> |
22 | #include <linux/time.h> | 22 | #include <linux/time.h> |
23 | #include <linux/err.h> | ||
24 | #include <linux/clk.h> | ||
23 | 25 | ||
24 | #include <asm/time.h> | 26 | #include <asm/time.h> |
25 | #include <asm/mach-ar7/ar7.h> | 27 | #include <asm/mach-ar7/ar7.h> |
26 | 28 | ||
27 | void __init plat_time_init(void) | 29 | void __init plat_time_init(void) |
28 | { | 30 | { |
29 | mips_hpt_frequency = ar7_cpu_freq() / 2; | 31 | struct clk *cpu_clk; |
32 | |||
33 | cpu_clk = clk_get(NULL, "cpu"); | ||
34 | if (IS_ERR(cpu_clk)) { | ||
35 | printk(KERN_ERR "unable to get cpu clock\n"); | ||
36 | return; | ||
37 | } | ||
38 | |||
39 | mips_hpt_frequency = clk_get_rate(cpu_clk) / 2; | ||
30 | } | 40 | } |
diff --git a/arch/mips/basler/excite/Kconfig b/arch/mips/basler/excite/Kconfig deleted file mode 100644 index ba506075608b..000000000000 --- a/arch/mips/basler/excite/Kconfig +++ /dev/null | |||
@@ -1,9 +0,0 @@ | |||
1 | config BASLER_EXCITE_PROTOTYPE | ||
2 | bool "Support for pre-release units" | ||
3 | depends on BASLER_EXCITE | ||
4 | default n | ||
5 | help | ||
6 | Pre-series (prototype) units are different from later ones in | ||
7 | some ways. Select this option if you have one of these. Please | ||
8 | note that a kernel built with this option selected will not be | ||
9 | able to run on normal units. | ||
diff --git a/arch/mips/basler/excite/Makefile b/arch/mips/basler/excite/Makefile deleted file mode 100644 index cff29cf46d03..000000000000 --- a/arch/mips/basler/excite/Makefile +++ /dev/null | |||
@@ -1,8 +0,0 @@ | |||
1 | # | ||
2 | # Makefile for Basler eXcite | ||
3 | # | ||
4 | |||
5 | obj-$(CONFIG_BASLER_EXCITE) += excite_irq.o excite_prom.o excite_setup.o \ | ||
6 | excite_device.o excite_procfs.o | ||
7 | |||
8 | obj-m += excite_iodev.o | ||
diff --git a/arch/mips/basler/excite/excite_device.c b/arch/mips/basler/excite/excite_device.c deleted file mode 100644 index e00bc2d7f301..000000000000 --- a/arch/mips/basler/excite/excite_device.c +++ /dev/null | |||
@@ -1,403 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2004 by Basler Vision Technologies AG | ||
3 | * Author: Thomas Koeller <thomas.koeller@baslerweb.com> | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License as published by | ||
7 | * the Free Software Foundation; either version 2 of the License, or | ||
8 | * (at your option) any later version. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, | ||
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, write to the Free Software | ||
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
18 | */ | ||
19 | |||
20 | #include <linux/kernel.h> | ||
21 | #include <linux/init.h> | ||
22 | #include <linux/platform_device.h> | ||
23 | #include <linux/ioport.h> | ||
24 | #include <linux/err.h> | ||
25 | #include <linux/jiffies.h> | ||
26 | #include <linux/sched.h> | ||
27 | #include <asm/types.h> | ||
28 | #include <asm/rm9k-ocd.h> | ||
29 | |||
30 | #include <excite.h> | ||
31 | #include <rm9k_eth.h> | ||
32 | #include <rm9k_wdt.h> | ||
33 | #include <rm9k_xicap.h> | ||
34 | #include <excite_nandflash.h> | ||
35 | |||
36 | #include "excite_iodev.h" | ||
37 | |||
38 | #define RM9K_GE_UNIT 0 | ||
39 | #define XICAP_UNIT 0 | ||
40 | #define NAND_UNIT 0 | ||
41 | |||
42 | #define DLL_TIMEOUT 3 /* seconds */ | ||
43 | |||
44 | |||
45 | #define RINIT(__start__, __end__, __name__, __parent__) { \ | ||
46 | .name = __name__ "_0", \ | ||
47 | .start = (__start__), \ | ||
48 | .end = (__end__), \ | ||
49 | .flags = 0, \ | ||
50 | .parent = (__parent__) \ | ||
51 | } | ||
52 | |||
53 | #define RINIT_IRQ(__irq__, __name__) { \ | ||
54 | .name = __name__ "_0", \ | ||
55 | .start = (__irq__), \ | ||
56 | .end = (__irq__), \ | ||
57 | .flags = IORESOURCE_IRQ, \ | ||
58 | .parent = NULL \ | ||
59 | } | ||
60 | |||
61 | |||
62 | |||
63 | enum { | ||
64 | slice_xicap, | ||
65 | slice_eth | ||
66 | }; | ||
67 | |||
68 | |||
69 | |||
70 | static struct resource | ||
71 | excite_ctr_resource __maybe_unused = { | ||
72 | .name = "GPI counters", | ||
73 | .start = 0, | ||
74 | .end = 5, | ||
75 | .flags = 0, | ||
76 | .parent = NULL, | ||
77 | .sibling = NULL, | ||
78 | .child = NULL | ||
79 | }, | ||
80 | excite_gpislice_resource __maybe_unused = { | ||
81 | .name = "GPI slices", | ||
82 | .start = 0, | ||
83 | .end = 1, | ||
84 | .flags = 0, | ||
85 | .parent = NULL, | ||
86 | .sibling = NULL, | ||
87 | .child = NULL | ||
88 | }, | ||
89 | excite_mdio_channel_resource __maybe_unused = { | ||
90 | .name = "MDIO channels", | ||
91 | .start = 0, | ||
92 | .end = 1, | ||
93 | .flags = 0, | ||
94 | .parent = NULL, | ||
95 | .sibling = NULL, | ||
96 | .child = NULL | ||
97 | }, | ||
98 | excite_fifomem_resource __maybe_unused = { | ||
99 | .name = "FIFO memory", | ||
100 | .start = 0, | ||
101 | .end = 767, | ||
102 | .flags = 0, | ||
103 | .parent = NULL, | ||
104 | .sibling = NULL, | ||
105 | .child = NULL | ||
106 | }, | ||
107 | excite_scram_resource __maybe_unused = { | ||
108 | .name = "Scratch RAM", | ||
109 | .start = EXCITE_PHYS_SCRAM, | ||
110 | .end = EXCITE_PHYS_SCRAM + EXCITE_SIZE_SCRAM - 1, | ||
111 | .flags = IORESOURCE_MEM, | ||
112 | .parent = NULL, | ||
113 | .sibling = NULL, | ||
114 | .child = NULL | ||
115 | }, | ||
116 | excite_fpga_resource __maybe_unused = { | ||
117 | .name = "System FPGA", | ||
118 | .start = EXCITE_PHYS_FPGA, | ||
119 | .end = EXCITE_PHYS_FPGA + EXCITE_SIZE_FPGA - 1, | ||
120 | .flags = IORESOURCE_MEM, | ||
121 | .parent = NULL, | ||
122 | .sibling = NULL, | ||
123 | .child = NULL | ||
124 | }, | ||
125 | excite_nand_resource __maybe_unused = { | ||
126 | .name = "NAND flash control", | ||
127 | .start = EXCITE_PHYS_NAND, | ||
128 | .end = EXCITE_PHYS_NAND + EXCITE_SIZE_NAND - 1, | ||
129 | .flags = IORESOURCE_MEM, | ||
130 | .parent = NULL, | ||
131 | .sibling = NULL, | ||
132 | .child = NULL | ||
133 | }, | ||
134 | excite_titan_resource __maybe_unused = { | ||
135 | .name = "TITAN registers", | ||
136 | .start = EXCITE_PHYS_TITAN, | ||
137 | .end = EXCITE_PHYS_TITAN + EXCITE_SIZE_TITAN - 1, | ||
138 | .flags = IORESOURCE_MEM, | ||
139 | .parent = NULL, | ||
140 | .sibling = NULL, | ||
141 | .child = NULL | ||
142 | }; | ||
143 | |||
144 | |||
145 | |||
146 | static void adjust_resources(struct resource *res, unsigned int n) | ||
147 | { | ||
148 | struct resource *p; | ||
149 | const unsigned long mask = IORESOURCE_IO | IORESOURCE_MEM | ||
150 | | IORESOURCE_IRQ | IORESOURCE_DMA; | ||
151 | |||
152 | for (p = res; p < res + n; p++) { | ||
153 | const struct resource * const parent = p->parent; | ||
154 | if (parent) { | ||
155 | p->start += parent->start; | ||
156 | p->end += parent->start; | ||
157 | p->flags = parent->flags & mask; | ||
158 | } | ||
159 | } | ||
160 | } | ||
161 | |||
162 | |||
163 | |||
164 | #if defined(CONFIG_EXCITE_FCAP_GPI) || defined(CONFIG_EXCITE_FCAP_GPI_MODULE) | ||
165 | static struct resource xicap_rsrc[] = { | ||
166 | RINIT(0x4840, 0x486f, XICAP_RESOURCE_FIFO_RX, &excite_titan_resource), | ||
167 | RINIT(0x4940, 0x494b, XICAP_RESOURCE_FIFO_TX, &excite_titan_resource), | ||
168 | RINIT(0x5040, 0x5127, XICAP_RESOURCE_XDMA, &excite_titan_resource), | ||
169 | RINIT(0x1000, 0x112f, XICAP_RESOURCE_PKTPROC, &excite_titan_resource), | ||
170 | RINIT(0x1100, 0x110f, XICAP_RESOURCE_PKT_STREAM, &excite_fpga_resource), | ||
171 | RINIT(0x0800, 0x0bff, XICAP_RESOURCE_DMADESC, &excite_scram_resource), | ||
172 | RINIT(slice_xicap, slice_xicap, XICAP_RESOURCE_GPI_SLICE, &excite_gpislice_resource), | ||
173 | RINIT(0x0100, 0x02ff, XICAP_RESOURCE_FIFO_BLK, &excite_fifomem_resource), | ||
174 | RINIT_IRQ(TITAN_IRQ, XICAP_RESOURCE_IRQ) | ||
175 | }; | ||
176 | |||
177 | static struct platform_device xicap_pdev = { | ||
178 | .name = XICAP_NAME, | ||
179 | .id = XICAP_UNIT, | ||
180 | .num_resources = ARRAY_SIZE(xicap_rsrc), | ||
181 | .resource = xicap_rsrc | ||
182 | }; | ||
183 | |||
184 | /* | ||
185 | * Create a platform device for the GPI port that receives the | ||
186 | * image data from the embedded camera. | ||
187 | */ | ||
188 | static int __init xicap_devinit(void) | ||
189 | { | ||
190 | unsigned long tend; | ||
191 | u32 reg; | ||
192 | int retval; | ||
193 | |||
194 | adjust_resources(xicap_rsrc, ARRAY_SIZE(xicap_rsrc)); | ||
195 | |||
196 | /* Power up the slice and configure it. */ | ||
197 | reg = titan_readl(CPTC1R); | ||
198 | reg &= ~(0x11100 << slice_xicap); | ||
199 | titan_writel(reg, CPTC1R); | ||
200 | |||
201 | /* Enable slice & DLL. */ | ||
202 | reg= titan_readl(CPRR); | ||
203 | reg &= ~(0x00030003 << (slice_xicap * 2)); | ||
204 | titan_writel(reg, CPRR); | ||
205 | |||
206 | /* Wait for DLLs to lock */ | ||
207 | tend = jiffies + DLL_TIMEOUT * HZ; | ||
208 | while (time_before(jiffies, tend)) { | ||
209 | if (!(~titan_readl(CPDSR) & (0x1 << (slice_xicap * 4)))) | ||
210 | break; | ||
211 | yield(); | ||
212 | } | ||
213 | |||
214 | if (~titan_readl(CPDSR) & (0x1 << (slice_xicap * 4))) { | ||
215 | printk(KERN_ERR "%s: DLL not locked after %u seconds\n", | ||
216 | xicap_pdev.name, DLL_TIMEOUT); | ||
217 | retval = -ETIME; | ||
218 | } else { | ||
219 | /* Register platform device */ | ||
220 | retval = platform_device_register(&xicap_pdev); | ||
221 | } | ||
222 | |||
223 | return retval; | ||
224 | } | ||
225 | |||
226 | device_initcall(xicap_devinit); | ||
227 | #endif /* defined(CONFIG_EXCITE_FCAP_GPI) || defined(CONFIG_EXCITE_FCAP_GPI_MODULE) */ | ||
228 | |||
229 | |||
230 | |||
231 | #if defined(CONFIG_WDT_RM9K_GPI) || defined(CONFIG_WDT_RM9K_GPI_MODULE) | ||
232 | static struct resource wdt_rsrc[] = { | ||
233 | RINIT(0, 0, WDT_RESOURCE_COUNTER, &excite_ctr_resource), | ||
234 | RINIT(0x0084, 0x008f, WDT_RESOURCE_REGS, &excite_titan_resource), | ||
235 | RINIT_IRQ(TITAN_IRQ, WDT_RESOURCE_IRQ) | ||
236 | }; | ||
237 | |||
238 | static struct platform_device wdt_pdev = { | ||
239 | .name = WDT_NAME, | ||
240 | .id = -1, | ||
241 | .num_resources = ARRAY_SIZE(wdt_rsrc), | ||
242 | .resource = wdt_rsrc | ||
243 | }; | ||
244 | |||
245 | /* | ||
246 | * Create a platform device for the GPI port that receives the | ||
247 | * image data from the embedded camera. | ||
248 | */ | ||
249 | static int __init wdt_devinit(void) | ||
250 | { | ||
251 | adjust_resources(wdt_rsrc, ARRAY_SIZE(wdt_rsrc)); | ||
252 | return platform_device_register(&wdt_pdev); | ||
253 | } | ||
254 | |||
255 | device_initcall(wdt_devinit); | ||
256 | #endif /* defined(CONFIG_WDT_RM9K_GPI) || defined(CONFIG_WDT_RM9K_GPI_MODULE) */ | ||
257 | |||
258 | |||
259 | |||
260 | static struct resource excite_nandflash_rsrc[] = { | ||
261 | RINIT(0x2000, 0x201f, EXCITE_NANDFLASH_RESOURCE_REGS, &excite_nand_resource) | ||
262 | }; | ||
263 | |||
264 | static struct platform_device excite_nandflash_pdev = { | ||
265 | .name = "excite_nand", | ||
266 | .id = NAND_UNIT, | ||
267 | .num_resources = ARRAY_SIZE(excite_nandflash_rsrc), | ||
268 | .resource = excite_nandflash_rsrc | ||
269 | }; | ||
270 | |||
271 | /* | ||
272 | * Create a platform device for the access to the nand-flash | ||
273 | * port | ||
274 | */ | ||
275 | static int __init excite_nandflash_devinit(void) | ||
276 | { | ||
277 | adjust_resources(excite_nandflash_rsrc, ARRAY_SIZE(excite_nandflash_rsrc)); | ||
278 | |||
279 | /* nothing to be done here */ | ||
280 | |||
281 | /* Register platform device */ | ||
282 | return platform_device_register(&excite_nandflash_pdev); | ||
283 | } | ||
284 | |||
285 | device_initcall(excite_nandflash_devinit); | ||
286 | |||
287 | |||
288 | |||
289 | static struct resource iodev_rsrc[] = { | ||
290 | RINIT_IRQ(FPGA1_IRQ, IODEV_RESOURCE_IRQ) | ||
291 | }; | ||
292 | |||
293 | static struct platform_device io_pdev = { | ||
294 | .name = IODEV_NAME, | ||
295 | .id = -1, | ||
296 | .num_resources = ARRAY_SIZE(iodev_rsrc), | ||
297 | .resource = iodev_rsrc | ||
298 | }; | ||
299 | |||
300 | /* | ||
301 | * Create a platform device for the external I/O ports. | ||
302 | */ | ||
303 | static int __init io_devinit(void) | ||
304 | { | ||
305 | adjust_resources(iodev_rsrc, ARRAY_SIZE(iodev_rsrc)); | ||
306 | return platform_device_register(&io_pdev); | ||
307 | } | ||
308 | |||
309 | device_initcall(io_devinit); | ||
310 | |||
311 | |||
312 | |||
313 | |||
314 | #if defined(CONFIG_RM9K_GE) || defined(CONFIG_RM9K_GE_MODULE) | ||
315 | static struct resource rm9k_ge_rsrc[] = { | ||
316 | RINIT(0x2200, 0x27ff, RM9K_GE_RESOURCE_MAC, &excite_titan_resource), | ||
317 | RINIT(0x1800, 0x1fff, RM9K_GE_RESOURCE_MSTAT, &excite_titan_resource), | ||
318 | RINIT(0x2000, 0x212f, RM9K_GE_RESOURCE_PKTPROC, &excite_titan_resource), | ||
319 | RINIT(0x5140, 0x5227, RM9K_GE_RESOURCE_XDMA, &excite_titan_resource), | ||
320 | RINIT(0x4870, 0x489f, RM9K_GE_RESOURCE_FIFO_RX, &excite_titan_resource), | ||
321 | RINIT(0x494c, 0x4957, RM9K_GE_RESOURCE_FIFO_TX, &excite_titan_resource), | ||
322 | RINIT(0x0000, 0x007f, RM9K_GE_RESOURCE_FIFOMEM_RX, &excite_fifomem_resource), | ||
323 | RINIT(0x0080, 0x00ff, RM9K_GE_RESOURCE_FIFOMEM_TX, &excite_fifomem_resource), | ||
324 | RINIT(0x0180, 0x019f, RM9K_GE_RESOURCE_PHY, &excite_titan_resource), | ||
325 | RINIT(0x0000, 0x03ff, RM9K_GE_RESOURCE_DMADESC_RX, &excite_scram_resource), | ||
326 | RINIT(0x0400, 0x07ff, RM9K_GE_RESOURCE_DMADESC_TX, &excite_scram_resource), | ||
327 | RINIT(slice_eth, slice_eth, RM9K_GE_RESOURCE_GPI_SLICE, &excite_gpislice_resource), | ||
328 | RINIT(0, 0, RM9K_GE_RESOURCE_MDIO_CHANNEL, &excite_mdio_channel_resource), | ||
329 | RINIT_IRQ(TITAN_IRQ, RM9K_GE_RESOURCE_IRQ_MAIN), | ||
330 | RINIT_IRQ(PHY_IRQ, RM9K_GE_RESOURCE_IRQ_PHY) | ||
331 | }; | ||
332 | |||
333 | static struct platform_device rm9k_ge_pdev = { | ||
334 | .name = RM9K_GE_NAME, | ||
335 | .id = RM9K_GE_UNIT, | ||
336 | .num_resources = ARRAY_SIZE(rm9k_ge_rsrc), | ||
337 | .resource = rm9k_ge_rsrc | ||
338 | }; | ||
339 | |||
340 | |||
341 | |||
342 | /* | ||
343 | * Create a platform device for the Ethernet port. | ||
344 | */ | ||
345 | static int __init rm9k_ge_devinit(void) | ||
346 | { | ||
347 | u32 reg; | ||
348 | |||
349 | adjust_resources(rm9k_ge_rsrc, ARRAY_SIZE(rm9k_ge_rsrc)); | ||
350 | |||
351 | /* Power up the slice and configure it. */ | ||
352 | reg = titan_readl(CPTC1R); | ||
353 | reg &= ~(0x11000 << slice_eth); | ||
354 | reg |= 0x100 << slice_eth; | ||
355 | titan_writel(reg, CPTC1R); | ||
356 | |||
357 | /* Take the MAC out of reset, reset the DLLs. */ | ||
358 | reg = titan_readl(CPRR); | ||
359 | reg &= ~(0x00030000 << (slice_eth * 2)); | ||
360 | reg |= 0x3 << (slice_eth * 2); | ||
361 | titan_writel(reg, CPRR); | ||
362 | |||
363 | return platform_device_register(&rm9k_ge_pdev); | ||
364 | } | ||
365 | |||
366 | device_initcall(rm9k_ge_devinit); | ||
367 | #endif /* defined(CONFIG_RM9K_GE) || defined(CONFIG_RM9K_GE_MODULE) */ | ||
368 | |||
369 | |||
370 | |||
371 | static int __init excite_setup_devs(void) | ||
372 | { | ||
373 | int res; | ||
374 | u32 reg; | ||
375 | |||
376 | /* Enable xdma and fifo interrupts */ | ||
377 | reg = titan_readl(0x0050); | ||
378 | titan_writel(reg | 0x18000000, 0x0050); | ||
379 | |||
380 | res = request_resource(&iomem_resource, &excite_titan_resource); | ||
381 | if (res) | ||
382 | return res; | ||
383 | res = request_resource(&iomem_resource, &excite_scram_resource); | ||
384 | if (res) | ||
385 | return res; | ||
386 | res = request_resource(&iomem_resource, &excite_fpga_resource); | ||
387 | if (res) | ||
388 | return res; | ||
389 | res = request_resource(&iomem_resource, &excite_nand_resource); | ||
390 | if (res) | ||
391 | return res; | ||
392 | excite_fpga_resource.flags = excite_fpga_resource.parent->flags & | ||
393 | ( IORESOURCE_IO | IORESOURCE_MEM | ||
394 | | IORESOURCE_IRQ | IORESOURCE_DMA); | ||
395 | excite_nand_resource.flags = excite_nand_resource.parent->flags & | ||
396 | ( IORESOURCE_IO | IORESOURCE_MEM | ||
397 | | IORESOURCE_IRQ | IORESOURCE_DMA); | ||
398 | |||
399 | return 0; | ||
400 | } | ||
401 | |||
402 | arch_initcall(excite_setup_devs); | ||
403 | |||
diff --git a/arch/mips/basler/excite/excite_iodev.c b/arch/mips/basler/excite/excite_iodev.c deleted file mode 100644 index 938b1d0b7652..000000000000 --- a/arch/mips/basler/excite/excite_iodev.c +++ /dev/null | |||
@@ -1,178 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2005 by Basler Vision Technologies AG | ||
3 | * Author: Thomas Koeller <thomas.koeller@baslerweb.com> | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License as published by | ||
7 | * the Free Software Foundation; either version 2 of the License, or | ||
8 | * (at your option) any later version. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, | ||
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, write to the Free Software | ||
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
18 | */ | ||
19 | |||
20 | #include <linux/compiler.h> | ||
21 | #include <linux/init.h> | ||
22 | #include <linux/module.h> | ||
23 | #include <linux/sched.h> | ||
24 | #include <linux/wait.h> | ||
25 | #include <linux/poll.h> | ||
26 | #include <linux/interrupt.h> | ||
27 | #include <linux/platform_device.h> | ||
28 | #include <linux/miscdevice.h> | ||
29 | #include <linux/smp_lock.h> | ||
30 | |||
31 | #include "excite_iodev.h" | ||
32 | |||
33 | |||
34 | |||
35 | static const struct resource *iodev_get_resource(struct platform_device *, const char *, unsigned int); | ||
36 | static int __init iodev_probe(struct platform_device *); | ||
37 | static int __exit iodev_remove(struct platform_device *); | ||
38 | static int iodev_open(struct inode *, struct file *); | ||
39 | static int iodev_release(struct inode *, struct file *); | ||
40 | static ssize_t iodev_read(struct file *, char __user *, size_t s, loff_t *); | ||
41 | static unsigned int iodev_poll(struct file *, struct poll_table_struct *); | ||
42 | static irqreturn_t iodev_irqhdl(int, void *); | ||
43 | |||
44 | |||
45 | |||
46 | static const char iodev_name[] = "iodev"; | ||
47 | static unsigned int iodev_irq; | ||
48 | static DECLARE_WAIT_QUEUE_HEAD(wq); | ||
49 | |||
50 | |||
51 | |||
52 | static const struct file_operations fops = | ||
53 | { | ||
54 | .owner = THIS_MODULE, | ||
55 | .open = iodev_open, | ||
56 | .release = iodev_release, | ||
57 | .read = iodev_read, | ||
58 | .poll = iodev_poll | ||
59 | }; | ||
60 | |||
61 | static struct miscdevice miscdev = | ||
62 | { | ||
63 | .minor = MISC_DYNAMIC_MINOR, | ||
64 | .name = iodev_name, | ||
65 | .fops = &fops | ||
66 | }; | ||
67 | |||
68 | static struct platform_driver iodev_driver = { | ||
69 | .driver = { | ||
70 | .name = iodev_name, | ||
71 | .owner = THIS_MODULE, | ||
72 | }, | ||
73 | .probe = iodev_probe, | ||
74 | .remove = __devexit_p(iodev_remove), | ||
75 | }; | ||
76 | |||
77 | |||
78 | |||
79 | static const struct resource * | ||
80 | iodev_get_resource(struct platform_device *pdv, const char *name, | ||
81 | unsigned int type) | ||
82 | { | ||
83 | char buf[80]; | ||
84 | if (snprintf(buf, sizeof buf, "%s_0", name) >= sizeof buf) | ||
85 | return NULL; | ||
86 | return platform_get_resource_byname(pdv, type, buf); | ||
87 | } | ||
88 | |||
89 | |||
90 | |||
91 | /* No hotplugging on the platform bus - use __init */ | ||
92 | static int __init iodev_probe(struct platform_device *dev) | ||
93 | { | ||
94 | const struct resource * const ri = | ||
95 | iodev_get_resource(dev, IODEV_RESOURCE_IRQ, IORESOURCE_IRQ); | ||
96 | |||
97 | if (unlikely(!ri)) | ||
98 | return -ENXIO; | ||
99 | |||
100 | iodev_irq = ri->start; | ||
101 | return misc_register(&miscdev); | ||
102 | } | ||
103 | |||
104 | |||
105 | |||
106 | static int __exit iodev_remove(struct platform_device *dev) | ||
107 | { | ||
108 | return misc_deregister(&miscdev); | ||
109 | } | ||
110 | |||
111 | static int iodev_open(struct inode *i, struct file *f) | ||
112 | { | ||
113 | int ret; | ||
114 | |||
115 | ret = request_irq(iodev_irq, iodev_irqhdl, IRQF_DISABLED, | ||
116 | iodev_name, &miscdev); | ||
117 | |||
118 | return ret; | ||
119 | } | ||
120 | |||
121 | static int iodev_release(struct inode *i, struct file *f) | ||
122 | { | ||
123 | free_irq(iodev_irq, &miscdev); | ||
124 | return 0; | ||
125 | } | ||
126 | |||
127 | |||
128 | |||
129 | |||
130 | static ssize_t | ||
131 | iodev_read(struct file *f, char __user *d, size_t s, loff_t *o) | ||
132 | { | ||
133 | ssize_t ret; | ||
134 | DEFINE_WAIT(w); | ||
135 | |||
136 | prepare_to_wait(&wq, &w, TASK_INTERRUPTIBLE); | ||
137 | if (!signal_pending(current)) | ||
138 | schedule(); | ||
139 | ret = signal_pending(current) ? -ERESTARTSYS : 0; | ||
140 | finish_wait(&wq, &w); | ||
141 | return ret; | ||
142 | } | ||
143 | |||
144 | |||
145 | static unsigned int iodev_poll(struct file *f, struct poll_table_struct *p) | ||
146 | { | ||
147 | poll_wait(f, &wq, p); | ||
148 | return POLLOUT | POLLWRNORM; | ||
149 | } | ||
150 | |||
151 | static irqreturn_t iodev_irqhdl(int irq, void *ctxt) | ||
152 | { | ||
153 | wake_up(&wq); | ||
154 | |||
155 | return IRQ_HANDLED; | ||
156 | } | ||
157 | |||
158 | static int __init iodev_init_module(void) | ||
159 | { | ||
160 | return platform_driver_register(&iodev_driver); | ||
161 | } | ||
162 | |||
163 | |||
164 | |||
165 | static void __exit iodev_cleanup_module(void) | ||
166 | { | ||
167 | platform_driver_unregister(&iodev_driver); | ||
168 | } | ||
169 | |||
170 | module_init(iodev_init_module); | ||
171 | module_exit(iodev_cleanup_module); | ||
172 | |||
173 | |||
174 | |||
175 | MODULE_AUTHOR("Thomas Koeller <thomas.koeller@baslerweb.com>"); | ||
176 | MODULE_DESCRIPTION("Basler eXcite i/o interrupt handler"); | ||
177 | MODULE_VERSION("0.0"); | ||
178 | MODULE_LICENSE("GPL"); | ||
diff --git a/arch/mips/basler/excite/excite_iodev.h b/arch/mips/basler/excite/excite_iodev.h deleted file mode 100644 index cbfbb5d2ee62..000000000000 --- a/arch/mips/basler/excite/excite_iodev.h +++ /dev/null | |||
@@ -1,10 +0,0 @@ | |||
1 | #ifndef __EXCITE_IODEV_H__ | ||
2 | #define __EXCITE_IODEV_H__ | ||
3 | |||
4 | /* Device name */ | ||
5 | #define IODEV_NAME "iodev" | ||
6 | |||
7 | /* Resource names */ | ||
8 | #define IODEV_RESOURCE_IRQ "excite_iodev_irq" | ||
9 | |||
10 | #endif /* __EXCITE_IODEV_H__ */ | ||
diff --git a/arch/mips/basler/excite/excite_irq.c b/arch/mips/basler/excite/excite_irq.c deleted file mode 100644 index 934e0a6b1011..000000000000 --- a/arch/mips/basler/excite/excite_irq.c +++ /dev/null | |||
@@ -1,122 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) by Basler Vision Technologies AG | ||
3 | * Author: Thomas Koeller <thomas.koeller@baslereb.com> | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License as published by | ||
7 | * the Free Software Foundation; either version 2 of the License, or | ||
8 | * (at your option) any later version. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, | ||
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, write to the Free Software | ||
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
18 | */ | ||
19 | |||
20 | #include <linux/errno.h> | ||
21 | #include <linux/init.h> | ||
22 | #include <linux/kernel_stat.h> | ||
23 | #include <linux/module.h> | ||
24 | #include <linux/signal.h> | ||
25 | #include <linux/sched.h> | ||
26 | #include <linux/types.h> | ||
27 | #include <linux/interrupt.h> | ||
28 | #include <linux/ioport.h> | ||
29 | #include <linux/timex.h> | ||
30 | #include <linux/slab.h> | ||
31 | #include <linux/random.h> | ||
32 | #include <linux/bitops.h> | ||
33 | #include <asm/bootinfo.h> | ||
34 | #include <asm/io.h> | ||
35 | #include <asm/irq.h> | ||
36 | #include <asm/irq_cpu.h> | ||
37 | #include <asm/mipsregs.h> | ||
38 | #include <asm/system.h> | ||
39 | #include <asm/rm9k-ocd.h> | ||
40 | |||
41 | #include <excite.h> | ||
42 | |||
43 | extern asmlinkage void excite_handle_int(void); | ||
44 | |||
45 | /* | ||
46 | * Initialize the interrupt handler | ||
47 | */ | ||
48 | void __init arch_init_irq(void) | ||
49 | { | ||
50 | mips_cpu_irq_init(); | ||
51 | rm7k_cpu_irq_init(); | ||
52 | rm9k_cpu_irq_init(); | ||
53 | } | ||
54 | |||
55 | asmlinkage void plat_irq_dispatch(void) | ||
56 | { | ||
57 | const u32 | ||
58 | interrupts = read_c0_cause() >> 8, | ||
59 | mask = ((read_c0_status() >> 8) & 0x000000ff) | | ||
60 | (read_c0_intcontrol() & 0x0000ff00), | ||
61 | pending = interrupts & mask; | ||
62 | u32 msgintflags, msgintmask, msgint; | ||
63 | |||
64 | /* process timer interrupt */ | ||
65 | if (pending & (1 << TIMER_IRQ)) { | ||
66 | do_IRQ(TIMER_IRQ); | ||
67 | return; | ||
68 | } | ||
69 | |||
70 | /* Process PCI interrupts */ | ||
71 | #if USB_IRQ < 10 | ||
72 | msgintflags = ocd_readl(INTP0Status0 + (USB_MSGINT / 0x20 * 0x10)); | ||
73 | msgintmask = ocd_readl(INTP0Mask0 + (USB_MSGINT / 0x20 * 0x10)); | ||
74 | msgint = msgintflags & msgintmask & (0x1 << (USB_MSGINT % 0x20)); | ||
75 | if ((pending & (1 << USB_IRQ)) && msgint) { | ||
76 | #else | ||
77 | if (pending & (1 << USB_IRQ)) { | ||
78 | #endif | ||
79 | do_IRQ(USB_IRQ); | ||
80 | return; | ||
81 | } | ||
82 | |||
83 | /* Process TITAN interrupts */ | ||
84 | msgintflags = ocd_readl(INTP0Status0 + (TITAN_MSGINT / 0x20 * 0x10)); | ||
85 | msgintmask = ocd_readl(INTP0Mask0 + (TITAN_MSGINT / 0x20 * 0x10)); | ||
86 | msgint = msgintflags & msgintmask & (0x1 << (TITAN_MSGINT % 0x20)); | ||
87 | if ((pending & (1 << TITAN_IRQ)) && msgint) { | ||
88 | ocd_writel(msgint, INTP0Clear0 + (TITAN_MSGINT / 0x20 * 0x10)); | ||
89 | do_IRQ(TITAN_IRQ); | ||
90 | return; | ||
91 | } | ||
92 | |||
93 | /* Process FPGA line #0 interrupts */ | ||
94 | msgintflags = ocd_readl(INTP0Status0 + (FPGA0_MSGINT / 0x20 * 0x10)); | ||
95 | msgintmask = ocd_readl(INTP0Mask0 + (FPGA0_MSGINT / 0x20 * 0x10)); | ||
96 | msgint = msgintflags & msgintmask & (0x1 << (FPGA0_MSGINT % 0x20)); | ||
97 | if ((pending & (1 << FPGA0_IRQ)) && msgint) { | ||
98 | do_IRQ(FPGA0_IRQ); | ||
99 | return; | ||
100 | } | ||
101 | |||
102 | /* Process FPGA line #1 interrupts */ | ||
103 | msgintflags = ocd_readl(INTP0Status0 + (FPGA1_MSGINT / 0x20 * 0x10)); | ||
104 | msgintmask = ocd_readl(INTP0Mask0 + (FPGA1_MSGINT / 0x20 * 0x10)); | ||
105 | msgint = msgintflags & msgintmask & (0x1 << (FPGA1_MSGINT % 0x20)); | ||
106 | if ((pending & (1 << FPGA1_IRQ)) && msgint) { | ||
107 | do_IRQ(FPGA1_IRQ); | ||
108 | return; | ||
109 | } | ||
110 | |||
111 | /* Process PHY interrupts */ | ||
112 | msgintflags = ocd_readl(INTP0Status0 + (PHY_MSGINT / 0x20 * 0x10)); | ||
113 | msgintmask = ocd_readl(INTP0Mask0 + (PHY_MSGINT / 0x20 * 0x10)); | ||
114 | msgint = msgintflags & msgintmask & (0x1 << (PHY_MSGINT % 0x20)); | ||
115 | if ((pending & (1 << PHY_IRQ)) && msgint) { | ||
116 | do_IRQ(PHY_IRQ); | ||
117 | return; | ||
118 | } | ||
119 | |||
120 | /* Process spurious interrupts */ | ||
121 | spurious_interrupt(); | ||
122 | } | ||
diff --git a/arch/mips/basler/excite/excite_procfs.c b/arch/mips/basler/excite/excite_procfs.c deleted file mode 100644 index 08923e6825b5..000000000000 --- a/arch/mips/basler/excite/excite_procfs.c +++ /dev/null | |||
@@ -1,92 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2004, 2005 by Basler Vision Technologies AG | ||
3 | * Author: Thomas Koeller <thomas.koeller@baslerweb.com> | ||
4 | * | ||
5 | * Procfs support for Basler eXcite | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | * | ||
12 | * This program is distributed in the hope that it will be useful, | ||
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
15 | * GNU General Public License for more details. | ||
16 | * | ||
17 | * You should have received a copy of the GNU General Public License | ||
18 | * along with this program; if not, write to the Free Software | ||
19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
20 | */ | ||
21 | #include <linux/module.h> | ||
22 | #include <linux/proc_fs.h> | ||
23 | #include <linux/seq_file.h> | ||
24 | #include <linux/stat.h> | ||
25 | #include <asm/page.h> | ||
26 | #include <asm/io.h> | ||
27 | #include <asm/system.h> | ||
28 | #include <asm/rm9k-ocd.h> | ||
29 | |||
30 | #include <excite.h> | ||
31 | |||
32 | static int excite_unit_id_proc_show(struct seq_file *m, void *v) | ||
33 | { | ||
34 | seq_printf(m, "%06x", unit_id); | ||
35 | return 0; | ||
36 | } | ||
37 | |||
38 | static int excite_unit_id_proc_open(struct inode *inode, struct file *file) | ||
39 | { | ||
40 | return single_open(file, excite_unit_id_proc_show, NULL); | ||
41 | } | ||
42 | |||
43 | static const struct file_operations excite_unit_id_proc_fops = { | ||
44 | .owner = THIS_MODULE, | ||
45 | .open = excite_unit_id_proc_open, | ||
46 | .read = seq_read, | ||
47 | .llseek = seq_lseek, | ||
48 | .release = single_release, | ||
49 | }; | ||
50 | |||
51 | static int | ||
52 | excite_bootrom_read(char *page, char **start, off_t off, int count, | ||
53 | int *eof, void *data) | ||
54 | { | ||
55 | void __iomem * src; | ||
56 | |||
57 | if (off >= EXCITE_SIZE_BOOTROM) { | ||
58 | *eof = 1; | ||
59 | return 0; | ||
60 | } | ||
61 | |||
62 | if ((off + count) > EXCITE_SIZE_BOOTROM) | ||
63 | count = EXCITE_SIZE_BOOTROM - off; | ||
64 | |||
65 | src = ioremap(EXCITE_PHYS_BOOTROM + off, count); | ||
66 | if (src) { | ||
67 | memcpy_fromio(page, src, count); | ||
68 | iounmap(src); | ||
69 | *start = page; | ||
70 | } else { | ||
71 | count = -ENOMEM; | ||
72 | } | ||
73 | |||
74 | return count; | ||
75 | } | ||
76 | |||
77 | void excite_procfs_init(void) | ||
78 | { | ||
79 | /* Create & populate /proc/excite */ | ||
80 | struct proc_dir_entry * const pdir = proc_mkdir("excite", NULL); | ||
81 | if (pdir) { | ||
82 | struct proc_dir_entry * e; | ||
83 | |||
84 | e = proc_create("unit_id", S_IRUGO, pdir, | ||
85 | &excite_unit_id_proc_fops); | ||
86 | if (e) e->size = 6; | ||
87 | |||
88 | e = create_proc_read_entry("bootrom", S_IRUGO, pdir, | ||
89 | excite_bootrom_read, NULL); | ||
90 | if (e) e->size = EXCITE_SIZE_BOOTROM; | ||
91 | } | ||
92 | } | ||
diff --git a/arch/mips/basler/excite/excite_prom.c b/arch/mips/basler/excite/excite_prom.c deleted file mode 100644 index 68d8bc597e34..000000000000 --- a/arch/mips/basler/excite/excite_prom.c +++ /dev/null | |||
@@ -1,144 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2004, 2005 by Thomas Koeller (thomas.koeller@baslerweb.com) | ||
3 | * Based on the PMC-Sierra Yosemite board support by Ralf Baechle and | ||
4 | * Manish Lachwani. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/init.h> | ||
22 | #include <linux/sched.h> | ||
23 | #include <linux/mm.h> | ||
24 | #include <linux/delay.h> | ||
25 | #include <linux/smp.h> | ||
26 | #include <linux/module.h> | ||
27 | #include <asm/io.h> | ||
28 | #include <asm/pgtable.h> | ||
29 | #include <asm/processor.h> | ||
30 | #include <asm/reboot.h> | ||
31 | #include <asm/system.h> | ||
32 | #include <asm/bootinfo.h> | ||
33 | #include <asm/string.h> | ||
34 | |||
35 | #include <excite.h> | ||
36 | |||
37 | /* This struct is used by Redboot to pass arguments to the kernel */ | ||
38 | typedef struct | ||
39 | { | ||
40 | char *name; | ||
41 | char *val; | ||
42 | } t_env_var; | ||
43 | |||
44 | struct parmblock { | ||
45 | t_env_var memsize; | ||
46 | t_env_var modetty0; | ||
47 | t_env_var ethaddr; | ||
48 | t_env_var env_end; | ||
49 | char *argv[2]; | ||
50 | char text[0]; | ||
51 | }; | ||
52 | |||
53 | static unsigned int prom_argc; | ||
54 | static const char ** prom_argv; | ||
55 | static const t_env_var * prom_env; | ||
56 | |||
57 | static void prom_halt(void) __attribute__((noreturn)); | ||
58 | static void prom_exit(void) __attribute__((noreturn)); | ||
59 | |||
60 | |||
61 | |||
62 | const char *get_system_type(void) | ||
63 | { | ||
64 | return "Basler eXcite"; | ||
65 | } | ||
66 | |||
67 | /* | ||
68 | * Halt the system | ||
69 | */ | ||
70 | static void prom_halt(void) | ||
71 | { | ||
72 | printk(KERN_NOTICE "\n** System halted.\n"); | ||
73 | while (1) | ||
74 | asm volatile ( | ||
75 | "\t.set\tmips3\n" | ||
76 | "\twait\n" | ||
77 | "\t.set\tmips0\n" | ||
78 | ); | ||
79 | } | ||
80 | |||
81 | /* | ||
82 | * Reset the CPU and re-enter Redboot | ||
83 | */ | ||
84 | static void prom_exit(void) | ||
85 | { | ||
86 | unsigned int i; | ||
87 | volatile unsigned char * const flg = | ||
88 | (volatile unsigned char *) (EXCITE_ADDR_FPGA + EXCITE_FPGA_DPR); | ||
89 | |||
90 | /* Clear the watchdog reset flag, set the reboot flag */ | ||
91 | *flg &= ~0x01; | ||
92 | *flg |= 0x80; | ||
93 | |||
94 | for (i = 0; i < 10; i++) { | ||
95 | *(volatile unsigned char *) (EXCITE_ADDR_FPGA + EXCITE_FPGA_SYSCTL) = 0x02; | ||
96 | iob(); | ||
97 | mdelay(1000); | ||
98 | } | ||
99 | |||
100 | printk(KERN_NOTICE "Reset failed\n"); | ||
101 | prom_halt(); | ||
102 | } | ||
103 | |||
104 | static const char __init *prom_getenv(char *name) | ||
105 | { | ||
106 | const t_env_var * p; | ||
107 | for (p = prom_env; p->name != NULL; p++) | ||
108 | if(strcmp(name, p->name) == 0) | ||
109 | break; | ||
110 | return p->val; | ||
111 | } | ||
112 | |||
113 | /* | ||
114 | * Init routine which accepts the variables from Redboot | ||
115 | */ | ||
116 | void __init prom_init(void) | ||
117 | { | ||
118 | const struct parmblock * const pb = (struct parmblock *) fw_arg2; | ||
119 | |||
120 | prom_argc = fw_arg0; | ||
121 | prom_argv = (const char **) fw_arg1; | ||
122 | prom_env = &pb->memsize; | ||
123 | |||
124 | /* Callbacks for halt, restart */ | ||
125 | _machine_restart = (void (*)(char *)) prom_exit; | ||
126 | _machine_halt = prom_halt; | ||
127 | |||
128 | #ifdef CONFIG_32BIT | ||
129 | /* copy command line */ | ||
130 | strcpy(arcs_cmdline, prom_argv[1]); | ||
131 | memsize = simple_strtol(prom_getenv("memsize"), NULL, 16); | ||
132 | strcpy(modetty, prom_getenv("modetty0")); | ||
133 | #endif /* CONFIG_32BIT */ | ||
134 | |||
135 | #ifdef CONFIG_64BIT | ||
136 | # error 64 bit support not implemented | ||
137 | #endif /* CONFIG_64BIT */ | ||
138 | } | ||
139 | |||
140 | /* This is called from free_initmem(), so we need to provide it */ | ||
141 | void __init prom_free_prom_memory(void) | ||
142 | { | ||
143 | /* Nothing to do */ | ||
144 | } | ||
diff --git a/arch/mips/basler/excite/excite_setup.c b/arch/mips/basler/excite/excite_setup.c deleted file mode 100644 index d66b3b8edf2a..000000000000 --- a/arch/mips/basler/excite/excite_setup.c +++ /dev/null | |||
@@ -1,302 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2004, 2005 by Basler Vision Technologies AG | ||
3 | * Author: Thomas Koeller <thomas.koeller@baslerweb.com> | ||
4 | * Based on the PMC-Sierra Yosemite board support by Ralf Baechle and | ||
5 | * Manish Lachwani. | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | * | ||
12 | * This program is distributed in the hope that it will be useful, | ||
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
15 | * GNU General Public License for more details. | ||
16 | * | ||
17 | * You should have received a copy of the GNU General Public License | ||
18 | * along with this program; if not, write to the Free Software | ||
19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
20 | */ | ||
21 | |||
22 | #include <linux/types.h> | ||
23 | #include <linux/kernel.h> | ||
24 | #include <linux/module.h> | ||
25 | #include <linux/string.h> | ||
26 | #include <linux/tty.h> | ||
27 | #include <linux/serial_core.h> | ||
28 | #include <linux/serial.h> | ||
29 | #include <linux/serial_8250.h> | ||
30 | #include <linux/ioport.h> | ||
31 | #include <linux/spinlock.h> | ||
32 | #include <asm/bootinfo.h> | ||
33 | #include <asm/mipsregs.h> | ||
34 | #include <asm/pgtable-32.h> | ||
35 | #include <asm/io.h> | ||
36 | #include <asm/time.h> | ||
37 | #include <asm/rm9k-ocd.h> | ||
38 | |||
39 | #include <excite.h> | ||
40 | |||
41 | #define TITAN_UART_CLK 25000000 | ||
42 | |||
43 | #if 1 | ||
44 | /* normal serial port assignment */ | ||
45 | #define REGBASE_SER0 0x0208 | ||
46 | #define REGBASE_SER1 0x0238 | ||
47 | #define MASK_SER0 0x1 | ||
48 | #define MASK_SER1 0x2 | ||
49 | #else | ||
50 | /* serial ports swapped */ | ||
51 | #define REGBASE_SER0 0x0238 | ||
52 | #define REGBASE_SER1 0x0208 | ||
53 | #define MASK_SER0 0x2 | ||
54 | #define MASK_SER1 0x1 | ||
55 | #endif | ||
56 | |||
57 | unsigned long memsize; | ||
58 | char modetty[30]; | ||
59 | unsigned int titan_irq = TITAN_IRQ; | ||
60 | static void __iomem * ctl_regs; | ||
61 | u32 unit_id; | ||
62 | |||
63 | volatile void __iomem * const ocd_base = (void *) (EXCITE_ADDR_OCD); | ||
64 | volatile void __iomem * const titan_base = (void *) (EXCITE_ADDR_TITAN); | ||
65 | |||
66 | /* Protect access to shared GPI registers */ | ||
67 | DEFINE_SPINLOCK(titan_lock); | ||
68 | int titan_irqflags; | ||
69 | |||
70 | |||
71 | /* | ||
72 | * The eXcite platform uses the alternate timer interrupt | ||
73 | * | ||
74 | * Fixme: At the time of this writing cevt-r4k.c doesn't yet know about how | ||
75 | * to handle the alternate timer interrupt of the RM9000. | ||
76 | */ | ||
77 | void __init plat_time_init(void) | ||
78 | { | ||
79 | const u32 modebit5 = ocd_readl(0x00e4); | ||
80 | unsigned int mult = ((modebit5 >> 11) & 0x1f) + 2; | ||
81 | unsigned int div = ((modebit5 >> 16) & 0x1f) + 2; | ||
82 | |||
83 | if (div == 33) | ||
84 | div = 1; | ||
85 | mips_hpt_frequency = EXCITE_CPU_EXT_CLOCK * mult / div / 2; | ||
86 | } | ||
87 | |||
88 | static int __init excite_init_console(void) | ||
89 | { | ||
90 | #if defined(CONFIG_SERIAL_8250) | ||
91 | static __initdata char serr[] = | ||
92 | KERN_ERR "Serial port #%u setup failed\n"; | ||
93 | struct uart_port up; | ||
94 | |||
95 | /* Take the DUART out of reset */ | ||
96 | titan_writel(0x00ff1cff, CPRR); | ||
97 | |||
98 | #if (CONFIG_SERIAL_8250_NR_UARTS > 1) | ||
99 | /* Enable both ports */ | ||
100 | titan_writel(MASK_SER0 | MASK_SER1, UACFG); | ||
101 | #else | ||
102 | /* Enable port #0 only */ | ||
103 | titan_writel(MASK_SER0, UACFG); | ||
104 | #endif | ||
105 | |||
106 | /* | ||
107 | * Set up serial port #0. Do not use autodetection; the result is | ||
108 | * not what we want. | ||
109 | */ | ||
110 | memset(&up, 0, sizeof(up)); | ||
111 | up.membase = (char *) titan_addr(REGBASE_SER0); | ||
112 | up.irq = TITAN_IRQ; | ||
113 | up.uartclk = TITAN_UART_CLK; | ||
114 | up.regshift = 0; | ||
115 | up.iotype = UPIO_RM9000; | ||
116 | up.type = PORT_RM9000; | ||
117 | up.flags = UPF_SHARE_IRQ; | ||
118 | up.line = 0; | ||
119 | if (early_serial_setup(&up)) | ||
120 | printk(serr, up.line); | ||
121 | |||
122 | #if CONFIG_SERIAL_8250_NR_UARTS > 1 | ||
123 | /* And now for port #1. */ | ||
124 | up.membase = (char *) titan_addr(REGBASE_SER1); | ||
125 | up.line = 1; | ||
126 | if (early_serial_setup(&up)) | ||
127 | printk(serr, up.line); | ||
128 | #endif /* CONFIG_SERIAL_8250_NR_UARTS > 1 */ | ||
129 | #else | ||
130 | /* Leave the DUART in reset */ | ||
131 | titan_writel(0x00ff3cff, CPRR); | ||
132 | #endif /* defined(CONFIG_SERIAL_8250) */ | ||
133 | |||
134 | return 0; | ||
135 | } | ||
136 | |||
137 | static int __init excite_platform_init(void) | ||
138 | { | ||
139 | unsigned int i; | ||
140 | unsigned char buf[3]; | ||
141 | u8 reg; | ||
142 | void __iomem * dpr; | ||
143 | |||
144 | /* BIU buffer allocations */ | ||
145 | ocd_writel(8, CPURSLMT); /* CPU */ | ||
146 | titan_writel(4, CPGRWL); /* GPI / Ethernet */ | ||
147 | |||
148 | /* Map control registers located in FPGA */ | ||
149 | ctl_regs = ioremap_nocache(EXCITE_PHYS_FPGA + EXCITE_FPGA_SYSCTL, 16); | ||
150 | if (!ctl_regs) | ||
151 | panic("eXcite: failed to map platform control registers\n"); | ||
152 | memcpy_fromio(buf, ctl_regs + 2, ARRAY_SIZE(buf)); | ||
153 | unit_id = buf[0] | (buf[1] << 8) | (buf[2] << 16); | ||
154 | |||
155 | /* Clear the reboot flag */ | ||
156 | dpr = ioremap_nocache(EXCITE_PHYS_FPGA + EXCITE_FPGA_DPR, 1); | ||
157 | reg = __raw_readb(dpr); | ||
158 | __raw_writeb(reg & 0x7f, dpr); | ||
159 | iounmap(dpr); | ||
160 | |||
161 | /* Interrupt controller setup */ | ||
162 | for (i = INTP0Status0; i < INTP0Status0 + 0x80; i += 0x10) { | ||
163 | ocd_writel(0x00000000, i + 0x04); | ||
164 | ocd_writel(0xffffffff, i + 0x0c); | ||
165 | } | ||
166 | ocd_writel(0x2, NMICONFIG); | ||
167 | |||
168 | ocd_writel(0x1 << (TITAN_MSGINT % 0x20), | ||
169 | INTP0Mask0 + (0x10 * (TITAN_MSGINT / 0x20))); | ||
170 | ocd_writel((0x1 << (FPGA0_MSGINT % 0x20)) | ||
171 | | ocd_readl(INTP0Mask0 + (0x10 * (FPGA0_MSGINT / 0x20))), | ||
172 | INTP0Mask0 + (0x10 * (FPGA0_MSGINT / 0x20))); | ||
173 | ocd_writel((0x1 << (FPGA1_MSGINT % 0x20)) | ||
174 | | ocd_readl(INTP0Mask0 + (0x10 * (FPGA1_MSGINT / 0x20))), | ||
175 | INTP0Mask0 + (0x10 * (FPGA1_MSGINT / 0x20))); | ||
176 | ocd_writel((0x1 << (PHY_MSGINT % 0x20)) | ||
177 | | ocd_readl(INTP0Mask0 + (0x10 * (PHY_MSGINT / 0x20))), | ||
178 | INTP0Mask0 + (0x10 * (PHY_MSGINT / 0x20))); | ||
179 | #if USB_IRQ < 10 | ||
180 | ocd_writel((0x1 << (USB_MSGINT % 0x20)) | ||
181 | | ocd_readl(INTP0Mask0 + (0x10 * (USB_MSGINT / 0x20))), | ||
182 | INTP0Mask0 + (0x10 * (USB_MSGINT / 0x20))); | ||
183 | #endif | ||
184 | /* Enable the packet FIFO, XDMA and XDMA arbiter */ | ||
185 | titan_writel(0x00ff18ff, CPRR); | ||
186 | |||
187 | /* | ||
188 | * Set up the PADMUX. Power down all ethernet slices, | ||
189 | * they will be powered up and configured at device startup. | ||
190 | */ | ||
191 | titan_writel(0x00878206, CPTC1R); | ||
192 | titan_writel(0x00001100, CPTC0R); /* latch PADMUX, enable WCIMODE */ | ||
193 | |||
194 | /* Reset and enable the FIFO block */ | ||
195 | titan_writel(0x00000001, SDRXFCIE); | ||
196 | titan_writel(0x00000001, SDTXFCIE); | ||
197 | titan_writel(0x00000100, SDRXFCIE); | ||
198 | titan_writel(0x00000000, SDTXFCIE); | ||
199 | |||
200 | /* | ||
201 | * Initialize the common interrupt shared by all components of | ||
202 | * the GPI/Ethernet subsystem. | ||
203 | */ | ||
204 | titan_writel((EXCITE_PHYS_OCD >> 12), CPCFG0); | ||
205 | titan_writel(TITAN_MSGINT, CPCFG1); | ||
206 | |||
207 | /* | ||
208 | * XDMA configuration. | ||
209 | * In order for the XDMA to be sharable among multiple drivers, | ||
210 | * the setup must be done here in the platform. The reason is that | ||
211 | * this setup can only be done while the XDMA is in reset. If this | ||
212 | * were done in a driver, it would interrupt all other drivers | ||
213 | * using the XDMA. | ||
214 | */ | ||
215 | titan_writel(0x80021dff, GXCFG); /* XDMA reset */ | ||
216 | titan_writel(0x00000000, CPXCISRA); | ||
217 | titan_writel(0x00000000, CPXCISRB); /* clear pending interrupts */ | ||
218 | #if defined(CONFIG_HIGHMEM) | ||
219 | # error change for HIGHMEM support! | ||
220 | #else | ||
221 | titan_writel(0x00000000, GXDMADRPFX); /* buffer address prefix */ | ||
222 | #endif | ||
223 | titan_writel(0, GXDMA_DESCADR); | ||
224 | |||
225 | for (i = 0x5040; i <= 0x5300; i += 0x0040) | ||
226 | titan_writel(0x80080000, i); /* reset channel */ | ||
227 | |||
228 | titan_writel((0x1 << 29) /* no sparse tx descr. */ | ||
229 | | (0x1 << 28) /* no sparse rx descr. */ | ||
230 | | (0x1 << 23) | (0x1 << 24) /* descriptor coherency */ | ||
231 | | (0x1 << 21) | (0x1 << 22) /* data coherency */ | ||
232 | | (0x1 << 17) | ||
233 | | 0x1dff, | ||
234 | GXCFG); | ||
235 | |||
236 | #if defined(CONFIG_SMP) | ||
237 | # error No SMP support | ||
238 | #else | ||
239 | /* All interrupts go to core #0 only. */ | ||
240 | titan_writel(0x1f007fff, CPDST0A); | ||
241 | titan_writel(0x00000000, CPDST0B); | ||
242 | titan_writel(0x0000ff3f, CPDST1A); | ||
243 | titan_writel(0x00000000, CPDST1B); | ||
244 | titan_writel(0x00ffffff, CPXDSTA); | ||
245 | titan_writel(0x00000000, CPXDSTB); | ||
246 | #endif | ||
247 | |||
248 | /* Enable DUART interrupts, disable everything else. */ | ||
249 | titan_writel(0x04000000, CPGIG0ER); | ||
250 | titan_writel(0x000000c0, CPGIG1ER); | ||
251 | |||
252 | excite_procfs_init(); | ||
253 | return 0; | ||
254 | } | ||
255 | |||
256 | void __init plat_mem_setup(void) | ||
257 | { | ||
258 | volatile u32 * const boot_ocd_base = (u32 *) 0xbf7fc000; | ||
259 | |||
260 | /* Announce RAM to system */ | ||
261 | add_memory_region(0x00000000, memsize, BOOT_MEM_RAM); | ||
262 | |||
263 | /* Set up the peripheral address map */ | ||
264 | *(boot_ocd_base + (LKB9 / sizeof(u32))) = 0; | ||
265 | *(boot_ocd_base + (LKB10 / sizeof(u32))) = 0; | ||
266 | *(boot_ocd_base + (LKB11 / sizeof(u32))) = 0; | ||
267 | *(boot_ocd_base + (LKB12 / sizeof(u32))) = 0; | ||
268 | wmb(); | ||
269 | *(boot_ocd_base + (LKB0 / sizeof(u32))) = EXCITE_PHYS_OCD >> 4; | ||
270 | wmb(); | ||
271 | |||
272 | ocd_writel((EXCITE_PHYS_TITAN >> 4) | 0x1UL, LKB5); | ||
273 | ocd_writel(((EXCITE_SIZE_TITAN >> 4) & 0x7fffff00) - 0x100, LKM5); | ||
274 | ocd_writel((EXCITE_PHYS_SCRAM >> 4) | 0x1UL, LKB13); | ||
275 | ocd_writel(((EXCITE_SIZE_SCRAM >> 4) & 0xffffff00) - 0x100, LKM13); | ||
276 | |||
277 | /* Local bus slot #0 */ | ||
278 | ocd_writel(0x00040510, LDP0); | ||
279 | ocd_writel((EXCITE_PHYS_BOOTROM >> 4) | 0x1UL, LKB9); | ||
280 | ocd_writel(((EXCITE_SIZE_BOOTROM >> 4) & 0x03ffff00) - 0x100, LKM9); | ||
281 | |||
282 | /* Local bus slot #2 */ | ||
283 | ocd_writel(0x00000330, LDP2); | ||
284 | ocd_writel((EXCITE_PHYS_FPGA >> 4) | 0x1, LKB11); | ||
285 | ocd_writel(((EXCITE_SIZE_FPGA >> 4) - 0x100) & 0x03ffff00, LKM11); | ||
286 | |||
287 | /* Local bus slot #3 */ | ||
288 | ocd_writel(0x00123413, LDP3); | ||
289 | ocd_writel((EXCITE_PHYS_NAND >> 4) | 0x1, LKB12); | ||
290 | ocd_writel(((EXCITE_SIZE_NAND >> 4) - 0x100) & 0x03ffff00, LKM12); | ||
291 | } | ||
292 | |||
293 | |||
294 | |||
295 | console_initcall(excite_init_console); | ||
296 | arch_initcall(excite_platform_init); | ||
297 | |||
298 | EXPORT_SYMBOL(titan_lock); | ||
299 | EXPORT_SYMBOL(titan_irqflags); | ||
300 | EXPORT_SYMBOL(titan_irq); | ||
301 | EXPORT_SYMBOL(ocd_base); | ||
302 | EXPORT_SYMBOL(titan_base); | ||
diff --git a/arch/mips/bcm47xx/gpio.c b/arch/mips/bcm47xx/gpio.c index 9b798800258c..e4a5ee9c9721 100644 --- a/arch/mips/bcm47xx/gpio.c +++ b/arch/mips/bcm47xx/gpio.c | |||
@@ -59,4 +59,3 @@ int gpio_to_irq(unsigned gpio) | |||
59 | return -EINVAL; | 59 | return -EINVAL; |
60 | } | 60 | } |
61 | EXPORT_SYMBOL_GPL(gpio_to_irq); | 61 | EXPORT_SYMBOL_GPL(gpio_to_irq); |
62 | |||
diff --git a/arch/mips/bcm47xx/prom.c b/arch/mips/bcm47xx/prom.c index fb284c3b2cff..0fa646c5a844 100644 --- a/arch/mips/bcm47xx/prom.c +++ b/arch/mips/bcm47xx/prom.c | |||
@@ -100,11 +100,11 @@ static __init void prom_init_console(void) | |||
100 | 100 | ||
101 | static __init void prom_init_cmdline(void) | 101 | static __init void prom_init_cmdline(void) |
102 | { | 102 | { |
103 | static char buf[CL_SIZE] __initdata; | 103 | static char buf[COMMAND_LINE_SIZE] __initdata; |
104 | 104 | ||
105 | /* Get the kernel command line from CFE */ | 105 | /* Get the kernel command line from CFE */ |
106 | if (cfe_getenv("LINUX_CMDLINE", buf, CL_SIZE) >= 0) { | 106 | if (cfe_getenv("LINUX_CMDLINE", buf, COMMAND_LINE_SIZE) >= 0) { |
107 | buf[CL_SIZE-1] = 0; | 107 | buf[COMMAND_LINE_SIZE - 1] = 0; |
108 | strcpy(arcs_cmdline, buf); | 108 | strcpy(arcs_cmdline, buf); |
109 | } | 109 | } |
110 | 110 | ||
@@ -112,13 +112,13 @@ static __init void prom_init_cmdline(void) | |||
112 | * as CFE is not available anymore later in the boot process. */ | 112 | * as CFE is not available anymore later in the boot process. */ |
113 | if ((strstr(arcs_cmdline, "console=")) == NULL) { | 113 | if ((strstr(arcs_cmdline, "console=")) == NULL) { |
114 | /* Try to read the default serial port used by CFE */ | 114 | /* Try to read the default serial port used by CFE */ |
115 | if ((cfe_getenv("BOOT_CONSOLE", buf, CL_SIZE) < 0) | 115 | if ((cfe_getenv("BOOT_CONSOLE", buf, COMMAND_LINE_SIZE) < 0) |
116 | || (strncmp("uart", buf, 4))) | 116 | || (strncmp("uart", buf, 4))) |
117 | /* Default to uart0 */ | 117 | /* Default to uart0 */ |
118 | strcpy(buf, "uart0"); | 118 | strcpy(buf, "uart0"); |
119 | 119 | ||
120 | /* Compute the new command line */ | 120 | /* Compute the new command line */ |
121 | snprintf(arcs_cmdline, CL_SIZE, "%s console=ttyS%c,115200", | 121 | snprintf(arcs_cmdline, COMMAND_LINE_SIZE, "%s console=ttyS%c,115200", |
122 | arcs_cmdline, buf[4]); | 122 | arcs_cmdline, buf[4]); |
123 | } | 123 | } |
124 | } | 124 | } |
@@ -141,6 +141,14 @@ static __init void prom_init_mem(void) | |||
141 | break; | 141 | break; |
142 | } | 142 | } |
143 | 143 | ||
144 | /* Ignoring the last page when ddr size is 128M. Cached | ||
145 | * accesses to last page is causing the processor to prefetch | ||
146 | * using address above 128M stepping out of the ddr address | ||
147 | * space. | ||
148 | */ | ||
149 | if (mem == 0x8000000) | ||
150 | mem -= 0x1000; | ||
151 | |||
144 | add_memory_region(0, mem, BOOT_MEM_RAM); | 152 | add_memory_region(0, mem, BOOT_MEM_RAM); |
145 | } | 153 | } |
146 | 154 | ||
@@ -155,4 +163,3 @@ void __init prom_init(void) | |||
155 | void __init prom_free_prom_memory(void) | 163 | void __init prom_free_prom_memory(void) |
156 | { | 164 | { |
157 | } | 165 | } |
158 | |||
diff --git a/arch/mips/bcm47xx/setup.c b/arch/mips/bcm47xx/setup.c index 2f580fa160c9..d442e11625fa 100644 --- a/arch/mips/bcm47xx/setup.c +++ b/arch/mips/bcm47xx/setup.c | |||
@@ -121,4 +121,3 @@ void __init plat_mem_setup(void) | |||
121 | _machine_halt = bcm47xx_machine_halt; | 121 | _machine_halt = bcm47xx_machine_halt; |
122 | pm_power_off = bcm47xx_machine_halt; | 122 | pm_power_off = bcm47xx_machine_halt; |
123 | } | 123 | } |
124 | |||
diff --git a/arch/mips/bcm47xx/wgt634u.c b/arch/mips/bcm47xx/wgt634u.c index ef00e7f58c24..74d06965326f 100644 --- a/arch/mips/bcm47xx/wgt634u.c +++ b/arch/mips/bcm47xx/wgt634u.c | |||
@@ -164,4 +164,3 @@ static int __init wgt634u_init(void) | |||
164 | } | 164 | } |
165 | 165 | ||
166 | module_init(wgt634u_init); | 166 | module_init(wgt634u_init); |
167 | |||
diff --git a/arch/mips/bcm63xx/boards/board_bcm963xx.c b/arch/mips/bcm63xx/boards/board_bcm963xx.c index 05a35cf5963d..8dba8cfb752f 100644 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c | |||
@@ -18,6 +18,7 @@ | |||
18 | #include <asm/addrspace.h> | 18 | #include <asm/addrspace.h> |
19 | #include <bcm63xx_board.h> | 19 | #include <bcm63xx_board.h> |
20 | #include <bcm63xx_cpu.h> | 20 | #include <bcm63xx_cpu.h> |
21 | #include <bcm63xx_dev_uart.h> | ||
21 | #include <bcm63xx_regs.h> | 22 | #include <bcm63xx_regs.h> |
22 | #include <bcm63xx_io.h> | 23 | #include <bcm63xx_io.h> |
23 | #include <bcm63xx_dev_pci.h> | 24 | #include <bcm63xx_dev_pci.h> |
@@ -40,6 +41,7 @@ static struct board_info __initdata board_96338gw = { | |||
40 | .name = "96338GW", | 41 | .name = "96338GW", |
41 | .expected_cpu_id = 0x6338, | 42 | .expected_cpu_id = 0x6338, |
42 | 43 | ||
44 | .has_uart0 = 1, | ||
43 | .has_enet0 = 1, | 45 | .has_enet0 = 1, |
44 | .enet0 = { | 46 | .enet0 = { |
45 | .force_speed_100 = 1, | 47 | .force_speed_100 = 1, |
@@ -82,6 +84,7 @@ static struct board_info __initdata board_96338w = { | |||
82 | .name = "96338W", | 84 | .name = "96338W", |
83 | .expected_cpu_id = 0x6338, | 85 | .expected_cpu_id = 0x6338, |
84 | 86 | ||
87 | .has_uart0 = 1, | ||
85 | .has_enet0 = 1, | 88 | .has_enet0 = 1, |
86 | .enet0 = { | 89 | .enet0 = { |
87 | .force_speed_100 = 1, | 90 | .force_speed_100 = 1, |
@@ -126,6 +129,8 @@ static struct board_info __initdata board_96338w = { | |||
126 | static struct board_info __initdata board_96345gw2 = { | 129 | static struct board_info __initdata board_96345gw2 = { |
127 | .name = "96345GW2", | 130 | .name = "96345GW2", |
128 | .expected_cpu_id = 0x6345, | 131 | .expected_cpu_id = 0x6345, |
132 | |||
133 | .has_uart0 = 1, | ||
129 | }; | 134 | }; |
130 | #endif | 135 | #endif |
131 | 136 | ||
@@ -137,6 +142,7 @@ static struct board_info __initdata board_96348r = { | |||
137 | .name = "96348R", | 142 | .name = "96348R", |
138 | .expected_cpu_id = 0x6348, | 143 | .expected_cpu_id = 0x6348, |
139 | 144 | ||
145 | .has_uart0 = 1, | ||
140 | .has_enet0 = 1, | 146 | .has_enet0 = 1, |
141 | .has_pci = 1, | 147 | .has_pci = 1, |
142 | 148 | ||
@@ -180,6 +186,7 @@ static struct board_info __initdata board_96348gw_10 = { | |||
180 | .name = "96348GW-10", | 186 | .name = "96348GW-10", |
181 | .expected_cpu_id = 0x6348, | 187 | .expected_cpu_id = 0x6348, |
182 | 188 | ||
189 | .has_uart0 = 1, | ||
183 | .has_enet0 = 1, | 190 | .has_enet0 = 1, |
184 | .has_enet1 = 1, | 191 | .has_enet1 = 1, |
185 | .has_pci = 1, | 192 | .has_pci = 1, |
@@ -239,6 +246,7 @@ static struct board_info __initdata board_96348gw_11 = { | |||
239 | .name = "96348GW-11", | 246 | .name = "96348GW-11", |
240 | .expected_cpu_id = 0x6348, | 247 | .expected_cpu_id = 0x6348, |
241 | 248 | ||
249 | .has_uart0 = 1, | ||
242 | .has_enet0 = 1, | 250 | .has_enet0 = 1, |
243 | .has_enet1 = 1, | 251 | .has_enet1 = 1, |
244 | .has_pci = 1, | 252 | .has_pci = 1, |
@@ -292,6 +300,7 @@ static struct board_info __initdata board_96348gw = { | |||
292 | .name = "96348GW", | 300 | .name = "96348GW", |
293 | .expected_cpu_id = 0x6348, | 301 | .expected_cpu_id = 0x6348, |
294 | 302 | ||
303 | .has_uart0 = 1, | ||
295 | .has_enet0 = 1, | 304 | .has_enet0 = 1, |
296 | .has_enet1 = 1, | 305 | .has_enet1 = 1, |
297 | .has_pci = 1, | 306 | .has_pci = 1, |
@@ -346,33 +355,53 @@ static struct board_info __initdata board_96348gw = { | |||
346 | }; | 355 | }; |
347 | 356 | ||
348 | static struct board_info __initdata board_FAST2404 = { | 357 | static struct board_info __initdata board_FAST2404 = { |
349 | .name = "F@ST2404", | 358 | .name = "F@ST2404", |
350 | .expected_cpu_id = 0x6348, | 359 | .expected_cpu_id = 0x6348, |
351 | 360 | ||
352 | .has_enet0 = 1, | 361 | .has_uart0 = 1, |
353 | .has_enet1 = 1, | 362 | .has_enet0 = 1, |
354 | .has_pci = 1, | 363 | .has_enet1 = 1, |
364 | .has_pci = 1, | ||
355 | 365 | ||
356 | .enet0 = { | 366 | .enet0 = { |
357 | .has_phy = 1, | 367 | .has_phy = 1, |
358 | .use_internal_phy = 1, | 368 | .use_internal_phy = 1, |
359 | }, | 369 | }, |
360 | 370 | ||
361 | .enet1 = { | 371 | .enet1 = { |
362 | .force_speed_100 = 1, | 372 | .force_speed_100 = 1, |
363 | .force_duplex_full = 1, | 373 | .force_duplex_full = 1, |
364 | }, | 374 | }, |
365 | 375 | ||
376 | .has_ohci0 = 1, | ||
377 | .has_pccard = 1, | ||
378 | .has_ehci0 = 1, | ||
379 | }; | ||
366 | 380 | ||
367 | .has_ohci0 = 1, | 381 | static struct board_info __initdata board_rta1025w_16 = { |
368 | .has_pccard = 1, | 382 | .name = "RTA1025W_16", |
369 | .has_ehci0 = 1, | 383 | .expected_cpu_id = 0x6348, |
384 | |||
385 | .has_enet0 = 1, | ||
386 | .has_enet1 = 1, | ||
387 | .has_pci = 1, | ||
388 | |||
389 | .enet0 = { | ||
390 | .has_phy = 1, | ||
391 | .use_internal_phy = 1, | ||
392 | }, | ||
393 | .enet1 = { | ||
394 | .force_speed_100 = 1, | ||
395 | .force_duplex_full = 1, | ||
396 | }, | ||
370 | }; | 397 | }; |
371 | 398 | ||
399 | |||
372 | static struct board_info __initdata board_DV201AMR = { | 400 | static struct board_info __initdata board_DV201AMR = { |
373 | .name = "DV201AMR", | 401 | .name = "DV201AMR", |
374 | .expected_cpu_id = 0x6348, | 402 | .expected_cpu_id = 0x6348, |
375 | 403 | ||
404 | .has_uart0 = 1, | ||
376 | .has_pci = 1, | 405 | .has_pci = 1, |
377 | .has_ohci0 = 1, | 406 | .has_ohci0 = 1, |
378 | 407 | ||
@@ -392,6 +421,7 @@ static struct board_info __initdata board_96348gw_a = { | |||
392 | .name = "96348GW-A", | 421 | .name = "96348GW-A", |
393 | .expected_cpu_id = 0x6348, | 422 | .expected_cpu_id = 0x6348, |
394 | 423 | ||
424 | .has_uart0 = 1, | ||
395 | .has_enet0 = 1, | 425 | .has_enet0 = 1, |
396 | .has_enet1 = 1, | 426 | .has_enet1 = 1, |
397 | .has_pci = 1, | 427 | .has_pci = 1, |
@@ -417,6 +447,7 @@ static struct board_info __initdata board_96358vw = { | |||
417 | .name = "96358VW", | 447 | .name = "96358VW", |
418 | .expected_cpu_id = 0x6358, | 448 | .expected_cpu_id = 0x6358, |
419 | 449 | ||
450 | .has_uart0 = 1, | ||
420 | .has_enet0 = 1, | 451 | .has_enet0 = 1, |
421 | .has_enet1 = 1, | 452 | .has_enet1 = 1, |
422 | .has_pci = 1, | 453 | .has_pci = 1, |
@@ -468,6 +499,7 @@ static struct board_info __initdata board_96358vw2 = { | |||
468 | .name = "96358VW2", | 499 | .name = "96358VW2", |
469 | .expected_cpu_id = 0x6358, | 500 | .expected_cpu_id = 0x6358, |
470 | 501 | ||
502 | .has_uart0 = 1, | ||
471 | .has_enet0 = 1, | 503 | .has_enet0 = 1, |
472 | .has_enet1 = 1, | 504 | .has_enet1 = 1, |
473 | .has_pci = 1, | 505 | .has_pci = 1, |
@@ -515,6 +547,7 @@ static struct board_info __initdata board_AGPFS0 = { | |||
515 | .name = "AGPF-S0", | 547 | .name = "AGPF-S0", |
516 | .expected_cpu_id = 0x6358, | 548 | .expected_cpu_id = 0x6358, |
517 | 549 | ||
550 | .has_uart0 = 1, | ||
518 | .has_enet0 = 1, | 551 | .has_enet0 = 1, |
519 | .has_enet1 = 1, | 552 | .has_enet1 = 1, |
520 | .has_pci = 1, | 553 | .has_pci = 1, |
@@ -532,6 +565,27 @@ static struct board_info __initdata board_AGPFS0 = { | |||
532 | .has_ohci0 = 1, | 565 | .has_ohci0 = 1, |
533 | .has_ehci0 = 1, | 566 | .has_ehci0 = 1, |
534 | }; | 567 | }; |
568 | |||
569 | static struct board_info __initdata board_DWVS0 = { | ||
570 | .name = "DWV-S0", | ||
571 | .expected_cpu_id = 0x6358, | ||
572 | |||
573 | .has_enet0 = 1, | ||
574 | .has_enet1 = 1, | ||
575 | .has_pci = 1, | ||
576 | |||
577 | .enet0 = { | ||
578 | .has_phy = 1, | ||
579 | .use_internal_phy = 1, | ||
580 | }, | ||
581 | |||
582 | .enet1 = { | ||
583 | .force_speed_100 = 1, | ||
584 | .force_duplex_full = 1, | ||
585 | }, | ||
586 | |||
587 | .has_ohci0 = 1, | ||
588 | }; | ||
535 | #endif | 589 | #endif |
536 | 590 | ||
537 | /* | 591 | /* |
@@ -553,16 +607,88 @@ static const struct board_info __initdata *bcm963xx_boards[] = { | |||
553 | &board_FAST2404, | 607 | &board_FAST2404, |
554 | &board_DV201AMR, | 608 | &board_DV201AMR, |
555 | &board_96348gw_a, | 609 | &board_96348gw_a, |
610 | &board_rta1025w_16, | ||
556 | #endif | 611 | #endif |
557 | 612 | ||
558 | #ifdef CONFIG_BCM63XX_CPU_6358 | 613 | #ifdef CONFIG_BCM63XX_CPU_6358 |
559 | &board_96358vw, | 614 | &board_96358vw, |
560 | &board_96358vw2, | 615 | &board_96358vw2, |
561 | &board_AGPFS0, | 616 | &board_AGPFS0, |
617 | &board_DWVS0, | ||
562 | #endif | 618 | #endif |
563 | }; | 619 | }; |
564 | 620 | ||
565 | /* | 621 | /* |
622 | * Register a sane SPROMv2 to make the on-board | ||
623 | * bcm4318 WLAN work | ||
624 | */ | ||
625 | #ifdef CONFIG_SSB_PCIHOST | ||
626 | static struct ssb_sprom bcm63xx_sprom = { | ||
627 | .revision = 0x02, | ||
628 | .board_rev = 0x17, | ||
629 | .country_code = 0x0, | ||
630 | .ant_available_bg = 0x3, | ||
631 | .pa0b0 = 0x15ae, | ||
632 | .pa0b1 = 0xfa85, | ||
633 | .pa0b2 = 0xfe8d, | ||
634 | .pa1b0 = 0xffff, | ||
635 | .pa1b1 = 0xffff, | ||
636 | .pa1b2 = 0xffff, | ||
637 | .gpio0 = 0xff, | ||
638 | .gpio1 = 0xff, | ||
639 | .gpio2 = 0xff, | ||
640 | .gpio3 = 0xff, | ||
641 | .maxpwr_bg = 0x004c, | ||
642 | .itssi_bg = 0x00, | ||
643 | .boardflags_lo = 0x2848, | ||
644 | .boardflags_hi = 0x0000, | ||
645 | }; | ||
646 | #endif | ||
647 | |||
648 | /* | ||
649 | * return board name for /proc/cpuinfo | ||
650 | */ | ||
651 | const char *board_get_name(void) | ||
652 | { | ||
653 | return board.name; | ||
654 | } | ||
655 | |||
656 | /* | ||
657 | * register & return a new board mac address | ||
658 | */ | ||
659 | static int board_get_mac_address(u8 *mac) | ||
660 | { | ||
661 | u8 *p; | ||
662 | int count; | ||
663 | |||
664 | if (mac_addr_used >= nvram.mac_addr_count) { | ||
665 | printk(KERN_ERR PFX "not enough mac address\n"); | ||
666 | return -ENODEV; | ||
667 | } | ||
668 | |||
669 | memcpy(mac, nvram.mac_addr_base, ETH_ALEN); | ||
670 | p = mac + ETH_ALEN - 1; | ||
671 | count = mac_addr_used; | ||
672 | |||
673 | while (count--) { | ||
674 | do { | ||
675 | (*p)++; | ||
676 | if (*p != 0) | ||
677 | break; | ||
678 | p--; | ||
679 | } while (p != mac); | ||
680 | } | ||
681 | |||
682 | if (p == mac) { | ||
683 | printk(KERN_ERR PFX "unable to fetch mac address\n"); | ||
684 | return -ENODEV; | ||
685 | } | ||
686 | |||
687 | mac_addr_used++; | ||
688 | return 0; | ||
689 | } | ||
690 | |||
691 | /* | ||
566 | * early init callback, read nvram data from flash and checksum it | 692 | * early init callback, read nvram data from flash and checksum it |
567 | */ | 693 | */ |
568 | void __init board_prom_init(void) | 694 | void __init board_prom_init(void) |
@@ -660,6 +786,17 @@ void __init board_prom_init(void) | |||
660 | } | 786 | } |
661 | 787 | ||
662 | bcm_gpio_writel(val, GPIO_MODE_REG); | 788 | bcm_gpio_writel(val, GPIO_MODE_REG); |
789 | |||
790 | /* Generate MAC address for WLAN and | ||
791 | * register our SPROM */ | ||
792 | #ifdef CONFIG_SSB_PCIHOST | ||
793 | if (!board_get_mac_address(bcm63xx_sprom.il0mac)) { | ||
794 | memcpy(bcm63xx_sprom.et0mac, bcm63xx_sprom.il0mac, ETH_ALEN); | ||
795 | memcpy(bcm63xx_sprom.et1mac, bcm63xx_sprom.il0mac, ETH_ALEN); | ||
796 | if (ssb_arch_set_fallback_sprom(&bcm63xx_sprom) < 0) | ||
797 | printk(KERN_ERR "failed to register fallback SPROM\n"); | ||
798 | } | ||
799 | #endif | ||
663 | } | 800 | } |
664 | 801 | ||
665 | /* | 802 | /* |
@@ -677,49 +814,6 @@ void __init board_setup(void) | |||
677 | panic("unexpected CPU for bcm963xx board"); | 814 | panic("unexpected CPU for bcm963xx board"); |
678 | } | 815 | } |
679 | 816 | ||
680 | /* | ||
681 | * return board name for /proc/cpuinfo | ||
682 | */ | ||
683 | const char *board_get_name(void) | ||
684 | { | ||
685 | return board.name; | ||
686 | } | ||
687 | |||
688 | /* | ||
689 | * register & return a new board mac address | ||
690 | */ | ||
691 | static int board_get_mac_address(u8 *mac) | ||
692 | { | ||
693 | u8 *p; | ||
694 | int count; | ||
695 | |||
696 | if (mac_addr_used >= nvram.mac_addr_count) { | ||
697 | printk(KERN_ERR PFX "not enough mac address\n"); | ||
698 | return -ENODEV; | ||
699 | } | ||
700 | |||
701 | memcpy(mac, nvram.mac_addr_base, ETH_ALEN); | ||
702 | p = mac + ETH_ALEN - 1; | ||
703 | count = mac_addr_used; | ||
704 | |||
705 | while (count--) { | ||
706 | do { | ||
707 | (*p)++; | ||
708 | if (*p != 0) | ||
709 | break; | ||
710 | p--; | ||
711 | } while (p != mac); | ||
712 | } | ||
713 | |||
714 | if (p == mac) { | ||
715 | printk(KERN_ERR PFX "unable to fetch mac address\n"); | ||
716 | return -ENODEV; | ||
717 | } | ||
718 | |||
719 | mac_addr_used++; | ||
720 | return 0; | ||
721 | } | ||
722 | |||
723 | static struct mtd_partition mtd_partitions[] = { | 817 | static struct mtd_partition mtd_partitions[] = { |
724 | { | 818 | { |
725 | .name = "cfe", | 819 | .name = "cfe", |
@@ -751,33 +845,6 @@ static struct platform_device mtd_dev = { | |||
751 | }, | 845 | }, |
752 | }; | 846 | }; |
753 | 847 | ||
754 | /* | ||
755 | * Register a sane SPROMv2 to make the on-board | ||
756 | * bcm4318 WLAN work | ||
757 | */ | ||
758 | #ifdef CONFIG_SSB_PCIHOST | ||
759 | static struct ssb_sprom bcm63xx_sprom = { | ||
760 | .revision = 0x02, | ||
761 | .board_rev = 0x17, | ||
762 | .country_code = 0x0, | ||
763 | .ant_available_bg = 0x3, | ||
764 | .pa0b0 = 0x15ae, | ||
765 | .pa0b1 = 0xfa85, | ||
766 | .pa0b2 = 0xfe8d, | ||
767 | .pa1b0 = 0xffff, | ||
768 | .pa1b1 = 0xffff, | ||
769 | .pa1b2 = 0xffff, | ||
770 | .gpio0 = 0xff, | ||
771 | .gpio1 = 0xff, | ||
772 | .gpio2 = 0xff, | ||
773 | .gpio3 = 0xff, | ||
774 | .maxpwr_bg = 0x004c, | ||
775 | .itssi_bg = 0x00, | ||
776 | .boardflags_lo = 0x2848, | ||
777 | .boardflags_hi = 0x0000, | ||
778 | }; | ||
779 | #endif | ||
780 | |||
781 | static struct gpio_led_platform_data bcm63xx_led_data; | 848 | static struct gpio_led_platform_data bcm63xx_led_data; |
782 | 849 | ||
783 | static struct platform_device bcm63xx_gpio_leds = { | 850 | static struct platform_device bcm63xx_gpio_leds = { |
@@ -793,6 +860,12 @@ int __init board_register_devices(void) | |||
793 | { | 860 | { |
794 | u32 val; | 861 | u32 val; |
795 | 862 | ||
863 | if (board.has_uart0) | ||
864 | bcm63xx_uart_register(0); | ||
865 | |||
866 | if (board.has_uart1) | ||
867 | bcm63xx_uart_register(1); | ||
868 | |||
796 | if (board.has_pccard) | 869 | if (board.has_pccard) |
797 | bcm63xx_pcmcia_register(); | 870 | bcm63xx_pcmcia_register(); |
798 | 871 | ||
@@ -807,17 +880,6 @@ int __init board_register_devices(void) | |||
807 | if (board.has_dsp) | 880 | if (board.has_dsp) |
808 | bcm63xx_dsp_register(&board.dsp); | 881 | bcm63xx_dsp_register(&board.dsp); |
809 | 882 | ||
810 | /* Generate MAC address for WLAN and | ||
811 | * register our SPROM */ | ||
812 | #ifdef CONFIG_SSB_PCIHOST | ||
813 | if (!board_get_mac_address(bcm63xx_sprom.il0mac)) { | ||
814 | memcpy(bcm63xx_sprom.et0mac, bcm63xx_sprom.il0mac, ETH_ALEN); | ||
815 | memcpy(bcm63xx_sprom.et1mac, bcm63xx_sprom.il0mac, ETH_ALEN); | ||
816 | if (ssb_arch_set_fallback_sprom(&bcm63xx_sprom) < 0) | ||
817 | printk(KERN_ERR "failed to register fallback SPROM\n"); | ||
818 | } | ||
819 | #endif | ||
820 | |||
821 | /* read base address of boot chip select (0) */ | 883 | /* read base address of boot chip select (0) */ |
822 | if (BCMCPU_IS_6345()) | 884 | if (BCMCPU_IS_6345()) |
823 | val = 0x1fc00000; | 885 | val = 0x1fc00000; |
@@ -837,4 +899,3 @@ int __init board_register_devices(void) | |||
837 | 899 | ||
838 | return 0; | 900 | return 0; |
839 | } | 901 | } |
840 | |||
diff --git a/arch/mips/bcm63xx/cpu.c b/arch/mips/bcm63xx/cpu.c index 70378bb5e3f9..cbb7caf86d77 100644 --- a/arch/mips/bcm63xx/cpu.c +++ b/arch/mips/bcm63xx/cpu.c | |||
@@ -36,6 +36,7 @@ static const unsigned long bcm96338_regs_base[] = { | |||
36 | [RSET_TIMER] = BCM_6338_TIMER_BASE, | 36 | [RSET_TIMER] = BCM_6338_TIMER_BASE, |
37 | [RSET_WDT] = BCM_6338_WDT_BASE, | 37 | [RSET_WDT] = BCM_6338_WDT_BASE, |
38 | [RSET_UART0] = BCM_6338_UART0_BASE, | 38 | [RSET_UART0] = BCM_6338_UART0_BASE, |
39 | [RSET_UART1] = BCM_6338_UART1_BASE, | ||
39 | [RSET_GPIO] = BCM_6338_GPIO_BASE, | 40 | [RSET_GPIO] = BCM_6338_GPIO_BASE, |
40 | [RSET_SPI] = BCM_6338_SPI_BASE, | 41 | [RSET_SPI] = BCM_6338_SPI_BASE, |
41 | [RSET_OHCI0] = BCM_6338_OHCI0_BASE, | 42 | [RSET_OHCI0] = BCM_6338_OHCI0_BASE, |
@@ -72,6 +73,7 @@ static const unsigned long bcm96345_regs_base[] = { | |||
72 | [RSET_TIMER] = BCM_6345_TIMER_BASE, | 73 | [RSET_TIMER] = BCM_6345_TIMER_BASE, |
73 | [RSET_WDT] = BCM_6345_WDT_BASE, | 74 | [RSET_WDT] = BCM_6345_WDT_BASE, |
74 | [RSET_UART0] = BCM_6345_UART0_BASE, | 75 | [RSET_UART0] = BCM_6345_UART0_BASE, |
76 | [RSET_UART1] = BCM_6345_UART1_BASE, | ||
75 | [RSET_GPIO] = BCM_6345_GPIO_BASE, | 77 | [RSET_GPIO] = BCM_6345_GPIO_BASE, |
76 | [RSET_SPI] = BCM_6345_SPI_BASE, | 78 | [RSET_SPI] = BCM_6345_SPI_BASE, |
77 | [RSET_UDC0] = BCM_6345_UDC0_BASE, | 79 | [RSET_UDC0] = BCM_6345_UDC0_BASE, |
@@ -109,6 +111,7 @@ static const unsigned long bcm96348_regs_base[] = { | |||
109 | [RSET_TIMER] = BCM_6348_TIMER_BASE, | 111 | [RSET_TIMER] = BCM_6348_TIMER_BASE, |
110 | [RSET_WDT] = BCM_6348_WDT_BASE, | 112 | [RSET_WDT] = BCM_6348_WDT_BASE, |
111 | [RSET_UART0] = BCM_6348_UART0_BASE, | 113 | [RSET_UART0] = BCM_6348_UART0_BASE, |
114 | [RSET_UART1] = BCM_6348_UART1_BASE, | ||
112 | [RSET_GPIO] = BCM_6348_GPIO_BASE, | 115 | [RSET_GPIO] = BCM_6348_GPIO_BASE, |
113 | [RSET_SPI] = BCM_6348_SPI_BASE, | 116 | [RSET_SPI] = BCM_6348_SPI_BASE, |
114 | [RSET_OHCI0] = BCM_6348_OHCI0_BASE, | 117 | [RSET_OHCI0] = BCM_6348_OHCI0_BASE, |
@@ -150,6 +153,7 @@ static const unsigned long bcm96358_regs_base[] = { | |||
150 | [RSET_TIMER] = BCM_6358_TIMER_BASE, | 153 | [RSET_TIMER] = BCM_6358_TIMER_BASE, |
151 | [RSET_WDT] = BCM_6358_WDT_BASE, | 154 | [RSET_WDT] = BCM_6358_WDT_BASE, |
152 | [RSET_UART0] = BCM_6358_UART0_BASE, | 155 | [RSET_UART0] = BCM_6358_UART0_BASE, |
156 | [RSET_UART1] = BCM_6358_UART1_BASE, | ||
153 | [RSET_GPIO] = BCM_6358_GPIO_BASE, | 157 | [RSET_GPIO] = BCM_6358_GPIO_BASE, |
154 | [RSET_SPI] = BCM_6358_SPI_BASE, | 158 | [RSET_SPI] = BCM_6358_SPI_BASE, |
155 | [RSET_OHCI0] = BCM_6358_OHCI0_BASE, | 159 | [RSET_OHCI0] = BCM_6358_OHCI0_BASE, |
@@ -170,6 +174,7 @@ static const unsigned long bcm96358_regs_base[] = { | |||
170 | static const int bcm96358_irqs[] = { | 174 | static const int bcm96358_irqs[] = { |
171 | [IRQ_TIMER] = BCM_6358_TIMER_IRQ, | 175 | [IRQ_TIMER] = BCM_6358_TIMER_IRQ, |
172 | [IRQ_UART0] = BCM_6358_UART0_IRQ, | 176 | [IRQ_UART0] = BCM_6358_UART0_IRQ, |
177 | [IRQ_UART1] = BCM_6358_UART1_IRQ, | ||
173 | [IRQ_DSL] = BCM_6358_DSL_IRQ, | 178 | [IRQ_DSL] = BCM_6358_DSL_IRQ, |
174 | [IRQ_ENET0] = BCM_6358_ENET0_IRQ, | 179 | [IRQ_ENET0] = BCM_6358_ENET0_IRQ, |
175 | [IRQ_ENET1] = BCM_6358_ENET1_IRQ, | 180 | [IRQ_ENET1] = BCM_6358_ENET1_IRQ, |
diff --git a/arch/mips/bcm63xx/dev-uart.c b/arch/mips/bcm63xx/dev-uart.c index b0519461ad9b..c2963da0253e 100644 --- a/arch/mips/bcm63xx/dev-uart.c +++ b/arch/mips/bcm63xx/dev-uart.c | |||
@@ -11,31 +11,65 @@ | |||
11 | #include <linux/platform_device.h> | 11 | #include <linux/platform_device.h> |
12 | #include <bcm63xx_cpu.h> | 12 | #include <bcm63xx_cpu.h> |
13 | 13 | ||
14 | static struct resource uart_resources[] = { | 14 | static struct resource uart0_resources[] = { |
15 | { | 15 | { |
16 | .start = -1, /* filled at runtime */ | 16 | /* start & end filled at runtime */ |
17 | .end = -1, /* filled at runtime */ | ||
18 | .flags = IORESOURCE_MEM, | 17 | .flags = IORESOURCE_MEM, |
19 | }, | 18 | }, |
20 | { | 19 | { |
21 | .start = -1, /* filled at runtime */ | 20 | /* start filled at runtime */ |
22 | .flags = IORESOURCE_IRQ, | 21 | .flags = IORESOURCE_IRQ, |
23 | }, | 22 | }, |
24 | }; | 23 | }; |
25 | 24 | ||
26 | static struct platform_device bcm63xx_uart_device = { | 25 | static struct resource uart1_resources[] = { |
27 | .name = "bcm63xx_uart", | 26 | { |
28 | .id = 0, | 27 | /* start & end filled at runtime */ |
29 | .num_resources = ARRAY_SIZE(uart_resources), | 28 | .flags = IORESOURCE_MEM, |
30 | .resource = uart_resources, | 29 | }, |
30 | { | ||
31 | /* start filled at runtime */ | ||
32 | .flags = IORESOURCE_IRQ, | ||
33 | }, | ||
34 | }; | ||
35 | |||
36 | static struct platform_device bcm63xx_uart_devices[] = { | ||
37 | { | ||
38 | .name = "bcm63xx_uart", | ||
39 | .id = 0, | ||
40 | .num_resources = ARRAY_SIZE(uart0_resources), | ||
41 | .resource = uart0_resources, | ||
42 | }, | ||
43 | |||
44 | { | ||
45 | .name = "bcm63xx_uart", | ||
46 | .id = 1, | ||
47 | .num_resources = ARRAY_SIZE(uart1_resources), | ||
48 | .resource = uart1_resources, | ||
49 | } | ||
31 | }; | 50 | }; |
32 | 51 | ||
33 | int __init bcm63xx_uart_register(void) | 52 | int __init bcm63xx_uart_register(unsigned int id) |
34 | { | 53 | { |
35 | uart_resources[0].start = bcm63xx_regset_address(RSET_UART0); | 54 | if (id >= ARRAY_SIZE(bcm63xx_uart_devices)) |
36 | uart_resources[0].end = uart_resources[0].start; | 55 | return -ENODEV; |
37 | uart_resources[0].end += RSET_UART_SIZE - 1; | 56 | |
38 | uart_resources[1].start = bcm63xx_get_irq_number(IRQ_UART0); | 57 | if (id == 1 && !BCMCPU_IS_6358()) |
39 | return platform_device_register(&bcm63xx_uart_device); | 58 | return -ENODEV; |
59 | |||
60 | if (id == 0) { | ||
61 | uart0_resources[0].start = bcm63xx_regset_address(RSET_UART0); | ||
62 | uart0_resources[0].end = uart0_resources[0].start + | ||
63 | RSET_UART_SIZE - 1; | ||
64 | uart0_resources[1].start = bcm63xx_get_irq_number(IRQ_UART0); | ||
65 | } | ||
66 | |||
67 | if (id == 1) { | ||
68 | uart1_resources[0].start = bcm63xx_regset_address(RSET_UART1); | ||
69 | uart1_resources[0].end = uart1_resources[0].start + | ||
70 | RSET_UART_SIZE - 1; | ||
71 | uart1_resources[1].start = bcm63xx_get_irq_number(IRQ_UART1); | ||
72 | } | ||
73 | |||
74 | return platform_device_register(&bcm63xx_uart_devices[id]); | ||
40 | } | 75 | } |
41 | arch_initcall(bcm63xx_uart_register); | ||
diff --git a/arch/mips/bcm63xx/gpio.c b/arch/mips/bcm63xx/gpio.c index 87ca39046334..315bc7f79ce1 100644 --- a/arch/mips/bcm63xx/gpio.c +++ b/arch/mips/bcm63xx/gpio.c | |||
@@ -125,10 +125,10 @@ static struct gpio_chip bcm63xx_gpio_chip = { | |||
125 | 125 | ||
126 | int __init bcm63xx_gpio_init(void) | 126 | int __init bcm63xx_gpio_init(void) |
127 | { | 127 | { |
128 | gpio_out_low = bcm_gpio_readl(GPIO_DATA_LO_REG); | ||
129 | gpio_out_high = bcm_gpio_readl(GPIO_DATA_HI_REG); | ||
128 | bcm63xx_gpio_chip.ngpio = bcm63xx_gpio_count(); | 130 | bcm63xx_gpio_chip.ngpio = bcm63xx_gpio_count(); |
129 | pr_info("registering %d GPIOs\n", bcm63xx_gpio_chip.ngpio); | 131 | pr_info("registering %d GPIOs\n", bcm63xx_gpio_chip.ngpio); |
130 | 132 | ||
131 | return gpiochip_add(&bcm63xx_gpio_chip); | 133 | return gpiochip_add(&bcm63xx_gpio_chip); |
132 | } | 134 | } |
133 | |||
134 | arch_initcall(bcm63xx_gpio_init); | ||
diff --git a/arch/mips/bcm63xx/prom.c b/arch/mips/bcm63xx/prom.c index fb284fbc5853..be252efa0757 100644 --- a/arch/mips/bcm63xx/prom.c +++ b/arch/mips/bcm63xx/prom.c | |||
@@ -40,9 +40,6 @@ void __init prom_init(void) | |||
40 | reg &= ~mask; | 40 | reg &= ~mask; |
41 | bcm_perf_writel(reg, PERF_CKCTL_REG); | 41 | bcm_perf_writel(reg, PERF_CKCTL_REG); |
42 | 42 | ||
43 | /* assign command line from kernel config */ | ||
44 | strcpy(arcs_cmdline, CONFIG_CMDLINE); | ||
45 | |||
46 | /* register gpiochip */ | 43 | /* register gpiochip */ |
47 | bcm63xx_gpio_init(); | 44 | bcm63xx_gpio_init(); |
48 | 45 | ||
diff --git a/arch/mips/bcm63xx/timer.c b/arch/mips/bcm63xx/timer.c index ba522bdcde4b..5f1135981568 100644 --- a/arch/mips/bcm63xx/timer.c +++ b/arch/mips/bcm63xx/timer.c | |||
@@ -17,8 +17,8 @@ | |||
17 | #include <bcm63xx_timer.h> | 17 | #include <bcm63xx_timer.h> |
18 | #include <bcm63xx_regs.h> | 18 | #include <bcm63xx_regs.h> |
19 | 19 | ||
20 | static DEFINE_SPINLOCK(timer_reg_lock); | 20 | static DEFINE_RAW_SPINLOCK(timer_reg_lock); |
21 | static DEFINE_SPINLOCK(timer_data_lock); | 21 | static DEFINE_RAW_SPINLOCK(timer_data_lock); |
22 | static struct clk *periph_clk; | 22 | static struct clk *periph_clk; |
23 | 23 | ||
24 | static struct timer_data { | 24 | static struct timer_data { |
@@ -31,23 +31,23 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id) | |||
31 | u32 stat; | 31 | u32 stat; |
32 | int i; | 32 | int i; |
33 | 33 | ||
34 | spin_lock(&timer_reg_lock); | 34 | raw_spin_lock(&timer_reg_lock); |
35 | stat = bcm_timer_readl(TIMER_IRQSTAT_REG); | 35 | stat = bcm_timer_readl(TIMER_IRQSTAT_REG); |
36 | bcm_timer_writel(stat, TIMER_IRQSTAT_REG); | 36 | bcm_timer_writel(stat, TIMER_IRQSTAT_REG); |
37 | spin_unlock(&timer_reg_lock); | 37 | raw_spin_unlock(&timer_reg_lock); |
38 | 38 | ||
39 | for (i = 0; i < BCM63XX_TIMER_COUNT; i++) { | 39 | for (i = 0; i < BCM63XX_TIMER_COUNT; i++) { |
40 | if (!(stat & TIMER_IRQSTAT_TIMER_CAUSE(i))) | 40 | if (!(stat & TIMER_IRQSTAT_TIMER_CAUSE(i))) |
41 | continue; | 41 | continue; |
42 | 42 | ||
43 | spin_lock(&timer_data_lock); | 43 | raw_spin_lock(&timer_data_lock); |
44 | if (!timer_data[i].cb) { | 44 | if (!timer_data[i].cb) { |
45 | spin_unlock(&timer_data_lock); | 45 | raw_spin_unlock(&timer_data_lock); |
46 | continue; | 46 | continue; |
47 | } | 47 | } |
48 | 48 | ||
49 | timer_data[i].cb(timer_data[i].data); | 49 | timer_data[i].cb(timer_data[i].data); |
50 | spin_unlock(&timer_data_lock); | 50 | raw_spin_unlock(&timer_data_lock); |
51 | } | 51 | } |
52 | 52 | ||
53 | return IRQ_HANDLED; | 53 | return IRQ_HANDLED; |
@@ -61,7 +61,7 @@ int bcm63xx_timer_enable(int id) | |||
61 | if (id >= BCM63XX_TIMER_COUNT) | 61 | if (id >= BCM63XX_TIMER_COUNT) |
62 | return -EINVAL; | 62 | return -EINVAL; |
63 | 63 | ||
64 | spin_lock_irqsave(&timer_reg_lock, flags); | 64 | raw_spin_lock_irqsave(&timer_reg_lock, flags); |
65 | 65 | ||
66 | reg = bcm_timer_readl(TIMER_CTLx_REG(id)); | 66 | reg = bcm_timer_readl(TIMER_CTLx_REG(id)); |
67 | reg |= TIMER_CTL_ENABLE_MASK; | 67 | reg |= TIMER_CTL_ENABLE_MASK; |
@@ -71,7 +71,7 @@ int bcm63xx_timer_enable(int id) | |||
71 | reg |= TIMER_IRQSTAT_TIMER_IR_EN(id); | 71 | reg |= TIMER_IRQSTAT_TIMER_IR_EN(id); |
72 | bcm_timer_writel(reg, TIMER_IRQSTAT_REG); | 72 | bcm_timer_writel(reg, TIMER_IRQSTAT_REG); |
73 | 73 | ||
74 | spin_unlock_irqrestore(&timer_reg_lock, flags); | 74 | raw_spin_unlock_irqrestore(&timer_reg_lock, flags); |
75 | return 0; | 75 | return 0; |
76 | } | 76 | } |
77 | 77 | ||
@@ -85,7 +85,7 @@ int bcm63xx_timer_disable(int id) | |||
85 | if (id >= BCM63XX_TIMER_COUNT) | 85 | if (id >= BCM63XX_TIMER_COUNT) |
86 | return -EINVAL; | 86 | return -EINVAL; |
87 | 87 | ||
88 | spin_lock_irqsave(&timer_reg_lock, flags); | 88 | raw_spin_lock_irqsave(&timer_reg_lock, flags); |
89 | 89 | ||
90 | reg = bcm_timer_readl(TIMER_CTLx_REG(id)); | 90 | reg = bcm_timer_readl(TIMER_CTLx_REG(id)); |
91 | reg &= ~TIMER_CTL_ENABLE_MASK; | 91 | reg &= ~TIMER_CTL_ENABLE_MASK; |
@@ -95,7 +95,7 @@ int bcm63xx_timer_disable(int id) | |||
95 | reg &= ~TIMER_IRQSTAT_TIMER_IR_EN(id); | 95 | reg &= ~TIMER_IRQSTAT_TIMER_IR_EN(id); |
96 | bcm_timer_writel(reg, TIMER_IRQSTAT_REG); | 96 | bcm_timer_writel(reg, TIMER_IRQSTAT_REG); |
97 | 97 | ||
98 | spin_unlock_irqrestore(&timer_reg_lock, flags); | 98 | raw_spin_unlock_irqrestore(&timer_reg_lock, flags); |
99 | return 0; | 99 | return 0; |
100 | } | 100 | } |
101 | 101 | ||
@@ -110,7 +110,7 @@ int bcm63xx_timer_register(int id, void (*callback)(void *data), void *data) | |||
110 | return -EINVAL; | 110 | return -EINVAL; |
111 | 111 | ||
112 | ret = 0; | 112 | ret = 0; |
113 | spin_lock_irqsave(&timer_data_lock, flags); | 113 | raw_spin_lock_irqsave(&timer_data_lock, flags); |
114 | if (timer_data[id].cb) { | 114 | if (timer_data[id].cb) { |
115 | ret = -EBUSY; | 115 | ret = -EBUSY; |
116 | goto out; | 116 | goto out; |
@@ -120,7 +120,7 @@ int bcm63xx_timer_register(int id, void (*callback)(void *data), void *data) | |||
120 | timer_data[id].data = data; | 120 | timer_data[id].data = data; |
121 | 121 | ||
122 | out: | 122 | out: |
123 | spin_unlock_irqrestore(&timer_data_lock, flags); | 123 | raw_spin_unlock_irqrestore(&timer_data_lock, flags); |
124 | return ret; | 124 | return ret; |
125 | } | 125 | } |
126 | 126 | ||
@@ -133,9 +133,9 @@ void bcm63xx_timer_unregister(int id) | |||
133 | if (id >= BCM63XX_TIMER_COUNT) | 133 | if (id >= BCM63XX_TIMER_COUNT) |
134 | return; | 134 | return; |
135 | 135 | ||
136 | spin_lock_irqsave(&timer_data_lock, flags); | 136 | raw_spin_lock_irqsave(&timer_data_lock, flags); |
137 | timer_data[id].cb = NULL; | 137 | timer_data[id].cb = NULL; |
138 | spin_unlock_irqrestore(&timer_data_lock, flags); | 138 | raw_spin_unlock_irqrestore(&timer_data_lock, flags); |
139 | } | 139 | } |
140 | 140 | ||
141 | EXPORT_SYMBOL(bcm63xx_timer_unregister); | 141 | EXPORT_SYMBOL(bcm63xx_timer_unregister); |
@@ -159,7 +159,7 @@ int bcm63xx_timer_set(int id, int monotonic, unsigned int countdown_us) | |||
159 | if (countdown & ~TIMER_CTL_COUNTDOWN_MASK) | 159 | if (countdown & ~TIMER_CTL_COUNTDOWN_MASK) |
160 | return -EINVAL; | 160 | return -EINVAL; |
161 | 161 | ||
162 | spin_lock_irqsave(&timer_reg_lock, flags); | 162 | raw_spin_lock_irqsave(&timer_reg_lock, flags); |
163 | reg = bcm_timer_readl(TIMER_CTLx_REG(id)); | 163 | reg = bcm_timer_readl(TIMER_CTLx_REG(id)); |
164 | 164 | ||
165 | if (monotonic) | 165 | if (monotonic) |
@@ -171,7 +171,7 @@ int bcm63xx_timer_set(int id, int monotonic, unsigned int countdown_us) | |||
171 | reg |= countdown; | 171 | reg |= countdown; |
172 | bcm_timer_writel(reg, TIMER_CTLx_REG(id)); | 172 | bcm_timer_writel(reg, TIMER_CTLx_REG(id)); |
173 | 173 | ||
174 | spin_unlock_irqrestore(&timer_reg_lock, flags); | 174 | raw_spin_unlock_irqrestore(&timer_reg_lock, flags); |
175 | return 0; | 175 | return 0; |
176 | } | 176 | } |
177 | 177 | ||
diff --git a/arch/mips/boot/.gitignore b/arch/mips/boot/.gitignore index ba63401c6e10..4667a5f9280b 100644 --- a/arch/mips/boot/.gitignore +++ b/arch/mips/boot/.gitignore | |||
@@ -1,4 +1,5 @@ | |||
1 | mkboot | 1 | mkboot |
2 | elf2ecoff | 2 | elf2ecoff |
3 | vmlinux.* | ||
3 | zImage | 4 | zImage |
4 | zImage.tmp | 5 | zImage.tmp |
diff --git a/arch/mips/boot/Makefile b/arch/mips/boot/Makefile index 2a209d74f0b4..e39a08edcaaa 100644 --- a/arch/mips/boot/Makefile +++ b/arch/mips/boot/Makefile | |||
@@ -25,10 +25,10 @@ strip-flags = $(addprefix --remove-section=,$(drop-sections)) | |||
25 | 25 | ||
26 | VMLINUX = vmlinux | 26 | VMLINUX = vmlinux |
27 | 27 | ||
28 | all: vmlinux.ecoff vmlinux.srec addinitrd | 28 | all: vmlinux.ecoff vmlinux.srec |
29 | 29 | ||
30 | vmlinux.ecoff: $(obj)/elf2ecoff $(VMLINUX) | 30 | vmlinux.ecoff: $(obj)/elf2ecoff $(VMLINUX) |
31 | $(obj)/elf2ecoff $(VMLINUX) vmlinux.ecoff $(E2EFLAGS) | 31 | $(obj)/elf2ecoff $(VMLINUX) $(obj)/vmlinux.ecoff $(E2EFLAGS) |
32 | 32 | ||
33 | $(obj)/elf2ecoff: $(obj)/elf2ecoff.c | 33 | $(obj)/elf2ecoff: $(obj)/elf2ecoff.c |
34 | $(HOSTCC) -o $@ $^ | 34 | $(HOSTCC) -o $@ $^ |
@@ -39,11 +39,7 @@ vmlinux.bin: $(VMLINUX) | |||
39 | vmlinux.srec: $(VMLINUX) | 39 | vmlinux.srec: $(VMLINUX) |
40 | $(OBJCOPY) -S -O srec $(strip-flags) $(VMLINUX) $(obj)/vmlinux.srec | 40 | $(OBJCOPY) -S -O srec $(strip-flags) $(VMLINUX) $(obj)/vmlinux.srec |
41 | 41 | ||
42 | $(obj)/addinitrd: $(obj)/addinitrd.c | 42 | clean-files += elf2ecoff \ |
43 | $(HOSTCC) -o $@ $^ | ||
44 | |||
45 | clean-files += addinitrd \ | ||
46 | elf2ecoff \ | ||
47 | vmlinux.bin \ | 43 | vmlinux.bin \ |
48 | vmlinux.ecoff \ | 44 | vmlinux.ecoff \ |
49 | vmlinux.srec | 45 | vmlinux.srec |
diff --git a/arch/mips/boot/addinitrd.c b/arch/mips/boot/addinitrd.c deleted file mode 100644 index b5b3febc10cc..000000000000 --- a/arch/mips/boot/addinitrd.c +++ /dev/null | |||
@@ -1,131 +0,0 @@ | |||
1 | /* | ||
2 | * addinitrd - program to add a initrd image to an ecoff kernel | ||
3 | * | ||
4 | * (C) 1999 Thomas Bogendoerfer | ||
5 | * minor modifications, cleanup: Guido Guenther <agx@sigxcpu.org> | ||
6 | * further cleanup: Maciej W. Rozycki | ||
7 | */ | ||
8 | |||
9 | #include <sys/types.h> | ||
10 | #include <sys/stat.h> | ||
11 | #include <fcntl.h> | ||
12 | #include <unistd.h> | ||
13 | #include <stdio.h> | ||
14 | #include <netinet/in.h> | ||
15 | |||
16 | #include "ecoff.h" | ||
17 | |||
18 | #define MIPS_PAGE_SIZE 4096 | ||
19 | #define MIPS_PAGE_MASK (MIPS_PAGE_SIZE-1) | ||
20 | |||
21 | #define swab16(x) \ | ||
22 | ((unsigned short)( \ | ||
23 | (((unsigned short)(x) & (unsigned short)0x00ffU) << 8) | \ | ||
24 | (((unsigned short)(x) & (unsigned short)0xff00U) >> 8) )) | ||
25 | |||
26 | #define swab32(x) \ | ||
27 | ((unsigned int)( \ | ||
28 | (((unsigned int)(x) & (unsigned int)0x000000ffUL) << 24) | \ | ||
29 | (((unsigned int)(x) & (unsigned int)0x0000ff00UL) << 8) | \ | ||
30 | (((unsigned int)(x) & (unsigned int)0x00ff0000UL) >> 8) | \ | ||
31 | (((unsigned int)(x) & (unsigned int)0xff000000UL) >> 24) )) | ||
32 | |||
33 | #define SWAB(a) (swab ? swab32(a) : (a)) | ||
34 | |||
35 | void die(char *s) | ||
36 | { | ||
37 | perror(s); | ||
38 | exit(1); | ||
39 | } | ||
40 | |||
41 | int main(int argc, char *argv[]) | ||
42 | { | ||
43 | int fd_vmlinux, fd_initrd, fd_outfile; | ||
44 | FILHDR efile; | ||
45 | AOUTHDR eaout; | ||
46 | SCNHDR esecs[3]; | ||
47 | struct stat st; | ||
48 | char buf[1024]; | ||
49 | unsigned long loadaddr; | ||
50 | unsigned long initrd_header[2]; | ||
51 | int i, cnt; | ||
52 | int swab = 0; | ||
53 | |||
54 | if (argc != 4) { | ||
55 | printf("Usage: %s <vmlinux> <initrd> <outfile>\n", argv[0]); | ||
56 | exit(1); | ||
57 | } | ||
58 | |||
59 | if ((fd_vmlinux = open (argv[1], O_RDONLY)) < 0) | ||
60 | die("open vmlinux"); | ||
61 | if (read (fd_vmlinux, &efile, sizeof efile) != sizeof efile) | ||
62 | die("read file header"); | ||
63 | if (read (fd_vmlinux, &eaout, sizeof eaout) != sizeof eaout) | ||
64 | die("read aout header"); | ||
65 | if (read (fd_vmlinux, esecs, sizeof esecs) != sizeof esecs) | ||
66 | die("read section headers"); | ||
67 | /* | ||
68 | * check whether the file is good for us | ||
69 | */ | ||
70 | /* TBD */ | ||
71 | |||
72 | /* | ||
73 | * check, if we have to swab words | ||
74 | */ | ||
75 | if (ntohs(0xaa55) == 0xaa55) { | ||
76 | if (efile.f_magic == swab16(MIPSELMAGIC)) | ||
77 | swab = 1; | ||
78 | } else { | ||
79 | if (efile.f_magic == swab16(MIPSEBMAGIC)) | ||
80 | swab = 1; | ||
81 | } | ||
82 | |||
83 | /* make sure we have an empty data segment for the initrd */ | ||
84 | if (eaout.dsize || esecs[1].s_size) { | ||
85 | fprintf(stderr, "Data segment not empty. Giving up!\n"); | ||
86 | exit(1); | ||
87 | } | ||
88 | if ((fd_initrd = open (argv[2], O_RDONLY)) < 0) | ||
89 | die("open initrd"); | ||
90 | if (fstat (fd_initrd, &st) < 0) | ||
91 | die("fstat initrd"); | ||
92 | loadaddr = ((SWAB(esecs[2].s_vaddr) + SWAB(esecs[2].s_size) | ||
93 | + MIPS_PAGE_SIZE-1) & ~MIPS_PAGE_MASK) - 8; | ||
94 | if (loadaddr < (SWAB(esecs[2].s_vaddr) + SWAB(esecs[2].s_size))) | ||
95 | loadaddr += MIPS_PAGE_SIZE; | ||
96 | initrd_header[0] = SWAB(0x494E5244); | ||
97 | initrd_header[1] = SWAB(st.st_size); | ||
98 | eaout.dsize = esecs[1].s_size = initrd_header[1] = SWAB(st.st_size+8); | ||
99 | eaout.data_start = esecs[1].s_vaddr = esecs[1].s_paddr = SWAB(loadaddr); | ||
100 | |||
101 | if ((fd_outfile = open (argv[3], O_RDWR|O_CREAT|O_TRUNC, 0666)) < 0) | ||
102 | die("open outfile"); | ||
103 | if (write (fd_outfile, &efile, sizeof efile) != sizeof efile) | ||
104 | die("write file header"); | ||
105 | if (write (fd_outfile, &eaout, sizeof eaout) != sizeof eaout) | ||
106 | die("write aout header"); | ||
107 | if (write (fd_outfile, esecs, sizeof esecs) != sizeof esecs) | ||
108 | die("write section headers"); | ||
109 | /* skip padding */ | ||
110 | if(lseek(fd_vmlinux, SWAB(esecs[0].s_scnptr), SEEK_SET) == (off_t)-1) | ||
111 | die("lseek vmlinux"); | ||
112 | if(lseek(fd_outfile, SWAB(esecs[0].s_scnptr), SEEK_SET) == (off_t)-1) | ||
113 | die("lseek outfile"); | ||
114 | /* copy text segment */ | ||
115 | cnt = SWAB(eaout.tsize); | ||
116 | while (cnt) { | ||
117 | if ((i = read (fd_vmlinux, buf, sizeof buf)) <= 0) | ||
118 | die("read vmlinux"); | ||
119 | if (write (fd_outfile, buf, i) != i) | ||
120 | die("write vmlinux"); | ||
121 | cnt -= i; | ||
122 | } | ||
123 | if (write (fd_outfile, initrd_header, sizeof initrd_header) != sizeof initrd_header) | ||
124 | die("write initrd header"); | ||
125 | while ((i = read (fd_initrd, buf, sizeof buf)) > 0) | ||
126 | if (write (fd_outfile, buf, i) != i) | ||
127 | die("write initrd"); | ||
128 | close(fd_vmlinux); | ||
129 | close(fd_initrd); | ||
130 | return 0; | ||
131 | } | ||
diff --git a/arch/mips/boot/compressed/Makefile b/arch/mips/boot/compressed/Makefile new file mode 100644 index 000000000000..790ddd397620 --- /dev/null +++ b/arch/mips/boot/compressed/Makefile | |||
@@ -0,0 +1,105 @@ | |||
1 | # | ||
2 | # This file is subject to the terms and conditions of the GNU General Public | ||
3 | # License. | ||
4 | # | ||
5 | # Adapted for MIPS Pete Popov, Dan Malek | ||
6 | # | ||
7 | # Copyright (C) 1994 by Linus Torvalds | ||
8 | # Adapted for PowerPC by Gary Thomas | ||
9 | # modified by Cort (cort@cs.nmt.edu) | ||
10 | # | ||
11 | # Copyright (C) 2009 Lemote Inc. & DSLab, Lanzhou University | ||
12 | # Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
13 | # | ||
14 | |||
15 | # compressed kernel load addr: VMLINUZ_LOAD_ADDRESS > VMLINUX_LOAD_ADDRESS + VMLINUX_SIZE | ||
16 | VMLINUX_SIZE := $(shell wc -c $(objtree)/$(KBUILD_IMAGE) 2>/dev/null | cut -d' ' -f1) | ||
17 | VMLINUX_SIZE := $(shell [ -n "$(VMLINUX_SIZE)" ] && echo -n $$(($(VMLINUX_SIZE) + (65536 - $(VMLINUX_SIZE) % 65536)))) | ||
18 | # VMLINUZ_LOAD_ADDRESS = concat "high32 of VMLINUX_LOAD_ADDRESS" and "(low32 of VMLINUX_LOAD_ADDRESS) + VMLINUX_SIZE" | ||
19 | HIGH32 := $(shell A=$(VMLINUX_LOAD_ADDRESS); [ $${\#A} -gt 10 ] && expr substr "$(VMLINUX_LOAD_ADDRESS)" 3 $$(($${\#A} - 10))) | ||
20 | LOW32 := $(shell [ -n "$(HIGH32)" ] && A=11 || A=3; expr substr "$(VMLINUX_LOAD_ADDRESS)" $${A} 8) | ||
21 | VMLINUZ_LOAD_ADDRESS := 0x$(shell [ -n "$(VMLINUX_SIZE)" -a -n "$(LOW32)" ] && printf "$(HIGH32)%08x" $$(($(VMLINUX_SIZE) + 0x$(LOW32)))) | ||
22 | |||
23 | # set the default size of the mallocing area for decompressing | ||
24 | BOOT_HEAP_SIZE := 0x400000 | ||
25 | |||
26 | # Disable Function Tracer | ||
27 | KBUILD_CFLAGS := $(shell echo $(KBUILD_CFLAGS) | sed -e "s/-pg//") | ||
28 | |||
29 | KBUILD_CFLAGS := $(LINUXINCLUDE) $(KBUILD_CFLAGS) -D__KERNEL__ \ | ||
30 | -DBOOT_HEAP_SIZE=$(BOOT_HEAP_SIZE) -D"VMLINUX_LOAD_ADDRESS_ULL=$(VMLINUX_LOAD_ADDRESS)ull" | ||
31 | |||
32 | KBUILD_AFLAGS := $(LINUXINCLUDE) $(KBUILD_AFLAGS) -D__ASSEMBLY__ \ | ||
33 | -DBOOT_HEAP_SIZE=$(BOOT_HEAP_SIZE) \ | ||
34 | -DKERNEL_ENTRY=0x$(shell $(NM) $(objtree)/$(KBUILD_IMAGE) 2>/dev/null | grep " kernel_entry" | cut -f1 -d \ ) | ||
35 | |||
36 | obj-y := $(obj)/head.o $(obj)/decompress.o $(obj)/dbg.o | ||
37 | |||
38 | ifdef CONFIG_DEBUG_ZBOOT | ||
39 | obj-$(CONFIG_SYS_SUPPORTS_ZBOOT_UART16550) += $(obj)/uart-16550.o | ||
40 | obj-$(CONFIG_MACH_ALCHEMY) += $(obj)/uart-alchemy.o | ||
41 | endif | ||
42 | |||
43 | OBJCOPYFLAGS_vmlinux.bin := $(OBJCOPYFLAGS) -O binary -R .comment -S | ||
44 | $(obj)/vmlinux.bin: $(KBUILD_IMAGE) | ||
45 | $(call if_changed,objcopy) | ||
46 | |||
47 | suffix_$(CONFIG_KERNEL_GZIP) = gz | ||
48 | suffix_$(CONFIG_KERNEL_BZIP2) = bz2 | ||
49 | suffix_$(CONFIG_KERNEL_LZMA) = lzma | ||
50 | suffix_$(CONFIG_KERNEL_LZO) = lzo | ||
51 | tool_$(CONFIG_KERNEL_GZIP) = gzip | ||
52 | tool_$(CONFIG_KERNEL_BZIP2) = bzip2 | ||
53 | tool_$(CONFIG_KERNEL_LZMA) = lzma | ||
54 | tool_$(CONFIG_KERNEL_LZO) = lzo | ||
55 | $(obj)/vmlinux.$(suffix_y): $(obj)/vmlinux.bin | ||
56 | $(call if_changed,$(tool_y)) | ||
57 | |||
58 | $(obj)/piggy.o: $(obj)/vmlinux.$(suffix_y) $(obj)/dummy.o | ||
59 | $(Q)$(OBJCOPY) $(OBJCOPYFLAGS) \ | ||
60 | --add-section=.image=$< \ | ||
61 | --set-section-flags=.image=contents,alloc,load,readonly,data \ | ||
62 | $(obj)/dummy.o $@ | ||
63 | |||
64 | LDFLAGS_vmlinuz := $(LDFLAGS) -Ttext $(VMLINUZ_LOAD_ADDRESS) -T | ||
65 | vmlinuz: $(src)/ld.script $(obj-y) $(obj)/piggy.o | ||
66 | $(call if_changed,ld) | ||
67 | $(Q)$(OBJCOPY) $(OBJCOPYFLAGS) $@ | ||
68 | |||
69 | # | ||
70 | # Some DECstations need all possible sections of an ECOFF executable | ||
71 | # | ||
72 | ifdef CONFIG_MACH_DECSTATION | ||
73 | E2EFLAGS = -a | ||
74 | else | ||
75 | E2EFLAGS = | ||
76 | endif | ||
77 | |||
78 | # elf2ecoff can only handle 32bit image | ||
79 | |||
80 | ifdef CONFIG_32BIT | ||
81 | VMLINUZ = vmlinuz | ||
82 | else | ||
83 | VMLINUZ = vmlinuz.32 | ||
84 | endif | ||
85 | |||
86 | vmlinuz.32: vmlinuz | ||
87 | $(Q)$(OBJCOPY) -O $(32bit-bfd) $(OBJCOPYFLAGS) $< $@ | ||
88 | |||
89 | vmlinuz.ecoff: $(obj)/../elf2ecoff $(VMLINUZ) | ||
90 | $(Q)$(obj)/../elf2ecoff $(VMLINUZ) vmlinuz.ecoff $(E2EFLAGS) | ||
91 | |||
92 | $(obj)/../elf2ecoff: $(src)/../elf2ecoff.c | ||
93 | $(Q)$(HOSTCC) -o $@ $^ | ||
94 | |||
95 | OBJCOPYFLAGS_vmlinuz.bin := $(OBJCOPYFLAGS) -O binary | ||
96 | vmlinuz.bin: vmlinuz | ||
97 | $(call if_changed,objcopy) | ||
98 | |||
99 | OBJCOPYFLAGS_vmlinuz.srec := $(OBJCOPYFLAGS) -S -O srec | ||
100 | vmlinuz.srec: vmlinuz | ||
101 | $(call if_changed,objcopy) | ||
102 | |||
103 | clean: | ||
104 | clean-files += *.o \ | ||
105 | vmlinu* | ||
diff --git a/arch/mips/boot/compressed/dbg.c b/arch/mips/boot/compressed/dbg.c new file mode 100644 index 000000000000..134a6162e394 --- /dev/null +++ b/arch/mips/boot/compressed/dbg.c | |||
@@ -0,0 +1,37 @@ | |||
1 | /* | ||
2 | * MIPS-specific debug support for pre-boot environment | ||
3 | * | ||
4 | * NOTE: putc() is board specific, if your board have a 16550 compatible uart, | ||
5 | * please select SYS_SUPPORTS_ZBOOT_UART16550 for your machine. othewise, you | ||
6 | * need to implement your own putc(). | ||
7 | */ | ||
8 | #include <linux/compiler.h> | ||
9 | #include <linux/init.h> | ||
10 | #include <linux/types.h> | ||
11 | |||
12 | void __weak putc(char c) | ||
13 | { | ||
14 | } | ||
15 | |||
16 | void puts(const char *s) | ||
17 | { | ||
18 | char c; | ||
19 | while ((c = *s++) != '\0') { | ||
20 | putc(c); | ||
21 | if (c == '\n') | ||
22 | putc('\r'); | ||
23 | } | ||
24 | } | ||
25 | |||
26 | void puthex(unsigned long long val) | ||
27 | { | ||
28 | |||
29 | unsigned char buf[10]; | ||
30 | int i; | ||
31 | for (i = 7; i >= 0; i--) { | ||
32 | buf[i] = "0123456789ABCDEF"[val & 0x0F]; | ||
33 | val >>= 4; | ||
34 | } | ||
35 | buf[8] = '\0'; | ||
36 | puts(buf); | ||
37 | } | ||
diff --git a/arch/mips/boot/compressed/decompress.c b/arch/mips/boot/compressed/decompress.c new file mode 100644 index 000000000000..5db43c58b1bf --- /dev/null +++ b/arch/mips/boot/compressed/decompress.c | |||
@@ -0,0 +1,120 @@ | |||
1 | /* | ||
2 | * Misc. bootloader code for many machines. | ||
3 | * | ||
4 | * Copyright 2001 MontaVista Software Inc. | ||
5 | * Author: Matt Porter <mporter@mvista.com> Derived from | ||
6 | * arch/ppc/boot/prep/misc.c | ||
7 | * | ||
8 | * Copyright (C) 2009 Lemote, Inc. | ||
9 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
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 as published by the | ||
13 | * Free Software Foundation; either version 2 of the License, or (at your | ||
14 | * option) any later version. | ||
15 | */ | ||
16 | |||
17 | #include <linux/types.h> | ||
18 | #include <linux/kernel.h> | ||
19 | |||
20 | #include <asm/addrspace.h> | ||
21 | |||
22 | /* These two variables specify the free mem region | ||
23 | * that can be used for temporary malloc area | ||
24 | */ | ||
25 | unsigned long free_mem_ptr; | ||
26 | unsigned long free_mem_end_ptr; | ||
27 | char *zimage_start; | ||
28 | |||
29 | /* The linker tells us where the image is. */ | ||
30 | extern unsigned char __image_begin, __image_end; | ||
31 | |||
32 | /* debug interfaces */ | ||
33 | extern void puts(const char *s); | ||
34 | extern void puthex(unsigned long long val); | ||
35 | |||
36 | void error(char *x) | ||
37 | { | ||
38 | puts("\n\n"); | ||
39 | puts(x); | ||
40 | puts("\n\n -- System halted"); | ||
41 | |||
42 | while (1) | ||
43 | ; /* Halt */ | ||
44 | } | ||
45 | |||
46 | /* activate the code for pre-boot environment */ | ||
47 | #define STATIC static | ||
48 | |||
49 | #ifdef CONFIG_KERNEL_GZIP | ||
50 | void *memcpy(void *dest, const void *src, size_t n) | ||
51 | { | ||
52 | int i; | ||
53 | const char *s = src; | ||
54 | char *d = dest; | ||
55 | |||
56 | for (i = 0; i < n; i++) | ||
57 | d[i] = s[i]; | ||
58 | return dest; | ||
59 | } | ||
60 | #include "../../../../lib/decompress_inflate.c" | ||
61 | #endif | ||
62 | |||
63 | #ifdef CONFIG_KERNEL_BZIP2 | ||
64 | void *memset(void *s, int c, size_t n) | ||
65 | { | ||
66 | int i; | ||
67 | char *ss = s; | ||
68 | |||
69 | for (i = 0; i < n; i++) | ||
70 | ss[i] = c; | ||
71 | return s; | ||
72 | } | ||
73 | #include "../../../../lib/decompress_bunzip2.c" | ||
74 | #endif | ||
75 | |||
76 | #ifdef CONFIG_KERNEL_LZMA | ||
77 | #include "../../../../lib/decompress_unlzma.c" | ||
78 | #endif | ||
79 | |||
80 | #ifdef CONFIG_KERNEL_LZO | ||
81 | #include "../../../../lib/decompress_unlzo.c" | ||
82 | #endif | ||
83 | |||
84 | void decompress_kernel(unsigned long boot_heap_start) | ||
85 | { | ||
86 | int zimage_size; | ||
87 | |||
88 | /* | ||
89 | * We link ourself to an arbitrary low address. When we run, we | ||
90 | * relocate outself to that address. __image_beign points to | ||
91 | * the part of the image where the zImage is. -- Tom | ||
92 | */ | ||
93 | zimage_start = (char *)(unsigned long)(&__image_begin); | ||
94 | zimage_size = (unsigned long)(&__image_end) - | ||
95 | (unsigned long)(&__image_begin); | ||
96 | |||
97 | /* | ||
98 | * The zImage and initrd will be between start and _end, so they've | ||
99 | * already been moved once. We're good to go now. -- Tom | ||
100 | */ | ||
101 | puts("zimage at: "); | ||
102 | puthex((unsigned long)zimage_start); | ||
103 | puts(" "); | ||
104 | puthex((unsigned long)(zimage_size + zimage_start)); | ||
105 | puts("\n"); | ||
106 | |||
107 | /* this area are prepared for mallocing when decompressing */ | ||
108 | free_mem_ptr = boot_heap_start; | ||
109 | free_mem_end_ptr = boot_heap_start + BOOT_HEAP_SIZE; | ||
110 | |||
111 | /* Display standard Linux/MIPS boot prompt for kernel args */ | ||
112 | puts("Uncompressing Linux at load address "); | ||
113 | puthex(VMLINUX_LOAD_ADDRESS_ULL); | ||
114 | puts("\n"); | ||
115 | /* Decompress the kernel with according algorithm */ | ||
116 | decompress(zimage_start, zimage_size, 0, 0, | ||
117 | (void *)VMLINUX_LOAD_ADDRESS_ULL, 0, error); | ||
118 | /* FIXME: is there a need to flush cache here? */ | ||
119 | puts("Now, booting the kernel...\n"); | ||
120 | } | ||
diff --git a/arch/mips/boot/compressed/dummy.c b/arch/mips/boot/compressed/dummy.c new file mode 100644 index 000000000000..31dbf45bf99c --- /dev/null +++ b/arch/mips/boot/compressed/dummy.c | |||
@@ -0,0 +1,4 @@ | |||
1 | int main(void) | ||
2 | { | ||
3 | return 0; | ||
4 | } | ||
diff --git a/arch/mips/boot/compressed/head.S b/arch/mips/boot/compressed/head.S new file mode 100644 index 000000000000..4e65a8420bee --- /dev/null +++ b/arch/mips/boot/compressed/head.S | |||
@@ -0,0 +1,56 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 1994, 1995 Waldorf Electronics | ||
7 | * Written by Ralf Baechle and Andreas Busse | ||
8 | * Copyright (C) 1995 - 1999 Ralf Baechle | ||
9 | * Copyright (C) 1996 Paul M. Antoine | ||
10 | * Modified for DECStation and hence R3000 support by Paul M. Antoine | ||
11 | * Further modifications by David S. Miller and Harald Koerfgen | ||
12 | * Copyright (C) 1999 Silicon Graphics, Inc. | ||
13 | */ | ||
14 | |||
15 | #include <asm/asm.h> | ||
16 | #include <asm/regdef.h> | ||
17 | |||
18 | .set noreorder | ||
19 | .cprestore | ||
20 | LEAF(start) | ||
21 | start: | ||
22 | /* Save boot rom start args */ | ||
23 | move s0, a0 | ||
24 | move s1, a1 | ||
25 | move s2, a2 | ||
26 | move s3, a3 | ||
27 | |||
28 | /* Clear BSS */ | ||
29 | PTR_LA a0, _edata | ||
30 | PTR_LA a2, _end | ||
31 | 1: sw zero, 0(a0) | ||
32 | bne a2, a0, 1b | ||
33 | addiu a0, a0, 4 | ||
34 | |||
35 | PTR_LA a0, (.heap) /* heap address */ | ||
36 | PTR_LA sp, (.stack + 8192) /* stack address */ | ||
37 | |||
38 | PTR_LA ra, 2f | ||
39 | PTR_LA k0, decompress_kernel | ||
40 | jr k0 | ||
41 | nop | ||
42 | 2: | ||
43 | move a0, s0 | ||
44 | move a1, s1 | ||
45 | move a2, s2 | ||
46 | move a3, s3 | ||
47 | PTR_LI k0, KERNEL_ENTRY | ||
48 | jr k0 | ||
49 | nop | ||
50 | 3: | ||
51 | b 3b | ||
52 | nop | ||
53 | END(start) | ||
54 | |||
55 | .comm .heap,BOOT_HEAP_SIZE,4 | ||
56 | .comm .stack,4096*2,4 | ||
diff --git a/arch/mips/boot/compressed/ld.script b/arch/mips/boot/compressed/ld.script new file mode 100644 index 000000000000..613a35b02f50 --- /dev/null +++ b/arch/mips/boot/compressed/ld.script | |||
@@ -0,0 +1,67 @@ | |||
1 | /* | ||
2 | * ld.script for compressed kernel support of MIPS | ||
3 | * | ||
4 | * Copyright (C) 2009 Lemote Inc. | ||
5 | * Author: Wu Zhangjin <wuzj@lemote.com> | ||
6 | */ | ||
7 | |||
8 | OUTPUT_ARCH(mips) | ||
9 | ENTRY(start) | ||
10 | SECTIONS | ||
11 | { | ||
12 | /* . = VMLINUZ_LOAD_ADDRESS */ | ||
13 | /* read-only */ | ||
14 | _text = .; /* Text and read-only data */ | ||
15 | .text : { | ||
16 | _ftext = . ; | ||
17 | *(.text) | ||
18 | *(.rodata) | ||
19 | } = 0 | ||
20 | _etext = .; /* End of text section */ | ||
21 | |||
22 | /* writable */ | ||
23 | .data : { /* Data */ | ||
24 | _fdata = . ; | ||
25 | *(.data) | ||
26 | /* Put the compressed image here, so bss is on the end. */ | ||
27 | __image_begin = .; | ||
28 | *(.image) | ||
29 | __image_end = .; | ||
30 | CONSTRUCTORS | ||
31 | } | ||
32 | .sdata : { *(.sdata) } | ||
33 | . = ALIGN(4); | ||
34 | _edata = .; /* End of data section */ | ||
35 | |||
36 | /* BSS */ | ||
37 | __bss_start = .; | ||
38 | _fbss = .; | ||
39 | .sbss : { *(.sbss) *(.scommon) } | ||
40 | .bss : { | ||
41 | *(.dynbss) | ||
42 | *(.bss) | ||
43 | *(COMMON) | ||
44 | } | ||
45 | . = ALIGN(4); | ||
46 | _end = . ; | ||
47 | |||
48 | /* These are needed for ELF backends which have not yet been converted | ||
49 | * to the new style linker. */ | ||
50 | |||
51 | .stab 0 : { *(.stab) } | ||
52 | .stabstr 0 : { *(.stabstr) } | ||
53 | |||
54 | /* These must appear regardless of . */ | ||
55 | .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } | ||
56 | .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } | ||
57 | |||
58 | /* Sections to be discarded */ | ||
59 | /DISCARD/ : { | ||
60 | *(.MIPS.options) | ||
61 | *(.options) | ||
62 | *(.pdr) | ||
63 | *(.reginfo) | ||
64 | *(.comment) | ||
65 | *(.note) | ||
66 | } | ||
67 | } | ||
diff --git a/arch/mips/boot/compressed/uart-16550.c b/arch/mips/boot/compressed/uart-16550.c new file mode 100644 index 000000000000..c9caaf4fbf60 --- /dev/null +++ b/arch/mips/boot/compressed/uart-16550.c | |||
@@ -0,0 +1,43 @@ | |||
1 | /* | ||
2 | * 16550 compatible uart based serial debug support for zboot | ||
3 | */ | ||
4 | |||
5 | #include <linux/types.h> | ||
6 | #include <linux/serial_reg.h> | ||
7 | #include <linux/init.h> | ||
8 | |||
9 | #include <asm/addrspace.h> | ||
10 | |||
11 | #if defined(CONFIG_MACH_LOONGSON) || defined(CONFIG_MIPS_MALTA) | ||
12 | #define UART_BASE 0x1fd003f8 | ||
13 | #define PORT(offset) (CKSEG1ADDR(UART_BASE) + (offset)) | ||
14 | #endif | ||
15 | |||
16 | #ifdef CONFIG_AR7 | ||
17 | #include <ar7.h> | ||
18 | #define PORT(offset) (CKSEG1ADDR(AR7_REGS_UART0) + (4 * offset)) | ||
19 | #endif | ||
20 | |||
21 | #ifndef PORT | ||
22 | #error please define the serial port address for your own machine | ||
23 | #endif | ||
24 | |||
25 | static inline unsigned int serial_in(int offset) | ||
26 | { | ||
27 | return *((char *)PORT(offset)); | ||
28 | } | ||
29 | |||
30 | static inline void serial_out(int offset, int value) | ||
31 | { | ||
32 | *((char *)PORT(offset)) = value; | ||
33 | } | ||
34 | |||
35 | void putc(char c) | ||
36 | { | ||
37 | int timeout = 1024; | ||
38 | |||
39 | while (((serial_in(UART_LSR) & UART_LSR_THRE) == 0) && (timeout-- > 0)) | ||
40 | ; | ||
41 | |||
42 | serial_out(UART_TX, c); | ||
43 | } | ||
diff --git a/arch/mips/boot/compressed/uart-alchemy.c b/arch/mips/boot/compressed/uart-alchemy.c new file mode 100644 index 000000000000..1bff22fa089b --- /dev/null +++ b/arch/mips/boot/compressed/uart-alchemy.c | |||
@@ -0,0 +1,7 @@ | |||
1 | #include <asm/mach-au1x00/au1000.h> | ||
2 | |||
3 | void putc(char c) | ||
4 | { | ||
5 | /* all current (Jan. 2010) in-kernel boards */ | ||
6 | alchemy_uart_putchar(UART0_PHYS_ADDR, c); | ||
7 | } | ||
diff --git a/arch/mips/cavium-octeon/Makefile b/arch/mips/cavium-octeon/Makefile index 139436280520..3e9876317e61 100644 --- a/arch/mips/cavium-octeon/Makefile +++ b/arch/mips/cavium-octeon/Makefile | |||
@@ -9,7 +9,7 @@ | |||
9 | # Copyright (C) 2005-2009 Cavium Networks | 9 | # Copyright (C) 2005-2009 Cavium Networks |
10 | # | 10 | # |
11 | 11 | ||
12 | obj-y := setup.o serial.o octeon-platform.o octeon-irq.o csrc-octeon.o | 12 | obj-y := cpu.o setup.o serial.o octeon-platform.o octeon-irq.o csrc-octeon.o |
13 | obj-y += dma-octeon.o flash_setup.o | 13 | obj-y += dma-octeon.o flash_setup.o |
14 | obj-y += octeon-memcpy.o | 14 | obj-y += octeon-memcpy.o |
15 | 15 | ||
diff --git a/arch/mips/cavium-octeon/cpu.c b/arch/mips/cavium-octeon/cpu.c new file mode 100644 index 000000000000..b6df5387e855 --- /dev/null +++ b/arch/mips/cavium-octeon/cpu.c | |||
@@ -0,0 +1,52 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 2009 Wind River Systems, | ||
7 | * written by Ralf Baechle <ralf@linux-mips.org> | ||
8 | */ | ||
9 | #include <linux/init.h> | ||
10 | #include <linux/irqflags.h> | ||
11 | #include <linux/notifier.h> | ||
12 | #include <linux/prefetch.h> | ||
13 | #include <linux/sched.h> | ||
14 | |||
15 | #include <asm/cop2.h> | ||
16 | #include <asm/current.h> | ||
17 | #include <asm/mipsregs.h> | ||
18 | #include <asm/page.h> | ||
19 | #include <asm/octeon/octeon.h> | ||
20 | |||
21 | static int cnmips_cu2_call(struct notifier_block *nfb, unsigned long action, | ||
22 | void *data) | ||
23 | { | ||
24 | unsigned long flags; | ||
25 | unsigned int status; | ||
26 | |||
27 | switch (action) { | ||
28 | case CU2_EXCEPTION: | ||
29 | prefetch(¤t->thread.cp2); | ||
30 | local_irq_save(flags); | ||
31 | KSTK_STATUS(current) |= ST0_CU2; | ||
32 | status = read_c0_status(); | ||
33 | write_c0_status(status | ST0_CU2); | ||
34 | octeon_cop2_restore(&(current->thread.cp2)); | ||
35 | write_c0_status(status & ~ST0_CU2); | ||
36 | local_irq_restore(flags); | ||
37 | |||
38 | return NOTIFY_BAD; /* Don't call default notifier */ | ||
39 | } | ||
40 | |||
41 | return NOTIFY_OK; /* Let default notifier send signals */ | ||
42 | } | ||
43 | |||
44 | static struct notifier_block cnmips_cu2_notifier = { | ||
45 | .notifier_call = cnmips_cu2_call, | ||
46 | }; | ||
47 | |||
48 | static int cnmips_cu2_setup(void) | ||
49 | { | ||
50 | return register_cu2_notifier(&cnmips_cu2_notifier); | ||
51 | } | ||
52 | early_initcall(cnmips_cu2_setup); | ||
diff --git a/arch/mips/cavium-octeon/csrc-octeon.c b/arch/mips/cavium-octeon/csrc-octeon.c index 96110f217dcd..0bf4bbe04ae2 100644 --- a/arch/mips/cavium-octeon/csrc-octeon.c +++ b/arch/mips/cavium-octeon/csrc-octeon.c | |||
@@ -50,6 +50,38 @@ static struct clocksource clocksource_mips = { | |||
50 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, | 50 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, |
51 | }; | 51 | }; |
52 | 52 | ||
53 | unsigned long long notrace sched_clock(void) | ||
54 | { | ||
55 | /* 64-bit arithmatic can overflow, so use 128-bit. */ | ||
56 | #if (__GNUC__ < 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ <= 3)) | ||
57 | u64 t1, t2, t3; | ||
58 | unsigned long long rv; | ||
59 | u64 mult = clocksource_mips.mult; | ||
60 | u64 shift = clocksource_mips.shift; | ||
61 | u64 cnt = read_c0_cvmcount(); | ||
62 | |||
63 | asm ( | ||
64 | "dmultu\t%[cnt],%[mult]\n\t" | ||
65 | "nor\t%[t1],$0,%[shift]\n\t" | ||
66 | "mfhi\t%[t2]\n\t" | ||
67 | "mflo\t%[t3]\n\t" | ||
68 | "dsll\t%[t2],%[t2],1\n\t" | ||
69 | "dsrlv\t%[rv],%[t3],%[shift]\n\t" | ||
70 | "dsllv\t%[t1],%[t2],%[t1]\n\t" | ||
71 | "or\t%[rv],%[t1],%[rv]\n\t" | ||
72 | : [rv] "=&r" (rv), [t1] "=&r" (t1), [t2] "=&r" (t2), [t3] "=&r" (t3) | ||
73 | : [cnt] "r" (cnt), [mult] "r" (mult), [shift] "r" (shift) | ||
74 | : "hi", "lo"); | ||
75 | return rv; | ||
76 | #else | ||
77 | /* GCC > 4.3 do it the easy way. */ | ||
78 | unsigned int __attribute__((mode(TI))) t; | ||
79 | t = read_c0_cvmcount(); | ||
80 | t = t * clocksource_mips.mult; | ||
81 | return (unsigned long long)(t >> clocksource_mips.shift); | ||
82 | #endif | ||
83 | } | ||
84 | |||
53 | void __init plat_time_init(void) | 85 | void __init plat_time_init(void) |
54 | { | 86 | { |
55 | clocksource_mips.rating = 300; | 87 | clocksource_mips.rating = 300; |
diff --git a/arch/mips/cavium-octeon/dma-octeon.c b/arch/mips/cavium-octeon/dma-octeon.c index 4b92bfc662db..be531ec1f206 100644 --- a/arch/mips/cavium-octeon/dma-octeon.c +++ b/arch/mips/cavium-octeon/dma-octeon.c | |||
@@ -41,7 +41,7 @@ struct bar1_index_state { | |||
41 | }; | 41 | }; |
42 | 42 | ||
43 | #ifdef CONFIG_PCI | 43 | #ifdef CONFIG_PCI |
44 | static DEFINE_SPINLOCK(bar1_lock); | 44 | static DEFINE_RAW_SPINLOCK(bar1_lock); |
45 | static struct bar1_index_state bar1_state[32]; | 45 | static struct bar1_index_state bar1_state[32]; |
46 | #endif | 46 | #endif |
47 | 47 | ||
@@ -198,7 +198,7 @@ dma_addr_t octeon_map_dma_mem(struct device *dev, void *ptr, size_t size) | |||
198 | start_index = 31; | 198 | start_index = 31; |
199 | 199 | ||
200 | /* Only one processor can access the Bar register at once */ | 200 | /* Only one processor can access the Bar register at once */ |
201 | spin_lock_irqsave(&bar1_lock, flags); | 201 | raw_spin_lock_irqsave(&bar1_lock, flags); |
202 | 202 | ||
203 | /* Look through Bar1 for existing mapping that will work */ | 203 | /* Look through Bar1 for existing mapping that will work */ |
204 | for (index = start_index; index >= 0; index--) { | 204 | for (index = start_index; index >= 0; index--) { |
@@ -250,7 +250,7 @@ dma_addr_t octeon_map_dma_mem(struct device *dev, void *ptr, size_t size) | |||
250 | (unsigned long long) physical); | 250 | (unsigned long long) physical); |
251 | 251 | ||
252 | done_unlock: | 252 | done_unlock: |
253 | spin_unlock_irqrestore(&bar1_lock, flags); | 253 | raw_spin_unlock_irqrestore(&bar1_lock, flags); |
254 | done: | 254 | done: |
255 | pr_debug("dma_map_single 0x%llx->0x%llx\n", physical, result); | 255 | pr_debug("dma_map_single 0x%llx->0x%llx\n", physical, result); |
256 | return result; | 256 | return result; |
@@ -324,14 +324,14 @@ void octeon_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr) | |||
324 | "Attempt to unmap an invalid address (0x%llx)\n", | 324 | "Attempt to unmap an invalid address (0x%llx)\n", |
325 | dma_addr); | 325 | dma_addr); |
326 | 326 | ||
327 | spin_lock_irqsave(&bar1_lock, flags); | 327 | raw_spin_lock_irqsave(&bar1_lock, flags); |
328 | bar1_state[index].ref_count--; | 328 | bar1_state[index].ref_count--; |
329 | if (bar1_state[index].ref_count == 0) | 329 | if (bar1_state[index].ref_count == 0) |
330 | octeon_npi_write32(CVMX_NPI_PCI_BAR1_INDEXX(index), 0); | 330 | octeon_npi_write32(CVMX_NPI_PCI_BAR1_INDEXX(index), 0); |
331 | else if (unlikely(bar1_state[index].ref_count < 0)) | 331 | else if (unlikely(bar1_state[index].ref_count < 0)) |
332 | panic("dma_unmap_single: Bar1[%u] reference count < 0\n", | 332 | panic("dma_unmap_single: Bar1[%u] reference count < 0\n", |
333 | (int) index); | 333 | (int) index); |
334 | spin_unlock_irqrestore(&bar1_lock, flags); | 334 | raw_spin_unlock_irqrestore(&bar1_lock, flags); |
335 | done: | 335 | done: |
336 | pr_debug("dma_unmap_single 0x%llx\n", dma_addr); | 336 | pr_debug("dma_unmap_single 0x%llx\n", dma_addr); |
337 | return; | 337 | return; |
diff --git a/arch/mips/cavium-octeon/executive/cvmx-bootmem.c b/arch/mips/cavium-octeon/executive/cvmx-bootmem.c index 25666da17b22..fdf5f19bfdb0 100644 --- a/arch/mips/cavium-octeon/executive/cvmx-bootmem.c +++ b/arch/mips/cavium-octeon/executive/cvmx-bootmem.c | |||
@@ -253,7 +253,7 @@ int64_t cvmx_bootmem_phy_alloc(uint64_t req_size, uint64_t address_min, | |||
253 | * impossible requests up front. (NOP for address_min == 0) | 253 | * impossible requests up front. (NOP for address_min == 0) |
254 | */ | 254 | */ |
255 | if (alignment) | 255 | if (alignment) |
256 | address_min = __ALIGN_MASK(address_min, (alignment - 1)); | 256 | address_min = ALIGN(address_min, alignment); |
257 | 257 | ||
258 | /* | 258 | /* |
259 | * Reject inconsistent args. We have adjusted these, so this | 259 | * Reject inconsistent args. We have adjusted these, so this |
@@ -291,7 +291,7 @@ int64_t cvmx_bootmem_phy_alloc(uint64_t req_size, uint64_t address_min, | |||
291 | * satisfy request. | 291 | * satisfy request. |
292 | */ | 292 | */ |
293 | usable_base = | 293 | usable_base = |
294 | __ALIGN_MASK(max(address_min, ent_addr), alignment - 1); | 294 | ALIGN(max(address_min, ent_addr), alignment); |
295 | usable_max = min(address_max, ent_addr + ent_size); | 295 | usable_max = min(address_max, ent_addr + ent_size); |
296 | /* | 296 | /* |
297 | * We should be able to allocate block at address | 297 | * We should be able to allocate block at address |
@@ -671,7 +671,7 @@ int64_t cvmx_bootmem_phy_named_block_alloc(uint64_t size, uint64_t min_addr, | |||
671 | * coallesced when they are freed. The alloc routine does the | 671 | * coallesced when they are freed. The alloc routine does the |
672 | * same rounding up on all allocations. | 672 | * same rounding up on all allocations. |
673 | */ | 673 | */ |
674 | size = __ALIGN_MASK(size, (CVMX_BOOTMEM_ALIGNMENT_SIZE - 1)); | 674 | size = ALIGN(size, CVMX_BOOTMEM_ALIGNMENT_SIZE); |
675 | 675 | ||
676 | addr_allocated = cvmx_bootmem_phy_alloc(size, min_addr, max_addr, | 676 | addr_allocated = cvmx_bootmem_phy_alloc(size, min_addr, max_addr, |
677 | alignment, | 677 | alignment, |
diff --git a/arch/mips/cavium-octeon/executive/cvmx-sysinfo.c b/arch/mips/cavium-octeon/executive/cvmx-sysinfo.c index e5838890cba5..8b18a20cc7b3 100644 --- a/arch/mips/cavium-octeon/executive/cvmx-sysinfo.c +++ b/arch/mips/cavium-octeon/executive/cvmx-sysinfo.c | |||
@@ -115,4 +115,3 @@ int cvmx_sysinfo_minimal_initialize(void *phy_mem_desc_ptr, | |||
115 | 115 | ||
116 | return 1; | 116 | return 1; |
117 | } | 117 | } |
118 | |||
diff --git a/arch/mips/cavium-octeon/octeon-irq.c b/arch/mips/cavium-octeon/octeon-irq.c index 6f2acf09328d..c424cd158dc6 100644 --- a/arch/mips/cavium-octeon/octeon-irq.c +++ b/arch/mips/cavium-octeon/octeon-irq.c | |||
@@ -13,9 +13,8 @@ | |||
13 | #include <asm/octeon/cvmx-pexp-defs.h> | 13 | #include <asm/octeon/cvmx-pexp-defs.h> |
14 | #include <asm/octeon/cvmx-npi-defs.h> | 14 | #include <asm/octeon/cvmx-npi-defs.h> |
15 | 15 | ||
16 | DEFINE_RWLOCK(octeon_irq_ciu0_rwlock); | 16 | static DEFINE_RAW_SPINLOCK(octeon_irq_ciu0_lock); |
17 | DEFINE_RWLOCK(octeon_irq_ciu1_rwlock); | 17 | static DEFINE_RAW_SPINLOCK(octeon_irq_ciu1_lock); |
18 | DEFINE_SPINLOCK(octeon_irq_msi_lock); | ||
19 | 18 | ||
20 | static int octeon_coreid_for_cpu(int cpu) | 19 | static int octeon_coreid_for_cpu(int cpu) |
21 | { | 20 | { |
@@ -51,9 +50,6 @@ static void octeon_irq_core_eoi(unsigned int irq) | |||
51 | */ | 50 | */ |
52 | if (desc->status & IRQ_DISABLED) | 51 | if (desc->status & IRQ_DISABLED) |
53 | return; | 52 | return; |
54 | |||
55 | /* There is a race here. We should fix it. */ | ||
56 | |||
57 | /* | 53 | /* |
58 | * We don't need to disable IRQs to make these atomic since | 54 | * We don't need to disable IRQs to make these atomic since |
59 | * they are already disabled earlier in the low level | 55 | * they are already disabled earlier in the low level |
@@ -141,19 +137,12 @@ static void octeon_irq_ciu0_enable(unsigned int irq) | |||
141 | uint64_t en0; | 137 | uint64_t en0; |
142 | int bit = irq - OCTEON_IRQ_WORKQ0; /* Bit 0-63 of EN0 */ | 138 | int bit = irq - OCTEON_IRQ_WORKQ0; /* Bit 0-63 of EN0 */ |
143 | 139 | ||
144 | /* | 140 | raw_spin_lock_irqsave(&octeon_irq_ciu0_lock, flags); |
145 | * A read lock is used here to make sure only one core is ever | ||
146 | * updating the CIU enable bits at a time. During an enable | ||
147 | * the cores don't interfere with each other. During a disable | ||
148 | * the write lock stops any enables that might cause a | ||
149 | * problem. | ||
150 | */ | ||
151 | read_lock_irqsave(&octeon_irq_ciu0_rwlock, flags); | ||
152 | en0 = cvmx_read_csr(CVMX_CIU_INTX_EN0(coreid * 2)); | 141 | en0 = cvmx_read_csr(CVMX_CIU_INTX_EN0(coreid * 2)); |
153 | en0 |= 1ull << bit; | 142 | en0 |= 1ull << bit; |
154 | cvmx_write_csr(CVMX_CIU_INTX_EN0(coreid * 2), en0); | 143 | cvmx_write_csr(CVMX_CIU_INTX_EN0(coreid * 2), en0); |
155 | cvmx_read_csr(CVMX_CIU_INTX_EN0(coreid * 2)); | 144 | cvmx_read_csr(CVMX_CIU_INTX_EN0(coreid * 2)); |
156 | read_unlock_irqrestore(&octeon_irq_ciu0_rwlock, flags); | 145 | raw_spin_unlock_irqrestore(&octeon_irq_ciu0_lock, flags); |
157 | } | 146 | } |
158 | 147 | ||
159 | static void octeon_irq_ciu0_disable(unsigned int irq) | 148 | static void octeon_irq_ciu0_disable(unsigned int irq) |
@@ -162,7 +151,7 @@ static void octeon_irq_ciu0_disable(unsigned int irq) | |||
162 | unsigned long flags; | 151 | unsigned long flags; |
163 | uint64_t en0; | 152 | uint64_t en0; |
164 | int cpu; | 153 | int cpu; |
165 | write_lock_irqsave(&octeon_irq_ciu0_rwlock, flags); | 154 | raw_spin_lock_irqsave(&octeon_irq_ciu0_lock, flags); |
166 | for_each_online_cpu(cpu) { | 155 | for_each_online_cpu(cpu) { |
167 | int coreid = octeon_coreid_for_cpu(cpu); | 156 | int coreid = octeon_coreid_for_cpu(cpu); |
168 | en0 = cvmx_read_csr(CVMX_CIU_INTX_EN0(coreid * 2)); | 157 | en0 = cvmx_read_csr(CVMX_CIU_INTX_EN0(coreid * 2)); |
@@ -174,7 +163,7 @@ static void octeon_irq_ciu0_disable(unsigned int irq) | |||
174 | * of them are done. | 163 | * of them are done. |
175 | */ | 164 | */ |
176 | cvmx_read_csr(CVMX_CIU_INTX_EN0(cvmx_get_core_num() * 2)); | 165 | cvmx_read_csr(CVMX_CIU_INTX_EN0(cvmx_get_core_num() * 2)); |
177 | write_unlock_irqrestore(&octeon_irq_ciu0_rwlock, flags); | 166 | raw_spin_unlock_irqrestore(&octeon_irq_ciu0_lock, flags); |
178 | } | 167 | } |
179 | 168 | ||
180 | /* | 169 | /* |
@@ -193,7 +182,7 @@ static void octeon_irq_ciu0_enable_v2(unsigned int irq) | |||
193 | * Disable the irq on the current core for chips that have the EN*_W1{S,C} | 182 | * Disable the irq on the current core for chips that have the EN*_W1{S,C} |
194 | * registers. | 183 | * registers. |
195 | */ | 184 | */ |
196 | static void octeon_irq_ciu0_disable_v2(unsigned int irq) | 185 | static void octeon_irq_ciu0_ack_v2(unsigned int irq) |
197 | { | 186 | { |
198 | int index = cvmx_get_core_num() * 2; | 187 | int index = cvmx_get_core_num() * 2; |
199 | u64 mask = 1ull << (irq - OCTEON_IRQ_WORKQ0); | 188 | u64 mask = 1ull << (irq - OCTEON_IRQ_WORKQ0); |
@@ -202,6 +191,43 @@ static void octeon_irq_ciu0_disable_v2(unsigned int irq) | |||
202 | } | 191 | } |
203 | 192 | ||
204 | /* | 193 | /* |
194 | * CIU timer type interrupts must be acknoleged by writing a '1' bit | ||
195 | * to their sum0 bit. | ||
196 | */ | ||
197 | static void octeon_irq_ciu0_timer_ack(unsigned int irq) | ||
198 | { | ||
199 | int index = cvmx_get_core_num() * 2; | ||
200 | uint64_t mask = 1ull << (irq - OCTEON_IRQ_WORKQ0); | ||
201 | cvmx_write_csr(CVMX_CIU_INTX_SUM0(index), mask); | ||
202 | } | ||
203 | |||
204 | static void octeon_irq_ciu0_timer_ack_v1(unsigned int irq) | ||
205 | { | ||
206 | octeon_irq_ciu0_timer_ack(irq); | ||
207 | octeon_irq_ciu0_ack(irq); | ||
208 | } | ||
209 | |||
210 | static void octeon_irq_ciu0_timer_ack_v2(unsigned int irq) | ||
211 | { | ||
212 | octeon_irq_ciu0_timer_ack(irq); | ||
213 | octeon_irq_ciu0_ack_v2(irq); | ||
214 | } | ||
215 | |||
216 | /* | ||
217 | * Enable the irq on the current core for chips that have the EN*_W1{S,C} | ||
218 | * registers. | ||
219 | */ | ||
220 | static void octeon_irq_ciu0_eoi_v2(unsigned int irq) | ||
221 | { | ||
222 | struct irq_desc *desc = irq_desc + irq; | ||
223 | int index = cvmx_get_core_num() * 2; | ||
224 | u64 mask = 1ull << (irq - OCTEON_IRQ_WORKQ0); | ||
225 | |||
226 | if ((desc->status & IRQ_DISABLED) == 0) | ||
227 | cvmx_write_csr(CVMX_CIU_INTX_EN0_W1S(index), mask); | ||
228 | } | ||
229 | |||
230 | /* | ||
205 | * Disable the irq on the all cores for chips that have the EN*_W1{S,C} | 231 | * Disable the irq on the all cores for chips that have the EN*_W1{S,C} |
206 | * registers. | 232 | * registers. |
207 | */ | 233 | */ |
@@ -223,7 +249,7 @@ static int octeon_irq_ciu0_set_affinity(unsigned int irq, const struct cpumask * | |||
223 | unsigned long flags; | 249 | unsigned long flags; |
224 | int bit = irq - OCTEON_IRQ_WORKQ0; /* Bit 0-63 of EN0 */ | 250 | int bit = irq - OCTEON_IRQ_WORKQ0; /* Bit 0-63 of EN0 */ |
225 | 251 | ||
226 | write_lock_irqsave(&octeon_irq_ciu0_rwlock, flags); | 252 | raw_spin_lock_irqsave(&octeon_irq_ciu0_lock, flags); |
227 | for_each_online_cpu(cpu) { | 253 | for_each_online_cpu(cpu) { |
228 | int coreid = octeon_coreid_for_cpu(cpu); | 254 | int coreid = octeon_coreid_for_cpu(cpu); |
229 | uint64_t en0 = | 255 | uint64_t en0 = |
@@ -239,7 +265,7 @@ static int octeon_irq_ciu0_set_affinity(unsigned int irq, const struct cpumask * | |||
239 | * of them are done. | 265 | * of them are done. |
240 | */ | 266 | */ |
241 | cvmx_read_csr(CVMX_CIU_INTX_EN0(cvmx_get_core_num() * 2)); | 267 | cvmx_read_csr(CVMX_CIU_INTX_EN0(cvmx_get_core_num() * 2)); |
242 | write_unlock_irqrestore(&octeon_irq_ciu0_rwlock, flags); | 268 | raw_spin_unlock_irqrestore(&octeon_irq_ciu0_lock, flags); |
243 | 269 | ||
244 | return 0; | 270 | return 0; |
245 | } | 271 | } |
@@ -272,8 +298,8 @@ static struct irq_chip octeon_irq_chip_ciu0_v2 = { | |||
272 | .name = "CIU0", | 298 | .name = "CIU0", |
273 | .enable = octeon_irq_ciu0_enable_v2, | 299 | .enable = octeon_irq_ciu0_enable_v2, |
274 | .disable = octeon_irq_ciu0_disable_all_v2, | 300 | .disable = octeon_irq_ciu0_disable_all_v2, |
275 | .ack = octeon_irq_ciu0_disable_v2, | 301 | .ack = octeon_irq_ciu0_ack_v2, |
276 | .eoi = octeon_irq_ciu0_enable_v2, | 302 | .eoi = octeon_irq_ciu0_eoi_v2, |
277 | #ifdef CONFIG_SMP | 303 | #ifdef CONFIG_SMP |
278 | .set_affinity = octeon_irq_ciu0_set_affinity_v2, | 304 | .set_affinity = octeon_irq_ciu0_set_affinity_v2, |
279 | #endif | 305 | #endif |
@@ -290,6 +316,28 @@ static struct irq_chip octeon_irq_chip_ciu0 = { | |||
290 | #endif | 316 | #endif |
291 | }; | 317 | }; |
292 | 318 | ||
319 | static struct irq_chip octeon_irq_chip_ciu0_timer_v2 = { | ||
320 | .name = "CIU0-T", | ||
321 | .enable = octeon_irq_ciu0_enable_v2, | ||
322 | .disable = octeon_irq_ciu0_disable_all_v2, | ||
323 | .ack = octeon_irq_ciu0_timer_ack_v2, | ||
324 | .eoi = octeon_irq_ciu0_eoi_v2, | ||
325 | #ifdef CONFIG_SMP | ||
326 | .set_affinity = octeon_irq_ciu0_set_affinity_v2, | ||
327 | #endif | ||
328 | }; | ||
329 | |||
330 | static struct irq_chip octeon_irq_chip_ciu0_timer = { | ||
331 | .name = "CIU0-T", | ||
332 | .enable = octeon_irq_ciu0_enable, | ||
333 | .disable = octeon_irq_ciu0_disable, | ||
334 | .ack = octeon_irq_ciu0_timer_ack_v1, | ||
335 | .eoi = octeon_irq_ciu0_eoi, | ||
336 | #ifdef CONFIG_SMP | ||
337 | .set_affinity = octeon_irq_ciu0_set_affinity, | ||
338 | #endif | ||
339 | }; | ||
340 | |||
293 | 341 | ||
294 | static void octeon_irq_ciu1_ack(unsigned int irq) | 342 | static void octeon_irq_ciu1_ack(unsigned int irq) |
295 | { | 343 | { |
@@ -322,19 +370,12 @@ static void octeon_irq_ciu1_enable(unsigned int irq) | |||
322 | uint64_t en1; | 370 | uint64_t en1; |
323 | int bit = irq - OCTEON_IRQ_WDOG0; /* Bit 0-63 of EN1 */ | 371 | int bit = irq - OCTEON_IRQ_WDOG0; /* Bit 0-63 of EN1 */ |
324 | 372 | ||
325 | /* | 373 | raw_spin_lock_irqsave(&octeon_irq_ciu1_lock, flags); |
326 | * A read lock is used here to make sure only one core is ever | ||
327 | * updating the CIU enable bits at a time. During an enable | ||
328 | * the cores don't interfere with each other. During a disable | ||
329 | * the write lock stops any enables that might cause a | ||
330 | * problem. | ||
331 | */ | ||
332 | read_lock_irqsave(&octeon_irq_ciu1_rwlock, flags); | ||
333 | en1 = cvmx_read_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1)); | 374 | en1 = cvmx_read_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1)); |
334 | en1 |= 1ull << bit; | 375 | en1 |= 1ull << bit; |
335 | cvmx_write_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1), en1); | 376 | cvmx_write_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1), en1); |
336 | cvmx_read_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1)); | 377 | cvmx_read_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1)); |
337 | read_unlock_irqrestore(&octeon_irq_ciu1_rwlock, flags); | 378 | raw_spin_unlock_irqrestore(&octeon_irq_ciu1_lock, flags); |
338 | } | 379 | } |
339 | 380 | ||
340 | static void octeon_irq_ciu1_disable(unsigned int irq) | 381 | static void octeon_irq_ciu1_disable(unsigned int irq) |
@@ -343,7 +384,7 @@ static void octeon_irq_ciu1_disable(unsigned int irq) | |||
343 | unsigned long flags; | 384 | unsigned long flags; |
344 | uint64_t en1; | 385 | uint64_t en1; |
345 | int cpu; | 386 | int cpu; |
346 | write_lock_irqsave(&octeon_irq_ciu1_rwlock, flags); | 387 | raw_spin_lock_irqsave(&octeon_irq_ciu1_lock, flags); |
347 | for_each_online_cpu(cpu) { | 388 | for_each_online_cpu(cpu) { |
348 | int coreid = octeon_coreid_for_cpu(cpu); | 389 | int coreid = octeon_coreid_for_cpu(cpu); |
349 | en1 = cvmx_read_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1)); | 390 | en1 = cvmx_read_csr(CVMX_CIU_INTX_EN1(coreid * 2 + 1)); |
@@ -355,7 +396,7 @@ static void octeon_irq_ciu1_disable(unsigned int irq) | |||
355 | * of them are done. | 396 | * of them are done. |
356 | */ | 397 | */ |
357 | cvmx_read_csr(CVMX_CIU_INTX_EN1(cvmx_get_core_num() * 2 + 1)); | 398 | cvmx_read_csr(CVMX_CIU_INTX_EN1(cvmx_get_core_num() * 2 + 1)); |
358 | write_unlock_irqrestore(&octeon_irq_ciu1_rwlock, flags); | 399 | raw_spin_unlock_irqrestore(&octeon_irq_ciu1_lock, flags); |
359 | } | 400 | } |
360 | 401 | ||
361 | /* | 402 | /* |
@@ -374,7 +415,7 @@ static void octeon_irq_ciu1_enable_v2(unsigned int irq) | |||
374 | * Disable the irq on the current core for chips that have the EN*_W1{S,C} | 415 | * Disable the irq on the current core for chips that have the EN*_W1{S,C} |
375 | * registers. | 416 | * registers. |
376 | */ | 417 | */ |
377 | static void octeon_irq_ciu1_disable_v2(unsigned int irq) | 418 | static void octeon_irq_ciu1_ack_v2(unsigned int irq) |
378 | { | 419 | { |
379 | int index = cvmx_get_core_num() * 2 + 1; | 420 | int index = cvmx_get_core_num() * 2 + 1; |
380 | u64 mask = 1ull << (irq - OCTEON_IRQ_WDOG0); | 421 | u64 mask = 1ull << (irq - OCTEON_IRQ_WDOG0); |
@@ -383,6 +424,20 @@ static void octeon_irq_ciu1_disable_v2(unsigned int irq) | |||
383 | } | 424 | } |
384 | 425 | ||
385 | /* | 426 | /* |
427 | * Enable the irq on the current core for chips that have the EN*_W1{S,C} | ||
428 | * registers. | ||
429 | */ | ||
430 | static void octeon_irq_ciu1_eoi_v2(unsigned int irq) | ||
431 | { | ||
432 | struct irq_desc *desc = irq_desc + irq; | ||
433 | int index = cvmx_get_core_num() * 2 + 1; | ||
434 | u64 mask = 1ull << (irq - OCTEON_IRQ_WDOG0); | ||
435 | |||
436 | if ((desc->status & IRQ_DISABLED) == 0) | ||
437 | cvmx_write_csr(CVMX_CIU_INTX_EN1_W1S(index), mask); | ||
438 | } | ||
439 | |||
440 | /* | ||
386 | * Disable the irq on the all cores for chips that have the EN*_W1{S,C} | 441 | * Disable the irq on the all cores for chips that have the EN*_W1{S,C} |
387 | * registers. | 442 | * registers. |
388 | */ | 443 | */ |
@@ -405,7 +460,7 @@ static int octeon_irq_ciu1_set_affinity(unsigned int irq, | |||
405 | unsigned long flags; | 460 | unsigned long flags; |
406 | int bit = irq - OCTEON_IRQ_WDOG0; /* Bit 0-63 of EN1 */ | 461 | int bit = irq - OCTEON_IRQ_WDOG0; /* Bit 0-63 of EN1 */ |
407 | 462 | ||
408 | write_lock_irqsave(&octeon_irq_ciu1_rwlock, flags); | 463 | raw_spin_lock_irqsave(&octeon_irq_ciu1_lock, flags); |
409 | for_each_online_cpu(cpu) { | 464 | for_each_online_cpu(cpu) { |
410 | int coreid = octeon_coreid_for_cpu(cpu); | 465 | int coreid = octeon_coreid_for_cpu(cpu); |
411 | uint64_t en1 = | 466 | uint64_t en1 = |
@@ -422,7 +477,7 @@ static int octeon_irq_ciu1_set_affinity(unsigned int irq, | |||
422 | * of them are done. | 477 | * of them are done. |
423 | */ | 478 | */ |
424 | cvmx_read_csr(CVMX_CIU_INTX_EN1(cvmx_get_core_num() * 2 + 1)); | 479 | cvmx_read_csr(CVMX_CIU_INTX_EN1(cvmx_get_core_num() * 2 + 1)); |
425 | write_unlock_irqrestore(&octeon_irq_ciu1_rwlock, flags); | 480 | raw_spin_unlock_irqrestore(&octeon_irq_ciu1_lock, flags); |
426 | 481 | ||
427 | return 0; | 482 | return 0; |
428 | } | 483 | } |
@@ -455,8 +510,8 @@ static struct irq_chip octeon_irq_chip_ciu1_v2 = { | |||
455 | .name = "CIU0", | 510 | .name = "CIU0", |
456 | .enable = octeon_irq_ciu1_enable_v2, | 511 | .enable = octeon_irq_ciu1_enable_v2, |
457 | .disable = octeon_irq_ciu1_disable_all_v2, | 512 | .disable = octeon_irq_ciu1_disable_all_v2, |
458 | .ack = octeon_irq_ciu1_disable_v2, | 513 | .ack = octeon_irq_ciu1_ack_v2, |
459 | .eoi = octeon_irq_ciu1_enable_v2, | 514 | .eoi = octeon_irq_ciu1_eoi_v2, |
460 | #ifdef CONFIG_SMP | 515 | #ifdef CONFIG_SMP |
461 | .set_affinity = octeon_irq_ciu1_set_affinity_v2, | 516 | .set_affinity = octeon_irq_ciu1_set_affinity_v2, |
462 | #endif | 517 | #endif |
@@ -475,6 +530,8 @@ static struct irq_chip octeon_irq_chip_ciu1 = { | |||
475 | 530 | ||
476 | #ifdef CONFIG_PCI_MSI | 531 | #ifdef CONFIG_PCI_MSI |
477 | 532 | ||
533 | static DEFINE_RAW_SPINLOCK(octeon_irq_msi_lock); | ||
534 | |||
478 | static void octeon_irq_msi_ack(unsigned int irq) | 535 | static void octeon_irq_msi_ack(unsigned int irq) |
479 | { | 536 | { |
480 | if (!octeon_has_feature(OCTEON_FEATURE_PCIE)) { | 537 | if (!octeon_has_feature(OCTEON_FEATURE_PCIE)) { |
@@ -515,12 +572,12 @@ static void octeon_irq_msi_enable(unsigned int irq) | |||
515 | */ | 572 | */ |
516 | uint64_t en; | 573 | uint64_t en; |
517 | unsigned long flags; | 574 | unsigned long flags; |
518 | spin_lock_irqsave(&octeon_irq_msi_lock, flags); | 575 | raw_spin_lock_irqsave(&octeon_irq_msi_lock, flags); |
519 | en = cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); | 576 | en = cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); |
520 | en |= 1ull << (irq - OCTEON_IRQ_MSI_BIT0); | 577 | en |= 1ull << (irq - OCTEON_IRQ_MSI_BIT0); |
521 | cvmx_write_csr(CVMX_PEXP_NPEI_MSI_ENB0, en); | 578 | cvmx_write_csr(CVMX_PEXP_NPEI_MSI_ENB0, en); |
522 | cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); | 579 | cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); |
523 | spin_unlock_irqrestore(&octeon_irq_msi_lock, flags); | 580 | raw_spin_unlock_irqrestore(&octeon_irq_msi_lock, flags); |
524 | } | 581 | } |
525 | } | 582 | } |
526 | 583 | ||
@@ -537,12 +594,12 @@ static void octeon_irq_msi_disable(unsigned int irq) | |||
537 | */ | 594 | */ |
538 | uint64_t en; | 595 | uint64_t en; |
539 | unsigned long flags; | 596 | unsigned long flags; |
540 | spin_lock_irqsave(&octeon_irq_msi_lock, flags); | 597 | raw_spin_lock_irqsave(&octeon_irq_msi_lock, flags); |
541 | en = cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); | 598 | en = cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); |
542 | en &= ~(1ull << (irq - OCTEON_IRQ_MSI_BIT0)); | 599 | en &= ~(1ull << (irq - OCTEON_IRQ_MSI_BIT0)); |
543 | cvmx_write_csr(CVMX_PEXP_NPEI_MSI_ENB0, en); | 600 | cvmx_write_csr(CVMX_PEXP_NPEI_MSI_ENB0, en); |
544 | cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); | 601 | cvmx_read_csr(CVMX_PEXP_NPEI_MSI_ENB0); |
545 | spin_unlock_irqrestore(&octeon_irq_msi_lock, flags); | 602 | raw_spin_unlock_irqrestore(&octeon_irq_msi_lock, flags); |
546 | } | 603 | } |
547 | } | 604 | } |
548 | 605 | ||
@@ -559,6 +616,7 @@ void __init arch_init_irq(void) | |||
559 | { | 616 | { |
560 | int irq; | 617 | int irq; |
561 | struct irq_chip *chip0; | 618 | struct irq_chip *chip0; |
619 | struct irq_chip *chip0_timer; | ||
562 | struct irq_chip *chip1; | 620 | struct irq_chip *chip1; |
563 | 621 | ||
564 | #ifdef CONFIG_SMP | 622 | #ifdef CONFIG_SMP |
@@ -574,9 +632,11 @@ void __init arch_init_irq(void) | |||
574 | OCTEON_IS_MODEL(OCTEON_CN56XX_PASS2_X) || | 632 | OCTEON_IS_MODEL(OCTEON_CN56XX_PASS2_X) || |
575 | OCTEON_IS_MODEL(OCTEON_CN52XX_PASS2_X)) { | 633 | OCTEON_IS_MODEL(OCTEON_CN52XX_PASS2_X)) { |
576 | chip0 = &octeon_irq_chip_ciu0_v2; | 634 | chip0 = &octeon_irq_chip_ciu0_v2; |
635 | chip0_timer = &octeon_irq_chip_ciu0_timer_v2; | ||
577 | chip1 = &octeon_irq_chip_ciu1_v2; | 636 | chip1 = &octeon_irq_chip_ciu1_v2; |
578 | } else { | 637 | } else { |
579 | chip0 = &octeon_irq_chip_ciu0; | 638 | chip0 = &octeon_irq_chip_ciu0; |
639 | chip0_timer = &octeon_irq_chip_ciu0_timer; | ||
580 | chip1 = &octeon_irq_chip_ciu1; | 640 | chip1 = &octeon_irq_chip_ciu1; |
581 | } | 641 | } |
582 | 642 | ||
@@ -590,7 +650,21 @@ void __init arch_init_irq(void) | |||
590 | 650 | ||
591 | /* 24 - 87 CIU_INT_SUM0 */ | 651 | /* 24 - 87 CIU_INT_SUM0 */ |
592 | for (irq = OCTEON_IRQ_WORKQ0; irq <= OCTEON_IRQ_BOOTDMA; irq++) { | 652 | for (irq = OCTEON_IRQ_WORKQ0; irq <= OCTEON_IRQ_BOOTDMA; irq++) { |
593 | set_irq_chip_and_handler(irq, chip0, handle_percpu_irq); | 653 | switch (irq) { |
654 | case OCTEON_IRQ_GMX_DRP0: | ||
655 | case OCTEON_IRQ_GMX_DRP1: | ||
656 | case OCTEON_IRQ_IPD_DRP: | ||
657 | case OCTEON_IRQ_KEY_ZERO: | ||
658 | case OCTEON_IRQ_TIMER0: | ||
659 | case OCTEON_IRQ_TIMER1: | ||
660 | case OCTEON_IRQ_TIMER2: | ||
661 | case OCTEON_IRQ_TIMER3: | ||
662 | set_irq_chip_and_handler(irq, chip0_timer, handle_percpu_irq); | ||
663 | break; | ||
664 | default: | ||
665 | set_irq_chip_and_handler(irq, chip0, handle_percpu_irq); | ||
666 | break; | ||
667 | } | ||
594 | } | 668 | } |
595 | 669 | ||
596 | /* 88 - 151 CIU_INT_SUM1 */ | 670 | /* 88 - 151 CIU_INT_SUM1 */ |
diff --git a/arch/mips/cavium-octeon/octeon-platform.c b/arch/mips/cavium-octeon/octeon-platform.c index be711dd2d918..62ac30eef5e8 100644 --- a/arch/mips/cavium-octeon/octeon-platform.c +++ b/arch/mips/cavium-octeon/octeon-platform.c | |||
@@ -9,6 +9,7 @@ | |||
9 | 9 | ||
10 | #include <linux/init.h> | 10 | #include <linux/init.h> |
11 | #include <linux/irq.h> | 11 | #include <linux/irq.h> |
12 | #include <linux/i2c.h> | ||
12 | #include <linux/module.h> | 13 | #include <linux/module.h> |
13 | #include <linux/platform_device.h> | 14 | #include <linux/platform_device.h> |
14 | 15 | ||
@@ -159,6 +160,178 @@ out: | |||
159 | } | 160 | } |
160 | device_initcall(octeon_rng_device_init); | 161 | device_initcall(octeon_rng_device_init); |
161 | 162 | ||
163 | static struct i2c_board_info __initdata octeon_i2c_devices[] = { | ||
164 | { | ||
165 | I2C_BOARD_INFO("ds1337", 0x68), | ||
166 | }, | ||
167 | }; | ||
168 | |||
169 | static int __init octeon_i2c_devices_init(void) | ||
170 | { | ||
171 | return i2c_register_board_info(0, octeon_i2c_devices, | ||
172 | ARRAY_SIZE(octeon_i2c_devices)); | ||
173 | } | ||
174 | arch_initcall(octeon_i2c_devices_init); | ||
175 | |||
176 | #define OCTEON_I2C_IO_BASE 0x1180000001000ull | ||
177 | #define OCTEON_I2C_IO_UNIT_OFFSET 0x200 | ||
178 | |||
179 | static struct octeon_i2c_data octeon_i2c_data[2]; | ||
180 | |||
181 | static int __init octeon_i2c_device_init(void) | ||
182 | { | ||
183 | struct platform_device *pd; | ||
184 | int ret = 0; | ||
185 | int port, num_ports; | ||
186 | |||
187 | struct resource i2c_resources[] = { | ||
188 | { | ||
189 | .flags = IORESOURCE_MEM, | ||
190 | }, { | ||
191 | .flags = IORESOURCE_IRQ, | ||
192 | } | ||
193 | }; | ||
194 | |||
195 | if (OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN52XX)) | ||
196 | num_ports = 2; | ||
197 | else | ||
198 | num_ports = 1; | ||
199 | |||
200 | for (port = 0; port < num_ports; port++) { | ||
201 | octeon_i2c_data[port].sys_freq = octeon_get_clock_rate(); | ||
202 | /*FIXME: should be examined. At the moment is set for 100Khz */ | ||
203 | octeon_i2c_data[port].i2c_freq = 100000; | ||
204 | |||
205 | pd = platform_device_alloc("i2c-octeon", port); | ||
206 | if (!pd) { | ||
207 | ret = -ENOMEM; | ||
208 | goto out; | ||
209 | } | ||
210 | |||
211 | pd->dev.platform_data = octeon_i2c_data + port; | ||
212 | |||
213 | i2c_resources[0].start = | ||
214 | OCTEON_I2C_IO_BASE + (port * OCTEON_I2C_IO_UNIT_OFFSET); | ||
215 | i2c_resources[0].end = i2c_resources[0].start + 0x1f; | ||
216 | switch (port) { | ||
217 | case 0: | ||
218 | i2c_resources[1].start = OCTEON_IRQ_TWSI; | ||
219 | i2c_resources[1].end = OCTEON_IRQ_TWSI; | ||
220 | break; | ||
221 | case 1: | ||
222 | i2c_resources[1].start = OCTEON_IRQ_TWSI2; | ||
223 | i2c_resources[1].end = OCTEON_IRQ_TWSI2; | ||
224 | break; | ||
225 | default: | ||
226 | BUG(); | ||
227 | } | ||
228 | |||
229 | ret = platform_device_add_resources(pd, | ||
230 | i2c_resources, | ||
231 | ARRAY_SIZE(i2c_resources)); | ||
232 | if (ret) | ||
233 | goto fail; | ||
234 | |||
235 | ret = platform_device_add(pd); | ||
236 | if (ret) | ||
237 | goto fail; | ||
238 | } | ||
239 | return ret; | ||
240 | fail: | ||
241 | platform_device_put(pd); | ||
242 | out: | ||
243 | return ret; | ||
244 | } | ||
245 | device_initcall(octeon_i2c_device_init); | ||
246 | |||
247 | /* Octeon SMI/MDIO interface. */ | ||
248 | static int __init octeon_mdiobus_device_init(void) | ||
249 | { | ||
250 | struct platform_device *pd; | ||
251 | int ret = 0; | ||
252 | |||
253 | if (octeon_is_simulation()) | ||
254 | return 0; /* No mdio in the simulator. */ | ||
255 | |||
256 | /* The bus number is the platform_device id. */ | ||
257 | pd = platform_device_alloc("mdio-octeon", 0); | ||
258 | if (!pd) { | ||
259 | ret = -ENOMEM; | ||
260 | goto out; | ||
261 | } | ||
262 | |||
263 | ret = platform_device_add(pd); | ||
264 | if (ret) | ||
265 | goto fail; | ||
266 | |||
267 | return ret; | ||
268 | fail: | ||
269 | platform_device_put(pd); | ||
270 | |||
271 | out: | ||
272 | return ret; | ||
273 | |||
274 | } | ||
275 | device_initcall(octeon_mdiobus_device_init); | ||
276 | |||
277 | /* Octeon mgmt port Ethernet interface. */ | ||
278 | static int __init octeon_mgmt_device_init(void) | ||
279 | { | ||
280 | struct platform_device *pd; | ||
281 | int ret = 0; | ||
282 | int port, num_ports; | ||
283 | |||
284 | struct resource mgmt_port_resource = { | ||
285 | .flags = IORESOURCE_IRQ, | ||
286 | .start = -1, | ||
287 | .end = -1 | ||
288 | }; | ||
289 | |||
290 | if (!OCTEON_IS_MODEL(OCTEON_CN56XX) && !OCTEON_IS_MODEL(OCTEON_CN52XX)) | ||
291 | return 0; | ||
292 | |||
293 | if (OCTEON_IS_MODEL(OCTEON_CN56XX)) | ||
294 | num_ports = 1; | ||
295 | else | ||
296 | num_ports = 2; | ||
297 | |||
298 | for (port = 0; port < num_ports; port++) { | ||
299 | pd = platform_device_alloc("octeon_mgmt", port); | ||
300 | if (!pd) { | ||
301 | ret = -ENOMEM; | ||
302 | goto out; | ||
303 | } | ||
304 | switch (port) { | ||
305 | case 0: | ||
306 | mgmt_port_resource.start = OCTEON_IRQ_MII0; | ||
307 | break; | ||
308 | case 1: | ||
309 | mgmt_port_resource.start = OCTEON_IRQ_MII1; | ||
310 | break; | ||
311 | default: | ||
312 | BUG(); | ||
313 | } | ||
314 | mgmt_port_resource.end = mgmt_port_resource.start; | ||
315 | |||
316 | ret = platform_device_add_resources(pd, &mgmt_port_resource, 1); | ||
317 | |||
318 | if (ret) | ||
319 | goto fail; | ||
320 | |||
321 | ret = platform_device_add(pd); | ||
322 | if (ret) | ||
323 | goto fail; | ||
324 | } | ||
325 | return ret; | ||
326 | fail: | ||
327 | platform_device_put(pd); | ||
328 | |||
329 | out: | ||
330 | return ret; | ||
331 | |||
332 | } | ||
333 | device_initcall(octeon_mgmt_device_init); | ||
334 | |||
162 | MODULE_AUTHOR("David Daney <ddaney@caviumnetworks.com>"); | 335 | MODULE_AUTHOR("David Daney <ddaney@caviumnetworks.com>"); |
163 | MODULE_LICENSE("GPL"); | 336 | MODULE_LICENSE("GPL"); |
164 | MODULE_DESCRIPTION("Platform driver for Octeon SOC"); | 337 | MODULE_DESCRIPTION("Platform driver for Octeon SOC"); |
diff --git a/arch/mips/cavium-octeon/setup.c b/arch/mips/cavium-octeon/setup.c index b321d3b16877..9a06fa9f9f0c 100644 --- a/arch/mips/cavium-octeon/setup.c +++ b/arch/mips/cavium-octeon/setup.c | |||
@@ -45,9 +45,6 @@ extern struct plat_smp_ops octeon_smp_ops; | |||
45 | extern void pci_console_init(const char *arg); | 45 | extern void pci_console_init(const char *arg); |
46 | #endif | 46 | #endif |
47 | 47 | ||
48 | #ifdef CONFIG_CAVIUM_RESERVE32 | ||
49 | extern uint64_t octeon_reserve32_memory; | ||
50 | #endif | ||
51 | static unsigned long long MAX_MEMORY = 512ull << 20; | 48 | static unsigned long long MAX_MEMORY = 512ull << 20; |
52 | 49 | ||
53 | struct octeon_boot_descriptor *octeon_boot_desc_ptr; | 50 | struct octeon_boot_descriptor *octeon_boot_desc_ptr; |
@@ -186,54 +183,6 @@ void octeon_check_cpu_bist(void) | |||
186 | write_octeon_c0_dcacheerr(0); | 183 | write_octeon_c0_dcacheerr(0); |
187 | } | 184 | } |
188 | 185 | ||
189 | #ifdef CONFIG_CAVIUM_RESERVE32_USE_WIRED_TLB | ||
190 | /** | ||
191 | * Called on every core to setup the wired tlb entry needed | ||
192 | * if CONFIG_CAVIUM_RESERVE32_USE_WIRED_TLB is set. | ||
193 | * | ||
194 | */ | ||
195 | static void octeon_hal_setup_per_cpu_reserved32(void *unused) | ||
196 | { | ||
197 | /* | ||
198 | * The config has selected to wire the reserve32 memory for all | ||
199 | * userspace applications. We need to put a wired TLB entry in for each | ||
200 | * 512MB of reserve32 memory. We only handle double 256MB pages here, | ||
201 | * so reserve32 must be multiple of 512MB. | ||
202 | */ | ||
203 | uint32_t size = CONFIG_CAVIUM_RESERVE32; | ||
204 | uint32_t entrylo0 = | ||
205 | 0x7 | ((octeon_reserve32_memory & ((1ul << 40) - 1)) >> 6); | ||
206 | uint32_t entrylo1 = entrylo0 + (256 << 14); | ||
207 | uint32_t entryhi = (0x80000000UL - (CONFIG_CAVIUM_RESERVE32 << 20)); | ||
208 | while (size >= 512) { | ||
209 | #if 0 | ||
210 | pr_info("CPU%d: Adding double wired TLB entry for 0x%lx\n", | ||
211 | smp_processor_id(), entryhi); | ||
212 | #endif | ||
213 | add_wired_entry(entrylo0, entrylo1, entryhi, PM_256M); | ||
214 | entrylo0 += 512 << 14; | ||
215 | entrylo1 += 512 << 14; | ||
216 | entryhi += 512 << 20; | ||
217 | size -= 512; | ||
218 | } | ||
219 | } | ||
220 | #endif /* CONFIG_CAVIUM_RESERVE32_USE_WIRED_TLB */ | ||
221 | |||
222 | /** | ||
223 | * Called to release the named block which was used to made sure | ||
224 | * that nobody used the memory for something else during | ||
225 | * init. Now we'll free it so userspace apps can use this | ||
226 | * memory region with bootmem_alloc. | ||
227 | * | ||
228 | * This function is called only once from prom_free_prom_memory(). | ||
229 | */ | ||
230 | void octeon_hal_setup_reserved32(void) | ||
231 | { | ||
232 | #ifdef CONFIG_CAVIUM_RESERVE32_USE_WIRED_TLB | ||
233 | on_each_cpu(octeon_hal_setup_per_cpu_reserved32, NULL, 0, 1); | ||
234 | #endif | ||
235 | } | ||
236 | |||
237 | /** | 186 | /** |
238 | * Reboot Octeon | 187 | * Reboot Octeon |
239 | * | 188 | * |
@@ -294,18 +243,6 @@ static void octeon_halt(void) | |||
294 | octeon_kill_core(NULL); | 243 | octeon_kill_core(NULL); |
295 | } | 244 | } |
296 | 245 | ||
297 | #if 0 | ||
298 | /** | ||
299 | * Platform time init specifics. | ||
300 | * Returns | ||
301 | */ | ||
302 | void __init plat_time_init(void) | ||
303 | { | ||
304 | /* Nothing special here, but we are required to have one */ | ||
305 | } | ||
306 | |||
307 | #endif | ||
308 | |||
309 | /** | 246 | /** |
310 | * Handle all the error condition interrupts that might occur. | 247 | * Handle all the error condition interrupts that might occur. |
311 | * | 248 | * |
@@ -502,25 +439,13 @@ void __init prom_init(void) | |||
502 | * memory when it is getting memory from the | 439 | * memory when it is getting memory from the |
503 | * bootloader. Later, after the memory allocations are | 440 | * bootloader. Later, after the memory allocations are |
504 | * complete, the reserve32 will be freed. | 441 | * complete, the reserve32 will be freed. |
505 | */ | 442 | * |
506 | #ifdef CONFIG_CAVIUM_RESERVE32_USE_WIRED_TLB | ||
507 | if (CONFIG_CAVIUM_RESERVE32 & 0x1ff) | ||
508 | pr_err("CAVIUM_RESERVE32 isn't a multiple of 512MB. " | ||
509 | "This is required if CAVIUM_RESERVE32_USE_WIRED_TLB " | ||
510 | "is set\n"); | ||
511 | else | ||
512 | addr = cvmx_bootmem_phy_named_block_alloc(CONFIG_CAVIUM_RESERVE32 << 20, | ||
513 | 0, 0, 512 << 20, | ||
514 | "CAVIUM_RESERVE32", 0); | ||
515 | #else | ||
516 | /* | ||
517 | * Allocate memory for RESERVED32 aligned on 2MB boundary. This | 443 | * Allocate memory for RESERVED32 aligned on 2MB boundary. This |
518 | * is in case we later use hugetlb entries with it. | 444 | * is in case we later use hugetlb entries with it. |
519 | */ | 445 | */ |
520 | addr = cvmx_bootmem_phy_named_block_alloc(CONFIG_CAVIUM_RESERVE32 << 20, | 446 | addr = cvmx_bootmem_phy_named_block_alloc(CONFIG_CAVIUM_RESERVE32 << 20, |
521 | 0, 0, 2 << 20, | 447 | 0, 0, 2 << 20, |
522 | "CAVIUM_RESERVE32", 0); | 448 | "CAVIUM_RESERVE32", 0); |
523 | #endif | ||
524 | if (addr < 0) | 449 | if (addr < 0) |
525 | pr_err("Failed to allocate CAVIUM_RESERVE32 memory area\n"); | 450 | pr_err("Failed to allocate CAVIUM_RESERVE32 memory area\n"); |
526 | else | 451 | else |
@@ -817,9 +742,4 @@ void prom_free_prom_memory(void) | |||
817 | panic("Unable to request_irq(OCTEON_IRQ_RML)\n"); | 742 | panic("Unable to request_irq(OCTEON_IRQ_RML)\n"); |
818 | } | 743 | } |
819 | #endif | 744 | #endif |
820 | |||
821 | /* This call is here so that it is performed after any TLB | ||
822 | initializations. It needs to be after these in case the | ||
823 | CONFIG_CAVIUM_RESERVE32_USE_WIRED_TLB option is set */ | ||
824 | octeon_hal_setup_reserved32(); | ||
825 | } | 745 | } |
diff --git a/arch/mips/cavium-octeon/smp.c b/arch/mips/cavium-octeon/smp.c index c198efdf583e..6d99b9d8887d 100644 --- a/arch/mips/cavium-octeon/smp.c +++ b/arch/mips/cavium-octeon/smp.c | |||
@@ -279,14 +279,6 @@ static void octeon_cpu_die(unsigned int cpu) | |||
279 | uint32_t avail_coremask; | 279 | uint32_t avail_coremask; |
280 | struct cvmx_bootmem_named_block_desc *block_desc; | 280 | struct cvmx_bootmem_named_block_desc *block_desc; |
281 | 281 | ||
282 | #ifdef CONFIG_CAVIUM_OCTEON_WATCHDOG | ||
283 | /* Disable the watchdog */ | ||
284 | cvmx_ciu_wdogx_t ciu_wdog; | ||
285 | ciu_wdog.u64 = cvmx_read_csr(CVMX_CIU_WDOGX(cpu)); | ||
286 | ciu_wdog.s.mode = 0; | ||
287 | cvmx_write_csr(CVMX_CIU_WDOGX(cpu), ciu_wdog.u64); | ||
288 | #endif | ||
289 | |||
290 | while (per_cpu(cpu_state, cpu) != CPU_DEAD) | 282 | while (per_cpu(cpu_state, cpu) != CPU_DEAD) |
291 | cpu_relax(); | 283 | cpu_relax(); |
292 | 284 | ||
@@ -327,7 +319,7 @@ static void octeon_cpu_die(unsigned int cpu) | |||
327 | avail_coremask); | 319 | avail_coremask); |
328 | } | 320 | } |
329 | 321 | ||
330 | pr_info("Reset core %d. Available Coremask = %x \n", coreid, | 322 | pr_info("Reset core %d. Available Coremask = %x\n", coreid, |
331 | avail_coremask); | 323 | avail_coremask); |
332 | cvmx_write_csr(CVMX_CIU_PP_RST, 1 << coreid); | 324 | cvmx_write_csr(CVMX_CIU_PP_RST, 1 << coreid); |
333 | cvmx_write_csr(CVMX_CIU_PP_RST, 0); | 325 | cvmx_write_csr(CVMX_CIU_PP_RST, 0); |
diff --git a/arch/mips/cobalt/pci.c b/arch/mips/cobalt/pci.c index cfce7af1bca9..85ec9cc31d66 100644 --- a/arch/mips/cobalt/pci.c +++ b/arch/mips/cobalt/pci.c | |||
@@ -25,7 +25,7 @@ static struct resource cobalt_mem_resource = { | |||
25 | 25 | ||
26 | static struct resource cobalt_io_resource = { | 26 | static struct resource cobalt_io_resource = { |
27 | .start = 0x1000, | 27 | .start = 0x1000, |
28 | .end = GT_DEF_PCI0_IO_SIZE - 1, | 28 | .end = 0xffffffUL, |
29 | .name = "PCI I/O", | 29 | .name = "PCI I/O", |
30 | .flags = IORESOURCE_IO, | 30 | .flags = IORESOURCE_IO, |
31 | }; | 31 | }; |
diff --git a/arch/mips/cobalt/setup.c b/arch/mips/cobalt/setup.c index b51644227241..ec3b2c417f7c 100644 --- a/arch/mips/cobalt/setup.c +++ b/arch/mips/cobalt/setup.c | |||
@@ -97,26 +97,18 @@ void __init plat_mem_setup(void) | |||
97 | 97 | ||
98 | void __init prom_init(void) | 98 | void __init prom_init(void) |
99 | { | 99 | { |
100 | int narg, indx, posn, nchr; | ||
101 | unsigned long memsz; | 100 | unsigned long memsz; |
101 | int argc, i; | ||
102 | char **argv; | 102 | char **argv; |
103 | 103 | ||
104 | memsz = fw_arg0 & 0x7fff0000; | 104 | memsz = fw_arg0 & 0x7fff0000; |
105 | narg = fw_arg0 & 0x0000ffff; | 105 | argc = fw_arg0 & 0x0000ffff; |
106 | 106 | argv = (char **)fw_arg1; | |
107 | if (narg) { | 107 | |
108 | arcs_cmdline[0] = '\0'; | 108 | for (i = 1; i < argc; i++) { |
109 | argv = (char **) fw_arg1; | 109 | strlcat(arcs_cmdline, argv[i], COMMAND_LINE_SIZE); |
110 | posn = 0; | 110 | if (i < (argc - 1)) |
111 | for (indx = 1; indx < narg; ++indx) { | 111 | strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE); |
112 | nchr = strlen(argv[indx]); | ||
113 | if (posn + 1 + nchr + 1 > sizeof(arcs_cmdline)) | ||
114 | break; | ||
115 | if (posn) | ||
116 | arcs_cmdline[posn++] = ' '; | ||
117 | strcpy(arcs_cmdline + posn, argv[indx]); | ||
118 | posn += nchr; | ||
119 | } | ||
120 | } | 112 | } |
121 | 113 | ||
122 | add_memory_region(0x0, memsz, BOOT_MEM_RAM); | 114 | add_memory_region(0x0, memsz, BOOT_MEM_RAM); |
diff --git a/arch/mips/configs/ar7_defconfig b/arch/mips/configs/ar7_defconfig index 35648302f7cc..5a5b6ba7514e 100644 --- a/arch/mips/configs/ar7_defconfig +++ b/arch/mips/configs/ar7_defconfig | |||
@@ -10,7 +10,6 @@ CONFIG_MIPS=y | |||
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | CONFIG_AR7=y | 12 | CONFIG_AR7=y |
13 | # CONFIG_BASLER_EXCITE is not set | ||
14 | # CONFIG_BCM47XX is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_COBALT is not set | 14 | # CONFIG_MIPS_COBALT is not set |
16 | # CONFIG_MACH_DECSTATION is not set | 15 | # CONFIG_MACH_DECSTATION is not set |
@@ -265,7 +264,6 @@ CONFIG_DEFAULT_DEADLINE=y | |||
265 | # CONFIG_DEFAULT_CFQ is not set | 264 | # CONFIG_DEFAULT_CFQ is not set |
266 | # CONFIG_DEFAULT_NOOP is not set | 265 | # CONFIG_DEFAULT_NOOP is not set |
267 | CONFIG_DEFAULT_IOSCHED="deadline" | 266 | CONFIG_DEFAULT_IOSCHED="deadline" |
268 | CONFIG_PROBE_INITRD_HEADER=y | ||
269 | # CONFIG_FREEZER is not set | 267 | # CONFIG_FREEZER is not set |
270 | 268 | ||
271 | # | 269 | # |
@@ -1053,7 +1051,9 @@ CONFIG_TRACING_SUPPORT=y | |||
1053 | # CONFIG_DYNAMIC_DEBUG is not set | 1051 | # CONFIG_DYNAMIC_DEBUG is not set |
1054 | # CONFIG_SAMPLES is not set | 1052 | # CONFIG_SAMPLES is not set |
1055 | CONFIG_HAVE_ARCH_KGDB=y | 1053 | CONFIG_HAVE_ARCH_KGDB=y |
1054 | CONFIG_CMDLINE_BOOL=y | ||
1056 | CONFIG_CMDLINE="rootfstype=squashfs,jffs2" | 1055 | CONFIG_CMDLINE="rootfstype=squashfs,jffs2" |
1056 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1057 | 1057 | ||
1058 | # | 1058 | # |
1059 | # Security options | 1059 | # Security options |
diff --git a/arch/mips/configs/bcm47xx_defconfig b/arch/mips/configs/bcm47xx_defconfig index 94b7d57f906d..267bd46120bc 100644 --- a/arch/mips/configs/bcm47xx_defconfig +++ b/arch/mips/configs/bcm47xx_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | CONFIG_BCM47XX=y | 12 | CONFIG_BCM47XX=y |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -1853,7 +1852,7 @@ CONFIG_DEBUG_FS=y | |||
1853 | # CONFIG_HEADERS_CHECK is not set | 1852 | # CONFIG_HEADERS_CHECK is not set |
1854 | # CONFIG_DEBUG_KERNEL is not set | 1853 | # CONFIG_DEBUG_KERNEL is not set |
1855 | # CONFIG_SAMPLES is not set | 1854 | # CONFIG_SAMPLES is not set |
1856 | CONFIG_CMDLINE="" | 1855 | # CONFIG_CMDLINE_BOOL is not set |
1857 | 1856 | ||
1858 | # | 1857 | # |
1859 | # Security options | 1858 | # Security options |
diff --git a/arch/mips/configs/bcm63xx_defconfig b/arch/mips/configs/bcm63xx_defconfig index ea00c18d1f7b..6389ca0fdc6c 100644 --- a/arch/mips/configs/bcm63xx_defconfig +++ b/arch/mips/configs/bcm63xx_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.30-rc6 | 3 | # Linux kernel version: 2.6.34-rc2 |
4 | # Sun May 31 20:17:18 2009 | 4 | # Tue Mar 23 10:36:32 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
@@ -9,14 +9,14 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | 12 | # CONFIG_AR7 is not set |
13 | # CONFIG_BCM47XX is not set | 13 | # CONFIG_BCM47XX is not set |
14 | CONFIG_BCM63XX=y | 14 | CONFIG_BCM63XX=y |
15 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
16 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
17 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | 18 | # CONFIG_LASAT is not set |
19 | # CONFIG_LEMOTE_FULONG is not set | 19 | # CONFIG_MACH_LOONGSON is not set |
20 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
21 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
22 | # CONFIG_NEC_MARKEINS is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
@@ -27,6 +27,7 @@ CONFIG_BCM63XX=y | |||
27 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
28 | # CONFIG_PMC_MSP is not set | 28 | # CONFIG_PMC_MSP is not set |
29 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
30 | # CONFIG_POWERTV is not set | ||
30 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
31 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
32 | # CONFIG_SGI_IP28 is not set | 33 | # CONFIG_SGI_IP28 is not set |
@@ -46,13 +47,17 @@ CONFIG_BCM63XX=y | |||
46 | # CONFIG_WR_PPMC is not set | 47 | # CONFIG_WR_PPMC is not set |
47 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | 48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set |
48 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | 49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set |
50 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
49 | 51 | ||
50 | # | 52 | # |
51 | # CPU support | 53 | # CPU support |
52 | # | 54 | # |
55 | CONFIG_BCM63XX_CPU_6338=y | ||
56 | CONFIG_BCM63XX_CPU_6345=y | ||
53 | CONFIG_BCM63XX_CPU_6348=y | 57 | CONFIG_BCM63XX_CPU_6348=y |
54 | CONFIG_BCM63XX_CPU_6358=y | 58 | CONFIG_BCM63XX_CPU_6358=y |
55 | CONFIG_BOARD_BCM963XX=y | 59 | CONFIG_BOARD_BCM963XX=y |
60 | CONFIG_LOONGSON_UART_BASE=y | ||
56 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 61 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
57 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 62 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
58 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 63 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
@@ -70,10 +75,8 @@ CONFIG_CEVT_R4K=y | |||
70 | CONFIG_CSRC_R4K_LIB=y | 75 | CONFIG_CSRC_R4K_LIB=y |
71 | CONFIG_CSRC_R4K=y | 76 | CONFIG_CSRC_R4K=y |
72 | CONFIG_DMA_NONCOHERENT=y | 77 | CONFIG_DMA_NONCOHERENT=y |
73 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 78 | CONFIG_NEED_DMA_MAP_STATE=y |
74 | CONFIG_EARLY_PRINTK=y | ||
75 | CONFIG_SYS_HAS_EARLY_PRINTK=y | 79 | CONFIG_SYS_HAS_EARLY_PRINTK=y |
76 | # CONFIG_HOTPLUG_CPU is not set | ||
77 | # CONFIG_NO_IOPORT is not set | 80 | # CONFIG_NO_IOPORT is not set |
78 | CONFIG_GENERIC_GPIO=y | 81 | CONFIG_GENERIC_GPIO=y |
79 | CONFIG_CPU_BIG_ENDIAN=y | 82 | CONFIG_CPU_BIG_ENDIAN=y |
@@ -86,7 +89,8 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5 | |||
86 | # | 89 | # |
87 | # CPU selection | 90 | # CPU selection |
88 | # | 91 | # |
89 | # CONFIG_CPU_LOONGSON2 is not set | 92 | # CONFIG_CPU_LOONGSON2E is not set |
93 | # CONFIG_CPU_LOONGSON2F is not set | ||
90 | CONFIG_CPU_MIPS32_R1=y | 94 | CONFIG_CPU_MIPS32_R1=y |
91 | # CONFIG_CPU_MIPS32_R2 is not set | 95 | # CONFIG_CPU_MIPS32_R2 is not set |
92 | # CONFIG_CPU_MIPS64_R1 is not set | 96 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -129,7 +133,7 @@ CONFIG_CPU_HAS_PREFETCH=y | |||
129 | CONFIG_MIPS_MT_DISABLED=y | 133 | CONFIG_MIPS_MT_DISABLED=y |
130 | # CONFIG_MIPS_MT_SMP is not set | 134 | # CONFIG_MIPS_MT_SMP is not set |
131 | # CONFIG_MIPS_MT_SMTC is not set | 135 | # CONFIG_MIPS_MT_SMTC is not set |
132 | CONFIG_CPU_HAS_LLSC=y | 136 | # CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set |
133 | CONFIG_CPU_HAS_SYNC=y | 137 | CONFIG_CPU_HAS_SYNC=y |
134 | CONFIG_GENERIC_HARDIRQS=y | 138 | CONFIG_GENERIC_HARDIRQS=y |
135 | CONFIG_GENERIC_IRQ_PROBE=y | 139 | CONFIG_GENERIC_IRQ_PROBE=y |
@@ -147,9 +151,8 @@ CONFIG_SPLIT_PTLOCK_CPUS=4 | |||
147 | # CONFIG_PHYS_ADDR_T_64BIT is not set | 151 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
148 | CONFIG_ZONE_DMA_FLAG=0 | 152 | CONFIG_ZONE_DMA_FLAG=0 |
149 | CONFIG_VIRT_TO_BUS=y | 153 | CONFIG_VIRT_TO_BUS=y |
150 | CONFIG_UNEVICTABLE_LRU=y | 154 | # CONFIG_KSM is not set |
151 | CONFIG_HAVE_MLOCK=y | 155 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 |
152 | CONFIG_HAVE_MLOCKED_PAGE_BIT=y | ||
153 | CONFIG_TICK_ONESHOT=y | 156 | CONFIG_TICK_ONESHOT=y |
154 | CONFIG_NO_HZ=y | 157 | CONFIG_NO_HZ=y |
155 | # CONFIG_HIGH_RES_TIMERS is not set | 158 | # CONFIG_HIGH_RES_TIMERS is not set |
@@ -171,6 +174,7 @@ CONFIG_PREEMPT_NONE=y | |||
171 | CONFIG_LOCKDEP_SUPPORT=y | 174 | CONFIG_LOCKDEP_SUPPORT=y |
172 | CONFIG_STACKTRACE_SUPPORT=y | 175 | CONFIG_STACKTRACE_SUPPORT=y |
173 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 176 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
177 | CONFIG_CONSTRUCTORS=y | ||
174 | 178 | ||
175 | # | 179 | # |
176 | # General setup | 180 | # General setup |
@@ -190,15 +194,12 @@ CONFIG_LOCALVERSION="" | |||
190 | # | 194 | # |
191 | # RCU Subsystem | 195 | # RCU Subsystem |
192 | # | 196 | # |
193 | CONFIG_CLASSIC_RCU=y | ||
194 | # CONFIG_TREE_RCU is not set | 197 | # CONFIG_TREE_RCU is not set |
195 | # CONFIG_PREEMPT_RCU is not set | 198 | # CONFIG_TREE_PREEMPT_RCU is not set |
199 | CONFIG_TINY_RCU=y | ||
196 | # CONFIG_TREE_RCU_TRACE is not set | 200 | # CONFIG_TREE_RCU_TRACE is not set |
197 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
198 | # CONFIG_IKCONFIG is not set | 201 | # CONFIG_IKCONFIG is not set |
199 | CONFIG_LOG_BUF_SHIFT=17 | 202 | CONFIG_LOG_BUF_SHIFT=17 |
200 | # CONFIG_GROUP_SCHED is not set | ||
201 | # CONFIG_CGROUPS is not set | ||
202 | CONFIG_SYSFS_DEPRECATED=y | 203 | CONFIG_SYSFS_DEPRECATED=y |
203 | CONFIG_SYSFS_DEPRECATED_V2=y | 204 | CONFIG_SYSFS_DEPRECATED_V2=y |
204 | # CONFIG_RELAY is not set | 205 | # CONFIG_RELAY is not set |
@@ -206,11 +207,11 @@ CONFIG_SYSFS_DEPRECATED_V2=y | |||
206 | # CONFIG_BLK_DEV_INITRD is not set | 207 | # CONFIG_BLK_DEV_INITRD is not set |
207 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 208 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
208 | CONFIG_SYSCTL=y | 209 | CONFIG_SYSCTL=y |
210 | CONFIG_ANON_INODES=y | ||
209 | CONFIG_EMBEDDED=y | 211 | CONFIG_EMBEDDED=y |
210 | CONFIG_SYSCTL_SYSCALL=y | 212 | CONFIG_SYSCTL_SYSCALL=y |
211 | CONFIG_KALLSYMS=y | 213 | CONFIG_KALLSYMS=y |
212 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 214 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
213 | # CONFIG_STRIP_ASM_SYMS is not set | ||
214 | CONFIG_HOTPLUG=y | 215 | CONFIG_HOTPLUG=y |
215 | CONFIG_PRINTK=y | 216 | CONFIG_PRINTK=y |
216 | CONFIG_BUG=y | 217 | CONFIG_BUG=y |
@@ -224,6 +225,10 @@ CONFIG_BASE_FULL=y | |||
224 | # CONFIG_EVENTFD is not set | 225 | # CONFIG_EVENTFD is not set |
225 | # CONFIG_SHMEM is not set | 226 | # CONFIG_SHMEM is not set |
226 | # CONFIG_AIO is not set | 227 | # CONFIG_AIO is not set |
228 | |||
229 | # | ||
230 | # Kernel Performance Events And Counters | ||
231 | # | ||
227 | # CONFIG_VM_EVENT_COUNTERS is not set | 232 | # CONFIG_VM_EVENT_COUNTERS is not set |
228 | CONFIG_PCI_QUIRKS=y | 233 | CONFIG_PCI_QUIRKS=y |
229 | # CONFIG_SLUB_DEBUG is not set | 234 | # CONFIG_SLUB_DEBUG is not set |
@@ -232,14 +237,17 @@ CONFIG_COMPAT_BRK=y | |||
232 | CONFIG_SLUB=y | 237 | CONFIG_SLUB=y |
233 | # CONFIG_SLOB is not set | 238 | # CONFIG_SLOB is not set |
234 | # CONFIG_PROFILING is not set | 239 | # CONFIG_PROFILING is not set |
235 | # CONFIG_MARKERS is not set | ||
236 | CONFIG_HAVE_OPROFILE=y | 240 | CONFIG_HAVE_OPROFILE=y |
241 | |||
242 | # | ||
243 | # GCOV-based kernel profiling | ||
244 | # | ||
237 | # CONFIG_SLOW_WORK is not set | 245 | # CONFIG_SLOW_WORK is not set |
238 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | 246 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y |
239 | CONFIG_BASE_SMALL=0 | 247 | CONFIG_BASE_SMALL=0 |
240 | # CONFIG_MODULES is not set | 248 | # CONFIG_MODULES is not set |
241 | CONFIG_BLOCK=y | 249 | CONFIG_BLOCK=y |
242 | # CONFIG_LBD is not set | 250 | CONFIG_LBDAF=y |
243 | # CONFIG_BLK_DEV_BSG is not set | 251 | # CONFIG_BLK_DEV_BSG is not set |
244 | # CONFIG_BLK_DEV_INTEGRITY is not set | 252 | # CONFIG_BLK_DEV_INTEGRITY is not set |
245 | 253 | ||
@@ -247,14 +255,41 @@ CONFIG_BLOCK=y | |||
247 | # IO Schedulers | 255 | # IO Schedulers |
248 | # | 256 | # |
249 | CONFIG_IOSCHED_NOOP=y | 257 | CONFIG_IOSCHED_NOOP=y |
250 | # CONFIG_IOSCHED_AS is not set | ||
251 | # CONFIG_IOSCHED_DEADLINE is not set | 258 | # CONFIG_IOSCHED_DEADLINE is not set |
252 | # CONFIG_IOSCHED_CFQ is not set | 259 | # CONFIG_IOSCHED_CFQ is not set |
253 | # CONFIG_DEFAULT_AS is not set | ||
254 | # CONFIG_DEFAULT_DEADLINE is not set | 260 | # CONFIG_DEFAULT_DEADLINE is not set |
255 | # CONFIG_DEFAULT_CFQ is not set | 261 | # CONFIG_DEFAULT_CFQ is not set |
256 | CONFIG_DEFAULT_NOOP=y | 262 | CONFIG_DEFAULT_NOOP=y |
257 | CONFIG_DEFAULT_IOSCHED="noop" | 263 | CONFIG_DEFAULT_IOSCHED="noop" |
264 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
265 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
266 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
267 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
268 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
269 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
270 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
271 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
272 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
273 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
274 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
275 | # CONFIG_INLINE_READ_LOCK is not set | ||
276 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
277 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
278 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
279 | CONFIG_INLINE_READ_UNLOCK=y | ||
280 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
281 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
282 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
283 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
284 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
285 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
286 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
287 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
288 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
289 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
290 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
291 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
292 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
258 | # CONFIG_FREEZER is not set | 293 | # CONFIG_FREEZER is not set |
259 | 294 | ||
260 | # | 295 | # |
@@ -264,15 +299,12 @@ CONFIG_HW_HAS_PCI=y | |||
264 | CONFIG_PCI=y | 299 | CONFIG_PCI=y |
265 | CONFIG_PCI_DOMAINS=y | 300 | CONFIG_PCI_DOMAINS=y |
266 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 301 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
267 | # CONFIG_PCI_LEGACY is not set | ||
268 | # CONFIG_PCI_STUB is not set | 302 | # CONFIG_PCI_STUB is not set |
269 | # CONFIG_PCI_IOV is not set | 303 | # CONFIG_PCI_IOV is not set |
270 | CONFIG_MMU=y | 304 | CONFIG_MMU=y |
271 | CONFIG_PCCARD=y | 305 | CONFIG_PCCARD=y |
272 | # CONFIG_PCMCIA_DEBUG is not set | ||
273 | CONFIG_PCMCIA=y | 306 | CONFIG_PCMCIA=y |
274 | CONFIG_PCMCIA_LOAD_CIS=y | 307 | CONFIG_PCMCIA_LOAD_CIS=y |
275 | CONFIG_PCMCIA_IOCTL=y | ||
276 | CONFIG_CARDBUS=y | 308 | CONFIG_CARDBUS=y |
277 | 309 | ||
278 | # | 310 | # |
@@ -296,6 +328,7 @@ CONFIG_TRAD_SIGNALS=y | |||
296 | # | 328 | # |
297 | # Power management options | 329 | # Power management options |
298 | # | 330 | # |
331 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y | ||
299 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | 332 | CONFIG_ARCH_SUSPEND_POSSIBLE=y |
300 | # CONFIG_PM is not set | 333 | # CONFIG_PM is not set |
301 | CONFIG_NET=y | 334 | CONFIG_NET=y |
@@ -334,6 +367,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
334 | # CONFIG_NETFILTER is not set | 367 | # CONFIG_NETFILTER is not set |
335 | # CONFIG_IP_DCCP is not set | 368 | # CONFIG_IP_DCCP is not set |
336 | # CONFIG_IP_SCTP is not set | 369 | # CONFIG_IP_SCTP is not set |
370 | # CONFIG_RDS is not set | ||
337 | # CONFIG_TIPC is not set | 371 | # CONFIG_TIPC is not set |
338 | # CONFIG_ATM is not set | 372 | # CONFIG_ATM is not set |
339 | # CONFIG_BRIDGE is not set | 373 | # CONFIG_BRIDGE is not set |
@@ -348,6 +382,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
348 | # CONFIG_ECONET is not set | 382 | # CONFIG_ECONET is not set |
349 | # CONFIG_WAN_ROUTER is not set | 383 | # CONFIG_WAN_ROUTER is not set |
350 | # CONFIG_PHONET is not set | 384 | # CONFIG_PHONET is not set |
385 | # CONFIG_IEEE802154 is not set | ||
351 | # CONFIG_NET_SCHED is not set | 386 | # CONFIG_NET_SCHED is not set |
352 | # CONFIG_DCB is not set | 387 | # CONFIG_DCB is not set |
353 | 388 | ||
@@ -360,7 +395,27 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
360 | # CONFIG_IRDA is not set | 395 | # CONFIG_IRDA is not set |
361 | # CONFIG_BT is not set | 396 | # CONFIG_BT is not set |
362 | # CONFIG_AF_RXRPC is not set | 397 | # CONFIG_AF_RXRPC is not set |
363 | # CONFIG_WIRELESS is not set | 398 | CONFIG_WIRELESS=y |
399 | CONFIG_WEXT_CORE=y | ||
400 | CONFIG_WEXT_PROC=y | ||
401 | CONFIG_CFG80211=y | ||
402 | CONFIG_NL80211_TESTMODE=y | ||
403 | # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set | ||
404 | # CONFIG_CFG80211_REG_DEBUG is not set | ||
405 | CONFIG_CFG80211_DEFAULT_PS=y | ||
406 | # CONFIG_CFG80211_INTERNAL_REGDB is not set | ||
407 | CONFIG_CFG80211_WEXT=y | ||
408 | CONFIG_WIRELESS_EXT_SYSFS=y | ||
409 | # CONFIG_LIB80211 is not set | ||
410 | CONFIG_MAC80211=y | ||
411 | # CONFIG_MAC80211_RC_PID is not set | ||
412 | CONFIG_MAC80211_RC_MINSTREL=y | ||
413 | # CONFIG_MAC80211_RC_DEFAULT_PID is not set | ||
414 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y | ||
415 | CONFIG_MAC80211_RC_DEFAULT="minstrel" | ||
416 | # CONFIG_MAC80211_MESH is not set | ||
417 | CONFIG_MAC80211_LEDS=y | ||
418 | # CONFIG_MAC80211_DEBUG_MENU is not set | ||
364 | # CONFIG_WIMAX is not set | 419 | # CONFIG_WIMAX is not set |
365 | # CONFIG_RFKILL is not set | 420 | # CONFIG_RFKILL is not set |
366 | # CONFIG_NET_9P is not set | 421 | # CONFIG_NET_9P is not set |
@@ -472,6 +527,7 @@ CONFIG_HAVE_IDE=y | |||
472 | # | 527 | # |
473 | # SCSI device support | 528 | # SCSI device support |
474 | # | 529 | # |
530 | CONFIG_SCSI_MOD=y | ||
475 | # CONFIG_RAID_ATTRS is not set | 531 | # CONFIG_RAID_ATTRS is not set |
476 | # CONFIG_SCSI is not set | 532 | # CONFIG_SCSI is not set |
477 | # CONFIG_SCSI_DMA is not set | 533 | # CONFIG_SCSI_DMA is not set |
@@ -485,13 +541,16 @@ CONFIG_HAVE_IDE=y | |||
485 | # | 541 | # |
486 | 542 | ||
487 | # | 543 | # |
488 | # Enable only one of the two stacks, unless you know what you are doing | 544 | # You can enable one or both FireWire driver stacks. |
545 | # | ||
546 | |||
547 | # | ||
548 | # The newer stack is recommended. | ||
489 | # | 549 | # |
490 | # CONFIG_FIREWIRE is not set | 550 | # CONFIG_FIREWIRE is not set |
491 | # CONFIG_IEEE1394 is not set | 551 | # CONFIG_IEEE1394 is not set |
492 | # CONFIG_I2O is not set | 552 | # CONFIG_I2O is not set |
493 | CONFIG_NETDEVICES=y | 553 | CONFIG_NETDEVICES=y |
494 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
495 | # CONFIG_DUMMY is not set | 554 | # CONFIG_DUMMY is not set |
496 | # CONFIG_BONDING is not set | 555 | # CONFIG_BONDING is not set |
497 | # CONFIG_MACVLAN is not set | 556 | # CONFIG_MACVLAN is not set |
@@ -530,6 +589,7 @@ CONFIG_MII=y | |||
530 | # CONFIG_SMC91X is not set | 589 | # CONFIG_SMC91X is not set |
531 | # CONFIG_DM9000 is not set | 590 | # CONFIG_DM9000 is not set |
532 | # CONFIG_ETHOC is not set | 591 | # CONFIG_ETHOC is not set |
592 | # CONFIG_SMSC911X is not set | ||
533 | # CONFIG_DNET is not set | 593 | # CONFIG_DNET is not set |
534 | # CONFIG_NET_TULIP is not set | 594 | # CONFIG_NET_TULIP is not set |
535 | # CONFIG_HP100 is not set | 595 | # CONFIG_HP100 is not set |
@@ -542,17 +602,48 @@ CONFIG_MII=y | |||
542 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | 602 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set |
543 | # CONFIG_NET_PCI is not set | 603 | # CONFIG_NET_PCI is not set |
544 | # CONFIG_B44 is not set | 604 | # CONFIG_B44 is not set |
605 | # CONFIG_KS8842 is not set | ||
606 | # CONFIG_KS8851_MLL is not set | ||
545 | # CONFIG_ATL2 is not set | 607 | # CONFIG_ATL2 is not set |
546 | CONFIG_BCM63XX_ENET=y | 608 | CONFIG_BCM63XX_ENET=y |
547 | # CONFIG_NETDEV_1000 is not set | 609 | # CONFIG_NETDEV_1000 is not set |
548 | # CONFIG_NETDEV_10000 is not set | 610 | # CONFIG_NETDEV_10000 is not set |
549 | # CONFIG_TR is not set | 611 | # CONFIG_TR is not set |
550 | 612 | CONFIG_WLAN=y | |
551 | # | 613 | # CONFIG_PCMCIA_RAYCS is not set |
552 | # Wireless LAN | 614 | # CONFIG_LIBERTAS_THINFIRM is not set |
553 | # | 615 | # CONFIG_ATMEL is not set |
554 | # CONFIG_WLAN_PRE80211 is not set | 616 | # CONFIG_AT76C50X_USB is not set |
555 | # CONFIG_WLAN_80211 is not set | 617 | # CONFIG_AIRO_CS is not set |
618 | # CONFIG_PCMCIA_WL3501 is not set | ||
619 | # CONFIG_PRISM54 is not set | ||
620 | # CONFIG_USB_ZD1201 is not set | ||
621 | # CONFIG_USB_NET_RNDIS_WLAN is not set | ||
622 | # CONFIG_RTL8180 is not set | ||
623 | # CONFIG_RTL8187 is not set | ||
624 | # CONFIG_ADM8211 is not set | ||
625 | # CONFIG_MAC80211_HWSIM is not set | ||
626 | # CONFIG_MWL8K is not set | ||
627 | # CONFIG_ATH_COMMON is not set | ||
628 | CONFIG_B43=y | ||
629 | CONFIG_B43_PCI_AUTOSELECT=y | ||
630 | CONFIG_B43_PCICORE_AUTOSELECT=y | ||
631 | # CONFIG_B43_PCMCIA is not set | ||
632 | CONFIG_B43_PIO=y | ||
633 | # CONFIG_B43_PHY_LP is not set | ||
634 | CONFIG_B43_LEDS=y | ||
635 | # CONFIG_B43_DEBUG is not set | ||
636 | # CONFIG_B43LEGACY is not set | ||
637 | # CONFIG_HOSTAP is not set | ||
638 | # CONFIG_IPW2100 is not set | ||
639 | # CONFIG_IPW2200 is not set | ||
640 | # CONFIG_IWLWIFI is not set | ||
641 | # CONFIG_LIBERTAS is not set | ||
642 | # CONFIG_HERMES is not set | ||
643 | # CONFIG_P54_COMMON is not set | ||
644 | # CONFIG_RT2X00 is not set | ||
645 | # CONFIG_WL12XX is not set | ||
646 | # CONFIG_ZD1211RW is not set | ||
556 | 647 | ||
557 | # | 648 | # |
558 | # Enable WiMAX (Networking options) to see the WiMAX drivers | 649 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
@@ -575,6 +666,7 @@ CONFIG_BCM63XX_ENET=y | |||
575 | # CONFIG_NETCONSOLE is not set | 666 | # CONFIG_NETCONSOLE is not set |
576 | # CONFIG_NETPOLL is not set | 667 | # CONFIG_NETPOLL is not set |
577 | # CONFIG_NET_POLL_CONTROLLER is not set | 668 | # CONFIG_NET_POLL_CONTROLLER is not set |
669 | # CONFIG_VMXNET3 is not set | ||
578 | # CONFIG_ISDN is not set | 670 | # CONFIG_ISDN is not set |
579 | # CONFIG_PHONE is not set | 671 | # CONFIG_PHONE is not set |
580 | 672 | ||
@@ -608,6 +700,7 @@ CONFIG_BCM63XX_ENET=y | |||
608 | CONFIG_SERIAL_CORE=y | 700 | CONFIG_SERIAL_CORE=y |
609 | CONFIG_SERIAL_CORE_CONSOLE=y | 701 | CONFIG_SERIAL_CORE_CONSOLE=y |
610 | # CONFIG_SERIAL_JSM is not set | 702 | # CONFIG_SERIAL_JSM is not set |
703 | # CONFIG_SERIAL_TIMBERDALE is not set | ||
611 | CONFIG_SERIAL_BCM63XX=y | 704 | CONFIG_SERIAL_BCM63XX=y |
612 | CONFIG_SERIAL_BCM63XX_CONSOLE=y | 705 | CONFIG_SERIAL_BCM63XX_CONSOLE=y |
613 | # CONFIG_UNIX98_PTYS is not set | 706 | # CONFIG_UNIX98_PTYS is not set |
@@ -630,6 +723,11 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
630 | CONFIG_DEVPORT=y | 723 | CONFIG_DEVPORT=y |
631 | # CONFIG_I2C is not set | 724 | # CONFIG_I2C is not set |
632 | # CONFIG_SPI is not set | 725 | # CONFIG_SPI is not set |
726 | |||
727 | # | ||
728 | # PPS support | ||
729 | # | ||
730 | # CONFIG_PPS is not set | ||
633 | CONFIG_ARCH_REQUIRE_GPIOLIB=y | 731 | CONFIG_ARCH_REQUIRE_GPIOLIB=y |
634 | CONFIG_GPIOLIB=y | 732 | CONFIG_GPIOLIB=y |
635 | # CONFIG_GPIO_SYSFS is not set | 733 | # CONFIG_GPIO_SYSFS is not set |
@@ -637,6 +735,8 @@ CONFIG_GPIOLIB=y | |||
637 | # | 735 | # |
638 | # Memory mapped GPIO expanders: | 736 | # Memory mapped GPIO expanders: |
639 | # | 737 | # |
738 | # CONFIG_GPIO_IT8761E is not set | ||
739 | # CONFIG_GPIO_SCH is not set | ||
640 | 740 | ||
641 | # | 741 | # |
642 | # I2C GPIO expanders: | 742 | # I2C GPIO expanders: |
@@ -645,16 +745,21 @@ CONFIG_GPIOLIB=y | |||
645 | # | 745 | # |
646 | # PCI GPIO expanders: | 746 | # PCI GPIO expanders: |
647 | # | 747 | # |
748 | # CONFIG_GPIO_CS5535 is not set | ||
648 | # CONFIG_GPIO_BT8XX is not set | 749 | # CONFIG_GPIO_BT8XX is not set |
750 | # CONFIG_GPIO_LANGWELL is not set | ||
649 | 751 | ||
650 | # | 752 | # |
651 | # SPI GPIO expanders: | 753 | # SPI GPIO expanders: |
652 | # | 754 | # |
755 | |||
756 | # | ||
757 | # AC97 GPIO expanders: | ||
758 | # | ||
653 | # CONFIG_W1 is not set | 759 | # CONFIG_W1 is not set |
654 | # CONFIG_POWER_SUPPLY is not set | 760 | # CONFIG_POWER_SUPPLY is not set |
655 | # CONFIG_HWMON is not set | 761 | # CONFIG_HWMON is not set |
656 | # CONFIG_THERMAL is not set | 762 | # CONFIG_THERMAL is not set |
657 | # CONFIG_THERMAL_HWMON is not set | ||
658 | # CONFIG_WATCHDOG is not set | 763 | # CONFIG_WATCHDOG is not set |
659 | CONFIG_SSB_POSSIBLE=y | 764 | CONFIG_SSB_POSSIBLE=y |
660 | 765 | ||
@@ -663,15 +768,16 @@ CONFIG_SSB_POSSIBLE=y | |||
663 | # | 768 | # |
664 | CONFIG_SSB=y | 769 | CONFIG_SSB=y |
665 | CONFIG_SSB_SPROM=y | 770 | CONFIG_SSB_SPROM=y |
771 | CONFIG_SSB_BLOCKIO=y | ||
666 | CONFIG_SSB_PCIHOST_POSSIBLE=y | 772 | CONFIG_SSB_PCIHOST_POSSIBLE=y |
667 | CONFIG_SSB_PCIHOST=y | 773 | CONFIG_SSB_PCIHOST=y |
668 | # CONFIG_SSB_B43_PCI_BRIDGE is not set | 774 | CONFIG_SSB_B43_PCI_BRIDGE=y |
669 | CONFIG_SSB_PCMCIAHOST_POSSIBLE=y | 775 | CONFIG_SSB_PCMCIAHOST_POSSIBLE=y |
670 | # CONFIG_SSB_PCMCIAHOST is not set | 776 | # CONFIG_SSB_PCMCIAHOST is not set |
671 | # CONFIG_SSB_SILENT is not set | 777 | # CONFIG_SSB_SILENT is not set |
672 | # CONFIG_SSB_DEBUG is not set | 778 | # CONFIG_SSB_DEBUG is not set |
673 | CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y | 779 | CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y |
674 | # CONFIG_SSB_DRIVER_PCICORE is not set | 780 | CONFIG_SSB_DRIVER_PCICORE=y |
675 | # CONFIG_SSB_DRIVER_MIPS is not set | 781 | # CONFIG_SSB_DRIVER_MIPS is not set |
676 | 782 | ||
677 | # | 783 | # |
@@ -681,27 +787,15 @@ CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y | |||
681 | # CONFIG_MFD_SM501 is not set | 787 | # CONFIG_MFD_SM501 is not set |
682 | # CONFIG_HTC_PASIC3 is not set | 788 | # CONFIG_HTC_PASIC3 is not set |
683 | # CONFIG_MFD_TMIO is not set | 789 | # CONFIG_MFD_TMIO is not set |
790 | # CONFIG_MFD_TIMBERDALE is not set | ||
791 | # CONFIG_LPC_SCH is not set | ||
684 | # CONFIG_REGULATOR is not set | 792 | # CONFIG_REGULATOR is not set |
685 | 793 | # CONFIG_MEDIA_SUPPORT is not set | |
686 | # | ||
687 | # Multimedia devices | ||
688 | # | ||
689 | |||
690 | # | ||
691 | # Multimedia core support | ||
692 | # | ||
693 | # CONFIG_VIDEO_DEV is not set | ||
694 | # CONFIG_DVB_CORE is not set | ||
695 | # CONFIG_VIDEO_MEDIA is not set | ||
696 | |||
697 | # | ||
698 | # Multimedia drivers | ||
699 | # | ||
700 | # CONFIG_DAB is not set | ||
701 | 794 | ||
702 | # | 795 | # |
703 | # Graphics support | 796 | # Graphics support |
704 | # | 797 | # |
798 | # CONFIG_VGA_ARB is not set | ||
705 | # CONFIG_DRM is not set | 799 | # CONFIG_DRM is not set |
706 | # CONFIG_VGASTATE is not set | 800 | # CONFIG_VGASTATE is not set |
707 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | 801 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set |
@@ -711,11 +805,7 @@ CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y | |||
711 | # | 805 | # |
712 | # Display device support | 806 | # Display device support |
713 | # | 807 | # |
714 | CONFIG_DISPLAY_SUPPORT=y | 808 | # CONFIG_DISPLAY_SUPPORT is not set |
715 | |||
716 | # | ||
717 | # Display hardware drivers | ||
718 | # | ||
719 | # CONFIG_SOUND is not set | 809 | # CONFIG_SOUND is not set |
720 | CONFIG_USB_SUPPORT=y | 810 | CONFIG_USB_SUPPORT=y |
721 | CONFIG_USB_ARCH_HAS_HCD=y | 811 | CONFIG_USB_ARCH_HAS_HCD=y |
@@ -742,13 +832,14 @@ CONFIG_USB=y | |||
742 | # USB Host Controller Drivers | 832 | # USB Host Controller Drivers |
743 | # | 833 | # |
744 | # CONFIG_USB_C67X00_HCD is not set | 834 | # CONFIG_USB_C67X00_HCD is not set |
835 | # CONFIG_USB_XHCI_HCD is not set | ||
745 | CONFIG_USB_EHCI_HCD=y | 836 | CONFIG_USB_EHCI_HCD=y |
746 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | 837 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set |
747 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | 838 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set |
748 | CONFIG_USB_EHCI_BIG_ENDIAN_MMIO=y | ||
749 | # CONFIG_USB_OXU210HP_HCD is not set | 839 | # CONFIG_USB_OXU210HP_HCD is not set |
750 | # CONFIG_USB_ISP116X_HCD is not set | 840 | # CONFIG_USB_ISP116X_HCD is not set |
751 | # CONFIG_USB_ISP1760_HCD is not set | 841 | # CONFIG_USB_ISP1760_HCD is not set |
842 | # CONFIG_USB_ISP1362_HCD is not set | ||
752 | CONFIG_USB_OHCI_HCD=y | 843 | CONFIG_USB_OHCI_HCD=y |
753 | # CONFIG_USB_OHCI_HCD_SSB is not set | 844 | # CONFIG_USB_OHCI_HCD_SSB is not set |
754 | CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y | 845 | CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y |
@@ -797,7 +888,6 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
797 | # CONFIG_USB_RIO500 is not set | 888 | # CONFIG_USB_RIO500 is not set |
798 | # CONFIG_USB_LEGOTOWER is not set | 889 | # CONFIG_USB_LEGOTOWER is not set |
799 | # CONFIG_USB_LCD is not set | 890 | # CONFIG_USB_LCD is not set |
800 | # CONFIG_USB_BERRY_CHARGE is not set | ||
801 | # CONFIG_USB_LED is not set | 891 | # CONFIG_USB_LED is not set |
802 | # CONFIG_USB_CYPRESS_CY7C63 is not set | 892 | # CONFIG_USB_CYPRESS_CY7C63 is not set |
803 | # CONFIG_USB_CYTHERM is not set | 893 | # CONFIG_USB_CYTHERM is not set |
@@ -808,8 +898,8 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
808 | # CONFIG_USB_LD is not set | 898 | # CONFIG_USB_LD is not set |
809 | # CONFIG_USB_TRANCEVIBRATOR is not set | 899 | # CONFIG_USB_TRANCEVIBRATOR is not set |
810 | # CONFIG_USB_IOWARRIOR is not set | 900 | # CONFIG_USB_IOWARRIOR is not set |
901 | # CONFIG_USB_TEST is not set | ||
811 | # CONFIG_USB_ISIGHTFW is not set | 902 | # CONFIG_USB_ISIGHTFW is not set |
812 | # CONFIG_USB_VST is not set | ||
813 | # CONFIG_USB_GADGET is not set | 903 | # CONFIG_USB_GADGET is not set |
814 | 904 | ||
815 | # | 905 | # |
@@ -820,7 +910,29 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
820 | # CONFIG_UWB is not set | 910 | # CONFIG_UWB is not set |
821 | # CONFIG_MMC is not set | 911 | # CONFIG_MMC is not set |
822 | # CONFIG_MEMSTICK is not set | 912 | # CONFIG_MEMSTICK is not set |
823 | # CONFIG_NEW_LEDS is not set | 913 | CONFIG_NEW_LEDS=y |
914 | CONFIG_LEDS_CLASS=y | ||
915 | |||
916 | # | ||
917 | # LED drivers | ||
918 | # | ||
919 | CONFIG_LEDS_GPIO=y | ||
920 | CONFIG_LEDS_GPIO_PLATFORM=y | ||
921 | # CONFIG_LEDS_LT3593 is not set | ||
922 | CONFIG_LEDS_TRIGGERS=y | ||
923 | |||
924 | # | ||
925 | # LED Triggers | ||
926 | # | ||
927 | CONFIG_LEDS_TRIGGER_TIMER=y | ||
928 | # CONFIG_LEDS_TRIGGER_HEARTBEAT is not set | ||
929 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set | ||
930 | CONFIG_LEDS_TRIGGER_GPIO=y | ||
931 | CONFIG_LEDS_TRIGGER_DEFAULT_ON=y | ||
932 | |||
933 | # | ||
934 | # iptables trigger is under Netfilter config (LED target) | ||
935 | # | ||
824 | # CONFIG_ACCESSIBILITY is not set | 936 | # CONFIG_ACCESSIBILITY is not set |
825 | # CONFIG_INFINIBAND is not set | 937 | # CONFIG_INFINIBAND is not set |
826 | CONFIG_RTC_LIB=y | 938 | CONFIG_RTC_LIB=y |
@@ -828,6 +940,10 @@ CONFIG_RTC_LIB=y | |||
828 | # CONFIG_DMADEVICES is not set | 940 | # CONFIG_DMADEVICES is not set |
829 | # CONFIG_AUXDISPLAY is not set | 941 | # CONFIG_AUXDISPLAY is not set |
830 | # CONFIG_UIO is not set | 942 | # CONFIG_UIO is not set |
943 | |||
944 | # | ||
945 | # TI VLYNQ | ||
946 | # | ||
831 | # CONFIG_STAGING is not set | 947 | # CONFIG_STAGING is not set |
832 | 948 | ||
833 | # | 949 | # |
@@ -839,12 +955,16 @@ CONFIG_RTC_LIB=y | |||
839 | # CONFIG_REISERFS_FS is not set | 955 | # CONFIG_REISERFS_FS is not set |
840 | # CONFIG_JFS_FS is not set | 956 | # CONFIG_JFS_FS is not set |
841 | # CONFIG_FS_POSIX_ACL is not set | 957 | # CONFIG_FS_POSIX_ACL is not set |
842 | # CONFIG_FILE_LOCKING is not set | ||
843 | # CONFIG_XFS_FS is not set | 958 | # CONFIG_XFS_FS is not set |
959 | # CONFIG_GFS2_FS is not set | ||
844 | # CONFIG_OCFS2_FS is not set | 960 | # CONFIG_OCFS2_FS is not set |
845 | # CONFIG_BTRFS_FS is not set | 961 | # CONFIG_BTRFS_FS is not set |
962 | # CONFIG_NILFS2_FS is not set | ||
963 | # CONFIG_FILE_LOCKING is not set | ||
964 | CONFIG_FSNOTIFY=y | ||
846 | # CONFIG_DNOTIFY is not set | 965 | # CONFIG_DNOTIFY is not set |
847 | # CONFIG_INOTIFY is not set | 966 | # CONFIG_INOTIFY is not set |
967 | CONFIG_INOTIFY_USER=y | ||
848 | # CONFIG_QUOTA is not set | 968 | # CONFIG_QUOTA is not set |
849 | # CONFIG_AUTOFS_FS is not set | 969 | # CONFIG_AUTOFS_FS is not set |
850 | # CONFIG_AUTOFS4_FS is not set | 970 | # CONFIG_AUTOFS4_FS is not set |
@@ -876,8 +996,6 @@ CONFIG_PROC_KCORE=y | |||
876 | CONFIG_PROC_SYSCTL=y | 996 | CONFIG_PROC_SYSCTL=y |
877 | CONFIG_PROC_PAGE_MONITOR=y | 997 | CONFIG_PROC_PAGE_MONITOR=y |
878 | CONFIG_SYSFS=y | 998 | CONFIG_SYSFS=y |
879 | CONFIG_TMPFS=y | ||
880 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
881 | # CONFIG_HUGETLB_PAGE is not set | 999 | # CONFIG_HUGETLB_PAGE is not set |
882 | # CONFIG_CONFIGFS_FS is not set | 1000 | # CONFIG_CONFIGFS_FS is not set |
883 | CONFIG_MISC_FILESYSTEMS=y | 1001 | CONFIG_MISC_FILESYSTEMS=y |
@@ -889,6 +1007,7 @@ CONFIG_MISC_FILESYSTEMS=y | |||
889 | # CONFIG_BFS_FS is not set | 1007 | # CONFIG_BFS_FS is not set |
890 | # CONFIG_EFS_FS is not set | 1008 | # CONFIG_EFS_FS is not set |
891 | # CONFIG_JFFS2_FS is not set | 1009 | # CONFIG_JFFS2_FS is not set |
1010 | # CONFIG_LOGFS is not set | ||
892 | # CONFIG_CRAMFS is not set | 1011 | # CONFIG_CRAMFS is not set |
893 | # CONFIG_SQUASHFS is not set | 1012 | # CONFIG_SQUASHFS is not set |
894 | # CONFIG_VXFS_FS is not set | 1013 | # CONFIG_VXFS_FS is not set |
@@ -899,7 +1018,6 @@ CONFIG_MISC_FILESYSTEMS=y | |||
899 | # CONFIG_ROMFS_FS is not set | 1018 | # CONFIG_ROMFS_FS is not set |
900 | # CONFIG_SYSV_FS is not set | 1019 | # CONFIG_SYSV_FS is not set |
901 | # CONFIG_UFS_FS is not set | 1020 | # CONFIG_UFS_FS is not set |
902 | # CONFIG_NILFS2_FS is not set | ||
903 | # CONFIG_NETWORK_FILESYSTEMS is not set | 1021 | # CONFIG_NETWORK_FILESYSTEMS is not set |
904 | 1022 | ||
905 | # | 1023 | # |
@@ -907,7 +1025,46 @@ CONFIG_MISC_FILESYSTEMS=y | |||
907 | # | 1025 | # |
908 | # CONFIG_PARTITION_ADVANCED is not set | 1026 | # CONFIG_PARTITION_ADVANCED is not set |
909 | CONFIG_MSDOS_PARTITION=y | 1027 | CONFIG_MSDOS_PARTITION=y |
910 | # CONFIG_NLS is not set | 1028 | CONFIG_NLS=y |
1029 | CONFIG_NLS_DEFAULT="iso8859-1" | ||
1030 | # CONFIG_NLS_CODEPAGE_437 is not set | ||
1031 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
1032 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
1033 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
1034 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
1035 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
1036 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
1037 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
1038 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
1039 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
1040 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
1041 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
1042 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
1043 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
1044 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
1045 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
1046 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
1047 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
1048 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
1049 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
1050 | # CONFIG_NLS_ISO8859_8 is not set | ||
1051 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
1052 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
1053 | # CONFIG_NLS_ASCII is not set | ||
1054 | # CONFIG_NLS_ISO8859_1 is not set | ||
1055 | # CONFIG_NLS_ISO8859_2 is not set | ||
1056 | # CONFIG_NLS_ISO8859_3 is not set | ||
1057 | # CONFIG_NLS_ISO8859_4 is not set | ||
1058 | # CONFIG_NLS_ISO8859_5 is not set | ||
1059 | # CONFIG_NLS_ISO8859_6 is not set | ||
1060 | # CONFIG_NLS_ISO8859_7 is not set | ||
1061 | # CONFIG_NLS_ISO8859_9 is not set | ||
1062 | # CONFIG_NLS_ISO8859_13 is not set | ||
1063 | # CONFIG_NLS_ISO8859_14 is not set | ||
1064 | # CONFIG_NLS_ISO8859_15 is not set | ||
1065 | # CONFIG_NLS_KOI8_R is not set | ||
1066 | # CONFIG_NLS_KOI8_U is not set | ||
1067 | # CONFIG_NLS_UTF8 is not set | ||
911 | # CONFIG_DLM is not set | 1068 | # CONFIG_DLM is not set |
912 | 1069 | ||
913 | # | 1070 | # |
@@ -919,30 +1076,26 @@ CONFIG_ENABLE_WARN_DEPRECATED=y | |||
919 | CONFIG_ENABLE_MUST_CHECK=y | 1076 | CONFIG_ENABLE_MUST_CHECK=y |
920 | CONFIG_FRAME_WARN=1024 | 1077 | CONFIG_FRAME_WARN=1024 |
921 | CONFIG_MAGIC_SYSRQ=y | 1078 | CONFIG_MAGIC_SYSRQ=y |
1079 | # CONFIG_STRIP_ASM_SYMS is not set | ||
922 | # CONFIG_UNUSED_SYMBOLS is not set | 1080 | # CONFIG_UNUSED_SYMBOLS is not set |
923 | # CONFIG_DEBUG_FS is not set | 1081 | # CONFIG_DEBUG_FS is not set |
924 | # CONFIG_HEADERS_CHECK is not set | 1082 | # CONFIG_HEADERS_CHECK is not set |
925 | # CONFIG_DEBUG_KERNEL is not set | 1083 | # CONFIG_DEBUG_KERNEL is not set |
926 | # CONFIG_DEBUG_MEMORY_INIT is not set | 1084 | # CONFIG_DEBUG_MEMORY_INIT is not set |
927 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
928 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 1085 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
1086 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1087 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1088 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1089 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1090 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
929 | CONFIG_TRACING_SUPPORT=y | 1091 | CONFIG_TRACING_SUPPORT=y |
930 | 1092 | # CONFIG_FTRACE is not set | |
931 | # | ||
932 | # Tracers | ||
933 | # | ||
934 | # CONFIG_IRQSOFF_TRACER is not set | ||
935 | # CONFIG_SCHED_TRACER is not set | ||
936 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
937 | # CONFIG_EVENT_TRACER is not set | ||
938 | # CONFIG_BOOT_TRACER is not set | ||
939 | # CONFIG_TRACE_BRANCH_PROFILING is not set | ||
940 | # CONFIG_KMEMTRACE is not set | ||
941 | # CONFIG_WORKQUEUE_TRACER is not set | ||
942 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
943 | # CONFIG_SAMPLES is not set | 1093 | # CONFIG_SAMPLES is not set |
944 | CONFIG_HAVE_ARCH_KGDB=y | 1094 | CONFIG_HAVE_ARCH_KGDB=y |
1095 | CONFIG_EARLY_PRINTK=y | ||
1096 | CONFIG_CMDLINE_BOOL=y | ||
945 | CONFIG_CMDLINE="console=ttyS0,115200" | 1097 | CONFIG_CMDLINE="console=ttyS0,115200" |
1098 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
946 | 1099 | ||
947 | # | 1100 | # |
948 | # Security options | 1101 | # Security options |
@@ -950,8 +1103,108 @@ CONFIG_CMDLINE="console=ttyS0,115200" | |||
950 | # CONFIG_KEYS is not set | 1103 | # CONFIG_KEYS is not set |
951 | # CONFIG_SECURITY is not set | 1104 | # CONFIG_SECURITY is not set |
952 | # CONFIG_SECURITYFS is not set | 1105 | # CONFIG_SECURITYFS is not set |
953 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | 1106 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
954 | # CONFIG_CRYPTO is not set | 1107 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1108 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set | ||
1109 | CONFIG_DEFAULT_SECURITY_DAC=y | ||
1110 | CONFIG_DEFAULT_SECURITY="" | ||
1111 | CONFIG_CRYPTO=y | ||
1112 | |||
1113 | # | ||
1114 | # Crypto core or helper | ||
1115 | # | ||
1116 | # CONFIG_CRYPTO_FIPS is not set | ||
1117 | CONFIG_CRYPTO_ALGAPI=y | ||
1118 | CONFIG_CRYPTO_ALGAPI2=y | ||
1119 | CONFIG_CRYPTO_AEAD2=y | ||
1120 | CONFIG_CRYPTO_BLKCIPHER=y | ||
1121 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
1122 | CONFIG_CRYPTO_HASH2=y | ||
1123 | CONFIG_CRYPTO_RNG=y | ||
1124 | CONFIG_CRYPTO_RNG2=y | ||
1125 | CONFIG_CRYPTO_PCOMP=y | ||
1126 | CONFIG_CRYPTO_MANAGER=y | ||
1127 | CONFIG_CRYPTO_MANAGER2=y | ||
1128 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1129 | # CONFIG_CRYPTO_NULL is not set | ||
1130 | CONFIG_CRYPTO_WORKQUEUE=y | ||
1131 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1132 | # CONFIG_CRYPTO_AUTHENC is not set | ||
1133 | |||
1134 | # | ||
1135 | # Authenticated Encryption with Associated Data | ||
1136 | # | ||
1137 | # CONFIG_CRYPTO_CCM is not set | ||
1138 | # CONFIG_CRYPTO_GCM is not set | ||
1139 | # CONFIG_CRYPTO_SEQIV is not set | ||
1140 | |||
1141 | # | ||
1142 | # Block modes | ||
1143 | # | ||
1144 | # CONFIG_CRYPTO_CBC is not set | ||
1145 | # CONFIG_CRYPTO_CTR is not set | ||
1146 | # CONFIG_CRYPTO_CTS is not set | ||
1147 | CONFIG_CRYPTO_ECB=y | ||
1148 | # CONFIG_CRYPTO_LRW is not set | ||
1149 | # CONFIG_CRYPTO_PCBC is not set | ||
1150 | # CONFIG_CRYPTO_XTS is not set | ||
1151 | |||
1152 | # | ||
1153 | # Hash modes | ||
1154 | # | ||
1155 | # CONFIG_CRYPTO_HMAC is not set | ||
1156 | # CONFIG_CRYPTO_XCBC is not set | ||
1157 | # CONFIG_CRYPTO_VMAC is not set | ||
1158 | |||
1159 | # | ||
1160 | # Digest | ||
1161 | # | ||
1162 | # CONFIG_CRYPTO_CRC32C is not set | ||
1163 | # CONFIG_CRYPTO_GHASH is not set | ||
1164 | # CONFIG_CRYPTO_MD4 is not set | ||
1165 | # CONFIG_CRYPTO_MD5 is not set | ||
1166 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1167 | # CONFIG_CRYPTO_RMD128 is not set | ||
1168 | # CONFIG_CRYPTO_RMD160 is not set | ||
1169 | # CONFIG_CRYPTO_RMD256 is not set | ||
1170 | # CONFIG_CRYPTO_RMD320 is not set | ||
1171 | # CONFIG_CRYPTO_SHA1 is not set | ||
1172 | # CONFIG_CRYPTO_SHA256 is not set | ||
1173 | # CONFIG_CRYPTO_SHA512 is not set | ||
1174 | # CONFIG_CRYPTO_TGR192 is not set | ||
1175 | # CONFIG_CRYPTO_WP512 is not set | ||
1176 | |||
1177 | # | ||
1178 | # Ciphers | ||
1179 | # | ||
1180 | CONFIG_CRYPTO_AES=y | ||
1181 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1182 | CONFIG_CRYPTO_ARC4=y | ||
1183 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
1184 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1185 | # CONFIG_CRYPTO_CAST5 is not set | ||
1186 | # CONFIG_CRYPTO_CAST6 is not set | ||
1187 | # CONFIG_CRYPTO_DES is not set | ||
1188 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1189 | # CONFIG_CRYPTO_KHAZAD is not set | ||
1190 | # CONFIG_CRYPTO_SALSA20 is not set | ||
1191 | # CONFIG_CRYPTO_SEED is not set | ||
1192 | # CONFIG_CRYPTO_SERPENT is not set | ||
1193 | # CONFIG_CRYPTO_TEA is not set | ||
1194 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1195 | |||
1196 | # | ||
1197 | # Compression | ||
1198 | # | ||
1199 | # CONFIG_CRYPTO_DEFLATE is not set | ||
1200 | # CONFIG_CRYPTO_ZLIB is not set | ||
1201 | # CONFIG_CRYPTO_LZO is not set | ||
1202 | |||
1203 | # | ||
1204 | # Random Number Generation | ||
1205 | # | ||
1206 | CONFIG_CRYPTO_ANSI_CPRNG=y | ||
1207 | # CONFIG_CRYPTO_HW is not set | ||
955 | # CONFIG_BINARY_PRINTF is not set | 1208 | # CONFIG_BINARY_PRINTF is not set |
956 | 1209 | ||
957 | # | 1210 | # |
diff --git a/arch/mips/configs/bigsur_defconfig b/arch/mips/configs/bigsur_defconfig index 13d9eb4736c0..0583bb29150f 100644 --- a/arch/mips/configs/bigsur_defconfig +++ b/arch/mips/configs/bigsur_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.26-rc8 | 3 | # Linux kernel version: 2.6.34-rc3 |
4 | # Wed Jul 2 17:02:55 2008 | 4 | # Sat Apr 3 16:32:11 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
@@ -9,21 +9,25 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | 12 | # CONFIG_AR7 is not set |
13 | # CONFIG_BCM47XX is not set | 13 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_BCM63XX is not set | ||
14 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
16 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
17 | # CONFIG_LASAT is not set | 18 | # CONFIG_LASAT is not set |
18 | # CONFIG_LEMOTE_FULONG is not set | 19 | # CONFIG_MACH_LOONGSON is not set |
19 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
20 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
21 | # CONFIG_MARKEINS is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
22 | # CONFIG_MACH_VR41XX is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
23 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
24 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
25 | # CONFIG_PMC_MSP is not set | 28 | # CONFIG_PMC_MSP is not set |
26 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
30 | # CONFIG_POWERTV is not set | ||
27 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
28 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
29 | # CONFIG_SGI_IP28 is not set | 33 | # CONFIG_SGI_IP28 is not set |
@@ -37,10 +41,13 @@ CONFIG_MIPS=y | |||
37 | # CONFIG_SIBYTE_SENTOSA is not set | 41 | # CONFIG_SIBYTE_SENTOSA is not set |
38 | CONFIG_SIBYTE_BIGSUR=y | 42 | CONFIG_SIBYTE_BIGSUR=y |
39 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
40 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
41 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
42 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
43 | # CONFIG_WR_PPMC is not set | 47 | # CONFIG_WR_PPMC is not set |
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
44 | CONFIG_SIBYTE_BCM1x80=y | 51 | CONFIG_SIBYTE_BCM1x80=y |
45 | CONFIG_SIBYTE_SB1xxx_SOC=y | 52 | CONFIG_SIBYTE_SB1xxx_SOC=y |
46 | # CONFIG_CPU_SB1_PASS_1 is not set | 53 | # CONFIG_CPU_SB1_PASS_1 is not set |
@@ -49,14 +56,13 @@ CONFIG_SIBYTE_SB1xxx_SOC=y | |||
49 | # CONFIG_CPU_SB1_PASS_4 is not set | 56 | # CONFIG_CPU_SB1_PASS_4 is not set |
50 | # CONFIG_CPU_SB1_PASS_2_112x is not set | 57 | # CONFIG_CPU_SB1_PASS_2_112x is not set |
51 | # CONFIG_CPU_SB1_PASS_3 is not set | 58 | # CONFIG_CPU_SB1_PASS_3 is not set |
52 | # CONFIG_SIMULATION is not set | ||
53 | # CONFIG_SB1_CEX_ALWAYS_FATAL is not set | 59 | # CONFIG_SB1_CEX_ALWAYS_FATAL is not set |
54 | # CONFIG_SB1_CERR_STALL is not set | 60 | # CONFIG_SB1_CERR_STALL is not set |
55 | CONFIG_SIBYTE_CFE=y | ||
56 | # CONFIG_SIBYTE_CFE_CONSOLE is not set | 61 | # CONFIG_SIBYTE_CFE_CONSOLE is not set |
57 | # CONFIG_SIBYTE_BUS_WATCHER is not set | 62 | # CONFIG_SIBYTE_BUS_WATCHER is not set |
58 | # CONFIG_SIBYTE_TBPROF is not set | 63 | # CONFIG_SIBYTE_TBPROF is not set |
59 | CONFIG_SIBYTE_HAS_ZBUS_PROFILING=y | 64 | CONFIG_SIBYTE_HAS_ZBUS_PROFILING=y |
65 | CONFIG_LOONGSON_UART_BASE=y | ||
60 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 66 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
61 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 67 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
62 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 68 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
@@ -67,15 +73,13 @@ CONFIG_GENERIC_CALIBRATE_DELAY=y | |||
67 | CONFIG_GENERIC_CLOCKEVENTS=y | 73 | CONFIG_GENERIC_CLOCKEVENTS=y |
68 | CONFIG_GENERIC_TIME=y | 74 | CONFIG_GENERIC_TIME=y |
69 | CONFIG_GENERIC_CMOS_UPDATE=y | 75 | CONFIG_GENERIC_CMOS_UPDATE=y |
70 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 76 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
71 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 77 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y |
72 | CONFIG_CEVT_BCM1480=y | 78 | CONFIG_CEVT_BCM1480=y |
73 | CONFIG_CSRC_BCM1480=y | 79 | CONFIG_CSRC_BCM1480=y |
74 | CONFIG_CFE=y | 80 | CONFIG_CFE=y |
75 | CONFIG_DMA_COHERENT=y | 81 | CONFIG_DMA_COHERENT=y |
76 | CONFIG_EARLY_PRINTK=y | ||
77 | CONFIG_SYS_HAS_EARLY_PRINTK=y | 82 | CONFIG_SYS_HAS_EARLY_PRINTK=y |
78 | # CONFIG_HOTPLUG_CPU is not set | ||
79 | # CONFIG_NO_IOPORT is not set | 83 | # CONFIG_NO_IOPORT is not set |
80 | CONFIG_CPU_BIG_ENDIAN=y | 84 | CONFIG_CPU_BIG_ENDIAN=y |
81 | # CONFIG_CPU_LITTLE_ENDIAN is not set | 85 | # CONFIG_CPU_LITTLE_ENDIAN is not set |
@@ -89,7 +93,8 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5 | |||
89 | # | 93 | # |
90 | # CPU selection | 94 | # CPU selection |
91 | # | 95 | # |
92 | # CONFIG_CPU_LOONGSON2 is not set | 96 | # CONFIG_CPU_LOONGSON2E is not set |
97 | # CONFIG_CPU_LOONGSON2F is not set | ||
93 | # CONFIG_CPU_MIPS32_R1 is not set | 98 | # CONFIG_CPU_MIPS32_R1 is not set |
94 | # CONFIG_CPU_MIPS32_R2 is not set | 99 | # CONFIG_CPU_MIPS32_R2 is not set |
95 | # CONFIG_CPU_MIPS64_R1 is not set | 100 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -102,6 +107,7 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5 | |||
102 | # CONFIG_CPU_TX49XX is not set | 107 | # CONFIG_CPU_TX49XX is not set |
103 | # CONFIG_CPU_R5000 is not set | 108 | # CONFIG_CPU_R5000 is not set |
104 | # CONFIG_CPU_R5432 is not set | 109 | # CONFIG_CPU_R5432 is not set |
110 | # CONFIG_CPU_R5500 is not set | ||
105 | # CONFIG_CPU_R6000 is not set | 111 | # CONFIG_CPU_R6000 is not set |
106 | # CONFIG_CPU_NEVADA is not set | 112 | # CONFIG_CPU_NEVADA is not set |
107 | # CONFIG_CPU_R8000 is not set | 113 | # CONFIG_CPU_R8000 is not set |
@@ -109,6 +115,7 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5 | |||
109 | # CONFIG_CPU_RM7000 is not set | 115 | # CONFIG_CPU_RM7000 is not set |
110 | # CONFIG_CPU_RM9000 is not set | 116 | # CONFIG_CPU_RM9000 is not set |
111 | CONFIG_CPU_SB1=y | 117 | CONFIG_CPU_SB1=y |
118 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
112 | CONFIG_SYS_HAS_CPU_SB1=y | 119 | CONFIG_SYS_HAS_CPU_SB1=y |
113 | CONFIG_WEAK_ORDERING=y | 120 | CONFIG_WEAK_ORDERING=y |
114 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 121 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
@@ -124,11 +131,13 @@ CONFIG_64BIT=y | |||
124 | CONFIG_PAGE_SIZE_4KB=y | 131 | CONFIG_PAGE_SIZE_4KB=y |
125 | # CONFIG_PAGE_SIZE_8KB is not set | 132 | # CONFIG_PAGE_SIZE_8KB is not set |
126 | # CONFIG_PAGE_SIZE_16KB is not set | 133 | # CONFIG_PAGE_SIZE_16KB is not set |
134 | # CONFIG_PAGE_SIZE_32KB is not set | ||
127 | # CONFIG_PAGE_SIZE_64KB is not set | 135 | # CONFIG_PAGE_SIZE_64KB is not set |
128 | # CONFIG_SIBYTE_DMA_PAGEOPS is not set | 136 | # CONFIG_SIBYTE_DMA_PAGEOPS is not set |
129 | CONFIG_MIPS_MT_DISABLED=y | 137 | CONFIG_MIPS_MT_DISABLED=y |
130 | # CONFIG_MIPS_MT_SMP is not set | 138 | # CONFIG_MIPS_MT_SMP is not set |
131 | # CONFIG_MIPS_MT_SMTC is not set | 139 | # CONFIG_MIPS_MT_SMTC is not set |
140 | # CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set | ||
132 | CONFIG_CPU_HAS_SYNC=y | 141 | CONFIG_CPU_HAS_SYNC=y |
133 | CONFIG_GENERIC_HARDIRQS=y | 142 | CONFIG_GENERIC_HARDIRQS=y |
134 | CONFIG_GENERIC_IRQ_PROBE=y | 143 | CONFIG_GENERIC_IRQ_PROBE=y |
@@ -143,18 +152,17 @@ CONFIG_FLATMEM_MANUAL=y | |||
143 | # CONFIG_SPARSEMEM_MANUAL is not set | 152 | # CONFIG_SPARSEMEM_MANUAL is not set |
144 | CONFIG_FLATMEM=y | 153 | CONFIG_FLATMEM=y |
145 | CONFIG_FLAT_NODE_MEM_MAP=y | 154 | CONFIG_FLAT_NODE_MEM_MAP=y |
146 | # CONFIG_SPARSEMEM_STATIC is not set | ||
147 | # CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set | ||
148 | CONFIG_PAGEFLAGS_EXTENDED=y | 155 | CONFIG_PAGEFLAGS_EXTENDED=y |
149 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 156 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
150 | CONFIG_RESOURCES_64BIT=y | 157 | CONFIG_PHYS_ADDR_T_64BIT=y |
151 | CONFIG_ZONE_DMA_FLAG=0 | 158 | CONFIG_ZONE_DMA_FLAG=0 |
152 | CONFIG_VIRT_TO_BUS=y | 159 | CONFIG_VIRT_TO_BUS=y |
160 | # CONFIG_KSM is not set | ||
161 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
153 | CONFIG_SMP=y | 162 | CONFIG_SMP=y |
154 | CONFIG_SYS_SUPPORTS_SMP=y | 163 | CONFIG_SYS_SUPPORTS_SMP=y |
155 | CONFIG_NR_CPUS_DEFAULT_4=y | 164 | CONFIG_NR_CPUS_DEFAULT_4=y |
156 | CONFIG_NR_CPUS=4 | 165 | CONFIG_NR_CPUS=4 |
157 | # CONFIG_MIPS_CMP is not set | ||
158 | CONFIG_TICK_ONESHOT=y | 166 | CONFIG_TICK_ONESHOT=y |
159 | CONFIG_NO_HZ=y | 167 | CONFIG_NO_HZ=y |
160 | CONFIG_HIGH_RES_TIMERS=y | 168 | CONFIG_HIGH_RES_TIMERS=y |
@@ -176,6 +184,7 @@ CONFIG_SECCOMP=y | |||
176 | CONFIG_LOCKDEP_SUPPORT=y | 184 | CONFIG_LOCKDEP_SUPPORT=y |
177 | CONFIG_STACKTRACE_SUPPORT=y | 185 | CONFIG_STACKTRACE_SUPPORT=y |
178 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 186 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
187 | CONFIG_CONSTRUCTORS=y | ||
179 | 188 | ||
180 | # | 189 | # |
181 | # General setup | 190 | # General setup |
@@ -189,6 +198,7 @@ CONFIG_SWAP=y | |||
189 | CONFIG_SYSVIPC=y | 198 | CONFIG_SYSVIPC=y |
190 | CONFIG_SYSVIPC_SYSCTL=y | 199 | CONFIG_SYSVIPC_SYSCTL=y |
191 | CONFIG_POSIX_MQUEUE=y | 200 | CONFIG_POSIX_MQUEUE=y |
201 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
192 | CONFIG_BSD_PROCESS_ACCT=y | 202 | CONFIG_BSD_PROCESS_ACCT=y |
193 | CONFIG_BSD_PROCESS_ACCT_V3=y | 203 | CONFIG_BSD_PROCESS_ACCT_V3=y |
194 | CONFIG_TASKSTATS=y | 204 | CONFIG_TASKSTATS=y |
@@ -196,23 +206,39 @@ CONFIG_TASK_DELAY_ACCT=y | |||
196 | CONFIG_TASK_XACCT=y | 206 | CONFIG_TASK_XACCT=y |
197 | CONFIG_TASK_IO_ACCOUNTING=y | 207 | CONFIG_TASK_IO_ACCOUNTING=y |
198 | CONFIG_AUDIT=y | 208 | CONFIG_AUDIT=y |
209 | |||
210 | # | ||
211 | # RCU Subsystem | ||
212 | # | ||
213 | CONFIG_TREE_RCU=y | ||
214 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
215 | # CONFIG_TINY_RCU is not set | ||
216 | # CONFIG_RCU_TRACE is not set | ||
217 | CONFIG_RCU_FANOUT=64 | ||
218 | # CONFIG_RCU_FANOUT_EXACT is not set | ||
219 | # CONFIG_RCU_FAST_NO_HZ is not set | ||
220 | # CONFIG_TREE_RCU_TRACE is not set | ||
199 | CONFIG_IKCONFIG=y | 221 | CONFIG_IKCONFIG=y |
200 | CONFIG_IKCONFIG_PROC=y | 222 | CONFIG_IKCONFIG_PROC=y |
201 | CONFIG_LOG_BUF_SHIFT=16 | 223 | CONFIG_LOG_BUF_SHIFT=16 |
202 | # CONFIG_CGROUPS is not set | 224 | # CONFIG_CGROUPS is not set |
203 | CONFIG_GROUP_SCHED=y | 225 | # CONFIG_SYSFS_DEPRECATED_V2 is not set |
204 | CONFIG_FAIR_GROUP_SCHED=y | ||
205 | # CONFIG_RT_GROUP_SCHED is not set | ||
206 | CONFIG_USER_SCHED=y | ||
207 | # CONFIG_CGROUP_SCHED is not set | ||
208 | CONFIG_SYSFS_DEPRECATED=y | ||
209 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
210 | CONFIG_RELAY=y | 226 | CONFIG_RELAY=y |
211 | # CONFIG_NAMESPACES is not set | 227 | CONFIG_NAMESPACES=y |
228 | CONFIG_UTS_NS=y | ||
229 | CONFIG_IPC_NS=y | ||
230 | CONFIG_USER_NS=y | ||
231 | CONFIG_PID_NS=y | ||
232 | CONFIG_NET_NS=y | ||
212 | CONFIG_BLK_DEV_INITRD=y | 233 | CONFIG_BLK_DEV_INITRD=y |
213 | CONFIG_INITRAMFS_SOURCE="" | 234 | CONFIG_INITRAMFS_SOURCE="" |
235 | CONFIG_RD_GZIP=y | ||
236 | # CONFIG_RD_BZIP2 is not set | ||
237 | # CONFIG_RD_LZMA is not set | ||
238 | # CONFIG_RD_LZO is not set | ||
214 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 239 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
215 | CONFIG_SYSCTL=y | 240 | CONFIG_SYSCTL=y |
241 | CONFIG_ANON_INODES=y | ||
216 | CONFIG_EMBEDDED=y | 242 | CONFIG_EMBEDDED=y |
217 | # CONFIG_SYSCTL_SYSCALL is not set | 243 | # CONFIG_SYSCTL_SYSCALL is not set |
218 | CONFIG_KALLSYMS=y | 244 | CONFIG_KALLSYMS=y |
@@ -223,29 +249,36 @@ CONFIG_PRINTK=y | |||
223 | CONFIG_BUG=y | 249 | CONFIG_BUG=y |
224 | CONFIG_ELF_CORE=y | 250 | CONFIG_ELF_CORE=y |
225 | # CONFIG_PCSPKR_PLATFORM is not set | 251 | # CONFIG_PCSPKR_PLATFORM is not set |
226 | CONFIG_COMPAT_BRK=y | ||
227 | CONFIG_BASE_FULL=y | 252 | CONFIG_BASE_FULL=y |
228 | CONFIG_FUTEX=y | 253 | CONFIG_FUTEX=y |
229 | CONFIG_ANON_INODES=y | ||
230 | CONFIG_EPOLL=y | 254 | CONFIG_EPOLL=y |
231 | CONFIG_SIGNALFD=y | 255 | CONFIG_SIGNALFD=y |
232 | CONFIG_TIMERFD=y | 256 | CONFIG_TIMERFD=y |
233 | CONFIG_EVENTFD=y | 257 | CONFIG_EVENTFD=y |
234 | CONFIG_SHMEM=y | 258 | CONFIG_SHMEM=y |
259 | CONFIG_AIO=y | ||
260 | |||
261 | # | ||
262 | # Kernel Performance Events And Counters | ||
263 | # | ||
235 | CONFIG_VM_EVENT_COUNTERS=y | 264 | CONFIG_VM_EVENT_COUNTERS=y |
265 | CONFIG_PCI_QUIRKS=y | ||
266 | CONFIG_COMPAT_BRK=y | ||
236 | CONFIG_SLAB=y | 267 | CONFIG_SLAB=y |
237 | # CONFIG_SLUB is not set | 268 | # CONFIG_SLUB is not set |
238 | # CONFIG_SLOB is not set | 269 | # CONFIG_SLOB is not set |
239 | # CONFIG_PROFILING is not set | 270 | # CONFIG_PROFILING is not set |
240 | # CONFIG_MARKERS is not set | ||
241 | CONFIG_HAVE_OPROFILE=y | 271 | CONFIG_HAVE_OPROFILE=y |
242 | # CONFIG_HAVE_KPROBES is not set | 272 | CONFIG_HAVE_SYSCALL_WRAPPERS=y |
243 | # CONFIG_HAVE_KRETPROBES is not set | 273 | CONFIG_USE_GENERIC_SMP_HELPERS=y |
244 | # CONFIG_HAVE_DMA_ATTRS is not set | 274 | |
245 | CONFIG_PROC_PAGE_MONITOR=y | 275 | # |
276 | # GCOV-based kernel profiling | ||
277 | # | ||
278 | # CONFIG_SLOW_WORK is not set | ||
279 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
246 | CONFIG_SLABINFO=y | 280 | CONFIG_SLABINFO=y |
247 | CONFIG_RT_MUTEXES=y | 281 | CONFIG_RT_MUTEXES=y |
248 | # CONFIG_TINY_SHMEM is not set | ||
249 | CONFIG_BASE_SMALL=0 | 282 | CONFIG_BASE_SMALL=0 |
250 | CONFIG_MODULES=y | 283 | CONFIG_MODULES=y |
251 | # CONFIG_MODULE_FORCE_LOAD is not set | 284 | # CONFIG_MODULE_FORCE_LOAD is not set |
@@ -253,26 +286,52 @@ CONFIG_MODULE_UNLOAD=y | |||
253 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 286 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
254 | CONFIG_MODVERSIONS=y | 287 | CONFIG_MODVERSIONS=y |
255 | CONFIG_MODULE_SRCVERSION_ALL=y | 288 | CONFIG_MODULE_SRCVERSION_ALL=y |
256 | CONFIG_KMOD=y | ||
257 | CONFIG_STOP_MACHINE=y | 289 | CONFIG_STOP_MACHINE=y |
258 | CONFIG_BLOCK=y | 290 | CONFIG_BLOCK=y |
259 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
260 | # CONFIG_BLK_DEV_BSG is not set | 291 | # CONFIG_BLK_DEV_BSG is not set |
292 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
261 | CONFIG_BLOCK_COMPAT=y | 293 | CONFIG_BLOCK_COMPAT=y |
262 | 294 | ||
263 | # | 295 | # |
264 | # IO Schedulers | 296 | # IO Schedulers |
265 | # | 297 | # |
266 | CONFIG_IOSCHED_NOOP=y | 298 | CONFIG_IOSCHED_NOOP=y |
267 | CONFIG_IOSCHED_AS=y | ||
268 | CONFIG_IOSCHED_DEADLINE=y | 299 | CONFIG_IOSCHED_DEADLINE=y |
269 | CONFIG_IOSCHED_CFQ=y | 300 | CONFIG_IOSCHED_CFQ=y |
270 | CONFIG_DEFAULT_AS=y | ||
271 | # CONFIG_DEFAULT_DEADLINE is not set | 301 | # CONFIG_DEFAULT_DEADLINE is not set |
272 | # CONFIG_DEFAULT_CFQ is not set | 302 | CONFIG_DEFAULT_CFQ=y |
273 | # CONFIG_DEFAULT_NOOP is not set | 303 | # CONFIG_DEFAULT_NOOP is not set |
274 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 304 | CONFIG_DEFAULT_IOSCHED="cfq" |
275 | CONFIG_CLASSIC_RCU=y | 305 | # CONFIG_INLINE_SPIN_TRYLOCK is not set |
306 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
307 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
308 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
309 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
310 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
311 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
312 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
313 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
314 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
315 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
316 | # CONFIG_INLINE_READ_LOCK is not set | ||
317 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
318 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
319 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
320 | CONFIG_INLINE_READ_UNLOCK=y | ||
321 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
322 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
323 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
324 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
325 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
326 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
327 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
328 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
329 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
330 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
331 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
332 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
333 | CONFIG_MUTEX_SPIN_ON_OWNER=y | ||
334 | # CONFIG_FREEZER is not set | ||
276 | 335 | ||
277 | # | 336 | # |
278 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 337 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
@@ -281,8 +340,9 @@ CONFIG_HW_HAS_PCI=y | |||
281 | CONFIG_PCI=y | 340 | CONFIG_PCI=y |
282 | CONFIG_PCI_DOMAINS=y | 341 | CONFIG_PCI_DOMAINS=y |
283 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 342 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
284 | CONFIG_PCI_LEGACY=y | ||
285 | CONFIG_PCI_DEBUG=y | 343 | CONFIG_PCI_DEBUG=y |
344 | # CONFIG_PCI_STUB is not set | ||
345 | # CONFIG_PCI_IOV is not set | ||
286 | CONFIG_MMU=y | 346 | CONFIG_MMU=y |
287 | CONFIG_ZONE_DMA32=y | 347 | CONFIG_ZONE_DMA32=y |
288 | # CONFIG_PCCARD is not set | 348 | # CONFIG_PCCARD is not set |
@@ -292,6 +352,8 @@ CONFIG_ZONE_DMA32=y | |||
292 | # Executable file formats | 352 | # Executable file formats |
293 | # | 353 | # |
294 | CONFIG_BINFMT_ELF=y | 354 | CONFIG_BINFMT_ELF=y |
355 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
356 | # CONFIG_HAVE_AOUT is not set | ||
295 | # CONFIG_BINFMT_MISC is not set | 357 | # CONFIG_BINFMT_MISC is not set |
296 | CONFIG_MIPS32_COMPAT=y | 358 | CONFIG_MIPS32_COMPAT=y |
297 | CONFIG_COMPAT=y | 359 | CONFIG_COMPAT=y |
@@ -305,23 +367,20 @@ CONFIG_BINFMT_ELF32=y | |||
305 | # | 367 | # |
306 | CONFIG_PM=y | 368 | CONFIG_PM=y |
307 | # CONFIG_PM_DEBUG is not set | 369 | # CONFIG_PM_DEBUG is not set |
308 | 370 | # CONFIG_PM_RUNTIME is not set | |
309 | # | ||
310 | # Networking | ||
311 | # | ||
312 | CONFIG_NET=y | 371 | CONFIG_NET=y |
313 | 372 | ||
314 | # | 373 | # |
315 | # Networking options | 374 | # Networking options |
316 | # | 375 | # |
317 | CONFIG_PACKET=y | 376 | CONFIG_PACKET=y |
318 | CONFIG_PACKET_MMAP=y | ||
319 | CONFIG_UNIX=y | 377 | CONFIG_UNIX=y |
320 | CONFIG_XFRM=y | 378 | CONFIG_XFRM=y |
321 | CONFIG_XFRM_USER=m | 379 | CONFIG_XFRM_USER=m |
322 | # CONFIG_XFRM_SUB_POLICY is not set | 380 | # CONFIG_XFRM_SUB_POLICY is not set |
323 | CONFIG_XFRM_MIGRATE=y | 381 | CONFIG_XFRM_MIGRATE=y |
324 | # CONFIG_XFRM_STATISTICS is not set | 382 | # CONFIG_XFRM_STATISTICS is not set |
383 | CONFIG_XFRM_IPCOMP=m | ||
325 | CONFIG_NET_KEY=y | 384 | CONFIG_NET_KEY=y |
326 | CONFIG_NET_KEY_MIGRATE=y | 385 | CONFIG_NET_KEY_MIGRATE=y |
327 | CONFIG_INET=y | 386 | CONFIG_INET=y |
@@ -354,36 +413,6 @@ CONFIG_INET_TCP_DIAG=y | |||
354 | CONFIG_TCP_CONG_CUBIC=y | 413 | CONFIG_TCP_CONG_CUBIC=y |
355 | CONFIG_DEFAULT_TCP_CONG="cubic" | 414 | CONFIG_DEFAULT_TCP_CONG="cubic" |
356 | CONFIG_TCP_MD5SIG=y | 415 | CONFIG_TCP_MD5SIG=y |
357 | CONFIG_IP_VS=m | ||
358 | # CONFIG_IP_VS_DEBUG is not set | ||
359 | CONFIG_IP_VS_TAB_BITS=12 | ||
360 | |||
361 | # | ||
362 | # IPVS transport protocol load balancing support | ||
363 | # | ||
364 | CONFIG_IP_VS_PROTO_TCP=y | ||
365 | CONFIG_IP_VS_PROTO_UDP=y | ||
366 | CONFIG_IP_VS_PROTO_ESP=y | ||
367 | CONFIG_IP_VS_PROTO_AH=y | ||
368 | |||
369 | # | ||
370 | # IPVS scheduler | ||
371 | # | ||
372 | CONFIG_IP_VS_RR=m | ||
373 | CONFIG_IP_VS_WRR=m | ||
374 | CONFIG_IP_VS_LC=m | ||
375 | CONFIG_IP_VS_WLC=m | ||
376 | CONFIG_IP_VS_LBLC=m | ||
377 | CONFIG_IP_VS_LBLCR=m | ||
378 | CONFIG_IP_VS_DH=m | ||
379 | CONFIG_IP_VS_SH=m | ||
380 | CONFIG_IP_VS_SED=m | ||
381 | CONFIG_IP_VS_NQ=m | ||
382 | |||
383 | # | ||
384 | # IPVS application helper | ||
385 | # | ||
386 | CONFIG_IP_VS_FTP=m | ||
387 | CONFIG_IPV6=m | 416 | CONFIG_IPV6=m |
388 | CONFIG_IPV6_PRIVACY=y | 417 | CONFIG_IPV6_PRIVACY=y |
389 | CONFIG_IPV6_ROUTER_PREF=y | 418 | CONFIG_IPV6_ROUTER_PREF=y |
@@ -400,11 +429,13 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m | |||
400 | CONFIG_INET6_XFRM_MODE_BEET=m | 429 | CONFIG_INET6_XFRM_MODE_BEET=m |
401 | CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m | 430 | CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m |
402 | CONFIG_IPV6_SIT=m | 431 | CONFIG_IPV6_SIT=m |
432 | CONFIG_IPV6_SIT_6RD=y | ||
403 | CONFIG_IPV6_NDISC_NODETYPE=y | 433 | CONFIG_IPV6_NDISC_NODETYPE=y |
404 | CONFIG_IPV6_TUNNEL=m | 434 | CONFIG_IPV6_TUNNEL=m |
405 | CONFIG_IPV6_MULTIPLE_TABLES=y | 435 | CONFIG_IPV6_MULTIPLE_TABLES=y |
406 | CONFIG_IPV6_SUBTREES=y | 436 | CONFIG_IPV6_SUBTREES=y |
407 | # CONFIG_IPV6_MROUTE is not set | 437 | # CONFIG_IPV6_MROUTE is not set |
438 | CONFIG_NETLABEL=y | ||
408 | CONFIG_NETWORK_SECMARK=y | 439 | CONFIG_NETWORK_SECMARK=y |
409 | CONFIG_NETFILTER=y | 440 | CONFIG_NETFILTER=y |
410 | # CONFIG_NETFILTER_DEBUG is not set | 441 | # CONFIG_NETFILTER_DEBUG is not set |
@@ -422,19 +453,53 @@ CONFIG_NF_CONNTRACK_IRC=m | |||
422 | CONFIG_NF_CONNTRACK_SIP=m | 453 | CONFIG_NF_CONNTRACK_SIP=m |
423 | CONFIG_NF_CT_NETLINK=m | 454 | CONFIG_NF_CT_NETLINK=m |
424 | CONFIG_NETFILTER_XTABLES=m | 455 | CONFIG_NETFILTER_XTABLES=m |
456 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
425 | CONFIG_NETFILTER_XT_TARGET_MARK=m | 457 | CONFIG_NETFILTER_XT_TARGET_MARK=m |
426 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | 458 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m |
427 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | 459 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m |
428 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
429 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | 460 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m |
430 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | 461 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m |
431 | CONFIG_NETFILTER_XT_MATCH_MARK=m | 462 | CONFIG_NETFILTER_XT_MATCH_MARK=m |
432 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | 463 | CONFIG_NETFILTER_XT_MATCH_POLICY=m |
433 | CONFIG_NETFILTER_XT_MATCH_STATE=m | 464 | CONFIG_NETFILTER_XT_MATCH_STATE=m |
465 | CONFIG_IP_VS=m | ||
466 | CONFIG_IP_VS_IPV6=y | ||
467 | # CONFIG_IP_VS_DEBUG is not set | ||
468 | CONFIG_IP_VS_TAB_BITS=12 | ||
469 | |||
470 | # | ||
471 | # IPVS transport protocol load balancing support | ||
472 | # | ||
473 | CONFIG_IP_VS_PROTO_TCP=y | ||
474 | CONFIG_IP_VS_PROTO_UDP=y | ||
475 | CONFIG_IP_VS_PROTO_AH_ESP=y | ||
476 | CONFIG_IP_VS_PROTO_ESP=y | ||
477 | CONFIG_IP_VS_PROTO_AH=y | ||
478 | CONFIG_IP_VS_PROTO_SCTP=y | ||
479 | |||
480 | # | ||
481 | # IPVS scheduler | ||
482 | # | ||
483 | CONFIG_IP_VS_RR=m | ||
484 | CONFIG_IP_VS_WRR=m | ||
485 | CONFIG_IP_VS_LC=m | ||
486 | CONFIG_IP_VS_WLC=m | ||
487 | CONFIG_IP_VS_LBLC=m | ||
488 | CONFIG_IP_VS_LBLCR=m | ||
489 | CONFIG_IP_VS_DH=m | ||
490 | CONFIG_IP_VS_SH=m | ||
491 | CONFIG_IP_VS_SED=m | ||
492 | CONFIG_IP_VS_NQ=m | ||
493 | |||
494 | # | ||
495 | # IPVS application helper | ||
496 | # | ||
497 | CONFIG_IP_VS_FTP=m | ||
434 | 498 | ||
435 | # | 499 | # |
436 | # IP: Netfilter Configuration | 500 | # IP: Netfilter Configuration |
437 | # | 501 | # |
502 | CONFIG_NF_DEFRAG_IPV4=m | ||
438 | CONFIG_NF_CONNTRACK_IPV4=m | 503 | CONFIG_NF_CONNTRACK_IPV4=m |
439 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | 504 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y |
440 | CONFIG_IP_NF_IPTABLES=m | 505 | CONFIG_IP_NF_IPTABLES=m |
@@ -460,22 +525,44 @@ CONFIG_IP_NF_MANGLE=m | |||
460 | CONFIG_NF_CONNTRACK_IPV6=m | 525 | CONFIG_NF_CONNTRACK_IPV6=m |
461 | CONFIG_IP6_NF_IPTABLES=m | 526 | CONFIG_IP6_NF_IPTABLES=m |
462 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m | 527 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m |
463 | CONFIG_IP6_NF_FILTER=m | ||
464 | CONFIG_IP6_NF_TARGET_LOG=m | 528 | CONFIG_IP6_NF_TARGET_LOG=m |
529 | CONFIG_IP6_NF_FILTER=m | ||
465 | CONFIG_IP6_NF_TARGET_REJECT=m | 530 | CONFIG_IP6_NF_TARGET_REJECT=m |
466 | CONFIG_IP6_NF_MANGLE=m | 531 | CONFIG_IP6_NF_MANGLE=m |
467 | # CONFIG_IP_DCCP is not set | 532 | CONFIG_IP_DCCP=m |
533 | CONFIG_INET_DCCP_DIAG=m | ||
534 | |||
535 | # | ||
536 | # DCCP CCIDs Configuration (EXPERIMENTAL) | ||
537 | # | ||
538 | # CONFIG_IP_DCCP_CCID2_DEBUG is not set | ||
539 | CONFIG_IP_DCCP_CCID3=y | ||
540 | # CONFIG_IP_DCCP_CCID3_DEBUG is not set | ||
541 | CONFIG_IP_DCCP_CCID3_RTO=100 | ||
542 | CONFIG_IP_DCCP_TFRC_LIB=y | ||
543 | |||
544 | # | ||
545 | # DCCP Kernel Hacking | ||
546 | # | ||
547 | # CONFIG_IP_DCCP_DEBUG is not set | ||
468 | CONFIG_IP_SCTP=m | 548 | CONFIG_IP_SCTP=m |
469 | # CONFIG_SCTP_DBG_MSG is not set | 549 | # CONFIG_SCTP_DBG_MSG is not set |
470 | # CONFIG_SCTP_DBG_OBJCNT is not set | 550 | # CONFIG_SCTP_DBG_OBJCNT is not set |
471 | # CONFIG_SCTP_HMAC_NONE is not set | 551 | # CONFIG_SCTP_HMAC_NONE is not set |
472 | # CONFIG_SCTP_HMAC_SHA1 is not set | 552 | CONFIG_SCTP_HMAC_SHA1=y |
473 | CONFIG_SCTP_HMAC_MD5=y | 553 | # CONFIG_SCTP_HMAC_MD5 is not set |
554 | # CONFIG_RDS is not set | ||
474 | # CONFIG_TIPC is not set | 555 | # CONFIG_TIPC is not set |
475 | # CONFIG_ATM is not set | 556 | # CONFIG_ATM is not set |
476 | # CONFIG_BRIDGE is not set | 557 | CONFIG_STP=m |
477 | # CONFIG_VLAN_8021Q is not set | 558 | CONFIG_GARP=m |
559 | CONFIG_BRIDGE=m | ||
560 | CONFIG_BRIDGE_IGMP_SNOOPING=y | ||
561 | # CONFIG_NET_DSA is not set | ||
562 | CONFIG_VLAN_8021Q=m | ||
563 | CONFIG_VLAN_8021Q_GVRP=y | ||
478 | # CONFIG_DECNET is not set | 564 | # CONFIG_DECNET is not set |
565 | CONFIG_LLC=m | ||
479 | # CONFIG_LLC2 is not set | 566 | # CONFIG_LLC2 is not set |
480 | # CONFIG_IPX is not set | 567 | # CONFIG_IPX is not set |
481 | # CONFIG_ATALK is not set | 568 | # CONFIG_ATALK is not set |
@@ -483,26 +570,47 @@ CONFIG_SCTP_HMAC_MD5=y | |||
483 | # CONFIG_LAPB is not set | 570 | # CONFIG_LAPB is not set |
484 | # CONFIG_ECONET is not set | 571 | # CONFIG_ECONET is not set |
485 | # CONFIG_WAN_ROUTER is not set | 572 | # CONFIG_WAN_ROUTER is not set |
573 | # CONFIG_PHONET is not set | ||
574 | # CONFIG_IEEE802154 is not set | ||
486 | # CONFIG_NET_SCHED is not set | 575 | # CONFIG_NET_SCHED is not set |
576 | # CONFIG_DCB is not set | ||
487 | 577 | ||
488 | # | 578 | # |
489 | # Network testing | 579 | # Network testing |
490 | # | 580 | # |
491 | # CONFIG_NET_PKTGEN is not set | 581 | # CONFIG_NET_PKTGEN is not set |
492 | # CONFIG_HAMRADIO is not set | 582 | CONFIG_HAMRADIO=y |
583 | |||
584 | # | ||
585 | # Packet Radio protocols | ||
586 | # | ||
587 | CONFIG_AX25=m | ||
588 | CONFIG_AX25_DAMA_SLAVE=y | ||
589 | CONFIG_NETROM=m | ||
590 | CONFIG_ROSE=m | ||
591 | |||
592 | # | ||
593 | # AX.25 network device drivers | ||
594 | # | ||
595 | CONFIG_MKISS=m | ||
596 | CONFIG_6PACK=m | ||
597 | CONFIG_BPQETHER=m | ||
598 | CONFIG_BAYCOM_SER_FDX=m | ||
599 | CONFIG_BAYCOM_SER_HDX=m | ||
600 | CONFIG_YAM=m | ||
493 | # CONFIG_CAN is not set | 601 | # CONFIG_CAN is not set |
494 | # CONFIG_IRDA is not set | 602 | # CONFIG_IRDA is not set |
495 | # CONFIG_BT is not set | 603 | # CONFIG_BT is not set |
496 | # CONFIG_AF_RXRPC is not set | 604 | # CONFIG_AF_RXRPC is not set |
497 | CONFIG_FIB_RULES=y | 605 | CONFIG_FIB_RULES=y |
606 | CONFIG_WIRELESS=y | ||
607 | # CONFIG_CFG80211 is not set | ||
608 | # CONFIG_LIB80211 is not set | ||
498 | 609 | ||
499 | # | 610 | # |
500 | # Wireless | 611 | # CFG80211 needs to be enabled for MAC80211 |
501 | # | 612 | # |
502 | # CONFIG_CFG80211 is not set | 613 | # CONFIG_WIMAX is not set |
503 | # CONFIG_WIRELESS_EXT is not set | ||
504 | # CONFIG_MAC80211 is not set | ||
505 | # CONFIG_IEEE80211 is not set | ||
506 | # CONFIG_RFKILL is not set | 614 | # CONFIG_RFKILL is not set |
507 | # CONFIG_NET_9P is not set | 615 | # CONFIG_NET_9P is not set |
508 | 616 | ||
@@ -514,9 +622,12 @@ CONFIG_FIB_RULES=y | |||
514 | # Generic Driver Options | 622 | # Generic Driver Options |
515 | # | 623 | # |
516 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | 624 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" |
625 | # CONFIG_DEVTMPFS is not set | ||
517 | CONFIG_STANDALONE=y | 626 | CONFIG_STANDALONE=y |
518 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 627 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
519 | CONFIG_FW_LOADER=m | 628 | CONFIG_FW_LOADER=m |
629 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
630 | CONFIG_EXTRA_FIRMWARE="" | ||
520 | # CONFIG_DEBUG_DRIVER is not set | 631 | # CONFIG_DEBUG_DRIVER is not set |
521 | # CONFIG_DEBUG_DEVRES is not set | 632 | # CONFIG_DEBUG_DEVRES is not set |
522 | # CONFIG_SYS_HYPERVISOR is not set | 633 | # CONFIG_SYS_HYPERVISOR is not set |
@@ -531,33 +642,53 @@ CONFIG_BLK_DEV=y | |||
531 | # CONFIG_BLK_DEV_COW_COMMON is not set | 642 | # CONFIG_BLK_DEV_COW_COMMON is not set |
532 | CONFIG_BLK_DEV_LOOP=m | 643 | CONFIG_BLK_DEV_LOOP=m |
533 | CONFIG_BLK_DEV_CRYPTOLOOP=m | 644 | CONFIG_BLK_DEV_CRYPTOLOOP=m |
645 | |||
646 | # | ||
647 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected | ||
648 | # | ||
534 | CONFIG_BLK_DEV_NBD=m | 649 | CONFIG_BLK_DEV_NBD=m |
535 | # CONFIG_BLK_DEV_SX8 is not set | 650 | # CONFIG_BLK_DEV_SX8 is not set |
536 | # CONFIG_BLK_DEV_RAM is not set | 651 | # CONFIG_BLK_DEV_RAM is not set |
537 | # CONFIG_CDROM_PKTCDVD is not set | 652 | # CONFIG_CDROM_PKTCDVD is not set |
538 | # CONFIG_ATA_OVER_ETH is not set | 653 | # CONFIG_ATA_OVER_ETH is not set |
654 | # CONFIG_BLK_DEV_HD is not set | ||
539 | CONFIG_MISC_DEVICES=y | 655 | CONFIG_MISC_DEVICES=y |
656 | # CONFIG_AD525X_DPOT is not set | ||
540 | # CONFIG_PHANTOM is not set | 657 | # CONFIG_PHANTOM is not set |
541 | # CONFIG_EEPROM_93CX6 is not set | ||
542 | CONFIG_SGI_IOC4=m | 658 | CONFIG_SGI_IOC4=m |
543 | # CONFIG_TIFM_CORE is not set | 659 | # CONFIG_TIFM_CORE is not set |
660 | # CONFIG_ICS932S401 is not set | ||
544 | # CONFIG_ENCLOSURE_SERVICES is not set | 661 | # CONFIG_ENCLOSURE_SERVICES is not set |
662 | # CONFIG_HP_ILO is not set | ||
663 | # CONFIG_ISL29003 is not set | ||
664 | # CONFIG_SENSORS_TSL2550 is not set | ||
665 | # CONFIG_DS1682 is not set | ||
666 | # CONFIG_C2PORT is not set | ||
667 | |||
668 | # | ||
669 | # EEPROM support | ||
670 | # | ||
671 | # CONFIG_EEPROM_AT24 is not set | ||
672 | CONFIG_EEPROM_LEGACY=y | ||
673 | CONFIG_EEPROM_MAX6875=y | ||
674 | # CONFIG_EEPROM_93CX6 is not set | ||
675 | # CONFIG_CB710_CORE is not set | ||
545 | CONFIG_HAVE_IDE=y | 676 | CONFIG_HAVE_IDE=y |
546 | CONFIG_IDE=y | 677 | CONFIG_IDE=y |
547 | CONFIG_IDE_MAX_HWIFS=4 | ||
548 | CONFIG_BLK_DEV_IDE=y | ||
549 | 678 | ||
550 | # | 679 | # |
551 | # Please see Documentation/ide/ide.txt for help/info on IDE drives | 680 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
552 | # | 681 | # |
682 | CONFIG_IDE_XFER_MODE=y | ||
683 | CONFIG_IDE_TIMINGS=y | ||
684 | CONFIG_IDE_ATAPI=y | ||
553 | # CONFIG_BLK_DEV_IDE_SATA is not set | 685 | # CONFIG_BLK_DEV_IDE_SATA is not set |
554 | CONFIG_BLK_DEV_IDEDISK=y | 686 | CONFIG_IDE_GD=y |
555 | # CONFIG_IDEDISK_MULTI_MODE is not set | 687 | CONFIG_IDE_GD_ATA=y |
688 | # CONFIG_IDE_GD_ATAPI is not set | ||
556 | CONFIG_BLK_DEV_IDECD=y | 689 | CONFIG_BLK_DEV_IDECD=y |
557 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | 690 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y |
558 | CONFIG_BLK_DEV_IDETAPE=y | 691 | CONFIG_BLK_DEV_IDETAPE=y |
559 | CONFIG_BLK_DEV_IDEFLOPPY=y | ||
560 | # CONFIG_BLK_DEV_IDESCSI is not set | ||
561 | # CONFIG_IDE_TASK_IOCTL is not set | 692 | # CONFIG_IDE_TASK_IOCTL is not set |
562 | CONFIG_IDE_PROC_FS=y | 693 | CONFIG_IDE_PROC_FS=y |
563 | 694 | ||
@@ -582,14 +713,13 @@ CONFIG_BLK_DEV_IDEDMA_PCI=y | |||
582 | # CONFIG_BLK_DEV_AMD74XX is not set | 713 | # CONFIG_BLK_DEV_AMD74XX is not set |
583 | CONFIG_BLK_DEV_CMD64X=y | 714 | CONFIG_BLK_DEV_CMD64X=y |
584 | # CONFIG_BLK_DEV_TRIFLEX is not set | 715 | # CONFIG_BLK_DEV_TRIFLEX is not set |
585 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
586 | # CONFIG_BLK_DEV_CS5520 is not set | 716 | # CONFIG_BLK_DEV_CS5520 is not set |
587 | # CONFIG_BLK_DEV_CS5530 is not set | 717 | # CONFIG_BLK_DEV_CS5530 is not set |
588 | # CONFIG_BLK_DEV_HPT34X is not set | ||
589 | # CONFIG_BLK_DEV_HPT366 is not set | 718 | # CONFIG_BLK_DEV_HPT366 is not set |
590 | # CONFIG_BLK_DEV_JMICRON is not set | 719 | # CONFIG_BLK_DEV_JMICRON is not set |
591 | # CONFIG_BLK_DEV_SC1200 is not set | 720 | # CONFIG_BLK_DEV_SC1200 is not set |
592 | # CONFIG_BLK_DEV_PIIX is not set | 721 | # CONFIG_BLK_DEV_PIIX is not set |
722 | # CONFIG_BLK_DEV_IT8172 is not set | ||
593 | CONFIG_BLK_DEV_IT8213=m | 723 | CONFIG_BLK_DEV_IT8213=m |
594 | # CONFIG_BLK_DEV_IT821X is not set | 724 | # CONFIG_BLK_DEV_IT821X is not set |
595 | # CONFIG_BLK_DEV_NS87415 is not set | 725 | # CONFIG_BLK_DEV_NS87415 is not set |
@@ -601,14 +731,12 @@ CONFIG_BLK_DEV_IT8213=m | |||
601 | # CONFIG_BLK_DEV_TRM290 is not set | 731 | # CONFIG_BLK_DEV_TRM290 is not set |
602 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 732 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
603 | CONFIG_BLK_DEV_TC86C001=m | 733 | CONFIG_BLK_DEV_TC86C001=m |
604 | # CONFIG_BLK_DEV_IDE_SWARM is not set | ||
605 | CONFIG_BLK_DEV_IDEDMA=y | 734 | CONFIG_BLK_DEV_IDEDMA=y |
606 | # CONFIG_BLK_DEV_HD_ONLY is not set | ||
607 | # CONFIG_BLK_DEV_HD is not set | ||
608 | 735 | ||
609 | # | 736 | # |
610 | # SCSI device support | 737 | # SCSI device support |
611 | # | 738 | # |
739 | CONFIG_SCSI_MOD=y | ||
612 | # CONFIG_RAID_ATTRS is not set | 740 | # CONFIG_RAID_ATTRS is not set |
613 | CONFIG_SCSI=y | 741 | CONFIG_SCSI=y |
614 | CONFIG_SCSI_DMA=y | 742 | CONFIG_SCSI_DMA=y |
@@ -626,10 +754,6 @@ CONFIG_BLK_DEV_SR=m | |||
626 | CONFIG_BLK_DEV_SR_VENDOR=y | 754 | CONFIG_BLK_DEV_SR_VENDOR=y |
627 | CONFIG_CHR_DEV_SG=m | 755 | CONFIG_CHR_DEV_SG=m |
628 | CONFIG_CHR_DEV_SCH=m | 756 | CONFIG_CHR_DEV_SCH=m |
629 | |||
630 | # | ||
631 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
632 | # | ||
633 | # CONFIG_SCSI_MULTI_LUN is not set | 757 | # CONFIG_SCSI_MULTI_LUN is not set |
634 | # CONFIG_SCSI_CONSTANTS is not set | 758 | # CONFIG_SCSI_CONSTANTS is not set |
635 | # CONFIG_SCSI_LOGGING is not set | 759 | # CONFIG_SCSI_LOGGING is not set |
@@ -646,27 +770,36 @@ CONFIG_SCSI_WAIT_SCAN=m | |||
646 | # CONFIG_SCSI_SRP_ATTRS is not set | 770 | # CONFIG_SCSI_SRP_ATTRS is not set |
647 | CONFIG_SCSI_LOWLEVEL=y | 771 | CONFIG_SCSI_LOWLEVEL=y |
648 | # CONFIG_ISCSI_TCP is not set | 772 | # CONFIG_ISCSI_TCP is not set |
773 | # CONFIG_SCSI_CXGB3_ISCSI is not set | ||
774 | # CONFIG_SCSI_BNX2_ISCSI is not set | ||
775 | # CONFIG_BE2ISCSI is not set | ||
649 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 776 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
777 | # CONFIG_SCSI_HPSA is not set | ||
650 | # CONFIG_SCSI_3W_9XXX is not set | 778 | # CONFIG_SCSI_3W_9XXX is not set |
779 | # CONFIG_SCSI_3W_SAS is not set | ||
651 | # CONFIG_SCSI_ACARD is not set | 780 | # CONFIG_SCSI_ACARD is not set |
652 | # CONFIG_SCSI_AACRAID is not set | 781 | # CONFIG_SCSI_AACRAID is not set |
653 | # CONFIG_SCSI_AIC7XXX is not set | 782 | # CONFIG_SCSI_AIC7XXX is not set |
654 | # CONFIG_SCSI_AIC7XXX_OLD is not set | 783 | # CONFIG_SCSI_AIC7XXX_OLD is not set |
655 | # CONFIG_SCSI_AIC79XX is not set | 784 | # CONFIG_SCSI_AIC79XX is not set |
656 | # CONFIG_SCSI_AIC94XX is not set | 785 | # CONFIG_SCSI_AIC94XX is not set |
786 | # CONFIG_SCSI_MVSAS is not set | ||
657 | # CONFIG_SCSI_DPT_I2O is not set | 787 | # CONFIG_SCSI_DPT_I2O is not set |
658 | # CONFIG_SCSI_ADVANSYS is not set | 788 | # CONFIG_SCSI_ADVANSYS is not set |
659 | # CONFIG_SCSI_ARCMSR is not set | 789 | # CONFIG_SCSI_ARCMSR is not set |
660 | # CONFIG_MEGARAID_NEWGEN is not set | 790 | # CONFIG_MEGARAID_NEWGEN is not set |
661 | # CONFIG_MEGARAID_LEGACY is not set | 791 | # CONFIG_MEGARAID_LEGACY is not set |
662 | # CONFIG_MEGARAID_SAS is not set | 792 | # CONFIG_MEGARAID_SAS is not set |
793 | # CONFIG_SCSI_MPT2SAS is not set | ||
663 | # CONFIG_SCSI_HPTIOP is not set | 794 | # CONFIG_SCSI_HPTIOP is not set |
795 | # CONFIG_LIBFC is not set | ||
796 | # CONFIG_LIBFCOE is not set | ||
797 | # CONFIG_FCOE is not set | ||
664 | # CONFIG_SCSI_DMX3191D is not set | 798 | # CONFIG_SCSI_DMX3191D is not set |
665 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 799 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
666 | # CONFIG_SCSI_IPS is not set | 800 | # CONFIG_SCSI_IPS is not set |
667 | # CONFIG_SCSI_INITIO is not set | 801 | # CONFIG_SCSI_INITIO is not set |
668 | # CONFIG_SCSI_INIA100 is not set | 802 | # CONFIG_SCSI_INIA100 is not set |
669 | # CONFIG_SCSI_MVSAS is not set | ||
670 | # CONFIG_SCSI_STEX is not set | 803 | # CONFIG_SCSI_STEX is not set |
671 | # CONFIG_SCSI_SYM53C8XX_2 is not set | 804 | # CONFIG_SCSI_SYM53C8XX_2 is not set |
672 | # CONFIG_SCSI_IPR is not set | 805 | # CONFIG_SCSI_IPR is not set |
@@ -677,9 +810,15 @@ CONFIG_SCSI_LOWLEVEL=y | |||
677 | # CONFIG_SCSI_DC395x is not set | 810 | # CONFIG_SCSI_DC395x is not set |
678 | # CONFIG_SCSI_DC390T is not set | 811 | # CONFIG_SCSI_DC390T is not set |
679 | # CONFIG_SCSI_DEBUG is not set | 812 | # CONFIG_SCSI_DEBUG is not set |
813 | # CONFIG_SCSI_PMCRAID is not set | ||
814 | # CONFIG_SCSI_PM8001 is not set | ||
680 | # CONFIG_SCSI_SRP is not set | 815 | # CONFIG_SCSI_SRP is not set |
816 | # CONFIG_SCSI_BFA_FC is not set | ||
817 | # CONFIG_SCSI_DH is not set | ||
818 | # CONFIG_SCSI_OSD_INITIATOR is not set | ||
681 | CONFIG_ATA=y | 819 | CONFIG_ATA=y |
682 | # CONFIG_ATA_NONSTANDARD is not set | 820 | # CONFIG_ATA_NONSTANDARD is not set |
821 | CONFIG_ATA_VERBOSE_ERROR=y | ||
683 | CONFIG_SATA_PMP=y | 822 | CONFIG_SATA_PMP=y |
684 | # CONFIG_SATA_AHCI is not set | 823 | # CONFIG_SATA_AHCI is not set |
685 | CONFIG_SATA_SIL24=y | 824 | CONFIG_SATA_SIL24=y |
@@ -701,6 +840,7 @@ CONFIG_ATA_SFF=y | |||
701 | # CONFIG_PATA_ALI is not set | 840 | # CONFIG_PATA_ALI is not set |
702 | # CONFIG_PATA_AMD is not set | 841 | # CONFIG_PATA_AMD is not set |
703 | # CONFIG_PATA_ARTOP is not set | 842 | # CONFIG_PATA_ARTOP is not set |
843 | # CONFIG_PATA_ATP867X is not set | ||
704 | # CONFIG_PATA_ATIIXP is not set | 844 | # CONFIG_PATA_ATIIXP is not set |
705 | # CONFIG_PATA_CMD640_PCI is not set | 845 | # CONFIG_PATA_CMD640_PCI is not set |
706 | # CONFIG_PATA_CMD64X is not set | 846 | # CONFIG_PATA_CMD64X is not set |
@@ -716,6 +856,7 @@ CONFIG_ATA_SFF=y | |||
716 | # CONFIG_PATA_IT821X is not set | 856 | # CONFIG_PATA_IT821X is not set |
717 | # CONFIG_PATA_IT8213 is not set | 857 | # CONFIG_PATA_IT8213 is not set |
718 | # CONFIG_PATA_JMICRON is not set | 858 | # CONFIG_PATA_JMICRON is not set |
859 | # CONFIG_PATA_LEGACY is not set | ||
719 | # CONFIG_PATA_TRIFLEX is not set | 860 | # CONFIG_PATA_TRIFLEX is not set |
720 | # CONFIG_PATA_MARVELL is not set | 861 | # CONFIG_PATA_MARVELL is not set |
721 | # CONFIG_PATA_MPIIX is not set | 862 | # CONFIG_PATA_MPIIX is not set |
@@ -726,14 +867,16 @@ CONFIG_ATA_SFF=y | |||
726 | # CONFIG_PATA_NS87415 is not set | 867 | # CONFIG_PATA_NS87415 is not set |
727 | # CONFIG_PATA_OPTI is not set | 868 | # CONFIG_PATA_OPTI is not set |
728 | # CONFIG_PATA_OPTIDMA is not set | 869 | # CONFIG_PATA_OPTIDMA is not set |
870 | # CONFIG_PATA_PDC2027X is not set | ||
729 | # CONFIG_PATA_PDC_OLD is not set | 871 | # CONFIG_PATA_PDC_OLD is not set |
730 | # CONFIG_PATA_RADISYS is not set | 872 | # CONFIG_PATA_RADISYS is not set |
873 | # CONFIG_PATA_RDC is not set | ||
731 | # CONFIG_PATA_RZ1000 is not set | 874 | # CONFIG_PATA_RZ1000 is not set |
732 | # CONFIG_PATA_SC1200 is not set | 875 | # CONFIG_PATA_SC1200 is not set |
733 | # CONFIG_PATA_SERVERWORKS is not set | 876 | # CONFIG_PATA_SERVERWORKS is not set |
734 | # CONFIG_PATA_PDC2027X is not set | ||
735 | CONFIG_PATA_SIL680=y | 877 | CONFIG_PATA_SIL680=y |
736 | # CONFIG_PATA_SIS is not set | 878 | # CONFIG_PATA_SIS is not set |
879 | # CONFIG_PATA_TOSHIBA is not set | ||
737 | # CONFIG_PATA_VIA is not set | 880 | # CONFIG_PATA_VIA is not set |
738 | # CONFIG_PATA_WINBOND is not set | 881 | # CONFIG_PATA_WINBOND is not set |
739 | # CONFIG_PATA_PLATFORM is not set | 882 | # CONFIG_PATA_PLATFORM is not set |
@@ -746,13 +889,16 @@ CONFIG_PATA_SIL680=y | |||
746 | # | 889 | # |
747 | 890 | ||
748 | # | 891 | # |
749 | # Enable only one of the two stacks, unless you know what you are doing | 892 | # You can enable one or both FireWire driver stacks. |
893 | # | ||
894 | |||
895 | # | ||
896 | # The newer stack is recommended. | ||
750 | # | 897 | # |
751 | # CONFIG_FIREWIRE is not set | 898 | # CONFIG_FIREWIRE is not set |
752 | # CONFIG_IEEE1394 is not set | 899 | # CONFIG_IEEE1394 is not set |
753 | # CONFIG_I2O is not set | 900 | # CONFIG_I2O is not set |
754 | CONFIG_NETDEVICES=y | 901 | CONFIG_NETDEVICES=y |
755 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
756 | # CONFIG_DUMMY is not set | 902 | # CONFIG_DUMMY is not set |
757 | # CONFIG_BONDING is not set | 903 | # CONFIG_BONDING is not set |
758 | # CONFIG_MACVLAN is not set | 904 | # CONFIG_MACVLAN is not set |
@@ -775,6 +921,9 @@ CONFIG_PHYLIB=y | |||
775 | # CONFIG_BROADCOM_PHY is not set | 921 | # CONFIG_BROADCOM_PHY is not set |
776 | # CONFIG_ICPLUS_PHY is not set | 922 | # CONFIG_ICPLUS_PHY is not set |
777 | # CONFIG_REALTEK_PHY is not set | 923 | # CONFIG_REALTEK_PHY is not set |
924 | # CONFIG_NATIONAL_PHY is not set | ||
925 | # CONFIG_STE10XP is not set | ||
926 | # CONFIG_LSI_ET1011C_PHY is not set | ||
778 | # CONFIG_FIXED_PHY is not set | 927 | # CONFIG_FIXED_PHY is not set |
779 | # CONFIG_MDIO_BITBANG is not set | 928 | # CONFIG_MDIO_BITBANG is not set |
780 | CONFIG_NET_ETHERNET=y | 929 | CONFIG_NET_ETHERNET=y |
@@ -784,23 +933,33 @@ CONFIG_MII=y | |||
784 | # CONFIG_SUNGEM is not set | 933 | # CONFIG_SUNGEM is not set |
785 | # CONFIG_CASSINI is not set | 934 | # CONFIG_CASSINI is not set |
786 | # CONFIG_NET_VENDOR_3COM is not set | 935 | # CONFIG_NET_VENDOR_3COM is not set |
936 | # CONFIG_SMC91X is not set | ||
787 | # CONFIG_DM9000 is not set | 937 | # CONFIG_DM9000 is not set |
938 | # CONFIG_ETHOC is not set | ||
939 | # CONFIG_SMSC911X is not set | ||
940 | # CONFIG_DNET is not set | ||
788 | # CONFIG_NET_TULIP is not set | 941 | # CONFIG_NET_TULIP is not set |
789 | # CONFIG_HP100 is not set | 942 | # CONFIG_HP100 is not set |
790 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | 943 | # CONFIG_IBM_NEW_EMAC_ZMII is not set |
791 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 944 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
792 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 945 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
793 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 946 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
947 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
948 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
949 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
794 | # CONFIG_NET_PCI is not set | 950 | # CONFIG_NET_PCI is not set |
795 | # CONFIG_B44 is not set | 951 | # CONFIG_B44 is not set |
952 | # CONFIG_KS8842 is not set | ||
953 | # CONFIG_KS8851_MLL is not set | ||
954 | # CONFIG_ATL2 is not set | ||
796 | CONFIG_NETDEV_1000=y | 955 | CONFIG_NETDEV_1000=y |
797 | # CONFIG_ACENIC is not set | 956 | # CONFIG_ACENIC is not set |
798 | # CONFIG_DL2K is not set | 957 | # CONFIG_DL2K is not set |
799 | # CONFIG_E1000 is not set | 958 | # CONFIG_E1000 is not set |
800 | # CONFIG_E1000E is not set | 959 | # CONFIG_E1000E is not set |
801 | # CONFIG_E1000E_ENABLED is not set | ||
802 | # CONFIG_IP1000 is not set | 960 | # CONFIG_IP1000 is not set |
803 | # CONFIG_IGB is not set | 961 | # CONFIG_IGB is not set |
962 | # CONFIG_IGBVF is not set | ||
804 | # CONFIG_NS83820 is not set | 963 | # CONFIG_NS83820 is not set |
805 | # CONFIG_HAMACHI is not set | 964 | # CONFIG_HAMACHI is not set |
806 | # CONFIG_YELLOWFIN is not set | 965 | # CONFIG_YELLOWFIN is not set |
@@ -812,29 +971,42 @@ CONFIG_SB1250_MAC=y | |||
812 | # CONFIG_VIA_VELOCITY is not set | 971 | # CONFIG_VIA_VELOCITY is not set |
813 | # CONFIG_TIGON3 is not set | 972 | # CONFIG_TIGON3 is not set |
814 | # CONFIG_BNX2 is not set | 973 | # CONFIG_BNX2 is not set |
974 | # CONFIG_CNIC is not set | ||
815 | # CONFIG_QLA3XXX is not set | 975 | # CONFIG_QLA3XXX is not set |
816 | # CONFIG_ATL1 is not set | 976 | # CONFIG_ATL1 is not set |
977 | # CONFIG_ATL1E is not set | ||
978 | # CONFIG_ATL1C is not set | ||
979 | # CONFIG_JME is not set | ||
817 | CONFIG_NETDEV_10000=y | 980 | CONFIG_NETDEV_10000=y |
981 | CONFIG_MDIO=m | ||
818 | # CONFIG_CHELSIO_T1 is not set | 982 | # CONFIG_CHELSIO_T1 is not set |
983 | CONFIG_CHELSIO_T3_DEPENDS=y | ||
819 | CONFIG_CHELSIO_T3=m | 984 | CONFIG_CHELSIO_T3=m |
985 | # CONFIG_ENIC is not set | ||
820 | # CONFIG_IXGBE is not set | 986 | # CONFIG_IXGBE is not set |
821 | # CONFIG_IXGB is not set | 987 | # CONFIG_IXGB is not set |
822 | # CONFIG_S2IO is not set | 988 | # CONFIG_S2IO is not set |
989 | # CONFIG_VXGE is not set | ||
823 | # CONFIG_MYRI10GE is not set | 990 | # CONFIG_MYRI10GE is not set |
824 | CONFIG_NETXEN_NIC=m | 991 | CONFIG_NETXEN_NIC=m |
825 | # CONFIG_NIU is not set | 992 | # CONFIG_NIU is not set |
993 | # CONFIG_MLX4_EN is not set | ||
826 | # CONFIG_MLX4_CORE is not set | 994 | # CONFIG_MLX4_CORE is not set |
827 | # CONFIG_TEHUTI is not set | 995 | # CONFIG_TEHUTI is not set |
828 | # CONFIG_BNX2X is not set | 996 | # CONFIG_BNX2X is not set |
997 | # CONFIG_QLCNIC is not set | ||
998 | # CONFIG_QLGE is not set | ||
829 | # CONFIG_SFC is not set | 999 | # CONFIG_SFC is not set |
1000 | # CONFIG_BE2NET is not set | ||
830 | # CONFIG_TR is not set | 1001 | # CONFIG_TR is not set |
1002 | CONFIG_WLAN=y | ||
1003 | # CONFIG_ATMEL is not set | ||
1004 | # CONFIG_PRISM54 is not set | ||
1005 | # CONFIG_HOSTAP is not set | ||
831 | 1006 | ||
832 | # | 1007 | # |
833 | # Wireless LAN | 1008 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
834 | # | 1009 | # |
835 | # CONFIG_WLAN_PRE80211 is not set | ||
836 | # CONFIG_WLAN_80211 is not set | ||
837 | # CONFIG_IWLWIFI_LEDS is not set | ||
838 | # CONFIG_WAN is not set | 1010 | # CONFIG_WAN is not set |
839 | # CONFIG_FDDI is not set | 1011 | # CONFIG_FDDI is not set |
840 | # CONFIG_HIPPI is not set | 1012 | # CONFIG_HIPPI is not set |
@@ -857,6 +1029,7 @@ CONFIG_SLIP_MODE_SLIP6=y | |||
857 | # CONFIG_NETCONSOLE is not set | 1029 | # CONFIG_NETCONSOLE is not set |
858 | # CONFIG_NETPOLL is not set | 1030 | # CONFIG_NETPOLL is not set |
859 | # CONFIG_NET_POLL_CONTROLLER is not set | 1031 | # CONFIG_NET_POLL_CONTROLLER is not set |
1032 | # CONFIG_VMXNET3 is not set | ||
860 | # CONFIG_ISDN is not set | 1033 | # CONFIG_ISDN is not set |
861 | # CONFIG_PHONE is not set | 1034 | # CONFIG_PHONE is not set |
862 | 1035 | ||
@@ -874,6 +1047,7 @@ CONFIG_SERIO_SERPORT=y | |||
874 | # CONFIG_SERIO_PCIPS2 is not set | 1047 | # CONFIG_SERIO_PCIPS2 is not set |
875 | # CONFIG_SERIO_LIBPS2 is not set | 1048 | # CONFIG_SERIO_LIBPS2 is not set |
876 | CONFIG_SERIO_RAW=m | 1049 | CONFIG_SERIO_RAW=m |
1050 | # CONFIG_SERIO_ALTERA_PS2 is not set | ||
877 | # CONFIG_GAMEPORT is not set | 1051 | # CONFIG_GAMEPORT is not set |
878 | 1052 | ||
879 | # | 1053 | # |
@@ -894,8 +1068,6 @@ CONFIG_SERIAL_NONSTANDARD=y | |||
894 | # CONFIG_N_HDLC is not set | 1068 | # CONFIG_N_HDLC is not set |
895 | # CONFIG_RISCOM8 is not set | 1069 | # CONFIG_RISCOM8 is not set |
896 | # CONFIG_SPECIALIX is not set | 1070 | # CONFIG_SPECIALIX is not set |
897 | # CONFIG_SX is not set | ||
898 | # CONFIG_RIO is not set | ||
899 | # CONFIG_STALDRV is not set | 1071 | # CONFIG_STALDRV is not set |
900 | # CONFIG_NOZOMI is not set | 1072 | # CONFIG_NOZOMI is not set |
901 | 1073 | ||
@@ -912,7 +1084,9 @@ CONFIG_SERIAL_SB1250_DUART_CONSOLE=y | |||
912 | CONFIG_SERIAL_CORE=y | 1084 | CONFIG_SERIAL_CORE=y |
913 | CONFIG_SERIAL_CORE_CONSOLE=y | 1085 | CONFIG_SERIAL_CORE_CONSOLE=y |
914 | # CONFIG_SERIAL_JSM is not set | 1086 | # CONFIG_SERIAL_JSM is not set |
1087 | # CONFIG_SERIAL_TIMBERDALE is not set | ||
915 | CONFIG_UNIX98_PTYS=y | 1088 | CONFIG_UNIX98_PTYS=y |
1089 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
916 | CONFIG_LEGACY_PTYS=y | 1090 | CONFIG_LEGACY_PTYS=y |
917 | CONFIG_LEGACY_PTY_COUNT=256 | 1091 | CONFIG_LEGACY_PTY_COUNT=256 |
918 | # CONFIG_IPMI_HANDLER is not set | 1092 | # CONFIG_IPMI_HANDLER is not set |
@@ -924,89 +1098,99 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
924 | CONFIG_DEVPORT=y | 1098 | CONFIG_DEVPORT=y |
925 | CONFIG_I2C=y | 1099 | CONFIG_I2C=y |
926 | CONFIG_I2C_BOARDINFO=y | 1100 | CONFIG_I2C_BOARDINFO=y |
1101 | CONFIG_I2C_COMPAT=y | ||
927 | CONFIG_I2C_CHARDEV=y | 1102 | CONFIG_I2C_CHARDEV=y |
1103 | CONFIG_I2C_HELPER_AUTO=y | ||
928 | 1104 | ||
929 | # | 1105 | # |
930 | # I2C Hardware Bus support | 1106 | # I2C Hardware Bus support |
931 | # | 1107 | # |
1108 | |||
1109 | # | ||
1110 | # PC SMBus host controller drivers | ||
1111 | # | ||
932 | # CONFIG_I2C_ALI1535 is not set | 1112 | # CONFIG_I2C_ALI1535 is not set |
933 | # CONFIG_I2C_ALI1563 is not set | 1113 | # CONFIG_I2C_ALI1563 is not set |
934 | # CONFIG_I2C_ALI15X3 is not set | 1114 | # CONFIG_I2C_ALI15X3 is not set |
935 | # CONFIG_I2C_AMD756 is not set | 1115 | # CONFIG_I2C_AMD756 is not set |
936 | # CONFIG_I2C_AMD8111 is not set | 1116 | # CONFIG_I2C_AMD8111 is not set |
937 | # CONFIG_I2C_I801 is not set | 1117 | # CONFIG_I2C_I801 is not set |
938 | # CONFIG_I2C_I810 is not set | 1118 | # CONFIG_I2C_ISCH is not set |
939 | # CONFIG_I2C_PIIX4 is not set | 1119 | # CONFIG_I2C_PIIX4 is not set |
940 | # CONFIG_I2C_NFORCE2 is not set | 1120 | # CONFIG_I2C_NFORCE2 is not set |
941 | # CONFIG_I2C_OCORES is not set | ||
942 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
943 | # CONFIG_I2C_PROSAVAGE is not set | ||
944 | # CONFIG_I2C_SAVAGE4 is not set | ||
945 | CONFIG_I2C_SIBYTE=y | ||
946 | # CONFIG_I2C_SIMTEC is not set | ||
947 | # CONFIG_I2C_SIS5595 is not set | 1121 | # CONFIG_I2C_SIS5595 is not set |
948 | # CONFIG_I2C_SIS630 is not set | 1122 | # CONFIG_I2C_SIS630 is not set |
949 | # CONFIG_I2C_SIS96X is not set | 1123 | # CONFIG_I2C_SIS96X is not set |
950 | # CONFIG_I2C_TAOS_EVM is not set | ||
951 | # CONFIG_I2C_STUB is not set | ||
952 | # CONFIG_I2C_VIA is not set | 1124 | # CONFIG_I2C_VIA is not set |
953 | # CONFIG_I2C_VIAPRO is not set | 1125 | # CONFIG_I2C_VIAPRO is not set |
954 | # CONFIG_I2C_VOODOO3 is not set | ||
955 | # CONFIG_I2C_PCA_PLATFORM is not set | ||
956 | 1126 | ||
957 | # | 1127 | # |
958 | # Miscellaneous I2C Chip support | 1128 | # I2C system bus drivers (mostly embedded / system-on-chip) |
959 | # | 1129 | # |
960 | # CONFIG_DS1682 is not set | 1130 | # CONFIG_I2C_OCORES is not set |
961 | CONFIG_EEPROM_LEGACY=y | 1131 | # CONFIG_I2C_SIMTEC is not set |
962 | CONFIG_SENSORS_PCF8574=y | 1132 | # CONFIG_I2C_XILINX is not set |
963 | # CONFIG_PCF8575 is not set | 1133 | |
964 | CONFIG_SENSORS_PCF8591=y | 1134 | # |
965 | CONFIG_EEPROM_MAX6875=y | 1135 | # External I2C/SMBus adapter drivers |
966 | # CONFIG_SENSORS_TSL2550 is not set | 1136 | # |
1137 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
1138 | # CONFIG_I2C_TAOS_EVM is not set | ||
1139 | |||
1140 | # | ||
1141 | # Other I2C/SMBus bus drivers | ||
1142 | # | ||
1143 | # CONFIG_I2C_PCA_PLATFORM is not set | ||
1144 | CONFIG_I2C_SIBYTE=y | ||
1145 | # CONFIG_I2C_STUB is not set | ||
967 | CONFIG_I2C_DEBUG_CORE=y | 1146 | CONFIG_I2C_DEBUG_CORE=y |
968 | CONFIG_I2C_DEBUG_ALGO=y | 1147 | CONFIG_I2C_DEBUG_ALGO=y |
969 | CONFIG_I2C_DEBUG_BUS=y | 1148 | CONFIG_I2C_DEBUG_BUS=y |
970 | CONFIG_I2C_DEBUG_CHIP=y | ||
971 | # CONFIG_SPI is not set | 1149 | # CONFIG_SPI is not set |
1150 | |||
1151 | # | ||
1152 | # PPS support | ||
1153 | # | ||
1154 | # CONFIG_PPS is not set | ||
972 | # CONFIG_W1 is not set | 1155 | # CONFIG_W1 is not set |
973 | # CONFIG_POWER_SUPPLY is not set | 1156 | # CONFIG_POWER_SUPPLY is not set |
974 | # CONFIG_HWMON is not set | 1157 | # CONFIG_HWMON is not set |
975 | # CONFIG_THERMAL is not set | 1158 | # CONFIG_THERMAL is not set |
976 | # CONFIG_THERMAL_HWMON is not set | ||
977 | # CONFIG_WATCHDOG is not set | 1159 | # CONFIG_WATCHDOG is not set |
1160 | CONFIG_SSB_POSSIBLE=y | ||
978 | 1161 | ||
979 | # | 1162 | # |
980 | # Sonics Silicon Backplane | 1163 | # Sonics Silicon Backplane |
981 | # | 1164 | # |
982 | CONFIG_SSB_POSSIBLE=y | ||
983 | # CONFIG_SSB is not set | 1165 | # CONFIG_SSB is not set |
984 | 1166 | ||
985 | # | 1167 | # |
986 | # Multifunction device drivers | 1168 | # Multifunction device drivers |
987 | # | 1169 | # |
1170 | # CONFIG_MFD_CORE is not set | ||
1171 | # CONFIG_MFD_88PM860X is not set | ||
988 | # CONFIG_MFD_SM501 is not set | 1172 | # CONFIG_MFD_SM501 is not set |
989 | # CONFIG_HTC_PASIC3 is not set | 1173 | # CONFIG_HTC_PASIC3 is not set |
990 | 1174 | # CONFIG_TWL4030_CORE is not set | |
991 | # | 1175 | # CONFIG_MFD_TMIO is not set |
992 | # Multimedia devices | 1176 | # CONFIG_PMIC_DA903X is not set |
993 | # | 1177 | # CONFIG_PMIC_ADP5520 is not set |
994 | 1178 | # CONFIG_MFD_MAX8925 is not set | |
995 | # | 1179 | # CONFIG_MFD_WM8400 is not set |
996 | # Multimedia core support | 1180 | # CONFIG_MFD_WM831X is not set |
997 | # | 1181 | # CONFIG_MFD_WM8350_I2C is not set |
998 | # CONFIG_VIDEO_DEV is not set | 1182 | # CONFIG_MFD_WM8994 is not set |
999 | # CONFIG_DVB_CORE is not set | 1183 | # CONFIG_MFD_PCF50633 is not set |
1000 | # CONFIG_VIDEO_MEDIA is not set | 1184 | # CONFIG_AB3100_CORE is not set |
1001 | 1185 | # CONFIG_LPC_SCH is not set | |
1002 | # | 1186 | # CONFIG_REGULATOR is not set |
1003 | # Multimedia drivers | 1187 | # CONFIG_MEDIA_SUPPORT is not set |
1004 | # | ||
1005 | # CONFIG_DAB is not set | ||
1006 | 1188 | ||
1007 | # | 1189 | # |
1008 | # Graphics support | 1190 | # Graphics support |
1009 | # | 1191 | # |
1192 | CONFIG_VGA_ARB=y | ||
1193 | CONFIG_VGA_ARB_MAX_GPUS=16 | ||
1010 | # CONFIG_DRM is not set | 1194 | # CONFIG_DRM is not set |
1011 | # CONFIG_VGASTATE is not set | 1195 | # CONFIG_VGASTATE is not set |
1012 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | 1196 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set |
@@ -1017,10 +1201,6 @@ CONFIG_SSB_POSSIBLE=y | |||
1017 | # Display device support | 1201 | # Display device support |
1018 | # | 1202 | # |
1019 | # CONFIG_DISPLAY_SUPPORT is not set | 1203 | # CONFIG_DISPLAY_SUPPORT is not set |
1020 | |||
1021 | # | ||
1022 | # Sound | ||
1023 | # | ||
1024 | # CONFIG_SOUND is not set | 1204 | # CONFIG_SOUND is not set |
1025 | CONFIG_USB_SUPPORT=y | 1205 | CONFIG_USB_SUPPORT=y |
1026 | CONFIG_USB_ARCH_HAS_HCD=y | 1206 | CONFIG_USB_ARCH_HAS_HCD=y |
@@ -1031,9 +1211,18 @@ CONFIG_USB_ARCH_HAS_EHCI=y | |||
1031 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | 1211 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set |
1032 | 1212 | ||
1033 | # | 1213 | # |
1034 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1214 | # Enable Host or Gadget support to see Inventra options |
1215 | # | ||
1216 | |||
1217 | # | ||
1218 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may | ||
1035 | # | 1219 | # |
1036 | # CONFIG_USB_GADGET is not set | 1220 | # CONFIG_USB_GADGET is not set |
1221 | |||
1222 | # | ||
1223 | # OTG and related infrastructure | ||
1224 | # | ||
1225 | # CONFIG_UWB is not set | ||
1037 | # CONFIG_MMC is not set | 1226 | # CONFIG_MMC is not set |
1038 | # CONFIG_MEMSTICK is not set | 1227 | # CONFIG_MEMSTICK is not set |
1039 | # CONFIG_NEW_LEDS is not set | 1228 | # CONFIG_NEW_LEDS is not set |
@@ -1041,41 +1230,66 @@ CONFIG_USB_ARCH_HAS_EHCI=y | |||
1041 | # CONFIG_INFINIBAND is not set | 1230 | # CONFIG_INFINIBAND is not set |
1042 | CONFIG_RTC_LIB=y | 1231 | CONFIG_RTC_LIB=y |
1043 | # CONFIG_RTC_CLASS is not set | 1232 | # CONFIG_RTC_CLASS is not set |
1233 | # CONFIG_DMADEVICES is not set | ||
1234 | # CONFIG_AUXDISPLAY is not set | ||
1044 | # CONFIG_UIO is not set | 1235 | # CONFIG_UIO is not set |
1045 | 1236 | ||
1046 | # | 1237 | # |
1238 | # TI VLYNQ | ||
1239 | # | ||
1240 | # CONFIG_STAGING is not set | ||
1241 | |||
1242 | # | ||
1047 | # File systems | 1243 | # File systems |
1048 | # | 1244 | # |
1049 | CONFIG_EXT2_FS=m | 1245 | CONFIG_EXT2_FS=m |
1050 | CONFIG_EXT2_FS_XATTR=y | 1246 | CONFIG_EXT2_FS_XATTR=y |
1051 | # CONFIG_EXT2_FS_POSIX_ACL is not set | 1247 | CONFIG_EXT2_FS_POSIX_ACL=y |
1052 | # CONFIG_EXT2_FS_SECURITY is not set | 1248 | CONFIG_EXT2_FS_SECURITY=y |
1053 | # CONFIG_EXT2_FS_XIP is not set | 1249 | CONFIG_EXT2_FS_XIP=y |
1054 | CONFIG_EXT3_FS=y | 1250 | CONFIG_EXT3_FS=m |
1251 | CONFIG_EXT3_DEFAULTS_TO_ORDERED=y | ||
1055 | CONFIG_EXT3_FS_XATTR=y | 1252 | CONFIG_EXT3_FS_XATTR=y |
1056 | # CONFIG_EXT3_FS_POSIX_ACL is not set | 1253 | CONFIG_EXT3_FS_POSIX_ACL=y |
1057 | # CONFIG_EXT3_FS_SECURITY is not set | 1254 | CONFIG_EXT3_FS_SECURITY=y |
1058 | # CONFIG_EXT4DEV_FS is not set | 1255 | CONFIG_EXT4_FS=y |
1059 | CONFIG_JBD=y | 1256 | CONFIG_EXT4_FS_XATTR=y |
1257 | CONFIG_EXT4_FS_POSIX_ACL=y | ||
1258 | CONFIG_EXT4_FS_SECURITY=y | ||
1259 | # CONFIG_EXT4_DEBUG is not set | ||
1260 | CONFIG_FS_XIP=y | ||
1261 | CONFIG_JBD=m | ||
1262 | CONFIG_JBD2=y | ||
1060 | CONFIG_FS_MBCACHE=y | 1263 | CONFIG_FS_MBCACHE=y |
1061 | # CONFIG_REISERFS_FS is not set | 1264 | # CONFIG_REISERFS_FS is not set |
1062 | # CONFIG_JFS_FS is not set | 1265 | # CONFIG_JFS_FS is not set |
1063 | # CONFIG_FS_POSIX_ACL is not set | 1266 | CONFIG_FS_POSIX_ACL=y |
1064 | # CONFIG_XFS_FS is not set | 1267 | # CONFIG_XFS_FS is not set |
1065 | # CONFIG_GFS2_FS is not set | 1268 | # CONFIG_GFS2_FS is not set |
1066 | # CONFIG_OCFS2_FS is not set | 1269 | # CONFIG_OCFS2_FS is not set |
1270 | # CONFIG_BTRFS_FS is not set | ||
1271 | # CONFIG_NILFS2_FS is not set | ||
1272 | CONFIG_FILE_LOCKING=y | ||
1273 | CONFIG_FSNOTIFY=y | ||
1067 | CONFIG_DNOTIFY=y | 1274 | CONFIG_DNOTIFY=y |
1068 | CONFIG_INOTIFY=y | 1275 | CONFIG_INOTIFY=y |
1069 | CONFIG_INOTIFY_USER=y | 1276 | CONFIG_INOTIFY_USER=y |
1070 | CONFIG_QUOTA=y | 1277 | CONFIG_QUOTA=y |
1071 | CONFIG_QUOTA_NETLINK_INTERFACE=y | 1278 | CONFIG_QUOTA_NETLINK_INTERFACE=y |
1072 | # CONFIG_PRINT_QUOTA_WARNING is not set | 1279 | # CONFIG_PRINT_QUOTA_WARNING is not set |
1280 | CONFIG_QUOTA_TREE=m | ||
1073 | # CONFIG_QFMT_V1 is not set | 1281 | # CONFIG_QFMT_V1 is not set |
1074 | CONFIG_QFMT_V2=m | 1282 | CONFIG_QFMT_V2=m |
1075 | CONFIG_QUOTACTL=y | 1283 | CONFIG_QUOTACTL=y |
1076 | CONFIG_AUTOFS_FS=m | 1284 | CONFIG_AUTOFS_FS=m |
1077 | CONFIG_AUTOFS4_FS=m | 1285 | CONFIG_AUTOFS4_FS=m |
1078 | CONFIG_FUSE_FS=m | 1286 | CONFIG_FUSE_FS=m |
1287 | # CONFIG_CUSE is not set | ||
1288 | |||
1289 | # | ||
1290 | # Caches | ||
1291 | # | ||
1292 | # CONFIG_FSCACHE is not set | ||
1079 | 1293 | ||
1080 | # | 1294 | # |
1081 | # CD-ROM/DVD Filesystems | 1295 | # CD-ROM/DVD Filesystems |
@@ -1104,15 +1318,13 @@ CONFIG_NTFS_RW=y | |||
1104 | CONFIG_PROC_FS=y | 1318 | CONFIG_PROC_FS=y |
1105 | CONFIG_PROC_KCORE=y | 1319 | CONFIG_PROC_KCORE=y |
1106 | CONFIG_PROC_SYSCTL=y | 1320 | CONFIG_PROC_SYSCTL=y |
1321 | CONFIG_PROC_PAGE_MONITOR=y | ||
1107 | CONFIG_SYSFS=y | 1322 | CONFIG_SYSFS=y |
1108 | CONFIG_TMPFS=y | 1323 | CONFIG_TMPFS=y |
1109 | # CONFIG_TMPFS_POSIX_ACL is not set | 1324 | # CONFIG_TMPFS_POSIX_ACL is not set |
1110 | # CONFIG_HUGETLB_PAGE is not set | 1325 | # CONFIG_HUGETLB_PAGE is not set |
1111 | CONFIG_CONFIGFS_FS=m | 1326 | CONFIG_CONFIGFS_FS=m |
1112 | 1327 | CONFIG_MISC_FILESYSTEMS=y | |
1113 | # | ||
1114 | # Miscellaneous filesystems | ||
1115 | # | ||
1116 | # CONFIG_ADFS_FS is not set | 1328 | # CONFIG_ADFS_FS is not set |
1117 | # CONFIG_AFFS_FS is not set | 1329 | # CONFIG_AFFS_FS is not set |
1118 | # CONFIG_ECRYPT_FS is not set | 1330 | # CONFIG_ECRYPT_FS is not set |
@@ -1121,9 +1333,12 @@ CONFIG_CONFIGFS_FS=m | |||
1121 | # CONFIG_BEFS_FS is not set | 1333 | # CONFIG_BEFS_FS is not set |
1122 | # CONFIG_BFS_FS is not set | 1334 | # CONFIG_BFS_FS is not set |
1123 | # CONFIG_EFS_FS is not set | 1335 | # CONFIG_EFS_FS is not set |
1336 | # CONFIG_LOGFS is not set | ||
1124 | # CONFIG_CRAMFS is not set | 1337 | # CONFIG_CRAMFS is not set |
1338 | # CONFIG_SQUASHFS is not set | ||
1125 | # CONFIG_VXFS_FS is not set | 1339 | # CONFIG_VXFS_FS is not set |
1126 | # CONFIG_MINIX_FS is not set | 1340 | # CONFIG_MINIX_FS is not set |
1341 | # CONFIG_OMFS_FS is not set | ||
1127 | # CONFIG_HPFS_FS is not set | 1342 | # CONFIG_HPFS_FS is not set |
1128 | # CONFIG_QNX4FS_FS is not set | 1343 | # CONFIG_QNX4FS_FS is not set |
1129 | # CONFIG_ROMFS_FS is not set | 1344 | # CONFIG_ROMFS_FS is not set |
@@ -1134,16 +1349,17 @@ CONFIG_NFS_FS=y | |||
1134 | CONFIG_NFS_V3=y | 1349 | CONFIG_NFS_V3=y |
1135 | # CONFIG_NFS_V3_ACL is not set | 1350 | # CONFIG_NFS_V3_ACL is not set |
1136 | # CONFIG_NFS_V4 is not set | 1351 | # CONFIG_NFS_V4 is not set |
1137 | # CONFIG_NFSD is not set | ||
1138 | CONFIG_ROOT_NFS=y | 1352 | CONFIG_ROOT_NFS=y |
1353 | # CONFIG_NFSD is not set | ||
1139 | CONFIG_LOCKD=y | 1354 | CONFIG_LOCKD=y |
1140 | CONFIG_LOCKD_V4=y | 1355 | CONFIG_LOCKD_V4=y |
1141 | CONFIG_NFS_COMMON=y | 1356 | CONFIG_NFS_COMMON=y |
1142 | CONFIG_SUNRPC=y | 1357 | CONFIG_SUNRPC=y |
1143 | # CONFIG_SUNRPC_BIND34 is not set | 1358 | CONFIG_SUNRPC_GSS=m |
1144 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1359 | CONFIG_RPCSEC_GSS_KRB5=m |
1145 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1360 | CONFIG_RPCSEC_GSS_SPKM3=m |
1146 | # CONFIG_SMB_FS is not set | 1361 | # CONFIG_SMB_FS is not set |
1362 | # CONFIG_CEPH_FS is not set | ||
1147 | # CONFIG_CIFS is not set | 1363 | # CONFIG_CIFS is not set |
1148 | # CONFIG_NCP_FS is not set | 1364 | # CONFIG_NCP_FS is not set |
1149 | # CONFIG_CODA_FS is not set | 1365 | # CONFIG_CODA_FS is not set |
@@ -1206,12 +1422,18 @@ CONFIG_ENABLE_WARN_DEPRECATED=y | |||
1206 | CONFIG_ENABLE_MUST_CHECK=y | 1422 | CONFIG_ENABLE_MUST_CHECK=y |
1207 | CONFIG_FRAME_WARN=2048 | 1423 | CONFIG_FRAME_WARN=2048 |
1208 | CONFIG_MAGIC_SYSRQ=y | 1424 | CONFIG_MAGIC_SYSRQ=y |
1425 | # CONFIG_STRIP_ASM_SYMS is not set | ||
1209 | # CONFIG_UNUSED_SYMBOLS is not set | 1426 | # CONFIG_UNUSED_SYMBOLS is not set |
1210 | # CONFIG_DEBUG_FS is not set | 1427 | # CONFIG_DEBUG_FS is not set |
1211 | # CONFIG_HEADERS_CHECK is not set | 1428 | # CONFIG_HEADERS_CHECK is not set |
1212 | CONFIG_DEBUG_KERNEL=y | 1429 | CONFIG_DEBUG_KERNEL=y |
1213 | # CONFIG_DEBUG_SHIRQ is not set | 1430 | # CONFIG_DEBUG_SHIRQ is not set |
1214 | CONFIG_DETECT_SOFTLOCKUP=y | 1431 | CONFIG_DETECT_SOFTLOCKUP=y |
1432 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
1433 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
1434 | CONFIG_DETECT_HUNG_TASK=y | ||
1435 | # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set | ||
1436 | CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 | ||
1215 | CONFIG_SCHED_DEBUG=y | 1437 | CONFIG_SCHED_DEBUG=y |
1216 | # CONFIG_SCHEDSTATS is not set | 1438 | # CONFIG_SCHEDSTATS is not set |
1217 | # CONFIG_TIMER_STATS is not set | 1439 | # CONFIG_TIMER_STATS is not set |
@@ -1220,24 +1442,54 @@ CONFIG_SCHED_DEBUG=y | |||
1220 | # CONFIG_DEBUG_RT_MUTEXES is not set | 1442 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1221 | # CONFIG_RT_MUTEX_TESTER is not set | 1443 | # CONFIG_RT_MUTEX_TESTER is not set |
1222 | # CONFIG_DEBUG_SPINLOCK is not set | 1444 | # CONFIG_DEBUG_SPINLOCK is not set |
1223 | CONFIG_DEBUG_MUTEXES=y | 1445 | # CONFIG_DEBUG_MUTEXES is not set |
1224 | # CONFIG_DEBUG_LOCK_ALLOC is not set | 1446 | # CONFIG_DEBUG_LOCK_ALLOC is not set |
1225 | # CONFIG_PROVE_LOCKING is not set | 1447 | # CONFIG_PROVE_LOCKING is not set |
1226 | # CONFIG_LOCK_STAT is not set | 1448 | # CONFIG_LOCK_STAT is not set |
1227 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | 1449 | CONFIG_DEBUG_SPINLOCK_SLEEP=y |
1228 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | 1450 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set |
1229 | # CONFIG_DEBUG_KOBJECT is not set | 1451 | # CONFIG_DEBUG_KOBJECT is not set |
1230 | # CONFIG_DEBUG_INFO is not set | 1452 | # CONFIG_DEBUG_INFO is not set |
1231 | # CONFIG_DEBUG_VM is not set | 1453 | # CONFIG_DEBUG_VM is not set |
1232 | # CONFIG_DEBUG_WRITECOUNT is not set | 1454 | # CONFIG_DEBUG_WRITECOUNT is not set |
1233 | # CONFIG_DEBUG_LIST is not set | 1455 | CONFIG_DEBUG_MEMORY_INIT=y |
1456 | CONFIG_DEBUG_LIST=y | ||
1234 | # CONFIG_DEBUG_SG is not set | 1457 | # CONFIG_DEBUG_SG is not set |
1458 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1459 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1235 | # CONFIG_BOOT_PRINTK_DELAY is not set | 1460 | # CONFIG_BOOT_PRINTK_DELAY is not set |
1236 | # CONFIG_RCU_TORTURE_TEST is not set | 1461 | # CONFIG_RCU_TORTURE_TEST is not set |
1462 | CONFIG_RCU_CPU_STALL_DETECTOR=y | ||
1237 | # CONFIG_BACKTRACE_SELF_TEST is not set | 1463 | # CONFIG_BACKTRACE_SELF_TEST is not set |
1464 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1465 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1238 | # CONFIG_FAULT_INJECTION is not set | 1466 | # CONFIG_FAULT_INJECTION is not set |
1467 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1468 | # CONFIG_PAGE_POISONING is not set | ||
1469 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1470 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1471 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1472 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1473 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1474 | CONFIG_TRACING_SUPPORT=y | ||
1475 | CONFIG_FTRACE=y | ||
1476 | # CONFIG_FUNCTION_TRACER is not set | ||
1477 | # CONFIG_IRQSOFF_TRACER is not set | ||
1478 | # CONFIG_SCHED_TRACER is not set | ||
1479 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | ||
1480 | # CONFIG_BOOT_TRACER is not set | ||
1481 | CONFIG_BRANCH_PROFILE_NONE=y | ||
1482 | # CONFIG_PROFILE_ANNOTATED_BRANCHES is not set | ||
1483 | # CONFIG_PROFILE_ALL_BRANCHES is not set | ||
1484 | # CONFIG_STACK_TRACER is not set | ||
1485 | # CONFIG_KMEMTRACE is not set | ||
1486 | # CONFIG_WORKQUEUE_TRACER is not set | ||
1487 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
1239 | # CONFIG_SAMPLES is not set | 1488 | # CONFIG_SAMPLES is not set |
1240 | CONFIG_CMDLINE="" | 1489 | CONFIG_HAVE_ARCH_KGDB=y |
1490 | # CONFIG_KGDB is not set | ||
1491 | CONFIG_EARLY_PRINTK=y | ||
1492 | # CONFIG_CMDLINE_BOOL is not set | ||
1241 | # CONFIG_DEBUG_STACK_USAGE is not set | 1493 | # CONFIG_DEBUG_STACK_USAGE is not set |
1242 | # CONFIG_SB1XXX_CORELIS is not set | 1494 | # CONFIG_SB1XXX_CORELIS is not set |
1243 | # CONFIG_RUNTIME_DEBUG is not set | 1495 | # CONFIG_RUNTIME_DEBUG is not set |
@@ -1247,20 +1499,50 @@ CONFIG_CMDLINE="" | |||
1247 | # | 1499 | # |
1248 | CONFIG_KEYS=y | 1500 | CONFIG_KEYS=y |
1249 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1501 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1250 | # CONFIG_SECURITY is not set | 1502 | CONFIG_SECURITY=y |
1251 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | 1503 | # CONFIG_SECURITYFS is not set |
1504 | CONFIG_SECURITY_NETWORK=y | ||
1505 | CONFIG_SECURITY_NETWORK_XFRM=y | ||
1506 | # CONFIG_SECURITY_PATH is not set | ||
1507 | CONFIG_LSM_MMAP_MIN_ADDR=65536 | ||
1508 | CONFIG_SECURITY_SELINUX=y | ||
1509 | CONFIG_SECURITY_SELINUX_BOOTPARAM=y | ||
1510 | CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1 | ||
1511 | CONFIG_SECURITY_SELINUX_DISABLE=y | ||
1512 | CONFIG_SECURITY_SELINUX_DEVELOP=y | ||
1513 | CONFIG_SECURITY_SELINUX_AVC_STATS=y | ||
1514 | CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 | ||
1515 | # CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set | ||
1516 | # CONFIG_SECURITY_SMACK is not set | ||
1517 | # CONFIG_SECURITY_TOMOYO is not set | ||
1518 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set | ||
1519 | # CONFIG_DEFAULT_SECURITY_SMACK is not set | ||
1520 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set | ||
1521 | CONFIG_DEFAULT_SECURITY_DAC=y | ||
1522 | CONFIG_DEFAULT_SECURITY="" | ||
1252 | CONFIG_CRYPTO=y | 1523 | CONFIG_CRYPTO=y |
1253 | 1524 | ||
1254 | # | 1525 | # |
1255 | # Crypto core or helper | 1526 | # Crypto core or helper |
1256 | # | 1527 | # |
1528 | # CONFIG_CRYPTO_FIPS is not set | ||
1257 | CONFIG_CRYPTO_ALGAPI=y | 1529 | CONFIG_CRYPTO_ALGAPI=y |
1530 | CONFIG_CRYPTO_ALGAPI2=y | ||
1258 | CONFIG_CRYPTO_AEAD=m | 1531 | CONFIG_CRYPTO_AEAD=m |
1532 | CONFIG_CRYPTO_AEAD2=y | ||
1259 | CONFIG_CRYPTO_BLKCIPHER=y | 1533 | CONFIG_CRYPTO_BLKCIPHER=y |
1534 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
1260 | CONFIG_CRYPTO_HASH=y | 1535 | CONFIG_CRYPTO_HASH=y |
1536 | CONFIG_CRYPTO_HASH2=y | ||
1537 | CONFIG_CRYPTO_RNG=m | ||
1538 | CONFIG_CRYPTO_RNG2=y | ||
1539 | CONFIG_CRYPTO_PCOMP=y | ||
1261 | CONFIG_CRYPTO_MANAGER=y | 1540 | CONFIG_CRYPTO_MANAGER=y |
1541 | CONFIG_CRYPTO_MANAGER2=y | ||
1262 | CONFIG_CRYPTO_GF128MUL=m | 1542 | CONFIG_CRYPTO_GF128MUL=m |
1263 | CONFIG_CRYPTO_NULL=y | 1543 | CONFIG_CRYPTO_NULL=y |
1544 | # CONFIG_CRYPTO_PCRYPT is not set | ||
1545 | CONFIG_CRYPTO_WORKQUEUE=y | ||
1264 | # CONFIG_CRYPTO_CRYPTD is not set | 1546 | # CONFIG_CRYPTO_CRYPTD is not set |
1265 | CONFIG_CRYPTO_AUTHENC=m | 1547 | CONFIG_CRYPTO_AUTHENC=m |
1266 | # CONFIG_CRYPTO_TEST is not set | 1548 | # CONFIG_CRYPTO_TEST is not set |
@@ -1277,7 +1559,7 @@ CONFIG_CRYPTO_SEQIV=m | |||
1277 | # | 1559 | # |
1278 | CONFIG_CRYPTO_CBC=m | 1560 | CONFIG_CRYPTO_CBC=m |
1279 | CONFIG_CRYPTO_CTR=m | 1561 | CONFIG_CRYPTO_CTR=m |
1280 | # CONFIG_CRYPTO_CTS is not set | 1562 | CONFIG_CRYPTO_CTS=m |
1281 | CONFIG_CRYPTO_ECB=m | 1563 | CONFIG_CRYPTO_ECB=m |
1282 | CONFIG_CRYPTO_LRW=m | 1564 | CONFIG_CRYPTO_LRW=m |
1283 | CONFIG_CRYPTO_PCBC=m | 1565 | CONFIG_CRYPTO_PCBC=m |
@@ -1288,14 +1570,20 @@ CONFIG_CRYPTO_XTS=m | |||
1288 | # | 1570 | # |
1289 | CONFIG_CRYPTO_HMAC=y | 1571 | CONFIG_CRYPTO_HMAC=y |
1290 | CONFIG_CRYPTO_XCBC=m | 1572 | CONFIG_CRYPTO_XCBC=m |
1573 | CONFIG_CRYPTO_VMAC=m | ||
1291 | 1574 | ||
1292 | # | 1575 | # |
1293 | # Digest | 1576 | # Digest |
1294 | # | 1577 | # |
1295 | # CONFIG_CRYPTO_CRC32C is not set | 1578 | CONFIG_CRYPTO_CRC32C=m |
1579 | CONFIG_CRYPTO_GHASH=m | ||
1296 | CONFIG_CRYPTO_MD4=m | 1580 | CONFIG_CRYPTO_MD4=m |
1297 | CONFIG_CRYPTO_MD5=y | 1581 | CONFIG_CRYPTO_MD5=y |
1298 | CONFIG_CRYPTO_MICHAEL_MIC=m | 1582 | CONFIG_CRYPTO_MICHAEL_MIC=m |
1583 | CONFIG_CRYPTO_RMD128=m | ||
1584 | CONFIG_CRYPTO_RMD160=m | ||
1585 | CONFIG_CRYPTO_RMD256=m | ||
1586 | CONFIG_CRYPTO_RMD320=m | ||
1299 | CONFIG_CRYPTO_SHA1=m | 1587 | CONFIG_CRYPTO_SHA1=m |
1300 | CONFIG_CRYPTO_SHA256=m | 1588 | CONFIG_CRYPTO_SHA256=m |
1301 | CONFIG_CRYPTO_SHA512=m | 1589 | CONFIG_CRYPTO_SHA512=m |
@@ -1326,25 +1614,36 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m | |||
1326 | # Compression | 1614 | # Compression |
1327 | # | 1615 | # |
1328 | CONFIG_CRYPTO_DEFLATE=m | 1616 | CONFIG_CRYPTO_DEFLATE=m |
1329 | # CONFIG_CRYPTO_LZO is not set | 1617 | CONFIG_CRYPTO_ZLIB=m |
1618 | CONFIG_CRYPTO_LZO=m | ||
1619 | |||
1620 | # | ||
1621 | # Random Number Generation | ||
1622 | # | ||
1623 | CONFIG_CRYPTO_ANSI_CPRNG=m | ||
1330 | CONFIG_CRYPTO_HW=y | 1624 | CONFIG_CRYPTO_HW=y |
1331 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set | 1625 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set |
1626 | # CONFIG_BINARY_PRINTF is not set | ||
1332 | 1627 | ||
1333 | # | 1628 | # |
1334 | # Library routines | 1629 | # Library routines |
1335 | # | 1630 | # |
1336 | CONFIG_BITREVERSE=y | 1631 | CONFIG_BITREVERSE=y |
1337 | # CONFIG_GENERIC_FIND_FIRST_BIT is not set | 1632 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1338 | CONFIG_CRC_CCITT=m | 1633 | CONFIG_CRC_CCITT=m |
1339 | # CONFIG_CRC16 is not set | 1634 | CONFIG_CRC16=y |
1635 | CONFIG_CRC_T10DIF=m | ||
1340 | CONFIG_CRC_ITU_T=m | 1636 | CONFIG_CRC_ITU_T=m |
1341 | CONFIG_CRC32=y | 1637 | CONFIG_CRC32=y |
1342 | # CONFIG_CRC7 is not set | 1638 | CONFIG_CRC7=m |
1343 | CONFIG_LIBCRC32C=m | 1639 | CONFIG_LIBCRC32C=m |
1344 | CONFIG_AUDIT_GENERIC=y | 1640 | CONFIG_AUDIT_GENERIC=y |
1345 | CONFIG_ZLIB_INFLATE=m | 1641 | CONFIG_ZLIB_INFLATE=y |
1346 | CONFIG_ZLIB_DEFLATE=m | 1642 | CONFIG_ZLIB_DEFLATE=m |
1347 | CONFIG_PLIST=y | 1643 | CONFIG_LZO_COMPRESS=m |
1644 | CONFIG_LZO_DECOMPRESS=m | ||
1645 | CONFIG_DECOMPRESS_GZIP=y | ||
1348 | CONFIG_HAS_IOMEM=y | 1646 | CONFIG_HAS_IOMEM=y |
1349 | CONFIG_HAS_IOPORT=y | 1647 | CONFIG_HAS_IOPORT=y |
1350 | CONFIG_HAS_DMA=y | 1648 | CONFIG_HAS_DMA=y |
1649 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/capcella_defconfig b/arch/mips/configs/capcella_defconfig index 185df23fd460..72b7e456916e 100644 --- a/arch/mips/configs/capcella_defconfig +++ b/arch/mips/configs/capcella_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_MIPS_COBALT is not set | 12 | # CONFIG_MIPS_COBALT is not set |
14 | # CONFIG_MACH_DECSTATION is not set | 13 | # CONFIG_MACH_DECSTATION is not set |
15 | # CONFIG_MACH_JAZZ is not set | 14 | # CONFIG_MACH_JAZZ is not set |
@@ -783,7 +782,9 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
783 | # CONFIG_HEADERS_CHECK is not set | 782 | # CONFIG_HEADERS_CHECK is not set |
784 | # CONFIG_DEBUG_KERNEL is not set | 783 | # CONFIG_DEBUG_KERNEL is not set |
785 | CONFIG_CROSSCOMPILE=y | 784 | CONFIG_CROSSCOMPILE=y |
785 | CONFIG_CMDLINE_BOOL=y | ||
786 | CONFIG_CMDLINE="mem=32M console=ttyVR0,38400" | 786 | CONFIG_CMDLINE="mem=32M console=ttyVR0,38400" |
787 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
787 | 788 | ||
788 | # | 789 | # |
789 | # Security options | 790 | # Security options |
diff --git a/arch/mips/configs/cavium-octeon_defconfig b/arch/mips/configs/cavium-octeon_defconfig index 7afaa28a3768..c8507bc8e925 100644 --- a/arch/mips/configs/cavium-octeon_defconfig +++ b/arch/mips/configs/cavium-octeon_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -269,7 +268,6 @@ CONFIG_DEFAULT_CFQ=y | |||
269 | # CONFIG_DEFAULT_NOOP is not set | 268 | # CONFIG_DEFAULT_NOOP is not set |
270 | CONFIG_DEFAULT_IOSCHED="cfq" | 269 | CONFIG_DEFAULT_IOSCHED="cfq" |
271 | CONFIG_CLASSIC_RCU=y | 270 | CONFIG_CLASSIC_RCU=y |
272 | # CONFIG_PROBE_INITRD_HEADER is not set | ||
273 | # CONFIG_FREEZER is not set | 271 | # CONFIG_FREEZER is not set |
274 | 272 | ||
275 | # | 273 | # |
@@ -822,7 +820,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y | |||
822 | # CONFIG_SAMPLES is not set | 820 | # CONFIG_SAMPLES is not set |
823 | CONFIG_HAVE_ARCH_KGDB=y | 821 | CONFIG_HAVE_ARCH_KGDB=y |
824 | # CONFIG_KGDB is not set | 822 | # CONFIG_KGDB is not set |
825 | CONFIG_CMDLINE="" | 823 | # CONFIG_CMDLINE_BOOL is not set |
826 | # CONFIG_DEBUG_STACK_USAGE is not set | 824 | # CONFIG_DEBUG_STACK_USAGE is not set |
827 | # CONFIG_RUNTIME_DEBUG is not set | 825 | # CONFIG_RUNTIME_DEBUG is not set |
828 | 826 | ||
diff --git a/arch/mips/configs/cobalt_defconfig b/arch/mips/configs/cobalt_defconfig index 6c8cca8589ba..49e61312e006 100644 --- a/arch/mips/configs/cobalt_defconfig +++ b/arch/mips/configs/cobalt_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | CONFIG_MIPS_COBALT=y | 13 | CONFIG_MIPS_COBALT=y |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -1126,7 +1125,7 @@ CONFIG_FRAME_WARN=1024 | |||
1126 | # CONFIG_SLUB_STATS is not set | 1125 | # CONFIG_SLUB_STATS is not set |
1127 | # CONFIG_DEBUG_MEMORY_INIT is not set | 1126 | # CONFIG_DEBUG_MEMORY_INIT is not set |
1128 | # CONFIG_SAMPLES is not set | 1127 | # CONFIG_SAMPLES is not set |
1129 | CONFIG_CMDLINE="" | 1128 | # CONFIG_CMDLINE_BOOL is not set |
1130 | 1129 | ||
1131 | # | 1130 | # |
1132 | # Security options | 1131 | # Security options |
diff --git a/arch/mips/configs/db1000_defconfig b/arch/mips/configs/db1000_defconfig index dbdf3bb1a34a..f66d406aadce 100644 --- a/arch/mips/configs/db1000_defconfig +++ b/arch/mips/configs/db1000_defconfig | |||
@@ -1,79 +1,102 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:24 2007 | 4 | # Fri Feb 26 08:46:14 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_PB1100 is not set | ||
17 | # CONFIG_MIPS_PB1500 is not set | ||
18 | # CONFIG_MIPS_PB1550 is not set | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | CONFIG_MIPS_DB1000=y | ||
21 | # CONFIG_MIPS_DB1100 is not set | ||
22 | # CONFIG_MIPS_DB1500 is not set | ||
23 | # CONFIG_MIPS_DB1550 is not set | ||
24 | # CONFIG_MIPS_DB1200 is not set | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | CONFIG_MIPS_DB1000=y | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1000=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_NONCOHERENT=y | 83 | CONFIG_DMA_NONCOHERENT=y |
65 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
86 | # CONFIG_NO_IOPORT is not set | ||
87 | CONFIG_GENERIC_GPIO=y | ||
66 | # CONFIG_CPU_BIG_ENDIAN is not set | 88 | # CONFIG_CPU_BIG_ENDIAN is not set |
67 | CONFIG_CPU_LITTLE_ENDIAN=y | 89 | CONFIG_CPU_LITTLE_ENDIAN=y |
68 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 90 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
69 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 91 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
70 | CONFIG_SOC_AU1000=y | 92 | CONFIG_IRQ_CPU=y |
71 | CONFIG_SOC_AU1X00=y | ||
72 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 93 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
73 | 94 | ||
74 | # | 95 | # |
75 | # CPU selection | 96 | # CPU selection |
76 | # | 97 | # |
98 | # CONFIG_CPU_LOONGSON2E is not set | ||
99 | # CONFIG_CPU_LOONGSON2F is not set | ||
77 | CONFIG_CPU_MIPS32_R1=y | 100 | CONFIG_CPU_MIPS32_R1=y |
78 | # CONFIG_CPU_MIPS32_R2 is not set | 101 | # CONFIG_CPU_MIPS32_R2 is not set |
79 | # CONFIG_CPU_MIPS64_R1 is not set | 102 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -86,6 +109,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
86 | # CONFIG_CPU_TX49XX is not set | 109 | # CONFIG_CPU_TX49XX is not set |
87 | # CONFIG_CPU_R5000 is not set | 110 | # CONFIG_CPU_R5000 is not set |
88 | # CONFIG_CPU_R5432 is not set | 111 | # CONFIG_CPU_R5432 is not set |
112 | # CONFIG_CPU_R5500 is not set | ||
89 | # CONFIG_CPU_R6000 is not set | 113 | # CONFIG_CPU_R6000 is not set |
90 | # CONFIG_CPU_NEVADA is not set | 114 | # CONFIG_CPU_NEVADA is not set |
91 | # CONFIG_CPU_R8000 is not set | 115 | # CONFIG_CPU_R8000 is not set |
@@ -93,11 +117,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
93 | # CONFIG_CPU_RM7000 is not set | 117 | # CONFIG_CPU_RM7000 is not set |
94 | # CONFIG_CPU_RM9000 is not set | 118 | # CONFIG_CPU_RM9000 is not set |
95 | # CONFIG_CPU_SB1 is not set | 119 | # CONFIG_CPU_SB1 is not set |
120 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
121 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
96 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 122 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
97 | CONFIG_CPU_MIPS32=y | 123 | CONFIG_CPU_MIPS32=y |
98 | CONFIG_CPU_MIPSR1=y | 124 | CONFIG_CPU_MIPSR1=y |
99 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 125 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
100 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 126 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
127 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
101 | 128 | ||
102 | # | 129 | # |
103 | # Kernel type | 130 | # Kernel type |
@@ -107,184 +134,244 @@ CONFIG_32BIT=y | |||
107 | CONFIG_PAGE_SIZE_4KB=y | 134 | CONFIG_PAGE_SIZE_4KB=y |
108 | # CONFIG_PAGE_SIZE_8KB is not set | 135 | # CONFIG_PAGE_SIZE_8KB is not set |
109 | # CONFIG_PAGE_SIZE_16KB is not set | 136 | # CONFIG_PAGE_SIZE_16KB is not set |
137 | # CONFIG_PAGE_SIZE_32KB is not set | ||
110 | # CONFIG_PAGE_SIZE_64KB is not set | 138 | # CONFIG_PAGE_SIZE_64KB is not set |
111 | CONFIG_CPU_HAS_PREFETCH=y | 139 | CONFIG_CPU_HAS_PREFETCH=y |
112 | CONFIG_MIPS_MT_DISABLED=y | 140 | CONFIG_MIPS_MT_DISABLED=y |
113 | # CONFIG_MIPS_MT_SMP is not set | 141 | # CONFIG_MIPS_MT_SMP is not set |
114 | # CONFIG_MIPS_MT_SMTC is not set | 142 | # CONFIG_MIPS_MT_SMTC is not set |
115 | # CONFIG_MIPS_VPE_LOADER is not set | ||
116 | CONFIG_64BIT_PHYS_ADDR=y | 143 | CONFIG_64BIT_PHYS_ADDR=y |
144 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
117 | CONFIG_CPU_HAS_SYNC=y | 145 | CONFIG_CPU_HAS_SYNC=y |
118 | CONFIG_GENERIC_HARDIRQS=y | 146 | CONFIG_GENERIC_HARDIRQS=y |
119 | CONFIG_GENERIC_IRQ_PROBE=y | 147 | CONFIG_GENERIC_IRQ_PROBE=y |
120 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 148 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
121 | CONFIG_ARCH_FLATMEM_ENABLE=y | 149 | CONFIG_ARCH_FLATMEM_ENABLE=y |
150 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
122 | CONFIG_SELECT_MEMORY_MODEL=y | 151 | CONFIG_SELECT_MEMORY_MODEL=y |
123 | CONFIG_FLATMEM_MANUAL=y | 152 | CONFIG_FLATMEM_MANUAL=y |
124 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 153 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
125 | # CONFIG_SPARSEMEM_MANUAL is not set | 154 | # CONFIG_SPARSEMEM_MANUAL is not set |
126 | CONFIG_FLATMEM=y | 155 | CONFIG_FLATMEM=y |
127 | CONFIG_FLAT_NODE_MEM_MAP=y | 156 | CONFIG_FLAT_NODE_MEM_MAP=y |
128 | # CONFIG_SPARSEMEM_STATIC is not set | 157 | CONFIG_PAGEFLAGS_EXTENDED=y |
129 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 158 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
130 | # CONFIG_RESOURCES_64BIT is not set | 159 | CONFIG_PHYS_ADDR_T_64BIT=y |
131 | CONFIG_ZONE_DMA_FLAG=1 | 160 | CONFIG_ZONE_DMA_FLAG=0 |
161 | CONFIG_VIRT_TO_BUS=y | ||
162 | # CONFIG_KSM is not set | ||
163 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
164 | CONFIG_TICK_ONESHOT=y | ||
165 | CONFIG_NO_HZ=y | ||
166 | CONFIG_HIGH_RES_TIMERS=y | ||
167 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
132 | # CONFIG_HZ_48 is not set | 168 | # CONFIG_HZ_48 is not set |
133 | # CONFIG_HZ_100 is not set | 169 | CONFIG_HZ_100=y |
134 | # CONFIG_HZ_128 is not set | 170 | # CONFIG_HZ_128 is not set |
135 | # CONFIG_HZ_250 is not set | 171 | # CONFIG_HZ_250 is not set |
136 | # CONFIG_HZ_256 is not set | 172 | # CONFIG_HZ_256 is not set |
137 | CONFIG_HZ_1000=y | 173 | # CONFIG_HZ_1000 is not set |
138 | # CONFIG_HZ_1024 is not set | 174 | # CONFIG_HZ_1024 is not set |
139 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 175 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
140 | CONFIG_HZ=1000 | 176 | CONFIG_HZ=100 |
141 | CONFIG_PREEMPT_NONE=y | 177 | CONFIG_PREEMPT_NONE=y |
142 | # CONFIG_PREEMPT_VOLUNTARY is not set | 178 | # CONFIG_PREEMPT_VOLUNTARY is not set |
143 | # CONFIG_PREEMPT is not set | 179 | # CONFIG_PREEMPT is not set |
144 | # CONFIG_KEXEC is not set | 180 | # CONFIG_KEXEC is not set |
181 | # CONFIG_SECCOMP is not set | ||
145 | CONFIG_LOCKDEP_SUPPORT=y | 182 | CONFIG_LOCKDEP_SUPPORT=y |
146 | CONFIG_STACKTRACE_SUPPORT=y | 183 | CONFIG_STACKTRACE_SUPPORT=y |
147 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 184 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
185 | CONFIG_CONSTRUCTORS=y | ||
148 | 186 | ||
149 | # | 187 | # |
150 | # Code maturity level options | 188 | # General setup |
151 | # | 189 | # |
152 | CONFIG_EXPERIMENTAL=y | 190 | CONFIG_EXPERIMENTAL=y |
153 | CONFIG_BROKEN_ON_SMP=y | 191 | CONFIG_BROKEN_ON_SMP=y |
154 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 192 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
155 | 193 | CONFIG_LOCALVERSION="-db1000" | |
156 | # | ||
157 | # General setup | ||
158 | # | ||
159 | CONFIG_LOCALVERSION="" | ||
160 | CONFIG_LOCALVERSION_AUTO=y | 194 | CONFIG_LOCALVERSION_AUTO=y |
195 | CONFIG_HAVE_KERNEL_GZIP=y | ||
196 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
197 | CONFIG_HAVE_KERNEL_LZMA=y | ||
198 | CONFIG_HAVE_KERNEL_LZO=y | ||
199 | # CONFIG_KERNEL_GZIP is not set | ||
200 | # CONFIG_KERNEL_BZIP2 is not set | ||
201 | CONFIG_KERNEL_LZMA=y | ||
202 | # CONFIG_KERNEL_LZO is not set | ||
161 | CONFIG_SWAP=y | 203 | CONFIG_SWAP=y |
162 | CONFIG_SYSVIPC=y | 204 | CONFIG_SYSVIPC=y |
163 | # CONFIG_IPC_NS is not set | ||
164 | CONFIG_SYSVIPC_SYSCTL=y | 205 | CONFIG_SYSVIPC_SYSCTL=y |
165 | # CONFIG_POSIX_MQUEUE is not set | 206 | CONFIG_POSIX_MQUEUE=y |
207 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
166 | # CONFIG_BSD_PROCESS_ACCT is not set | 208 | # CONFIG_BSD_PROCESS_ACCT is not set |
167 | # CONFIG_TASKSTATS is not set | 209 | # CONFIG_TASKSTATS is not set |
168 | # CONFIG_UTS_NS is not set | ||
169 | # CONFIG_AUDIT is not set | 210 | # CONFIG_AUDIT is not set |
211 | |||
212 | # | ||
213 | # RCU Subsystem | ||
214 | # | ||
215 | # CONFIG_TREE_RCU is not set | ||
216 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
217 | CONFIG_TINY_RCU=y | ||
218 | # CONFIG_TREE_RCU_TRACE is not set | ||
170 | # CONFIG_IKCONFIG is not set | 219 | # CONFIG_IKCONFIG is not set |
171 | CONFIG_SYSFS_DEPRECATED=y | 220 | CONFIG_LOG_BUF_SHIFT=14 |
172 | CONFIG_RELAY=y | 221 | # CONFIG_GROUP_SCHED is not set |
222 | # CONFIG_CGROUPS is not set | ||
223 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
224 | # CONFIG_RELAY is not set | ||
225 | # CONFIG_NAMESPACES is not set | ||
226 | # CONFIG_BLK_DEV_INITRD is not set | ||
173 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 227 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
174 | CONFIG_SYSCTL=y | 228 | CONFIG_SYSCTL=y |
229 | CONFIG_ANON_INODES=y | ||
175 | CONFIG_EMBEDDED=y | 230 | CONFIG_EMBEDDED=y |
176 | CONFIG_SYSCTL_SYSCALL=y | 231 | CONFIG_SYSCTL_SYSCALL=y |
177 | CONFIG_KALLSYMS=y | 232 | # CONFIG_KALLSYMS is not set |
178 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
179 | CONFIG_HOTPLUG=y | 233 | CONFIG_HOTPLUG=y |
180 | CONFIG_PRINTK=y | 234 | CONFIG_PRINTK=y |
181 | CONFIG_BUG=y | 235 | CONFIG_BUG=y |
182 | CONFIG_ELF_CORE=y | 236 | CONFIG_ELF_CORE=y |
237 | # CONFIG_PCSPKR_PLATFORM is not set | ||
183 | CONFIG_BASE_FULL=y | 238 | CONFIG_BASE_FULL=y |
184 | CONFIG_FUTEX=y | 239 | CONFIG_FUTEX=y |
185 | CONFIG_EPOLL=y | 240 | CONFIG_EPOLL=y |
241 | CONFIG_SIGNALFD=y | ||
242 | CONFIG_TIMERFD=y | ||
243 | CONFIG_EVENTFD=y | ||
186 | CONFIG_SHMEM=y | 244 | CONFIG_SHMEM=y |
245 | CONFIG_AIO=y | ||
246 | |||
247 | # | ||
248 | # Kernel Performance Events And Counters | ||
249 | # | ||
250 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
251 | # CONFIG_COMPAT_BRK is not set | ||
187 | CONFIG_SLAB=y | 252 | CONFIG_SLAB=y |
188 | CONFIG_VM_EVENT_COUNTERS=y | 253 | # CONFIG_SLUB is not set |
189 | CONFIG_RT_MUTEXES=y | ||
190 | # CONFIG_TINY_SHMEM is not set | ||
191 | CONFIG_BASE_SMALL=0 | ||
192 | # CONFIG_SLOB is not set | 254 | # CONFIG_SLOB is not set |
255 | # CONFIG_PROFILING is not set | ||
256 | CONFIG_HAVE_OPROFILE=y | ||
193 | 257 | ||
194 | # | 258 | # |
195 | # Loadable module support | 259 | # GCOV-based kernel profiling |
196 | # | 260 | # |
261 | # CONFIG_SLOW_WORK is not set | ||
262 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
263 | CONFIG_SLABINFO=y | ||
264 | CONFIG_RT_MUTEXES=y | ||
265 | CONFIG_BASE_SMALL=0 | ||
197 | CONFIG_MODULES=y | 266 | CONFIG_MODULES=y |
267 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
198 | CONFIG_MODULE_UNLOAD=y | 268 | CONFIG_MODULE_UNLOAD=y |
199 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 269 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
200 | CONFIG_MODVERSIONS=y | 270 | # CONFIG_MODVERSIONS is not set |
201 | CONFIG_MODULE_SRCVERSION_ALL=y | 271 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
202 | CONFIG_KMOD=y | ||
203 | |||
204 | # | ||
205 | # Block layer | ||
206 | # | ||
207 | CONFIG_BLOCK=y | 272 | CONFIG_BLOCK=y |
208 | # CONFIG_LBD is not set | 273 | # CONFIG_LBDAF is not set |
209 | # CONFIG_BLK_DEV_IO_TRACE is not set | 274 | # CONFIG_BLK_DEV_BSG is not set |
210 | # CONFIG_LSF is not set | 275 | # CONFIG_BLK_DEV_INTEGRITY is not set |
211 | 276 | ||
212 | # | 277 | # |
213 | # IO Schedulers | 278 | # IO Schedulers |
214 | # | 279 | # |
215 | CONFIG_IOSCHED_NOOP=y | 280 | CONFIG_IOSCHED_NOOP=y |
216 | CONFIG_IOSCHED_AS=y | 281 | # CONFIG_IOSCHED_DEADLINE is not set |
217 | CONFIG_IOSCHED_DEADLINE=y | 282 | # CONFIG_IOSCHED_CFQ is not set |
218 | CONFIG_IOSCHED_CFQ=y | ||
219 | CONFIG_DEFAULT_AS=y | ||
220 | # CONFIG_DEFAULT_DEADLINE is not set | 283 | # CONFIG_DEFAULT_DEADLINE is not set |
221 | # CONFIG_DEFAULT_CFQ is not set | 284 | # CONFIG_DEFAULT_CFQ is not set |
222 | # CONFIG_DEFAULT_NOOP is not set | 285 | CONFIG_DEFAULT_NOOP=y |
223 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 286 | CONFIG_DEFAULT_IOSCHED="noop" |
287 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
288 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
289 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
290 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
293 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
294 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
295 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
296 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
297 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
298 | # CONFIG_INLINE_READ_LOCK is not set | ||
299 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
300 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
302 | CONFIG_INLINE_READ_UNLOCK=y | ||
303 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
304 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
305 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
306 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
307 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
308 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
311 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
312 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
313 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
314 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
315 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
316 | CONFIG_FREEZER=y | ||
224 | 317 | ||
225 | # | 318 | # |
226 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 319 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
227 | # | 320 | # |
228 | CONFIG_HW_HAS_PCI=y | 321 | CONFIG_HW_HAS_PCI=y |
229 | # CONFIG_PCI is not set | 322 | # CONFIG_PCI is not set |
323 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
230 | CONFIG_MMU=y | 324 | CONFIG_MMU=y |
231 | 325 | CONFIG_PCCARD=y | |
232 | # | 326 | CONFIG_PCMCIA=y |
233 | # PCCARD (PCMCIA/CardBus) support | ||
234 | # | ||
235 | CONFIG_PCCARD=m | ||
236 | # CONFIG_PCMCIA_DEBUG is not set | ||
237 | CONFIG_PCMCIA=m | ||
238 | CONFIG_PCMCIA_LOAD_CIS=y | 327 | CONFIG_PCMCIA_LOAD_CIS=y |
239 | CONFIG_PCMCIA_IOCTL=y | 328 | # CONFIG_PCMCIA_IOCTL is not set |
240 | 329 | ||
241 | # | 330 | # |
242 | # PC-card bridges | 331 | # PC-card bridges |
243 | # | 332 | # |
244 | # CONFIG_PCMCIA_AU1X00 is not set | 333 | # CONFIG_PCMCIA_AU1X00 is not set |
245 | 334 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y | |
246 | # | ||
247 | # PCI Hotplug Support | ||
248 | # | ||
249 | 335 | ||
250 | # | 336 | # |
251 | # Executable file formats | 337 | # Executable file formats |
252 | # | 338 | # |
253 | CONFIG_BINFMT_ELF=y | 339 | CONFIG_BINFMT_ELF=y |
340 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
341 | # CONFIG_HAVE_AOUT is not set | ||
254 | # CONFIG_BINFMT_MISC is not set | 342 | # CONFIG_BINFMT_MISC is not set |
255 | CONFIG_TRAD_SIGNALS=y | 343 | CONFIG_TRAD_SIGNALS=y |
256 | 344 | ||
257 | # | 345 | # |
258 | # Power management options | 346 | # Power management options |
259 | # | 347 | # |
260 | # CONFIG_PM is not set | 348 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y |
261 | 349 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | |
262 | # | 350 | CONFIG_PM=y |
263 | # Networking | 351 | # CONFIG_PM_DEBUG is not set |
264 | # | 352 | CONFIG_PM_SLEEP=y |
353 | CONFIG_SUSPEND=y | ||
354 | CONFIG_SUSPEND_FREEZER=y | ||
355 | # CONFIG_HIBERNATION is not set | ||
356 | # CONFIG_APM_EMULATION is not set | ||
357 | CONFIG_PM_RUNTIME=y | ||
265 | CONFIG_NET=y | 358 | CONFIG_NET=y |
266 | 359 | ||
267 | # | 360 | # |
268 | # Networking options | 361 | # Networking options |
269 | # | 362 | # |
270 | # CONFIG_NETDEBUG is not set | ||
271 | CONFIG_PACKET=y | 363 | CONFIG_PACKET=y |
272 | # CONFIG_PACKET_MMAP is not set | 364 | CONFIG_PACKET_MMAP=y |
273 | CONFIG_UNIX=y | 365 | CONFIG_UNIX=y |
274 | CONFIG_XFRM=y | 366 | # CONFIG_NET_KEY is not set |
275 | CONFIG_XFRM_USER=m | ||
276 | # CONFIG_XFRM_SUB_POLICY is not set | ||
277 | CONFIG_XFRM_MIGRATE=y | ||
278 | CONFIG_NET_KEY=y | ||
279 | CONFIG_NET_KEY_MIGRATE=y | ||
280 | CONFIG_INET=y | 367 | CONFIG_INET=y |
281 | CONFIG_IP_MULTICAST=y | 368 | CONFIG_IP_MULTICAST=y |
282 | # CONFIG_IP_ADVANCED_ROUTER is not set | 369 | # CONFIG_IP_ADVANCED_ROUTER is not set |
283 | CONFIG_IP_FIB_HASH=y | 370 | CONFIG_IP_FIB_HASH=y |
284 | CONFIG_IP_PNP=y | 371 | CONFIG_IP_PNP=y |
285 | # CONFIG_IP_PNP_DHCP is not set | 372 | CONFIG_IP_PNP_DHCP=y |
286 | CONFIG_IP_PNP_BOOTP=y | 373 | CONFIG_IP_PNP_BOOTP=y |
287 | # CONFIG_IP_PNP_RARP is not set | 374 | CONFIG_IP_PNP_RARP=y |
288 | # CONFIG_NET_IPIP is not set | 375 | # CONFIG_NET_IPIP is not set |
289 | # CONFIG_NET_IPGRE is not set | 376 | # CONFIG_NET_IPGRE is not set |
290 | # CONFIG_IP_MROUTE is not set | 377 | # CONFIG_IP_MROUTE is not set |
@@ -295,110 +382,25 @@ CONFIG_IP_PNP_BOOTP=y | |||
295 | # CONFIG_INET_IPCOMP is not set | 382 | # CONFIG_INET_IPCOMP is not set |
296 | # CONFIG_INET_XFRM_TUNNEL is not set | 383 | # CONFIG_INET_XFRM_TUNNEL is not set |
297 | # CONFIG_INET_TUNNEL is not set | 384 | # CONFIG_INET_TUNNEL is not set |
298 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 385 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
299 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 386 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
300 | CONFIG_INET_XFRM_MODE_BEET=m | 387 | # CONFIG_INET_XFRM_MODE_BEET is not set |
301 | CONFIG_INET_DIAG=y | 388 | CONFIG_INET_LRO=y |
302 | CONFIG_INET_TCP_DIAG=y | 389 | # CONFIG_INET_DIAG is not set |
303 | # CONFIG_TCP_CONG_ADVANCED is not set | 390 | # CONFIG_TCP_CONG_ADVANCED is not set |
304 | CONFIG_TCP_CONG_CUBIC=y | 391 | CONFIG_TCP_CONG_CUBIC=y |
305 | CONFIG_DEFAULT_TCP_CONG="cubic" | 392 | CONFIG_DEFAULT_TCP_CONG="cubic" |
306 | CONFIG_TCP_MD5SIG=y | 393 | # CONFIG_TCP_MD5SIG is not set |
307 | |||
308 | # | ||
309 | # IP: Virtual Server Configuration | ||
310 | # | ||
311 | # CONFIG_IP_VS is not set | ||
312 | # CONFIG_IPV6 is not set | 394 | # CONFIG_IPV6 is not set |
313 | # CONFIG_INET6_XFRM_TUNNEL is not set | 395 | # CONFIG_NETWORK_SECMARK is not set |
314 | # CONFIG_INET6_TUNNEL is not set | 396 | # CONFIG_NETFILTER is not set |
315 | CONFIG_NETWORK_SECMARK=y | ||
316 | CONFIG_NETFILTER=y | ||
317 | # CONFIG_NETFILTER_DEBUG is not set | ||
318 | |||
319 | # | ||
320 | # Core Netfilter Configuration | ||
321 | # | ||
322 | CONFIG_NETFILTER_NETLINK=m | ||
323 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
324 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
325 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
326 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
327 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
328 | CONFIG_NF_CONNTRACK=m | ||
329 | CONFIG_NF_CT_ACCT=y | ||
330 | CONFIG_NF_CONNTRACK_MARK=y | ||
331 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
332 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
333 | CONFIG_NF_CT_PROTO_GRE=m | ||
334 | CONFIG_NF_CT_PROTO_SCTP=m | ||
335 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
336 | CONFIG_NF_CONNTRACK_FTP=m | ||
337 | CONFIG_NF_CONNTRACK_H323=m | ||
338 | CONFIG_NF_CONNTRACK_IRC=m | ||
339 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
340 | CONFIG_NF_CONNTRACK_PPTP=m | ||
341 | CONFIG_NF_CONNTRACK_SANE=m | ||
342 | CONFIG_NF_CONNTRACK_SIP=m | ||
343 | CONFIG_NF_CONNTRACK_TFTP=m | ||
344 | CONFIG_NF_CT_NETLINK=m | ||
345 | CONFIG_NETFILTER_XTABLES=m | ||
346 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
347 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
348 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
349 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
350 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
351 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
352 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
353 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
354 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
355 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
356 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
357 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
358 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
359 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
365 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
366 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
367 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
368 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
369 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
370 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
371 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
372 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
373 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
374 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
375 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
376 | |||
377 | # | ||
378 | # IP: Netfilter Configuration | ||
379 | # | ||
380 | CONFIG_NF_CONNTRACK_IPV4=m | ||
381 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
382 | # CONFIG_IP_NF_QUEUE is not set | ||
383 | # CONFIG_IP_NF_IPTABLES is not set | ||
384 | # CONFIG_IP_NF_ARPTABLES is not set | ||
385 | |||
386 | # | ||
387 | # DCCP Configuration (EXPERIMENTAL) | ||
388 | # | ||
389 | # CONFIG_IP_DCCP is not set | 397 | # CONFIG_IP_DCCP is not set |
390 | |||
391 | # | ||
392 | # SCTP Configuration (EXPERIMENTAL) | ||
393 | # | ||
394 | # CONFIG_IP_SCTP is not set | 398 | # CONFIG_IP_SCTP is not set |
395 | 399 | # CONFIG_RDS is not set | |
396 | # | ||
397 | # TIPC Configuration (EXPERIMENTAL) | ||
398 | # | ||
399 | # CONFIG_TIPC is not set | 400 | # CONFIG_TIPC is not set |
400 | # CONFIG_ATM is not set | 401 | # CONFIG_ATM is not set |
401 | # CONFIG_BRIDGE is not set | 402 | # CONFIG_BRIDGE is not set |
403 | # CONFIG_NET_DSA is not set | ||
402 | # CONFIG_VLAN_8021Q is not set | 404 | # CONFIG_VLAN_8021Q is not set |
403 | # CONFIG_DECNET is not set | 405 | # CONFIG_DECNET is not set |
404 | # CONFIG_LLC2 is not set | 406 | # CONFIG_LLC2 is not set |
@@ -408,27 +410,24 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
408 | # CONFIG_LAPB is not set | 410 | # CONFIG_LAPB is not set |
409 | # CONFIG_ECONET is not set | 411 | # CONFIG_ECONET is not set |
410 | # CONFIG_WAN_ROUTER is not set | 412 | # CONFIG_WAN_ROUTER is not set |
411 | 413 | # CONFIG_PHONET is not set | |
412 | # | 414 | # CONFIG_IEEE802154 is not set |
413 | # QoS and/or fair queueing | ||
414 | # | ||
415 | # CONFIG_NET_SCHED is not set | 415 | # CONFIG_NET_SCHED is not set |
416 | CONFIG_NET_CLS_ROUTE=y | 416 | # CONFIG_DCB is not set |
417 | 417 | ||
418 | # | 418 | # |
419 | # Network testing | 419 | # Network testing |
420 | # | 420 | # |
421 | # CONFIG_NET_PKTGEN is not set | 421 | # CONFIG_NET_PKTGEN is not set |
422 | # CONFIG_HAMRADIO is not set | 422 | # CONFIG_HAMRADIO is not set |
423 | # CONFIG_CAN is not set | ||
423 | # CONFIG_IRDA is not set | 424 | # CONFIG_IRDA is not set |
424 | # CONFIG_BT is not set | 425 | # CONFIG_BT is not set |
425 | CONFIG_IEEE80211=m | 426 | # CONFIG_AF_RXRPC is not set |
426 | # CONFIG_IEEE80211_DEBUG is not set | 427 | # CONFIG_WIRELESS is not set |
427 | CONFIG_IEEE80211_CRYPT_WEP=m | 428 | # CONFIG_WIMAX is not set |
428 | CONFIG_IEEE80211_CRYPT_CCMP=m | 429 | # CONFIG_RFKILL is not set |
429 | CONFIG_IEEE80211_SOFTMAC=m | 430 | # CONFIG_NET_9P is not set |
430 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
431 | CONFIG_WIRELESS_EXT=y | ||
432 | 431 | ||
433 | # | 432 | # |
434 | # Device Drivers | 433 | # Device Drivers |
@@ -437,25 +436,25 @@ CONFIG_WIRELESS_EXT=y | |||
437 | # | 436 | # |
438 | # Generic Driver Options | 437 | # Generic Driver Options |
439 | # | 438 | # |
439 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
440 | # CONFIG_DEVTMPFS is not set | ||
440 | CONFIG_STANDALONE=y | 441 | CONFIG_STANDALONE=y |
441 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 442 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
442 | CONFIG_FW_LOADER=m | 443 | CONFIG_FW_LOADER=y |
444 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
445 | CONFIG_EXTRA_FIRMWARE="" | ||
446 | # CONFIG_DEBUG_DRIVER is not set | ||
447 | # CONFIG_DEBUG_DEVRES is not set | ||
443 | # CONFIG_SYS_HYPERVISOR is not set | 448 | # CONFIG_SYS_HYPERVISOR is not set |
444 | 449 | # CONFIG_CONNECTOR is not set | |
445 | # | ||
446 | # Connector - unified userspace <-> kernelspace linker | ||
447 | # | ||
448 | CONFIG_CONNECTOR=m | ||
449 | |||
450 | # | ||
451 | # Memory Technology Devices (MTD) | ||
452 | # | ||
453 | CONFIG_MTD=y | 450 | CONFIG_MTD=y |
454 | # CONFIG_MTD_DEBUG is not set | 451 | # CONFIG_MTD_DEBUG is not set |
452 | # CONFIG_MTD_TESTS is not set | ||
455 | # CONFIG_MTD_CONCAT is not set | 453 | # CONFIG_MTD_CONCAT is not set |
456 | CONFIG_MTD_PARTITIONS=y | 454 | CONFIG_MTD_PARTITIONS=y |
457 | # CONFIG_MTD_REDBOOT_PARTS is not set | 455 | # CONFIG_MTD_REDBOOT_PARTS is not set |
458 | # CONFIG_MTD_CMDLINE_PARTS is not set | 456 | CONFIG_MTD_CMDLINE_PARTS=y |
457 | # CONFIG_MTD_AR7_PARTS is not set | ||
459 | 458 | ||
460 | # | 459 | # |
461 | # User Modules And Translation Layers | 460 | # User Modules And Translation Layers |
@@ -468,6 +467,7 @@ CONFIG_MTD_BLOCK=y | |||
468 | # CONFIG_INFTL is not set | 467 | # CONFIG_INFTL is not set |
469 | # CONFIG_RFD_FTL is not set | 468 | # CONFIG_RFD_FTL is not set |
470 | # CONFIG_SSFDC is not set | 469 | # CONFIG_SSFDC is not set |
470 | # CONFIG_MTD_OOPS is not set | ||
471 | 471 | ||
472 | # | 472 | # |
473 | # RAM/ROM/Flash chip drivers | 473 | # RAM/ROM/Flash chip drivers |
@@ -493,14 +493,13 @@ CONFIG_MTD_CFI_UTIL=y | |||
493 | # CONFIG_MTD_RAM is not set | 493 | # CONFIG_MTD_RAM is not set |
494 | # CONFIG_MTD_ROM is not set | 494 | # CONFIG_MTD_ROM is not set |
495 | # CONFIG_MTD_ABSENT is not set | 495 | # CONFIG_MTD_ABSENT is not set |
496 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
497 | 496 | ||
498 | # | 497 | # |
499 | # Mapping drivers for chip access | 498 | # Mapping drivers for chip access |
500 | # | 499 | # |
501 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 500 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
502 | # CONFIG_MTD_PHYSMAP is not set | 501 | CONFIG_MTD_PHYSMAP=y |
503 | CONFIG_MTD_ALCHEMY=y | 502 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
504 | # CONFIG_MTD_PLATRAM is not set | 503 | # CONFIG_MTD_PLATRAM is not set |
505 | 504 | ||
506 | # | 505 | # |
@@ -517,174 +516,115 @@ CONFIG_MTD_ALCHEMY=y | |||
517 | # CONFIG_MTD_DOC2000 is not set | 516 | # CONFIG_MTD_DOC2000 is not set |
518 | # CONFIG_MTD_DOC2001 is not set | 517 | # CONFIG_MTD_DOC2001 is not set |
519 | # CONFIG_MTD_DOC2001PLUS is not set | 518 | # CONFIG_MTD_DOC2001PLUS is not set |
520 | |||
521 | # | ||
522 | # NAND Flash Device Drivers | ||
523 | # | ||
524 | # CONFIG_MTD_NAND is not set | 519 | # CONFIG_MTD_NAND is not set |
525 | |||
526 | # | ||
527 | # OneNAND Flash Device Drivers | ||
528 | # | ||
529 | # CONFIG_MTD_ONENAND is not set | 520 | # CONFIG_MTD_ONENAND is not set |
530 | 521 | ||
531 | # | 522 | # |
532 | # Parallel port support | 523 | # LPDDR flash memory drivers |
533 | # | 524 | # |
534 | # CONFIG_PARPORT is not set | 525 | # CONFIG_MTD_LPDDR is not set |
535 | 526 | ||
536 | # | 527 | # |
537 | # Plug and Play support | 528 | # UBI - Unsorted block images |
538 | # | 529 | # |
539 | # CONFIG_PNPACPI is not set | 530 | # CONFIG_MTD_UBI is not set |
531 | # CONFIG_PARPORT is not set | ||
532 | CONFIG_BLK_DEV=y | ||
533 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
534 | # CONFIG_BLK_DEV_LOOP is not set | ||
540 | 535 | ||
541 | # | 536 | # |
542 | # Block devices | 537 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected |
543 | # | 538 | # |
544 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
545 | CONFIG_BLK_DEV_LOOP=y | ||
546 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
547 | # CONFIG_BLK_DEV_NBD is not set | 539 | # CONFIG_BLK_DEV_NBD is not set |
540 | # CONFIG_BLK_DEV_UB is not set | ||
548 | # CONFIG_BLK_DEV_RAM is not set | 541 | # CONFIG_BLK_DEV_RAM is not set |
549 | # CONFIG_BLK_DEV_INITRD is not set | 542 | # CONFIG_CDROM_PKTCDVD is not set |
550 | CONFIG_CDROM_PKTCDVD=m | 543 | # CONFIG_ATA_OVER_ETH is not set |
551 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 544 | # CONFIG_BLK_DEV_HD is not set |
552 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 545 | # CONFIG_MISC_DEVICES is not set |
553 | CONFIG_ATA_OVER_ETH=m | 546 | CONFIG_HAVE_IDE=y |
554 | |||
555 | # | ||
556 | # Misc devices | ||
557 | # | ||
558 | |||
559 | # | ||
560 | # ATA/ATAPI/MFM/RLL support | ||
561 | # | ||
562 | # CONFIG_IDE is not set | 547 | # CONFIG_IDE is not set |
563 | 548 | ||
564 | # | 549 | # |
565 | # SCSI device support | 550 | # SCSI device support |
566 | # | 551 | # |
567 | CONFIG_RAID_ATTRS=m | 552 | # CONFIG_RAID_ATTRS is not set |
568 | # CONFIG_SCSI is not set | 553 | # CONFIG_SCSI is not set |
554 | # CONFIG_SCSI_DMA is not set | ||
569 | # CONFIG_SCSI_NETLINK is not set | 555 | # CONFIG_SCSI_NETLINK is not set |
570 | |||
571 | # | ||
572 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
573 | # | ||
574 | # CONFIG_ATA is not set | 556 | # CONFIG_ATA is not set |
575 | |||
576 | # | ||
577 | # Multi-device support (RAID and LVM) | ||
578 | # | ||
579 | # CONFIG_MD is not set | 557 | # CONFIG_MD is not set |
580 | |||
581 | # | ||
582 | # Fusion MPT device support | ||
583 | # | ||
584 | # CONFIG_FUSION is not set | ||
585 | |||
586 | # | ||
587 | # IEEE 1394 (FireWire) support | ||
588 | # | ||
589 | |||
590 | # | ||
591 | # I2O device support | ||
592 | # | ||
593 | |||
594 | # | ||
595 | # Network device support | ||
596 | # | ||
597 | CONFIG_NETDEVICES=y | 558 | CONFIG_NETDEVICES=y |
598 | # CONFIG_DUMMY is not set | 559 | # CONFIG_DUMMY is not set |
599 | # CONFIG_BONDING is not set | 560 | # CONFIG_BONDING is not set |
561 | # CONFIG_MACVLAN is not set | ||
600 | # CONFIG_EQUALIZER is not set | 562 | # CONFIG_EQUALIZER is not set |
601 | # CONFIG_TUN is not set | 563 | # CONFIG_TUN is not set |
602 | 564 | # CONFIG_VETH is not set | |
603 | # | ||
604 | # PHY device support | ||
605 | # | ||
606 | CONFIG_PHYLIB=y | 565 | CONFIG_PHYLIB=y |
607 | 566 | ||
608 | # | 567 | # |
609 | # MII PHY device drivers | 568 | # MII PHY device drivers |
610 | # | 569 | # |
611 | CONFIG_MARVELL_PHY=m | 570 | CONFIG_MARVELL_PHY=y |
612 | CONFIG_DAVICOM_PHY=m | 571 | CONFIG_DAVICOM_PHY=y |
613 | CONFIG_QSEMI_PHY=m | 572 | CONFIG_QSEMI_PHY=y |
614 | CONFIG_LXT_PHY=m | 573 | CONFIG_LXT_PHY=y |
615 | CONFIG_CICADA_PHY=m | 574 | CONFIG_CICADA_PHY=y |
616 | CONFIG_VITESSE_PHY=m | 575 | CONFIG_VITESSE_PHY=y |
617 | CONFIG_SMSC_PHY=m | 576 | CONFIG_SMSC_PHY=y |
618 | # CONFIG_BROADCOM_PHY is not set | 577 | CONFIG_BROADCOM_PHY=y |
578 | CONFIG_ICPLUS_PHY=y | ||
579 | CONFIG_REALTEK_PHY=y | ||
580 | CONFIG_NATIONAL_PHY=y | ||
581 | CONFIG_STE10XP=y | ||
582 | CONFIG_LSI_ET1011C_PHY=y | ||
619 | # CONFIG_FIXED_PHY is not set | 583 | # CONFIG_FIXED_PHY is not set |
620 | 584 | # CONFIG_MDIO_BITBANG is not set | |
621 | # | ||
622 | # Ethernet (10 or 100Mbit) | ||
623 | # | ||
624 | CONFIG_NET_ETHERNET=y | 585 | CONFIG_NET_ETHERNET=y |
625 | CONFIG_MII=m | 586 | CONFIG_MII=y |
587 | # CONFIG_AX88796 is not set | ||
626 | CONFIG_MIPS_AU1X00_ENET=y | 588 | CONFIG_MIPS_AU1X00_ENET=y |
627 | # CONFIG_SMC91X is not set | 589 | # CONFIG_SMC91X is not set |
628 | # CONFIG_DM9000 is not set | 590 | # CONFIG_DM9000 is not set |
629 | 591 | # CONFIG_ETHOC is not set | |
630 | # | 592 | # CONFIG_SMSC911X is not set |
631 | # Ethernet (1000 Mbit) | 593 | # CONFIG_DNET is not set |
632 | # | 594 | # CONFIG_IBM_NEW_EMAC_ZMII is not set |
633 | 595 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | |
634 | # | 596 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
635 | # Ethernet (10000 Mbit) | 597 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
636 | # | 598 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set |
637 | 599 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | |
638 | # | 600 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set |
639 | # Token Ring devices | 601 | # CONFIG_B44 is not set |
640 | # | 602 | # CONFIG_KS8842 is not set |
641 | 603 | # CONFIG_KS8851_MLL is not set | |
642 | # | 604 | # CONFIG_NETDEV_1000 is not set |
643 | # Wireless LAN (non-hamradio) | 605 | # CONFIG_NETDEV_10000 is not set |
644 | # | 606 | # CONFIG_WLAN is not set |
645 | # CONFIG_NET_RADIO is not set | 607 | |
646 | 608 | # | |
647 | # | 609 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
648 | # PCMCIA network device support | 610 | # |
649 | # | 611 | |
650 | CONFIG_NET_PCMCIA=y | 612 | # |
651 | CONFIG_PCMCIA_3C589=m | 613 | # USB Network Adapters |
652 | CONFIG_PCMCIA_3C574=m | 614 | # |
653 | CONFIG_PCMCIA_FMVJ18X=m | 615 | # CONFIG_USB_CATC is not set |
654 | CONFIG_PCMCIA_PCNET=m | 616 | # CONFIG_USB_KAWETH is not set |
655 | CONFIG_PCMCIA_NMCLAN=m | 617 | # CONFIG_USB_PEGASUS is not set |
656 | CONFIG_PCMCIA_SMC91C92=m | 618 | # CONFIG_USB_RTL8150 is not set |
657 | CONFIG_PCMCIA_XIRC2PS=m | 619 | # CONFIG_USB_USBNET is not set |
658 | CONFIG_PCMCIA_AXNET=m | 620 | # CONFIG_NET_PCMCIA is not set |
659 | |||
660 | # | ||
661 | # Wan interfaces | ||
662 | # | ||
663 | # CONFIG_WAN is not set | 621 | # CONFIG_WAN is not set |
664 | CONFIG_PPP=m | 622 | # CONFIG_PPP is not set |
665 | CONFIG_PPP_MULTILINK=y | ||
666 | # CONFIG_PPP_FILTER is not set | ||
667 | CONFIG_PPP_ASYNC=m | ||
668 | # CONFIG_PPP_SYNC_TTY is not set | ||
669 | CONFIG_PPP_DEFLATE=m | ||
670 | # CONFIG_PPP_BSDCOMP is not set | ||
671 | CONFIG_PPP_MPPE=m | ||
672 | CONFIG_PPPOE=m | ||
673 | # CONFIG_SLIP is not set | 623 | # CONFIG_SLIP is not set |
674 | CONFIG_SLHC=m | ||
675 | # CONFIG_SHAPER is not set | ||
676 | # CONFIG_NETCONSOLE is not set | 624 | # CONFIG_NETCONSOLE is not set |
677 | # CONFIG_NETPOLL is not set | 625 | # CONFIG_NETPOLL is not set |
678 | # CONFIG_NET_POLL_CONTROLLER is not set | 626 | # CONFIG_NET_POLL_CONTROLLER is not set |
679 | |||
680 | # | ||
681 | # ISDN subsystem | ||
682 | # | ||
683 | # CONFIG_ISDN is not set | 627 | # CONFIG_ISDN is not set |
684 | |||
685 | # | ||
686 | # Telephony Support | ||
687 | # | ||
688 | # CONFIG_PHONE is not set | 628 | # CONFIG_PHONE is not set |
689 | 629 | ||
690 | # | 630 | # |
@@ -692,16 +632,14 @@ CONFIG_SLHC=m | |||
692 | # | 632 | # |
693 | CONFIG_INPUT=y | 633 | CONFIG_INPUT=y |
694 | # CONFIG_INPUT_FF_MEMLESS is not set | 634 | # CONFIG_INPUT_FF_MEMLESS is not set |
635 | # CONFIG_INPUT_POLLDEV is not set | ||
636 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
695 | 637 | ||
696 | # | 638 | # |
697 | # Userland interfaces | 639 | # Userland interfaces |
698 | # | 640 | # |
699 | CONFIG_INPUT_MOUSEDEV=y | 641 | # CONFIG_INPUT_MOUSEDEV is not set |
700 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
701 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
702 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
703 | # CONFIG_INPUT_JOYDEV is not set | 642 | # CONFIG_INPUT_JOYDEV is not set |
704 | # CONFIG_INPUT_TSDEV is not set | ||
705 | CONFIG_INPUT_EVDEV=y | 643 | CONFIG_INPUT_EVDEV=y |
706 | # CONFIG_INPUT_EVBUG is not set | 644 | # CONFIG_INPUT_EVBUG is not set |
707 | 645 | ||
@@ -711,35 +649,33 @@ CONFIG_INPUT_EVDEV=y | |||
711 | # CONFIG_INPUT_KEYBOARD is not set | 649 | # CONFIG_INPUT_KEYBOARD is not set |
712 | # CONFIG_INPUT_MOUSE is not set | 650 | # CONFIG_INPUT_MOUSE is not set |
713 | # CONFIG_INPUT_JOYSTICK is not set | 651 | # CONFIG_INPUT_JOYSTICK is not set |
652 | # CONFIG_INPUT_TABLET is not set | ||
714 | # CONFIG_INPUT_TOUCHSCREEN is not set | 653 | # CONFIG_INPUT_TOUCHSCREEN is not set |
715 | # CONFIG_INPUT_MISC is not set | 654 | # CONFIG_INPUT_MISC is not set |
716 | 655 | ||
717 | # | 656 | # |
718 | # Hardware I/O ports | 657 | # Hardware I/O ports |
719 | # | 658 | # |
720 | CONFIG_SERIO=y | 659 | # CONFIG_SERIO is not set |
721 | # CONFIG_SERIO_I8042 is not set | ||
722 | CONFIG_SERIO_SERPORT=y | ||
723 | # CONFIG_SERIO_LIBPS2 is not set | ||
724 | CONFIG_SERIO_RAW=m | ||
725 | # CONFIG_GAMEPORT is not set | 660 | # CONFIG_GAMEPORT is not set |
726 | 661 | ||
727 | # | 662 | # |
728 | # Character devices | 663 | # Character devices |
729 | # | 664 | # |
730 | CONFIG_VT=y | 665 | CONFIG_VT=y |
666 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
731 | CONFIG_VT_CONSOLE=y | 667 | CONFIG_VT_CONSOLE=y |
732 | CONFIG_HW_CONSOLE=y | 668 | CONFIG_HW_CONSOLE=y |
733 | CONFIG_VT_HW_CONSOLE_BINDING=y | 669 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
670 | CONFIG_DEVKMEM=y | ||
734 | # CONFIG_SERIAL_NONSTANDARD is not set | 671 | # CONFIG_SERIAL_NONSTANDARD is not set |
735 | # CONFIG_AU1X00_GPIO is not set | ||
736 | 672 | ||
737 | # | 673 | # |
738 | # Serial drivers | 674 | # Serial drivers |
739 | # | 675 | # |
740 | CONFIG_SERIAL_8250=y | 676 | CONFIG_SERIAL_8250=y |
741 | CONFIG_SERIAL_8250_CONSOLE=y | 677 | CONFIG_SERIAL_8250_CONSOLE=y |
742 | CONFIG_SERIAL_8250_CS=m | 678 | # CONFIG_SERIAL_8250_CS is not set |
743 | CONFIG_SERIAL_8250_NR_UARTS=4 | 679 | CONFIG_SERIAL_8250_NR_UARTS=4 |
744 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 680 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
745 | # CONFIG_SERIAL_8250_EXTENDED is not set | 681 | # CONFIG_SERIAL_8250_EXTENDED is not set |
@@ -751,198 +687,291 @@ CONFIG_SERIAL_8250_AU1X00=y | |||
751 | CONFIG_SERIAL_CORE=y | 687 | CONFIG_SERIAL_CORE=y |
752 | CONFIG_SERIAL_CORE_CONSOLE=y | 688 | CONFIG_SERIAL_CORE_CONSOLE=y |
753 | CONFIG_UNIX98_PTYS=y | 689 | CONFIG_UNIX98_PTYS=y |
754 | CONFIG_LEGACY_PTYS=y | 690 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
755 | CONFIG_LEGACY_PTY_COUNT=256 | 691 | # CONFIG_LEGACY_PTYS is not set |
756 | |||
757 | # | ||
758 | # IPMI | ||
759 | # | ||
760 | # CONFIG_IPMI_HANDLER is not set | 692 | # CONFIG_IPMI_HANDLER is not set |
761 | |||
762 | # | ||
763 | # Watchdog Cards | ||
764 | # | ||
765 | # CONFIG_WATCHDOG is not set | ||
766 | # CONFIG_HW_RANDOM is not set | 693 | # CONFIG_HW_RANDOM is not set |
767 | # CONFIG_RTC is not set | ||
768 | # CONFIG_GEN_RTC is not set | ||
769 | # CONFIG_DTLK is not set | ||
770 | # CONFIG_R3964 is not set | 694 | # CONFIG_R3964 is not set |
771 | 695 | ||
772 | # | 696 | # |
773 | # PCMCIA character devices | 697 | # PCMCIA character devices |
774 | # | 698 | # |
775 | CONFIG_SYNCLINK_CS=m | 699 | # CONFIG_SYNCLINK_CS is not set |
776 | # CONFIG_CARDMAN_4000 is not set | 700 | # CONFIG_CARDMAN_4000 is not set |
777 | # CONFIG_CARDMAN_4040 is not set | 701 | # CONFIG_CARDMAN_4040 is not set |
702 | # CONFIG_IPWIRELESS is not set | ||
778 | # CONFIG_RAW_DRIVER is not set | 703 | # CONFIG_RAW_DRIVER is not set |
779 | |||
780 | # | ||
781 | # TPM devices | ||
782 | # | ||
783 | # CONFIG_TCG_TPM is not set | 704 | # CONFIG_TCG_TPM is not set |
784 | |||
785 | # | ||
786 | # I2C support | ||
787 | # | ||
788 | # CONFIG_I2C is not set | 705 | # CONFIG_I2C is not set |
789 | |||
790 | # | ||
791 | # SPI support | ||
792 | # | ||
793 | # CONFIG_SPI is not set | 706 | # CONFIG_SPI is not set |
794 | # CONFIG_SPI_MASTER is not set | ||
795 | 707 | ||
796 | # | 708 | # |
797 | # Dallas's 1-wire bus | 709 | # PPS support |
798 | # | 710 | # |
711 | # CONFIG_PPS is not set | ||
712 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
713 | # CONFIG_GPIOLIB is not set | ||
799 | # CONFIG_W1 is not set | 714 | # CONFIG_W1 is not set |
800 | 715 | # CONFIG_POWER_SUPPLY is not set | |
801 | # | ||
802 | # Hardware Monitoring support | ||
803 | # | ||
804 | # CONFIG_HWMON is not set | 716 | # CONFIG_HWMON is not set |
805 | # CONFIG_HWMON_VID is not set | 717 | # CONFIG_THERMAL is not set |
718 | # CONFIG_WATCHDOG is not set | ||
719 | CONFIG_SSB_POSSIBLE=y | ||
806 | 720 | ||
807 | # | 721 | # |
808 | # Multimedia devices | 722 | # Sonics Silicon Backplane |
809 | # | 723 | # |
810 | # CONFIG_VIDEO_DEV is not set | 724 | # CONFIG_SSB is not set |
811 | 725 | ||
812 | # | 726 | # |
813 | # Digital Video Broadcasting Devices | 727 | # Multifunction device drivers |
814 | # | 728 | # |
815 | # CONFIG_DVB is not set | 729 | # CONFIG_MFD_CORE is not set |
730 | # CONFIG_MFD_SM501 is not set | ||
731 | # CONFIG_HTC_PASIC3 is not set | ||
732 | # CONFIG_MFD_TMIO is not set | ||
733 | # CONFIG_REGULATOR is not set | ||
734 | # CONFIG_MEDIA_SUPPORT is not set | ||
816 | 735 | ||
817 | # | 736 | # |
818 | # Graphics support | 737 | # Graphics support |
819 | # | 738 | # |
820 | # CONFIG_FIRMWARE_EDID is not set | 739 | # CONFIG_VGASTATE is not set |
740 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
821 | # CONFIG_FB is not set | 741 | # CONFIG_FB is not set |
822 | |||
823 | # | ||
824 | # Console display driver support | ||
825 | # | ||
826 | # CONFIG_VGA_CONSOLE is not set | ||
827 | CONFIG_DUMMY_CONSOLE=y | ||
828 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 742 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
829 | 743 | ||
830 | # | 744 | # |
831 | # Sound | 745 | # Display device support |
832 | # | 746 | # |
833 | # CONFIG_SOUND is not set | 747 | # CONFIG_DISPLAY_SUPPORT is not set |
834 | 748 | ||
835 | # | 749 | # |
836 | # HID Devices | 750 | # Console display driver support |
837 | # | ||
838 | # CONFIG_HID is not set | ||
839 | |||
840 | # | ||
841 | # USB support | ||
842 | # | 751 | # |
752 | # CONFIG_VGA_CONSOLE is not set | ||
753 | CONFIG_DUMMY_CONSOLE=y | ||
754 | # CONFIG_SOUND is not set | ||
755 | CONFIG_HID_SUPPORT=y | ||
756 | CONFIG_HID=y | ||
757 | # CONFIG_HIDRAW is not set | ||
758 | |||
759 | # | ||
760 | # USB Input Devices | ||
761 | # | ||
762 | CONFIG_USB_HID=y | ||
763 | # CONFIG_HID_PID is not set | ||
764 | # CONFIG_USB_HIDDEV is not set | ||
765 | |||
766 | # | ||
767 | # Special HID drivers | ||
768 | # | ||
769 | # CONFIG_HID_A4TECH is not set | ||
770 | # CONFIG_HID_APPLE is not set | ||
771 | # CONFIG_HID_BELKIN is not set | ||
772 | # CONFIG_HID_CHERRY is not set | ||
773 | # CONFIG_HID_CHICONY is not set | ||
774 | # CONFIG_HID_CYPRESS is not set | ||
775 | # CONFIG_HID_DRAGONRISE is not set | ||
776 | # CONFIG_HID_EZKEY is not set | ||
777 | # CONFIG_HID_KYE is not set | ||
778 | # CONFIG_HID_GYRATION is not set | ||
779 | # CONFIG_HID_TWINHAN is not set | ||
780 | # CONFIG_HID_KENSINGTON is not set | ||
781 | # CONFIG_HID_LOGITECH is not set | ||
782 | # CONFIG_HID_MICROSOFT is not set | ||
783 | # CONFIG_HID_MONTEREY is not set | ||
784 | # CONFIG_HID_NTRIG is not set | ||
785 | # CONFIG_HID_PANTHERLORD is not set | ||
786 | # CONFIG_HID_PETALYNX is not set | ||
787 | # CONFIG_HID_SAMSUNG is not set | ||
788 | # CONFIG_HID_SONY is not set | ||
789 | # CONFIG_HID_SUNPLUS is not set | ||
790 | # CONFIG_HID_GREENASIA is not set | ||
791 | # CONFIG_HID_SMARTJOYPLUS is not set | ||
792 | # CONFIG_HID_TOPSEED is not set | ||
793 | # CONFIG_HID_THRUSTMASTER is not set | ||
794 | # CONFIG_HID_ZEROPLUS is not set | ||
795 | CONFIG_USB_SUPPORT=y | ||
843 | CONFIG_USB_ARCH_HAS_HCD=y | 796 | CONFIG_USB_ARCH_HAS_HCD=y |
844 | CONFIG_USB_ARCH_HAS_OHCI=y | 797 | CONFIG_USB_ARCH_HAS_OHCI=y |
845 | # CONFIG_USB_ARCH_HAS_EHCI is not set | 798 | # CONFIG_USB_ARCH_HAS_EHCI is not set |
846 | # CONFIG_USB is not set | 799 | CONFIG_USB=y |
800 | # CONFIG_USB_DEBUG is not set | ||
801 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
847 | 802 | ||
848 | # | 803 | # |
849 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 804 | # Miscellaneous USB options |
850 | # | 805 | # |
806 | # CONFIG_USB_DEVICEFS is not set | ||
807 | # CONFIG_USB_DEVICE_CLASS is not set | ||
808 | CONFIG_USB_DYNAMIC_MINORS=y | ||
809 | CONFIG_USB_SUSPEND=y | ||
810 | # CONFIG_USB_OTG is not set | ||
811 | # CONFIG_USB_OTG_WHITELIST is not set | ||
812 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
813 | # CONFIG_USB_MON is not set | ||
814 | # CONFIG_USB_WUSB is not set | ||
815 | # CONFIG_USB_WUSB_CBAF is not set | ||
851 | 816 | ||
852 | # | 817 | # |
853 | # USB Gadget Support | 818 | # USB Host Controller Drivers |
854 | # | 819 | # |
855 | # CONFIG_USB_GADGET is not set | 820 | # CONFIG_USB_C67X00_HCD is not set |
821 | # CONFIG_USB_OXU210HP_HCD is not set | ||
822 | # CONFIG_USB_ISP116X_HCD is not set | ||
823 | # CONFIG_USB_ISP1760_HCD is not set | ||
824 | # CONFIG_USB_ISP1362_HCD is not set | ||
825 | CONFIG_USB_OHCI_HCD=y | ||
826 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
827 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
828 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
829 | # CONFIG_USB_SL811_HCD is not set | ||
830 | # CONFIG_USB_R8A66597_HCD is not set | ||
831 | # CONFIG_USB_HWA_HCD is not set | ||
856 | 832 | ||
857 | # | 833 | # |
858 | # MMC/SD Card support | 834 | # USB Device Class drivers |
859 | # | 835 | # |
860 | # CONFIG_MMC is not set | 836 | # CONFIG_USB_ACM is not set |
837 | # CONFIG_USB_PRINTER is not set | ||
838 | # CONFIG_USB_WDM is not set | ||
839 | # CONFIG_USB_TMC is not set | ||
861 | 840 | ||
862 | # | 841 | # |
863 | # LED devices | 842 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
864 | # | 843 | # |
865 | # CONFIG_NEW_LEDS is not set | ||
866 | 844 | ||
867 | # | 845 | # |
868 | # LED drivers | 846 | # also be needed; see USB_STORAGE Help for more info |
869 | # | 847 | # |
848 | # CONFIG_USB_LIBUSUAL is not set | ||
870 | 849 | ||
871 | # | 850 | # |
872 | # LED Triggers | 851 | # USB Imaging devices |
873 | # | 852 | # |
853 | # CONFIG_USB_MDC800 is not set | ||
874 | 854 | ||
875 | # | 855 | # |
876 | # InfiniBand support | 856 | # USB port drivers |
877 | # | 857 | # |
858 | # CONFIG_USB_SERIAL is not set | ||
878 | 859 | ||
879 | # | 860 | # |
880 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 861 | # USB Miscellaneous drivers |
881 | # | 862 | # |
863 | # CONFIG_USB_EMI62 is not set | ||
864 | # CONFIG_USB_EMI26 is not set | ||
865 | # CONFIG_USB_ADUTUX is not set | ||
866 | # CONFIG_USB_SEVSEG is not set | ||
867 | # CONFIG_USB_RIO500 is not set | ||
868 | # CONFIG_USB_LEGOTOWER is not set | ||
869 | # CONFIG_USB_LCD is not set | ||
870 | # CONFIG_USB_BERRY_CHARGE is not set | ||
871 | # CONFIG_USB_LED is not set | ||
872 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
873 | # CONFIG_USB_CYTHERM is not set | ||
874 | # CONFIG_USB_IDMOUSE is not set | ||
875 | # CONFIG_USB_FTDI_ELAN is not set | ||
876 | # CONFIG_USB_APPLEDISPLAY is not set | ||
877 | # CONFIG_USB_LD is not set | ||
878 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
879 | # CONFIG_USB_IOWARRIOR is not set | ||
880 | # CONFIG_USB_TEST is not set | ||
881 | # CONFIG_USB_ISIGHTFW is not set | ||
882 | # CONFIG_USB_VST is not set | ||
883 | # CONFIG_USB_GADGET is not set | ||
882 | 884 | ||
883 | # | 885 | # |
884 | # Real Time Clock | 886 | # OTG and related infrastructure |
885 | # | 887 | # |
886 | # CONFIG_RTC_CLASS is not set | 888 | # CONFIG_USB_GPIO_VBUS is not set |
889 | # CONFIG_NOP_USB_XCEIV is not set | ||
890 | # CONFIG_MMC is not set | ||
891 | # CONFIG_MEMSTICK is not set | ||
892 | # CONFIG_NEW_LEDS is not set | ||
893 | # CONFIG_ACCESSIBILITY is not set | ||
894 | CONFIG_RTC_LIB=y | ||
895 | CONFIG_RTC_CLASS=y | ||
896 | CONFIG_RTC_HCTOSYS=y | ||
897 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
898 | # CONFIG_RTC_DEBUG is not set | ||
887 | 899 | ||
888 | # | 900 | # |
889 | # DMA Engine support | 901 | # RTC interfaces |
890 | # | 902 | # |
891 | # CONFIG_DMA_ENGINE is not set | 903 | CONFIG_RTC_INTF_SYSFS=y |
904 | CONFIG_RTC_INTF_PROC=y | ||
905 | CONFIG_RTC_INTF_DEV=y | ||
906 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
907 | # CONFIG_RTC_DRV_TEST is not set | ||
892 | 908 | ||
893 | # | 909 | # |
894 | # DMA Clients | 910 | # SPI RTC drivers |
895 | # | 911 | # |
896 | 912 | ||
897 | # | 913 | # |
898 | # DMA Devices | 914 | # Platform RTC drivers |
899 | # | 915 | # |
916 | # CONFIG_RTC_DRV_CMOS is not set | ||
917 | # CONFIG_RTC_DRV_DS1286 is not set | ||
918 | # CONFIG_RTC_DRV_DS1511 is not set | ||
919 | # CONFIG_RTC_DRV_DS1553 is not set | ||
920 | # CONFIG_RTC_DRV_DS1742 is not set | ||
921 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
922 | # CONFIG_RTC_DRV_M48T86 is not set | ||
923 | # CONFIG_RTC_DRV_M48T35 is not set | ||
924 | # CONFIG_RTC_DRV_M48T59 is not set | ||
925 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
926 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
927 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
928 | # CONFIG_RTC_DRV_V3020 is not set | ||
900 | 929 | ||
901 | # | 930 | # |
902 | # Auxiliary Display support | 931 | # on-CPU RTC drivers |
903 | # | 932 | # |
933 | CONFIG_RTC_DRV_AU1XXX=y | ||
934 | # CONFIG_DMADEVICES is not set | ||
935 | # CONFIG_AUXDISPLAY is not set | ||
936 | # CONFIG_UIO is not set | ||
904 | 937 | ||
905 | # | 938 | # |
906 | # Virtualization | 939 | # TI VLYNQ |
907 | # | 940 | # |
941 | # CONFIG_STAGING is not set | ||
908 | 942 | ||
909 | # | 943 | # |
910 | # File systems | 944 | # File systems |
911 | # | 945 | # |
912 | CONFIG_EXT2_FS=y | 946 | CONFIG_EXT2_FS=y |
913 | CONFIG_EXT2_FS_XATTR=y | 947 | # CONFIG_EXT2_FS_XATTR is not set |
914 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
915 | # CONFIG_EXT2_FS_SECURITY is not set | ||
916 | # CONFIG_EXT2_FS_XIP is not set | 948 | # CONFIG_EXT2_FS_XIP is not set |
917 | CONFIG_EXT3_FS=y | 949 | CONFIG_EXT3_FS=y |
918 | CONFIG_EXT3_FS_XATTR=y | 950 | # CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set |
919 | CONFIG_EXT3_FS_POSIX_ACL=y | 951 | # CONFIG_EXT3_FS_XATTR is not set |
920 | CONFIG_EXT3_FS_SECURITY=y | 952 | # CONFIG_EXT4_FS is not set |
921 | # CONFIG_EXT4DEV_FS is not set | ||
922 | CONFIG_JBD=y | 953 | CONFIG_JBD=y |
923 | # CONFIG_JBD_DEBUG is not set | 954 | # CONFIG_REISERFS_FS is not set |
924 | CONFIG_FS_MBCACHE=y | ||
925 | CONFIG_REISERFS_FS=m | ||
926 | # CONFIG_REISERFS_CHECK is not set | ||
927 | # CONFIG_REISERFS_PROC_INFO is not set | ||
928 | CONFIG_REISERFS_FS_XATTR=y | ||
929 | CONFIG_REISERFS_FS_POSIX_ACL=y | ||
930 | CONFIG_REISERFS_FS_SECURITY=y | ||
931 | # CONFIG_JFS_FS is not set | 955 | # CONFIG_JFS_FS is not set |
932 | CONFIG_FS_POSIX_ACL=y | 956 | # CONFIG_FS_POSIX_ACL is not set |
933 | # CONFIG_XFS_FS is not set | 957 | # CONFIG_XFS_FS is not set |
934 | # CONFIG_GFS2_FS is not set | ||
935 | # CONFIG_OCFS2_FS is not set | 958 | # CONFIG_OCFS2_FS is not set |
936 | # CONFIG_MINIX_FS is not set | 959 | # CONFIG_BTRFS_FS is not set |
937 | # CONFIG_ROMFS_FS is not set | 960 | # CONFIG_NILFS2_FS is not set |
961 | CONFIG_FILE_LOCKING=y | ||
962 | CONFIG_FSNOTIFY=y | ||
963 | CONFIG_DNOTIFY=y | ||
938 | CONFIG_INOTIFY=y | 964 | CONFIG_INOTIFY=y |
939 | CONFIG_INOTIFY_USER=y | 965 | CONFIG_INOTIFY_USER=y |
940 | # CONFIG_QUOTA is not set | 966 | # CONFIG_QUOTA is not set |
941 | CONFIG_DNOTIFY=y | 967 | # CONFIG_AUTOFS_FS is not set |
942 | CONFIG_AUTOFS_FS=m | 968 | # CONFIG_AUTOFS4_FS is not set |
943 | CONFIG_AUTOFS4_FS=m | 969 | # CONFIG_FUSE_FS is not set |
944 | CONFIG_FUSE_FS=m | 970 | |
945 | CONFIG_GENERIC_ACL=y | 971 | # |
972 | # Caches | ||
973 | # | ||
974 | # CONFIG_FSCACHE is not set | ||
946 | 975 | ||
947 | # | 976 | # |
948 | # CD-ROM/DVD Filesystems | 977 | # CD-ROM/DVD Filesystems |
@@ -961,74 +990,65 @@ CONFIG_GENERIC_ACL=y | |||
961 | # Pseudo filesystems | 990 | # Pseudo filesystems |
962 | # | 991 | # |
963 | CONFIG_PROC_FS=y | 992 | CONFIG_PROC_FS=y |
964 | CONFIG_PROC_KCORE=y | 993 | # CONFIG_PROC_KCORE is not set |
965 | CONFIG_PROC_SYSCTL=y | 994 | CONFIG_PROC_SYSCTL=y |
995 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
966 | CONFIG_SYSFS=y | 996 | CONFIG_SYSFS=y |
967 | CONFIG_TMPFS=y | 997 | CONFIG_TMPFS=y |
968 | CONFIG_TMPFS_POSIX_ACL=y | 998 | # CONFIG_TMPFS_POSIX_ACL is not set |
969 | # CONFIG_HUGETLB_PAGE is not set | 999 | # CONFIG_HUGETLB_PAGE is not set |
970 | CONFIG_RAMFS=y | 1000 | # CONFIG_CONFIGFS_FS is not set |
971 | CONFIG_CONFIGFS_FS=m | 1001 | CONFIG_MISC_FILESYSTEMS=y |
972 | |||
973 | # | ||
974 | # Miscellaneous filesystems | ||
975 | # | ||
976 | # CONFIG_ADFS_FS is not set | 1002 | # CONFIG_ADFS_FS is not set |
977 | # CONFIG_AFFS_FS is not set | 1003 | # CONFIG_AFFS_FS is not set |
978 | # CONFIG_ECRYPT_FS is not set | ||
979 | # CONFIG_HFS_FS is not set | 1004 | # CONFIG_HFS_FS is not set |
980 | # CONFIG_HFSPLUS_FS is not set | 1005 | # CONFIG_HFSPLUS_FS is not set |
981 | # CONFIG_BEFS_FS is not set | 1006 | # CONFIG_BEFS_FS is not set |
982 | # CONFIG_BFS_FS is not set | 1007 | # CONFIG_BFS_FS is not set |
983 | # CONFIG_EFS_FS is not set | 1008 | # CONFIG_EFS_FS is not set |
984 | # CONFIG_JFFS2_FS is not set | 1009 | # CONFIG_JFFS2_FS is not set |
985 | CONFIG_CRAMFS=m | 1010 | CONFIG_CRAMFS=y |
1011 | CONFIG_SQUASHFS=y | ||
1012 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1013 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
986 | # CONFIG_VXFS_FS is not set | 1014 | # CONFIG_VXFS_FS is not set |
1015 | # CONFIG_MINIX_FS is not set | ||
1016 | # CONFIG_OMFS_FS is not set | ||
987 | # CONFIG_HPFS_FS is not set | 1017 | # CONFIG_HPFS_FS is not set |
988 | # CONFIG_QNX4FS_FS is not set | 1018 | # CONFIG_QNX4FS_FS is not set |
1019 | # CONFIG_ROMFS_FS is not set | ||
989 | # CONFIG_SYSV_FS is not set | 1020 | # CONFIG_SYSV_FS is not set |
990 | # CONFIG_UFS_FS is not set | 1021 | # CONFIG_UFS_FS is not set |
991 | 1022 | CONFIG_NETWORK_FILESYSTEMS=y | |
992 | # | ||
993 | # Network File Systems | ||
994 | # | ||
995 | CONFIG_NFS_FS=y | 1023 | CONFIG_NFS_FS=y |
996 | # CONFIG_NFS_V3 is not set | 1024 | CONFIG_NFS_V3=y |
1025 | # CONFIG_NFS_V3_ACL is not set | ||
997 | # CONFIG_NFS_V4 is not set | 1026 | # CONFIG_NFS_V4 is not set |
998 | # CONFIG_NFS_DIRECTIO is not set | ||
999 | CONFIG_NFSD=m | ||
1000 | # CONFIG_NFSD_V3 is not set | ||
1001 | # CONFIG_NFSD_TCP is not set | ||
1002 | CONFIG_ROOT_NFS=y | 1027 | CONFIG_ROOT_NFS=y |
1028 | # CONFIG_NFSD is not set | ||
1003 | CONFIG_LOCKD=y | 1029 | CONFIG_LOCKD=y |
1004 | CONFIG_EXPORTFS=m | 1030 | CONFIG_LOCKD_V4=y |
1005 | CONFIG_NFS_COMMON=y | 1031 | CONFIG_NFS_COMMON=y |
1006 | CONFIG_SUNRPC=y | 1032 | CONFIG_SUNRPC=y |
1007 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1033 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1008 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1034 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1009 | CONFIG_SMB_FS=m | 1035 | # CONFIG_SMB_FS is not set |
1010 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1011 | # CONFIG_CIFS is not set | 1036 | # CONFIG_CIFS is not set |
1012 | # CONFIG_NCP_FS is not set | 1037 | # CONFIG_NCP_FS is not set |
1013 | # CONFIG_CODA_FS is not set | 1038 | # CONFIG_CODA_FS is not set |
1014 | # CONFIG_AFS_FS is not set | 1039 | # CONFIG_AFS_FS is not set |
1015 | # CONFIG_9P_FS is not set | ||
1016 | 1040 | ||
1017 | # | 1041 | # |
1018 | # Partition Types | 1042 | # Partition Types |
1019 | # | 1043 | # |
1020 | # CONFIG_PARTITION_ADVANCED is not set | 1044 | # CONFIG_PARTITION_ADVANCED is not set |
1021 | CONFIG_MSDOS_PARTITION=y | 1045 | CONFIG_MSDOS_PARTITION=y |
1022 | 1046 | CONFIG_NLS=y | |
1023 | # | ||
1024 | # Native Language Support | ||
1025 | # | ||
1026 | CONFIG_NLS=m | ||
1027 | CONFIG_NLS_DEFAULT="iso8859-1" | 1047 | CONFIG_NLS_DEFAULT="iso8859-1" |
1028 | # CONFIG_NLS_CODEPAGE_437 is not set | 1048 | CONFIG_NLS_CODEPAGE_437=y |
1029 | # CONFIG_NLS_CODEPAGE_737 is not set | 1049 | # CONFIG_NLS_CODEPAGE_737 is not set |
1030 | # CONFIG_NLS_CODEPAGE_775 is not set | 1050 | # CONFIG_NLS_CODEPAGE_775 is not set |
1031 | # CONFIG_NLS_CODEPAGE_850 is not set | 1051 | CONFIG_NLS_CODEPAGE_850=y |
1032 | # CONFIG_NLS_CODEPAGE_852 is not set | 1052 | # CONFIG_NLS_CODEPAGE_852 is not set |
1033 | # CONFIG_NLS_CODEPAGE_855 is not set | 1053 | # CONFIG_NLS_CODEPAGE_855 is not set |
1034 | # CONFIG_NLS_CODEPAGE_857 is not set | 1054 | # CONFIG_NLS_CODEPAGE_857 is not set |
@@ -1046,10 +1066,10 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1046 | # CONFIG_NLS_CODEPAGE_949 is not set | 1066 | # CONFIG_NLS_CODEPAGE_949 is not set |
1047 | # CONFIG_NLS_CODEPAGE_874 is not set | 1067 | # CONFIG_NLS_CODEPAGE_874 is not set |
1048 | # CONFIG_NLS_ISO8859_8 is not set | 1068 | # CONFIG_NLS_ISO8859_8 is not set |
1049 | # CONFIG_NLS_CODEPAGE_1250 is not set | 1069 | CONFIG_NLS_CODEPAGE_1250=y |
1050 | # CONFIG_NLS_CODEPAGE_1251 is not set | 1070 | # CONFIG_NLS_CODEPAGE_1251 is not set |
1051 | # CONFIG_NLS_ASCII is not set | 1071 | # CONFIG_NLS_ASCII is not set |
1052 | # CONFIG_NLS_ISO8859_1 is not set | 1072 | CONFIG_NLS_ISO8859_1=y |
1053 | # CONFIG_NLS_ISO8859_2 is not set | 1073 | # CONFIG_NLS_ISO8859_2 is not set |
1054 | # CONFIG_NLS_ISO8859_3 is not set | 1074 | # CONFIG_NLS_ISO8859_3 is not set |
1055 | # CONFIG_NLS_ISO8859_4 is not set | 1075 | # CONFIG_NLS_ISO8859_4 is not set |
@@ -1059,38 +1079,75 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1059 | # CONFIG_NLS_ISO8859_9 is not set | 1079 | # CONFIG_NLS_ISO8859_9 is not set |
1060 | # CONFIG_NLS_ISO8859_13 is not set | 1080 | # CONFIG_NLS_ISO8859_13 is not set |
1061 | # CONFIG_NLS_ISO8859_14 is not set | 1081 | # CONFIG_NLS_ISO8859_14 is not set |
1062 | # CONFIG_NLS_ISO8859_15 is not set | 1082 | CONFIG_NLS_ISO8859_15=y |
1063 | # CONFIG_NLS_KOI8_R is not set | 1083 | # CONFIG_NLS_KOI8_R is not set |
1064 | # CONFIG_NLS_KOI8_U is not set | 1084 | # CONFIG_NLS_KOI8_U is not set |
1065 | # CONFIG_NLS_UTF8 is not set | 1085 | CONFIG_NLS_UTF8=y |
1066 | 1086 | # CONFIG_DLM is not set | |
1067 | # | ||
1068 | # Distributed Lock Manager | ||
1069 | # | ||
1070 | CONFIG_DLM=m | ||
1071 | CONFIG_DLM_TCP=y | ||
1072 | # CONFIG_DLM_SCTP is not set | ||
1073 | # CONFIG_DLM_DEBUG is not set | ||
1074 | |||
1075 | # | ||
1076 | # Profiling support | ||
1077 | # | ||
1078 | # CONFIG_PROFILING is not set | ||
1079 | 1087 | ||
1080 | # | 1088 | # |
1081 | # Kernel hacking | 1089 | # Kernel hacking |
1082 | # | 1090 | # |
1083 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1091 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1084 | # CONFIG_PRINTK_TIME is not set | 1092 | # CONFIG_PRINTK_TIME is not set |
1085 | CONFIG_ENABLE_MUST_CHECK=y | 1093 | # CONFIG_ENABLE_WARN_DEPRECATED is not set |
1094 | # CONFIG_ENABLE_MUST_CHECK is not set | ||
1095 | CONFIG_FRAME_WARN=1024 | ||
1086 | # CONFIG_MAGIC_SYSRQ is not set | 1096 | # CONFIG_MAGIC_SYSRQ is not set |
1097 | CONFIG_STRIP_ASM_SYMS=y | ||
1087 | # CONFIG_UNUSED_SYMBOLS is not set | 1098 | # CONFIG_UNUSED_SYMBOLS is not set |
1088 | # CONFIG_DEBUG_FS is not set | 1099 | # CONFIG_DEBUG_FS is not set |
1089 | # CONFIG_HEADERS_CHECK is not set | 1100 | # CONFIG_HEADERS_CHECK is not set |
1090 | # CONFIG_DEBUG_KERNEL is not set | 1101 | CONFIG_DEBUG_KERNEL=y |
1091 | CONFIG_LOG_BUF_SHIFT=14 | 1102 | # CONFIG_DEBUG_SHIRQ is not set |
1092 | CONFIG_CROSSCOMPILE=y | 1103 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1093 | CONFIG_CMDLINE="" | 1104 | # CONFIG_DETECT_HUNG_TASK is not set |
1105 | # CONFIG_SCHED_DEBUG is not set | ||
1106 | # CONFIG_SCHEDSTATS is not set | ||
1107 | # CONFIG_TIMER_STATS is not set | ||
1108 | # CONFIG_DEBUG_OBJECTS is not set | ||
1109 | # CONFIG_DEBUG_SLAB is not set | ||
1110 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1111 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1112 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1113 | # CONFIG_DEBUG_MUTEXES is not set | ||
1114 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1115 | # CONFIG_PROVE_LOCKING is not set | ||
1116 | # CONFIG_LOCK_STAT is not set | ||
1117 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1118 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1119 | # CONFIG_DEBUG_KOBJECT is not set | ||
1120 | # CONFIG_DEBUG_INFO is not set | ||
1121 | # CONFIG_DEBUG_VM is not set | ||
1122 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1123 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1124 | # CONFIG_DEBUG_LIST is not set | ||
1125 | # CONFIG_DEBUG_SG is not set | ||
1126 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1127 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1128 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1129 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1130 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1131 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1132 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1133 | # CONFIG_FAULT_INJECTION is not set | ||
1134 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1135 | # CONFIG_PAGE_POISONING is not set | ||
1136 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1137 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1138 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1139 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1140 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1141 | CONFIG_TRACING_SUPPORT=y | ||
1142 | # CONFIG_FTRACE is not set | ||
1143 | # CONFIG_SAMPLES is not set | ||
1144 | CONFIG_HAVE_ARCH_KGDB=y | ||
1145 | # CONFIG_KGDB is not set | ||
1146 | CONFIG_EARLY_PRINTK=y | ||
1147 | # CONFIG_CMDLINE_BOOL is not set | ||
1148 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1149 | # CONFIG_RUNTIME_DEBUG is not set | ||
1150 | CONFIG_DEBUG_ZBOOT=y | ||
1094 | 1151 | ||
1095 | # | 1152 | # |
1096 | # Security options | 1153 | # Security options |
@@ -1098,67 +1155,29 @@ CONFIG_CMDLINE="" | |||
1098 | CONFIG_KEYS=y | 1155 | CONFIG_KEYS=y |
1099 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1156 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1100 | # CONFIG_SECURITY is not set | 1157 | # CONFIG_SECURITY is not set |
1101 | 1158 | # CONFIG_SECURITYFS is not set | |
1102 | # | 1159 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1103 | # Cryptographic options | 1160 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1104 | # | 1161 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1105 | CONFIG_CRYPTO=y | 1162 | CONFIG_DEFAULT_SECURITY_DAC=y |
1106 | CONFIG_CRYPTO_ALGAPI=y | 1163 | CONFIG_DEFAULT_SECURITY="" |
1107 | CONFIG_CRYPTO_BLKCIPHER=m | 1164 | # CONFIG_CRYPTO is not set |
1108 | CONFIG_CRYPTO_HASH=y | 1165 | # CONFIG_BINARY_PRINTF is not set |
1109 | CONFIG_CRYPTO_MANAGER=y | ||
1110 | CONFIG_CRYPTO_HMAC=y | ||
1111 | CONFIG_CRYPTO_XCBC=m | ||
1112 | CONFIG_CRYPTO_NULL=m | ||
1113 | CONFIG_CRYPTO_MD4=m | ||
1114 | CONFIG_CRYPTO_MD5=y | ||
1115 | CONFIG_CRYPTO_SHA1=m | ||
1116 | CONFIG_CRYPTO_SHA256=m | ||
1117 | CONFIG_CRYPTO_SHA512=m | ||
1118 | CONFIG_CRYPTO_WP512=m | ||
1119 | CONFIG_CRYPTO_TGR192=m | ||
1120 | CONFIG_CRYPTO_GF128MUL=m | ||
1121 | CONFIG_CRYPTO_ECB=m | ||
1122 | CONFIG_CRYPTO_CBC=m | ||
1123 | CONFIG_CRYPTO_PCBC=m | ||
1124 | CONFIG_CRYPTO_LRW=m | ||
1125 | CONFIG_CRYPTO_DES=m | ||
1126 | CONFIG_CRYPTO_FCRYPT=m | ||
1127 | CONFIG_CRYPTO_BLOWFISH=m | ||
1128 | CONFIG_CRYPTO_TWOFISH=m | ||
1129 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1130 | CONFIG_CRYPTO_SERPENT=m | ||
1131 | CONFIG_CRYPTO_AES=m | ||
1132 | CONFIG_CRYPTO_CAST5=m | ||
1133 | CONFIG_CRYPTO_CAST6=m | ||
1134 | CONFIG_CRYPTO_TEA=m | ||
1135 | CONFIG_CRYPTO_ARC4=m | ||
1136 | CONFIG_CRYPTO_KHAZAD=m | ||
1137 | CONFIG_CRYPTO_ANUBIS=m | ||
1138 | CONFIG_CRYPTO_DEFLATE=m | ||
1139 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1140 | CONFIG_CRYPTO_CRC32C=m | ||
1141 | CONFIG_CRYPTO_CAMELLIA=m | ||
1142 | # CONFIG_CRYPTO_TEST is not set | ||
1143 | |||
1144 | # | ||
1145 | # Hardware crypto devices | ||
1146 | # | ||
1147 | 1166 | ||
1148 | # | 1167 | # |
1149 | # Library routines | 1168 | # Library routines |
1150 | # | 1169 | # |
1151 | CONFIG_BITREVERSE=y | 1170 | CONFIG_BITREVERSE=y |
1152 | CONFIG_CRC_CCITT=m | 1171 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1153 | CONFIG_CRC16=m | 1172 | # CONFIG_CRC_CCITT is not set |
1173 | # CONFIG_CRC16 is not set | ||
1174 | # CONFIG_CRC_T10DIF is not set | ||
1175 | # CONFIG_CRC_ITU_T is not set | ||
1154 | CONFIG_CRC32=y | 1176 | CONFIG_CRC32=y |
1155 | CONFIG_LIBCRC32C=m | 1177 | # CONFIG_CRC7 is not set |
1156 | CONFIG_ZLIB_INFLATE=m | 1178 | # CONFIG_LIBCRC32C is not set |
1157 | CONFIG_ZLIB_DEFLATE=m | 1179 | CONFIG_ZLIB_INFLATE=y |
1158 | CONFIG_TEXTSEARCH=y | ||
1159 | CONFIG_TEXTSEARCH_KMP=m | ||
1160 | CONFIG_TEXTSEARCH_BM=m | ||
1161 | CONFIG_TEXTSEARCH_FSM=m | ||
1162 | CONFIG_PLIST=y | ||
1163 | CONFIG_HAS_IOMEM=y | 1180 | CONFIG_HAS_IOMEM=y |
1164 | CONFIG_HAS_IOPORT=y | 1181 | CONFIG_HAS_IOPORT=y |
1182 | CONFIG_HAS_DMA=y | ||
1183 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/db1100_defconfig b/arch/mips/configs/db1100_defconfig index fa6814475898..abb9a5805adc 100644 --- a/arch/mips/configs/db1100_defconfig +++ b/arch/mips/configs/db1100_defconfig | |||
@@ -1,79 +1,102 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:24 2007 | 4 | # Fri Feb 26 08:50:15 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_PB1100 is not set | ||
17 | # CONFIG_MIPS_PB1500 is not set | ||
18 | # CONFIG_MIPS_PB1550 is not set | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | # CONFIG_MIPS_DB1000 is not set | ||
21 | CONFIG_MIPS_DB1100=y | ||
22 | # CONFIG_MIPS_DB1500 is not set | ||
23 | # CONFIG_MIPS_DB1550 is not set | ||
24 | # CONFIG_MIPS_DB1200 is not set | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | CONFIG_MIPS_DB1100=y | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1100=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_NONCOHERENT=y | 83 | CONFIG_DMA_NONCOHERENT=y |
65 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
86 | # CONFIG_NO_IOPORT is not set | ||
87 | CONFIG_GENERIC_GPIO=y | ||
66 | # CONFIG_CPU_BIG_ENDIAN is not set | 88 | # CONFIG_CPU_BIG_ENDIAN is not set |
67 | CONFIG_CPU_LITTLE_ENDIAN=y | 89 | CONFIG_CPU_LITTLE_ENDIAN=y |
68 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 90 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
69 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 91 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
70 | CONFIG_SOC_AU1100=y | 92 | CONFIG_IRQ_CPU=y |
71 | CONFIG_SOC_AU1X00=y | ||
72 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 93 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
73 | 94 | ||
74 | # | 95 | # |
75 | # CPU selection | 96 | # CPU selection |
76 | # | 97 | # |
98 | # CONFIG_CPU_LOONGSON2E is not set | ||
99 | # CONFIG_CPU_LOONGSON2F is not set | ||
77 | CONFIG_CPU_MIPS32_R1=y | 100 | CONFIG_CPU_MIPS32_R1=y |
78 | # CONFIG_CPU_MIPS32_R2 is not set | 101 | # CONFIG_CPU_MIPS32_R2 is not set |
79 | # CONFIG_CPU_MIPS64_R1 is not set | 102 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -86,6 +109,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
86 | # CONFIG_CPU_TX49XX is not set | 109 | # CONFIG_CPU_TX49XX is not set |
87 | # CONFIG_CPU_R5000 is not set | 110 | # CONFIG_CPU_R5000 is not set |
88 | # CONFIG_CPU_R5432 is not set | 111 | # CONFIG_CPU_R5432 is not set |
112 | # CONFIG_CPU_R5500 is not set | ||
89 | # CONFIG_CPU_R6000 is not set | 113 | # CONFIG_CPU_R6000 is not set |
90 | # CONFIG_CPU_NEVADA is not set | 114 | # CONFIG_CPU_NEVADA is not set |
91 | # CONFIG_CPU_R8000 is not set | 115 | # CONFIG_CPU_R8000 is not set |
@@ -93,11 +117,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
93 | # CONFIG_CPU_RM7000 is not set | 117 | # CONFIG_CPU_RM7000 is not set |
94 | # CONFIG_CPU_RM9000 is not set | 118 | # CONFIG_CPU_RM9000 is not set |
95 | # CONFIG_CPU_SB1 is not set | 119 | # CONFIG_CPU_SB1 is not set |
120 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
121 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
96 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 122 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
97 | CONFIG_CPU_MIPS32=y | 123 | CONFIG_CPU_MIPS32=y |
98 | CONFIG_CPU_MIPSR1=y | 124 | CONFIG_CPU_MIPSR1=y |
99 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 125 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
100 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 126 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
127 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
101 | 128 | ||
102 | # | 129 | # |
103 | # Kernel type | 130 | # Kernel type |
@@ -107,173 +134,242 @@ CONFIG_32BIT=y | |||
107 | CONFIG_PAGE_SIZE_4KB=y | 134 | CONFIG_PAGE_SIZE_4KB=y |
108 | # CONFIG_PAGE_SIZE_8KB is not set | 135 | # CONFIG_PAGE_SIZE_8KB is not set |
109 | # CONFIG_PAGE_SIZE_16KB is not set | 136 | # CONFIG_PAGE_SIZE_16KB is not set |
137 | # CONFIG_PAGE_SIZE_32KB is not set | ||
110 | # CONFIG_PAGE_SIZE_64KB is not set | 138 | # CONFIG_PAGE_SIZE_64KB is not set |
111 | CONFIG_CPU_HAS_PREFETCH=y | 139 | CONFIG_CPU_HAS_PREFETCH=y |
112 | CONFIG_MIPS_MT_DISABLED=y | 140 | CONFIG_MIPS_MT_DISABLED=y |
113 | # CONFIG_MIPS_MT_SMP is not set | 141 | # CONFIG_MIPS_MT_SMP is not set |
114 | # CONFIG_MIPS_MT_SMTC is not set | 142 | # CONFIG_MIPS_MT_SMTC is not set |
115 | # CONFIG_MIPS_VPE_LOADER is not set | ||
116 | CONFIG_64BIT_PHYS_ADDR=y | 143 | CONFIG_64BIT_PHYS_ADDR=y |
144 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
117 | CONFIG_CPU_HAS_SYNC=y | 145 | CONFIG_CPU_HAS_SYNC=y |
118 | CONFIG_GENERIC_HARDIRQS=y | 146 | CONFIG_GENERIC_HARDIRQS=y |
119 | CONFIG_GENERIC_IRQ_PROBE=y | 147 | CONFIG_GENERIC_IRQ_PROBE=y |
120 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 148 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
121 | CONFIG_ARCH_FLATMEM_ENABLE=y | 149 | CONFIG_ARCH_FLATMEM_ENABLE=y |
150 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
122 | CONFIG_SELECT_MEMORY_MODEL=y | 151 | CONFIG_SELECT_MEMORY_MODEL=y |
123 | CONFIG_FLATMEM_MANUAL=y | 152 | CONFIG_FLATMEM_MANUAL=y |
124 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 153 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
125 | # CONFIG_SPARSEMEM_MANUAL is not set | 154 | # CONFIG_SPARSEMEM_MANUAL is not set |
126 | CONFIG_FLATMEM=y | 155 | CONFIG_FLATMEM=y |
127 | CONFIG_FLAT_NODE_MEM_MAP=y | 156 | CONFIG_FLAT_NODE_MEM_MAP=y |
128 | # CONFIG_SPARSEMEM_STATIC is not set | 157 | CONFIG_PAGEFLAGS_EXTENDED=y |
129 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 158 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
130 | # CONFIG_RESOURCES_64BIT is not set | 159 | CONFIG_PHYS_ADDR_T_64BIT=y |
131 | CONFIG_ZONE_DMA_FLAG=1 | 160 | CONFIG_ZONE_DMA_FLAG=0 |
161 | CONFIG_VIRT_TO_BUS=y | ||
162 | # CONFIG_KSM is not set | ||
163 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
164 | CONFIG_TICK_ONESHOT=y | ||
165 | CONFIG_NO_HZ=y | ||
166 | CONFIG_HIGH_RES_TIMERS=y | ||
167 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
132 | # CONFIG_HZ_48 is not set | 168 | # CONFIG_HZ_48 is not set |
133 | # CONFIG_HZ_100 is not set | 169 | CONFIG_HZ_100=y |
134 | # CONFIG_HZ_128 is not set | 170 | # CONFIG_HZ_128 is not set |
135 | # CONFIG_HZ_250 is not set | 171 | # CONFIG_HZ_250 is not set |
136 | # CONFIG_HZ_256 is not set | 172 | # CONFIG_HZ_256 is not set |
137 | CONFIG_HZ_1000=y | 173 | # CONFIG_HZ_1000 is not set |
138 | # CONFIG_HZ_1024 is not set | 174 | # CONFIG_HZ_1024 is not set |
139 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 175 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
140 | CONFIG_HZ=1000 | 176 | CONFIG_HZ=100 |
141 | CONFIG_PREEMPT_NONE=y | 177 | CONFIG_PREEMPT_NONE=y |
142 | # CONFIG_PREEMPT_VOLUNTARY is not set | 178 | # CONFIG_PREEMPT_VOLUNTARY is not set |
143 | # CONFIG_PREEMPT is not set | 179 | # CONFIG_PREEMPT is not set |
144 | # CONFIG_KEXEC is not set | 180 | # CONFIG_KEXEC is not set |
181 | # CONFIG_SECCOMP is not set | ||
145 | CONFIG_LOCKDEP_SUPPORT=y | 182 | CONFIG_LOCKDEP_SUPPORT=y |
146 | CONFIG_STACKTRACE_SUPPORT=y | 183 | CONFIG_STACKTRACE_SUPPORT=y |
147 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 184 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
185 | CONFIG_CONSTRUCTORS=y | ||
148 | 186 | ||
149 | # | 187 | # |
150 | # Code maturity level options | 188 | # General setup |
151 | # | 189 | # |
152 | CONFIG_EXPERIMENTAL=y | 190 | CONFIG_EXPERIMENTAL=y |
153 | CONFIG_BROKEN_ON_SMP=y | 191 | CONFIG_BROKEN_ON_SMP=y |
154 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 192 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
155 | 193 | CONFIG_LOCALVERSION="-db1100" | |
156 | # | ||
157 | # General setup | ||
158 | # | ||
159 | CONFIG_LOCALVERSION="" | ||
160 | CONFIG_LOCALVERSION_AUTO=y | 194 | CONFIG_LOCALVERSION_AUTO=y |
195 | CONFIG_HAVE_KERNEL_GZIP=y | ||
196 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
197 | CONFIG_HAVE_KERNEL_LZMA=y | ||
198 | CONFIG_HAVE_KERNEL_LZO=y | ||
199 | # CONFIG_KERNEL_GZIP is not set | ||
200 | # CONFIG_KERNEL_BZIP2 is not set | ||
201 | CONFIG_KERNEL_LZMA=y | ||
202 | # CONFIG_KERNEL_LZO is not set | ||
161 | CONFIG_SWAP=y | 203 | CONFIG_SWAP=y |
162 | CONFIG_SYSVIPC=y | 204 | CONFIG_SYSVIPC=y |
163 | # CONFIG_IPC_NS is not set | ||
164 | CONFIG_SYSVIPC_SYSCTL=y | 205 | CONFIG_SYSVIPC_SYSCTL=y |
165 | # CONFIG_POSIX_MQUEUE is not set | 206 | CONFIG_POSIX_MQUEUE=y |
207 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
166 | # CONFIG_BSD_PROCESS_ACCT is not set | 208 | # CONFIG_BSD_PROCESS_ACCT is not set |
167 | # CONFIG_TASKSTATS is not set | 209 | # CONFIG_TASKSTATS is not set |
168 | # CONFIG_UTS_NS is not set | ||
169 | # CONFIG_AUDIT is not set | 210 | # CONFIG_AUDIT is not set |
211 | |||
212 | # | ||
213 | # RCU Subsystem | ||
214 | # | ||
215 | # CONFIG_TREE_RCU is not set | ||
216 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
217 | CONFIG_TINY_RCU=y | ||
218 | # CONFIG_TREE_RCU_TRACE is not set | ||
170 | # CONFIG_IKCONFIG is not set | 219 | # CONFIG_IKCONFIG is not set |
171 | CONFIG_SYSFS_DEPRECATED=y | 220 | CONFIG_LOG_BUF_SHIFT=14 |
172 | CONFIG_RELAY=y | 221 | # CONFIG_GROUP_SCHED is not set |
173 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 222 | # CONFIG_CGROUPS is not set |
223 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
224 | # CONFIG_RELAY is not set | ||
225 | # CONFIG_NAMESPACES is not set | ||
226 | # CONFIG_BLK_DEV_INITRD is not set | ||
227 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
174 | CONFIG_SYSCTL=y | 228 | CONFIG_SYSCTL=y |
229 | CONFIG_ANON_INODES=y | ||
175 | CONFIG_EMBEDDED=y | 230 | CONFIG_EMBEDDED=y |
176 | CONFIG_SYSCTL_SYSCALL=y | 231 | # CONFIG_SYSCTL_SYSCALL is not set |
177 | CONFIG_KALLSYMS=y | 232 | # CONFIG_KALLSYMS is not set |
178 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
179 | CONFIG_HOTPLUG=y | 233 | CONFIG_HOTPLUG=y |
180 | CONFIG_PRINTK=y | 234 | CONFIG_PRINTK=y |
181 | CONFIG_BUG=y | 235 | CONFIG_BUG=y |
182 | CONFIG_ELF_CORE=y | 236 | CONFIG_ELF_CORE=y |
237 | # CONFIG_PCSPKR_PLATFORM is not set | ||
183 | CONFIG_BASE_FULL=y | 238 | CONFIG_BASE_FULL=y |
184 | CONFIG_FUTEX=y | 239 | CONFIG_FUTEX=y |
185 | CONFIG_EPOLL=y | 240 | CONFIG_EPOLL=y |
241 | CONFIG_SIGNALFD=y | ||
242 | CONFIG_TIMERFD=y | ||
243 | CONFIG_EVENTFD=y | ||
186 | CONFIG_SHMEM=y | 244 | CONFIG_SHMEM=y |
187 | CONFIG_SLAB=y | 245 | CONFIG_AIO=y |
246 | |||
247 | # | ||
248 | # Kernel Performance Events And Counters | ||
249 | # | ||
188 | CONFIG_VM_EVENT_COUNTERS=y | 250 | CONFIG_VM_EVENT_COUNTERS=y |
189 | CONFIG_RT_MUTEXES=y | 251 | # CONFIG_COMPAT_BRK is not set |
190 | # CONFIG_TINY_SHMEM is not set | 252 | CONFIG_SLAB=y |
191 | CONFIG_BASE_SMALL=0 | 253 | # CONFIG_SLUB is not set |
192 | # CONFIG_SLOB is not set | 254 | # CONFIG_SLOB is not set |
255 | # CONFIG_PROFILING is not set | ||
256 | CONFIG_HAVE_OPROFILE=y | ||
193 | 257 | ||
194 | # | 258 | # |
195 | # Loadable module support | 259 | # GCOV-based kernel profiling |
196 | # | 260 | # |
261 | # CONFIG_SLOW_WORK is not set | ||
262 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
263 | CONFIG_SLABINFO=y | ||
264 | CONFIG_RT_MUTEXES=y | ||
265 | CONFIG_BASE_SMALL=0 | ||
197 | CONFIG_MODULES=y | 266 | CONFIG_MODULES=y |
267 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
198 | CONFIG_MODULE_UNLOAD=y | 268 | CONFIG_MODULE_UNLOAD=y |
199 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 269 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
200 | CONFIG_MODVERSIONS=y | 270 | # CONFIG_MODVERSIONS is not set |
201 | CONFIG_MODULE_SRCVERSION_ALL=y | 271 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
202 | CONFIG_KMOD=y | ||
203 | |||
204 | # | ||
205 | # Block layer | ||
206 | # | ||
207 | CONFIG_BLOCK=y | 272 | CONFIG_BLOCK=y |
208 | # CONFIG_LBD is not set | 273 | # CONFIG_LBDAF is not set |
209 | # CONFIG_BLK_DEV_IO_TRACE is not set | 274 | # CONFIG_BLK_DEV_BSG is not set |
210 | # CONFIG_LSF is not set | 275 | # CONFIG_BLK_DEV_INTEGRITY is not set |
211 | 276 | ||
212 | # | 277 | # |
213 | # IO Schedulers | 278 | # IO Schedulers |
214 | # | 279 | # |
215 | CONFIG_IOSCHED_NOOP=y | 280 | CONFIG_IOSCHED_NOOP=y |
216 | CONFIG_IOSCHED_AS=y | 281 | # CONFIG_IOSCHED_DEADLINE is not set |
217 | CONFIG_IOSCHED_DEADLINE=y | 282 | # CONFIG_IOSCHED_CFQ is not set |
218 | CONFIG_IOSCHED_CFQ=y | ||
219 | CONFIG_DEFAULT_AS=y | ||
220 | # CONFIG_DEFAULT_DEADLINE is not set | 283 | # CONFIG_DEFAULT_DEADLINE is not set |
221 | # CONFIG_DEFAULT_CFQ is not set | 284 | # CONFIG_DEFAULT_CFQ is not set |
222 | # CONFIG_DEFAULT_NOOP is not set | 285 | CONFIG_DEFAULT_NOOP=y |
223 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 286 | CONFIG_DEFAULT_IOSCHED="noop" |
287 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
288 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
289 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
290 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
293 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
294 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
295 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
296 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
297 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
298 | # CONFIG_INLINE_READ_LOCK is not set | ||
299 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
300 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
302 | CONFIG_INLINE_READ_UNLOCK=y | ||
303 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
304 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
305 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
306 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
307 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
308 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
311 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
312 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
313 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
314 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
315 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
316 | CONFIG_FREEZER=y | ||
224 | 317 | ||
225 | # | 318 | # |
226 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 319 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
227 | # | 320 | # |
321 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
228 | CONFIG_MMU=y | 322 | CONFIG_MMU=y |
323 | CONFIG_PCCARD=y | ||
324 | CONFIG_PCMCIA=y | ||
325 | CONFIG_PCMCIA_LOAD_CIS=y | ||
326 | # CONFIG_PCMCIA_IOCTL is not set | ||
229 | 327 | ||
230 | # | 328 | # |
231 | # PCCARD (PCMCIA/CardBus) support | 329 | # PC-card bridges |
232 | # | ||
233 | # CONFIG_PCCARD is not set | ||
234 | |||
235 | # | ||
236 | # PCI Hotplug Support | ||
237 | # | 330 | # |
331 | # CONFIG_PCMCIA_AU1X00 is not set | ||
332 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y | ||
238 | 333 | ||
239 | # | 334 | # |
240 | # Executable file formats | 335 | # Executable file formats |
241 | # | 336 | # |
242 | CONFIG_BINFMT_ELF=y | 337 | CONFIG_BINFMT_ELF=y |
338 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
339 | # CONFIG_HAVE_AOUT is not set | ||
243 | # CONFIG_BINFMT_MISC is not set | 340 | # CONFIG_BINFMT_MISC is not set |
244 | CONFIG_TRAD_SIGNALS=y | 341 | CONFIG_TRAD_SIGNALS=y |
245 | 342 | ||
246 | # | 343 | # |
247 | # Power management options | 344 | # Power management options |
248 | # | 345 | # |
249 | # CONFIG_PM is not set | 346 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y |
250 | 347 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | |
251 | # | 348 | CONFIG_PM=y |
252 | # Networking | 349 | # CONFIG_PM_DEBUG is not set |
253 | # | 350 | CONFIG_PM_SLEEP=y |
351 | CONFIG_SUSPEND=y | ||
352 | CONFIG_SUSPEND_FREEZER=y | ||
353 | # CONFIG_HIBERNATION is not set | ||
354 | # CONFIG_APM_EMULATION is not set | ||
355 | CONFIG_PM_RUNTIME=y | ||
254 | CONFIG_NET=y | 356 | CONFIG_NET=y |
255 | 357 | ||
256 | # | 358 | # |
257 | # Networking options | 359 | # Networking options |
258 | # | 360 | # |
259 | # CONFIG_NETDEBUG is not set | ||
260 | CONFIG_PACKET=y | 361 | CONFIG_PACKET=y |
261 | # CONFIG_PACKET_MMAP is not set | 362 | CONFIG_PACKET_MMAP=y |
262 | CONFIG_UNIX=y | 363 | CONFIG_UNIX=y |
263 | CONFIG_XFRM=y | 364 | # CONFIG_NET_KEY is not set |
264 | CONFIG_XFRM_USER=m | ||
265 | # CONFIG_XFRM_SUB_POLICY is not set | ||
266 | CONFIG_XFRM_MIGRATE=y | ||
267 | CONFIG_NET_KEY=y | ||
268 | CONFIG_NET_KEY_MIGRATE=y | ||
269 | CONFIG_INET=y | 365 | CONFIG_INET=y |
270 | CONFIG_IP_MULTICAST=y | 366 | CONFIG_IP_MULTICAST=y |
271 | # CONFIG_IP_ADVANCED_ROUTER is not set | 367 | # CONFIG_IP_ADVANCED_ROUTER is not set |
272 | CONFIG_IP_FIB_HASH=y | 368 | CONFIG_IP_FIB_HASH=y |
273 | CONFIG_IP_PNP=y | 369 | CONFIG_IP_PNP=y |
274 | # CONFIG_IP_PNP_DHCP is not set | 370 | CONFIG_IP_PNP_DHCP=y |
275 | CONFIG_IP_PNP_BOOTP=y | 371 | CONFIG_IP_PNP_BOOTP=y |
276 | # CONFIG_IP_PNP_RARP is not set | 372 | CONFIG_IP_PNP_RARP=y |
277 | # CONFIG_NET_IPIP is not set | 373 | # CONFIG_NET_IPIP is not set |
278 | # CONFIG_NET_IPGRE is not set | 374 | # CONFIG_NET_IPGRE is not set |
279 | # CONFIG_IP_MROUTE is not set | 375 | # CONFIG_IP_MROUTE is not set |
@@ -284,110 +380,25 @@ CONFIG_IP_PNP_BOOTP=y | |||
284 | # CONFIG_INET_IPCOMP is not set | 380 | # CONFIG_INET_IPCOMP is not set |
285 | # CONFIG_INET_XFRM_TUNNEL is not set | 381 | # CONFIG_INET_XFRM_TUNNEL is not set |
286 | # CONFIG_INET_TUNNEL is not set | 382 | # CONFIG_INET_TUNNEL is not set |
287 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 383 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
288 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 384 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
289 | CONFIG_INET_XFRM_MODE_BEET=m | 385 | # CONFIG_INET_XFRM_MODE_BEET is not set |
290 | CONFIG_INET_DIAG=y | 386 | CONFIG_INET_LRO=y |
291 | CONFIG_INET_TCP_DIAG=y | 387 | # CONFIG_INET_DIAG is not set |
292 | # CONFIG_TCP_CONG_ADVANCED is not set | 388 | # CONFIG_TCP_CONG_ADVANCED is not set |
293 | CONFIG_TCP_CONG_CUBIC=y | 389 | CONFIG_TCP_CONG_CUBIC=y |
294 | CONFIG_DEFAULT_TCP_CONG="cubic" | 390 | CONFIG_DEFAULT_TCP_CONG="cubic" |
295 | CONFIG_TCP_MD5SIG=y | 391 | # CONFIG_TCP_MD5SIG is not set |
296 | |||
297 | # | ||
298 | # IP: Virtual Server Configuration | ||
299 | # | ||
300 | # CONFIG_IP_VS is not set | ||
301 | # CONFIG_IPV6 is not set | 392 | # CONFIG_IPV6 is not set |
302 | # CONFIG_INET6_XFRM_TUNNEL is not set | 393 | # CONFIG_NETWORK_SECMARK is not set |
303 | # CONFIG_INET6_TUNNEL is not set | 394 | # CONFIG_NETFILTER is not set |
304 | CONFIG_NETWORK_SECMARK=y | ||
305 | CONFIG_NETFILTER=y | ||
306 | # CONFIG_NETFILTER_DEBUG is not set | ||
307 | |||
308 | # | ||
309 | # Core Netfilter Configuration | ||
310 | # | ||
311 | CONFIG_NETFILTER_NETLINK=m | ||
312 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
313 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
314 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
315 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
316 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
317 | CONFIG_NF_CONNTRACK=m | ||
318 | CONFIG_NF_CT_ACCT=y | ||
319 | CONFIG_NF_CONNTRACK_MARK=y | ||
320 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
321 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
322 | CONFIG_NF_CT_PROTO_GRE=m | ||
323 | CONFIG_NF_CT_PROTO_SCTP=m | ||
324 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
325 | CONFIG_NF_CONNTRACK_FTP=m | ||
326 | CONFIG_NF_CONNTRACK_H323=m | ||
327 | CONFIG_NF_CONNTRACK_IRC=m | ||
328 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
329 | CONFIG_NF_CONNTRACK_PPTP=m | ||
330 | CONFIG_NF_CONNTRACK_SANE=m | ||
331 | CONFIG_NF_CONNTRACK_SIP=m | ||
332 | CONFIG_NF_CONNTRACK_TFTP=m | ||
333 | CONFIG_NF_CT_NETLINK=m | ||
334 | CONFIG_NETFILTER_XTABLES=m | ||
335 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
336 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
337 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
338 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
339 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
340 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
341 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
342 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
343 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
344 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
345 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
346 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
347 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
348 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
349 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
350 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
351 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
352 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
353 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
354 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
355 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
356 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
357 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
358 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
359 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
365 | |||
366 | # | ||
367 | # IP: Netfilter Configuration | ||
368 | # | ||
369 | CONFIG_NF_CONNTRACK_IPV4=m | ||
370 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
371 | # CONFIG_IP_NF_QUEUE is not set | ||
372 | # CONFIG_IP_NF_IPTABLES is not set | ||
373 | # CONFIG_IP_NF_ARPTABLES is not set | ||
374 | |||
375 | # | ||
376 | # DCCP Configuration (EXPERIMENTAL) | ||
377 | # | ||
378 | # CONFIG_IP_DCCP is not set | 395 | # CONFIG_IP_DCCP is not set |
379 | |||
380 | # | ||
381 | # SCTP Configuration (EXPERIMENTAL) | ||
382 | # | ||
383 | # CONFIG_IP_SCTP is not set | 396 | # CONFIG_IP_SCTP is not set |
384 | 397 | # CONFIG_RDS is not set | |
385 | # | ||
386 | # TIPC Configuration (EXPERIMENTAL) | ||
387 | # | ||
388 | # CONFIG_TIPC is not set | 398 | # CONFIG_TIPC is not set |
389 | # CONFIG_ATM is not set | 399 | # CONFIG_ATM is not set |
390 | # CONFIG_BRIDGE is not set | 400 | # CONFIG_BRIDGE is not set |
401 | # CONFIG_NET_DSA is not set | ||
391 | # CONFIG_VLAN_8021Q is not set | 402 | # CONFIG_VLAN_8021Q is not set |
392 | # CONFIG_DECNET is not set | 403 | # CONFIG_DECNET is not set |
393 | # CONFIG_LLC2 is not set | 404 | # CONFIG_LLC2 is not set |
@@ -397,27 +408,24 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
397 | # CONFIG_LAPB is not set | 408 | # CONFIG_LAPB is not set |
398 | # CONFIG_ECONET is not set | 409 | # CONFIG_ECONET is not set |
399 | # CONFIG_WAN_ROUTER is not set | 410 | # CONFIG_WAN_ROUTER is not set |
400 | 411 | # CONFIG_PHONET is not set | |
401 | # | 412 | # CONFIG_IEEE802154 is not set |
402 | # QoS and/or fair queueing | ||
403 | # | ||
404 | # CONFIG_NET_SCHED is not set | 413 | # CONFIG_NET_SCHED is not set |
405 | CONFIG_NET_CLS_ROUTE=y | 414 | # CONFIG_DCB is not set |
406 | 415 | ||
407 | # | 416 | # |
408 | # Network testing | 417 | # Network testing |
409 | # | 418 | # |
410 | # CONFIG_NET_PKTGEN is not set | 419 | # CONFIG_NET_PKTGEN is not set |
411 | # CONFIG_HAMRADIO is not set | 420 | # CONFIG_HAMRADIO is not set |
421 | # CONFIG_CAN is not set | ||
412 | # CONFIG_IRDA is not set | 422 | # CONFIG_IRDA is not set |
413 | # CONFIG_BT is not set | 423 | # CONFIG_BT is not set |
414 | CONFIG_IEEE80211=m | 424 | # CONFIG_AF_RXRPC is not set |
415 | # CONFIG_IEEE80211_DEBUG is not set | 425 | # CONFIG_WIRELESS is not set |
416 | CONFIG_IEEE80211_CRYPT_WEP=m | 426 | # CONFIG_WIMAX is not set |
417 | CONFIG_IEEE80211_CRYPT_CCMP=m | 427 | # CONFIG_RFKILL is not set |
418 | CONFIG_IEEE80211_SOFTMAC=m | 428 | # CONFIG_NET_9P is not set |
419 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
420 | CONFIG_WIRELESS_EXT=y | ||
421 | 429 | ||
422 | # | 430 | # |
423 | # Device Drivers | 431 | # Device Drivers |
@@ -426,25 +434,25 @@ CONFIG_WIRELESS_EXT=y | |||
426 | # | 434 | # |
427 | # Generic Driver Options | 435 | # Generic Driver Options |
428 | # | 436 | # |
437 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
438 | # CONFIG_DEVTMPFS is not set | ||
429 | CONFIG_STANDALONE=y | 439 | CONFIG_STANDALONE=y |
430 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 440 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
431 | # CONFIG_FW_LOADER is not set | 441 | CONFIG_FW_LOADER=y |
442 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
443 | CONFIG_EXTRA_FIRMWARE="" | ||
444 | # CONFIG_DEBUG_DRIVER is not set | ||
445 | # CONFIG_DEBUG_DEVRES is not set | ||
432 | # CONFIG_SYS_HYPERVISOR is not set | 446 | # CONFIG_SYS_HYPERVISOR is not set |
433 | 447 | # CONFIG_CONNECTOR is not set | |
434 | # | ||
435 | # Connector - unified userspace <-> kernelspace linker | ||
436 | # | ||
437 | CONFIG_CONNECTOR=m | ||
438 | |||
439 | # | ||
440 | # Memory Technology Devices (MTD) | ||
441 | # | ||
442 | CONFIG_MTD=y | 448 | CONFIG_MTD=y |
443 | # CONFIG_MTD_DEBUG is not set | 449 | # CONFIG_MTD_DEBUG is not set |
450 | # CONFIG_MTD_TESTS is not set | ||
444 | # CONFIG_MTD_CONCAT is not set | 451 | # CONFIG_MTD_CONCAT is not set |
445 | CONFIG_MTD_PARTITIONS=y | 452 | CONFIG_MTD_PARTITIONS=y |
446 | # CONFIG_MTD_REDBOOT_PARTS is not set | 453 | # CONFIG_MTD_REDBOOT_PARTS is not set |
447 | # CONFIG_MTD_CMDLINE_PARTS is not set | 454 | # CONFIG_MTD_CMDLINE_PARTS is not set |
455 | # CONFIG_MTD_AR7_PARTS is not set | ||
448 | 456 | ||
449 | # | 457 | # |
450 | # User Modules And Translation Layers | 458 | # User Modules And Translation Layers |
@@ -457,6 +465,7 @@ CONFIG_MTD_BLOCK=y | |||
457 | # CONFIG_INFTL is not set | 465 | # CONFIG_INFTL is not set |
458 | # CONFIG_RFD_FTL is not set | 466 | # CONFIG_RFD_FTL is not set |
459 | # CONFIG_SSFDC is not set | 467 | # CONFIG_SSFDC is not set |
468 | # CONFIG_MTD_OOPS is not set | ||
460 | 469 | ||
461 | # | 470 | # |
462 | # RAM/ROM/Flash chip drivers | 471 | # RAM/ROM/Flash chip drivers |
@@ -482,14 +491,13 @@ CONFIG_MTD_CFI_UTIL=y | |||
482 | # CONFIG_MTD_RAM is not set | 491 | # CONFIG_MTD_RAM is not set |
483 | # CONFIG_MTD_ROM is not set | 492 | # CONFIG_MTD_ROM is not set |
484 | # CONFIG_MTD_ABSENT is not set | 493 | # CONFIG_MTD_ABSENT is not set |
485 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
486 | 494 | ||
487 | # | 495 | # |
488 | # Mapping drivers for chip access | 496 | # Mapping drivers for chip access |
489 | # | 497 | # |
490 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 498 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
491 | # CONFIG_MTD_PHYSMAP is not set | 499 | CONFIG_MTD_PHYSMAP=y |
492 | CONFIG_MTD_ALCHEMY=y | 500 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
493 | # CONFIG_MTD_PLATRAM is not set | 501 | # CONFIG_MTD_PLATRAM is not set |
494 | 502 | ||
495 | # | 503 | # |
@@ -506,161 +514,123 @@ CONFIG_MTD_ALCHEMY=y | |||
506 | # CONFIG_MTD_DOC2000 is not set | 514 | # CONFIG_MTD_DOC2000 is not set |
507 | # CONFIG_MTD_DOC2001 is not set | 515 | # CONFIG_MTD_DOC2001 is not set |
508 | # CONFIG_MTD_DOC2001PLUS is not set | 516 | # CONFIG_MTD_DOC2001PLUS is not set |
509 | |||
510 | # | ||
511 | # NAND Flash Device Drivers | ||
512 | # | ||
513 | # CONFIG_MTD_NAND is not set | 517 | # CONFIG_MTD_NAND is not set |
514 | |||
515 | # | ||
516 | # OneNAND Flash Device Drivers | ||
517 | # | ||
518 | # CONFIG_MTD_ONENAND is not set | 518 | # CONFIG_MTD_ONENAND is not set |
519 | 519 | ||
520 | # | 520 | # |
521 | # Parallel port support | 521 | # LPDDR flash memory drivers |
522 | # | 522 | # |
523 | # CONFIG_PARPORT is not set | 523 | # CONFIG_MTD_LPDDR is not set |
524 | 524 | ||
525 | # | 525 | # |
526 | # Plug and Play support | 526 | # UBI - Unsorted block images |
527 | # | ||
528 | # CONFIG_PNPACPI is not set | ||
529 | |||
530 | # | 527 | # |
531 | # Block devices | 528 | # CONFIG_MTD_UBI is not set |
532 | # | 529 | # CONFIG_PARPORT is not set |
533 | # CONFIG_BLK_DEV_COW_COMMON is not set | 530 | # CONFIG_BLK_DEV is not set |
534 | CONFIG_BLK_DEV_LOOP=y | 531 | # CONFIG_MISC_DEVICES is not set |
535 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 532 | CONFIG_HAVE_IDE=y |
536 | # CONFIG_BLK_DEV_NBD is not set | 533 | CONFIG_IDE=y |
537 | # CONFIG_BLK_DEV_RAM is not set | ||
538 | # CONFIG_BLK_DEV_INITRD is not set | ||
539 | CONFIG_CDROM_PKTCDVD=m | ||
540 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | ||
541 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | ||
542 | CONFIG_ATA_OVER_ETH=m | ||
543 | 534 | ||
544 | # | 535 | # |
545 | # Misc devices | 536 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
546 | # | 537 | # |
538 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
539 | CONFIG_IDE_GD=y | ||
540 | CONFIG_IDE_GD_ATA=y | ||
541 | # CONFIG_IDE_GD_ATAPI is not set | ||
542 | # CONFIG_BLK_DEV_IDECS is not set | ||
543 | # CONFIG_BLK_DEV_IDECD is not set | ||
544 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
545 | CONFIG_IDE_TASK_IOCTL=y | ||
546 | CONFIG_IDE_PROC_FS=y | ||
547 | 547 | ||
548 | # | 548 | # |
549 | # ATA/ATAPI/MFM/RLL support | 549 | # IDE chipset support/bugfixes |
550 | # | 550 | # |
551 | # CONFIG_IDE is not set | 551 | # CONFIG_IDE_GENERIC is not set |
552 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
553 | # CONFIG_BLK_DEV_IDEDMA is not set | ||
552 | 554 | ||
553 | # | 555 | # |
554 | # SCSI device support | 556 | # SCSI device support |
555 | # | 557 | # |
556 | CONFIG_RAID_ATTRS=m | 558 | # CONFIG_RAID_ATTRS is not set |
557 | # CONFIG_SCSI is not set | 559 | # CONFIG_SCSI is not set |
560 | # CONFIG_SCSI_DMA is not set | ||
558 | # CONFIG_SCSI_NETLINK is not set | 561 | # CONFIG_SCSI_NETLINK is not set |
559 | |||
560 | # | ||
561 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
562 | # | ||
563 | # CONFIG_ATA is not set | 562 | # CONFIG_ATA is not set |
564 | |||
565 | # | ||
566 | # Multi-device support (RAID and LVM) | ||
567 | # | ||
568 | # CONFIG_MD is not set | 563 | # CONFIG_MD is not set |
569 | |||
570 | # | ||
571 | # Fusion MPT device support | ||
572 | # | ||
573 | # CONFIG_FUSION is not set | ||
574 | |||
575 | # | ||
576 | # IEEE 1394 (FireWire) support | ||
577 | # | ||
578 | |||
579 | # | ||
580 | # I2O device support | ||
581 | # | ||
582 | |||
583 | # | ||
584 | # Network device support | ||
585 | # | ||
586 | CONFIG_NETDEVICES=y | 564 | CONFIG_NETDEVICES=y |
587 | # CONFIG_DUMMY is not set | 565 | # CONFIG_DUMMY is not set |
588 | # CONFIG_BONDING is not set | 566 | # CONFIG_BONDING is not set |
567 | # CONFIG_MACVLAN is not set | ||
589 | # CONFIG_EQUALIZER is not set | 568 | # CONFIG_EQUALIZER is not set |
590 | # CONFIG_TUN is not set | 569 | # CONFIG_TUN is not set |
591 | 570 | # CONFIG_VETH is not set | |
592 | # | ||
593 | # PHY device support | ||
594 | # | ||
595 | CONFIG_PHYLIB=y | 571 | CONFIG_PHYLIB=y |
596 | 572 | ||
597 | # | 573 | # |
598 | # MII PHY device drivers | 574 | # MII PHY device drivers |
599 | # | 575 | # |
600 | CONFIG_MARVELL_PHY=m | 576 | CONFIG_MARVELL_PHY=y |
601 | CONFIG_DAVICOM_PHY=m | 577 | CONFIG_DAVICOM_PHY=y |
602 | CONFIG_QSEMI_PHY=m | 578 | CONFIG_QSEMI_PHY=y |
603 | CONFIG_LXT_PHY=m | 579 | CONFIG_LXT_PHY=y |
604 | CONFIG_CICADA_PHY=m | 580 | CONFIG_CICADA_PHY=y |
605 | CONFIG_VITESSE_PHY=m | 581 | CONFIG_VITESSE_PHY=y |
606 | CONFIG_SMSC_PHY=m | 582 | CONFIG_SMSC_PHY=y |
607 | # CONFIG_BROADCOM_PHY is not set | 583 | CONFIG_BROADCOM_PHY=y |
584 | CONFIG_ICPLUS_PHY=y | ||
585 | CONFIG_REALTEK_PHY=y | ||
586 | CONFIG_NATIONAL_PHY=y | ||
587 | CONFIG_STE10XP=y | ||
588 | CONFIG_LSI_ET1011C_PHY=y | ||
608 | # CONFIG_FIXED_PHY is not set | 589 | # CONFIG_FIXED_PHY is not set |
609 | 590 | # CONFIG_MDIO_BITBANG is not set | |
610 | # | ||
611 | # Ethernet (10 or 100Mbit) | ||
612 | # | ||
613 | CONFIG_NET_ETHERNET=y | 591 | CONFIG_NET_ETHERNET=y |
614 | CONFIG_MII=m | 592 | CONFIG_MII=y |
593 | # CONFIG_AX88796 is not set | ||
615 | CONFIG_MIPS_AU1X00_ENET=y | 594 | CONFIG_MIPS_AU1X00_ENET=y |
616 | # CONFIG_SMC91X is not set | 595 | # CONFIG_SMC91X is not set |
617 | # CONFIG_DM9000 is not set | 596 | # CONFIG_DM9000 is not set |
618 | 597 | # CONFIG_ETHOC is not set | |
619 | # | 598 | # CONFIG_SMSC911X is not set |
620 | # Ethernet (1000 Mbit) | 599 | # CONFIG_DNET is not set |
621 | # | 600 | # CONFIG_IBM_NEW_EMAC_ZMII is not set |
622 | 601 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | |
623 | # | 602 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
624 | # Ethernet (10000 Mbit) | 603 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
625 | # | 604 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set |
626 | 605 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | |
627 | # | 606 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set |
628 | # Token Ring devices | 607 | # CONFIG_B44 is not set |
629 | # | 608 | # CONFIG_KS8842 is not set |
630 | 609 | # CONFIG_KS8851_MLL is not set | |
631 | # | 610 | # CONFIG_NETDEV_1000 is not set |
632 | # Wireless LAN (non-hamradio) | 611 | # CONFIG_NETDEV_10000 is not set |
633 | # | 612 | # CONFIG_WLAN is not set |
634 | # CONFIG_NET_RADIO is not set | 613 | |
635 | 614 | # | |
636 | # | 615 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
637 | # Wan interfaces | 616 | # |
638 | # | 617 | |
618 | # | ||
619 | # USB Network Adapters | ||
620 | # | ||
621 | # CONFIG_USB_CATC is not set | ||
622 | # CONFIG_USB_KAWETH is not set | ||
623 | # CONFIG_USB_PEGASUS is not set | ||
624 | # CONFIG_USB_RTL8150 is not set | ||
625 | # CONFIG_USB_USBNET is not set | ||
626 | # CONFIG_NET_PCMCIA is not set | ||
639 | # CONFIG_WAN is not set | 627 | # CONFIG_WAN is not set |
640 | CONFIG_PPP=m | 628 | # CONFIG_PPP is not set |
641 | CONFIG_PPP_MULTILINK=y | ||
642 | # CONFIG_PPP_FILTER is not set | ||
643 | CONFIG_PPP_ASYNC=m | ||
644 | # CONFIG_PPP_SYNC_TTY is not set | ||
645 | CONFIG_PPP_DEFLATE=m | ||
646 | # CONFIG_PPP_BSDCOMP is not set | ||
647 | CONFIG_PPP_MPPE=m | ||
648 | CONFIG_PPPOE=m | ||
649 | # CONFIG_SLIP is not set | 629 | # CONFIG_SLIP is not set |
650 | CONFIG_SLHC=m | ||
651 | # CONFIG_SHAPER is not set | ||
652 | # CONFIG_NETCONSOLE is not set | 630 | # CONFIG_NETCONSOLE is not set |
653 | # CONFIG_NETPOLL is not set | 631 | # CONFIG_NETPOLL is not set |
654 | # CONFIG_NET_POLL_CONTROLLER is not set | 632 | # CONFIG_NET_POLL_CONTROLLER is not set |
655 | |||
656 | # | ||
657 | # ISDN subsystem | ||
658 | # | ||
659 | # CONFIG_ISDN is not set | 633 | # CONFIG_ISDN is not set |
660 | |||
661 | # | ||
662 | # Telephony Support | ||
663 | # | ||
664 | # CONFIG_PHONE is not set | 634 | # CONFIG_PHONE is not set |
665 | 635 | ||
666 | # | 636 | # |
@@ -668,16 +638,14 @@ CONFIG_SLHC=m | |||
668 | # | 638 | # |
669 | CONFIG_INPUT=y | 639 | CONFIG_INPUT=y |
670 | # CONFIG_INPUT_FF_MEMLESS is not set | 640 | # CONFIG_INPUT_FF_MEMLESS is not set |
641 | # CONFIG_INPUT_POLLDEV is not set | ||
642 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
671 | 643 | ||
672 | # | 644 | # |
673 | # Userland interfaces | 645 | # Userland interfaces |
674 | # | 646 | # |
675 | CONFIG_INPUT_MOUSEDEV=y | 647 | # CONFIG_INPUT_MOUSEDEV is not set |
676 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
677 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
678 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
679 | # CONFIG_INPUT_JOYDEV is not set | 648 | # CONFIG_INPUT_JOYDEV is not set |
680 | # CONFIG_INPUT_TSDEV is not set | ||
681 | CONFIG_INPUT_EVDEV=y | 649 | CONFIG_INPUT_EVDEV=y |
682 | # CONFIG_INPUT_EVBUG is not set | 650 | # CONFIG_INPUT_EVBUG is not set |
683 | 651 | ||
@@ -687,34 +655,33 @@ CONFIG_INPUT_EVDEV=y | |||
687 | # CONFIG_INPUT_KEYBOARD is not set | 655 | # CONFIG_INPUT_KEYBOARD is not set |
688 | # CONFIG_INPUT_MOUSE is not set | 656 | # CONFIG_INPUT_MOUSE is not set |
689 | # CONFIG_INPUT_JOYSTICK is not set | 657 | # CONFIG_INPUT_JOYSTICK is not set |
658 | # CONFIG_INPUT_TABLET is not set | ||
690 | # CONFIG_INPUT_TOUCHSCREEN is not set | 659 | # CONFIG_INPUT_TOUCHSCREEN is not set |
691 | # CONFIG_INPUT_MISC is not set | 660 | # CONFIG_INPUT_MISC is not set |
692 | 661 | ||
693 | # | 662 | # |
694 | # Hardware I/O ports | 663 | # Hardware I/O ports |
695 | # | 664 | # |
696 | CONFIG_SERIO=y | 665 | # CONFIG_SERIO is not set |
697 | # CONFIG_SERIO_I8042 is not set | ||
698 | CONFIG_SERIO_SERPORT=y | ||
699 | CONFIG_SERIO_LIBPS2=m | ||
700 | CONFIG_SERIO_RAW=m | ||
701 | # CONFIG_GAMEPORT is not set | 666 | # CONFIG_GAMEPORT is not set |
702 | 667 | ||
703 | # | 668 | # |
704 | # Character devices | 669 | # Character devices |
705 | # | 670 | # |
706 | CONFIG_VT=y | 671 | CONFIG_VT=y |
672 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
707 | CONFIG_VT_CONSOLE=y | 673 | CONFIG_VT_CONSOLE=y |
708 | CONFIG_HW_CONSOLE=y | 674 | CONFIG_HW_CONSOLE=y |
709 | CONFIG_VT_HW_CONSOLE_BINDING=y | 675 | CONFIG_VT_HW_CONSOLE_BINDING=y |
676 | CONFIG_DEVKMEM=y | ||
710 | # CONFIG_SERIAL_NONSTANDARD is not set | 677 | # CONFIG_SERIAL_NONSTANDARD is not set |
711 | # CONFIG_AU1X00_GPIO is not set | ||
712 | 678 | ||
713 | # | 679 | # |
714 | # Serial drivers | 680 | # Serial drivers |
715 | # | 681 | # |
716 | CONFIG_SERIAL_8250=y | 682 | CONFIG_SERIAL_8250=y |
717 | CONFIG_SERIAL_8250_CONSOLE=y | 683 | CONFIG_SERIAL_8250_CONSOLE=y |
684 | # CONFIG_SERIAL_8250_CS is not set | ||
718 | CONFIG_SERIAL_8250_NR_UARTS=4 | 685 | CONFIG_SERIAL_8250_NR_UARTS=4 |
719 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 686 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
720 | # CONFIG_SERIAL_8250_EXTENDED is not set | 687 | # CONFIG_SERIAL_8250_EXTENDED is not set |
@@ -726,78 +693,91 @@ CONFIG_SERIAL_8250_AU1X00=y | |||
726 | CONFIG_SERIAL_CORE=y | 693 | CONFIG_SERIAL_CORE=y |
727 | CONFIG_SERIAL_CORE_CONSOLE=y | 694 | CONFIG_SERIAL_CORE_CONSOLE=y |
728 | CONFIG_UNIX98_PTYS=y | 695 | CONFIG_UNIX98_PTYS=y |
729 | CONFIG_LEGACY_PTYS=y | 696 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
730 | CONFIG_LEGACY_PTY_COUNT=256 | 697 | # CONFIG_LEGACY_PTYS is not set |
731 | |||
732 | # | ||
733 | # IPMI | ||
734 | # | ||
735 | # CONFIG_IPMI_HANDLER is not set | 698 | # CONFIG_IPMI_HANDLER is not set |
736 | |||
737 | # | ||
738 | # Watchdog Cards | ||
739 | # | ||
740 | # CONFIG_WATCHDOG is not set | ||
741 | # CONFIG_HW_RANDOM is not set | 699 | # CONFIG_HW_RANDOM is not set |
742 | # CONFIG_RTC is not set | ||
743 | # CONFIG_GEN_RTC is not set | ||
744 | # CONFIG_DTLK is not set | ||
745 | # CONFIG_R3964 is not set | 700 | # CONFIG_R3964 is not set |
746 | # CONFIG_RAW_DRIVER is not set | ||
747 | 701 | ||
748 | # | 702 | # |
749 | # TPM devices | 703 | # PCMCIA character devices |
750 | # | 704 | # |
705 | # CONFIG_SYNCLINK_CS is not set | ||
706 | # CONFIG_CARDMAN_4000 is not set | ||
707 | # CONFIG_CARDMAN_4040 is not set | ||
708 | # CONFIG_IPWIRELESS is not set | ||
709 | # CONFIG_RAW_DRIVER is not set | ||
751 | # CONFIG_TCG_TPM is not set | 710 | # CONFIG_TCG_TPM is not set |
752 | |||
753 | # | ||
754 | # I2C support | ||
755 | # | ||
756 | # CONFIG_I2C is not set | 711 | # CONFIG_I2C is not set |
757 | |||
758 | # | ||
759 | # SPI support | ||
760 | # | ||
761 | # CONFIG_SPI is not set | 712 | # CONFIG_SPI is not set |
762 | # CONFIG_SPI_MASTER is not set | ||
763 | 713 | ||
764 | # | 714 | # |
765 | # Dallas's 1-wire bus | 715 | # PPS support |
766 | # | 716 | # |
717 | # CONFIG_PPS is not set | ||
718 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
719 | # CONFIG_GPIOLIB is not set | ||
767 | # CONFIG_W1 is not set | 720 | # CONFIG_W1 is not set |
768 | 721 | # CONFIG_POWER_SUPPLY is not set | |
769 | # | ||
770 | # Hardware Monitoring support | ||
771 | # | ||
772 | # CONFIG_HWMON is not set | 722 | # CONFIG_HWMON is not set |
773 | # CONFIG_HWMON_VID is not set | 723 | # CONFIG_THERMAL is not set |
724 | # CONFIG_WATCHDOG is not set | ||
725 | CONFIG_SSB_POSSIBLE=y | ||
774 | 726 | ||
775 | # | 727 | # |
776 | # Multimedia devices | 728 | # Sonics Silicon Backplane |
777 | # | 729 | # |
778 | # CONFIG_VIDEO_DEV is not set | 730 | # CONFIG_SSB is not set |
779 | 731 | ||
780 | # | 732 | # |
781 | # Digital Video Broadcasting Devices | 733 | # Multifunction device drivers |
782 | # | 734 | # |
783 | # CONFIG_DVB is not set | 735 | # CONFIG_MFD_CORE is not set |
736 | # CONFIG_MFD_SM501 is not set | ||
737 | # CONFIG_HTC_PASIC3 is not set | ||
738 | # CONFIG_MFD_TMIO is not set | ||
739 | # CONFIG_REGULATOR is not set | ||
740 | # CONFIG_MEDIA_SUPPORT is not set | ||
784 | 741 | ||
785 | # | 742 | # |
786 | # Graphics support | 743 | # Graphics support |
787 | # | 744 | # |
788 | # CONFIG_FIRMWARE_EDID is not set | 745 | # CONFIG_VGASTATE is not set |
746 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
789 | CONFIG_FB=y | 747 | CONFIG_FB=y |
748 | # CONFIG_FIRMWARE_EDID is not set | ||
749 | # CONFIG_FB_DDC is not set | ||
750 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
790 | CONFIG_FB_CFB_FILLRECT=y | 751 | CONFIG_FB_CFB_FILLRECT=y |
791 | CONFIG_FB_CFB_COPYAREA=y | 752 | CONFIG_FB_CFB_COPYAREA=y |
792 | CONFIG_FB_CFB_IMAGEBLIT=y | 753 | CONFIG_FB_CFB_IMAGEBLIT=y |
754 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
755 | # CONFIG_FB_SYS_FILLRECT is not set | ||
756 | # CONFIG_FB_SYS_COPYAREA is not set | ||
757 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
758 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
759 | # CONFIG_FB_SYS_FOPS is not set | ||
793 | # CONFIG_FB_SVGALIB is not set | 760 | # CONFIG_FB_SVGALIB is not set |
794 | # CONFIG_FB_MACMODES is not set | 761 | # CONFIG_FB_MACMODES is not set |
795 | # CONFIG_FB_BACKLIGHT is not set | 762 | # CONFIG_FB_BACKLIGHT is not set |
796 | # CONFIG_FB_MODE_HELPERS is not set | 763 | # CONFIG_FB_MODE_HELPERS is not set |
797 | # CONFIG_FB_TILEBLITTING is not set | 764 | # CONFIG_FB_TILEBLITTING is not set |
765 | |||
766 | # | ||
767 | # Frame buffer hardware drivers | ||
768 | # | ||
798 | # CONFIG_FB_S1D13XXX is not set | 769 | # CONFIG_FB_S1D13XXX is not set |
799 | CONFIG_FB_AU1100=y | 770 | CONFIG_FB_AU1100=y |
800 | # CONFIG_FB_VIRTUAL is not set | 771 | # CONFIG_FB_VIRTUAL is not set |
772 | # CONFIG_FB_METRONOME is not set | ||
773 | # CONFIG_FB_MB862XX is not set | ||
774 | # CONFIG_FB_BROADSHEET is not set | ||
775 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
776 | |||
777 | # | ||
778 | # Display device support | ||
779 | # | ||
780 | # CONFIG_DISPLAY_SUPPORT is not set | ||
801 | 781 | ||
802 | # | 782 | # |
803 | # Console display driver support | 783 | # Console display driver support |
@@ -805,9 +785,10 @@ CONFIG_FB_AU1100=y | |||
805 | # CONFIG_VGA_CONSOLE is not set | 785 | # CONFIG_VGA_CONSOLE is not set |
806 | CONFIG_DUMMY_CONSOLE=y | 786 | CONFIG_DUMMY_CONSOLE=y |
807 | CONFIG_FRAMEBUFFER_CONSOLE=y | 787 | CONFIG_FRAMEBUFFER_CONSOLE=y |
788 | # CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set | ||
808 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | 789 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set |
809 | CONFIG_FONTS=y | 790 | CONFIG_FONTS=y |
810 | CONFIG_FONT_8x8=y | 791 | # CONFIG_FONT_8x8 is not set |
811 | CONFIG_FONT_8x16=y | 792 | CONFIG_FONT_8x16=y |
812 | # CONFIG_FONT_6x11 is not set | 793 | # CONFIG_FONT_6x11 is not set |
813 | # CONFIG_FONT_7x14 is not set | 794 | # CONFIG_FONT_7x14 is not set |
@@ -817,132 +798,186 @@ CONFIG_FONT_8x16=y | |||
817 | # CONFIG_FONT_SUN8x16 is not set | 798 | # CONFIG_FONT_SUN8x16 is not set |
818 | # CONFIG_FONT_SUN12x22 is not set | 799 | # CONFIG_FONT_SUN12x22 is not set |
819 | # CONFIG_FONT_10x18 is not set | 800 | # CONFIG_FONT_10x18 is not set |
820 | 801 | # CONFIG_LOGO is not set | |
821 | # | ||
822 | # Logo configuration | ||
823 | # | ||
824 | CONFIG_LOGO=y | ||
825 | CONFIG_LOGO_LINUX_MONO=y | ||
826 | CONFIG_LOGO_LINUX_VGA16=y | ||
827 | CONFIG_LOGO_LINUX_CLUT224=y | ||
828 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
829 | |||
830 | # | ||
831 | # Sound | ||
832 | # | ||
833 | # CONFIG_SOUND is not set | 802 | # CONFIG_SOUND is not set |
834 | 803 | # CONFIG_HID_SUPPORT is not set | |
835 | # | 804 | CONFIG_USB_SUPPORT=y |
836 | # HID Devices | ||
837 | # | ||
838 | # CONFIG_HID is not set | ||
839 | |||
840 | # | ||
841 | # USB support | ||
842 | # | ||
843 | CONFIG_USB_ARCH_HAS_HCD=y | 805 | CONFIG_USB_ARCH_HAS_HCD=y |
844 | CONFIG_USB_ARCH_HAS_OHCI=y | 806 | CONFIG_USB_ARCH_HAS_OHCI=y |
845 | # CONFIG_USB_ARCH_HAS_EHCI is not set | 807 | # CONFIG_USB_ARCH_HAS_EHCI is not set |
846 | # CONFIG_USB is not set | 808 | CONFIG_USB=y |
809 | # CONFIG_USB_DEBUG is not set | ||
810 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
847 | 811 | ||
848 | # | 812 | # |
849 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 813 | # Miscellaneous USB options |
850 | # | 814 | # |
815 | # CONFIG_USB_DEVICEFS is not set | ||
816 | # CONFIG_USB_DEVICE_CLASS is not set | ||
817 | CONFIG_USB_DYNAMIC_MINORS=y | ||
818 | CONFIG_USB_SUSPEND=y | ||
819 | # CONFIG_USB_OTG is not set | ||
820 | # CONFIG_USB_OTG_WHITELIST is not set | ||
821 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
822 | # CONFIG_USB_MON is not set | ||
823 | # CONFIG_USB_WUSB is not set | ||
824 | # CONFIG_USB_WUSB_CBAF is not set | ||
851 | 825 | ||
852 | # | 826 | # |
853 | # USB Gadget Support | 827 | # USB Host Controller Drivers |
854 | # | 828 | # |
855 | # CONFIG_USB_GADGET is not set | 829 | # CONFIG_USB_C67X00_HCD is not set |
830 | # CONFIG_USB_OXU210HP_HCD is not set | ||
831 | # CONFIG_USB_ISP116X_HCD is not set | ||
832 | # CONFIG_USB_ISP1760_HCD is not set | ||
833 | # CONFIG_USB_ISP1362_HCD is not set | ||
834 | CONFIG_USB_OHCI_HCD=y | ||
835 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
836 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
837 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
838 | # CONFIG_USB_SL811_HCD is not set | ||
839 | # CONFIG_USB_R8A66597_HCD is not set | ||
840 | # CONFIG_USB_HWA_HCD is not set | ||
856 | 841 | ||
857 | # | 842 | # |
858 | # MMC/SD Card support | 843 | # USB Device Class drivers |
859 | # | 844 | # |
860 | # CONFIG_MMC is not set | 845 | # CONFIG_USB_ACM is not set |
846 | # CONFIG_USB_PRINTER is not set | ||
847 | # CONFIG_USB_WDM is not set | ||
848 | # CONFIG_USB_TMC is not set | ||
861 | 849 | ||
862 | # | 850 | # |
863 | # LED devices | 851 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
864 | # | 852 | # |
865 | # CONFIG_NEW_LEDS is not set | ||
866 | 853 | ||
867 | # | 854 | # |
868 | # LED drivers | 855 | # also be needed; see USB_STORAGE Help for more info |
869 | # | 856 | # |
857 | # CONFIG_USB_LIBUSUAL is not set | ||
870 | 858 | ||
871 | # | 859 | # |
872 | # LED Triggers | 860 | # USB Imaging devices |
873 | # | 861 | # |
862 | # CONFIG_USB_MDC800 is not set | ||
874 | 863 | ||
875 | # | 864 | # |
876 | # InfiniBand support | 865 | # USB port drivers |
877 | # | 866 | # |
867 | # CONFIG_USB_SERIAL is not set | ||
878 | 868 | ||
879 | # | 869 | # |
880 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 870 | # USB Miscellaneous drivers |
881 | # | 871 | # |
872 | # CONFIG_USB_EMI62 is not set | ||
873 | # CONFIG_USB_EMI26 is not set | ||
874 | # CONFIG_USB_ADUTUX is not set | ||
875 | # CONFIG_USB_SEVSEG is not set | ||
876 | # CONFIG_USB_RIO500 is not set | ||
877 | # CONFIG_USB_LEGOTOWER is not set | ||
878 | # CONFIG_USB_LCD is not set | ||
879 | # CONFIG_USB_BERRY_CHARGE is not set | ||
880 | # CONFIG_USB_LED is not set | ||
881 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
882 | # CONFIG_USB_CYTHERM is not set | ||
883 | # CONFIG_USB_IDMOUSE is not set | ||
884 | # CONFIG_USB_FTDI_ELAN is not set | ||
885 | # CONFIG_USB_APPLEDISPLAY is not set | ||
886 | # CONFIG_USB_LD is not set | ||
887 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
888 | # CONFIG_USB_IOWARRIOR is not set | ||
889 | # CONFIG_USB_TEST is not set | ||
890 | # CONFIG_USB_ISIGHTFW is not set | ||
891 | # CONFIG_USB_VST is not set | ||
892 | # CONFIG_USB_GADGET is not set | ||
882 | 893 | ||
883 | # | 894 | # |
884 | # Real Time Clock | 895 | # OTG and related infrastructure |
885 | # | 896 | # |
886 | # CONFIG_RTC_CLASS is not set | 897 | # CONFIG_USB_GPIO_VBUS is not set |
898 | # CONFIG_NOP_USB_XCEIV is not set | ||
899 | # CONFIG_MMC is not set | ||
900 | # CONFIG_MEMSTICK is not set | ||
901 | # CONFIG_NEW_LEDS is not set | ||
902 | # CONFIG_ACCESSIBILITY is not set | ||
903 | CONFIG_RTC_LIB=y | ||
904 | CONFIG_RTC_CLASS=y | ||
905 | CONFIG_RTC_HCTOSYS=y | ||
906 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
907 | # CONFIG_RTC_DEBUG is not set | ||
887 | 908 | ||
888 | # | 909 | # |
889 | # DMA Engine support | 910 | # RTC interfaces |
890 | # | 911 | # |
891 | # CONFIG_DMA_ENGINE is not set | 912 | CONFIG_RTC_INTF_SYSFS=y |
913 | CONFIG_RTC_INTF_PROC=y | ||
914 | CONFIG_RTC_INTF_DEV=y | ||
915 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
916 | # CONFIG_RTC_DRV_TEST is not set | ||
892 | 917 | ||
893 | # | 918 | # |
894 | # DMA Clients | 919 | # SPI RTC drivers |
895 | # | 920 | # |
896 | 921 | ||
897 | # | 922 | # |
898 | # DMA Devices | 923 | # Platform RTC drivers |
899 | # | 924 | # |
925 | # CONFIG_RTC_DRV_CMOS is not set | ||
926 | # CONFIG_RTC_DRV_DS1286 is not set | ||
927 | # CONFIG_RTC_DRV_DS1511 is not set | ||
928 | # CONFIG_RTC_DRV_DS1553 is not set | ||
929 | # CONFIG_RTC_DRV_DS1742 is not set | ||
930 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
931 | # CONFIG_RTC_DRV_M48T86 is not set | ||
932 | # CONFIG_RTC_DRV_M48T35 is not set | ||
933 | # CONFIG_RTC_DRV_M48T59 is not set | ||
934 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
935 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
936 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
937 | # CONFIG_RTC_DRV_V3020 is not set | ||
900 | 938 | ||
901 | # | 939 | # |
902 | # Auxiliary Display support | 940 | # on-CPU RTC drivers |
903 | # | 941 | # |
942 | CONFIG_RTC_DRV_AU1XXX=y | ||
943 | # CONFIG_DMADEVICES is not set | ||
944 | # CONFIG_AUXDISPLAY is not set | ||
945 | # CONFIG_UIO is not set | ||
904 | 946 | ||
905 | # | 947 | # |
906 | # Virtualization | 948 | # TI VLYNQ |
907 | # | 949 | # |
950 | # CONFIG_STAGING is not set | ||
908 | 951 | ||
909 | # | 952 | # |
910 | # File systems | 953 | # File systems |
911 | # | 954 | # |
912 | CONFIG_EXT2_FS=y | 955 | CONFIG_EXT2_FS=y |
913 | CONFIG_EXT2_FS_XATTR=y | 956 | # CONFIG_EXT2_FS_XATTR is not set |
914 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
915 | # CONFIG_EXT2_FS_SECURITY is not set | ||
916 | # CONFIG_EXT2_FS_XIP is not set | 957 | # CONFIG_EXT2_FS_XIP is not set |
917 | CONFIG_EXT3_FS=y | 958 | # CONFIG_EXT3_FS is not set |
918 | CONFIG_EXT3_FS_XATTR=y | 959 | # CONFIG_EXT4_FS is not set |
919 | CONFIG_EXT3_FS_POSIX_ACL=y | 960 | # CONFIG_REISERFS_FS is not set |
920 | CONFIG_EXT3_FS_SECURITY=y | ||
921 | # CONFIG_EXT4DEV_FS is not set | ||
922 | CONFIG_JBD=y | ||
923 | # CONFIG_JBD_DEBUG is not set | ||
924 | CONFIG_FS_MBCACHE=y | ||
925 | CONFIG_REISERFS_FS=m | ||
926 | # CONFIG_REISERFS_CHECK is not set | ||
927 | # CONFIG_REISERFS_PROC_INFO is not set | ||
928 | CONFIG_REISERFS_FS_XATTR=y | ||
929 | CONFIG_REISERFS_FS_POSIX_ACL=y | ||
930 | CONFIG_REISERFS_FS_SECURITY=y | ||
931 | # CONFIG_JFS_FS is not set | 961 | # CONFIG_JFS_FS is not set |
932 | CONFIG_FS_POSIX_ACL=y | 962 | CONFIG_FS_POSIX_ACL=y |
933 | # CONFIG_XFS_FS is not set | 963 | # CONFIG_XFS_FS is not set |
934 | # CONFIG_GFS2_FS is not set | ||
935 | # CONFIG_OCFS2_FS is not set | 964 | # CONFIG_OCFS2_FS is not set |
936 | # CONFIG_MINIX_FS is not set | 965 | # CONFIG_BTRFS_FS is not set |
937 | # CONFIG_ROMFS_FS is not set | 966 | # CONFIG_NILFS2_FS is not set |
967 | CONFIG_FILE_LOCKING=y | ||
968 | CONFIG_FSNOTIFY=y | ||
969 | CONFIG_DNOTIFY=y | ||
938 | CONFIG_INOTIFY=y | 970 | CONFIG_INOTIFY=y |
939 | CONFIG_INOTIFY_USER=y | 971 | CONFIG_INOTIFY_USER=y |
940 | # CONFIG_QUOTA is not set | 972 | # CONFIG_QUOTA is not set |
941 | CONFIG_DNOTIFY=y | 973 | # CONFIG_AUTOFS_FS is not set |
942 | CONFIG_AUTOFS_FS=m | 974 | # CONFIG_AUTOFS4_FS is not set |
943 | CONFIG_AUTOFS4_FS=m | 975 | # CONFIG_FUSE_FS is not set |
944 | CONFIG_FUSE_FS=m | 976 | |
945 | CONFIG_GENERIC_ACL=y | 977 | # |
978 | # Caches | ||
979 | # | ||
980 | # CONFIG_FSCACHE is not set | ||
946 | 981 | ||
947 | # | 982 | # |
948 | # CD-ROM/DVD Filesystems | 983 | # CD-ROM/DVD Filesystems |
@@ -961,69 +996,76 @@ CONFIG_GENERIC_ACL=y | |||
961 | # Pseudo filesystems | 996 | # Pseudo filesystems |
962 | # | 997 | # |
963 | CONFIG_PROC_FS=y | 998 | CONFIG_PROC_FS=y |
964 | CONFIG_PROC_KCORE=y | 999 | # CONFIG_PROC_KCORE is not set |
965 | CONFIG_PROC_SYSCTL=y | 1000 | CONFIG_PROC_SYSCTL=y |
1001 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
966 | CONFIG_SYSFS=y | 1002 | CONFIG_SYSFS=y |
967 | CONFIG_TMPFS=y | 1003 | CONFIG_TMPFS=y |
968 | CONFIG_TMPFS_POSIX_ACL=y | 1004 | # CONFIG_TMPFS_POSIX_ACL is not set |
969 | # CONFIG_HUGETLB_PAGE is not set | 1005 | # CONFIG_HUGETLB_PAGE is not set |
970 | CONFIG_RAMFS=y | 1006 | # CONFIG_CONFIGFS_FS is not set |
971 | CONFIG_CONFIGFS_FS=m | 1007 | CONFIG_MISC_FILESYSTEMS=y |
972 | |||
973 | # | ||
974 | # Miscellaneous filesystems | ||
975 | # | ||
976 | # CONFIG_ADFS_FS is not set | 1008 | # CONFIG_ADFS_FS is not set |
977 | # CONFIG_AFFS_FS is not set | 1009 | # CONFIG_AFFS_FS is not set |
978 | # CONFIG_ECRYPT_FS is not set | ||
979 | # CONFIG_HFS_FS is not set | 1010 | # CONFIG_HFS_FS is not set |
980 | # CONFIG_HFSPLUS_FS is not set | 1011 | # CONFIG_HFSPLUS_FS is not set |
981 | # CONFIG_BEFS_FS is not set | 1012 | # CONFIG_BEFS_FS is not set |
982 | # CONFIG_BFS_FS is not set | 1013 | # CONFIG_BFS_FS is not set |
983 | # CONFIG_EFS_FS is not set | 1014 | # CONFIG_EFS_FS is not set |
984 | # CONFIG_JFFS2_FS is not set | 1015 | CONFIG_JFFS2_FS=y |
985 | CONFIG_CRAMFS=m | 1016 | CONFIG_JFFS2_FS_DEBUG=0 |
1017 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1018 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1019 | CONFIG_JFFS2_SUMMARY=y | ||
1020 | CONFIG_JFFS2_FS_XATTR=y | ||
1021 | CONFIG_JFFS2_FS_POSIX_ACL=y | ||
1022 | CONFIG_JFFS2_FS_SECURITY=y | ||
1023 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1024 | CONFIG_JFFS2_ZLIB=y | ||
1025 | CONFIG_JFFS2_LZO=y | ||
1026 | CONFIG_JFFS2_RTIME=y | ||
1027 | CONFIG_JFFS2_RUBIN=y | ||
1028 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1029 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1030 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1031 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1032 | # CONFIG_CRAMFS is not set | ||
1033 | CONFIG_SQUASHFS=y | ||
1034 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1035 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
986 | # CONFIG_VXFS_FS is not set | 1036 | # CONFIG_VXFS_FS is not set |
1037 | # CONFIG_MINIX_FS is not set | ||
1038 | # CONFIG_OMFS_FS is not set | ||
987 | # CONFIG_HPFS_FS is not set | 1039 | # CONFIG_HPFS_FS is not set |
988 | # CONFIG_QNX4FS_FS is not set | 1040 | # CONFIG_QNX4FS_FS is not set |
1041 | # CONFIG_ROMFS_FS is not set | ||
989 | # CONFIG_SYSV_FS is not set | 1042 | # CONFIG_SYSV_FS is not set |
990 | # CONFIG_UFS_FS is not set | 1043 | # CONFIG_UFS_FS is not set |
991 | 1044 | CONFIG_NETWORK_FILESYSTEMS=y | |
992 | # | ||
993 | # Network File Systems | ||
994 | # | ||
995 | CONFIG_NFS_FS=y | 1045 | CONFIG_NFS_FS=y |
996 | # CONFIG_NFS_V3 is not set | 1046 | CONFIG_NFS_V3=y |
1047 | # CONFIG_NFS_V3_ACL is not set | ||
997 | # CONFIG_NFS_V4 is not set | 1048 | # CONFIG_NFS_V4 is not set |
998 | # CONFIG_NFS_DIRECTIO is not set | ||
999 | CONFIG_NFSD=m | ||
1000 | # CONFIG_NFSD_V3 is not set | ||
1001 | # CONFIG_NFSD_TCP is not set | ||
1002 | CONFIG_ROOT_NFS=y | 1049 | CONFIG_ROOT_NFS=y |
1050 | # CONFIG_NFSD is not set | ||
1003 | CONFIG_LOCKD=y | 1051 | CONFIG_LOCKD=y |
1004 | CONFIG_EXPORTFS=m | 1052 | CONFIG_LOCKD_V4=y |
1005 | CONFIG_NFS_COMMON=y | 1053 | CONFIG_NFS_COMMON=y |
1006 | CONFIG_SUNRPC=y | 1054 | CONFIG_SUNRPC=y |
1007 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1055 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1008 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1056 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1009 | CONFIG_SMB_FS=m | 1057 | # CONFIG_SMB_FS is not set |
1010 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1011 | # CONFIG_CIFS is not set | 1058 | # CONFIG_CIFS is not set |
1012 | # CONFIG_NCP_FS is not set | 1059 | # CONFIG_NCP_FS is not set |
1013 | # CONFIG_CODA_FS is not set | 1060 | # CONFIG_CODA_FS is not set |
1014 | # CONFIG_AFS_FS is not set | 1061 | # CONFIG_AFS_FS is not set |
1015 | # CONFIG_9P_FS is not set | ||
1016 | 1062 | ||
1017 | # | 1063 | # |
1018 | # Partition Types | 1064 | # Partition Types |
1019 | # | 1065 | # |
1020 | # CONFIG_PARTITION_ADVANCED is not set | 1066 | # CONFIG_PARTITION_ADVANCED is not set |
1021 | CONFIG_MSDOS_PARTITION=y | 1067 | CONFIG_MSDOS_PARTITION=y |
1022 | 1068 | CONFIG_NLS=y | |
1023 | # | ||
1024 | # Native Language Support | ||
1025 | # | ||
1026 | CONFIG_NLS=m | ||
1027 | CONFIG_NLS_DEFAULT="iso8859-1" | 1069 | CONFIG_NLS_DEFAULT="iso8859-1" |
1028 | # CONFIG_NLS_CODEPAGE_437 is not set | 1070 | # CONFIG_NLS_CODEPAGE_437 is not set |
1029 | # CONFIG_NLS_CODEPAGE_737 is not set | 1071 | # CONFIG_NLS_CODEPAGE_737 is not set |
@@ -1063,34 +1105,71 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1063 | # CONFIG_NLS_KOI8_R is not set | 1105 | # CONFIG_NLS_KOI8_R is not set |
1064 | # CONFIG_NLS_KOI8_U is not set | 1106 | # CONFIG_NLS_KOI8_U is not set |
1065 | # CONFIG_NLS_UTF8 is not set | 1107 | # CONFIG_NLS_UTF8 is not set |
1066 | 1108 | # CONFIG_DLM is not set | |
1067 | # | ||
1068 | # Distributed Lock Manager | ||
1069 | # | ||
1070 | CONFIG_DLM=m | ||
1071 | CONFIG_DLM_TCP=y | ||
1072 | # CONFIG_DLM_SCTP is not set | ||
1073 | # CONFIG_DLM_DEBUG is not set | ||
1074 | |||
1075 | # | ||
1076 | # Profiling support | ||
1077 | # | ||
1078 | # CONFIG_PROFILING is not set | ||
1079 | 1109 | ||
1080 | # | 1110 | # |
1081 | # Kernel hacking | 1111 | # Kernel hacking |
1082 | # | 1112 | # |
1083 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1113 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1084 | # CONFIG_PRINTK_TIME is not set | 1114 | # CONFIG_PRINTK_TIME is not set |
1115 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1085 | CONFIG_ENABLE_MUST_CHECK=y | 1116 | CONFIG_ENABLE_MUST_CHECK=y |
1117 | CONFIG_FRAME_WARN=1024 | ||
1086 | # CONFIG_MAGIC_SYSRQ is not set | 1118 | # CONFIG_MAGIC_SYSRQ is not set |
1119 | CONFIG_STRIP_ASM_SYMS=y | ||
1087 | # CONFIG_UNUSED_SYMBOLS is not set | 1120 | # CONFIG_UNUSED_SYMBOLS is not set |
1088 | # CONFIG_DEBUG_FS is not set | 1121 | # CONFIG_DEBUG_FS is not set |
1089 | # CONFIG_HEADERS_CHECK is not set | 1122 | # CONFIG_HEADERS_CHECK is not set |
1090 | # CONFIG_DEBUG_KERNEL is not set | 1123 | CONFIG_DEBUG_KERNEL=y |
1091 | CONFIG_LOG_BUF_SHIFT=14 | 1124 | # CONFIG_DEBUG_SHIRQ is not set |
1092 | CONFIG_CROSSCOMPILE=y | 1125 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1093 | CONFIG_CMDLINE="" | 1126 | # CONFIG_DETECT_HUNG_TASK is not set |
1127 | # CONFIG_SCHED_DEBUG is not set | ||
1128 | # CONFIG_SCHEDSTATS is not set | ||
1129 | # CONFIG_TIMER_STATS is not set | ||
1130 | # CONFIG_DEBUG_OBJECTS is not set | ||
1131 | # CONFIG_DEBUG_SLAB is not set | ||
1132 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1133 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1134 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1135 | # CONFIG_DEBUG_MUTEXES is not set | ||
1136 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1137 | # CONFIG_PROVE_LOCKING is not set | ||
1138 | # CONFIG_LOCK_STAT is not set | ||
1139 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1140 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1141 | # CONFIG_DEBUG_KOBJECT is not set | ||
1142 | # CONFIG_DEBUG_INFO is not set | ||
1143 | # CONFIG_DEBUG_VM is not set | ||
1144 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1145 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1146 | # CONFIG_DEBUG_LIST is not set | ||
1147 | # CONFIG_DEBUG_SG is not set | ||
1148 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1149 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1150 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1151 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1152 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1153 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1154 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1155 | # CONFIG_FAULT_INJECTION is not set | ||
1156 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1157 | # CONFIG_PAGE_POISONING is not set | ||
1158 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1159 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1160 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1161 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1162 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1163 | CONFIG_TRACING_SUPPORT=y | ||
1164 | # CONFIG_FTRACE is not set | ||
1165 | # CONFIG_SAMPLES is not set | ||
1166 | CONFIG_HAVE_ARCH_KGDB=y | ||
1167 | # CONFIG_KGDB is not set | ||
1168 | CONFIG_EARLY_PRINTK=y | ||
1169 | # CONFIG_CMDLINE_BOOL is not set | ||
1170 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1171 | # CONFIG_RUNTIME_DEBUG is not set | ||
1172 | CONFIG_DEBUG_ZBOOT=y | ||
1094 | 1173 | ||
1095 | # | 1174 | # |
1096 | # Security options | 1175 | # Security options |
@@ -1098,67 +1177,32 @@ CONFIG_CMDLINE="" | |||
1098 | CONFIG_KEYS=y | 1177 | CONFIG_KEYS=y |
1099 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1178 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1100 | # CONFIG_SECURITY is not set | 1179 | # CONFIG_SECURITY is not set |
1101 | 1180 | CONFIG_SECURITYFS=y | |
1102 | # | 1181 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1103 | # Cryptographic options | 1182 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1104 | # | 1183 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1105 | CONFIG_CRYPTO=y | 1184 | CONFIG_DEFAULT_SECURITY_DAC=y |
1106 | CONFIG_CRYPTO_ALGAPI=y | 1185 | CONFIG_DEFAULT_SECURITY="" |
1107 | CONFIG_CRYPTO_BLKCIPHER=m | 1186 | # CONFIG_CRYPTO is not set |
1108 | CONFIG_CRYPTO_HASH=y | 1187 | # CONFIG_BINARY_PRINTF is not set |
1109 | CONFIG_CRYPTO_MANAGER=y | ||
1110 | CONFIG_CRYPTO_HMAC=y | ||
1111 | CONFIG_CRYPTO_XCBC=m | ||
1112 | CONFIG_CRYPTO_NULL=m | ||
1113 | CONFIG_CRYPTO_MD4=m | ||
1114 | CONFIG_CRYPTO_MD5=y | ||
1115 | CONFIG_CRYPTO_SHA1=m | ||
1116 | CONFIG_CRYPTO_SHA256=m | ||
1117 | CONFIG_CRYPTO_SHA512=m | ||
1118 | CONFIG_CRYPTO_WP512=m | ||
1119 | CONFIG_CRYPTO_TGR192=m | ||
1120 | CONFIG_CRYPTO_GF128MUL=m | ||
1121 | CONFIG_CRYPTO_ECB=m | ||
1122 | CONFIG_CRYPTO_CBC=m | ||
1123 | CONFIG_CRYPTO_PCBC=m | ||
1124 | CONFIG_CRYPTO_LRW=m | ||
1125 | CONFIG_CRYPTO_DES=m | ||
1126 | CONFIG_CRYPTO_FCRYPT=m | ||
1127 | CONFIG_CRYPTO_BLOWFISH=m | ||
1128 | CONFIG_CRYPTO_TWOFISH=m | ||
1129 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1130 | CONFIG_CRYPTO_SERPENT=m | ||
1131 | CONFIG_CRYPTO_AES=m | ||
1132 | CONFIG_CRYPTO_CAST5=m | ||
1133 | CONFIG_CRYPTO_CAST6=m | ||
1134 | CONFIG_CRYPTO_TEA=m | ||
1135 | CONFIG_CRYPTO_ARC4=m | ||
1136 | CONFIG_CRYPTO_KHAZAD=m | ||
1137 | CONFIG_CRYPTO_ANUBIS=m | ||
1138 | CONFIG_CRYPTO_DEFLATE=m | ||
1139 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1140 | CONFIG_CRYPTO_CRC32C=m | ||
1141 | CONFIG_CRYPTO_CAMELLIA=m | ||
1142 | # CONFIG_CRYPTO_TEST is not set | ||
1143 | |||
1144 | # | ||
1145 | # Hardware crypto devices | ||
1146 | # | ||
1147 | 1188 | ||
1148 | # | 1189 | # |
1149 | # Library routines | 1190 | # Library routines |
1150 | # | 1191 | # |
1151 | CONFIG_BITREVERSE=y | 1192 | CONFIG_BITREVERSE=y |
1152 | CONFIG_CRC_CCITT=m | 1193 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1153 | CONFIG_CRC16=m | 1194 | # CONFIG_CRC_CCITT is not set |
1195 | # CONFIG_CRC16 is not set | ||
1196 | # CONFIG_CRC_T10DIF is not set | ||
1197 | # CONFIG_CRC_ITU_T is not set | ||
1154 | CONFIG_CRC32=y | 1198 | CONFIG_CRC32=y |
1155 | CONFIG_LIBCRC32C=m | 1199 | # CONFIG_CRC7 is not set |
1156 | CONFIG_ZLIB_INFLATE=m | 1200 | # CONFIG_LIBCRC32C is not set |
1157 | CONFIG_ZLIB_DEFLATE=m | 1201 | CONFIG_ZLIB_INFLATE=y |
1158 | CONFIG_TEXTSEARCH=y | 1202 | CONFIG_ZLIB_DEFLATE=y |
1159 | CONFIG_TEXTSEARCH_KMP=m | 1203 | CONFIG_LZO_COMPRESS=y |
1160 | CONFIG_TEXTSEARCH_BM=m | 1204 | CONFIG_LZO_DECOMPRESS=y |
1161 | CONFIG_TEXTSEARCH_FSM=m | ||
1162 | CONFIG_PLIST=y | ||
1163 | CONFIG_HAS_IOMEM=y | 1205 | CONFIG_HAS_IOMEM=y |
1164 | CONFIG_HAS_IOPORT=y | 1206 | CONFIG_HAS_IOPORT=y |
1207 | CONFIG_HAS_DMA=y | ||
1208 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/db1200_defconfig b/arch/mips/configs/db1200_defconfig index d73f1de43b5d..991c20adf471 100644 --- a/arch/mips/configs/db1200_defconfig +++ b/arch/mips/configs/db1200_defconfig | |||
@@ -1,79 +1,102 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:25 2007 | 4 | # Fri Feb 26 10:18:09 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_PB1100 is not set | ||
17 | # CONFIG_MIPS_PB1500 is not set | ||
18 | # CONFIG_MIPS_PB1550 is not set | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | # CONFIG_MIPS_DB1000 is not set | ||
21 | # CONFIG_MIPS_DB1100 is not set | ||
22 | # CONFIG_MIPS_DB1500 is not set | ||
23 | # CONFIG_MIPS_DB1550 is not set | ||
24 | CONFIG_MIPS_DB1200=y | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | CONFIG_MIPS_DB1200=y | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1200=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_COHERENT=y | 83 | CONFIG_DMA_COHERENT=y |
84 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
65 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y | 85 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y |
86 | # CONFIG_NO_IOPORT is not set | ||
87 | CONFIG_GENERIC_GPIO=y | ||
66 | # CONFIG_CPU_BIG_ENDIAN is not set | 88 | # CONFIG_CPU_BIG_ENDIAN is not set |
67 | CONFIG_CPU_LITTLE_ENDIAN=y | 89 | CONFIG_CPU_LITTLE_ENDIAN=y |
68 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 90 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
69 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 91 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
70 | CONFIG_SOC_AU1200=y | 92 | CONFIG_IRQ_CPU=y |
71 | CONFIG_SOC_AU1X00=y | ||
72 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 93 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
73 | 94 | ||
74 | # | 95 | # |
75 | # CPU selection | 96 | # CPU selection |
76 | # | 97 | # |
98 | # CONFIG_CPU_LOONGSON2E is not set | ||
99 | # CONFIG_CPU_LOONGSON2F is not set | ||
77 | CONFIG_CPU_MIPS32_R1=y | 100 | CONFIG_CPU_MIPS32_R1=y |
78 | # CONFIG_CPU_MIPS32_R2 is not set | 101 | # CONFIG_CPU_MIPS32_R2 is not set |
79 | # CONFIG_CPU_MIPS64_R1 is not set | 102 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -86,6 +109,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
86 | # CONFIG_CPU_TX49XX is not set | 109 | # CONFIG_CPU_TX49XX is not set |
87 | # CONFIG_CPU_R5000 is not set | 110 | # CONFIG_CPU_R5000 is not set |
88 | # CONFIG_CPU_R5432 is not set | 111 | # CONFIG_CPU_R5432 is not set |
112 | # CONFIG_CPU_R5500 is not set | ||
89 | # CONFIG_CPU_R6000 is not set | 113 | # CONFIG_CPU_R6000 is not set |
90 | # CONFIG_CPU_NEVADA is not set | 114 | # CONFIG_CPU_NEVADA is not set |
91 | # CONFIG_CPU_R8000 is not set | 115 | # CONFIG_CPU_R8000 is not set |
@@ -93,11 +117,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
93 | # CONFIG_CPU_RM7000 is not set | 117 | # CONFIG_CPU_RM7000 is not set |
94 | # CONFIG_CPU_RM9000 is not set | 118 | # CONFIG_CPU_RM9000 is not set |
95 | # CONFIG_CPU_SB1 is not set | 119 | # CONFIG_CPU_SB1 is not set |
120 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
121 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
96 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 122 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
97 | CONFIG_CPU_MIPS32=y | 123 | CONFIG_CPU_MIPS32=y |
98 | CONFIG_CPU_MIPSR1=y | 124 | CONFIG_CPU_MIPSR1=y |
99 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 125 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
100 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 126 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
127 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
101 | 128 | ||
102 | # | 129 | # |
103 | # Kernel type | 130 | # Kernel type |
@@ -107,180 +134,235 @@ CONFIG_32BIT=y | |||
107 | CONFIG_PAGE_SIZE_4KB=y | 134 | CONFIG_PAGE_SIZE_4KB=y |
108 | # CONFIG_PAGE_SIZE_8KB is not set | 135 | # CONFIG_PAGE_SIZE_8KB is not set |
109 | # CONFIG_PAGE_SIZE_16KB is not set | 136 | # CONFIG_PAGE_SIZE_16KB is not set |
137 | # CONFIG_PAGE_SIZE_32KB is not set | ||
110 | # CONFIG_PAGE_SIZE_64KB is not set | 138 | # CONFIG_PAGE_SIZE_64KB is not set |
111 | CONFIG_CPU_HAS_PREFETCH=y | 139 | CONFIG_CPU_HAS_PREFETCH=y |
112 | CONFIG_MIPS_MT_DISABLED=y | 140 | CONFIG_MIPS_MT_DISABLED=y |
113 | # CONFIG_MIPS_MT_SMP is not set | 141 | # CONFIG_MIPS_MT_SMP is not set |
114 | # CONFIG_MIPS_MT_SMTC is not set | 142 | # CONFIG_MIPS_MT_SMTC is not set |
115 | # CONFIG_MIPS_VPE_LOADER is not set | ||
116 | CONFIG_64BIT_PHYS_ADDR=y | 143 | CONFIG_64BIT_PHYS_ADDR=y |
144 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
117 | CONFIG_CPU_HAS_SYNC=y | 145 | CONFIG_CPU_HAS_SYNC=y |
118 | CONFIG_GENERIC_HARDIRQS=y | 146 | CONFIG_GENERIC_HARDIRQS=y |
119 | CONFIG_GENERIC_IRQ_PROBE=y | 147 | CONFIG_GENERIC_IRQ_PROBE=y |
120 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 148 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
121 | CONFIG_ARCH_FLATMEM_ENABLE=y | 149 | CONFIG_ARCH_FLATMEM_ENABLE=y |
150 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
122 | CONFIG_SELECT_MEMORY_MODEL=y | 151 | CONFIG_SELECT_MEMORY_MODEL=y |
123 | CONFIG_FLATMEM_MANUAL=y | 152 | CONFIG_FLATMEM_MANUAL=y |
124 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 153 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
125 | # CONFIG_SPARSEMEM_MANUAL is not set | 154 | # CONFIG_SPARSEMEM_MANUAL is not set |
126 | CONFIG_FLATMEM=y | 155 | CONFIG_FLATMEM=y |
127 | CONFIG_FLAT_NODE_MEM_MAP=y | 156 | CONFIG_FLAT_NODE_MEM_MAP=y |
128 | # CONFIG_SPARSEMEM_STATIC is not set | 157 | CONFIG_PAGEFLAGS_EXTENDED=y |
129 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 158 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
130 | # CONFIG_RESOURCES_64BIT is not set | 159 | CONFIG_PHYS_ADDR_T_64BIT=y |
131 | CONFIG_ZONE_DMA_FLAG=1 | 160 | CONFIG_ZONE_DMA_FLAG=0 |
161 | CONFIG_VIRT_TO_BUS=y | ||
162 | CONFIG_KSM=y | ||
163 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
164 | CONFIG_TICK_ONESHOT=y | ||
165 | CONFIG_NO_HZ=y | ||
166 | CONFIG_HIGH_RES_TIMERS=y | ||
167 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
132 | # CONFIG_HZ_48 is not set | 168 | # CONFIG_HZ_48 is not set |
133 | # CONFIG_HZ_100 is not set | 169 | CONFIG_HZ_100=y |
134 | # CONFIG_HZ_128 is not set | 170 | # CONFIG_HZ_128 is not set |
135 | # CONFIG_HZ_250 is not set | 171 | # CONFIG_HZ_250 is not set |
136 | # CONFIG_HZ_256 is not set | 172 | # CONFIG_HZ_256 is not set |
137 | CONFIG_HZ_1000=y | 173 | # CONFIG_HZ_1000 is not set |
138 | # CONFIG_HZ_1024 is not set | 174 | # CONFIG_HZ_1024 is not set |
139 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 175 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
140 | CONFIG_HZ=1000 | 176 | CONFIG_HZ=100 |
141 | CONFIG_PREEMPT_NONE=y | 177 | CONFIG_PREEMPT_NONE=y |
142 | # CONFIG_PREEMPT_VOLUNTARY is not set | 178 | # CONFIG_PREEMPT_VOLUNTARY is not set |
143 | # CONFIG_PREEMPT is not set | 179 | # CONFIG_PREEMPT is not set |
144 | # CONFIG_KEXEC is not set | 180 | # CONFIG_KEXEC is not set |
181 | # CONFIG_SECCOMP is not set | ||
145 | CONFIG_LOCKDEP_SUPPORT=y | 182 | CONFIG_LOCKDEP_SUPPORT=y |
146 | CONFIG_STACKTRACE_SUPPORT=y | 183 | CONFIG_STACKTRACE_SUPPORT=y |
147 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 184 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
185 | CONFIG_CONSTRUCTORS=y | ||
148 | 186 | ||
149 | # | 187 | # |
150 | # Code maturity level options | 188 | # General setup |
151 | # | 189 | # |
152 | CONFIG_EXPERIMENTAL=y | 190 | CONFIG_EXPERIMENTAL=y |
153 | CONFIG_BROKEN_ON_SMP=y | 191 | CONFIG_BROKEN_ON_SMP=y |
154 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 192 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
155 | 193 | CONFIG_LOCALVERSION="-db1200" | |
156 | # | ||
157 | # General setup | ||
158 | # | ||
159 | CONFIG_LOCALVERSION="" | ||
160 | CONFIG_LOCALVERSION_AUTO=y | 194 | CONFIG_LOCALVERSION_AUTO=y |
195 | CONFIG_HAVE_KERNEL_GZIP=y | ||
196 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
197 | CONFIG_HAVE_KERNEL_LZMA=y | ||
198 | CONFIG_HAVE_KERNEL_LZO=y | ||
199 | # CONFIG_KERNEL_GZIP is not set | ||
200 | # CONFIG_KERNEL_BZIP2 is not set | ||
201 | CONFIG_KERNEL_LZMA=y | ||
202 | # CONFIG_KERNEL_LZO is not set | ||
161 | CONFIG_SWAP=y | 203 | CONFIG_SWAP=y |
162 | CONFIG_SYSVIPC=y | 204 | CONFIG_SYSVIPC=y |
163 | # CONFIG_IPC_NS is not set | ||
164 | CONFIG_SYSVIPC_SYSCTL=y | 205 | CONFIG_SYSVIPC_SYSCTL=y |
165 | # CONFIG_POSIX_MQUEUE is not set | 206 | CONFIG_POSIX_MQUEUE=y |
207 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
166 | # CONFIG_BSD_PROCESS_ACCT is not set | 208 | # CONFIG_BSD_PROCESS_ACCT is not set |
167 | # CONFIG_TASKSTATS is not set | 209 | # CONFIG_TASKSTATS is not set |
168 | # CONFIG_UTS_NS is not set | ||
169 | # CONFIG_AUDIT is not set | 210 | # CONFIG_AUDIT is not set |
170 | CONFIG_IKCONFIG=y | 211 | |
171 | CONFIG_IKCONFIG_PROC=y | 212 | # |
172 | CONFIG_SYSFS_DEPRECATED=y | 213 | # RCU Subsystem |
214 | # | ||
215 | # CONFIG_TREE_RCU is not set | ||
216 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
217 | CONFIG_TINY_RCU=y | ||
218 | # CONFIG_TREE_RCU_TRACE is not set | ||
219 | # CONFIG_IKCONFIG is not set | ||
220 | CONFIG_LOG_BUF_SHIFT=14 | ||
221 | # CONFIG_GROUP_SCHED is not set | ||
222 | # CONFIG_CGROUPS is not set | ||
223 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
173 | # CONFIG_RELAY is not set | 224 | # CONFIG_RELAY is not set |
174 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 225 | # CONFIG_NAMESPACES is not set |
226 | # CONFIG_BLK_DEV_INITRD is not set | ||
227 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
175 | CONFIG_SYSCTL=y | 228 | CONFIG_SYSCTL=y |
229 | CONFIG_ANON_INODES=y | ||
176 | CONFIG_EMBEDDED=y | 230 | CONFIG_EMBEDDED=y |
177 | CONFIG_SYSCTL_SYSCALL=y | 231 | # CONFIG_SYSCTL_SYSCALL is not set |
178 | CONFIG_KALLSYMS=y | 232 | # CONFIG_KALLSYMS is not set |
179 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
180 | CONFIG_HOTPLUG=y | 233 | CONFIG_HOTPLUG=y |
181 | CONFIG_PRINTK=y | 234 | CONFIG_PRINTK=y |
182 | CONFIG_BUG=y | 235 | CONFIG_BUG=y |
183 | CONFIG_ELF_CORE=y | 236 | CONFIG_ELF_CORE=y |
237 | # CONFIG_PCSPKR_PLATFORM is not set | ||
184 | CONFIG_BASE_FULL=y | 238 | CONFIG_BASE_FULL=y |
185 | CONFIG_FUTEX=y | 239 | CONFIG_FUTEX=y |
186 | CONFIG_EPOLL=y | 240 | CONFIG_EPOLL=y |
241 | CONFIG_SIGNALFD=y | ||
242 | CONFIG_TIMERFD=y | ||
243 | CONFIG_EVENTFD=y | ||
187 | CONFIG_SHMEM=y | 244 | CONFIG_SHMEM=y |
245 | CONFIG_AIO=y | ||
246 | |||
247 | # | ||
248 | # Kernel Performance Events And Counters | ||
249 | # | ||
250 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
251 | # CONFIG_COMPAT_BRK is not set | ||
188 | CONFIG_SLAB=y | 252 | CONFIG_SLAB=y |
189 | CONFIG_VM_EVENT_COUNTERS=y | 253 | # CONFIG_SLUB is not set |
190 | CONFIG_RT_MUTEXES=y | ||
191 | # CONFIG_TINY_SHMEM is not set | ||
192 | CONFIG_BASE_SMALL=0 | ||
193 | # CONFIG_SLOB is not set | 254 | # CONFIG_SLOB is not set |
255 | # CONFIG_PROFILING is not set | ||
256 | CONFIG_HAVE_OPROFILE=y | ||
194 | 257 | ||
195 | # | 258 | # |
196 | # Loadable module support | 259 | # GCOV-based kernel profiling |
197 | # | 260 | # |
261 | # CONFIG_SLOW_WORK is not set | ||
262 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
263 | CONFIG_SLABINFO=y | ||
264 | CONFIG_RT_MUTEXES=y | ||
265 | CONFIG_BASE_SMALL=0 | ||
198 | CONFIG_MODULES=y | 266 | CONFIG_MODULES=y |
267 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
199 | CONFIG_MODULE_UNLOAD=y | 268 | CONFIG_MODULE_UNLOAD=y |
200 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 269 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
201 | CONFIG_MODVERSIONS=y | 270 | # CONFIG_MODVERSIONS is not set |
202 | CONFIG_MODULE_SRCVERSION_ALL=y | 271 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
203 | CONFIG_KMOD=y | ||
204 | |||
205 | # | ||
206 | # Block layer | ||
207 | # | ||
208 | CONFIG_BLOCK=y | 272 | CONFIG_BLOCK=y |
209 | # CONFIG_LBD is not set | 273 | # CONFIG_LBDAF is not set |
210 | # CONFIG_BLK_DEV_IO_TRACE is not set | 274 | # CONFIG_BLK_DEV_BSG is not set |
211 | # CONFIG_LSF is not set | 275 | # CONFIG_BLK_DEV_INTEGRITY is not set |
212 | 276 | ||
213 | # | 277 | # |
214 | # IO Schedulers | 278 | # IO Schedulers |
215 | # | 279 | # |
216 | CONFIG_IOSCHED_NOOP=y | 280 | CONFIG_IOSCHED_NOOP=y |
217 | CONFIG_IOSCHED_AS=y | 281 | # CONFIG_IOSCHED_DEADLINE is not set |
218 | CONFIG_IOSCHED_DEADLINE=y | 282 | # CONFIG_IOSCHED_CFQ is not set |
219 | CONFIG_IOSCHED_CFQ=y | ||
220 | CONFIG_DEFAULT_AS=y | ||
221 | # CONFIG_DEFAULT_DEADLINE is not set | 283 | # CONFIG_DEFAULT_DEADLINE is not set |
222 | # CONFIG_DEFAULT_CFQ is not set | 284 | # CONFIG_DEFAULT_CFQ is not set |
223 | # CONFIG_DEFAULT_NOOP is not set | 285 | CONFIG_DEFAULT_NOOP=y |
224 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 286 | CONFIG_DEFAULT_IOSCHED="noop" |
287 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
288 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
289 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
290 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
293 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
294 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
295 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
296 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
297 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
298 | # CONFIG_INLINE_READ_LOCK is not set | ||
299 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
300 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
302 | CONFIG_INLINE_READ_UNLOCK=y | ||
303 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
304 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
305 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
306 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
307 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
308 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
311 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
312 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
313 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
314 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
315 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
316 | # CONFIG_FREEZER is not set | ||
225 | 317 | ||
226 | # | 318 | # |
227 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 319 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
228 | # | 320 | # |
321 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
229 | CONFIG_MMU=y | 322 | CONFIG_MMU=y |
230 | 323 | CONFIG_PCCARD=y | |
231 | # | 324 | CONFIG_PCMCIA=y |
232 | # PCCARD (PCMCIA/CardBus) support | ||
233 | # | ||
234 | CONFIG_PCCARD=m | ||
235 | # CONFIG_PCMCIA_DEBUG is not set | ||
236 | CONFIG_PCMCIA=m | ||
237 | CONFIG_PCMCIA_LOAD_CIS=y | 325 | CONFIG_PCMCIA_LOAD_CIS=y |
238 | CONFIG_PCMCIA_IOCTL=y | 326 | # CONFIG_PCMCIA_IOCTL is not set |
239 | 327 | ||
240 | # | 328 | # |
241 | # PC-card bridges | 329 | # PC-card bridges |
242 | # | 330 | # |
243 | CONFIG_PCMCIA_AU1X00=m | 331 | # CONFIG_PCMCIA_AU1X00 is not set |
244 | 332 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y | |
245 | # | ||
246 | # PCI Hotplug Support | ||
247 | # | ||
248 | 333 | ||
249 | # | 334 | # |
250 | # Executable file formats | 335 | # Executable file formats |
251 | # | 336 | # |
252 | CONFIG_BINFMT_ELF=y | 337 | CONFIG_BINFMT_ELF=y |
253 | # CONFIG_BINFMT_MISC is not set | 338 | CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y |
339 | # CONFIG_HAVE_AOUT is not set | ||
340 | CONFIG_BINFMT_MISC=y | ||
254 | CONFIG_TRAD_SIGNALS=y | 341 | CONFIG_TRAD_SIGNALS=y |
255 | 342 | ||
256 | # | 343 | # |
257 | # Power management options | 344 | # Power management options |
258 | # | 345 | # |
346 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y | ||
347 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
259 | # CONFIG_PM is not set | 348 | # CONFIG_PM is not set |
260 | |||
261 | # | ||
262 | # Networking | ||
263 | # | ||
264 | CONFIG_NET=y | 349 | CONFIG_NET=y |
265 | 350 | ||
266 | # | 351 | # |
267 | # Networking options | 352 | # Networking options |
268 | # | 353 | # |
269 | # CONFIG_NETDEBUG is not set | ||
270 | CONFIG_PACKET=y | 354 | CONFIG_PACKET=y |
271 | # CONFIG_PACKET_MMAP is not set | 355 | CONFIG_PACKET_MMAP=y |
272 | CONFIG_UNIX=y | 356 | CONFIG_UNIX=y |
273 | CONFIG_XFRM=y | 357 | # CONFIG_NET_KEY is not set |
274 | CONFIG_XFRM_USER=m | ||
275 | # CONFIG_XFRM_SUB_POLICY is not set | ||
276 | CONFIG_XFRM_MIGRATE=y | ||
277 | CONFIG_NET_KEY=y | ||
278 | CONFIG_NET_KEY_MIGRATE=y | ||
279 | CONFIG_INET=y | 358 | CONFIG_INET=y |
280 | CONFIG_IP_MULTICAST=y | 359 | CONFIG_IP_MULTICAST=y |
281 | # CONFIG_IP_ADVANCED_ROUTER is not set | 360 | # CONFIG_IP_ADVANCED_ROUTER is not set |
282 | CONFIG_IP_FIB_HASH=y | 361 | CONFIG_IP_FIB_HASH=y |
283 | # CONFIG_IP_PNP is not set | 362 | CONFIG_IP_PNP=y |
363 | # CONFIG_IP_PNP_DHCP is not set | ||
364 | # CONFIG_IP_PNP_BOOTP is not set | ||
365 | # CONFIG_IP_PNP_RARP is not set | ||
284 | # CONFIG_NET_IPIP is not set | 366 | # CONFIG_NET_IPIP is not set |
285 | # CONFIG_NET_IPGRE is not set | 367 | # CONFIG_NET_IPGRE is not set |
286 | # CONFIG_IP_MROUTE is not set | 368 | # CONFIG_IP_MROUTE is not set |
@@ -291,107 +373,25 @@ CONFIG_IP_FIB_HASH=y | |||
291 | # CONFIG_INET_IPCOMP is not set | 373 | # CONFIG_INET_IPCOMP is not set |
292 | # CONFIG_INET_XFRM_TUNNEL is not set | 374 | # CONFIG_INET_XFRM_TUNNEL is not set |
293 | # CONFIG_INET_TUNNEL is not set | 375 | # CONFIG_INET_TUNNEL is not set |
294 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 376 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
295 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 377 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
296 | CONFIG_INET_XFRM_MODE_BEET=m | 378 | # CONFIG_INET_XFRM_MODE_BEET is not set |
297 | CONFIG_INET_DIAG=y | 379 | CONFIG_INET_LRO=y |
298 | CONFIG_INET_TCP_DIAG=y | 380 | # CONFIG_INET_DIAG is not set |
299 | # CONFIG_TCP_CONG_ADVANCED is not set | 381 | # CONFIG_TCP_CONG_ADVANCED is not set |
300 | CONFIG_TCP_CONG_CUBIC=y | 382 | CONFIG_TCP_CONG_CUBIC=y |
301 | CONFIG_DEFAULT_TCP_CONG="cubic" | 383 | CONFIG_DEFAULT_TCP_CONG="cubic" |
302 | CONFIG_TCP_MD5SIG=y | 384 | # CONFIG_TCP_MD5SIG is not set |
303 | |||
304 | # | ||
305 | # IP: Virtual Server Configuration | ||
306 | # | ||
307 | # CONFIG_IP_VS is not set | ||
308 | # CONFIG_IPV6 is not set | 385 | # CONFIG_IPV6 is not set |
309 | # CONFIG_INET6_XFRM_TUNNEL is not set | 386 | # CONFIG_NETWORK_SECMARK is not set |
310 | # CONFIG_INET6_TUNNEL is not set | 387 | # CONFIG_NETFILTER is not set |
311 | CONFIG_NETWORK_SECMARK=y | ||
312 | CONFIG_NETFILTER=y | ||
313 | # CONFIG_NETFILTER_DEBUG is not set | ||
314 | |||
315 | # | ||
316 | # Core Netfilter Configuration | ||
317 | # | ||
318 | # CONFIG_NETFILTER_NETLINK is not set | ||
319 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
320 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
321 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
322 | CONFIG_NF_CONNTRACK=m | ||
323 | CONFIG_NF_CT_ACCT=y | ||
324 | CONFIG_NF_CONNTRACK_MARK=y | ||
325 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
326 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
327 | CONFIG_NF_CT_PROTO_GRE=m | ||
328 | CONFIG_NF_CT_PROTO_SCTP=m | ||
329 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
330 | CONFIG_NF_CONNTRACK_FTP=m | ||
331 | CONFIG_NF_CONNTRACK_H323=m | ||
332 | CONFIG_NF_CONNTRACK_IRC=m | ||
333 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
334 | CONFIG_NF_CONNTRACK_PPTP=m | ||
335 | CONFIG_NF_CONNTRACK_SANE=m | ||
336 | CONFIG_NF_CONNTRACK_SIP=m | ||
337 | CONFIG_NF_CONNTRACK_TFTP=m | ||
338 | CONFIG_NETFILTER_XTABLES=m | ||
339 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
340 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
341 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
342 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
343 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
344 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
345 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
346 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
347 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
348 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
349 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
350 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
351 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
352 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
353 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
354 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
355 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
356 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
357 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
358 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
359 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
365 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
366 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
367 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
368 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
369 | |||
370 | # | ||
371 | # IP: Netfilter Configuration | ||
372 | # | ||
373 | CONFIG_NF_CONNTRACK_IPV4=m | ||
374 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
375 | # CONFIG_IP_NF_QUEUE is not set | ||
376 | # CONFIG_IP_NF_IPTABLES is not set | ||
377 | # CONFIG_IP_NF_ARPTABLES is not set | ||
378 | |||
379 | # | ||
380 | # DCCP Configuration (EXPERIMENTAL) | ||
381 | # | ||
382 | # CONFIG_IP_DCCP is not set | 388 | # CONFIG_IP_DCCP is not set |
383 | |||
384 | # | ||
385 | # SCTP Configuration (EXPERIMENTAL) | ||
386 | # | ||
387 | # CONFIG_IP_SCTP is not set | 389 | # CONFIG_IP_SCTP is not set |
388 | 390 | # CONFIG_RDS is not set | |
389 | # | ||
390 | # TIPC Configuration (EXPERIMENTAL) | ||
391 | # | ||
392 | # CONFIG_TIPC is not set | 391 | # CONFIG_TIPC is not set |
393 | # CONFIG_ATM is not set | 392 | # CONFIG_ATM is not set |
394 | # CONFIG_BRIDGE is not set | 393 | # CONFIG_BRIDGE is not set |
394 | # CONFIG_NET_DSA is not set | ||
395 | # CONFIG_VLAN_8021Q is not set | 395 | # CONFIG_VLAN_8021Q is not set |
396 | # CONFIG_DECNET is not set | 396 | # CONFIG_DECNET is not set |
397 | # CONFIG_LLC2 is not set | 397 | # CONFIG_LLC2 is not set |
@@ -401,21 +401,24 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
401 | # CONFIG_LAPB is not set | 401 | # CONFIG_LAPB is not set |
402 | # CONFIG_ECONET is not set | 402 | # CONFIG_ECONET is not set |
403 | # CONFIG_WAN_ROUTER is not set | 403 | # CONFIG_WAN_ROUTER is not set |
404 | 404 | # CONFIG_PHONET is not set | |
405 | # | 405 | # CONFIG_IEEE802154 is not set |
406 | # QoS and/or fair queueing | ||
407 | # | ||
408 | # CONFIG_NET_SCHED is not set | 406 | # CONFIG_NET_SCHED is not set |
409 | CONFIG_NET_CLS_ROUTE=y | 407 | # CONFIG_DCB is not set |
410 | 408 | ||
411 | # | 409 | # |
412 | # Network testing | 410 | # Network testing |
413 | # | 411 | # |
414 | # CONFIG_NET_PKTGEN is not set | 412 | # CONFIG_NET_PKTGEN is not set |
415 | # CONFIG_HAMRADIO is not set | 413 | # CONFIG_HAMRADIO is not set |
414 | # CONFIG_CAN is not set | ||
416 | # CONFIG_IRDA is not set | 415 | # CONFIG_IRDA is not set |
417 | # CONFIG_BT is not set | 416 | # CONFIG_BT is not set |
418 | # CONFIG_IEEE80211 is not set | 417 | # CONFIG_AF_RXRPC is not set |
418 | # CONFIG_WIRELESS is not set | ||
419 | # CONFIG_WIMAX is not set | ||
420 | # CONFIG_RFKILL is not set | ||
421 | # CONFIG_NET_9P is not set | ||
419 | 422 | ||
420 | # | 423 | # |
421 | # Device Drivers | 424 | # Device Drivers |
@@ -424,25 +427,25 @@ CONFIG_NET_CLS_ROUTE=y | |||
424 | # | 427 | # |
425 | # Generic Driver Options | 428 | # Generic Driver Options |
426 | # | 429 | # |
430 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
431 | # CONFIG_DEVTMPFS is not set | ||
427 | CONFIG_STANDALONE=y | 432 | CONFIG_STANDALONE=y |
428 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 433 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
429 | CONFIG_FW_LOADER=y | 434 | CONFIG_FW_LOADER=y |
435 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
436 | CONFIG_EXTRA_FIRMWARE="" | ||
437 | # CONFIG_DEBUG_DRIVER is not set | ||
438 | # CONFIG_DEBUG_DEVRES is not set | ||
430 | # CONFIG_SYS_HYPERVISOR is not set | 439 | # CONFIG_SYS_HYPERVISOR is not set |
431 | |||
432 | # | ||
433 | # Connector - unified userspace <-> kernelspace linker | ||
434 | # | ||
435 | # CONFIG_CONNECTOR is not set | 440 | # CONFIG_CONNECTOR is not set |
436 | |||
437 | # | ||
438 | # Memory Technology Devices (MTD) | ||
439 | # | ||
440 | CONFIG_MTD=y | 441 | CONFIG_MTD=y |
441 | # CONFIG_MTD_DEBUG is not set | 442 | # CONFIG_MTD_DEBUG is not set |
443 | # CONFIG_MTD_TESTS is not set | ||
442 | # CONFIG_MTD_CONCAT is not set | 444 | # CONFIG_MTD_CONCAT is not set |
443 | CONFIG_MTD_PARTITIONS=y | 445 | CONFIG_MTD_PARTITIONS=y |
444 | # CONFIG_MTD_REDBOOT_PARTS is not set | 446 | # CONFIG_MTD_REDBOOT_PARTS is not set |
445 | # CONFIG_MTD_CMDLINE_PARTS is not set | 447 | CONFIG_MTD_CMDLINE_PARTS=y |
448 | # CONFIG_MTD_AR7_PARTS is not set | ||
446 | 449 | ||
447 | # | 450 | # |
448 | # User Modules And Translation Layers | 451 | # User Modules And Translation Layers |
@@ -455,6 +458,7 @@ CONFIG_MTD_BLOCK=y | |||
455 | # CONFIG_INFTL is not set | 458 | # CONFIG_INFTL is not set |
456 | # CONFIG_RFD_FTL is not set | 459 | # CONFIG_RFD_FTL is not set |
457 | # CONFIG_SSFDC is not set | 460 | # CONFIG_SSFDC is not set |
461 | # CONFIG_MTD_OOPS is not set | ||
458 | 462 | ||
459 | # | 463 | # |
460 | # RAM/ROM/Flash chip drivers | 464 | # RAM/ROM/Flash chip drivers |
@@ -480,19 +484,21 @@ CONFIG_MTD_CFI_UTIL=y | |||
480 | # CONFIG_MTD_RAM is not set | 484 | # CONFIG_MTD_RAM is not set |
481 | # CONFIG_MTD_ROM is not set | 485 | # CONFIG_MTD_ROM is not set |
482 | # CONFIG_MTD_ABSENT is not set | 486 | # CONFIG_MTD_ABSENT is not set |
483 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
484 | 487 | ||
485 | # | 488 | # |
486 | # Mapping drivers for chip access | 489 | # Mapping drivers for chip access |
487 | # | 490 | # |
488 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 491 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
489 | # CONFIG_MTD_PHYSMAP is not set | 492 | CONFIG_MTD_PHYSMAP=y |
490 | CONFIG_MTD_ALCHEMY=y | 493 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
491 | # CONFIG_MTD_PLATRAM is not set | 494 | # CONFIG_MTD_PLATRAM is not set |
492 | 495 | ||
493 | # | 496 | # |
494 | # Self-contained MTD device drivers | 497 | # Self-contained MTD device drivers |
495 | # | 498 | # |
499 | # CONFIG_MTD_DATAFLASH is not set | ||
500 | # CONFIG_MTD_M25P80 is not set | ||
501 | # CONFIG_MTD_SST25L is not set | ||
496 | # CONFIG_MTD_SLRAM is not set | 502 | # CONFIG_MTD_SLRAM is not set |
497 | # CONFIG_MTD_PHRAM is not set | 503 | # CONFIG_MTD_PHRAM is not set |
498 | # CONFIG_MTD_MTDRAM is not set | 504 | # CONFIG_MTD_MTDRAM is not set |
@@ -504,224 +510,134 @@ CONFIG_MTD_ALCHEMY=y | |||
504 | # CONFIG_MTD_DOC2000 is not set | 510 | # CONFIG_MTD_DOC2000 is not set |
505 | # CONFIG_MTD_DOC2001 is not set | 511 | # CONFIG_MTD_DOC2001 is not set |
506 | # CONFIG_MTD_DOC2001PLUS is not set | 512 | # CONFIG_MTD_DOC2001PLUS is not set |
507 | |||
508 | # | ||
509 | # NAND Flash Device Drivers | ||
510 | # | ||
511 | CONFIG_MTD_NAND=y | 513 | CONFIG_MTD_NAND=y |
512 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | 514 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set |
513 | # CONFIG_MTD_NAND_ECC_SMC is not set | 515 | # CONFIG_MTD_NAND_ECC_SMC is not set |
516 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set | ||
514 | CONFIG_MTD_NAND_IDS=y | 517 | CONFIG_MTD_NAND_IDS=y |
515 | # CONFIG_MTD_NAND_AU1550 is not set | 518 | # CONFIG_MTD_NAND_AU1550 is not set |
516 | # CONFIG_MTD_NAND_DISKONCHIP is not set | 519 | # CONFIG_MTD_NAND_DISKONCHIP is not set |
517 | # CONFIG_MTD_NAND_NANDSIM is not set | 520 | # CONFIG_MTD_NAND_NANDSIM is not set |
518 | 521 | CONFIG_MTD_NAND_PLATFORM=y | |
519 | # | 522 | # CONFIG_MTD_ALAUDA is not set |
520 | # OneNAND Flash Device Drivers | ||
521 | # | ||
522 | # CONFIG_MTD_ONENAND is not set | 523 | # CONFIG_MTD_ONENAND is not set |
523 | 524 | ||
524 | # | 525 | # |
525 | # Parallel port support | 526 | # LPDDR flash memory drivers |
526 | # | 527 | # |
527 | # CONFIG_PARPORT is not set | 528 | # CONFIG_MTD_LPDDR is not set |
528 | 529 | ||
529 | # | 530 | # |
530 | # Plug and Play support | 531 | # UBI - Unsorted block images |
531 | # | ||
532 | # CONFIG_PNPACPI is not set | ||
533 | |||
534 | # | ||
535 | # Block devices | ||
536 | # | 532 | # |
533 | # CONFIG_MTD_UBI is not set | ||
534 | # CONFIG_PARPORT is not set | ||
535 | CONFIG_BLK_DEV=y | ||
537 | # CONFIG_BLK_DEV_COW_COMMON is not set | 536 | # CONFIG_BLK_DEV_COW_COMMON is not set |
538 | CONFIG_BLK_DEV_LOOP=y | 537 | CONFIG_BLK_DEV_LOOP=y |
539 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 538 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
540 | # CONFIG_BLK_DEV_NBD is not set | ||
541 | CONFIG_BLK_DEV_RAM=y | ||
542 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
543 | CONFIG_BLK_DEV_RAM_SIZE=4096 | ||
544 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | ||
545 | # CONFIG_BLK_DEV_INITRD is not set | ||
546 | # CONFIG_CDROM_PKTCDVD is not set | ||
547 | # CONFIG_ATA_OVER_ETH is not set | ||
548 | 539 | ||
549 | # | 540 | # |
550 | # Misc devices | 541 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected |
551 | # | ||
552 | |||
553 | # | ||
554 | # ATA/ATAPI/MFM/RLL support | ||
555 | # | 542 | # |
543 | # CONFIG_BLK_DEV_NBD is not set | ||
544 | CONFIG_BLK_DEV_UB=y | ||
545 | # CONFIG_BLK_DEV_RAM is not set | ||
546 | # CONFIG_CDROM_PKTCDVD is not set | ||
547 | # CONFIG_ATA_OVER_ETH is not set | ||
548 | # CONFIG_BLK_DEV_HD is not set | ||
549 | # CONFIG_MISC_DEVICES is not set | ||
550 | CONFIG_HAVE_IDE=y | ||
556 | CONFIG_IDE=y | 551 | CONFIG_IDE=y |
557 | CONFIG_IDE_MAX_HWIFS=4 | ||
558 | CONFIG_BLK_DEV_IDE=y | ||
559 | 552 | ||
560 | # | 553 | # |
561 | # Please see Documentation/ide.txt for help/info on IDE drives | 554 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
562 | # | 555 | # |
556 | CONFIG_IDE_XFER_MODE=y | ||
557 | CONFIG_IDE_ATAPI=y | ||
563 | # CONFIG_BLK_DEV_IDE_SATA is not set | 558 | # CONFIG_BLK_DEV_IDE_SATA is not set |
564 | CONFIG_BLK_DEV_IDEDISK=y | 559 | CONFIG_IDE_GD=y |
565 | CONFIG_IDEDISK_MULTI_MODE=y | 560 | CONFIG_IDE_GD_ATA=y |
566 | CONFIG_BLK_DEV_IDECS=m | 561 | # CONFIG_IDE_GD_ATAPI is not set |
567 | # CONFIG_BLK_DEV_IDECD is not set | 562 | CONFIG_BLK_DEV_IDECS=y |
563 | CONFIG_BLK_DEV_IDECD=y | ||
564 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | ||
568 | # CONFIG_BLK_DEV_IDETAPE is not set | 565 | # CONFIG_BLK_DEV_IDETAPE is not set |
569 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | 566 | CONFIG_IDE_TASK_IOCTL=y |
570 | # CONFIG_BLK_DEV_IDESCSI is not set | 567 | # CONFIG_IDE_PROC_FS is not set |
571 | # CONFIG_IDE_TASK_IOCTL is not set | ||
572 | 568 | ||
573 | # | 569 | # |
574 | # IDE chipset support/bugfixes | 570 | # IDE chipset support/bugfixes |
575 | # | 571 | # |
576 | CONFIG_IDE_GENERIC=y | 572 | # CONFIG_IDE_GENERIC is not set |
573 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
577 | CONFIG_BLK_DEV_IDE_AU1XXX=y | 574 | CONFIG_BLK_DEV_IDE_AU1XXX=y |
578 | CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA=y | 575 | CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA=y |
579 | # CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA is not set | 576 | # CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA is not set |
580 | CONFIG_BLK_DEV_IDE_AU1XXX_SEQTS_PER_RQ=128 | ||
581 | # CONFIG_IDE_ARM is not set | ||
582 | # CONFIG_BLK_DEV_IDEDMA is not set | 577 | # CONFIG_BLK_DEV_IDEDMA is not set |
583 | # CONFIG_IDEDMA_AUTO is not set | ||
584 | # CONFIG_BLK_DEV_HD is not set | ||
585 | 578 | ||
586 | # | 579 | # |
587 | # SCSI device support | 580 | # SCSI device support |
588 | # | 581 | # |
589 | # CONFIG_RAID_ATTRS is not set | 582 | # CONFIG_RAID_ATTRS is not set |
590 | CONFIG_SCSI=y | 583 | # CONFIG_SCSI is not set |
591 | CONFIG_SCSI_TGT=m | 584 | # CONFIG_SCSI_DMA is not set |
592 | # CONFIG_SCSI_NETLINK is not set | 585 | # CONFIG_SCSI_NETLINK is not set |
593 | CONFIG_SCSI_PROC_FS=y | ||
594 | |||
595 | # | ||
596 | # SCSI support type (disk, tape, CD-ROM) | ||
597 | # | ||
598 | CONFIG_BLK_DEV_SD=y | ||
599 | # CONFIG_CHR_DEV_ST is not set | ||
600 | # CONFIG_CHR_DEV_OSST is not set | ||
601 | CONFIG_BLK_DEV_SR=y | ||
602 | # CONFIG_BLK_DEV_SR_VENDOR is not set | ||
603 | CONFIG_CHR_DEV_SG=y | ||
604 | # CONFIG_CHR_DEV_SCH is not set | ||
605 | |||
606 | # | ||
607 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
608 | # | ||
609 | CONFIG_SCSI_MULTI_LUN=y | ||
610 | # CONFIG_SCSI_CONSTANTS is not set | ||
611 | # CONFIG_SCSI_LOGGING is not set | ||
612 | CONFIG_SCSI_SCAN_ASYNC=y | ||
613 | |||
614 | # | ||
615 | # SCSI Transports | ||
616 | # | ||
617 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
618 | # CONFIG_SCSI_FC_ATTRS is not set | ||
619 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
620 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
621 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
622 | |||
623 | # | ||
624 | # SCSI low-level drivers | ||
625 | # | ||
626 | # CONFIG_ISCSI_TCP is not set | ||
627 | # CONFIG_SCSI_DEBUG is not set | ||
628 | |||
629 | # | ||
630 | # PCMCIA SCSI adapter support | ||
631 | # | ||
632 | # CONFIG_PCMCIA_AHA152X is not set | ||
633 | # CONFIG_PCMCIA_FDOMAIN is not set | ||
634 | # CONFIG_PCMCIA_NINJA_SCSI is not set | ||
635 | # CONFIG_PCMCIA_QLOGIC is not set | ||
636 | # CONFIG_PCMCIA_SYM53C500 is not set | ||
637 | |||
638 | # | ||
639 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
640 | # | ||
641 | # CONFIG_ATA is not set | 586 | # CONFIG_ATA is not set |
642 | |||
643 | # | ||
644 | # Multi-device support (RAID and LVM) | ||
645 | # | ||
646 | # CONFIG_MD is not set | 587 | # CONFIG_MD is not set |
647 | |||
648 | # | ||
649 | # Fusion MPT device support | ||
650 | # | ||
651 | # CONFIG_FUSION is not set | ||
652 | |||
653 | # | ||
654 | # IEEE 1394 (FireWire) support | ||
655 | # | ||
656 | |||
657 | # | ||
658 | # I2O device support | ||
659 | # | ||
660 | |||
661 | # | ||
662 | # Network device support | ||
663 | # | ||
664 | CONFIG_NETDEVICES=y | 588 | CONFIG_NETDEVICES=y |
665 | # CONFIG_DUMMY is not set | 589 | # CONFIG_DUMMY is not set |
666 | # CONFIG_BONDING is not set | 590 | # CONFIG_BONDING is not set |
591 | # CONFIG_MACVLAN is not set | ||
667 | # CONFIG_EQUALIZER is not set | 592 | # CONFIG_EQUALIZER is not set |
668 | # CONFIG_TUN is not set | 593 | # CONFIG_TUN is not set |
669 | 594 | # CONFIG_VETH is not set | |
670 | # | ||
671 | # PHY device support | ||
672 | # | ||
673 | # CONFIG_PHYLIB is not set | 595 | # CONFIG_PHYLIB is not set |
674 | |||
675 | # | ||
676 | # Ethernet (10 or 100Mbit) | ||
677 | # | ||
678 | CONFIG_NET_ETHERNET=y | 596 | CONFIG_NET_ETHERNET=y |
679 | CONFIG_MII=m | 597 | CONFIG_MII=y |
598 | # CONFIG_AX88796 is not set | ||
680 | # CONFIG_MIPS_AU1X00_ENET is not set | 599 | # CONFIG_MIPS_AU1X00_ENET is not set |
681 | # CONFIG_SMC91X is not set | 600 | CONFIG_SMC91X=y |
682 | # CONFIG_DM9000 is not set | 601 | # CONFIG_DM9000 is not set |
683 | 602 | # CONFIG_ENC28J60 is not set | |
684 | # | 603 | # CONFIG_ETHOC is not set |
685 | # Ethernet (1000 Mbit) | 604 | # CONFIG_SMSC911X is not set |
686 | # | 605 | # CONFIG_DNET is not set |
687 | 606 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | |
688 | # | 607 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
689 | # Ethernet (10000 Mbit) | 608 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
690 | # | 609 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
691 | 610 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | |
692 | # | 611 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set |
693 | # Token Ring devices | 612 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set |
694 | # | 613 | # CONFIG_B44 is not set |
695 | 614 | # CONFIG_KS8842 is not set | |
696 | # | 615 | # CONFIG_KS8851 is not set |
697 | # Wireless LAN (non-hamradio) | 616 | # CONFIG_KS8851_MLL is not set |
698 | # | 617 | # CONFIG_NETDEV_1000 is not set |
699 | # CONFIG_NET_RADIO is not set | 618 | # CONFIG_NETDEV_10000 is not set |
700 | 619 | # CONFIG_WLAN is not set | |
701 | # | 620 | |
702 | # PCMCIA network device support | 621 | # |
703 | # | 622 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
623 | # | ||
624 | |||
625 | # | ||
626 | # USB Network Adapters | ||
627 | # | ||
628 | # CONFIG_USB_CATC is not set | ||
629 | # CONFIG_USB_KAWETH is not set | ||
630 | # CONFIG_USB_PEGASUS is not set | ||
631 | # CONFIG_USB_RTL8150 is not set | ||
632 | # CONFIG_USB_USBNET is not set | ||
704 | # CONFIG_NET_PCMCIA is not set | 633 | # CONFIG_NET_PCMCIA is not set |
705 | |||
706 | # | ||
707 | # Wan interfaces | ||
708 | # | ||
709 | # CONFIG_WAN is not set | 634 | # CONFIG_WAN is not set |
710 | # CONFIG_PPP is not set | 635 | # CONFIG_PPP is not set |
711 | # CONFIG_SLIP is not set | 636 | # CONFIG_SLIP is not set |
712 | # CONFIG_SHAPER is not set | ||
713 | # CONFIG_NETCONSOLE is not set | 637 | # CONFIG_NETCONSOLE is not set |
714 | # CONFIG_NETPOLL is not set | 638 | # CONFIG_NETPOLL is not set |
715 | # CONFIG_NET_POLL_CONTROLLER is not set | 639 | # CONFIG_NET_POLL_CONTROLLER is not set |
716 | |||
717 | # | ||
718 | # ISDN subsystem | ||
719 | # | ||
720 | # CONFIG_ISDN is not set | 640 | # CONFIG_ISDN is not set |
721 | |||
722 | # | ||
723 | # Telephony Support | ||
724 | # | ||
725 | # CONFIG_PHONE is not set | 641 | # CONFIG_PHONE is not set |
726 | 642 | ||
727 | # | 643 | # |
@@ -729,16 +645,14 @@ CONFIG_MII=m | |||
729 | # | 645 | # |
730 | CONFIG_INPUT=y | 646 | CONFIG_INPUT=y |
731 | # CONFIG_INPUT_FF_MEMLESS is not set | 647 | # CONFIG_INPUT_FF_MEMLESS is not set |
648 | # CONFIG_INPUT_POLLDEV is not set | ||
649 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
732 | 650 | ||
733 | # | 651 | # |
734 | # Userland interfaces | 652 | # Userland interfaces |
735 | # | 653 | # |
736 | CONFIG_INPUT_MOUSEDEV=y | 654 | # CONFIG_INPUT_MOUSEDEV is not set |
737 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
738 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
739 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
740 | # CONFIG_INPUT_JOYDEV is not set | 655 | # CONFIG_INPUT_JOYDEV is not set |
741 | # CONFIG_INPUT_TSDEV is not set | ||
742 | CONFIG_INPUT_EVDEV=y | 656 | CONFIG_INPUT_EVDEV=y |
743 | # CONFIG_INPUT_EVBUG is not set | 657 | # CONFIG_INPUT_EVBUG is not set |
744 | 658 | ||
@@ -748,28 +662,26 @@ CONFIG_INPUT_EVDEV=y | |||
748 | # CONFIG_INPUT_KEYBOARD is not set | 662 | # CONFIG_INPUT_KEYBOARD is not set |
749 | # CONFIG_INPUT_MOUSE is not set | 663 | # CONFIG_INPUT_MOUSE is not set |
750 | # CONFIG_INPUT_JOYSTICK is not set | 664 | # CONFIG_INPUT_JOYSTICK is not set |
665 | # CONFIG_INPUT_TABLET is not set | ||
751 | # CONFIG_INPUT_TOUCHSCREEN is not set | 666 | # CONFIG_INPUT_TOUCHSCREEN is not set |
752 | # CONFIG_INPUT_MISC is not set | 667 | # CONFIG_INPUT_MISC is not set |
753 | 668 | ||
754 | # | 669 | # |
755 | # Hardware I/O ports | 670 | # Hardware I/O ports |
756 | # | 671 | # |
757 | CONFIG_SERIO=y | 672 | # CONFIG_SERIO is not set |
758 | # CONFIG_SERIO_I8042 is not set | ||
759 | CONFIG_SERIO_SERPORT=y | ||
760 | # CONFIG_SERIO_LIBPS2 is not set | ||
761 | CONFIG_SERIO_RAW=y | ||
762 | # CONFIG_GAMEPORT is not set | 673 | # CONFIG_GAMEPORT is not set |
763 | 674 | ||
764 | # | 675 | # |
765 | # Character devices | 676 | # Character devices |
766 | # | 677 | # |
767 | CONFIG_VT=y | 678 | CONFIG_VT=y |
679 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
768 | CONFIG_VT_CONSOLE=y | 680 | CONFIG_VT_CONSOLE=y |
769 | CONFIG_HW_CONSOLE=y | 681 | CONFIG_HW_CONSOLE=y |
770 | CONFIG_VT_HW_CONSOLE_BINDING=y | 682 | CONFIG_VT_HW_CONSOLE_BINDING=y |
683 | CONFIG_DEVKMEM=y | ||
771 | # CONFIG_SERIAL_NONSTANDARD is not set | 684 | # CONFIG_SERIAL_NONSTANDARD is not set |
772 | # CONFIG_AU1X00_GPIO is not set | ||
773 | 685 | ||
774 | # | 686 | # |
775 | # Serial drivers | 687 | # Serial drivers |
@@ -777,33 +689,22 @@ CONFIG_VT_HW_CONSOLE_BINDING=y | |||
777 | CONFIG_SERIAL_8250=y | 689 | CONFIG_SERIAL_8250=y |
778 | CONFIG_SERIAL_8250_CONSOLE=y | 690 | CONFIG_SERIAL_8250_CONSOLE=y |
779 | # CONFIG_SERIAL_8250_CS is not set | 691 | # CONFIG_SERIAL_8250_CS is not set |
780 | CONFIG_SERIAL_8250_NR_UARTS=4 | 692 | CONFIG_SERIAL_8250_NR_UARTS=2 |
781 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 693 | CONFIG_SERIAL_8250_RUNTIME_UARTS=2 |
782 | # CONFIG_SERIAL_8250_EXTENDED is not set | 694 | # CONFIG_SERIAL_8250_EXTENDED is not set |
783 | CONFIG_SERIAL_8250_AU1X00=y | 695 | CONFIG_SERIAL_8250_AU1X00=y |
784 | 696 | ||
785 | # | 697 | # |
786 | # Non-8250 serial port support | 698 | # Non-8250 serial port support |
787 | # | 699 | # |
700 | # CONFIG_SERIAL_MAX3100 is not set | ||
788 | CONFIG_SERIAL_CORE=y | 701 | CONFIG_SERIAL_CORE=y |
789 | CONFIG_SERIAL_CORE_CONSOLE=y | 702 | CONFIG_SERIAL_CORE_CONSOLE=y |
790 | CONFIG_UNIX98_PTYS=y | 703 | CONFIG_UNIX98_PTYS=y |
791 | CONFIG_LEGACY_PTYS=y | 704 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
792 | CONFIG_LEGACY_PTY_COUNT=256 | 705 | # CONFIG_LEGACY_PTYS is not set |
793 | |||
794 | # | ||
795 | # IPMI | ||
796 | # | ||
797 | # CONFIG_IPMI_HANDLER is not set | 706 | # CONFIG_IPMI_HANDLER is not set |
798 | |||
799 | # | ||
800 | # Watchdog Cards | ||
801 | # | ||
802 | # CONFIG_WATCHDOG is not set | ||
803 | # CONFIG_HW_RANDOM is not set | 707 | # CONFIG_HW_RANDOM is not set |
804 | # CONFIG_RTC is not set | ||
805 | # CONFIG_GEN_RTC is not set | ||
806 | # CONFIG_DTLK is not set | ||
807 | # CONFIG_R3964 is not set | 708 | # CONFIG_R3964 is not set |
808 | 709 | ||
809 | # | 710 | # |
@@ -812,223 +713,624 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
812 | # CONFIG_SYNCLINK_CS is not set | 713 | # CONFIG_SYNCLINK_CS is not set |
813 | # CONFIG_CARDMAN_4000 is not set | 714 | # CONFIG_CARDMAN_4000 is not set |
814 | # CONFIG_CARDMAN_4040 is not set | 715 | # CONFIG_CARDMAN_4040 is not set |
716 | # CONFIG_IPWIRELESS is not set | ||
815 | # CONFIG_RAW_DRIVER is not set | 717 | # CONFIG_RAW_DRIVER is not set |
718 | # CONFIG_TCG_TPM is not set | ||
719 | CONFIG_I2C=y | ||
720 | CONFIG_I2C_BOARDINFO=y | ||
721 | # CONFIG_I2C_COMPAT is not set | ||
722 | CONFIG_I2C_CHARDEV=y | ||
723 | # CONFIG_I2C_HELPER_AUTO is not set | ||
816 | 724 | ||
817 | # | 725 | # |
818 | # TPM devices | 726 | # I2C Algorithms |
819 | # | 727 | # |
820 | # CONFIG_TCG_TPM is not set | 728 | # CONFIG_I2C_ALGOBIT is not set |
729 | # CONFIG_I2C_ALGOPCF is not set | ||
730 | # CONFIG_I2C_ALGOPCA is not set | ||
821 | 731 | ||
822 | # | 732 | # |
823 | # I2C support | 733 | # I2C Hardware Bus support |
824 | # | 734 | # |
825 | # CONFIG_I2C is not set | ||
826 | 735 | ||
827 | # | 736 | # |
828 | # SPI support | 737 | # I2C system bus drivers (mostly embedded / system-on-chip) |
829 | # | 738 | # |
830 | # CONFIG_SPI is not set | 739 | CONFIG_I2C_AU1550=y |
831 | # CONFIG_SPI_MASTER is not set | 740 | # CONFIG_I2C_GPIO is not set |
741 | # CONFIG_I2C_OCORES is not set | ||
742 | # CONFIG_I2C_SIMTEC is not set | ||
832 | 743 | ||
833 | # | 744 | # |
834 | # Dallas's 1-wire bus | 745 | # External I2C/SMBus adapter drivers |
835 | # | 746 | # |
836 | # CONFIG_W1 is not set | 747 | # CONFIG_I2C_PARPORT_LIGHT is not set |
748 | # CONFIG_I2C_TAOS_EVM is not set | ||
749 | # CONFIG_I2C_TINY_USB is not set | ||
837 | 750 | ||
838 | # | 751 | # |
839 | # Hardware Monitoring support | 752 | # Other I2C/SMBus bus drivers |
840 | # | 753 | # |
841 | # CONFIG_HWMON is not set | 754 | # CONFIG_I2C_PCA_PLATFORM is not set |
842 | # CONFIG_HWMON_VID is not set | 755 | # CONFIG_I2C_STUB is not set |
843 | 756 | ||
844 | # | 757 | # |
845 | # Multimedia devices | 758 | # Miscellaneous I2C Chip support |
846 | # | 759 | # |
847 | # CONFIG_VIDEO_DEV is not set | 760 | # CONFIG_SENSORS_TSL2550 is not set |
761 | # CONFIG_I2C_DEBUG_CORE is not set | ||
762 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
763 | # CONFIG_I2C_DEBUG_BUS is not set | ||
764 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
765 | CONFIG_SPI=y | ||
766 | # CONFIG_SPI_DEBUG is not set | ||
767 | CONFIG_SPI_MASTER=y | ||
848 | 768 | ||
849 | # | 769 | # |
850 | # Digital Video Broadcasting Devices | 770 | # SPI Master Controller Drivers |
851 | # | 771 | # |
852 | # CONFIG_DVB is not set | 772 | CONFIG_SPI_AU1550=y |
773 | CONFIG_SPI_BITBANG=y | ||
774 | # CONFIG_SPI_GPIO is not set | ||
775 | # CONFIG_SPI_XILINX is not set | ||
776 | # CONFIG_SPI_DESIGNWARE is not set | ||
777 | |||
778 | # | ||
779 | # SPI Protocol Masters | ||
780 | # | ||
781 | # CONFIG_SPI_SPIDEV is not set | ||
782 | # CONFIG_SPI_TLE62X0 is not set | ||
783 | |||
784 | # | ||
785 | # PPS support | ||
786 | # | ||
787 | # CONFIG_PPS is not set | ||
788 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
789 | CONFIG_GPIOLIB=y | ||
790 | # CONFIG_DEBUG_GPIO is not set | ||
791 | CONFIG_GPIO_SYSFS=y | ||
792 | |||
793 | # | ||
794 | # Memory mapped GPIO expanders: | ||
795 | # | ||
796 | |||
797 | # | ||
798 | # I2C GPIO expanders: | ||
799 | # | ||
800 | # CONFIG_GPIO_MAX732X is not set | ||
801 | # CONFIG_GPIO_PCA953X is not set | ||
802 | # CONFIG_GPIO_PCF857X is not set | ||
803 | # CONFIG_GPIO_ADP5588 is not set | ||
804 | |||
805 | # | ||
806 | # PCI GPIO expanders: | ||
807 | # | ||
808 | |||
809 | # | ||
810 | # SPI GPIO expanders: | ||
811 | # | ||
812 | # CONFIG_GPIO_MAX7301 is not set | ||
813 | # CONFIG_GPIO_MCP23S08 is not set | ||
814 | # CONFIG_GPIO_MC33880 is not set | ||
815 | |||
816 | # | ||
817 | # AC97 GPIO expanders: | ||
818 | # | ||
819 | # CONFIG_W1 is not set | ||
820 | # CONFIG_POWER_SUPPLY is not set | ||
821 | CONFIG_HWMON=y | ||
822 | CONFIG_HWMON_VID=y | ||
823 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
824 | |||
825 | # | ||
826 | # Native drivers | ||
827 | # | ||
828 | # CONFIG_SENSORS_AD7414 is not set | ||
829 | # CONFIG_SENSORS_AD7418 is not set | ||
830 | # CONFIG_SENSORS_ADCXX is not set | ||
831 | # CONFIG_SENSORS_ADM1021 is not set | ||
832 | CONFIG_SENSORS_ADM1025=y | ||
833 | # CONFIG_SENSORS_ADM1026 is not set | ||
834 | # CONFIG_SENSORS_ADM1029 is not set | ||
835 | # CONFIG_SENSORS_ADM1031 is not set | ||
836 | # CONFIG_SENSORS_ADM9240 is not set | ||
837 | # CONFIG_SENSORS_ADT7462 is not set | ||
838 | # CONFIG_SENSORS_ADT7470 is not set | ||
839 | # CONFIG_SENSORS_ADT7473 is not set | ||
840 | # CONFIG_SENSORS_ADT7475 is not set | ||
841 | # CONFIG_SENSORS_ATXP1 is not set | ||
842 | # CONFIG_SENSORS_DS1621 is not set | ||
843 | # CONFIG_SENSORS_F71805F is not set | ||
844 | # CONFIG_SENSORS_F71882FG is not set | ||
845 | # CONFIG_SENSORS_F75375S is not set | ||
846 | # CONFIG_SENSORS_G760A is not set | ||
847 | # CONFIG_SENSORS_GL518SM is not set | ||
848 | # CONFIG_SENSORS_GL520SM is not set | ||
849 | # CONFIG_SENSORS_IT87 is not set | ||
850 | # CONFIG_SENSORS_LM63 is not set | ||
851 | CONFIG_SENSORS_LM70=y | ||
852 | # CONFIG_SENSORS_LM73 is not set | ||
853 | # CONFIG_SENSORS_LM75 is not set | ||
854 | # CONFIG_SENSORS_LM77 is not set | ||
855 | # CONFIG_SENSORS_LM78 is not set | ||
856 | # CONFIG_SENSORS_LM80 is not set | ||
857 | # CONFIG_SENSORS_LM83 is not set | ||
858 | # CONFIG_SENSORS_LM85 is not set | ||
859 | # CONFIG_SENSORS_LM87 is not set | ||
860 | # CONFIG_SENSORS_LM90 is not set | ||
861 | # CONFIG_SENSORS_LM92 is not set | ||
862 | # CONFIG_SENSORS_LM93 is not set | ||
863 | # CONFIG_SENSORS_LTC4215 is not set | ||
864 | # CONFIG_SENSORS_LTC4245 is not set | ||
865 | # CONFIG_SENSORS_LM95241 is not set | ||
866 | # CONFIG_SENSORS_MAX1111 is not set | ||
867 | # CONFIG_SENSORS_MAX1619 is not set | ||
868 | # CONFIG_SENSORS_MAX6650 is not set | ||
869 | # CONFIG_SENSORS_PC87360 is not set | ||
870 | # CONFIG_SENSORS_PC87427 is not set | ||
871 | # CONFIG_SENSORS_PCF8591 is not set | ||
872 | # CONFIG_SENSORS_SHT15 is not set | ||
873 | # CONFIG_SENSORS_DME1737 is not set | ||
874 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
875 | # CONFIG_SENSORS_SMSC47M192 is not set | ||
876 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
877 | # CONFIG_SENSORS_ADS7828 is not set | ||
878 | # CONFIG_SENSORS_AMC6821 is not set | ||
879 | # CONFIG_SENSORS_THMC50 is not set | ||
880 | # CONFIG_SENSORS_TMP401 is not set | ||
881 | # CONFIG_SENSORS_TMP421 is not set | ||
882 | # CONFIG_SENSORS_VT1211 is not set | ||
883 | # CONFIG_SENSORS_W83781D is not set | ||
884 | # CONFIG_SENSORS_W83791D is not set | ||
885 | # CONFIG_SENSORS_W83792D is not set | ||
886 | # CONFIG_SENSORS_W83793 is not set | ||
887 | # CONFIG_SENSORS_W83L785TS is not set | ||
888 | # CONFIG_SENSORS_W83L786NG is not set | ||
889 | # CONFIG_SENSORS_W83627HF is not set | ||
890 | # CONFIG_SENSORS_W83627EHF is not set | ||
891 | # CONFIG_SENSORS_LIS3_SPI is not set | ||
892 | # CONFIG_SENSORS_LIS3_I2C is not set | ||
893 | # CONFIG_THERMAL is not set | ||
894 | # CONFIG_WATCHDOG is not set | ||
895 | CONFIG_SSB_POSSIBLE=y | ||
896 | |||
897 | # | ||
898 | # Sonics Silicon Backplane | ||
899 | # | ||
900 | # CONFIG_SSB is not set | ||
901 | |||
902 | # | ||
903 | # Multifunction device drivers | ||
904 | # | ||
905 | # CONFIG_MFD_CORE is not set | ||
906 | # CONFIG_MFD_SM501 is not set | ||
907 | # CONFIG_HTC_PASIC3 is not set | ||
908 | # CONFIG_UCB1400_CORE is not set | ||
909 | # CONFIG_TPS65010 is not set | ||
910 | # CONFIG_TWL4030_CORE is not set | ||
911 | # CONFIG_MFD_TMIO is not set | ||
912 | # CONFIG_PMIC_DA903X is not set | ||
913 | # CONFIG_PMIC_ADP5520 is not set | ||
914 | # CONFIG_MFD_WM8400 is not set | ||
915 | # CONFIG_MFD_WM831X is not set | ||
916 | # CONFIG_MFD_WM8350_I2C is not set | ||
917 | # CONFIG_MFD_PCF50633 is not set | ||
918 | # CONFIG_MFD_MC13783 is not set | ||
919 | # CONFIG_AB3100_CORE is not set | ||
920 | # CONFIG_EZX_PCAP is not set | ||
921 | # CONFIG_MFD_88PM8607 is not set | ||
922 | # CONFIG_AB4500_CORE is not set | ||
923 | # CONFIG_REGULATOR is not set | ||
924 | # CONFIG_MEDIA_SUPPORT is not set | ||
853 | 925 | ||
854 | # | 926 | # |
855 | # Graphics support | 927 | # Graphics support |
856 | # | 928 | # |
857 | # CONFIG_FIRMWARE_EDID is not set | 929 | # CONFIG_VGASTATE is not set |
930 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
858 | CONFIG_FB=y | 931 | CONFIG_FB=y |
932 | # CONFIG_FIRMWARE_EDID is not set | ||
933 | # CONFIG_FB_DDC is not set | ||
934 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
859 | CONFIG_FB_CFB_FILLRECT=y | 935 | CONFIG_FB_CFB_FILLRECT=y |
860 | CONFIG_FB_CFB_COPYAREA=y | 936 | CONFIG_FB_CFB_COPYAREA=y |
861 | CONFIG_FB_CFB_IMAGEBLIT=y | 937 | CONFIG_FB_CFB_IMAGEBLIT=y |
938 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
939 | # CONFIG_FB_SYS_FILLRECT is not set | ||
940 | # CONFIG_FB_SYS_COPYAREA is not set | ||
941 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
942 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
943 | # CONFIG_FB_SYS_FOPS is not set | ||
862 | # CONFIG_FB_SVGALIB is not set | 944 | # CONFIG_FB_SVGALIB is not set |
863 | # CONFIG_FB_MACMODES is not set | 945 | # CONFIG_FB_MACMODES is not set |
864 | # CONFIG_FB_BACKLIGHT is not set | 946 | # CONFIG_FB_BACKLIGHT is not set |
865 | # CONFIG_FB_MODE_HELPERS is not set | 947 | # CONFIG_FB_MODE_HELPERS is not set |
866 | # CONFIG_FB_TILEBLITTING is not set | 948 | # CONFIG_FB_TILEBLITTING is not set |
949 | |||
950 | # | ||
951 | # Frame buffer hardware drivers | ||
952 | # | ||
867 | # CONFIG_FB_S1D13XXX is not set | 953 | # CONFIG_FB_S1D13XXX is not set |
868 | CONFIG_FB_AU1200=y | 954 | CONFIG_FB_AU1200=y |
869 | # CONFIG_FB_VIRTUAL is not set | 955 | # CONFIG_FB_VIRTUAL is not set |
956 | # CONFIG_FB_METRONOME is not set | ||
957 | # CONFIG_FB_MB862XX is not set | ||
958 | # CONFIG_FB_BROADSHEET is not set | ||
959 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
960 | |||
961 | # | ||
962 | # Display device support | ||
963 | # | ||
964 | # CONFIG_DISPLAY_SUPPORT is not set | ||
870 | 965 | ||
871 | # | 966 | # |
872 | # Console display driver support | 967 | # Console display driver support |
873 | # | 968 | # |
874 | CONFIG_VGA_CONSOLE=y | 969 | # CONFIG_VGA_CONSOLE is not set |
875 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set | ||
876 | CONFIG_DUMMY_CONSOLE=y | 970 | CONFIG_DUMMY_CONSOLE=y |
877 | # CONFIG_FRAMEBUFFER_CONSOLE is not set | 971 | CONFIG_FRAMEBUFFER_CONSOLE=y |
972 | # CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set | ||
973 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
974 | CONFIG_FONTS=y | ||
975 | # CONFIG_FONT_8x8 is not set | ||
976 | CONFIG_FONT_8x16=y | ||
977 | # CONFIG_FONT_6x11 is not set | ||
978 | # CONFIG_FONT_7x14 is not set | ||
979 | # CONFIG_FONT_PEARL_8x8 is not set | ||
980 | # CONFIG_FONT_ACORN_8x8 is not set | ||
981 | # CONFIG_FONT_MINI_4x6 is not set | ||
982 | # CONFIG_FONT_SUN8x16 is not set | ||
983 | # CONFIG_FONT_SUN12x22 is not set | ||
984 | # CONFIG_FONT_10x18 is not set | ||
985 | # CONFIG_LOGO is not set | ||
986 | CONFIG_SOUND=y | ||
987 | # CONFIG_SOUND_OSS_CORE is not set | ||
988 | CONFIG_SND=y | ||
989 | CONFIG_SND_TIMER=y | ||
990 | CONFIG_SND_PCM=y | ||
991 | CONFIG_SND_JACK=y | ||
992 | # CONFIG_SND_SEQUENCER is not set | ||
993 | # CONFIG_SND_MIXER_OSS is not set | ||
994 | # CONFIG_SND_PCM_OSS is not set | ||
995 | # CONFIG_SND_HRTIMER is not set | ||
996 | CONFIG_SND_DYNAMIC_MINORS=y | ||
997 | # CONFIG_SND_SUPPORT_OLD_API is not set | ||
998 | # CONFIG_SND_VERBOSE_PROCFS is not set | ||
999 | # CONFIG_SND_VERBOSE_PRINTK is not set | ||
1000 | # CONFIG_SND_DEBUG is not set | ||
1001 | CONFIG_SND_VMASTER=y | ||
1002 | # CONFIG_SND_RAWMIDI_SEQ is not set | ||
1003 | # CONFIG_SND_OPL3_LIB_SEQ is not set | ||
1004 | # CONFIG_SND_OPL4_LIB_SEQ is not set | ||
1005 | # CONFIG_SND_SBAWE_SEQ is not set | ||
1006 | # CONFIG_SND_EMU10K1_SEQ is not set | ||
1007 | CONFIG_SND_AC97_CODEC=y | ||
1008 | # CONFIG_SND_DRIVERS is not set | ||
1009 | # CONFIG_SND_SPI is not set | ||
1010 | # CONFIG_SND_MIPS is not set | ||
1011 | # CONFIG_SND_USB is not set | ||
1012 | # CONFIG_SND_PCMCIA is not set | ||
1013 | CONFIG_SND_SOC=y | ||
1014 | CONFIG_SND_SOC_AC97_BUS=y | ||
1015 | CONFIG_SND_SOC_AU1XPSC=y | ||
1016 | CONFIG_SND_SOC_AU1XPSC_I2S=y | ||
1017 | CONFIG_SND_SOC_AU1XPSC_AC97=y | ||
1018 | CONFIG_SND_SOC_DB1200=y | ||
1019 | CONFIG_SND_SOC_I2C_AND_SPI=y | ||
1020 | # CONFIG_SND_SOC_ALL_CODECS is not set | ||
1021 | CONFIG_SND_SOC_AC97_CODEC=y | ||
1022 | CONFIG_SND_SOC_WM8731=y | ||
1023 | # CONFIG_SOUND_PRIME is not set | ||
1024 | CONFIG_AC97_BUS=y | ||
1025 | CONFIG_HID_SUPPORT=y | ||
1026 | CONFIG_HID=y | ||
1027 | CONFIG_HIDRAW=y | ||
1028 | |||
1029 | # | ||
1030 | # USB Input Devices | ||
1031 | # | ||
1032 | CONFIG_USB_HID=y | ||
1033 | # CONFIG_HID_PID is not set | ||
1034 | CONFIG_USB_HIDDEV=y | ||
1035 | |||
1036 | # | ||
1037 | # Special HID drivers | ||
1038 | # | ||
1039 | # CONFIG_HID_A4TECH is not set | ||
1040 | # CONFIG_HID_APPLE is not set | ||
1041 | # CONFIG_HID_BELKIN is not set | ||
1042 | # CONFIG_HID_CHERRY is not set | ||
1043 | # CONFIG_HID_CHICONY is not set | ||
1044 | # CONFIG_HID_CYPRESS is not set | ||
1045 | # CONFIG_HID_DRAGONRISE is not set | ||
1046 | # CONFIG_HID_EZKEY is not set | ||
1047 | # CONFIG_HID_KYE is not set | ||
1048 | # CONFIG_HID_GYRATION is not set | ||
1049 | # CONFIG_HID_TWINHAN is not set | ||
1050 | # CONFIG_HID_KENSINGTON is not set | ||
1051 | # CONFIG_HID_LOGITECH is not set | ||
1052 | # CONFIG_HID_MICROSOFT is not set | ||
1053 | # CONFIG_HID_MONTEREY is not set | ||
1054 | # CONFIG_HID_NTRIG is not set | ||
1055 | # CONFIG_HID_PANTHERLORD is not set | ||
1056 | # CONFIG_HID_PETALYNX is not set | ||
1057 | # CONFIG_HID_SAMSUNG is not set | ||
1058 | # CONFIG_HID_SONY is not set | ||
1059 | # CONFIG_HID_SUNPLUS is not set | ||
1060 | # CONFIG_HID_GREENASIA is not set | ||
1061 | # CONFIG_HID_SMARTJOYPLUS is not set | ||
1062 | # CONFIG_HID_TOPSEED is not set | ||
1063 | # CONFIG_HID_THRUSTMASTER is not set | ||
1064 | # CONFIG_HID_ZEROPLUS is not set | ||
1065 | CONFIG_USB_SUPPORT=y | ||
1066 | CONFIG_USB_ARCH_HAS_HCD=y | ||
1067 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
1068 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
1069 | CONFIG_USB=y | ||
1070 | CONFIG_USB_DEBUG=y | ||
1071 | CONFIG_USB_ANNOUNCE_NEW_DEVICES=y | ||
878 | 1072 | ||
879 | # | 1073 | # |
880 | # Logo configuration | 1074 | # Miscellaneous USB options |
881 | # | 1075 | # |
882 | CONFIG_LOGO=y | 1076 | # CONFIG_USB_DEVICEFS is not set |
883 | CONFIG_LOGO_LINUX_MONO=y | 1077 | # CONFIG_USB_DEVICE_CLASS is not set |
884 | CONFIG_LOGO_LINUX_VGA16=y | 1078 | CONFIG_USB_DYNAMIC_MINORS=y |
885 | CONFIG_LOGO_LINUX_CLUT224=y | 1079 | # CONFIG_USB_OTG is not set |
886 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 1080 | # CONFIG_USB_OTG_WHITELIST is not set |
1081 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1082 | # CONFIG_USB_MON is not set | ||
1083 | # CONFIG_USB_WUSB is not set | ||
1084 | # CONFIG_USB_WUSB_CBAF is not set | ||
887 | 1085 | ||
888 | # | 1086 | # |
889 | # Sound | 1087 | # USB Host Controller Drivers |
890 | # | 1088 | # |
891 | # CONFIG_SOUND is not set | 1089 | # CONFIG_USB_C67X00_HCD is not set |
1090 | CONFIG_USB_EHCI_HCD=y | ||
1091 | CONFIG_USB_EHCI_ROOT_HUB_TT=y | ||
1092 | CONFIG_USB_EHCI_TT_NEWSCHED=y | ||
1093 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1094 | # CONFIG_USB_ISP116X_HCD is not set | ||
1095 | # CONFIG_USB_ISP1760_HCD is not set | ||
1096 | # CONFIG_USB_ISP1362_HCD is not set | ||
1097 | CONFIG_USB_OHCI_HCD=y | ||
1098 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
1099 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
1100 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
1101 | # CONFIG_USB_SL811_HCD is not set | ||
1102 | # CONFIG_USB_R8A66597_HCD is not set | ||
1103 | # CONFIG_USB_HWA_HCD is not set | ||
892 | 1104 | ||
893 | # | 1105 | # |
894 | # HID Devices | 1106 | # USB Device Class drivers |
895 | # | 1107 | # |
896 | CONFIG_HID=y | 1108 | # CONFIG_USB_ACM is not set |
897 | # CONFIG_HID_DEBUG is not set | 1109 | # CONFIG_USB_PRINTER is not set |
1110 | # CONFIG_USB_WDM is not set | ||
1111 | # CONFIG_USB_TMC is not set | ||
898 | 1112 | ||
899 | # | 1113 | # |
900 | # USB support | 1114 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
901 | # | 1115 | # |
902 | CONFIG_USB_ARCH_HAS_HCD=y | ||
903 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
904 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
905 | # CONFIG_USB is not set | ||
906 | 1116 | ||
907 | # | 1117 | # |
908 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1118 | # also be needed; see USB_STORAGE Help for more info |
909 | # | 1119 | # |
1120 | # CONFIG_USB_LIBUSUAL is not set | ||
910 | 1121 | ||
911 | # | 1122 | # |
912 | # USB Gadget Support | 1123 | # USB Imaging devices |
913 | # | 1124 | # |
914 | CONFIG_USB_GADGET=m | 1125 | # CONFIG_USB_MDC800 is not set |
915 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | ||
916 | # CONFIG_USB_GADGET_NET2280 is not set | ||
917 | # CONFIG_USB_GADGET_PXA2XX is not set | ||
918 | # CONFIG_USB_GADGET_GOKU is not set | ||
919 | # CONFIG_USB_GADGET_LH7A40X is not set | ||
920 | # CONFIG_USB_GADGET_OMAP is not set | ||
921 | # CONFIG_USB_GADGET_AT91 is not set | ||
922 | # CONFIG_USB_GADGET_DUMMY_HCD is not set | ||
923 | # CONFIG_USB_GADGET_DUALSPEED is not set | ||
924 | 1126 | ||
925 | # | 1127 | # |
926 | # MMC/SD Card support | 1128 | # USB port drivers |
927 | # | 1129 | # |
1130 | # CONFIG_USB_SERIAL is not set | ||
1131 | |||
1132 | # | ||
1133 | # USB Miscellaneous drivers | ||
1134 | # | ||
1135 | # CONFIG_USB_EMI62 is not set | ||
1136 | # CONFIG_USB_EMI26 is not set | ||
1137 | # CONFIG_USB_ADUTUX is not set | ||
1138 | # CONFIG_USB_SEVSEG is not set | ||
1139 | # CONFIG_USB_RIO500 is not set | ||
1140 | # CONFIG_USB_LEGOTOWER is not set | ||
1141 | # CONFIG_USB_LCD is not set | ||
1142 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1143 | # CONFIG_USB_LED is not set | ||
1144 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1145 | # CONFIG_USB_CYTHERM is not set | ||
1146 | # CONFIG_USB_IDMOUSE is not set | ||
1147 | # CONFIG_USB_FTDI_ELAN is not set | ||
1148 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1149 | # CONFIG_USB_SISUSBVGA is not set | ||
1150 | # CONFIG_USB_LD is not set | ||
1151 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1152 | # CONFIG_USB_IOWARRIOR is not set | ||
1153 | # CONFIG_USB_TEST is not set | ||
1154 | # CONFIG_USB_ISIGHTFW is not set | ||
1155 | # CONFIG_USB_VST is not set | ||
1156 | # CONFIG_USB_GADGET is not set | ||
1157 | |||
1158 | # | ||
1159 | # OTG and related infrastructure | ||
1160 | # | ||
1161 | # CONFIG_USB_GPIO_VBUS is not set | ||
1162 | # CONFIG_NOP_USB_XCEIV is not set | ||
928 | CONFIG_MMC=y | 1163 | CONFIG_MMC=y |
929 | # CONFIG_MMC_DEBUG is not set | 1164 | # CONFIG_MMC_DEBUG is not set |
930 | CONFIG_MMC_BLOCK=y | 1165 | # CONFIG_MMC_UNSAFE_RESUME is not set |
931 | CONFIG_MMC_AU1X=y | ||
932 | 1166 | ||
933 | # | 1167 | # |
934 | # LED devices | 1168 | # MMC/SD/SDIO Card Drivers |
935 | # | 1169 | # |
936 | # CONFIG_NEW_LEDS is not set | 1170 | CONFIG_MMC_BLOCK=y |
1171 | # CONFIG_MMC_BLOCK_BOUNCE is not set | ||
1172 | # CONFIG_SDIO_UART is not set | ||
1173 | # CONFIG_MMC_TEST is not set | ||
937 | 1174 | ||
938 | # | 1175 | # |
939 | # LED drivers | 1176 | # MMC/SD/SDIO Host Controller Drivers |
940 | # | 1177 | # |
1178 | # CONFIG_MMC_SDHCI is not set | ||
1179 | CONFIG_MMC_AU1X=y | ||
1180 | # CONFIG_MMC_AT91 is not set | ||
1181 | # CONFIG_MMC_ATMELMCI is not set | ||
1182 | # CONFIG_MMC_SPI is not set | ||
1183 | # CONFIG_MEMSTICK is not set | ||
1184 | CONFIG_NEW_LEDS=y | ||
1185 | CONFIG_LEDS_CLASS=y | ||
941 | 1186 | ||
942 | # | 1187 | # |
943 | # LED Triggers | 1188 | # LED drivers |
944 | # | 1189 | # |
1190 | # CONFIG_LEDS_PCA9532 is not set | ||
1191 | # CONFIG_LEDS_GPIO is not set | ||
1192 | # CONFIG_LEDS_LP3944 is not set | ||
1193 | # CONFIG_LEDS_PCA955X is not set | ||
1194 | # CONFIG_LEDS_DAC124S085 is not set | ||
1195 | # CONFIG_LEDS_BD2802 is not set | ||
1196 | # CONFIG_LEDS_LT3593 is not set | ||
945 | 1197 | ||
946 | # | 1198 | # |
947 | # InfiniBand support | 1199 | # LED Triggers |
948 | # | 1200 | # |
1201 | CONFIG_LEDS_TRIGGERS=y | ||
1202 | # CONFIG_LEDS_TRIGGER_TIMER is not set | ||
1203 | # CONFIG_LEDS_TRIGGER_IDE_DISK is not set | ||
1204 | # CONFIG_LEDS_TRIGGER_HEARTBEAT is not set | ||
1205 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set | ||
1206 | # CONFIG_LEDS_TRIGGER_GPIO is not set | ||
1207 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set | ||
949 | 1208 | ||
950 | # | 1209 | # |
951 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 1210 | # iptables trigger is under Netfilter config (LED target) |
952 | # | 1211 | # |
1212 | # CONFIG_ACCESSIBILITY is not set | ||
1213 | CONFIG_RTC_LIB=y | ||
1214 | CONFIG_RTC_CLASS=y | ||
1215 | CONFIG_RTC_HCTOSYS=y | ||
1216 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1217 | # CONFIG_RTC_DEBUG is not set | ||
953 | 1218 | ||
954 | # | 1219 | # |
955 | # Real Time Clock | 1220 | # RTC interfaces |
956 | # | 1221 | # |
957 | # CONFIG_RTC_CLASS is not set | 1222 | CONFIG_RTC_INTF_SYSFS=y |
1223 | CONFIG_RTC_INTF_PROC=y | ||
1224 | CONFIG_RTC_INTF_DEV=y | ||
1225 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1226 | # CONFIG_RTC_DRV_TEST is not set | ||
958 | 1227 | ||
959 | # | 1228 | # |
960 | # DMA Engine support | 1229 | # I2C RTC drivers |
961 | # | 1230 | # |
962 | # CONFIG_DMA_ENGINE is not set | 1231 | # CONFIG_RTC_DRV_DS1307 is not set |
1232 | # CONFIG_RTC_DRV_DS1374 is not set | ||
1233 | # CONFIG_RTC_DRV_DS1672 is not set | ||
1234 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
1235 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
1236 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
1237 | # CONFIG_RTC_DRV_X1205 is not set | ||
1238 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
1239 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
1240 | # CONFIG_RTC_DRV_M41T80 is not set | ||
1241 | # CONFIG_RTC_DRV_BQ32K is not set | ||
1242 | # CONFIG_RTC_DRV_S35390A is not set | ||
1243 | # CONFIG_RTC_DRV_FM3130 is not set | ||
1244 | # CONFIG_RTC_DRV_RX8581 is not set | ||
1245 | # CONFIG_RTC_DRV_RX8025 is not set | ||
963 | 1246 | ||
964 | # | 1247 | # |
965 | # DMA Clients | 1248 | # SPI RTC drivers |
966 | # | 1249 | # |
1250 | # CONFIG_RTC_DRV_M41T94 is not set | ||
1251 | # CONFIG_RTC_DRV_DS1305 is not set | ||
1252 | # CONFIG_RTC_DRV_DS1390 is not set | ||
1253 | # CONFIG_RTC_DRV_MAX6902 is not set | ||
1254 | # CONFIG_RTC_DRV_R9701 is not set | ||
1255 | # CONFIG_RTC_DRV_RS5C348 is not set | ||
1256 | # CONFIG_RTC_DRV_DS3234 is not set | ||
1257 | # CONFIG_RTC_DRV_PCF2123 is not set | ||
967 | 1258 | ||
968 | # | 1259 | # |
969 | # DMA Devices | 1260 | # Platform RTC drivers |
970 | # | 1261 | # |
1262 | # CONFIG_RTC_DRV_CMOS is not set | ||
1263 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1264 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1265 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1266 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1267 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1268 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1269 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1270 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1271 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
1272 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1273 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
1274 | # CONFIG_RTC_DRV_V3020 is not set | ||
971 | 1275 | ||
972 | # | 1276 | # |
973 | # Auxiliary Display support | 1277 | # on-CPU RTC drivers |
974 | # | 1278 | # |
1279 | CONFIG_RTC_DRV_AU1XXX=y | ||
1280 | # CONFIG_DMADEVICES is not set | ||
1281 | # CONFIG_AUXDISPLAY is not set | ||
1282 | # CONFIG_UIO is not set | ||
975 | 1283 | ||
976 | # | 1284 | # |
977 | # Virtualization | 1285 | # TI VLYNQ |
978 | # | 1286 | # |
1287 | # CONFIG_STAGING is not set | ||
979 | 1288 | ||
980 | # | 1289 | # |
981 | # File systems | 1290 | # File systems |
982 | # | 1291 | # |
983 | CONFIG_EXT2_FS=y | 1292 | CONFIG_EXT2_FS=y |
984 | CONFIG_EXT2_FS_XATTR=y | 1293 | # CONFIG_EXT2_FS_XATTR is not set |
985 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
986 | # CONFIG_EXT2_FS_SECURITY is not set | ||
987 | # CONFIG_EXT2_FS_XIP is not set | 1294 | # CONFIG_EXT2_FS_XIP is not set |
988 | CONFIG_EXT3_FS=y | 1295 | # CONFIG_EXT3_FS is not set |
989 | CONFIG_EXT3_FS_XATTR=y | 1296 | # CONFIG_EXT4_FS is not set |
990 | CONFIG_EXT3_FS_POSIX_ACL=y | ||
991 | CONFIG_EXT3_FS_SECURITY=y | ||
992 | # CONFIG_EXT4DEV_FS is not set | ||
993 | CONFIG_JBD=y | ||
994 | # CONFIG_JBD_DEBUG is not set | ||
995 | CONFIG_FS_MBCACHE=y | ||
996 | # CONFIG_REISERFS_FS is not set | 1297 | # CONFIG_REISERFS_FS is not set |
997 | CONFIG_JFS_FS=y | 1298 | # CONFIG_JFS_FS is not set |
998 | # CONFIG_JFS_POSIX_ACL is not set | 1299 | # CONFIG_FS_POSIX_ACL is not set |
999 | # CONFIG_JFS_SECURITY is not set | ||
1000 | # CONFIG_JFS_DEBUG is not set | ||
1001 | # CONFIG_JFS_STATISTICS is not set | ||
1002 | CONFIG_FS_POSIX_ACL=y | ||
1003 | # CONFIG_XFS_FS is not set | 1300 | # CONFIG_XFS_FS is not set |
1004 | # CONFIG_GFS2_FS is not set | ||
1005 | # CONFIG_OCFS2_FS is not set | 1301 | # CONFIG_OCFS2_FS is not set |
1006 | # CONFIG_MINIX_FS is not set | 1302 | # CONFIG_BTRFS_FS is not set |
1007 | # CONFIG_ROMFS_FS is not set | 1303 | # CONFIG_NILFS2_FS is not set |
1304 | CONFIG_FILE_LOCKING=y | ||
1305 | CONFIG_FSNOTIFY=y | ||
1306 | CONFIG_DNOTIFY=y | ||
1008 | CONFIG_INOTIFY=y | 1307 | CONFIG_INOTIFY=y |
1009 | CONFIG_INOTIFY_USER=y | 1308 | CONFIG_INOTIFY_USER=y |
1010 | # CONFIG_QUOTA is not set | 1309 | # CONFIG_QUOTA is not set |
1011 | CONFIG_DNOTIFY=y | ||
1012 | # CONFIG_AUTOFS_FS is not set | 1310 | # CONFIG_AUTOFS_FS is not set |
1013 | # CONFIG_AUTOFS4_FS is not set | 1311 | # CONFIG_AUTOFS4_FS is not set |
1014 | # CONFIG_FUSE_FS is not set | 1312 | # CONFIG_FUSE_FS is not set |
1015 | CONFIG_GENERIC_ACL=y | 1313 | |
1314 | # | ||
1315 | # Caches | ||
1316 | # | ||
1317 | # CONFIG_FSCACHE is not set | ||
1016 | 1318 | ||
1017 | # | 1319 | # |
1018 | # CD-ROM/DVD Filesystems | 1320 | # CD-ROM/DVD Filesystems |
1019 | # | 1321 | # |
1020 | CONFIG_ISO9660_FS=m | 1322 | CONFIG_ISO9660_FS=y |
1021 | CONFIG_JOLIET=y | 1323 | CONFIG_JOLIET=y |
1022 | CONFIG_ZISOFS=y | 1324 | CONFIG_ZISOFS=y |
1023 | CONFIG_UDF_FS=m | 1325 | CONFIG_UDF_FS=y |
1024 | CONFIG_UDF_NLS=y | 1326 | CONFIG_UDF_NLS=y |
1025 | 1327 | ||
1026 | # | 1328 | # |
1027 | # DOS/FAT/NT Filesystems | 1329 | # DOS/FAT/NT Filesystems |
1028 | # | 1330 | # |
1029 | CONFIG_FAT_FS=m | 1331 | CONFIG_FAT_FS=y |
1030 | CONFIG_MSDOS_FS=m | 1332 | # CONFIG_MSDOS_FS is not set |
1031 | CONFIG_VFAT_FS=m | 1333 | CONFIG_VFAT_FS=y |
1032 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | 1334 | CONFIG_FAT_DEFAULT_CODEPAGE=437 |
1033 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | 1335 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" |
1034 | # CONFIG_NTFS_FS is not set | 1336 | # CONFIG_NTFS_FS is not set |
@@ -1037,21 +1339,17 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1037 | # Pseudo filesystems | 1339 | # Pseudo filesystems |
1038 | # | 1340 | # |
1039 | CONFIG_PROC_FS=y | 1341 | CONFIG_PROC_FS=y |
1040 | CONFIG_PROC_KCORE=y | 1342 | # CONFIG_PROC_KCORE is not set |
1041 | CONFIG_PROC_SYSCTL=y | 1343 | CONFIG_PROC_SYSCTL=y |
1344 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
1042 | CONFIG_SYSFS=y | 1345 | CONFIG_SYSFS=y |
1043 | CONFIG_TMPFS=y | 1346 | CONFIG_TMPFS=y |
1044 | CONFIG_TMPFS_POSIX_ACL=y | 1347 | # CONFIG_TMPFS_POSIX_ACL is not set |
1045 | # CONFIG_HUGETLB_PAGE is not set | 1348 | # CONFIG_HUGETLB_PAGE is not set |
1046 | CONFIG_RAMFS=y | 1349 | # CONFIG_CONFIGFS_FS is not set |
1047 | CONFIG_CONFIGFS_FS=m | 1350 | CONFIG_MISC_FILESYSTEMS=y |
1048 | |||
1049 | # | ||
1050 | # Miscellaneous filesystems | ||
1051 | # | ||
1052 | # CONFIG_ADFS_FS is not set | 1351 | # CONFIG_ADFS_FS is not set |
1053 | # CONFIG_AFFS_FS is not set | 1352 | # CONFIG_AFFS_FS is not set |
1054 | # CONFIG_ECRYPT_FS is not set | ||
1055 | # CONFIG_HFS_FS is not set | 1353 | # CONFIG_HFS_FS is not set |
1056 | # CONFIG_HFSPLUS_FS is not set | 1354 | # CONFIG_HFSPLUS_FS is not set |
1057 | # CONFIG_BEFS_FS is not set | 1355 | # CONFIG_BEFS_FS is not set |
@@ -1060,27 +1358,36 @@ CONFIG_CONFIGFS_FS=m | |||
1060 | CONFIG_JFFS2_FS=y | 1358 | CONFIG_JFFS2_FS=y |
1061 | CONFIG_JFFS2_FS_DEBUG=0 | 1359 | CONFIG_JFFS2_FS_DEBUG=0 |
1062 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 1360 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
1063 | # CONFIG_JFFS2_SUMMARY is not set | 1361 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set |
1362 | CONFIG_JFFS2_SUMMARY=y | ||
1064 | # CONFIG_JFFS2_FS_XATTR is not set | 1363 | # CONFIG_JFFS2_FS_XATTR is not set |
1065 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | 1364 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y |
1066 | CONFIG_JFFS2_ZLIB=y | 1365 | CONFIG_JFFS2_ZLIB=y |
1366 | CONFIG_JFFS2_LZO=y | ||
1067 | CONFIG_JFFS2_RTIME=y | 1367 | CONFIG_JFFS2_RTIME=y |
1068 | # CONFIG_JFFS2_RUBIN is not set | 1368 | CONFIG_JFFS2_RUBIN=y |
1069 | CONFIG_CRAMFS=m | 1369 | # CONFIG_JFFS2_CMODE_NONE is not set |
1370 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1371 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1372 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1373 | # CONFIG_CRAMFS is not set | ||
1374 | CONFIG_SQUASHFS=y | ||
1375 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1376 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
1070 | # CONFIG_VXFS_FS is not set | 1377 | # CONFIG_VXFS_FS is not set |
1378 | # CONFIG_MINIX_FS is not set | ||
1379 | # CONFIG_OMFS_FS is not set | ||
1071 | # CONFIG_HPFS_FS is not set | 1380 | # CONFIG_HPFS_FS is not set |
1072 | # CONFIG_QNX4FS_FS is not set | 1381 | # CONFIG_QNX4FS_FS is not set |
1382 | # CONFIG_ROMFS_FS is not set | ||
1073 | # CONFIG_SYSV_FS is not set | 1383 | # CONFIG_SYSV_FS is not set |
1074 | # CONFIG_UFS_FS is not set | 1384 | # CONFIG_UFS_FS is not set |
1075 | 1385 | CONFIG_NETWORK_FILESYSTEMS=y | |
1076 | # | ||
1077 | # Network File Systems | ||
1078 | # | ||
1079 | CONFIG_NFS_FS=y | 1386 | CONFIG_NFS_FS=y |
1080 | CONFIG_NFS_V3=y | 1387 | CONFIG_NFS_V3=y |
1081 | # CONFIG_NFS_V3_ACL is not set | 1388 | # CONFIG_NFS_V3_ACL is not set |
1082 | # CONFIG_NFS_V4 is not set | 1389 | # CONFIG_NFS_V4 is not set |
1083 | # CONFIG_NFS_DIRECTIO is not set | 1390 | CONFIG_ROOT_NFS=y |
1084 | # CONFIG_NFSD is not set | 1391 | # CONFIG_NFSD is not set |
1085 | CONFIG_LOCKD=y | 1392 | CONFIG_LOCKD=y |
1086 | CONFIG_LOCKD_V4=y | 1393 | CONFIG_LOCKD_V4=y |
@@ -1088,91 +1395,140 @@ CONFIG_NFS_COMMON=y | |||
1088 | CONFIG_SUNRPC=y | 1395 | CONFIG_SUNRPC=y |
1089 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1396 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1090 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1397 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1091 | CONFIG_SMB_FS=y | 1398 | # CONFIG_SMB_FS is not set |
1092 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1093 | # CONFIG_CIFS is not set | 1399 | # CONFIG_CIFS is not set |
1094 | # CONFIG_NCP_FS is not set | 1400 | # CONFIG_NCP_FS is not set |
1095 | # CONFIG_CODA_FS is not set | 1401 | # CONFIG_CODA_FS is not set |
1096 | # CONFIG_AFS_FS is not set | 1402 | # CONFIG_AFS_FS is not set |
1097 | # CONFIG_9P_FS is not set | ||
1098 | 1403 | ||
1099 | # | 1404 | # |
1100 | # Partition Types | 1405 | # Partition Types |
1101 | # | 1406 | # |
1102 | # CONFIG_PARTITION_ADVANCED is not set | 1407 | CONFIG_PARTITION_ADVANCED=y |
1408 | # CONFIG_ACORN_PARTITION is not set | ||
1409 | # CONFIG_OSF_PARTITION is not set | ||
1410 | # CONFIG_AMIGA_PARTITION is not set | ||
1411 | # CONFIG_ATARI_PARTITION is not set | ||
1412 | # CONFIG_MAC_PARTITION is not set | ||
1103 | CONFIG_MSDOS_PARTITION=y | 1413 | CONFIG_MSDOS_PARTITION=y |
1104 | 1414 | # CONFIG_BSD_DISKLABEL is not set | |
1105 | # | 1415 | # CONFIG_MINIX_SUBPARTITION is not set |
1106 | # Native Language Support | 1416 | # CONFIG_SOLARIS_X86_PARTITION is not set |
1107 | # | 1417 | # CONFIG_UNIXWARE_DISKLABEL is not set |
1418 | # CONFIG_LDM_PARTITION is not set | ||
1419 | # CONFIG_SGI_PARTITION is not set | ||
1420 | # CONFIG_ULTRIX_PARTITION is not set | ||
1421 | # CONFIG_SUN_PARTITION is not set | ||
1422 | # CONFIG_KARMA_PARTITION is not set | ||
1423 | CONFIG_EFI_PARTITION=y | ||
1424 | # CONFIG_SYSV68_PARTITION is not set | ||
1108 | CONFIG_NLS=y | 1425 | CONFIG_NLS=y |
1109 | CONFIG_NLS_DEFAULT="iso8859-1" | 1426 | CONFIG_NLS_DEFAULT="iso8859-1" |
1110 | CONFIG_NLS_CODEPAGE_437=m | 1427 | CONFIG_NLS_CODEPAGE_437=y |
1111 | CONFIG_NLS_CODEPAGE_737=m | 1428 | # CONFIG_NLS_CODEPAGE_737 is not set |
1112 | CONFIG_NLS_CODEPAGE_775=m | 1429 | # CONFIG_NLS_CODEPAGE_775 is not set |
1113 | CONFIG_NLS_CODEPAGE_850=m | 1430 | CONFIG_NLS_CODEPAGE_850=y |
1114 | CONFIG_NLS_CODEPAGE_852=m | 1431 | CONFIG_NLS_CODEPAGE_852=y |
1115 | CONFIG_NLS_CODEPAGE_855=m | 1432 | # CONFIG_NLS_CODEPAGE_855 is not set |
1116 | CONFIG_NLS_CODEPAGE_857=m | 1433 | # CONFIG_NLS_CODEPAGE_857 is not set |
1117 | CONFIG_NLS_CODEPAGE_860=m | 1434 | # CONFIG_NLS_CODEPAGE_860 is not set |
1118 | CONFIG_NLS_CODEPAGE_861=m | 1435 | # CONFIG_NLS_CODEPAGE_861 is not set |
1119 | CONFIG_NLS_CODEPAGE_862=m | 1436 | # CONFIG_NLS_CODEPAGE_862 is not set |
1120 | CONFIG_NLS_CODEPAGE_863=m | 1437 | # CONFIG_NLS_CODEPAGE_863 is not set |
1121 | CONFIG_NLS_CODEPAGE_864=m | 1438 | # CONFIG_NLS_CODEPAGE_864 is not set |
1122 | CONFIG_NLS_CODEPAGE_865=m | 1439 | # CONFIG_NLS_CODEPAGE_865 is not set |
1123 | CONFIG_NLS_CODEPAGE_866=m | 1440 | # CONFIG_NLS_CODEPAGE_866 is not set |
1124 | CONFIG_NLS_CODEPAGE_869=m | 1441 | # CONFIG_NLS_CODEPAGE_869 is not set |
1125 | CONFIG_NLS_CODEPAGE_936=m | 1442 | # CONFIG_NLS_CODEPAGE_936 is not set |
1126 | CONFIG_NLS_CODEPAGE_950=m | 1443 | # CONFIG_NLS_CODEPAGE_950 is not set |
1127 | CONFIG_NLS_CODEPAGE_932=m | 1444 | # CONFIG_NLS_CODEPAGE_932 is not set |
1128 | CONFIG_NLS_CODEPAGE_949=m | 1445 | # CONFIG_NLS_CODEPAGE_949 is not set |
1129 | CONFIG_NLS_CODEPAGE_874=m | 1446 | # CONFIG_NLS_CODEPAGE_874 is not set |
1130 | CONFIG_NLS_ISO8859_8=m | 1447 | # CONFIG_NLS_ISO8859_8 is not set |
1131 | CONFIG_NLS_CODEPAGE_1250=m | 1448 | CONFIG_NLS_CODEPAGE_1250=y |
1132 | CONFIG_NLS_CODEPAGE_1251=m | 1449 | # CONFIG_NLS_CODEPAGE_1251 is not set |
1133 | CONFIG_NLS_ASCII=m | 1450 | CONFIG_NLS_ASCII=y |
1134 | CONFIG_NLS_ISO8859_1=m | 1451 | CONFIG_NLS_ISO8859_1=y |
1135 | CONFIG_NLS_ISO8859_2=m | 1452 | CONFIG_NLS_ISO8859_2=y |
1136 | CONFIG_NLS_ISO8859_3=m | 1453 | # CONFIG_NLS_ISO8859_3 is not set |
1137 | CONFIG_NLS_ISO8859_4=m | 1454 | # CONFIG_NLS_ISO8859_4 is not set |
1138 | CONFIG_NLS_ISO8859_5=m | 1455 | # CONFIG_NLS_ISO8859_5 is not set |
1139 | CONFIG_NLS_ISO8859_6=m | 1456 | # CONFIG_NLS_ISO8859_6 is not set |
1140 | CONFIG_NLS_ISO8859_7=m | 1457 | # CONFIG_NLS_ISO8859_7 is not set |
1141 | CONFIG_NLS_ISO8859_9=m | 1458 | # CONFIG_NLS_ISO8859_9 is not set |
1142 | CONFIG_NLS_ISO8859_13=m | 1459 | # CONFIG_NLS_ISO8859_13 is not set |
1143 | CONFIG_NLS_ISO8859_14=m | 1460 | # CONFIG_NLS_ISO8859_14 is not set |
1144 | CONFIG_NLS_ISO8859_15=m | 1461 | CONFIG_NLS_ISO8859_15=y |
1145 | CONFIG_NLS_KOI8_R=m | 1462 | # CONFIG_NLS_KOI8_R is not set |
1146 | CONFIG_NLS_KOI8_U=m | 1463 | # CONFIG_NLS_KOI8_U is not set |
1147 | CONFIG_NLS_UTF8=m | 1464 | CONFIG_NLS_UTF8=y |
1148 | 1465 | # CONFIG_DLM is not set | |
1149 | # | ||
1150 | # Distributed Lock Manager | ||
1151 | # | ||
1152 | CONFIG_DLM=m | ||
1153 | CONFIG_DLM_TCP=y | ||
1154 | # CONFIG_DLM_SCTP is not set | ||
1155 | # CONFIG_DLM_DEBUG is not set | ||
1156 | |||
1157 | # | ||
1158 | # Profiling support | ||
1159 | # | ||
1160 | # CONFIG_PROFILING is not set | ||
1161 | 1466 | ||
1162 | # | 1467 | # |
1163 | # Kernel hacking | 1468 | # Kernel hacking |
1164 | # | 1469 | # |
1165 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1470 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1166 | # CONFIG_PRINTK_TIME is not set | 1471 | # CONFIG_PRINTK_TIME is not set |
1167 | CONFIG_ENABLE_MUST_CHECK=y | 1472 | # CONFIG_ENABLE_WARN_DEPRECATED is not set |
1168 | # CONFIG_MAGIC_SYSRQ is not set | 1473 | # CONFIG_ENABLE_MUST_CHECK is not set |
1474 | CONFIG_FRAME_WARN=1024 | ||
1475 | CONFIG_MAGIC_SYSRQ=y | ||
1476 | CONFIG_STRIP_ASM_SYMS=y | ||
1169 | # CONFIG_UNUSED_SYMBOLS is not set | 1477 | # CONFIG_UNUSED_SYMBOLS is not set |
1170 | # CONFIG_DEBUG_FS is not set | 1478 | # CONFIG_DEBUG_FS is not set |
1171 | # CONFIG_HEADERS_CHECK is not set | 1479 | # CONFIG_HEADERS_CHECK is not set |
1172 | # CONFIG_DEBUG_KERNEL is not set | 1480 | CONFIG_DEBUG_KERNEL=y |
1173 | CONFIG_LOG_BUF_SHIFT=14 | 1481 | # CONFIG_DEBUG_SHIRQ is not set |
1174 | CONFIG_CROSSCOMPILE=y | 1482 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1175 | CONFIG_CMDLINE="mem=48M" | 1483 | # CONFIG_DETECT_HUNG_TASK is not set |
1484 | # CONFIG_SCHED_DEBUG is not set | ||
1485 | # CONFIG_SCHEDSTATS is not set | ||
1486 | # CONFIG_TIMER_STATS is not set | ||
1487 | # CONFIG_DEBUG_OBJECTS is not set | ||
1488 | # CONFIG_DEBUG_SLAB is not set | ||
1489 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1490 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1491 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1492 | # CONFIG_DEBUG_MUTEXES is not set | ||
1493 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1494 | # CONFIG_PROVE_LOCKING is not set | ||
1495 | # CONFIG_LOCK_STAT is not set | ||
1496 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1497 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1498 | # CONFIG_DEBUG_KOBJECT is not set | ||
1499 | # CONFIG_DEBUG_INFO is not set | ||
1500 | # CONFIG_DEBUG_VM is not set | ||
1501 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1502 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1503 | # CONFIG_DEBUG_LIST is not set | ||
1504 | # CONFIG_DEBUG_SG is not set | ||
1505 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1506 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1507 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1508 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1509 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1510 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1511 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1512 | # CONFIG_FAULT_INJECTION is not set | ||
1513 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1514 | # CONFIG_PAGE_POISONING is not set | ||
1515 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1516 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1517 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1518 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1519 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1520 | CONFIG_TRACING_SUPPORT=y | ||
1521 | # CONFIG_FTRACE is not set | ||
1522 | # CONFIG_SAMPLES is not set | ||
1523 | CONFIG_HAVE_ARCH_KGDB=y | ||
1524 | # CONFIG_KGDB is not set | ||
1525 | CONFIG_EARLY_PRINTK=y | ||
1526 | CONFIG_CMDLINE_BOOL=y | ||
1527 | CONFIG_CMDLINE="console=ttyS0,115200" | ||
1528 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1529 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1530 | # CONFIG_RUNTIME_DEBUG is not set | ||
1531 | CONFIG_DEBUG_ZBOOT=y | ||
1176 | 1532 | ||
1177 | # | 1533 | # |
1178 | # Security options | 1534 | # Security options |
@@ -1180,67 +1536,32 @@ CONFIG_CMDLINE="mem=48M" | |||
1180 | CONFIG_KEYS=y | 1536 | CONFIG_KEYS=y |
1181 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1537 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1182 | # CONFIG_SECURITY is not set | 1538 | # CONFIG_SECURITY is not set |
1183 | 1539 | CONFIG_SECURITYFS=y | |
1184 | # | 1540 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1185 | # Cryptographic options | 1541 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1186 | # | 1542 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1187 | CONFIG_CRYPTO=y | 1543 | CONFIG_DEFAULT_SECURITY_DAC=y |
1188 | CONFIG_CRYPTO_ALGAPI=y | 1544 | CONFIG_DEFAULT_SECURITY="" |
1189 | CONFIG_CRYPTO_BLKCIPHER=m | 1545 | # CONFIG_CRYPTO is not set |
1190 | CONFIG_CRYPTO_HASH=m | 1546 | # CONFIG_BINARY_PRINTF is not set |
1191 | CONFIG_CRYPTO_MANAGER=m | ||
1192 | CONFIG_CRYPTO_HMAC=m | ||
1193 | CONFIG_CRYPTO_XCBC=m | ||
1194 | CONFIG_CRYPTO_NULL=m | ||
1195 | CONFIG_CRYPTO_MD4=m | ||
1196 | CONFIG_CRYPTO_MD5=y | ||
1197 | CONFIG_CRYPTO_SHA1=m | ||
1198 | CONFIG_CRYPTO_SHA256=m | ||
1199 | CONFIG_CRYPTO_SHA512=m | ||
1200 | CONFIG_CRYPTO_WP512=m | ||
1201 | CONFIG_CRYPTO_TGR192=m | ||
1202 | CONFIG_CRYPTO_GF128MUL=m | ||
1203 | CONFIG_CRYPTO_ECB=m | ||
1204 | CONFIG_CRYPTO_CBC=m | ||
1205 | CONFIG_CRYPTO_PCBC=m | ||
1206 | CONFIG_CRYPTO_LRW=m | ||
1207 | CONFIG_CRYPTO_DES=m | ||
1208 | CONFIG_CRYPTO_FCRYPT=m | ||
1209 | CONFIG_CRYPTO_BLOWFISH=m | ||
1210 | CONFIG_CRYPTO_TWOFISH=m | ||
1211 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1212 | CONFIG_CRYPTO_SERPENT=m | ||
1213 | CONFIG_CRYPTO_AES=m | ||
1214 | CONFIG_CRYPTO_CAST5=m | ||
1215 | CONFIG_CRYPTO_CAST6=m | ||
1216 | CONFIG_CRYPTO_TEA=m | ||
1217 | CONFIG_CRYPTO_ARC4=m | ||
1218 | CONFIG_CRYPTO_KHAZAD=m | ||
1219 | CONFIG_CRYPTO_ANUBIS=m | ||
1220 | CONFIG_CRYPTO_DEFLATE=m | ||
1221 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1222 | CONFIG_CRYPTO_CRC32C=m | ||
1223 | CONFIG_CRYPTO_CAMELLIA=m | ||
1224 | # CONFIG_CRYPTO_TEST is not set | ||
1225 | |||
1226 | # | ||
1227 | # Hardware crypto devices | ||
1228 | # | ||
1229 | 1547 | ||
1230 | # | 1548 | # |
1231 | # Library routines | 1549 | # Library routines |
1232 | # | 1550 | # |
1233 | CONFIG_BITREVERSE=y | 1551 | CONFIG_BITREVERSE=y |
1234 | CONFIG_CRC_CCITT=y | 1552 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1553 | # CONFIG_CRC_CCITT is not set | ||
1235 | # CONFIG_CRC16 is not set | 1554 | # CONFIG_CRC16 is not set |
1555 | # CONFIG_CRC_T10DIF is not set | ||
1556 | CONFIG_CRC_ITU_T=y | ||
1236 | CONFIG_CRC32=y | 1557 | CONFIG_CRC32=y |
1237 | CONFIG_LIBCRC32C=y | 1558 | # CONFIG_CRC7 is not set |
1559 | # CONFIG_LIBCRC32C is not set | ||
1238 | CONFIG_ZLIB_INFLATE=y | 1560 | CONFIG_ZLIB_INFLATE=y |
1239 | CONFIG_ZLIB_DEFLATE=y | 1561 | CONFIG_ZLIB_DEFLATE=y |
1240 | CONFIG_TEXTSEARCH=y | 1562 | CONFIG_LZO_COMPRESS=y |
1241 | CONFIG_TEXTSEARCH_KMP=m | 1563 | CONFIG_LZO_DECOMPRESS=y |
1242 | CONFIG_TEXTSEARCH_BM=m | ||
1243 | CONFIG_TEXTSEARCH_FSM=m | ||
1244 | CONFIG_PLIST=y | ||
1245 | CONFIG_HAS_IOMEM=y | 1564 | CONFIG_HAS_IOMEM=y |
1246 | CONFIG_HAS_IOPORT=y | 1565 | CONFIG_HAS_IOPORT=y |
1566 | CONFIG_HAS_DMA=y | ||
1567 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/db1500_defconfig b/arch/mips/configs/db1500_defconfig index ec3e028a5b2e..5424c9167bf2 100644 --- a/arch/mips/configs/db1500_defconfig +++ b/arch/mips/configs/db1500_defconfig | |||
@@ -1,81 +1,104 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:26 2007 | 4 | # Fri Feb 26 08:46:33 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_PB1100 is not set | ||
17 | # CONFIG_MIPS_PB1500 is not set | ||
18 | # CONFIG_MIPS_PB1550 is not set | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | # CONFIG_MIPS_DB1000 is not set | ||
21 | # CONFIG_MIPS_DB1100 is not set | ||
22 | CONFIG_MIPS_DB1500=y | ||
23 | # CONFIG_MIPS_DB1550 is not set | ||
24 | # CONFIG_MIPS_DB1200 is not set | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | CONFIG_MIPS_DB1500=y | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1500=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_NONCOHERENT=y | 83 | CONFIG_DMA_NONCOHERENT=y |
65 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
66 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y | 86 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y |
87 | # CONFIG_NO_IOPORT is not set | ||
88 | CONFIG_GENERIC_GPIO=y | ||
67 | # CONFIG_CPU_BIG_ENDIAN is not set | 89 | # CONFIG_CPU_BIG_ENDIAN is not set |
68 | CONFIG_CPU_LITTLE_ENDIAN=y | 90 | CONFIG_CPU_LITTLE_ENDIAN=y |
69 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 91 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
70 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y | 92 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y |
71 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 93 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
72 | CONFIG_SOC_AU1500=y | 94 | CONFIG_IRQ_CPU=y |
73 | CONFIG_SOC_AU1X00=y | ||
74 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 95 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
75 | 96 | ||
76 | # | 97 | # |
77 | # CPU selection | 98 | # CPU selection |
78 | # | 99 | # |
100 | # CONFIG_CPU_LOONGSON2E is not set | ||
101 | # CONFIG_CPU_LOONGSON2F is not set | ||
79 | CONFIG_CPU_MIPS32_R1=y | 102 | CONFIG_CPU_MIPS32_R1=y |
80 | # CONFIG_CPU_MIPS32_R2 is not set | 103 | # CONFIG_CPU_MIPS32_R2 is not set |
81 | # CONFIG_CPU_MIPS64_R1 is not set | 104 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -88,6 +111,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
88 | # CONFIG_CPU_TX49XX is not set | 111 | # CONFIG_CPU_TX49XX is not set |
89 | # CONFIG_CPU_R5000 is not set | 112 | # CONFIG_CPU_R5000 is not set |
90 | # CONFIG_CPU_R5432 is not set | 113 | # CONFIG_CPU_R5432 is not set |
114 | # CONFIG_CPU_R5500 is not set | ||
91 | # CONFIG_CPU_R6000 is not set | 115 | # CONFIG_CPU_R6000 is not set |
92 | # CONFIG_CPU_NEVADA is not set | 116 | # CONFIG_CPU_NEVADA is not set |
93 | # CONFIG_CPU_R8000 is not set | 117 | # CONFIG_CPU_R8000 is not set |
@@ -95,11 +119,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
95 | # CONFIG_CPU_RM7000 is not set | 119 | # CONFIG_CPU_RM7000 is not set |
96 | # CONFIG_CPU_RM9000 is not set | 120 | # CONFIG_CPU_RM9000 is not set |
97 | # CONFIG_CPU_SB1 is not set | 121 | # CONFIG_CPU_SB1 is not set |
122 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
123 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
98 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 124 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
99 | CONFIG_CPU_MIPS32=y | 125 | CONFIG_CPU_MIPS32=y |
100 | CONFIG_CPU_MIPSR1=y | 126 | CONFIG_CPU_MIPSR1=y |
101 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 127 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
102 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 128 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
129 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
103 | 130 | ||
104 | # | 131 | # |
105 | # Kernel type | 132 | # Kernel type |
@@ -109,137 +136,207 @@ CONFIG_32BIT=y | |||
109 | CONFIG_PAGE_SIZE_4KB=y | 136 | CONFIG_PAGE_SIZE_4KB=y |
110 | # CONFIG_PAGE_SIZE_8KB is not set | 137 | # CONFIG_PAGE_SIZE_8KB is not set |
111 | # CONFIG_PAGE_SIZE_16KB is not set | 138 | # CONFIG_PAGE_SIZE_16KB is not set |
139 | # CONFIG_PAGE_SIZE_32KB is not set | ||
112 | # CONFIG_PAGE_SIZE_64KB is not set | 140 | # CONFIG_PAGE_SIZE_64KB is not set |
113 | CONFIG_CPU_HAS_PREFETCH=y | 141 | CONFIG_CPU_HAS_PREFETCH=y |
114 | CONFIG_MIPS_MT_DISABLED=y | 142 | CONFIG_MIPS_MT_DISABLED=y |
115 | # CONFIG_MIPS_MT_SMP is not set | 143 | # CONFIG_MIPS_MT_SMP is not set |
116 | # CONFIG_MIPS_MT_SMTC is not set | 144 | # CONFIG_MIPS_MT_SMTC is not set |
117 | # CONFIG_MIPS_VPE_LOADER is not set | ||
118 | CONFIG_64BIT_PHYS_ADDR=y | 145 | CONFIG_64BIT_PHYS_ADDR=y |
146 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
119 | CONFIG_CPU_HAS_SYNC=y | 147 | CONFIG_CPU_HAS_SYNC=y |
120 | CONFIG_GENERIC_HARDIRQS=y | 148 | CONFIG_GENERIC_HARDIRQS=y |
121 | CONFIG_GENERIC_IRQ_PROBE=y | 149 | CONFIG_GENERIC_IRQ_PROBE=y |
122 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 150 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
123 | CONFIG_ARCH_FLATMEM_ENABLE=y | 151 | CONFIG_ARCH_FLATMEM_ENABLE=y |
152 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
124 | CONFIG_SELECT_MEMORY_MODEL=y | 153 | CONFIG_SELECT_MEMORY_MODEL=y |
125 | CONFIG_FLATMEM_MANUAL=y | 154 | CONFIG_FLATMEM_MANUAL=y |
126 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 155 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
127 | # CONFIG_SPARSEMEM_MANUAL is not set | 156 | # CONFIG_SPARSEMEM_MANUAL is not set |
128 | CONFIG_FLATMEM=y | 157 | CONFIG_FLATMEM=y |
129 | CONFIG_FLAT_NODE_MEM_MAP=y | 158 | CONFIG_FLAT_NODE_MEM_MAP=y |
130 | # CONFIG_SPARSEMEM_STATIC is not set | 159 | CONFIG_PAGEFLAGS_EXTENDED=y |
131 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 160 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
132 | CONFIG_RESOURCES_64BIT=y | 161 | CONFIG_PHYS_ADDR_T_64BIT=y |
133 | CONFIG_ZONE_DMA_FLAG=1 | 162 | CONFIG_ZONE_DMA_FLAG=0 |
163 | CONFIG_VIRT_TO_BUS=y | ||
164 | # CONFIG_KSM is not set | ||
165 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
166 | CONFIG_TICK_ONESHOT=y | ||
167 | CONFIG_NO_HZ=y | ||
168 | CONFIG_HIGH_RES_TIMERS=y | ||
169 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
134 | # CONFIG_HZ_48 is not set | 170 | # CONFIG_HZ_48 is not set |
135 | # CONFIG_HZ_100 is not set | 171 | CONFIG_HZ_100=y |
136 | # CONFIG_HZ_128 is not set | 172 | # CONFIG_HZ_128 is not set |
137 | # CONFIG_HZ_250 is not set | 173 | # CONFIG_HZ_250 is not set |
138 | # CONFIG_HZ_256 is not set | 174 | # CONFIG_HZ_256 is not set |
139 | CONFIG_HZ_1000=y | 175 | # CONFIG_HZ_1000 is not set |
140 | # CONFIG_HZ_1024 is not set | 176 | # CONFIG_HZ_1024 is not set |
141 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 177 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
142 | CONFIG_HZ=1000 | 178 | CONFIG_HZ=100 |
143 | CONFIG_PREEMPT_NONE=y | 179 | CONFIG_PREEMPT_NONE=y |
144 | # CONFIG_PREEMPT_VOLUNTARY is not set | 180 | # CONFIG_PREEMPT_VOLUNTARY is not set |
145 | # CONFIG_PREEMPT is not set | 181 | # CONFIG_PREEMPT is not set |
146 | # CONFIG_KEXEC is not set | 182 | # CONFIG_KEXEC is not set |
183 | # CONFIG_SECCOMP is not set | ||
147 | CONFIG_LOCKDEP_SUPPORT=y | 184 | CONFIG_LOCKDEP_SUPPORT=y |
148 | CONFIG_STACKTRACE_SUPPORT=y | 185 | CONFIG_STACKTRACE_SUPPORT=y |
149 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 186 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
187 | CONFIG_CONSTRUCTORS=y | ||
150 | 188 | ||
151 | # | 189 | # |
152 | # Code maturity level options | 190 | # General setup |
153 | # | 191 | # |
154 | CONFIG_EXPERIMENTAL=y | 192 | CONFIG_EXPERIMENTAL=y |
155 | CONFIG_BROKEN_ON_SMP=y | 193 | CONFIG_BROKEN_ON_SMP=y |
156 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 194 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
157 | 195 | CONFIG_LOCALVERSION="-db1500" | |
158 | # | ||
159 | # General setup | ||
160 | # | ||
161 | CONFIG_LOCALVERSION="" | ||
162 | CONFIG_LOCALVERSION_AUTO=y | 196 | CONFIG_LOCALVERSION_AUTO=y |
197 | CONFIG_HAVE_KERNEL_GZIP=y | ||
198 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
199 | CONFIG_HAVE_KERNEL_LZMA=y | ||
200 | CONFIG_HAVE_KERNEL_LZO=y | ||
201 | # CONFIG_KERNEL_GZIP is not set | ||
202 | # CONFIG_KERNEL_BZIP2 is not set | ||
203 | CONFIG_KERNEL_LZMA=y | ||
204 | # CONFIG_KERNEL_LZO is not set | ||
163 | CONFIG_SWAP=y | 205 | CONFIG_SWAP=y |
164 | CONFIG_SYSVIPC=y | 206 | CONFIG_SYSVIPC=y |
165 | # CONFIG_IPC_NS is not set | ||
166 | CONFIG_SYSVIPC_SYSCTL=y | 207 | CONFIG_SYSVIPC_SYSCTL=y |
167 | # CONFIG_POSIX_MQUEUE is not set | 208 | # CONFIG_POSIX_MQUEUE is not set |
168 | # CONFIG_BSD_PROCESS_ACCT is not set | 209 | # CONFIG_BSD_PROCESS_ACCT is not set |
169 | # CONFIG_TASKSTATS is not set | 210 | # CONFIG_TASKSTATS is not set |
170 | # CONFIG_UTS_NS is not set | ||
171 | # CONFIG_AUDIT is not set | 211 | # CONFIG_AUDIT is not set |
212 | |||
213 | # | ||
214 | # RCU Subsystem | ||
215 | # | ||
216 | CONFIG_TREE_RCU=y | ||
217 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
218 | # CONFIG_TINY_RCU is not set | ||
219 | # CONFIG_RCU_TRACE is not set | ||
220 | CONFIG_RCU_FANOUT=32 | ||
221 | # CONFIG_RCU_FANOUT_EXACT is not set | ||
222 | # CONFIG_TREE_RCU_TRACE is not set | ||
172 | # CONFIG_IKCONFIG is not set | 223 | # CONFIG_IKCONFIG is not set |
173 | CONFIG_SYSFS_DEPRECATED=y | 224 | CONFIG_LOG_BUF_SHIFT=14 |
174 | CONFIG_RELAY=y | 225 | # CONFIG_GROUP_SCHED is not set |
175 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 226 | # CONFIG_CGROUPS is not set |
227 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
228 | # CONFIG_RELAY is not set | ||
229 | # CONFIG_NAMESPACES is not set | ||
230 | # CONFIG_BLK_DEV_INITRD is not set | ||
231 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
176 | CONFIG_SYSCTL=y | 232 | CONFIG_SYSCTL=y |
233 | CONFIG_ANON_INODES=y | ||
177 | CONFIG_EMBEDDED=y | 234 | CONFIG_EMBEDDED=y |
178 | CONFIG_SYSCTL_SYSCALL=y | 235 | CONFIG_SYSCTL_SYSCALL=y |
179 | CONFIG_KALLSYMS=y | 236 | # CONFIG_KALLSYMS is not set |
180 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
181 | CONFIG_HOTPLUG=y | 237 | CONFIG_HOTPLUG=y |
182 | CONFIG_PRINTK=y | 238 | CONFIG_PRINTK=y |
183 | CONFIG_BUG=y | 239 | CONFIG_BUG=y |
184 | CONFIG_ELF_CORE=y | 240 | CONFIG_ELF_CORE=y |
241 | # CONFIG_PCSPKR_PLATFORM is not set | ||
185 | CONFIG_BASE_FULL=y | 242 | CONFIG_BASE_FULL=y |
186 | CONFIG_FUTEX=y | 243 | CONFIG_FUTEX=y |
187 | CONFIG_EPOLL=y | 244 | CONFIG_EPOLL=y |
245 | CONFIG_SIGNALFD=y | ||
246 | CONFIG_TIMERFD=y | ||
247 | CONFIG_EVENTFD=y | ||
188 | CONFIG_SHMEM=y | 248 | CONFIG_SHMEM=y |
249 | CONFIG_AIO=y | ||
250 | |||
251 | # | ||
252 | # Kernel Performance Events And Counters | ||
253 | # | ||
254 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
255 | CONFIG_PCI_QUIRKS=y | ||
256 | # CONFIG_COMPAT_BRK is not set | ||
189 | CONFIG_SLAB=y | 257 | CONFIG_SLAB=y |
190 | CONFIG_VM_EVENT_COUNTERS=y | 258 | # CONFIG_SLUB is not set |
191 | CONFIG_RT_MUTEXES=y | ||
192 | # CONFIG_TINY_SHMEM is not set | ||
193 | CONFIG_BASE_SMALL=0 | ||
194 | # CONFIG_SLOB is not set | 259 | # CONFIG_SLOB is not set |
260 | # CONFIG_PROFILING is not set | ||
261 | CONFIG_HAVE_OPROFILE=y | ||
195 | 262 | ||
196 | # | 263 | # |
197 | # Loadable module support | 264 | # GCOV-based kernel profiling |
198 | # | 265 | # |
266 | # CONFIG_SLOW_WORK is not set | ||
267 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
268 | CONFIG_SLABINFO=y | ||
269 | CONFIG_RT_MUTEXES=y | ||
270 | CONFIG_BASE_SMALL=0 | ||
199 | CONFIG_MODULES=y | 271 | CONFIG_MODULES=y |
272 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
200 | CONFIG_MODULE_UNLOAD=y | 273 | CONFIG_MODULE_UNLOAD=y |
201 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 274 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
202 | CONFIG_MODVERSIONS=y | 275 | # CONFIG_MODVERSIONS is not set |
203 | CONFIG_MODULE_SRCVERSION_ALL=y | 276 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
204 | CONFIG_KMOD=y | ||
205 | |||
206 | # | ||
207 | # Block layer | ||
208 | # | ||
209 | CONFIG_BLOCK=y | 277 | CONFIG_BLOCK=y |
210 | # CONFIG_LBD is not set | 278 | CONFIG_LBDAF=y |
211 | # CONFIG_BLK_DEV_IO_TRACE is not set | 279 | CONFIG_BLK_DEV_BSG=y |
212 | # CONFIG_LSF is not set | 280 | # CONFIG_BLK_DEV_INTEGRITY is not set |
213 | 281 | ||
214 | # | 282 | # |
215 | # IO Schedulers | 283 | # IO Schedulers |
216 | # | 284 | # |
217 | CONFIG_IOSCHED_NOOP=y | 285 | CONFIG_IOSCHED_NOOP=y |
218 | CONFIG_IOSCHED_AS=y | 286 | # CONFIG_IOSCHED_DEADLINE is not set |
219 | CONFIG_IOSCHED_DEADLINE=y | 287 | # CONFIG_IOSCHED_CFQ is not set |
220 | CONFIG_IOSCHED_CFQ=y | ||
221 | CONFIG_DEFAULT_AS=y | ||
222 | # CONFIG_DEFAULT_DEADLINE is not set | 288 | # CONFIG_DEFAULT_DEADLINE is not set |
223 | # CONFIG_DEFAULT_CFQ is not set | 289 | # CONFIG_DEFAULT_CFQ is not set |
224 | # CONFIG_DEFAULT_NOOP is not set | 290 | CONFIG_DEFAULT_NOOP=y |
225 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 291 | CONFIG_DEFAULT_IOSCHED="noop" |
292 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
293 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
294 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
295 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
296 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
297 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
298 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
299 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
300 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
301 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
302 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
303 | # CONFIG_INLINE_READ_LOCK is not set | ||
304 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
305 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
306 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
307 | CONFIG_INLINE_READ_UNLOCK=y | ||
308 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
309 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
310 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
311 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
312 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
313 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
314 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
315 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
316 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
317 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
318 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
319 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
320 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
321 | CONFIG_FREEZER=y | ||
226 | 322 | ||
227 | # | 323 | # |
228 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 324 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
229 | # | 325 | # |
230 | CONFIG_HW_HAS_PCI=y | 326 | CONFIG_HW_HAS_PCI=y |
231 | CONFIG_PCI=y | 327 | CONFIG_PCI=y |
328 | CONFIG_PCI_DOMAINS=y | ||
329 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
330 | # CONFIG_PCI_LEGACY is not set | ||
331 | # CONFIG_PCI_DEBUG is not set | ||
332 | # CONFIG_PCI_STUB is not set | ||
333 | # CONFIG_PCI_IOV is not set | ||
232 | CONFIG_MMU=y | 334 | CONFIG_MMU=y |
233 | 335 | CONFIG_PCCARD=y | |
234 | # | 336 | CONFIG_PCMCIA=y |
235 | # PCCARD (PCMCIA/CardBus) support | ||
236 | # | ||
237 | CONFIG_PCCARD=m | ||
238 | # CONFIG_PCMCIA_DEBUG is not set | ||
239 | CONFIG_PCMCIA=m | ||
240 | CONFIG_PCMCIA_LOAD_CIS=y | 337 | CONFIG_PCMCIA_LOAD_CIS=y |
241 | CONFIG_PCMCIA_IOCTL=y | 338 | # CONFIG_PCMCIA_IOCTL is not set |
242 | CONFIG_CARDBUS=y | 339 | # CONFIG_CARDBUS is not set |
243 | 340 | ||
244 | # | 341 | # |
245 | # PC-card bridges | 342 | # PC-card bridges |
@@ -247,51 +344,49 @@ CONFIG_CARDBUS=y | |||
247 | # CONFIG_YENTA is not set | 344 | # CONFIG_YENTA is not set |
248 | # CONFIG_PD6729 is not set | 345 | # CONFIG_PD6729 is not set |
249 | # CONFIG_I82092 is not set | 346 | # CONFIG_I82092 is not set |
250 | CONFIG_PCMCIA_AU1X00=m | 347 | # CONFIG_PCMCIA_AU1X00 is not set |
251 | 348 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y | |
252 | # | ||
253 | # PCI Hotplug Support | ||
254 | # | ||
255 | # CONFIG_HOTPLUG_PCI is not set | 349 | # CONFIG_HOTPLUG_PCI is not set |
256 | 350 | ||
257 | # | 351 | # |
258 | # Executable file formats | 352 | # Executable file formats |
259 | # | 353 | # |
260 | CONFIG_BINFMT_ELF=y | 354 | CONFIG_BINFMT_ELF=y |
355 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
356 | # CONFIG_HAVE_AOUT is not set | ||
261 | # CONFIG_BINFMT_MISC is not set | 357 | # CONFIG_BINFMT_MISC is not set |
262 | CONFIG_TRAD_SIGNALS=y | 358 | CONFIG_TRAD_SIGNALS=y |
263 | 359 | ||
264 | # | 360 | # |
265 | # Power management options | 361 | # Power management options |
266 | # | 362 | # |
267 | # CONFIG_PM is not set | 363 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y |
268 | 364 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | |
269 | # | 365 | CONFIG_PM=y |
270 | # Networking | 366 | # CONFIG_PM_DEBUG is not set |
271 | # | 367 | CONFIG_PM_SLEEP=y |
368 | CONFIG_SUSPEND=y | ||
369 | CONFIG_SUSPEND_FREEZER=y | ||
370 | # CONFIG_HIBERNATION is not set | ||
371 | # CONFIG_APM_EMULATION is not set | ||
372 | CONFIG_PM_RUNTIME=y | ||
272 | CONFIG_NET=y | 373 | CONFIG_NET=y |
273 | 374 | ||
274 | # | 375 | # |
275 | # Networking options | 376 | # Networking options |
276 | # | 377 | # |
277 | # CONFIG_NETDEBUG is not set | ||
278 | CONFIG_PACKET=y | 378 | CONFIG_PACKET=y |
279 | # CONFIG_PACKET_MMAP is not set | 379 | CONFIG_PACKET_MMAP=y |
280 | CONFIG_UNIX=y | 380 | CONFIG_UNIX=y |
281 | CONFIG_XFRM=y | 381 | # CONFIG_NET_KEY is not set |
282 | CONFIG_XFRM_USER=m | ||
283 | # CONFIG_XFRM_SUB_POLICY is not set | ||
284 | CONFIG_XFRM_MIGRATE=y | ||
285 | CONFIG_NET_KEY=y | ||
286 | CONFIG_NET_KEY_MIGRATE=y | ||
287 | CONFIG_INET=y | 382 | CONFIG_INET=y |
288 | CONFIG_IP_MULTICAST=y | 383 | CONFIG_IP_MULTICAST=y |
289 | # CONFIG_IP_ADVANCED_ROUTER is not set | 384 | # CONFIG_IP_ADVANCED_ROUTER is not set |
290 | CONFIG_IP_FIB_HASH=y | 385 | CONFIG_IP_FIB_HASH=y |
291 | CONFIG_IP_PNP=y | 386 | CONFIG_IP_PNP=y |
292 | # CONFIG_IP_PNP_DHCP is not set | 387 | CONFIG_IP_PNP_DHCP=y |
293 | CONFIG_IP_PNP_BOOTP=y | 388 | CONFIG_IP_PNP_BOOTP=y |
294 | # CONFIG_IP_PNP_RARP is not set | 389 | CONFIG_IP_PNP_RARP=y |
295 | # CONFIG_NET_IPIP is not set | 390 | # CONFIG_NET_IPIP is not set |
296 | # CONFIG_NET_IPGRE is not set | 391 | # CONFIG_NET_IPGRE is not set |
297 | # CONFIG_IP_MROUTE is not set | 392 | # CONFIG_IP_MROUTE is not set |
@@ -302,110 +397,25 @@ CONFIG_IP_PNP_BOOTP=y | |||
302 | # CONFIG_INET_IPCOMP is not set | 397 | # CONFIG_INET_IPCOMP is not set |
303 | # CONFIG_INET_XFRM_TUNNEL is not set | 398 | # CONFIG_INET_XFRM_TUNNEL is not set |
304 | # CONFIG_INET_TUNNEL is not set | 399 | # CONFIG_INET_TUNNEL is not set |
305 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 400 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
306 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 401 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
307 | CONFIG_INET_XFRM_MODE_BEET=m | 402 | # CONFIG_INET_XFRM_MODE_BEET is not set |
308 | CONFIG_INET_DIAG=y | 403 | CONFIG_INET_LRO=y |
309 | CONFIG_INET_TCP_DIAG=y | 404 | # CONFIG_INET_DIAG is not set |
310 | # CONFIG_TCP_CONG_ADVANCED is not set | 405 | # CONFIG_TCP_CONG_ADVANCED is not set |
311 | CONFIG_TCP_CONG_CUBIC=y | 406 | CONFIG_TCP_CONG_CUBIC=y |
312 | CONFIG_DEFAULT_TCP_CONG="cubic" | 407 | CONFIG_DEFAULT_TCP_CONG="cubic" |
313 | CONFIG_TCP_MD5SIG=y | 408 | # CONFIG_TCP_MD5SIG is not set |
314 | |||
315 | # | ||
316 | # IP: Virtual Server Configuration | ||
317 | # | ||
318 | # CONFIG_IP_VS is not set | ||
319 | # CONFIG_IPV6 is not set | 409 | # CONFIG_IPV6 is not set |
320 | # CONFIG_INET6_XFRM_TUNNEL is not set | 410 | # CONFIG_NETWORK_SECMARK is not set |
321 | # CONFIG_INET6_TUNNEL is not set | 411 | # CONFIG_NETFILTER is not set |
322 | CONFIG_NETWORK_SECMARK=y | ||
323 | CONFIG_NETFILTER=y | ||
324 | # CONFIG_NETFILTER_DEBUG is not set | ||
325 | |||
326 | # | ||
327 | # Core Netfilter Configuration | ||
328 | # | ||
329 | CONFIG_NETFILTER_NETLINK=m | ||
330 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
331 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
332 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
333 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
334 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
335 | CONFIG_NF_CONNTRACK=m | ||
336 | CONFIG_NF_CT_ACCT=y | ||
337 | CONFIG_NF_CONNTRACK_MARK=y | ||
338 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
339 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
340 | CONFIG_NF_CT_PROTO_GRE=m | ||
341 | CONFIG_NF_CT_PROTO_SCTP=m | ||
342 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
343 | CONFIG_NF_CONNTRACK_FTP=m | ||
344 | CONFIG_NF_CONNTRACK_H323=m | ||
345 | CONFIG_NF_CONNTRACK_IRC=m | ||
346 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
347 | CONFIG_NF_CONNTRACK_PPTP=m | ||
348 | CONFIG_NF_CONNTRACK_SANE=m | ||
349 | CONFIG_NF_CONNTRACK_SIP=m | ||
350 | CONFIG_NF_CONNTRACK_TFTP=m | ||
351 | CONFIG_NF_CT_NETLINK=m | ||
352 | CONFIG_NETFILTER_XTABLES=m | ||
353 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
354 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
355 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
356 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
357 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
358 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
359 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
365 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
366 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
367 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
368 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
369 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
370 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
371 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
372 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
373 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
374 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
375 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
376 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
377 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
378 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
379 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
380 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
381 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
382 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
383 | |||
384 | # | ||
385 | # IP: Netfilter Configuration | ||
386 | # | ||
387 | CONFIG_NF_CONNTRACK_IPV4=m | ||
388 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
389 | # CONFIG_IP_NF_QUEUE is not set | ||
390 | # CONFIG_IP_NF_IPTABLES is not set | ||
391 | # CONFIG_IP_NF_ARPTABLES is not set | ||
392 | |||
393 | # | ||
394 | # DCCP Configuration (EXPERIMENTAL) | ||
395 | # | ||
396 | # CONFIG_IP_DCCP is not set | 412 | # CONFIG_IP_DCCP is not set |
397 | |||
398 | # | ||
399 | # SCTP Configuration (EXPERIMENTAL) | ||
400 | # | ||
401 | # CONFIG_IP_SCTP is not set | 413 | # CONFIG_IP_SCTP is not set |
402 | 414 | # CONFIG_RDS is not set | |
403 | # | ||
404 | # TIPC Configuration (EXPERIMENTAL) | ||
405 | # | ||
406 | # CONFIG_TIPC is not set | 415 | # CONFIG_TIPC is not set |
407 | # CONFIG_ATM is not set | 416 | # CONFIG_ATM is not set |
408 | # CONFIG_BRIDGE is not set | 417 | # CONFIG_BRIDGE is not set |
418 | # CONFIG_NET_DSA is not set | ||
409 | # CONFIG_VLAN_8021Q is not set | 419 | # CONFIG_VLAN_8021Q is not set |
410 | # CONFIG_DECNET is not set | 420 | # CONFIG_DECNET is not set |
411 | # CONFIG_LLC2 is not set | 421 | # CONFIG_LLC2 is not set |
@@ -415,27 +425,24 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
415 | # CONFIG_LAPB is not set | 425 | # CONFIG_LAPB is not set |
416 | # CONFIG_ECONET is not set | 426 | # CONFIG_ECONET is not set |
417 | # CONFIG_WAN_ROUTER is not set | 427 | # CONFIG_WAN_ROUTER is not set |
418 | 428 | # CONFIG_PHONET is not set | |
419 | # | 429 | # CONFIG_IEEE802154 is not set |
420 | # QoS and/or fair queueing | ||
421 | # | ||
422 | # CONFIG_NET_SCHED is not set | 430 | # CONFIG_NET_SCHED is not set |
423 | CONFIG_NET_CLS_ROUTE=y | 431 | # CONFIG_DCB is not set |
424 | 432 | ||
425 | # | 433 | # |
426 | # Network testing | 434 | # Network testing |
427 | # | 435 | # |
428 | # CONFIG_NET_PKTGEN is not set | 436 | # CONFIG_NET_PKTGEN is not set |
429 | # CONFIG_HAMRADIO is not set | 437 | # CONFIG_HAMRADIO is not set |
438 | # CONFIG_CAN is not set | ||
430 | # CONFIG_IRDA is not set | 439 | # CONFIG_IRDA is not set |
431 | # CONFIG_BT is not set | 440 | # CONFIG_BT is not set |
432 | CONFIG_IEEE80211=m | 441 | # CONFIG_AF_RXRPC is not set |
433 | # CONFIG_IEEE80211_DEBUG is not set | 442 | # CONFIG_WIRELESS is not set |
434 | CONFIG_IEEE80211_CRYPT_WEP=m | 443 | # CONFIG_WIMAX is not set |
435 | CONFIG_IEEE80211_CRYPT_CCMP=m | 444 | # CONFIG_RFKILL is not set |
436 | CONFIG_IEEE80211_SOFTMAC=m | 445 | # CONFIG_NET_9P is not set |
437 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
438 | CONFIG_WIRELESS_EXT=y | ||
439 | 446 | ||
440 | # | 447 | # |
441 | # Device Drivers | 448 | # Device Drivers |
@@ -444,25 +451,25 @@ CONFIG_WIRELESS_EXT=y | |||
444 | # | 451 | # |
445 | # Generic Driver Options | 452 | # Generic Driver Options |
446 | # | 453 | # |
454 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
455 | # CONFIG_DEVTMPFS is not set | ||
447 | CONFIG_STANDALONE=y | 456 | CONFIG_STANDALONE=y |
448 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 457 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
449 | CONFIG_FW_LOADER=m | 458 | CONFIG_FW_LOADER=y |
459 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
460 | CONFIG_EXTRA_FIRMWARE="" | ||
461 | # CONFIG_DEBUG_DRIVER is not set | ||
462 | # CONFIG_DEBUG_DEVRES is not set | ||
450 | # CONFIG_SYS_HYPERVISOR is not set | 463 | # CONFIG_SYS_HYPERVISOR is not set |
451 | 464 | # CONFIG_CONNECTOR is not set | |
452 | # | ||
453 | # Connector - unified userspace <-> kernelspace linker | ||
454 | # | ||
455 | CONFIG_CONNECTOR=m | ||
456 | |||
457 | # | ||
458 | # Memory Technology Devices (MTD) | ||
459 | # | ||
460 | CONFIG_MTD=y | 465 | CONFIG_MTD=y |
461 | # CONFIG_MTD_DEBUG is not set | 466 | # CONFIG_MTD_DEBUG is not set |
467 | # CONFIG_MTD_TESTS is not set | ||
462 | # CONFIG_MTD_CONCAT is not set | 468 | # CONFIG_MTD_CONCAT is not set |
463 | CONFIG_MTD_PARTITIONS=y | 469 | CONFIG_MTD_PARTITIONS=y |
464 | # CONFIG_MTD_REDBOOT_PARTS is not set | 470 | # CONFIG_MTD_REDBOOT_PARTS is not set |
465 | # CONFIG_MTD_CMDLINE_PARTS is not set | 471 | CONFIG_MTD_CMDLINE_PARTS=y |
472 | # CONFIG_MTD_AR7_PARTS is not set | ||
466 | 473 | ||
467 | # | 474 | # |
468 | # User Modules And Translation Layers | 475 | # User Modules And Translation Layers |
@@ -475,6 +482,7 @@ CONFIG_MTD_BLOCK=y | |||
475 | # CONFIG_INFTL is not set | 482 | # CONFIG_INFTL is not set |
476 | # CONFIG_RFD_FTL is not set | 483 | # CONFIG_RFD_FTL is not set |
477 | # CONFIG_SSFDC is not set | 484 | # CONFIG_SSFDC is not set |
485 | # CONFIG_MTD_OOPS is not set | ||
478 | 486 | ||
479 | # | 487 | # |
480 | # RAM/ROM/Flash chip drivers | 488 | # RAM/ROM/Flash chip drivers |
@@ -500,14 +508,14 @@ CONFIG_MTD_CFI_UTIL=y | |||
500 | # CONFIG_MTD_RAM is not set | 508 | # CONFIG_MTD_RAM is not set |
501 | # CONFIG_MTD_ROM is not set | 509 | # CONFIG_MTD_ROM is not set |
502 | # CONFIG_MTD_ABSENT is not set | 510 | # CONFIG_MTD_ABSENT is not set |
503 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
504 | 511 | ||
505 | # | 512 | # |
506 | # Mapping drivers for chip access | 513 | # Mapping drivers for chip access |
507 | # | 514 | # |
508 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 515 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
509 | # CONFIG_MTD_PHYSMAP is not set | 516 | CONFIG_MTD_PHYSMAP=y |
510 | CONFIG_MTD_ALCHEMY=y | 517 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
518 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
511 | # CONFIG_MTD_PLATRAM is not set | 519 | # CONFIG_MTD_PLATRAM is not set |
512 | 520 | ||
513 | # | 521 | # |
@@ -525,152 +533,152 @@ CONFIG_MTD_ALCHEMY=y | |||
525 | # CONFIG_MTD_DOC2000 is not set | 533 | # CONFIG_MTD_DOC2000 is not set |
526 | # CONFIG_MTD_DOC2001 is not set | 534 | # CONFIG_MTD_DOC2001 is not set |
527 | # CONFIG_MTD_DOC2001PLUS is not set | 535 | # CONFIG_MTD_DOC2001PLUS is not set |
528 | |||
529 | # | ||
530 | # NAND Flash Device Drivers | ||
531 | # | ||
532 | # CONFIG_MTD_NAND is not set | 536 | # CONFIG_MTD_NAND is not set |
533 | |||
534 | # | ||
535 | # OneNAND Flash Device Drivers | ||
536 | # | ||
537 | # CONFIG_MTD_ONENAND is not set | 537 | # CONFIG_MTD_ONENAND is not set |
538 | 538 | ||
539 | # | 539 | # |
540 | # Parallel port support | 540 | # LPDDR flash memory drivers |
541 | # | ||
542 | # CONFIG_PARPORT is not set | ||
543 | |||
544 | # | ||
545 | # Plug and Play support | ||
546 | # | 541 | # |
547 | # CONFIG_PNPACPI is not set | 542 | # CONFIG_MTD_LPDDR is not set |
548 | 543 | ||
549 | # | 544 | # |
550 | # Block devices | 545 | # UBI - Unsorted block images |
551 | # | 546 | # |
547 | # CONFIG_MTD_UBI is not set | ||
548 | # CONFIG_PARPORT is not set | ||
549 | CONFIG_BLK_DEV=y | ||
552 | # CONFIG_BLK_CPQ_DA is not set | 550 | # CONFIG_BLK_CPQ_DA is not set |
553 | # CONFIG_BLK_CPQ_CISS_DA is not set | 551 | # CONFIG_BLK_CPQ_CISS_DA is not set |
554 | # CONFIG_BLK_DEV_DAC960 is not set | 552 | # CONFIG_BLK_DEV_DAC960 is not set |
555 | # CONFIG_BLK_DEV_UMEM is not set | 553 | # CONFIG_BLK_DEV_UMEM is not set |
556 | # CONFIG_BLK_DEV_COW_COMMON is not set | 554 | # CONFIG_BLK_DEV_COW_COMMON is not set |
557 | CONFIG_BLK_DEV_LOOP=y | 555 | # CONFIG_BLK_DEV_LOOP is not set |
558 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 556 | |
557 | # | ||
558 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected | ||
559 | # | ||
559 | # CONFIG_BLK_DEV_NBD is not set | 560 | # CONFIG_BLK_DEV_NBD is not set |
560 | # CONFIG_BLK_DEV_SX8 is not set | 561 | # CONFIG_BLK_DEV_SX8 is not set |
561 | # CONFIG_BLK_DEV_UB is not set | 562 | # CONFIG_BLK_DEV_UB is not set |
562 | # CONFIG_BLK_DEV_RAM is not set | 563 | # CONFIG_BLK_DEV_RAM is not set |
563 | # CONFIG_BLK_DEV_INITRD is not set | 564 | # CONFIG_CDROM_PKTCDVD is not set |
564 | CONFIG_CDROM_PKTCDVD=m | 565 | # CONFIG_ATA_OVER_ETH is not set |
565 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 566 | # CONFIG_BLK_DEV_HD is not set |
566 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 567 | # CONFIG_MISC_DEVICES is not set |
567 | CONFIG_ATA_OVER_ETH=m | 568 | CONFIG_HAVE_IDE=y |
568 | |||
569 | # | ||
570 | # Misc devices | ||
571 | # | ||
572 | CONFIG_SGI_IOC4=m | ||
573 | # CONFIG_TIFM_CORE is not set | ||
574 | |||
575 | # | ||
576 | # ATA/ATAPI/MFM/RLL support | ||
577 | # | ||
578 | CONFIG_IDE=y | 569 | CONFIG_IDE=y |
579 | CONFIG_IDE_MAX_HWIFS=4 | ||
580 | CONFIG_BLK_DEV_IDE=y | ||
581 | 570 | ||
582 | # | 571 | # |
583 | # Please see Documentation/ide.txt for help/info on IDE drives | 572 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
584 | # | 573 | # |
574 | CONFIG_IDE_XFER_MODE=y | ||
585 | # CONFIG_BLK_DEV_IDE_SATA is not set | 575 | # CONFIG_BLK_DEV_IDE_SATA is not set |
586 | CONFIG_BLK_DEV_IDEDISK=y | 576 | CONFIG_IDE_GD=y |
587 | # CONFIG_IDEDISK_MULTI_MODE is not set | 577 | CONFIG_IDE_GD_ATA=y |
588 | CONFIG_BLK_DEV_IDECS=m | 578 | # CONFIG_IDE_GD_ATAPI is not set |
589 | # CONFIG_BLK_DEV_DELKIN is not set | 579 | CONFIG_BLK_DEV_IDECS=y |
590 | # CONFIG_BLK_DEV_IDECD is not set | 580 | # CONFIG_BLK_DEV_IDECD is not set |
591 | # CONFIG_BLK_DEV_IDETAPE is not set | 581 | # CONFIG_BLK_DEV_IDETAPE is not set |
592 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
593 | # CONFIG_IDE_TASK_IOCTL is not set | 582 | # CONFIG_IDE_TASK_IOCTL is not set |
583 | CONFIG_IDE_PROC_FS=y | ||
594 | 584 | ||
595 | # | 585 | # |
596 | # IDE chipset support/bugfixes | 586 | # IDE chipset support/bugfixes |
597 | # | 587 | # |
598 | # CONFIG_IDE_GENERIC is not set | 588 | # CONFIG_IDE_GENERIC is not set |
599 | # CONFIG_BLK_DEV_IDEPCI is not set | 589 | # CONFIG_BLK_DEV_PLATFORM is not set |
600 | # CONFIG_IDE_ARM is not set | 590 | CONFIG_BLK_DEV_IDEDMA_SFF=y |
601 | # CONFIG_BLK_DEV_IDEDMA is not set | 591 | |
602 | # CONFIG_IDEDMA_AUTO is not set | 592 | # |
603 | # CONFIG_BLK_DEV_HD is not set | 593 | # PCI IDE chipsets support |
594 | # | ||
595 | CONFIG_BLK_DEV_IDEPCI=y | ||
596 | # CONFIG_IDEPCI_PCIBUS_ORDER is not set | ||
597 | # CONFIG_BLK_DEV_OFFBOARD is not set | ||
598 | # CONFIG_BLK_DEV_GENERIC is not set | ||
599 | # CONFIG_BLK_DEV_OPTI621 is not set | ||
600 | CONFIG_BLK_DEV_IDEDMA_PCI=y | ||
601 | # CONFIG_BLK_DEV_AEC62XX is not set | ||
602 | # CONFIG_BLK_DEV_ALI15X3 is not set | ||
603 | # CONFIG_BLK_DEV_AMD74XX is not set | ||
604 | # CONFIG_BLK_DEV_CMD64X is not set | ||
605 | # CONFIG_BLK_DEV_TRIFLEX is not set | ||
606 | # CONFIG_BLK_DEV_CS5520 is not set | ||
607 | # CONFIG_BLK_DEV_CS5530 is not set | ||
608 | CONFIG_BLK_DEV_HPT366=y | ||
609 | # CONFIG_BLK_DEV_JMICRON is not set | ||
610 | # CONFIG_BLK_DEV_SC1200 is not set | ||
611 | # CONFIG_BLK_DEV_PIIX is not set | ||
612 | # CONFIG_BLK_DEV_IT8172 is not set | ||
613 | # CONFIG_BLK_DEV_IT8213 is not set | ||
614 | # CONFIG_BLK_DEV_IT821X is not set | ||
615 | # CONFIG_BLK_DEV_NS87415 is not set | ||
616 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | ||
617 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set | ||
618 | # CONFIG_BLK_DEV_SVWKS is not set | ||
619 | # CONFIG_BLK_DEV_SIIMAGE is not set | ||
620 | # CONFIG_BLK_DEV_SLC90E66 is not set | ||
621 | # CONFIG_BLK_DEV_TRM290 is not set | ||
622 | # CONFIG_BLK_DEV_VIA82CXXX is not set | ||
623 | # CONFIG_BLK_DEV_TC86C001 is not set | ||
624 | CONFIG_BLK_DEV_IDEDMA=y | ||
604 | 625 | ||
605 | # | 626 | # |
606 | # SCSI device support | 627 | # SCSI device support |
607 | # | 628 | # |
608 | CONFIG_RAID_ATTRS=m | 629 | # CONFIG_RAID_ATTRS is not set |
609 | # CONFIG_SCSI is not set | 630 | # CONFIG_SCSI is not set |
631 | # CONFIG_SCSI_DMA is not set | ||
610 | # CONFIG_SCSI_NETLINK is not set | 632 | # CONFIG_SCSI_NETLINK is not set |
611 | |||
612 | # | ||
613 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
614 | # | ||
615 | # CONFIG_ATA is not set | 633 | # CONFIG_ATA is not set |
616 | |||
617 | # | ||
618 | # Multi-device support (RAID and LVM) | ||
619 | # | ||
620 | # CONFIG_MD is not set | 634 | # CONFIG_MD is not set |
621 | |||
622 | # | ||
623 | # Fusion MPT device support | ||
624 | # | ||
625 | # CONFIG_FUSION is not set | 635 | # CONFIG_FUSION is not set |
626 | 636 | ||
627 | # | 637 | # |
628 | # IEEE 1394 (FireWire) support | 638 | # IEEE 1394 (FireWire) support |
629 | # | 639 | # |
630 | # CONFIG_IEEE1394 is not set | ||
631 | 640 | ||
632 | # | 641 | # |
633 | # I2O device support | 642 | # You can enable one or both FireWire driver stacks. |
634 | # | 643 | # |
635 | # CONFIG_I2O is not set | ||
636 | 644 | ||
637 | # | 645 | # |
638 | # Network device support | 646 | # The newer stack is recommended. |
639 | # | 647 | # |
648 | # CONFIG_FIREWIRE is not set | ||
649 | # CONFIG_IEEE1394 is not set | ||
650 | # CONFIG_I2O is not set | ||
640 | CONFIG_NETDEVICES=y | 651 | CONFIG_NETDEVICES=y |
641 | # CONFIG_DUMMY is not set | 652 | # CONFIG_DUMMY is not set |
642 | # CONFIG_BONDING is not set | 653 | # CONFIG_BONDING is not set |
654 | # CONFIG_MACVLAN is not set | ||
643 | # CONFIG_EQUALIZER is not set | 655 | # CONFIG_EQUALIZER is not set |
644 | # CONFIG_TUN is not set | 656 | # CONFIG_TUN is not set |
645 | 657 | # CONFIG_VETH is not set | |
646 | # | ||
647 | # ARCnet devices | ||
648 | # | ||
649 | # CONFIG_ARCNET is not set | 658 | # CONFIG_ARCNET is not set |
650 | |||
651 | # | ||
652 | # PHY device support | ||
653 | # | ||
654 | CONFIG_PHYLIB=y | 659 | CONFIG_PHYLIB=y |
655 | 660 | ||
656 | # | 661 | # |
657 | # MII PHY device drivers | 662 | # MII PHY device drivers |
658 | # | 663 | # |
659 | CONFIG_MARVELL_PHY=m | 664 | CONFIG_MARVELL_PHY=y |
660 | CONFIG_DAVICOM_PHY=m | 665 | CONFIG_DAVICOM_PHY=y |
661 | CONFIG_QSEMI_PHY=m | 666 | CONFIG_QSEMI_PHY=y |
662 | CONFIG_LXT_PHY=m | 667 | CONFIG_LXT_PHY=y |
663 | CONFIG_CICADA_PHY=m | 668 | CONFIG_CICADA_PHY=y |
664 | CONFIG_VITESSE_PHY=m | 669 | CONFIG_VITESSE_PHY=y |
665 | CONFIG_SMSC_PHY=m | 670 | CONFIG_SMSC_PHY=y |
666 | # CONFIG_BROADCOM_PHY is not set | 671 | CONFIG_BROADCOM_PHY=y |
672 | CONFIG_ICPLUS_PHY=y | ||
673 | CONFIG_REALTEK_PHY=y | ||
674 | CONFIG_NATIONAL_PHY=y | ||
675 | CONFIG_STE10XP=y | ||
676 | CONFIG_LSI_ET1011C_PHY=y | ||
667 | # CONFIG_FIXED_PHY is not set | 677 | # CONFIG_FIXED_PHY is not set |
668 | 678 | # CONFIG_MDIO_BITBANG is not set | |
669 | # | ||
670 | # Ethernet (10 or 100Mbit) | ||
671 | # | ||
672 | CONFIG_NET_ETHERNET=y | 679 | CONFIG_NET_ETHERNET=y |
673 | # CONFIG_MII is not set | 680 | CONFIG_MII=y |
681 | # CONFIG_AX88796 is not set | ||
674 | CONFIG_MIPS_AU1X00_ENET=y | 682 | CONFIG_MIPS_AU1X00_ENET=y |
675 | # CONFIG_HAPPYMEAL is not set | 683 | # CONFIG_HAPPYMEAL is not set |
676 | # CONFIG_SUNGEM is not set | 684 | # CONFIG_SUNGEM is not set |
@@ -678,88 +686,51 @@ CONFIG_MIPS_AU1X00_ENET=y | |||
678 | # CONFIG_NET_VENDOR_3COM is not set | 686 | # CONFIG_NET_VENDOR_3COM is not set |
679 | # CONFIG_SMC91X is not set | 687 | # CONFIG_SMC91X is not set |
680 | # CONFIG_DM9000 is not set | 688 | # CONFIG_DM9000 is not set |
681 | 689 | # CONFIG_ETHOC is not set | |
682 | # | 690 | # CONFIG_SMSC911X is not set |
683 | # Tulip family network device support | 691 | # CONFIG_DNET is not set |
684 | # | ||
685 | # CONFIG_NET_TULIP is not set | 692 | # CONFIG_NET_TULIP is not set |
686 | # CONFIG_HP100 is not set | 693 | # CONFIG_HP100 is not set |
694 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
695 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
696 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
697 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
698 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
699 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
700 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
687 | # CONFIG_NET_PCI is not set | 701 | # CONFIG_NET_PCI is not set |
688 | 702 | # CONFIG_B44 is not set | |
689 | # | 703 | # CONFIG_KS8842 is not set |
690 | # Ethernet (1000 Mbit) | 704 | # CONFIG_KS8851_MLL is not set |
691 | # | 705 | # CONFIG_ATL2 is not set |
692 | # CONFIG_ACENIC is not set | 706 | # CONFIG_NETDEV_1000 is not set |
693 | # CONFIG_DL2K is not set | 707 | # CONFIG_NETDEV_10000 is not set |
694 | # CONFIG_E1000 is not set | ||
695 | # CONFIG_NS83820 is not set | ||
696 | # CONFIG_HAMACHI is not set | ||
697 | # CONFIG_YELLOWFIN is not set | ||
698 | # CONFIG_R8169 is not set | ||
699 | # CONFIG_SIS190 is not set | ||
700 | # CONFIG_SKGE is not set | ||
701 | # CONFIG_SKY2 is not set | ||
702 | # CONFIG_SK98LIN is not set | ||
703 | # CONFIG_TIGON3 is not set | ||
704 | # CONFIG_BNX2 is not set | ||
705 | CONFIG_QLA3XXX=m | ||
706 | # CONFIG_ATL1 is not set | ||
707 | |||
708 | # | ||
709 | # Ethernet (10000 Mbit) | ||
710 | # | ||
711 | # CONFIG_CHELSIO_T1 is not set | ||
712 | CONFIG_CHELSIO_T3=m | ||
713 | # CONFIG_IXGB is not set | ||
714 | # CONFIG_S2IO is not set | ||
715 | # CONFIG_MYRI10GE is not set | ||
716 | CONFIG_NETXEN_NIC=m | ||
717 | |||
718 | # | ||
719 | # Token Ring devices | ||
720 | # | ||
721 | # CONFIG_TR is not set | 708 | # CONFIG_TR is not set |
709 | # CONFIG_WLAN is not set | ||
722 | 710 | ||
723 | # | 711 | # |
724 | # Wireless LAN (non-hamradio) | 712 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
725 | # | 713 | # |
726 | # CONFIG_NET_RADIO is not set | ||
727 | 714 | ||
728 | # | 715 | # |
729 | # PCMCIA network device support | 716 | # USB Network Adapters |
730 | # | 717 | # |
718 | # CONFIG_USB_CATC is not set | ||
719 | # CONFIG_USB_KAWETH is not set | ||
720 | # CONFIG_USB_PEGASUS is not set | ||
721 | # CONFIG_USB_RTL8150 is not set | ||
722 | # CONFIG_USB_USBNET is not set | ||
731 | # CONFIG_NET_PCMCIA is not set | 723 | # CONFIG_NET_PCMCIA is not set |
732 | |||
733 | # | ||
734 | # Wan interfaces | ||
735 | # | ||
736 | # CONFIG_WAN is not set | 724 | # CONFIG_WAN is not set |
737 | # CONFIG_FDDI is not set | 725 | # CONFIG_FDDI is not set |
738 | # CONFIG_HIPPI is not set | 726 | # CONFIG_HIPPI is not set |
739 | CONFIG_PPP=m | 727 | # CONFIG_PPP is not set |
740 | CONFIG_PPP_MULTILINK=y | ||
741 | # CONFIG_PPP_FILTER is not set | ||
742 | CONFIG_PPP_ASYNC=m | ||
743 | # CONFIG_PPP_SYNC_TTY is not set | ||
744 | CONFIG_PPP_DEFLATE=m | ||
745 | # CONFIG_PPP_BSDCOMP is not set | ||
746 | CONFIG_PPP_MPPE=m | ||
747 | CONFIG_PPPOE=m | ||
748 | # CONFIG_SLIP is not set | 728 | # CONFIG_SLIP is not set |
749 | CONFIG_SLHC=m | ||
750 | # CONFIG_SHAPER is not set | ||
751 | # CONFIG_NETCONSOLE is not set | 729 | # CONFIG_NETCONSOLE is not set |
752 | # CONFIG_NETPOLL is not set | 730 | # CONFIG_NETPOLL is not set |
753 | # CONFIG_NET_POLL_CONTROLLER is not set | 731 | # CONFIG_NET_POLL_CONTROLLER is not set |
754 | 732 | # CONFIG_VMXNET3 is not set | |
755 | # | ||
756 | # ISDN subsystem | ||
757 | # | ||
758 | # CONFIG_ISDN is not set | 733 | # CONFIG_ISDN is not set |
759 | |||
760 | # | ||
761 | # Telephony Support | ||
762 | # | ||
763 | # CONFIG_PHONE is not set | 734 | # CONFIG_PHONE is not set |
764 | 735 | ||
765 | # | 736 | # |
@@ -767,16 +738,14 @@ CONFIG_SLHC=m | |||
767 | # | 738 | # |
768 | CONFIG_INPUT=y | 739 | CONFIG_INPUT=y |
769 | # CONFIG_INPUT_FF_MEMLESS is not set | 740 | # CONFIG_INPUT_FF_MEMLESS is not set |
741 | # CONFIG_INPUT_POLLDEV is not set | ||
742 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
770 | 743 | ||
771 | # | 744 | # |
772 | # Userland interfaces | 745 | # Userland interfaces |
773 | # | 746 | # |
774 | CONFIG_INPUT_MOUSEDEV=y | 747 | # CONFIG_INPUT_MOUSEDEV is not set |
775 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
776 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
777 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
778 | # CONFIG_INPUT_JOYDEV is not set | 748 | # CONFIG_INPUT_JOYDEV is not set |
779 | # CONFIG_INPUT_TSDEV is not set | ||
780 | CONFIG_INPUT_EVDEV=y | 749 | CONFIG_INPUT_EVDEV=y |
781 | # CONFIG_INPUT_EVBUG is not set | 750 | # CONFIG_INPUT_EVBUG is not set |
782 | 751 | ||
@@ -786,33 +755,34 @@ CONFIG_INPUT_EVDEV=y | |||
786 | # CONFIG_INPUT_KEYBOARD is not set | 755 | # CONFIG_INPUT_KEYBOARD is not set |
787 | # CONFIG_INPUT_MOUSE is not set | 756 | # CONFIG_INPUT_MOUSE is not set |
788 | # CONFIG_INPUT_JOYSTICK is not set | 757 | # CONFIG_INPUT_JOYSTICK is not set |
758 | # CONFIG_INPUT_TABLET is not set | ||
789 | # CONFIG_INPUT_TOUCHSCREEN is not set | 759 | # CONFIG_INPUT_TOUCHSCREEN is not set |
790 | # CONFIG_INPUT_MISC is not set | 760 | # CONFIG_INPUT_MISC is not set |
791 | 761 | ||
792 | # | 762 | # |
793 | # Hardware I/O ports | 763 | # Hardware I/O ports |
794 | # | 764 | # |
795 | CONFIG_SERIO=y | 765 | # CONFIG_SERIO is not set |
796 | # CONFIG_SERIO_I8042 is not set | ||
797 | CONFIG_SERIO_SERPORT=y | ||
798 | # CONFIG_SERIO_PCIPS2 is not set | ||
799 | # CONFIG_SERIO_LIBPS2 is not set | ||
800 | CONFIG_SERIO_RAW=m | ||
801 | # CONFIG_GAMEPORT is not set | 766 | # CONFIG_GAMEPORT is not set |
802 | 767 | ||
803 | # | 768 | # |
804 | # Character devices | 769 | # Character devices |
805 | # | 770 | # |
806 | # CONFIG_VT is not set | 771 | CONFIG_VT=y |
772 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
773 | CONFIG_VT_CONSOLE=y | ||
774 | CONFIG_HW_CONSOLE=y | ||
775 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
776 | CONFIG_DEVKMEM=y | ||
807 | # CONFIG_SERIAL_NONSTANDARD is not set | 777 | # CONFIG_SERIAL_NONSTANDARD is not set |
808 | # CONFIG_AU1X00_GPIO is not set | 778 | # CONFIG_NOZOMI is not set |
809 | 779 | ||
810 | # | 780 | # |
811 | # Serial drivers | 781 | # Serial drivers |
812 | # | 782 | # |
813 | CONFIG_SERIAL_8250=y | 783 | CONFIG_SERIAL_8250=y |
814 | CONFIG_SERIAL_8250_CONSOLE=y | 784 | CONFIG_SERIAL_8250_CONSOLE=y |
815 | CONFIG_SERIAL_8250_PCI=y | 785 | # CONFIG_SERIAL_8250_PCI is not set |
816 | # CONFIG_SERIAL_8250_CS is not set | 786 | # CONFIG_SERIAL_8250_CS is not set |
817 | CONFIG_SERIAL_8250_NR_UARTS=4 | 787 | CONFIG_SERIAL_8250_NR_UARTS=4 |
818 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 788 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
@@ -826,301 +796,143 @@ CONFIG_SERIAL_CORE=y | |||
826 | CONFIG_SERIAL_CORE_CONSOLE=y | 796 | CONFIG_SERIAL_CORE_CONSOLE=y |
827 | # CONFIG_SERIAL_JSM is not set | 797 | # CONFIG_SERIAL_JSM is not set |
828 | CONFIG_UNIX98_PTYS=y | 798 | CONFIG_UNIX98_PTYS=y |
829 | CONFIG_LEGACY_PTYS=y | 799 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
830 | CONFIG_LEGACY_PTY_COUNT=256 | 800 | # CONFIG_LEGACY_PTYS is not set |
831 | |||
832 | # | ||
833 | # IPMI | ||
834 | # | ||
835 | # CONFIG_IPMI_HANDLER is not set | 801 | # CONFIG_IPMI_HANDLER is not set |
836 | |||
837 | # | ||
838 | # Watchdog Cards | ||
839 | # | ||
840 | # CONFIG_WATCHDOG is not set | ||
841 | # CONFIG_HW_RANDOM is not set | 802 | # CONFIG_HW_RANDOM is not set |
842 | # CONFIG_RTC is not set | ||
843 | # CONFIG_GEN_RTC is not set | ||
844 | # CONFIG_DTLK is not set | ||
845 | # CONFIG_R3964 is not set | 803 | # CONFIG_R3964 is not set |
846 | # CONFIG_APPLICOM is not set | 804 | # CONFIG_APPLICOM is not set |
847 | # CONFIG_DRM is not set | ||
848 | 805 | ||
849 | # | 806 | # |
850 | # PCMCIA character devices | 807 | # PCMCIA character devices |
851 | # | 808 | # |
852 | CONFIG_SYNCLINK_CS=m | 809 | # CONFIG_SYNCLINK_CS is not set |
853 | # CONFIG_CARDMAN_4000 is not set | 810 | # CONFIG_CARDMAN_4000 is not set |
854 | # CONFIG_CARDMAN_4040 is not set | 811 | # CONFIG_CARDMAN_4040 is not set |
812 | # CONFIG_IPWIRELESS is not set | ||
855 | # CONFIG_RAW_DRIVER is not set | 813 | # CONFIG_RAW_DRIVER is not set |
856 | |||
857 | # | ||
858 | # TPM devices | ||
859 | # | ||
860 | # CONFIG_TCG_TPM is not set | 814 | # CONFIG_TCG_TPM is not set |
861 | 815 | CONFIG_DEVPORT=y | |
862 | # | ||
863 | # I2C support | ||
864 | # | ||
865 | # CONFIG_I2C is not set | 816 | # CONFIG_I2C is not set |
866 | |||
867 | # | ||
868 | # SPI support | ||
869 | # | ||
870 | # CONFIG_SPI is not set | 817 | # CONFIG_SPI is not set |
871 | # CONFIG_SPI_MASTER is not set | ||
872 | 818 | ||
873 | # | 819 | # |
874 | # Dallas's 1-wire bus | 820 | # PPS support |
875 | # | 821 | # |
822 | # CONFIG_PPS is not set | ||
823 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
824 | # CONFIG_GPIOLIB is not set | ||
876 | # CONFIG_W1 is not set | 825 | # CONFIG_W1 is not set |
877 | 826 | # CONFIG_POWER_SUPPLY is not set | |
878 | # | ||
879 | # Hardware Monitoring support | ||
880 | # | ||
881 | # CONFIG_HWMON is not set | 827 | # CONFIG_HWMON is not set |
882 | # CONFIG_HWMON_VID is not set | 828 | # CONFIG_THERMAL is not set |
829 | # CONFIG_WATCHDOG is not set | ||
830 | CONFIG_SSB_POSSIBLE=y | ||
883 | 831 | ||
884 | # | 832 | # |
885 | # Multimedia devices | 833 | # Sonics Silicon Backplane |
886 | # | 834 | # |
887 | # CONFIG_VIDEO_DEV is not set | 835 | # CONFIG_SSB is not set |
888 | 836 | ||
889 | # | 837 | # |
890 | # Digital Video Broadcasting Devices | 838 | # Multifunction device drivers |
891 | # | 839 | # |
892 | # CONFIG_DVB is not set | 840 | # CONFIG_MFD_CORE is not set |
893 | # CONFIG_USB_DABUSB is not set | 841 | # CONFIG_MFD_SM501 is not set |
842 | # CONFIG_HTC_PASIC3 is not set | ||
843 | # CONFIG_MFD_TMIO is not set | ||
844 | # CONFIG_REGULATOR is not set | ||
845 | # CONFIG_MEDIA_SUPPORT is not set | ||
894 | 846 | ||
895 | # | 847 | # |
896 | # Graphics support | 848 | # Graphics support |
897 | # | 849 | # |
898 | # CONFIG_FIRMWARE_EDID is not set | 850 | # CONFIG_VGA_ARB is not set |
851 | # CONFIG_DRM is not set | ||
852 | # CONFIG_VGASTATE is not set | ||
853 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
899 | # CONFIG_FB is not set | 854 | # CONFIG_FB is not set |
900 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 855 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
901 | 856 | ||
902 | # | 857 | # |
903 | # Sound | 858 | # Display device support |
904 | # | 859 | # |
905 | CONFIG_SOUND=y | 860 | # CONFIG_DISPLAY_SUPPORT is not set |
906 | 861 | ||
907 | # | 862 | # |
908 | # Advanced Linux Sound Architecture | 863 | # Console display driver support |
909 | # | ||
910 | CONFIG_SND=m | ||
911 | CONFIG_SND_TIMER=m | ||
912 | CONFIG_SND_PCM=m | ||
913 | CONFIG_SND_RAWMIDI=m | ||
914 | CONFIG_SND_SEQUENCER=m | ||
915 | CONFIG_SND_SEQ_DUMMY=m | ||
916 | CONFIG_SND_OSSEMUL=y | ||
917 | CONFIG_SND_MIXER_OSS=m | ||
918 | CONFIG_SND_PCM_OSS=m | ||
919 | CONFIG_SND_PCM_OSS_PLUGINS=y | ||
920 | CONFIG_SND_SEQUENCER_OSS=y | ||
921 | # CONFIG_SND_DYNAMIC_MINORS is not set | ||
922 | CONFIG_SND_SUPPORT_OLD_API=y | ||
923 | CONFIG_SND_VERBOSE_PROCFS=y | ||
924 | # CONFIG_SND_VERBOSE_PRINTK is not set | ||
925 | # CONFIG_SND_DEBUG is not set | ||
926 | |||
927 | # | ||
928 | # Generic devices | ||
929 | # | ||
930 | CONFIG_SND_AC97_CODEC=m | ||
931 | # CONFIG_SND_DUMMY is not set | ||
932 | CONFIG_SND_VIRMIDI=m | ||
933 | CONFIG_SND_MTPAV=m | ||
934 | # CONFIG_SND_SERIAL_U16550 is not set | ||
935 | # CONFIG_SND_MPU401 is not set | ||
936 | |||
937 | # | ||
938 | # PCI devices | ||
939 | # | ||
940 | # CONFIG_SND_AD1889 is not set | ||
941 | # CONFIG_SND_ALS300 is not set | ||
942 | # CONFIG_SND_ALI5451 is not set | ||
943 | # CONFIG_SND_ATIIXP is not set | ||
944 | # CONFIG_SND_ATIIXP_MODEM is not set | ||
945 | # CONFIG_SND_AU8810 is not set | ||
946 | # CONFIG_SND_AU8820 is not set | ||
947 | # CONFIG_SND_AU8830 is not set | ||
948 | # CONFIG_SND_AZT3328 is not set | ||
949 | # CONFIG_SND_BT87X is not set | ||
950 | # CONFIG_SND_CA0106 is not set | ||
951 | # CONFIG_SND_CMIPCI is not set | ||
952 | # CONFIG_SND_CS4281 is not set | ||
953 | # CONFIG_SND_CS46XX is not set | ||
954 | # CONFIG_SND_DARLA20 is not set | ||
955 | # CONFIG_SND_GINA20 is not set | ||
956 | # CONFIG_SND_LAYLA20 is not set | ||
957 | # CONFIG_SND_DARLA24 is not set | ||
958 | # CONFIG_SND_GINA24 is not set | ||
959 | # CONFIG_SND_LAYLA24 is not set | ||
960 | # CONFIG_SND_MONA is not set | ||
961 | # CONFIG_SND_MIA is not set | ||
962 | # CONFIG_SND_ECHO3G is not set | ||
963 | # CONFIG_SND_INDIGO is not set | ||
964 | # CONFIG_SND_INDIGOIO is not set | ||
965 | # CONFIG_SND_INDIGODJ is not set | ||
966 | # CONFIG_SND_EMU10K1 is not set | ||
967 | # CONFIG_SND_EMU10K1X is not set | ||
968 | # CONFIG_SND_ENS1370 is not set | ||
969 | # CONFIG_SND_ENS1371 is not set | ||
970 | # CONFIG_SND_ES1938 is not set | ||
971 | # CONFIG_SND_ES1968 is not set | ||
972 | # CONFIG_SND_FM801 is not set | ||
973 | # CONFIG_SND_HDA_INTEL is not set | ||
974 | # CONFIG_SND_HDSP is not set | ||
975 | # CONFIG_SND_HDSPM is not set | ||
976 | # CONFIG_SND_ICE1712 is not set | ||
977 | # CONFIG_SND_ICE1724 is not set | ||
978 | # CONFIG_SND_INTEL8X0 is not set | ||
979 | # CONFIG_SND_INTEL8X0M is not set | ||
980 | # CONFIG_SND_KORG1212 is not set | ||
981 | # CONFIG_SND_MAESTRO3 is not set | ||
982 | # CONFIG_SND_MIXART is not set | ||
983 | # CONFIG_SND_NM256 is not set | ||
984 | # CONFIG_SND_PCXHR is not set | ||
985 | # CONFIG_SND_RIPTIDE is not set | ||
986 | # CONFIG_SND_RME32 is not set | ||
987 | # CONFIG_SND_RME96 is not set | ||
988 | # CONFIG_SND_RME9652 is not set | ||
989 | # CONFIG_SND_SONICVIBES is not set | ||
990 | # CONFIG_SND_TRIDENT is not set | ||
991 | # CONFIG_SND_VIA82XX is not set | ||
992 | # CONFIG_SND_VIA82XX_MODEM is not set | ||
993 | # CONFIG_SND_VX222 is not set | ||
994 | # CONFIG_SND_YMFPCI is not set | ||
995 | # CONFIG_SND_AC97_POWER_SAVE is not set | ||
996 | |||
997 | # | ||
998 | # ALSA MIPS devices | ||
999 | # | ||
1000 | CONFIG_SND_AU1X00=m | ||
1001 | |||
1002 | # | ||
1003 | # USB devices | ||
1004 | # | ||
1005 | # CONFIG_SND_USB_AUDIO is not set | ||
1006 | |||
1007 | # | ||
1008 | # PCMCIA devices | ||
1009 | # | ||
1010 | # CONFIG_SND_VXPOCKET is not set | ||
1011 | # CONFIG_SND_PDAUDIOCF is not set | ||
1012 | |||
1013 | # | ||
1014 | # SoC audio support | ||
1015 | # | ||
1016 | # CONFIG_SND_SOC is not set | ||
1017 | |||
1018 | # | ||
1019 | # Open Sound System | ||
1020 | # | ||
1021 | CONFIG_SOUND_PRIME=y | ||
1022 | # CONFIG_OBSOLETE_OSS is not set | ||
1023 | # CONFIG_SOUND_BT878 is not set | ||
1024 | # CONFIG_SOUND_ICH is not set | ||
1025 | # CONFIG_SOUND_TRIDENT is not set | ||
1026 | # CONFIG_SOUND_MSNDCLAS is not set | ||
1027 | # CONFIG_SOUND_MSNDPIN is not set | ||
1028 | # CONFIG_SOUND_VIA82CXXX is not set | ||
1029 | CONFIG_AC97_BUS=m | ||
1030 | |||
1031 | # | ||
1032 | # HID Devices | ||
1033 | # | ||
1034 | CONFIG_HID=y | ||
1035 | # CONFIG_HID_DEBUG is not set | ||
1036 | |||
1037 | # | ||
1038 | # USB support | ||
1039 | # | 864 | # |
865 | # CONFIG_VGA_CONSOLE is not set | ||
866 | CONFIG_DUMMY_CONSOLE=y | ||
867 | # CONFIG_SOUND is not set | ||
868 | # CONFIG_HID_SUPPORT is not set | ||
869 | CONFIG_USB_SUPPORT=y | ||
1040 | CONFIG_USB_ARCH_HAS_HCD=y | 870 | CONFIG_USB_ARCH_HAS_HCD=y |
1041 | CONFIG_USB_ARCH_HAS_OHCI=y | 871 | CONFIG_USB_ARCH_HAS_OHCI=y |
1042 | CONFIG_USB_ARCH_HAS_EHCI=y | 872 | CONFIG_USB_ARCH_HAS_EHCI=y |
1043 | CONFIG_USB=y | 873 | CONFIG_USB=y |
1044 | # CONFIG_USB_DEBUG is not set | 874 | # CONFIG_USB_DEBUG is not set |
875 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
1045 | 876 | ||
1046 | # | 877 | # |
1047 | # Miscellaneous USB options | 878 | # Miscellaneous USB options |
1048 | # | 879 | # |
1049 | # CONFIG_USB_DEVICEFS is not set | 880 | # CONFIG_USB_DEVICEFS is not set |
1050 | # CONFIG_USB_DYNAMIC_MINORS is not set | 881 | # CONFIG_USB_DEVICE_CLASS is not set |
882 | CONFIG_USB_DYNAMIC_MINORS=y | ||
883 | CONFIG_USB_SUSPEND=y | ||
1051 | # CONFIG_USB_OTG is not set | 884 | # CONFIG_USB_OTG is not set |
885 | # CONFIG_USB_OTG_WHITELIST is not set | ||
886 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
887 | # CONFIG_USB_MON is not set | ||
888 | # CONFIG_USB_WUSB is not set | ||
889 | # CONFIG_USB_WUSB_CBAF is not set | ||
1052 | 890 | ||
1053 | # | 891 | # |
1054 | # USB Host Controller Drivers | 892 | # USB Host Controller Drivers |
1055 | # | 893 | # |
894 | # CONFIG_USB_C67X00_HCD is not set | ||
895 | # CONFIG_USB_XHCI_HCD is not set | ||
1056 | # CONFIG_USB_EHCI_HCD is not set | 896 | # CONFIG_USB_EHCI_HCD is not set |
897 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1057 | # CONFIG_USB_ISP116X_HCD is not set | 898 | # CONFIG_USB_ISP116X_HCD is not set |
899 | # CONFIG_USB_ISP1760_HCD is not set | ||
900 | # CONFIG_USB_ISP1362_HCD is not set | ||
1058 | CONFIG_USB_OHCI_HCD=y | 901 | CONFIG_USB_OHCI_HCD=y |
1059 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | 902 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
1060 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | 903 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set |
1061 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | 904 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y |
1062 | # CONFIG_USB_UHCI_HCD is not set | 905 | # CONFIG_USB_UHCI_HCD is not set |
1063 | # CONFIG_USB_SL811_HCD is not set | 906 | # CONFIG_USB_SL811_HCD is not set |
907 | # CONFIG_USB_R8A66597_HCD is not set | ||
908 | # CONFIG_USB_WHCI_HCD is not set | ||
909 | # CONFIG_USB_HWA_HCD is not set | ||
1064 | 910 | ||
1065 | # | 911 | # |
1066 | # USB Device Class drivers | 912 | # USB Device Class drivers |
1067 | # | 913 | # |
1068 | # CONFIG_USB_ACM is not set | 914 | # CONFIG_USB_ACM is not set |
1069 | # CONFIG_USB_PRINTER is not set | 915 | # CONFIG_USB_PRINTER is not set |
916 | # CONFIG_USB_WDM is not set | ||
917 | # CONFIG_USB_TMC is not set | ||
1070 | 918 | ||
1071 | # | 919 | # |
1072 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 920 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
1073 | # | 921 | # |
1074 | 922 | ||
1075 | # | 923 | # |
1076 | # may also be needed; see USB_STORAGE Help for more information | 924 | # also be needed; see USB_STORAGE Help for more info |
1077 | # | 925 | # |
1078 | # CONFIG_USB_LIBUSUAL is not set | 926 | # CONFIG_USB_LIBUSUAL is not set |
1079 | 927 | ||
1080 | # | 928 | # |
1081 | # USB Input Devices | ||
1082 | # | ||
1083 | CONFIG_USB_HID=y | ||
1084 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | ||
1085 | # CONFIG_HID_FF is not set | ||
1086 | # CONFIG_USB_HIDDEV is not set | ||
1087 | # CONFIG_USB_AIPTEK is not set | ||
1088 | # CONFIG_USB_WACOM is not set | ||
1089 | # CONFIG_USB_ACECAD is not set | ||
1090 | # CONFIG_USB_KBTAB is not set | ||
1091 | # CONFIG_USB_POWERMATE is not set | ||
1092 | # CONFIG_USB_TOUCHSCREEN is not set | ||
1093 | CONFIG_USB_YEALINK=m | ||
1094 | # CONFIG_USB_XPAD is not set | ||
1095 | # CONFIG_USB_ATI_REMOTE is not set | ||
1096 | # CONFIG_USB_ATI_REMOTE2 is not set | ||
1097 | # CONFIG_USB_KEYSPAN_REMOTE is not set | ||
1098 | # CONFIG_USB_APPLETOUCH is not set | ||
1099 | # CONFIG_USB_GTCO is not set | ||
1100 | |||
1101 | # | ||
1102 | # USB Imaging devices | 929 | # USB Imaging devices |
1103 | # | 930 | # |
1104 | # CONFIG_USB_MDC800 is not set | 931 | # CONFIG_USB_MDC800 is not set |
1105 | 932 | ||
1106 | # | 933 | # |
1107 | # USB Network Adapters | ||
1108 | # | ||
1109 | # CONFIG_USB_CATC is not set | ||
1110 | # CONFIG_USB_KAWETH is not set | ||
1111 | # CONFIG_USB_PEGASUS is not set | ||
1112 | # CONFIG_USB_RTL8150 is not set | ||
1113 | # CONFIG_USB_USBNET_MII is not set | ||
1114 | # CONFIG_USB_USBNET is not set | ||
1115 | CONFIG_USB_MON=y | ||
1116 | |||
1117 | # | ||
1118 | # USB port drivers | 934 | # USB port drivers |
1119 | # | 935 | # |
1120 | |||
1121 | # | ||
1122 | # USB Serial Converter support | ||
1123 | # | ||
1124 | # CONFIG_USB_SERIAL is not set | 936 | # CONFIG_USB_SERIAL is not set |
1125 | 937 | ||
1126 | # | 938 | # |
@@ -1129,7 +941,7 @@ CONFIG_USB_MON=y | |||
1129 | # CONFIG_USB_EMI62 is not set | 941 | # CONFIG_USB_EMI62 is not set |
1130 | # CONFIG_USB_EMI26 is not set | 942 | # CONFIG_USB_EMI26 is not set |
1131 | # CONFIG_USB_ADUTUX is not set | 943 | # CONFIG_USB_ADUTUX is not set |
1132 | # CONFIG_USB_AUERSWALD is not set | 944 | # CONFIG_USB_SEVSEG is not set |
1133 | # CONFIG_USB_RIO500 is not set | 945 | # CONFIG_USB_RIO500 is not set |
1134 | # CONFIG_USB_LEGOTOWER is not set | 946 | # CONFIG_USB_LEGOTOWER is not set |
1135 | # CONFIG_USB_LCD is not set | 947 | # CONFIG_USB_LCD is not set |
@@ -1137,112 +949,107 @@ CONFIG_USB_MON=y | |||
1137 | # CONFIG_USB_LED is not set | 949 | # CONFIG_USB_LED is not set |
1138 | # CONFIG_USB_CYPRESS_CY7C63 is not set | 950 | # CONFIG_USB_CYPRESS_CY7C63 is not set |
1139 | # CONFIG_USB_CYTHERM is not set | 951 | # CONFIG_USB_CYTHERM is not set |
1140 | # CONFIG_USB_PHIDGET is not set | ||
1141 | # CONFIG_USB_IDMOUSE is not set | 952 | # CONFIG_USB_IDMOUSE is not set |
1142 | # CONFIG_USB_FTDI_ELAN is not set | 953 | # CONFIG_USB_FTDI_ELAN is not set |
1143 | # CONFIG_USB_APPLEDISPLAY is not set | 954 | # CONFIG_USB_APPLEDISPLAY is not set |
1144 | CONFIG_USB_LD=m | 955 | # CONFIG_USB_LD is not set |
1145 | # CONFIG_USB_TRANCEVIBRATOR is not set | 956 | # CONFIG_USB_TRANCEVIBRATOR is not set |
1146 | 957 | # CONFIG_USB_IOWARRIOR is not set | |
1147 | # | 958 | # CONFIG_USB_TEST is not set |
1148 | # USB DSL modem support | 959 | # CONFIG_USB_ISIGHTFW is not set |
1149 | # | 960 | # CONFIG_USB_VST is not set |
1150 | |||
1151 | # | ||
1152 | # USB Gadget Support | ||
1153 | # | ||
1154 | # CONFIG_USB_GADGET is not set | 961 | # CONFIG_USB_GADGET is not set |
1155 | 962 | ||
1156 | # | 963 | # |
1157 | # MMC/SD Card support | 964 | # OTG and related infrastructure |
1158 | # | 965 | # |
966 | # CONFIG_USB_GPIO_VBUS is not set | ||
967 | # CONFIG_NOP_USB_XCEIV is not set | ||
968 | # CONFIG_UWB is not set | ||
1159 | # CONFIG_MMC is not set | 969 | # CONFIG_MMC is not set |
1160 | 970 | # CONFIG_MEMSTICK is not set | |
1161 | # | ||
1162 | # LED devices | ||
1163 | # | ||
1164 | # CONFIG_NEW_LEDS is not set | 971 | # CONFIG_NEW_LEDS is not set |
1165 | 972 | # CONFIG_ACCESSIBILITY is not set | |
1166 | # | ||
1167 | # LED drivers | ||
1168 | # | ||
1169 | |||
1170 | # | ||
1171 | # LED Triggers | ||
1172 | # | ||
1173 | |||
1174 | # | ||
1175 | # InfiniBand support | ||
1176 | # | ||
1177 | # CONFIG_INFINIBAND is not set | 973 | # CONFIG_INFINIBAND is not set |
974 | CONFIG_RTC_LIB=y | ||
975 | CONFIG_RTC_CLASS=y | ||
976 | CONFIG_RTC_HCTOSYS=y | ||
977 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
978 | # CONFIG_RTC_DEBUG is not set | ||
1178 | 979 | ||
1179 | # | 980 | # |
1180 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 981 | # RTC interfaces |
1181 | # | ||
1182 | |||
1183 | # | ||
1184 | # Real Time Clock | ||
1185 | # | 982 | # |
1186 | # CONFIG_RTC_CLASS is not set | 983 | CONFIG_RTC_INTF_SYSFS=y |
984 | CONFIG_RTC_INTF_PROC=y | ||
985 | CONFIG_RTC_INTF_DEV=y | ||
986 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
987 | # CONFIG_RTC_DRV_TEST is not set | ||
1187 | 988 | ||
1188 | # | 989 | # |
1189 | # DMA Engine support | 990 | # SPI RTC drivers |
1190 | # | 991 | # |
1191 | # CONFIG_DMA_ENGINE is not set | ||
1192 | 992 | ||
1193 | # | 993 | # |
1194 | # DMA Clients | 994 | # Platform RTC drivers |
1195 | # | 995 | # |
996 | # CONFIG_RTC_DRV_CMOS is not set | ||
997 | # CONFIG_RTC_DRV_DS1286 is not set | ||
998 | # CONFIG_RTC_DRV_DS1511 is not set | ||
999 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1000 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1001 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1002 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1003 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1004 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1005 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
1006 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1007 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
1008 | # CONFIG_RTC_DRV_V3020 is not set | ||
1196 | 1009 | ||
1197 | # | 1010 | # |
1198 | # DMA Devices | 1011 | # on-CPU RTC drivers |
1199 | # | 1012 | # |
1013 | CONFIG_RTC_DRV_AU1XXX=y | ||
1014 | # CONFIG_DMADEVICES is not set | ||
1015 | # CONFIG_AUXDISPLAY is not set | ||
1016 | # CONFIG_UIO is not set | ||
1200 | 1017 | ||
1201 | # | 1018 | # |
1202 | # Auxiliary Display support | 1019 | # TI VLYNQ |
1203 | # | ||
1204 | |||
1205 | # | ||
1206 | # Virtualization | ||
1207 | # | 1020 | # |
1021 | # CONFIG_STAGING is not set | ||
1208 | 1022 | ||
1209 | # | 1023 | # |
1210 | # File systems | 1024 | # File systems |
1211 | # | 1025 | # |
1212 | CONFIG_EXT2_FS=y | 1026 | CONFIG_EXT2_FS=y |
1213 | CONFIG_EXT2_FS_XATTR=y | 1027 | # CONFIG_EXT2_FS_XATTR is not set |
1214 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
1215 | # CONFIG_EXT2_FS_SECURITY is not set | ||
1216 | # CONFIG_EXT2_FS_XIP is not set | 1028 | # CONFIG_EXT2_FS_XIP is not set |
1217 | CONFIG_EXT3_FS=y | 1029 | # CONFIG_EXT3_FS is not set |
1218 | CONFIG_EXT3_FS_XATTR=y | 1030 | # CONFIG_EXT4_FS is not set |
1219 | CONFIG_EXT3_FS_POSIX_ACL=y | 1031 | # CONFIG_REISERFS_FS is not set |
1220 | CONFIG_EXT3_FS_SECURITY=y | ||
1221 | # CONFIG_EXT4DEV_FS is not set | ||
1222 | CONFIG_JBD=y | ||
1223 | # CONFIG_JBD_DEBUG is not set | ||
1224 | CONFIG_FS_MBCACHE=y | ||
1225 | CONFIG_REISERFS_FS=m | ||
1226 | # CONFIG_REISERFS_CHECK is not set | ||
1227 | # CONFIG_REISERFS_PROC_INFO is not set | ||
1228 | CONFIG_REISERFS_FS_XATTR=y | ||
1229 | CONFIG_REISERFS_FS_POSIX_ACL=y | ||
1230 | CONFIG_REISERFS_FS_SECURITY=y | ||
1231 | # CONFIG_JFS_FS is not set | 1032 | # CONFIG_JFS_FS is not set |
1232 | CONFIG_FS_POSIX_ACL=y | 1033 | CONFIG_FS_POSIX_ACL=y |
1233 | # CONFIG_XFS_FS is not set | 1034 | # CONFIG_XFS_FS is not set |
1234 | # CONFIG_GFS2_FS is not set | 1035 | # CONFIG_GFS2_FS is not set |
1235 | # CONFIG_OCFS2_FS is not set | 1036 | # CONFIG_OCFS2_FS is not set |
1236 | # CONFIG_MINIX_FS is not set | 1037 | # CONFIG_BTRFS_FS is not set |
1237 | # CONFIG_ROMFS_FS is not set | 1038 | # CONFIG_NILFS2_FS is not set |
1039 | CONFIG_FILE_LOCKING=y | ||
1040 | CONFIG_FSNOTIFY=y | ||
1041 | CONFIG_DNOTIFY=y | ||
1238 | CONFIG_INOTIFY=y | 1042 | CONFIG_INOTIFY=y |
1239 | CONFIG_INOTIFY_USER=y | 1043 | CONFIG_INOTIFY_USER=y |
1240 | # CONFIG_QUOTA is not set | 1044 | # CONFIG_QUOTA is not set |
1241 | CONFIG_DNOTIFY=y | 1045 | # CONFIG_AUTOFS_FS is not set |
1242 | CONFIG_AUTOFS_FS=m | 1046 | # CONFIG_AUTOFS4_FS is not set |
1243 | CONFIG_AUTOFS4_FS=m | 1047 | # CONFIG_FUSE_FS is not set |
1244 | CONFIG_FUSE_FS=m | 1048 | |
1245 | CONFIG_GENERIC_ACL=y | 1049 | # |
1050 | # Caches | ||
1051 | # | ||
1052 | # CONFIG_FSCACHE is not set | ||
1246 | 1053 | ||
1247 | # | 1054 | # |
1248 | # CD-ROM/DVD Filesystems | 1055 | # CD-ROM/DVD Filesystems |
@@ -1261,74 +1068,81 @@ CONFIG_GENERIC_ACL=y | |||
1261 | # Pseudo filesystems | 1068 | # Pseudo filesystems |
1262 | # | 1069 | # |
1263 | CONFIG_PROC_FS=y | 1070 | CONFIG_PROC_FS=y |
1264 | CONFIG_PROC_KCORE=y | 1071 | # CONFIG_PROC_KCORE is not set |
1265 | CONFIG_PROC_SYSCTL=y | 1072 | CONFIG_PROC_SYSCTL=y |
1073 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
1266 | CONFIG_SYSFS=y | 1074 | CONFIG_SYSFS=y |
1267 | CONFIG_TMPFS=y | 1075 | CONFIG_TMPFS=y |
1268 | CONFIG_TMPFS_POSIX_ACL=y | 1076 | # CONFIG_TMPFS_POSIX_ACL is not set |
1269 | # CONFIG_HUGETLB_PAGE is not set | 1077 | # CONFIG_HUGETLB_PAGE is not set |
1270 | CONFIG_RAMFS=y | 1078 | # CONFIG_CONFIGFS_FS is not set |
1271 | CONFIG_CONFIGFS_FS=m | 1079 | CONFIG_MISC_FILESYSTEMS=y |
1272 | |||
1273 | # | ||
1274 | # Miscellaneous filesystems | ||
1275 | # | ||
1276 | # CONFIG_ADFS_FS is not set | 1080 | # CONFIG_ADFS_FS is not set |
1277 | # CONFIG_AFFS_FS is not set | 1081 | # CONFIG_AFFS_FS is not set |
1278 | # CONFIG_ECRYPT_FS is not set | ||
1279 | # CONFIG_HFS_FS is not set | 1082 | # CONFIG_HFS_FS is not set |
1280 | # CONFIG_HFSPLUS_FS is not set | 1083 | # CONFIG_HFSPLUS_FS is not set |
1281 | # CONFIG_BEFS_FS is not set | 1084 | # CONFIG_BEFS_FS is not set |
1282 | # CONFIG_BFS_FS is not set | 1085 | # CONFIG_BFS_FS is not set |
1283 | # CONFIG_EFS_FS is not set | 1086 | # CONFIG_EFS_FS is not set |
1284 | # CONFIG_JFFS2_FS is not set | 1087 | CONFIG_JFFS2_FS=y |
1285 | CONFIG_CRAMFS=m | 1088 | CONFIG_JFFS2_FS_DEBUG=0 |
1089 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1090 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1091 | CONFIG_JFFS2_SUMMARY=y | ||
1092 | CONFIG_JFFS2_FS_XATTR=y | ||
1093 | CONFIG_JFFS2_FS_POSIX_ACL=y | ||
1094 | CONFIG_JFFS2_FS_SECURITY=y | ||
1095 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1096 | CONFIG_JFFS2_ZLIB=y | ||
1097 | CONFIG_JFFS2_LZO=y | ||
1098 | CONFIG_JFFS2_RTIME=y | ||
1099 | CONFIG_JFFS2_RUBIN=y | ||
1100 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1101 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1102 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1103 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1104 | # CONFIG_CRAMFS is not set | ||
1105 | CONFIG_SQUASHFS=y | ||
1106 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1107 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
1286 | # CONFIG_VXFS_FS is not set | 1108 | # CONFIG_VXFS_FS is not set |
1109 | # CONFIG_MINIX_FS is not set | ||
1110 | # CONFIG_OMFS_FS is not set | ||
1287 | # CONFIG_HPFS_FS is not set | 1111 | # CONFIG_HPFS_FS is not set |
1288 | # CONFIG_QNX4FS_FS is not set | 1112 | # CONFIG_QNX4FS_FS is not set |
1113 | # CONFIG_ROMFS_FS is not set | ||
1289 | # CONFIG_SYSV_FS is not set | 1114 | # CONFIG_SYSV_FS is not set |
1290 | # CONFIG_UFS_FS is not set | 1115 | # CONFIG_UFS_FS is not set |
1291 | 1116 | CONFIG_NETWORK_FILESYSTEMS=y | |
1292 | # | ||
1293 | # Network File Systems | ||
1294 | # | ||
1295 | CONFIG_NFS_FS=y | 1117 | CONFIG_NFS_FS=y |
1296 | # CONFIG_NFS_V3 is not set | 1118 | CONFIG_NFS_V3=y |
1119 | # CONFIG_NFS_V3_ACL is not set | ||
1297 | # CONFIG_NFS_V4 is not set | 1120 | # CONFIG_NFS_V4 is not set |
1298 | # CONFIG_NFS_DIRECTIO is not set | ||
1299 | CONFIG_NFSD=m | ||
1300 | # CONFIG_NFSD_V3 is not set | ||
1301 | # CONFIG_NFSD_TCP is not set | ||
1302 | CONFIG_ROOT_NFS=y | 1121 | CONFIG_ROOT_NFS=y |
1122 | # CONFIG_NFSD is not set | ||
1303 | CONFIG_LOCKD=y | 1123 | CONFIG_LOCKD=y |
1304 | CONFIG_EXPORTFS=m | 1124 | CONFIG_LOCKD_V4=y |
1305 | CONFIG_NFS_COMMON=y | 1125 | CONFIG_NFS_COMMON=y |
1306 | CONFIG_SUNRPC=y | 1126 | CONFIG_SUNRPC=y |
1307 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1127 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1308 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1128 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1309 | CONFIG_SMB_FS=m | 1129 | # CONFIG_SMB_FS is not set |
1310 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1311 | # CONFIG_CIFS is not set | 1130 | # CONFIG_CIFS is not set |
1312 | # CONFIG_NCP_FS is not set | 1131 | # CONFIG_NCP_FS is not set |
1313 | # CONFIG_CODA_FS is not set | 1132 | # CONFIG_CODA_FS is not set |
1314 | # CONFIG_AFS_FS is not set | 1133 | # CONFIG_AFS_FS is not set |
1315 | # CONFIG_9P_FS is not set | ||
1316 | 1134 | ||
1317 | # | 1135 | # |
1318 | # Partition Types | 1136 | # Partition Types |
1319 | # | 1137 | # |
1320 | # CONFIG_PARTITION_ADVANCED is not set | 1138 | # CONFIG_PARTITION_ADVANCED is not set |
1321 | CONFIG_MSDOS_PARTITION=y | 1139 | CONFIG_MSDOS_PARTITION=y |
1322 | 1140 | CONFIG_NLS=y | |
1323 | # | ||
1324 | # Native Language Support | ||
1325 | # | ||
1326 | CONFIG_NLS=m | ||
1327 | CONFIG_NLS_DEFAULT="iso8859-1" | 1141 | CONFIG_NLS_DEFAULT="iso8859-1" |
1328 | # CONFIG_NLS_CODEPAGE_437 is not set | 1142 | CONFIG_NLS_CODEPAGE_437=y |
1329 | # CONFIG_NLS_CODEPAGE_737 is not set | 1143 | # CONFIG_NLS_CODEPAGE_737 is not set |
1330 | # CONFIG_NLS_CODEPAGE_775 is not set | 1144 | # CONFIG_NLS_CODEPAGE_775 is not set |
1331 | # CONFIG_NLS_CODEPAGE_850 is not set | 1145 | CONFIG_NLS_CODEPAGE_850=y |
1332 | # CONFIG_NLS_CODEPAGE_852 is not set | 1146 | # CONFIG_NLS_CODEPAGE_852 is not set |
1333 | # CONFIG_NLS_CODEPAGE_855 is not set | 1147 | # CONFIG_NLS_CODEPAGE_855 is not set |
1334 | # CONFIG_NLS_CODEPAGE_857 is not set | 1148 | # CONFIG_NLS_CODEPAGE_857 is not set |
@@ -1346,10 +1160,10 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1346 | # CONFIG_NLS_CODEPAGE_949 is not set | 1160 | # CONFIG_NLS_CODEPAGE_949 is not set |
1347 | # CONFIG_NLS_CODEPAGE_874 is not set | 1161 | # CONFIG_NLS_CODEPAGE_874 is not set |
1348 | # CONFIG_NLS_ISO8859_8 is not set | 1162 | # CONFIG_NLS_ISO8859_8 is not set |
1349 | # CONFIG_NLS_CODEPAGE_1250 is not set | 1163 | CONFIG_NLS_CODEPAGE_1250=y |
1350 | # CONFIG_NLS_CODEPAGE_1251 is not set | 1164 | # CONFIG_NLS_CODEPAGE_1251 is not set |
1351 | # CONFIG_NLS_ASCII is not set | 1165 | CONFIG_NLS_ASCII=y |
1352 | # CONFIG_NLS_ISO8859_1 is not set | 1166 | CONFIG_NLS_ISO8859_1=y |
1353 | # CONFIG_NLS_ISO8859_2 is not set | 1167 | # CONFIG_NLS_ISO8859_2 is not set |
1354 | # CONFIG_NLS_ISO8859_3 is not set | 1168 | # CONFIG_NLS_ISO8859_3 is not set |
1355 | # CONFIG_NLS_ISO8859_4 is not set | 1169 | # CONFIG_NLS_ISO8859_4 is not set |
@@ -1359,38 +1173,76 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1359 | # CONFIG_NLS_ISO8859_9 is not set | 1173 | # CONFIG_NLS_ISO8859_9 is not set |
1360 | # CONFIG_NLS_ISO8859_13 is not set | 1174 | # CONFIG_NLS_ISO8859_13 is not set |
1361 | # CONFIG_NLS_ISO8859_14 is not set | 1175 | # CONFIG_NLS_ISO8859_14 is not set |
1362 | # CONFIG_NLS_ISO8859_15 is not set | 1176 | CONFIG_NLS_ISO8859_15=y |
1363 | # CONFIG_NLS_KOI8_R is not set | 1177 | # CONFIG_NLS_KOI8_R is not set |
1364 | # CONFIG_NLS_KOI8_U is not set | 1178 | # CONFIG_NLS_KOI8_U is not set |
1365 | # CONFIG_NLS_UTF8 is not set | 1179 | CONFIG_NLS_UTF8=y |
1366 | 1180 | # CONFIG_DLM is not set | |
1367 | # | ||
1368 | # Distributed Lock Manager | ||
1369 | # | ||
1370 | CONFIG_DLM=m | ||
1371 | CONFIG_DLM_TCP=y | ||
1372 | # CONFIG_DLM_SCTP is not set | ||
1373 | # CONFIG_DLM_DEBUG is not set | ||
1374 | |||
1375 | # | ||
1376 | # Profiling support | ||
1377 | # | ||
1378 | # CONFIG_PROFILING is not set | ||
1379 | 1181 | ||
1380 | # | 1182 | # |
1381 | # Kernel hacking | 1183 | # Kernel hacking |
1382 | # | 1184 | # |
1383 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1185 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1384 | # CONFIG_PRINTK_TIME is not set | 1186 | # CONFIG_PRINTK_TIME is not set |
1187 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1385 | CONFIG_ENABLE_MUST_CHECK=y | 1188 | CONFIG_ENABLE_MUST_CHECK=y |
1189 | CONFIG_FRAME_WARN=1024 | ||
1386 | # CONFIG_MAGIC_SYSRQ is not set | 1190 | # CONFIG_MAGIC_SYSRQ is not set |
1191 | CONFIG_STRIP_ASM_SYMS=y | ||
1387 | # CONFIG_UNUSED_SYMBOLS is not set | 1192 | # CONFIG_UNUSED_SYMBOLS is not set |
1388 | # CONFIG_DEBUG_FS is not set | 1193 | # CONFIG_DEBUG_FS is not set |
1389 | # CONFIG_HEADERS_CHECK is not set | 1194 | # CONFIG_HEADERS_CHECK is not set |
1390 | # CONFIG_DEBUG_KERNEL is not set | 1195 | CONFIG_DEBUG_KERNEL=y |
1391 | CONFIG_LOG_BUF_SHIFT=14 | 1196 | # CONFIG_DEBUG_SHIRQ is not set |
1392 | CONFIG_CROSSCOMPILE=y | 1197 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1393 | CONFIG_CMDLINE="" | 1198 | # CONFIG_DETECT_HUNG_TASK is not set |
1199 | # CONFIG_SCHED_DEBUG is not set | ||
1200 | # CONFIG_SCHEDSTATS is not set | ||
1201 | # CONFIG_TIMER_STATS is not set | ||
1202 | # CONFIG_DEBUG_OBJECTS is not set | ||
1203 | # CONFIG_DEBUG_SLAB is not set | ||
1204 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1205 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1206 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1207 | # CONFIG_DEBUG_MUTEXES is not set | ||
1208 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1209 | # CONFIG_PROVE_LOCKING is not set | ||
1210 | # CONFIG_LOCK_STAT is not set | ||
1211 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1212 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1213 | # CONFIG_DEBUG_KOBJECT is not set | ||
1214 | # CONFIG_DEBUG_INFO is not set | ||
1215 | # CONFIG_DEBUG_VM is not set | ||
1216 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1217 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1218 | # CONFIG_DEBUG_LIST is not set | ||
1219 | # CONFIG_DEBUG_SG is not set | ||
1220 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1221 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1222 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1223 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1224 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1225 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1226 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1227 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1228 | # CONFIG_FAULT_INJECTION is not set | ||
1229 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1230 | # CONFIG_PAGE_POISONING is not set | ||
1231 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1232 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1233 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1234 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1235 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1236 | CONFIG_TRACING_SUPPORT=y | ||
1237 | # CONFIG_FTRACE is not set | ||
1238 | # CONFIG_SAMPLES is not set | ||
1239 | CONFIG_HAVE_ARCH_KGDB=y | ||
1240 | # CONFIG_KGDB is not set | ||
1241 | CONFIG_EARLY_PRINTK=y | ||
1242 | # CONFIG_CMDLINE_BOOL is not set | ||
1243 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1244 | # CONFIG_RUNTIME_DEBUG is not set | ||
1245 | CONFIG_DEBUG_ZBOOT=y | ||
1394 | 1246 | ||
1395 | # | 1247 | # |
1396 | # Security options | 1248 | # Security options |
@@ -1398,67 +1250,32 @@ CONFIG_CMDLINE="" | |||
1398 | CONFIG_KEYS=y | 1250 | CONFIG_KEYS=y |
1399 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1251 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1400 | # CONFIG_SECURITY is not set | 1252 | # CONFIG_SECURITY is not set |
1401 | 1253 | CONFIG_SECURITYFS=y | |
1402 | # | 1254 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1403 | # Cryptographic options | 1255 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1404 | # | 1256 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1405 | CONFIG_CRYPTO=y | 1257 | CONFIG_DEFAULT_SECURITY_DAC=y |
1406 | CONFIG_CRYPTO_ALGAPI=y | 1258 | CONFIG_DEFAULT_SECURITY="" |
1407 | CONFIG_CRYPTO_BLKCIPHER=m | 1259 | # CONFIG_CRYPTO is not set |
1408 | CONFIG_CRYPTO_HASH=y | 1260 | # CONFIG_BINARY_PRINTF is not set |
1409 | CONFIG_CRYPTO_MANAGER=y | ||
1410 | CONFIG_CRYPTO_HMAC=y | ||
1411 | CONFIG_CRYPTO_XCBC=m | ||
1412 | CONFIG_CRYPTO_NULL=m | ||
1413 | CONFIG_CRYPTO_MD4=m | ||
1414 | CONFIG_CRYPTO_MD5=y | ||
1415 | CONFIG_CRYPTO_SHA1=m | ||
1416 | CONFIG_CRYPTO_SHA256=m | ||
1417 | CONFIG_CRYPTO_SHA512=m | ||
1418 | CONFIG_CRYPTO_WP512=m | ||
1419 | CONFIG_CRYPTO_TGR192=m | ||
1420 | CONFIG_CRYPTO_GF128MUL=m | ||
1421 | CONFIG_CRYPTO_ECB=m | ||
1422 | CONFIG_CRYPTO_CBC=m | ||
1423 | CONFIG_CRYPTO_PCBC=m | ||
1424 | CONFIG_CRYPTO_LRW=m | ||
1425 | CONFIG_CRYPTO_DES=m | ||
1426 | CONFIG_CRYPTO_FCRYPT=m | ||
1427 | CONFIG_CRYPTO_BLOWFISH=m | ||
1428 | CONFIG_CRYPTO_TWOFISH=m | ||
1429 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1430 | CONFIG_CRYPTO_SERPENT=m | ||
1431 | CONFIG_CRYPTO_AES=m | ||
1432 | CONFIG_CRYPTO_CAST5=m | ||
1433 | CONFIG_CRYPTO_CAST6=m | ||
1434 | CONFIG_CRYPTO_TEA=m | ||
1435 | CONFIG_CRYPTO_ARC4=m | ||
1436 | CONFIG_CRYPTO_KHAZAD=m | ||
1437 | CONFIG_CRYPTO_ANUBIS=m | ||
1438 | CONFIG_CRYPTO_DEFLATE=m | ||
1439 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1440 | CONFIG_CRYPTO_CRC32C=m | ||
1441 | CONFIG_CRYPTO_CAMELLIA=m | ||
1442 | # CONFIG_CRYPTO_TEST is not set | ||
1443 | |||
1444 | # | ||
1445 | # Hardware crypto devices | ||
1446 | # | ||
1447 | 1261 | ||
1448 | # | 1262 | # |
1449 | # Library routines | 1263 | # Library routines |
1450 | # | 1264 | # |
1451 | CONFIG_BITREVERSE=y | 1265 | CONFIG_BITREVERSE=y |
1452 | CONFIG_CRC_CCITT=m | 1266 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1453 | CONFIG_CRC16=m | 1267 | # CONFIG_CRC_CCITT is not set |
1268 | # CONFIG_CRC16 is not set | ||
1269 | # CONFIG_CRC_T10DIF is not set | ||
1270 | # CONFIG_CRC_ITU_T is not set | ||
1454 | CONFIG_CRC32=y | 1271 | CONFIG_CRC32=y |
1455 | CONFIG_LIBCRC32C=m | 1272 | # CONFIG_CRC7 is not set |
1456 | CONFIG_ZLIB_INFLATE=m | 1273 | # CONFIG_LIBCRC32C is not set |
1457 | CONFIG_ZLIB_DEFLATE=m | 1274 | CONFIG_ZLIB_INFLATE=y |
1458 | CONFIG_TEXTSEARCH=y | 1275 | CONFIG_ZLIB_DEFLATE=y |
1459 | CONFIG_TEXTSEARCH_KMP=m | 1276 | CONFIG_LZO_COMPRESS=y |
1460 | CONFIG_TEXTSEARCH_BM=m | 1277 | CONFIG_LZO_DECOMPRESS=y |
1461 | CONFIG_TEXTSEARCH_FSM=m | ||
1462 | CONFIG_PLIST=y | ||
1463 | CONFIG_HAS_IOMEM=y | 1278 | CONFIG_HAS_IOMEM=y |
1464 | CONFIG_HAS_IOPORT=y | 1279 | CONFIG_HAS_IOPORT=y |
1280 | CONFIG_HAS_DMA=y | ||
1281 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/db1550_defconfig b/arch/mips/configs/db1550_defconfig index 7631dae51be9..949b6dcf634b 100644 --- a/arch/mips/configs/db1550_defconfig +++ b/arch/mips/configs/db1550_defconfig | |||
@@ -1,80 +1,103 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:27 2007 | 4 | # Fri Feb 26 08:58:22 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_PB1100 is not set | ||
17 | # CONFIG_MIPS_PB1500 is not set | ||
18 | # CONFIG_MIPS_PB1550 is not set | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | # CONFIG_MIPS_DB1000 is not set | ||
21 | # CONFIG_MIPS_DB1100 is not set | ||
22 | # CONFIG_MIPS_DB1500 is not set | ||
23 | CONFIG_MIPS_DB1550=y | ||
24 | # CONFIG_MIPS_DB1200 is not set | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | CONFIG_MIPS_DB1550=y | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1550=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_NONCOHERENT=y | 83 | CONFIG_DMA_NONCOHERENT=y |
65 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
66 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y | 86 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y |
87 | # CONFIG_NO_IOPORT is not set | ||
88 | CONFIG_GENERIC_GPIO=y | ||
67 | # CONFIG_CPU_BIG_ENDIAN is not set | 89 | # CONFIG_CPU_BIG_ENDIAN is not set |
68 | CONFIG_CPU_LITTLE_ENDIAN=y | 90 | CONFIG_CPU_LITTLE_ENDIAN=y |
69 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 91 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
70 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 92 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
71 | CONFIG_SOC_AU1550=y | 93 | CONFIG_IRQ_CPU=y |
72 | CONFIG_SOC_AU1X00=y | ||
73 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 94 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
74 | 95 | ||
75 | # | 96 | # |
76 | # CPU selection | 97 | # CPU selection |
77 | # | 98 | # |
99 | # CONFIG_CPU_LOONGSON2E is not set | ||
100 | # CONFIG_CPU_LOONGSON2F is not set | ||
78 | CONFIG_CPU_MIPS32_R1=y | 101 | CONFIG_CPU_MIPS32_R1=y |
79 | # CONFIG_CPU_MIPS32_R2 is not set | 102 | # CONFIG_CPU_MIPS32_R2 is not set |
80 | # CONFIG_CPU_MIPS64_R1 is not set | 103 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -87,6 +110,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
87 | # CONFIG_CPU_TX49XX is not set | 110 | # CONFIG_CPU_TX49XX is not set |
88 | # CONFIG_CPU_R5000 is not set | 111 | # CONFIG_CPU_R5000 is not set |
89 | # CONFIG_CPU_R5432 is not set | 112 | # CONFIG_CPU_R5432 is not set |
113 | # CONFIG_CPU_R5500 is not set | ||
90 | # CONFIG_CPU_R6000 is not set | 114 | # CONFIG_CPU_R6000 is not set |
91 | # CONFIG_CPU_NEVADA is not set | 115 | # CONFIG_CPU_NEVADA is not set |
92 | # CONFIG_CPU_R8000 is not set | 116 | # CONFIG_CPU_R8000 is not set |
@@ -94,11 +118,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
94 | # CONFIG_CPU_RM7000 is not set | 118 | # CONFIG_CPU_RM7000 is not set |
95 | # CONFIG_CPU_RM9000 is not set | 119 | # CONFIG_CPU_RM9000 is not set |
96 | # CONFIG_CPU_SB1 is not set | 120 | # CONFIG_CPU_SB1 is not set |
121 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
122 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
97 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 123 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
98 | CONFIG_CPU_MIPS32=y | 124 | CONFIG_CPU_MIPS32=y |
99 | CONFIG_CPU_MIPSR1=y | 125 | CONFIG_CPU_MIPSR1=y |
100 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 126 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
101 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 127 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
128 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
102 | 129 | ||
103 | # | 130 | # |
104 | # Kernel type | 131 | # Kernel type |
@@ -108,137 +135,205 @@ CONFIG_32BIT=y | |||
108 | CONFIG_PAGE_SIZE_4KB=y | 135 | CONFIG_PAGE_SIZE_4KB=y |
109 | # CONFIG_PAGE_SIZE_8KB is not set | 136 | # CONFIG_PAGE_SIZE_8KB is not set |
110 | # CONFIG_PAGE_SIZE_16KB is not set | 137 | # CONFIG_PAGE_SIZE_16KB is not set |
138 | # CONFIG_PAGE_SIZE_32KB is not set | ||
111 | # CONFIG_PAGE_SIZE_64KB is not set | 139 | # CONFIG_PAGE_SIZE_64KB is not set |
112 | CONFIG_CPU_HAS_PREFETCH=y | 140 | CONFIG_CPU_HAS_PREFETCH=y |
113 | CONFIG_MIPS_MT_DISABLED=y | 141 | CONFIG_MIPS_MT_DISABLED=y |
114 | # CONFIG_MIPS_MT_SMP is not set | 142 | # CONFIG_MIPS_MT_SMP is not set |
115 | # CONFIG_MIPS_MT_SMTC is not set | 143 | # CONFIG_MIPS_MT_SMTC is not set |
116 | # CONFIG_MIPS_VPE_LOADER is not set | ||
117 | CONFIG_64BIT_PHYS_ADDR=y | 144 | CONFIG_64BIT_PHYS_ADDR=y |
145 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
118 | CONFIG_CPU_HAS_SYNC=y | 146 | CONFIG_CPU_HAS_SYNC=y |
119 | CONFIG_GENERIC_HARDIRQS=y | 147 | CONFIG_GENERIC_HARDIRQS=y |
120 | CONFIG_GENERIC_IRQ_PROBE=y | 148 | CONFIG_GENERIC_IRQ_PROBE=y |
121 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 149 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
122 | CONFIG_ARCH_FLATMEM_ENABLE=y | 150 | CONFIG_ARCH_FLATMEM_ENABLE=y |
151 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
123 | CONFIG_SELECT_MEMORY_MODEL=y | 152 | CONFIG_SELECT_MEMORY_MODEL=y |
124 | CONFIG_FLATMEM_MANUAL=y | 153 | CONFIG_FLATMEM_MANUAL=y |
125 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 154 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
126 | # CONFIG_SPARSEMEM_MANUAL is not set | 155 | # CONFIG_SPARSEMEM_MANUAL is not set |
127 | CONFIG_FLATMEM=y | 156 | CONFIG_FLATMEM=y |
128 | CONFIG_FLAT_NODE_MEM_MAP=y | 157 | CONFIG_FLAT_NODE_MEM_MAP=y |
129 | # CONFIG_SPARSEMEM_STATIC is not set | 158 | CONFIG_PAGEFLAGS_EXTENDED=y |
130 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 159 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
131 | CONFIG_RESOURCES_64BIT=y | 160 | CONFIG_PHYS_ADDR_T_64BIT=y |
132 | CONFIG_ZONE_DMA_FLAG=1 | 161 | CONFIG_ZONE_DMA_FLAG=0 |
162 | CONFIG_VIRT_TO_BUS=y | ||
163 | # CONFIG_KSM is not set | ||
164 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
165 | CONFIG_TICK_ONESHOT=y | ||
166 | CONFIG_NO_HZ=y | ||
167 | CONFIG_HIGH_RES_TIMERS=y | ||
168 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
133 | # CONFIG_HZ_48 is not set | 169 | # CONFIG_HZ_48 is not set |
134 | # CONFIG_HZ_100 is not set | 170 | CONFIG_HZ_100=y |
135 | # CONFIG_HZ_128 is not set | 171 | # CONFIG_HZ_128 is not set |
136 | # CONFIG_HZ_250 is not set | 172 | # CONFIG_HZ_250 is not set |
137 | # CONFIG_HZ_256 is not set | 173 | # CONFIG_HZ_256 is not set |
138 | CONFIG_HZ_1000=y | 174 | # CONFIG_HZ_1000 is not set |
139 | # CONFIG_HZ_1024 is not set | 175 | # CONFIG_HZ_1024 is not set |
140 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 176 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
141 | CONFIG_HZ=1000 | 177 | CONFIG_HZ=100 |
142 | CONFIG_PREEMPT_NONE=y | 178 | CONFIG_PREEMPT_NONE=y |
143 | # CONFIG_PREEMPT_VOLUNTARY is not set | 179 | # CONFIG_PREEMPT_VOLUNTARY is not set |
144 | # CONFIG_PREEMPT is not set | 180 | # CONFIG_PREEMPT is not set |
145 | # CONFIG_KEXEC is not set | 181 | # CONFIG_KEXEC is not set |
182 | # CONFIG_SECCOMP is not set | ||
146 | CONFIG_LOCKDEP_SUPPORT=y | 183 | CONFIG_LOCKDEP_SUPPORT=y |
147 | CONFIG_STACKTRACE_SUPPORT=y | 184 | CONFIG_STACKTRACE_SUPPORT=y |
148 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 185 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
186 | CONFIG_CONSTRUCTORS=y | ||
149 | 187 | ||
150 | # | 188 | # |
151 | # Code maturity level options | 189 | # General setup |
152 | # | 190 | # |
153 | CONFIG_EXPERIMENTAL=y | 191 | CONFIG_EXPERIMENTAL=y |
154 | CONFIG_BROKEN_ON_SMP=y | 192 | CONFIG_BROKEN_ON_SMP=y |
155 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 193 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
156 | 194 | CONFIG_LOCALVERSION="-db1550" | |
157 | # | ||
158 | # General setup | ||
159 | # | ||
160 | CONFIG_LOCALVERSION="" | ||
161 | CONFIG_LOCALVERSION_AUTO=y | 195 | CONFIG_LOCALVERSION_AUTO=y |
196 | CONFIG_HAVE_KERNEL_GZIP=y | ||
197 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
198 | CONFIG_HAVE_KERNEL_LZMA=y | ||
199 | CONFIG_HAVE_KERNEL_LZO=y | ||
200 | # CONFIG_KERNEL_GZIP is not set | ||
201 | # CONFIG_KERNEL_BZIP2 is not set | ||
202 | CONFIG_KERNEL_LZMA=y | ||
203 | # CONFIG_KERNEL_LZO is not set | ||
162 | CONFIG_SWAP=y | 204 | CONFIG_SWAP=y |
163 | CONFIG_SYSVIPC=y | 205 | CONFIG_SYSVIPC=y |
164 | # CONFIG_IPC_NS is not set | ||
165 | CONFIG_SYSVIPC_SYSCTL=y | 206 | CONFIG_SYSVIPC_SYSCTL=y |
166 | # CONFIG_POSIX_MQUEUE is not set | 207 | CONFIG_POSIX_MQUEUE=y |
208 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
167 | # CONFIG_BSD_PROCESS_ACCT is not set | 209 | # CONFIG_BSD_PROCESS_ACCT is not set |
168 | # CONFIG_TASKSTATS is not set | 210 | # CONFIG_TASKSTATS is not set |
169 | # CONFIG_UTS_NS is not set | ||
170 | # CONFIG_AUDIT is not set | 211 | # CONFIG_AUDIT is not set |
212 | |||
213 | # | ||
214 | # RCU Subsystem | ||
215 | # | ||
216 | # CONFIG_TREE_RCU is not set | ||
217 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
218 | CONFIG_TINY_RCU=y | ||
219 | # CONFIG_TREE_RCU_TRACE is not set | ||
171 | # CONFIG_IKCONFIG is not set | 220 | # CONFIG_IKCONFIG is not set |
172 | CONFIG_SYSFS_DEPRECATED=y | 221 | CONFIG_LOG_BUF_SHIFT=14 |
173 | CONFIG_RELAY=y | 222 | # CONFIG_GROUP_SCHED is not set |
174 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 223 | # CONFIG_CGROUPS is not set |
224 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
225 | # CONFIG_RELAY is not set | ||
226 | # CONFIG_NAMESPACES is not set | ||
227 | # CONFIG_BLK_DEV_INITRD is not set | ||
228 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
175 | CONFIG_SYSCTL=y | 229 | CONFIG_SYSCTL=y |
230 | CONFIG_ANON_INODES=y | ||
176 | CONFIG_EMBEDDED=y | 231 | CONFIG_EMBEDDED=y |
177 | CONFIG_SYSCTL_SYSCALL=y | 232 | # CONFIG_SYSCTL_SYSCALL is not set |
178 | CONFIG_KALLSYMS=y | 233 | # CONFIG_KALLSYMS is not set |
179 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
180 | CONFIG_HOTPLUG=y | 234 | CONFIG_HOTPLUG=y |
181 | CONFIG_PRINTK=y | 235 | CONFIG_PRINTK=y |
182 | CONFIG_BUG=y | 236 | CONFIG_BUG=y |
183 | CONFIG_ELF_CORE=y | 237 | CONFIG_ELF_CORE=y |
238 | # CONFIG_PCSPKR_PLATFORM is not set | ||
184 | CONFIG_BASE_FULL=y | 239 | CONFIG_BASE_FULL=y |
185 | CONFIG_FUTEX=y | 240 | CONFIG_FUTEX=y |
186 | CONFIG_EPOLL=y | 241 | CONFIG_EPOLL=y |
242 | CONFIG_SIGNALFD=y | ||
243 | CONFIG_TIMERFD=y | ||
244 | CONFIG_EVENTFD=y | ||
187 | CONFIG_SHMEM=y | 245 | CONFIG_SHMEM=y |
246 | CONFIG_AIO=y | ||
247 | |||
248 | # | ||
249 | # Kernel Performance Events And Counters | ||
250 | # | ||
251 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
252 | CONFIG_PCI_QUIRKS=y | ||
253 | # CONFIG_COMPAT_BRK is not set | ||
188 | CONFIG_SLAB=y | 254 | CONFIG_SLAB=y |
189 | CONFIG_VM_EVENT_COUNTERS=y | 255 | # CONFIG_SLUB is not set |
190 | CONFIG_RT_MUTEXES=y | ||
191 | # CONFIG_TINY_SHMEM is not set | ||
192 | CONFIG_BASE_SMALL=0 | ||
193 | # CONFIG_SLOB is not set | 256 | # CONFIG_SLOB is not set |
257 | # CONFIG_PROFILING is not set | ||
258 | CONFIG_HAVE_OPROFILE=y | ||
194 | 259 | ||
195 | # | 260 | # |
196 | # Loadable module support | 261 | # GCOV-based kernel profiling |
197 | # | 262 | # |
263 | # CONFIG_SLOW_WORK is not set | ||
264 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
265 | CONFIG_SLABINFO=y | ||
266 | CONFIG_RT_MUTEXES=y | ||
267 | CONFIG_BASE_SMALL=0 | ||
198 | CONFIG_MODULES=y | 268 | CONFIG_MODULES=y |
269 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
199 | CONFIG_MODULE_UNLOAD=y | 270 | CONFIG_MODULE_UNLOAD=y |
200 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 271 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
201 | CONFIG_MODVERSIONS=y | 272 | # CONFIG_MODVERSIONS is not set |
202 | CONFIG_MODULE_SRCVERSION_ALL=y | 273 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
203 | CONFIG_KMOD=y | ||
204 | |||
205 | # | ||
206 | # Block layer | ||
207 | # | ||
208 | CONFIG_BLOCK=y | 274 | CONFIG_BLOCK=y |
209 | # CONFIG_LBD is not set | 275 | CONFIG_LBDAF=y |
210 | # CONFIG_BLK_DEV_IO_TRACE is not set | 276 | CONFIG_BLK_DEV_BSG=y |
211 | # CONFIG_LSF is not set | 277 | # CONFIG_BLK_DEV_INTEGRITY is not set |
212 | 278 | ||
213 | # | 279 | # |
214 | # IO Schedulers | 280 | # IO Schedulers |
215 | # | 281 | # |
216 | CONFIG_IOSCHED_NOOP=y | 282 | CONFIG_IOSCHED_NOOP=y |
217 | CONFIG_IOSCHED_AS=y | 283 | # CONFIG_IOSCHED_DEADLINE is not set |
218 | CONFIG_IOSCHED_DEADLINE=y | 284 | # CONFIG_IOSCHED_CFQ is not set |
219 | CONFIG_IOSCHED_CFQ=y | ||
220 | CONFIG_DEFAULT_AS=y | ||
221 | # CONFIG_DEFAULT_DEADLINE is not set | 285 | # CONFIG_DEFAULT_DEADLINE is not set |
222 | # CONFIG_DEFAULT_CFQ is not set | 286 | # CONFIG_DEFAULT_CFQ is not set |
223 | # CONFIG_DEFAULT_NOOP is not set | 287 | CONFIG_DEFAULT_NOOP=y |
224 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 288 | CONFIG_DEFAULT_IOSCHED="noop" |
289 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
290 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
293 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
294 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
295 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
296 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
297 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
298 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
299 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
300 | # CONFIG_INLINE_READ_LOCK is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
302 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
303 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
304 | CONFIG_INLINE_READ_UNLOCK=y | ||
305 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
306 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
307 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
308 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
311 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
312 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
313 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
314 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
315 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
316 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
317 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
318 | CONFIG_FREEZER=y | ||
225 | 319 | ||
226 | # | 320 | # |
227 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 321 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
228 | # | 322 | # |
229 | CONFIG_HW_HAS_PCI=y | 323 | CONFIG_HW_HAS_PCI=y |
230 | CONFIG_PCI=y | 324 | CONFIG_PCI=y |
325 | CONFIG_PCI_DOMAINS=y | ||
326 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
327 | CONFIG_PCI_LEGACY=y | ||
328 | # CONFIG_PCI_DEBUG is not set | ||
329 | # CONFIG_PCI_STUB is not set | ||
330 | # CONFIG_PCI_IOV is not set | ||
231 | CONFIG_MMU=y | 331 | CONFIG_MMU=y |
232 | 332 | CONFIG_PCCARD=y | |
233 | # | 333 | CONFIG_PCMCIA=y |
234 | # PCCARD (PCMCIA/CardBus) support | ||
235 | # | ||
236 | CONFIG_PCCARD=m | ||
237 | # CONFIG_PCMCIA_DEBUG is not set | ||
238 | CONFIG_PCMCIA=m | ||
239 | CONFIG_PCMCIA_LOAD_CIS=y | 334 | CONFIG_PCMCIA_LOAD_CIS=y |
240 | CONFIG_PCMCIA_IOCTL=y | 335 | # CONFIG_PCMCIA_IOCTL is not set |
241 | CONFIG_CARDBUS=y | 336 | # CONFIG_CARDBUS is not set |
242 | 337 | ||
243 | # | 338 | # |
244 | # PC-card bridges | 339 | # PC-card bridges |
@@ -246,51 +341,49 @@ CONFIG_CARDBUS=y | |||
246 | # CONFIG_YENTA is not set | 341 | # CONFIG_YENTA is not set |
247 | # CONFIG_PD6729 is not set | 342 | # CONFIG_PD6729 is not set |
248 | # CONFIG_I82092 is not set | 343 | # CONFIG_I82092 is not set |
249 | CONFIG_PCMCIA_AU1X00=m | 344 | # CONFIG_PCMCIA_AU1X00 is not set |
250 | 345 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y | |
251 | # | ||
252 | # PCI Hotplug Support | ||
253 | # | ||
254 | # CONFIG_HOTPLUG_PCI is not set | 346 | # CONFIG_HOTPLUG_PCI is not set |
255 | 347 | ||
256 | # | 348 | # |
257 | # Executable file formats | 349 | # Executable file formats |
258 | # | 350 | # |
259 | CONFIG_BINFMT_ELF=y | 351 | CONFIG_BINFMT_ELF=y |
352 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
353 | # CONFIG_HAVE_AOUT is not set | ||
260 | # CONFIG_BINFMT_MISC is not set | 354 | # CONFIG_BINFMT_MISC is not set |
261 | CONFIG_TRAD_SIGNALS=y | 355 | CONFIG_TRAD_SIGNALS=y |
262 | 356 | ||
263 | # | 357 | # |
264 | # Power management options | 358 | # Power management options |
265 | # | 359 | # |
266 | # CONFIG_PM is not set | 360 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y |
267 | 361 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | |
268 | # | 362 | CONFIG_PM=y |
269 | # Networking | 363 | # CONFIG_PM_DEBUG is not set |
270 | # | 364 | CONFIG_PM_SLEEP=y |
365 | CONFIG_SUSPEND=y | ||
366 | CONFIG_SUSPEND_FREEZER=y | ||
367 | # CONFIG_HIBERNATION is not set | ||
368 | # CONFIG_APM_EMULATION is not set | ||
369 | CONFIG_PM_RUNTIME=y | ||
271 | CONFIG_NET=y | 370 | CONFIG_NET=y |
272 | 371 | ||
273 | # | 372 | # |
274 | # Networking options | 373 | # Networking options |
275 | # | 374 | # |
276 | # CONFIG_NETDEBUG is not set | ||
277 | CONFIG_PACKET=y | 375 | CONFIG_PACKET=y |
278 | # CONFIG_PACKET_MMAP is not set | 376 | CONFIG_PACKET_MMAP=y |
279 | CONFIG_UNIX=y | 377 | CONFIG_UNIX=y |
280 | CONFIG_XFRM=y | 378 | # CONFIG_NET_KEY is not set |
281 | CONFIG_XFRM_USER=m | ||
282 | # CONFIG_XFRM_SUB_POLICY is not set | ||
283 | CONFIG_XFRM_MIGRATE=y | ||
284 | CONFIG_NET_KEY=y | ||
285 | CONFIG_NET_KEY_MIGRATE=y | ||
286 | CONFIG_INET=y | 379 | CONFIG_INET=y |
287 | CONFIG_IP_MULTICAST=y | 380 | CONFIG_IP_MULTICAST=y |
288 | # CONFIG_IP_ADVANCED_ROUTER is not set | 381 | # CONFIG_IP_ADVANCED_ROUTER is not set |
289 | CONFIG_IP_FIB_HASH=y | 382 | CONFIG_IP_FIB_HASH=y |
290 | CONFIG_IP_PNP=y | 383 | CONFIG_IP_PNP=y |
291 | # CONFIG_IP_PNP_DHCP is not set | 384 | CONFIG_IP_PNP_DHCP=y |
292 | CONFIG_IP_PNP_BOOTP=y | 385 | CONFIG_IP_PNP_BOOTP=y |
293 | # CONFIG_IP_PNP_RARP is not set | 386 | CONFIG_IP_PNP_RARP=y |
294 | # CONFIG_NET_IPIP is not set | 387 | # CONFIG_NET_IPIP is not set |
295 | # CONFIG_NET_IPGRE is not set | 388 | # CONFIG_NET_IPGRE is not set |
296 | # CONFIG_IP_MROUTE is not set | 389 | # CONFIG_IP_MROUTE is not set |
@@ -301,110 +394,25 @@ CONFIG_IP_PNP_BOOTP=y | |||
301 | # CONFIG_INET_IPCOMP is not set | 394 | # CONFIG_INET_IPCOMP is not set |
302 | # CONFIG_INET_XFRM_TUNNEL is not set | 395 | # CONFIG_INET_XFRM_TUNNEL is not set |
303 | # CONFIG_INET_TUNNEL is not set | 396 | # CONFIG_INET_TUNNEL is not set |
304 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 397 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
305 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 398 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
306 | CONFIG_INET_XFRM_MODE_BEET=m | 399 | # CONFIG_INET_XFRM_MODE_BEET is not set |
307 | CONFIG_INET_DIAG=y | 400 | CONFIG_INET_LRO=y |
308 | CONFIG_INET_TCP_DIAG=y | 401 | # CONFIG_INET_DIAG is not set |
309 | # CONFIG_TCP_CONG_ADVANCED is not set | 402 | # CONFIG_TCP_CONG_ADVANCED is not set |
310 | CONFIG_TCP_CONG_CUBIC=y | 403 | CONFIG_TCP_CONG_CUBIC=y |
311 | CONFIG_DEFAULT_TCP_CONG="cubic" | 404 | CONFIG_DEFAULT_TCP_CONG="cubic" |
312 | CONFIG_TCP_MD5SIG=y | 405 | # CONFIG_TCP_MD5SIG is not set |
313 | |||
314 | # | ||
315 | # IP: Virtual Server Configuration | ||
316 | # | ||
317 | # CONFIG_IP_VS is not set | ||
318 | # CONFIG_IPV6 is not set | 406 | # CONFIG_IPV6 is not set |
319 | # CONFIG_INET6_XFRM_TUNNEL is not set | 407 | # CONFIG_NETWORK_SECMARK is not set |
320 | # CONFIG_INET6_TUNNEL is not set | 408 | # CONFIG_NETFILTER is not set |
321 | CONFIG_NETWORK_SECMARK=y | ||
322 | CONFIG_NETFILTER=y | ||
323 | # CONFIG_NETFILTER_DEBUG is not set | ||
324 | |||
325 | # | ||
326 | # Core Netfilter Configuration | ||
327 | # | ||
328 | CONFIG_NETFILTER_NETLINK=m | ||
329 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
330 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
331 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
332 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
333 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
334 | CONFIG_NF_CONNTRACK=m | ||
335 | CONFIG_NF_CT_ACCT=y | ||
336 | CONFIG_NF_CONNTRACK_MARK=y | ||
337 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
338 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
339 | CONFIG_NF_CT_PROTO_GRE=m | ||
340 | CONFIG_NF_CT_PROTO_SCTP=m | ||
341 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
342 | CONFIG_NF_CONNTRACK_FTP=m | ||
343 | CONFIG_NF_CONNTRACK_H323=m | ||
344 | CONFIG_NF_CONNTRACK_IRC=m | ||
345 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
346 | CONFIG_NF_CONNTRACK_PPTP=m | ||
347 | CONFIG_NF_CONNTRACK_SANE=m | ||
348 | CONFIG_NF_CONNTRACK_SIP=m | ||
349 | CONFIG_NF_CONNTRACK_TFTP=m | ||
350 | CONFIG_NF_CT_NETLINK=m | ||
351 | CONFIG_NETFILTER_XTABLES=m | ||
352 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
353 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
354 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
355 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
356 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
357 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
358 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
359 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
365 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
366 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
367 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
368 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
369 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
370 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
371 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
372 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
373 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
374 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
375 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
376 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
377 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
378 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
379 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
380 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
381 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
382 | |||
383 | # | ||
384 | # IP: Netfilter Configuration | ||
385 | # | ||
386 | CONFIG_NF_CONNTRACK_IPV4=m | ||
387 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
388 | # CONFIG_IP_NF_QUEUE is not set | ||
389 | # CONFIG_IP_NF_IPTABLES is not set | ||
390 | # CONFIG_IP_NF_ARPTABLES is not set | ||
391 | |||
392 | # | ||
393 | # DCCP Configuration (EXPERIMENTAL) | ||
394 | # | ||
395 | # CONFIG_IP_DCCP is not set | 409 | # CONFIG_IP_DCCP is not set |
396 | |||
397 | # | ||
398 | # SCTP Configuration (EXPERIMENTAL) | ||
399 | # | ||
400 | # CONFIG_IP_SCTP is not set | 410 | # CONFIG_IP_SCTP is not set |
401 | 411 | # CONFIG_RDS is not set | |
402 | # | ||
403 | # TIPC Configuration (EXPERIMENTAL) | ||
404 | # | ||
405 | # CONFIG_TIPC is not set | 412 | # CONFIG_TIPC is not set |
406 | # CONFIG_ATM is not set | 413 | # CONFIG_ATM is not set |
407 | # CONFIG_BRIDGE is not set | 414 | # CONFIG_BRIDGE is not set |
415 | # CONFIG_NET_DSA is not set | ||
408 | # CONFIG_VLAN_8021Q is not set | 416 | # CONFIG_VLAN_8021Q is not set |
409 | # CONFIG_DECNET is not set | 417 | # CONFIG_DECNET is not set |
410 | # CONFIG_LLC2 is not set | 418 | # CONFIG_LLC2 is not set |
@@ -414,27 +422,24 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
414 | # CONFIG_LAPB is not set | 422 | # CONFIG_LAPB is not set |
415 | # CONFIG_ECONET is not set | 423 | # CONFIG_ECONET is not set |
416 | # CONFIG_WAN_ROUTER is not set | 424 | # CONFIG_WAN_ROUTER is not set |
417 | 425 | # CONFIG_PHONET is not set | |
418 | # | 426 | # CONFIG_IEEE802154 is not set |
419 | # QoS and/or fair queueing | ||
420 | # | ||
421 | # CONFIG_NET_SCHED is not set | 427 | # CONFIG_NET_SCHED is not set |
422 | CONFIG_NET_CLS_ROUTE=y | 428 | # CONFIG_DCB is not set |
423 | 429 | ||
424 | # | 430 | # |
425 | # Network testing | 431 | # Network testing |
426 | # | 432 | # |
427 | # CONFIG_NET_PKTGEN is not set | 433 | # CONFIG_NET_PKTGEN is not set |
428 | # CONFIG_HAMRADIO is not set | 434 | # CONFIG_HAMRADIO is not set |
435 | # CONFIG_CAN is not set | ||
429 | # CONFIG_IRDA is not set | 436 | # CONFIG_IRDA is not set |
430 | # CONFIG_BT is not set | 437 | # CONFIG_BT is not set |
431 | CONFIG_IEEE80211=m | 438 | # CONFIG_AF_RXRPC is not set |
432 | # CONFIG_IEEE80211_DEBUG is not set | 439 | # CONFIG_WIRELESS is not set |
433 | CONFIG_IEEE80211_CRYPT_WEP=m | 440 | # CONFIG_WIMAX is not set |
434 | CONFIG_IEEE80211_CRYPT_CCMP=m | 441 | # CONFIG_RFKILL is not set |
435 | CONFIG_IEEE80211_SOFTMAC=m | 442 | # CONFIG_NET_9P is not set |
436 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
437 | CONFIG_WIRELESS_EXT=y | ||
438 | 443 | ||
439 | # | 444 | # |
440 | # Device Drivers | 445 | # Device Drivers |
@@ -443,25 +448,25 @@ CONFIG_WIRELESS_EXT=y | |||
443 | # | 448 | # |
444 | # Generic Driver Options | 449 | # Generic Driver Options |
445 | # | 450 | # |
451 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
452 | # CONFIG_DEVTMPFS is not set | ||
446 | CONFIG_STANDALONE=y | 453 | CONFIG_STANDALONE=y |
447 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 454 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
448 | CONFIG_FW_LOADER=m | 455 | CONFIG_FW_LOADER=y |
456 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
457 | CONFIG_EXTRA_FIRMWARE="" | ||
458 | # CONFIG_DEBUG_DRIVER is not set | ||
459 | # CONFIG_DEBUG_DEVRES is not set | ||
449 | # CONFIG_SYS_HYPERVISOR is not set | 460 | # CONFIG_SYS_HYPERVISOR is not set |
450 | 461 | # CONFIG_CONNECTOR is not set | |
451 | # | ||
452 | # Connector - unified userspace <-> kernelspace linker | ||
453 | # | ||
454 | CONFIG_CONNECTOR=m | ||
455 | |||
456 | # | ||
457 | # Memory Technology Devices (MTD) | ||
458 | # | ||
459 | CONFIG_MTD=y | 462 | CONFIG_MTD=y |
460 | # CONFIG_MTD_DEBUG is not set | 463 | # CONFIG_MTD_DEBUG is not set |
464 | # CONFIG_MTD_TESTS is not set | ||
461 | # CONFIG_MTD_CONCAT is not set | 465 | # CONFIG_MTD_CONCAT is not set |
462 | CONFIG_MTD_PARTITIONS=y | 466 | CONFIG_MTD_PARTITIONS=y |
463 | # CONFIG_MTD_REDBOOT_PARTS is not set | 467 | # CONFIG_MTD_REDBOOT_PARTS is not set |
464 | # CONFIG_MTD_CMDLINE_PARTS is not set | 468 | # CONFIG_MTD_CMDLINE_PARTS is not set |
469 | # CONFIG_MTD_AR7_PARTS is not set | ||
465 | 470 | ||
466 | # | 471 | # |
467 | # User Modules And Translation Layers | 472 | # User Modules And Translation Layers |
@@ -474,6 +479,7 @@ CONFIG_MTD_BLOCK=y | |||
474 | # CONFIG_INFTL is not set | 479 | # CONFIG_INFTL is not set |
475 | # CONFIG_RFD_FTL is not set | 480 | # CONFIG_RFD_FTL is not set |
476 | # CONFIG_SSFDC is not set | 481 | # CONFIG_SSFDC is not set |
482 | # CONFIG_MTD_OOPS is not set | ||
477 | 483 | ||
478 | # | 484 | # |
479 | # RAM/ROM/Flash chip drivers | 485 | # RAM/ROM/Flash chip drivers |
@@ -499,20 +505,23 @@ CONFIG_MTD_CFI_UTIL=y | |||
499 | # CONFIG_MTD_RAM is not set | 505 | # CONFIG_MTD_RAM is not set |
500 | # CONFIG_MTD_ROM is not set | 506 | # CONFIG_MTD_ROM is not set |
501 | # CONFIG_MTD_ABSENT is not set | 507 | # CONFIG_MTD_ABSENT is not set |
502 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
503 | 508 | ||
504 | # | 509 | # |
505 | # Mapping drivers for chip access | 510 | # Mapping drivers for chip access |
506 | # | 511 | # |
507 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 512 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
508 | # CONFIG_MTD_PHYSMAP is not set | 513 | CONFIG_MTD_PHYSMAP=y |
509 | CONFIG_MTD_ALCHEMY=y | 514 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
515 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
510 | # CONFIG_MTD_PLATRAM is not set | 516 | # CONFIG_MTD_PLATRAM is not set |
511 | 517 | ||
512 | # | 518 | # |
513 | # Self-contained MTD device drivers | 519 | # Self-contained MTD device drivers |
514 | # | 520 | # |
515 | # CONFIG_MTD_PMC551 is not set | 521 | # CONFIG_MTD_PMC551 is not set |
522 | # CONFIG_MTD_DATAFLASH is not set | ||
523 | # CONFIG_MTD_M25P80 is not set | ||
524 | # CONFIG_MTD_SST25L is not set | ||
516 | # CONFIG_MTD_SLRAM is not set | 525 | # CONFIG_MTD_SLRAM is not set |
517 | # CONFIG_MTD_PHRAM is not set | 526 | # CONFIG_MTD_PHRAM is not set |
518 | # CONFIG_MTD_MTDRAM is not set | 527 | # CONFIG_MTD_MTDRAM is not set |
@@ -524,105 +533,96 @@ CONFIG_MTD_ALCHEMY=y | |||
524 | # CONFIG_MTD_DOC2000 is not set | 533 | # CONFIG_MTD_DOC2000 is not set |
525 | # CONFIG_MTD_DOC2001 is not set | 534 | # CONFIG_MTD_DOC2001 is not set |
526 | # CONFIG_MTD_DOC2001PLUS is not set | 535 | # CONFIG_MTD_DOC2001PLUS is not set |
527 | 536 | CONFIG_MTD_NAND=y | |
528 | # | ||
529 | # NAND Flash Device Drivers | ||
530 | # | ||
531 | CONFIG_MTD_NAND=m | ||
532 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | 537 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set |
533 | # CONFIG_MTD_NAND_ECC_SMC is not set | 538 | # CONFIG_MTD_NAND_ECC_SMC is not set |
534 | CONFIG_MTD_NAND_IDS=m | 539 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set |
535 | CONFIG_MTD_NAND_AU1550=m | 540 | CONFIG_MTD_NAND_IDS=y |
541 | CONFIG_MTD_NAND_AU1550=y | ||
536 | # CONFIG_MTD_NAND_DISKONCHIP is not set | 542 | # CONFIG_MTD_NAND_DISKONCHIP is not set |
537 | # CONFIG_MTD_NAND_CAFE is not set | 543 | # CONFIG_MTD_NAND_CAFE is not set |
538 | # CONFIG_MTD_NAND_NANDSIM is not set | 544 | # CONFIG_MTD_NAND_NANDSIM is not set |
539 | 545 | # CONFIG_MTD_NAND_PLATFORM is not set | |
540 | # | 546 | # CONFIG_MTD_ALAUDA is not set |
541 | # OneNAND Flash Device Drivers | ||
542 | # | ||
543 | # CONFIG_MTD_ONENAND is not set | 547 | # CONFIG_MTD_ONENAND is not set |
544 | 548 | ||
545 | # | 549 | # |
546 | # Parallel port support | 550 | # LPDDR flash memory drivers |
547 | # | 551 | # |
548 | # CONFIG_PARPORT is not set | 552 | # CONFIG_MTD_LPDDR is not set |
549 | 553 | ||
550 | # | 554 | # |
551 | # Plug and Play support | 555 | # UBI - Unsorted block images |
552 | # | ||
553 | # CONFIG_PNPACPI is not set | ||
554 | |||
555 | # | ||
556 | # Block devices | ||
557 | # | 556 | # |
557 | # CONFIG_MTD_UBI is not set | ||
558 | # CONFIG_PARPORT is not set | ||
559 | CONFIG_BLK_DEV=y | ||
558 | # CONFIG_BLK_CPQ_DA is not set | 560 | # CONFIG_BLK_CPQ_DA is not set |
559 | # CONFIG_BLK_CPQ_CISS_DA is not set | 561 | # CONFIG_BLK_CPQ_CISS_DA is not set |
560 | # CONFIG_BLK_DEV_DAC960 is not set | 562 | # CONFIG_BLK_DEV_DAC960 is not set |
561 | # CONFIG_BLK_DEV_UMEM is not set | 563 | # CONFIG_BLK_DEV_UMEM is not set |
562 | # CONFIG_BLK_DEV_COW_COMMON is not set | 564 | # CONFIG_BLK_DEV_COW_COMMON is not set |
563 | CONFIG_BLK_DEV_LOOP=y | 565 | # CONFIG_BLK_DEV_LOOP is not set |
564 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
565 | # CONFIG_BLK_DEV_NBD is not set | ||
566 | # CONFIG_BLK_DEV_SX8 is not set | ||
567 | # CONFIG_BLK_DEV_RAM is not set | ||
568 | # CONFIG_BLK_DEV_INITRD is not set | ||
569 | CONFIG_CDROM_PKTCDVD=m | ||
570 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | ||
571 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | ||
572 | CONFIG_ATA_OVER_ETH=m | ||
573 | |||
574 | # | ||
575 | # Misc devices | ||
576 | # | ||
577 | CONFIG_SGI_IOC4=m | ||
578 | # CONFIG_TIFM_CORE is not set | ||
579 | 566 | ||
580 | # | 567 | # |
581 | # ATA/ATAPI/MFM/RLL support | 568 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected |
582 | # | 569 | # |
570 | # CONFIG_BLK_DEV_NBD is not set | ||
571 | # CONFIG_BLK_DEV_SX8 is not set | ||
572 | CONFIG_BLK_DEV_UB=y | ||
573 | # CONFIG_BLK_DEV_RAM is not set | ||
574 | # CONFIG_CDROM_PKTCDVD is not set | ||
575 | # CONFIG_ATA_OVER_ETH is not set | ||
576 | # CONFIG_BLK_DEV_HD is not set | ||
577 | # CONFIG_MISC_DEVICES is not set | ||
578 | CONFIG_HAVE_IDE=y | ||
583 | CONFIG_IDE=y | 579 | CONFIG_IDE=y |
584 | CONFIG_IDE_MAX_HWIFS=4 | ||
585 | CONFIG_BLK_DEV_IDE=y | ||
586 | 580 | ||
587 | # | 581 | # |
588 | # Please see Documentation/ide.txt for help/info on IDE drives | 582 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
589 | # | 583 | # |
584 | CONFIG_IDE_XFER_MODE=y | ||
585 | CONFIG_IDE_ATAPI=y | ||
590 | # CONFIG_BLK_DEV_IDE_SATA is not set | 586 | # CONFIG_BLK_DEV_IDE_SATA is not set |
591 | CONFIG_BLK_DEV_IDEDISK=y | 587 | CONFIG_IDE_GD=y |
592 | # CONFIG_IDEDISK_MULTI_MODE is not set | 588 | CONFIG_IDE_GD_ATA=y |
593 | CONFIG_BLK_DEV_IDECS=m | 589 | # CONFIG_IDE_GD_ATAPI is not set |
594 | # CONFIG_BLK_DEV_DELKIN is not set | 590 | CONFIG_BLK_DEV_IDECS=y |
595 | # CONFIG_BLK_DEV_IDECD is not set | 591 | CONFIG_BLK_DEV_IDECD=y |
592 | # CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS is not set | ||
596 | # CONFIG_BLK_DEV_IDETAPE is not set | 593 | # CONFIG_BLK_DEV_IDETAPE is not set |
597 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | 594 | CONFIG_IDE_TASK_IOCTL=y |
598 | # CONFIG_IDE_TASK_IOCTL is not set | 595 | CONFIG_IDE_PROC_FS=y |
599 | 596 | ||
600 | # | 597 | # |
601 | # IDE chipset support/bugfixes | 598 | # IDE chipset support/bugfixes |
602 | # | 599 | # |
603 | CONFIG_IDE_GENERIC=y | 600 | # CONFIG_IDE_GENERIC is not set |
601 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
602 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
603 | |||
604 | # | ||
605 | # PCI IDE chipsets support | ||
606 | # | ||
604 | CONFIG_BLK_DEV_IDEPCI=y | 607 | CONFIG_BLK_DEV_IDEPCI=y |
605 | # CONFIG_IDEPCI_SHARE_IRQ is not set | 608 | # CONFIG_IDEPCI_PCIBUS_ORDER is not set |
606 | # CONFIG_BLK_DEV_OFFBOARD is not set | 609 | # CONFIG_BLK_DEV_OFFBOARD is not set |
607 | CONFIG_BLK_DEV_GENERIC=y | 610 | # CONFIG_BLK_DEV_GENERIC is not set |
608 | # CONFIG_BLK_DEV_OPTI621 is not set | 611 | # CONFIG_BLK_DEV_OPTI621 is not set |
609 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 612 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
610 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | ||
611 | # CONFIG_IDEDMA_PCI_AUTO is not set | ||
612 | # CONFIG_BLK_DEV_AEC62XX is not set | 613 | # CONFIG_BLK_DEV_AEC62XX is not set |
613 | # CONFIG_BLK_DEV_ALI15X3 is not set | 614 | # CONFIG_BLK_DEV_ALI15X3 is not set |
614 | # CONFIG_BLK_DEV_AMD74XX is not set | 615 | # CONFIG_BLK_DEV_AMD74XX is not set |
615 | # CONFIG_BLK_DEV_CMD64X is not set | 616 | # CONFIG_BLK_DEV_CMD64X is not set |
616 | # CONFIG_BLK_DEV_TRIFLEX is not set | 617 | # CONFIG_BLK_DEV_TRIFLEX is not set |
617 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
618 | # CONFIG_BLK_DEV_CS5520 is not set | 618 | # CONFIG_BLK_DEV_CS5520 is not set |
619 | # CONFIG_BLK_DEV_CS5530 is not set | 619 | # CONFIG_BLK_DEV_CS5530 is not set |
620 | # CONFIG_BLK_DEV_HPT34X is not set | 620 | CONFIG_BLK_DEV_HPT366=y |
621 | # CONFIG_BLK_DEV_HPT366 is not set | ||
622 | # CONFIG_BLK_DEV_JMICRON is not set | 621 | # CONFIG_BLK_DEV_JMICRON is not set |
623 | # CONFIG_BLK_DEV_SC1200 is not set | 622 | # CONFIG_BLK_DEV_SC1200 is not set |
624 | # CONFIG_BLK_DEV_PIIX is not set | 623 | # CONFIG_BLK_DEV_PIIX is not set |
625 | CONFIG_BLK_DEV_IT8213=m | 624 | # CONFIG_BLK_DEV_IT8172 is not set |
625 | # CONFIG_BLK_DEV_IT8213 is not set | ||
626 | # CONFIG_BLK_DEV_IT821X is not set | 626 | # CONFIG_BLK_DEV_IT821X is not set |
627 | # CONFIG_BLK_DEV_NS87415 is not set | 627 | # CONFIG_BLK_DEV_NS87415 is not set |
628 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 628 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
@@ -632,82 +632,65 @@ CONFIG_BLK_DEV_IT8213=m | |||
632 | # CONFIG_BLK_DEV_SLC90E66 is not set | 632 | # CONFIG_BLK_DEV_SLC90E66 is not set |
633 | # CONFIG_BLK_DEV_TRM290 is not set | 633 | # CONFIG_BLK_DEV_TRM290 is not set |
634 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 634 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
635 | CONFIG_BLK_DEV_TC86C001=m | 635 | # CONFIG_BLK_DEV_TC86C001 is not set |
636 | # CONFIG_IDE_ARM is not set | ||
637 | CONFIG_BLK_DEV_IDEDMA=y | 636 | CONFIG_BLK_DEV_IDEDMA=y |
638 | # CONFIG_IDEDMA_IVB is not set | ||
639 | # CONFIG_IDEDMA_AUTO is not set | ||
640 | # CONFIG_BLK_DEV_HD is not set | ||
641 | 637 | ||
642 | # | 638 | # |
643 | # SCSI device support | 639 | # SCSI device support |
644 | # | 640 | # |
645 | CONFIG_RAID_ATTRS=m | 641 | # CONFIG_RAID_ATTRS is not set |
646 | # CONFIG_SCSI is not set | 642 | # CONFIG_SCSI is not set |
643 | # CONFIG_SCSI_DMA is not set | ||
647 | # CONFIG_SCSI_NETLINK is not set | 644 | # CONFIG_SCSI_NETLINK is not set |
648 | |||
649 | # | ||
650 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
651 | # | ||
652 | # CONFIG_ATA is not set | 645 | # CONFIG_ATA is not set |
653 | |||
654 | # | ||
655 | # Multi-device support (RAID and LVM) | ||
656 | # | ||
657 | # CONFIG_MD is not set | 646 | # CONFIG_MD is not set |
658 | |||
659 | # | ||
660 | # Fusion MPT device support | ||
661 | # | ||
662 | # CONFIG_FUSION is not set | 647 | # CONFIG_FUSION is not set |
663 | 648 | ||
664 | # | 649 | # |
665 | # IEEE 1394 (FireWire) support | 650 | # IEEE 1394 (FireWire) support |
666 | # | 651 | # |
667 | # CONFIG_IEEE1394 is not set | ||
668 | 652 | ||
669 | # | 653 | # |
670 | # I2O device support | 654 | # You can enable one or both FireWire driver stacks. |
671 | # | 655 | # |
672 | # CONFIG_I2O is not set | ||
673 | 656 | ||
674 | # | 657 | # |
675 | # Network device support | 658 | # The newer stack is recommended. |
676 | # | 659 | # |
660 | # CONFIG_FIREWIRE is not set | ||
661 | # CONFIG_IEEE1394 is not set | ||
662 | # CONFIG_I2O is not set | ||
677 | CONFIG_NETDEVICES=y | 663 | CONFIG_NETDEVICES=y |
678 | # CONFIG_DUMMY is not set | 664 | # CONFIG_DUMMY is not set |
679 | # CONFIG_BONDING is not set | 665 | # CONFIG_BONDING is not set |
666 | # CONFIG_MACVLAN is not set | ||
680 | # CONFIG_EQUALIZER is not set | 667 | # CONFIG_EQUALIZER is not set |
681 | # CONFIG_TUN is not set | 668 | # CONFIG_TUN is not set |
682 | 669 | # CONFIG_VETH is not set | |
683 | # | ||
684 | # ARCnet devices | ||
685 | # | ||
686 | # CONFIG_ARCNET is not set | 670 | # CONFIG_ARCNET is not set |
687 | |||
688 | # | ||
689 | # PHY device support | ||
690 | # | ||
691 | CONFIG_PHYLIB=y | 671 | CONFIG_PHYLIB=y |
692 | 672 | ||
693 | # | 673 | # |
694 | # MII PHY device drivers | 674 | # MII PHY device drivers |
695 | # | 675 | # |
696 | CONFIG_MARVELL_PHY=m | 676 | CONFIG_MARVELL_PHY=y |
697 | CONFIG_DAVICOM_PHY=m | 677 | CONFIG_DAVICOM_PHY=y |
698 | CONFIG_QSEMI_PHY=m | 678 | CONFIG_QSEMI_PHY=y |
699 | CONFIG_LXT_PHY=m | 679 | CONFIG_LXT_PHY=y |
700 | CONFIG_CICADA_PHY=m | 680 | CONFIG_CICADA_PHY=y |
701 | CONFIG_VITESSE_PHY=m | 681 | CONFIG_VITESSE_PHY=y |
702 | CONFIG_SMSC_PHY=m | 682 | CONFIG_SMSC_PHY=y |
703 | # CONFIG_BROADCOM_PHY is not set | 683 | CONFIG_BROADCOM_PHY=y |
684 | CONFIG_ICPLUS_PHY=y | ||
685 | CONFIG_REALTEK_PHY=y | ||
686 | CONFIG_NATIONAL_PHY=y | ||
687 | CONFIG_STE10XP=y | ||
688 | CONFIG_LSI_ET1011C_PHY=y | ||
704 | # CONFIG_FIXED_PHY is not set | 689 | # CONFIG_FIXED_PHY is not set |
705 | 690 | # CONFIG_MDIO_BITBANG is not set | |
706 | # | ||
707 | # Ethernet (10 or 100Mbit) | ||
708 | # | ||
709 | CONFIG_NET_ETHERNET=y | 691 | CONFIG_NET_ETHERNET=y |
710 | CONFIG_MII=m | 692 | CONFIG_MII=y |
693 | # CONFIG_AX88796 is not set | ||
711 | CONFIG_MIPS_AU1X00_ENET=y | 694 | CONFIG_MIPS_AU1X00_ENET=y |
712 | # CONFIG_HAPPYMEAL is not set | 695 | # CONFIG_HAPPYMEAL is not set |
713 | # CONFIG_SUNGEM is not set | 696 | # CONFIG_SUNGEM is not set |
@@ -715,96 +698,53 @@ CONFIG_MIPS_AU1X00_ENET=y | |||
715 | # CONFIG_NET_VENDOR_3COM is not set | 698 | # CONFIG_NET_VENDOR_3COM is not set |
716 | # CONFIG_SMC91X is not set | 699 | # CONFIG_SMC91X is not set |
717 | # CONFIG_DM9000 is not set | 700 | # CONFIG_DM9000 is not set |
718 | 701 | # CONFIG_ENC28J60 is not set | |
719 | # | 702 | # CONFIG_ETHOC is not set |
720 | # Tulip family network device support | 703 | # CONFIG_SMSC911X is not set |
721 | # | 704 | # CONFIG_DNET is not set |
722 | # CONFIG_NET_TULIP is not set | 705 | # CONFIG_NET_TULIP is not set |
723 | # CONFIG_HP100 is not set | 706 | # CONFIG_HP100 is not set |
707 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
708 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
709 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
710 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
711 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
712 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
713 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
724 | # CONFIG_NET_PCI is not set | 714 | # CONFIG_NET_PCI is not set |
725 | 715 | # CONFIG_B44 is not set | |
726 | # | 716 | # CONFIG_KS8842 is not set |
727 | # Ethernet (1000 Mbit) | 717 | # CONFIG_KS8851 is not set |
728 | # | 718 | # CONFIG_KS8851_MLL is not set |
729 | # CONFIG_ACENIC is not set | 719 | # CONFIG_ATL2 is not set |
730 | # CONFIG_DL2K is not set | 720 | # CONFIG_NETDEV_1000 is not set |
731 | # CONFIG_E1000 is not set | 721 | # CONFIG_NETDEV_10000 is not set |
732 | # CONFIG_NS83820 is not set | ||
733 | # CONFIG_HAMACHI is not set | ||
734 | # CONFIG_YELLOWFIN is not set | ||
735 | # CONFIG_R8169 is not set | ||
736 | # CONFIG_SIS190 is not set | ||
737 | # CONFIG_SKGE is not set | ||
738 | # CONFIG_SKY2 is not set | ||
739 | # CONFIG_SK98LIN is not set | ||
740 | # CONFIG_TIGON3 is not set | ||
741 | # CONFIG_BNX2 is not set | ||
742 | CONFIG_QLA3XXX=m | ||
743 | # CONFIG_ATL1 is not set | ||
744 | |||
745 | # | ||
746 | # Ethernet (10000 Mbit) | ||
747 | # | ||
748 | # CONFIG_CHELSIO_T1 is not set | ||
749 | CONFIG_CHELSIO_T3=m | ||
750 | # CONFIG_IXGB is not set | ||
751 | # CONFIG_S2IO is not set | ||
752 | # CONFIG_MYRI10GE is not set | ||
753 | CONFIG_NETXEN_NIC=m | ||
754 | |||
755 | # | ||
756 | # Token Ring devices | ||
757 | # | ||
758 | # CONFIG_TR is not set | 722 | # CONFIG_TR is not set |
723 | # CONFIG_WLAN is not set | ||
759 | 724 | ||
760 | # | 725 | # |
761 | # Wireless LAN (non-hamradio) | 726 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
762 | # | ||
763 | # CONFIG_NET_RADIO is not set | ||
764 | |||
765 | # | ||
766 | # PCMCIA network device support | ||
767 | # | 727 | # |
768 | CONFIG_NET_PCMCIA=y | ||
769 | CONFIG_PCMCIA_3C589=m | ||
770 | CONFIG_PCMCIA_3C574=m | ||
771 | CONFIG_PCMCIA_FMVJ18X=m | ||
772 | CONFIG_PCMCIA_PCNET=m | ||
773 | CONFIG_PCMCIA_NMCLAN=m | ||
774 | CONFIG_PCMCIA_SMC91C92=m | ||
775 | CONFIG_PCMCIA_XIRC2PS=m | ||
776 | CONFIG_PCMCIA_AXNET=m | ||
777 | 728 | ||
778 | # | 729 | # |
779 | # Wan interfaces | 730 | # USB Network Adapters |
780 | # | 731 | # |
732 | # CONFIG_USB_CATC is not set | ||
733 | # CONFIG_USB_KAWETH is not set | ||
734 | # CONFIG_USB_PEGASUS is not set | ||
735 | # CONFIG_USB_RTL8150 is not set | ||
736 | # CONFIG_USB_USBNET is not set | ||
737 | # CONFIG_NET_PCMCIA is not set | ||
781 | # CONFIG_WAN is not set | 738 | # CONFIG_WAN is not set |
782 | # CONFIG_FDDI is not set | 739 | # CONFIG_FDDI is not set |
783 | # CONFIG_HIPPI is not set | 740 | # CONFIG_HIPPI is not set |
784 | CONFIG_PPP=m | 741 | # CONFIG_PPP is not set |
785 | CONFIG_PPP_MULTILINK=y | ||
786 | # CONFIG_PPP_FILTER is not set | ||
787 | CONFIG_PPP_ASYNC=m | ||
788 | # CONFIG_PPP_SYNC_TTY is not set | ||
789 | CONFIG_PPP_DEFLATE=m | ||
790 | # CONFIG_PPP_BSDCOMP is not set | ||
791 | CONFIG_PPP_MPPE=m | ||
792 | CONFIG_PPPOE=m | ||
793 | # CONFIG_SLIP is not set | 742 | # CONFIG_SLIP is not set |
794 | CONFIG_SLHC=m | ||
795 | # CONFIG_SHAPER is not set | ||
796 | # CONFIG_NETCONSOLE is not set | 743 | # CONFIG_NETCONSOLE is not set |
797 | # CONFIG_NETPOLL is not set | 744 | # CONFIG_NETPOLL is not set |
798 | # CONFIG_NET_POLL_CONTROLLER is not set | 745 | # CONFIG_NET_POLL_CONTROLLER is not set |
799 | 746 | # CONFIG_VMXNET3 is not set | |
800 | # | ||
801 | # ISDN subsystem | ||
802 | # | ||
803 | # CONFIG_ISDN is not set | 747 | # CONFIG_ISDN is not set |
804 | |||
805 | # | ||
806 | # Telephony Support | ||
807 | # | ||
808 | # CONFIG_PHONE is not set | 748 | # CONFIG_PHONE is not set |
809 | 749 | ||
810 | # | 750 | # |
@@ -812,16 +752,14 @@ CONFIG_SLHC=m | |||
812 | # | 752 | # |
813 | CONFIG_INPUT=y | 753 | CONFIG_INPUT=y |
814 | # CONFIG_INPUT_FF_MEMLESS is not set | 754 | # CONFIG_INPUT_FF_MEMLESS is not set |
755 | # CONFIG_INPUT_POLLDEV is not set | ||
756 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
815 | 757 | ||
816 | # | 758 | # |
817 | # Userland interfaces | 759 | # Userland interfaces |
818 | # | 760 | # |
819 | CONFIG_INPUT_MOUSEDEV=y | 761 | # CONFIG_INPUT_MOUSEDEV is not set |
820 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
821 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
822 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
823 | # CONFIG_INPUT_JOYDEV is not set | 762 | # CONFIG_INPUT_JOYDEV is not set |
824 | # CONFIG_INPUT_TSDEV is not set | ||
825 | CONFIG_INPUT_EVDEV=y | 763 | CONFIG_INPUT_EVDEV=y |
826 | # CONFIG_INPUT_EVBUG is not set | 764 | # CONFIG_INPUT_EVBUG is not set |
827 | 765 | ||
@@ -831,26 +769,27 @@ CONFIG_INPUT_EVDEV=y | |||
831 | # CONFIG_INPUT_KEYBOARD is not set | 769 | # CONFIG_INPUT_KEYBOARD is not set |
832 | # CONFIG_INPUT_MOUSE is not set | 770 | # CONFIG_INPUT_MOUSE is not set |
833 | # CONFIG_INPUT_JOYSTICK is not set | 771 | # CONFIG_INPUT_JOYSTICK is not set |
772 | # CONFIG_INPUT_TABLET is not set | ||
834 | # CONFIG_INPUT_TOUCHSCREEN is not set | 773 | # CONFIG_INPUT_TOUCHSCREEN is not set |
835 | # CONFIG_INPUT_MISC is not set | 774 | # CONFIG_INPUT_MISC is not set |
836 | 775 | ||
837 | # | 776 | # |
838 | # Hardware I/O ports | 777 | # Hardware I/O ports |
839 | # | 778 | # |
840 | CONFIG_SERIO=y | 779 | # CONFIG_SERIO is not set |
841 | # CONFIG_SERIO_I8042 is not set | ||
842 | CONFIG_SERIO_SERPORT=y | ||
843 | # CONFIG_SERIO_PCIPS2 is not set | ||
844 | # CONFIG_SERIO_LIBPS2 is not set | ||
845 | CONFIG_SERIO_RAW=m | ||
846 | # CONFIG_GAMEPORT is not set | 780 | # CONFIG_GAMEPORT is not set |
847 | 781 | ||
848 | # | 782 | # |
849 | # Character devices | 783 | # Character devices |
850 | # | 784 | # |
851 | # CONFIG_VT is not set | 785 | CONFIG_VT=y |
786 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
787 | CONFIG_VT_CONSOLE=y | ||
788 | CONFIG_HW_CONSOLE=y | ||
789 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
790 | CONFIG_DEVKMEM=y | ||
852 | # CONFIG_SERIAL_NONSTANDARD is not set | 791 | # CONFIG_SERIAL_NONSTANDARD is not set |
853 | # CONFIG_AU1X00_GPIO is not set | 792 | # CONFIG_NOZOMI is not set |
854 | 793 | ||
855 | # | 794 | # |
856 | # Serial drivers | 795 | # Serial drivers |
@@ -867,199 +806,420 @@ CONFIG_SERIAL_8250_AU1X00=y | |||
867 | # | 806 | # |
868 | # Non-8250 serial port support | 807 | # Non-8250 serial port support |
869 | # | 808 | # |
809 | # CONFIG_SERIAL_MAX3100 is not set | ||
870 | CONFIG_SERIAL_CORE=y | 810 | CONFIG_SERIAL_CORE=y |
871 | CONFIG_SERIAL_CORE_CONSOLE=y | 811 | CONFIG_SERIAL_CORE_CONSOLE=y |
872 | # CONFIG_SERIAL_JSM is not set | 812 | # CONFIG_SERIAL_JSM is not set |
873 | CONFIG_UNIX98_PTYS=y | 813 | CONFIG_UNIX98_PTYS=y |
874 | CONFIG_LEGACY_PTYS=y | 814 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
875 | CONFIG_LEGACY_PTY_COUNT=256 | 815 | # CONFIG_LEGACY_PTYS is not set |
876 | |||
877 | # | ||
878 | # IPMI | ||
879 | # | ||
880 | # CONFIG_IPMI_HANDLER is not set | 816 | # CONFIG_IPMI_HANDLER is not set |
881 | |||
882 | # | ||
883 | # Watchdog Cards | ||
884 | # | ||
885 | # CONFIG_WATCHDOG is not set | ||
886 | # CONFIG_HW_RANDOM is not set | 817 | # CONFIG_HW_RANDOM is not set |
887 | # CONFIG_RTC is not set | ||
888 | # CONFIG_GEN_RTC is not set | ||
889 | # CONFIG_DTLK is not set | ||
890 | # CONFIG_R3964 is not set | 818 | # CONFIG_R3964 is not set |
891 | # CONFIG_APPLICOM is not set | 819 | # CONFIG_APPLICOM is not set |
892 | # CONFIG_DRM is not set | ||
893 | 820 | ||
894 | # | 821 | # |
895 | # PCMCIA character devices | 822 | # PCMCIA character devices |
896 | # | 823 | # |
897 | CONFIG_SYNCLINK_CS=m | 824 | # CONFIG_SYNCLINK_CS is not set |
898 | # CONFIG_CARDMAN_4000 is not set | 825 | # CONFIG_CARDMAN_4000 is not set |
899 | # CONFIG_CARDMAN_4040 is not set | 826 | # CONFIG_CARDMAN_4040 is not set |
827 | # CONFIG_IPWIRELESS is not set | ||
900 | # CONFIG_RAW_DRIVER is not set | 828 | # CONFIG_RAW_DRIVER is not set |
829 | # CONFIG_TCG_TPM is not set | ||
830 | CONFIG_DEVPORT=y | ||
831 | CONFIG_I2C=y | ||
832 | CONFIG_I2C_BOARDINFO=y | ||
833 | # CONFIG_I2C_COMPAT is not set | ||
834 | CONFIG_I2C_CHARDEV=y | ||
835 | # CONFIG_I2C_HELPER_AUTO is not set | ||
901 | 836 | ||
902 | # | 837 | # |
903 | # TPM devices | 838 | # I2C Algorithms |
904 | # | 839 | # |
905 | # CONFIG_TCG_TPM is not set | 840 | # CONFIG_I2C_ALGOBIT is not set |
841 | # CONFIG_I2C_ALGOPCF is not set | ||
842 | # CONFIG_I2C_ALGOPCA is not set | ||
906 | 843 | ||
907 | # | 844 | # |
908 | # I2C support | 845 | # I2C Hardware Bus support |
909 | # | 846 | # |
910 | # CONFIG_I2C is not set | ||
911 | 847 | ||
912 | # | 848 | # |
913 | # SPI support | 849 | # PC SMBus host controller drivers |
914 | # | 850 | # |
915 | # CONFIG_SPI is not set | 851 | # CONFIG_I2C_ALI1535 is not set |
916 | # CONFIG_SPI_MASTER is not set | 852 | # CONFIG_I2C_ALI1563 is not set |
853 | # CONFIG_I2C_ALI15X3 is not set | ||
854 | # CONFIG_I2C_AMD756 is not set | ||
855 | # CONFIG_I2C_AMD8111 is not set | ||
856 | # CONFIG_I2C_I801 is not set | ||
857 | # CONFIG_I2C_ISCH is not set | ||
858 | # CONFIG_I2C_PIIX4 is not set | ||
859 | # CONFIG_I2C_NFORCE2 is not set | ||
860 | # CONFIG_I2C_SIS5595 is not set | ||
861 | # CONFIG_I2C_SIS630 is not set | ||
862 | # CONFIG_I2C_SIS96X is not set | ||
863 | # CONFIG_I2C_VIA is not set | ||
864 | # CONFIG_I2C_VIAPRO is not set | ||
917 | 865 | ||
918 | # | 866 | # |
919 | # Dallas's 1-wire bus | 867 | # I2C system bus drivers (mostly embedded / system-on-chip) |
920 | # | 868 | # |
921 | # CONFIG_W1 is not set | 869 | CONFIG_I2C_AU1550=y |
870 | # CONFIG_I2C_GPIO is not set | ||
871 | # CONFIG_I2C_OCORES is not set | ||
872 | # CONFIG_I2C_SIMTEC is not set | ||
922 | 873 | ||
923 | # | 874 | # |
924 | # Hardware Monitoring support | 875 | # External I2C/SMBus adapter drivers |
925 | # | 876 | # |
926 | # CONFIG_HWMON is not set | 877 | # CONFIG_I2C_PARPORT_LIGHT is not set |
927 | # CONFIG_HWMON_VID is not set | 878 | # CONFIG_I2C_TAOS_EVM is not set |
879 | # CONFIG_I2C_TINY_USB is not set | ||
928 | 880 | ||
929 | # | 881 | # |
930 | # Multimedia devices | 882 | # Other I2C/SMBus bus drivers |
931 | # | 883 | # |
932 | # CONFIG_VIDEO_DEV is not set | 884 | # CONFIG_I2C_PCA_PLATFORM is not set |
885 | # CONFIG_I2C_STUB is not set | ||
933 | 886 | ||
934 | # | 887 | # |
935 | # Digital Video Broadcasting Devices | 888 | # Miscellaneous I2C Chip support |
936 | # | 889 | # |
937 | # CONFIG_DVB is not set | 890 | # CONFIG_SENSORS_TSL2550 is not set |
891 | # CONFIG_I2C_DEBUG_CORE is not set | ||
892 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
893 | # CONFIG_I2C_DEBUG_BUS is not set | ||
894 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
895 | CONFIG_SPI=y | ||
896 | # CONFIG_SPI_DEBUG is not set | ||
897 | CONFIG_SPI_MASTER=y | ||
938 | 898 | ||
939 | # | 899 | # |
940 | # Graphics support | 900 | # SPI Master Controller Drivers |
941 | # | 901 | # |
942 | # CONFIG_FIRMWARE_EDID is not set | 902 | CONFIG_SPI_AU1550=y |
943 | # CONFIG_FB is not set | 903 | CONFIG_SPI_BITBANG=y |
944 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 904 | # CONFIG_SPI_GPIO is not set |
905 | # CONFIG_SPI_XILINX is not set | ||
906 | # CONFIG_SPI_DESIGNWARE is not set | ||
945 | 907 | ||
946 | # | 908 | # |
947 | # Sound | 909 | # SPI Protocol Masters |
948 | # | 910 | # |
949 | # CONFIG_SOUND is not set | 911 | # CONFIG_SPI_SPIDEV is not set |
912 | # CONFIG_SPI_TLE62X0 is not set | ||
950 | 913 | ||
951 | # | 914 | # |
952 | # HID Devices | 915 | # PPS support |
953 | # | 916 | # |
954 | # CONFIG_HID is not set | 917 | # CONFIG_PPS is not set |
918 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
919 | # CONFIG_GPIOLIB is not set | ||
920 | # CONFIG_W1 is not set | ||
921 | # CONFIG_POWER_SUPPLY is not set | ||
922 | # CONFIG_HWMON is not set | ||
923 | # CONFIG_THERMAL is not set | ||
924 | # CONFIG_WATCHDOG is not set | ||
925 | CONFIG_SSB_POSSIBLE=y | ||
955 | 926 | ||
956 | # | 927 | # |
957 | # USB support | 928 | # Sonics Silicon Backplane |
929 | # | ||
930 | # CONFIG_SSB is not set | ||
931 | |||
932 | # | ||
933 | # Multifunction device drivers | ||
934 | # | ||
935 | # CONFIG_MFD_CORE is not set | ||
936 | # CONFIG_MFD_SM501 is not set | ||
937 | # CONFIG_HTC_PASIC3 is not set | ||
938 | # CONFIG_TWL4030_CORE is not set | ||
939 | # CONFIG_MFD_TMIO is not set | ||
940 | # CONFIG_PMIC_DA903X is not set | ||
941 | # CONFIG_PMIC_ADP5520 is not set | ||
942 | # CONFIG_MFD_WM8400 is not set | ||
943 | # CONFIG_MFD_WM831X is not set | ||
944 | # CONFIG_MFD_WM8350_I2C is not set | ||
945 | # CONFIG_MFD_PCF50633 is not set | ||
946 | # CONFIG_MFD_MC13783 is not set | ||
947 | # CONFIG_AB3100_CORE is not set | ||
948 | # CONFIG_EZX_PCAP is not set | ||
949 | # CONFIG_MFD_88PM8607 is not set | ||
950 | # CONFIG_AB4500_CORE is not set | ||
951 | # CONFIG_REGULATOR is not set | ||
952 | # CONFIG_MEDIA_SUPPORT is not set | ||
953 | |||
954 | # | ||
955 | # Graphics support | ||
956 | # | ||
957 | # CONFIG_VGA_ARB is not set | ||
958 | # CONFIG_DRM is not set | ||
959 | # CONFIG_VGASTATE is not set | ||
960 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
961 | # CONFIG_FB is not set | ||
962 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
963 | |||
958 | # | 964 | # |
965 | # Display device support | ||
966 | # | ||
967 | # CONFIG_DISPLAY_SUPPORT is not set | ||
968 | |||
969 | # | ||
970 | # Console display driver support | ||
971 | # | ||
972 | # CONFIG_VGA_CONSOLE is not set | ||
973 | CONFIG_DUMMY_CONSOLE=y | ||
974 | CONFIG_SOUND=y | ||
975 | # CONFIG_SOUND_OSS_CORE is not set | ||
976 | CONFIG_SND=y | ||
977 | CONFIG_SND_TIMER=y | ||
978 | CONFIG_SND_PCM=y | ||
979 | CONFIG_SND_JACK=y | ||
980 | # CONFIG_SND_SEQUENCER is not set | ||
981 | # CONFIG_SND_MIXER_OSS is not set | ||
982 | # CONFIG_SND_PCM_OSS is not set | ||
983 | CONFIG_SND_HRTIMER=y | ||
984 | CONFIG_SND_DYNAMIC_MINORS=y | ||
985 | # CONFIG_SND_SUPPORT_OLD_API is not set | ||
986 | # CONFIG_SND_VERBOSE_PROCFS is not set | ||
987 | # CONFIG_SND_VERBOSE_PRINTK is not set | ||
988 | # CONFIG_SND_DEBUG is not set | ||
989 | # CONFIG_SND_RAWMIDI_SEQ is not set | ||
990 | # CONFIG_SND_OPL3_LIB_SEQ is not set | ||
991 | # CONFIG_SND_OPL4_LIB_SEQ is not set | ||
992 | # CONFIG_SND_SBAWE_SEQ is not set | ||
993 | # CONFIG_SND_EMU10K1_SEQ is not set | ||
994 | # CONFIG_SND_DRIVERS is not set | ||
995 | # CONFIG_SND_PCI is not set | ||
996 | # CONFIG_SND_SPI is not set | ||
997 | # CONFIG_SND_MIPS is not set | ||
998 | CONFIG_SND_USB=y | ||
999 | # CONFIG_SND_USB_AUDIO is not set | ||
1000 | # CONFIG_SND_USB_CAIAQ is not set | ||
1001 | # CONFIG_SND_PCMCIA is not set | ||
1002 | CONFIG_SND_SOC=y | ||
1003 | CONFIG_SND_SOC_AU1XPSC=y | ||
1004 | # CONFIG_SND_SOC_DB1200 is not set | ||
1005 | CONFIG_SND_SOC_I2C_AND_SPI=y | ||
1006 | # CONFIG_SND_SOC_ALL_CODECS is not set | ||
1007 | # CONFIG_SOUND_PRIME is not set | ||
1008 | # CONFIG_HID_SUPPORT is not set | ||
1009 | CONFIG_USB_SUPPORT=y | ||
959 | CONFIG_USB_ARCH_HAS_HCD=y | 1010 | CONFIG_USB_ARCH_HAS_HCD=y |
960 | CONFIG_USB_ARCH_HAS_OHCI=y | 1011 | CONFIG_USB_ARCH_HAS_OHCI=y |
961 | CONFIG_USB_ARCH_HAS_EHCI=y | 1012 | CONFIG_USB_ARCH_HAS_EHCI=y |
962 | # CONFIG_USB is not set | 1013 | CONFIG_USB=y |
1014 | # CONFIG_USB_DEBUG is not set | ||
1015 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
963 | 1016 | ||
964 | # | 1017 | # |
965 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1018 | # Miscellaneous USB options |
966 | # | 1019 | # |
1020 | # CONFIG_USB_DEVICEFS is not set | ||
1021 | # CONFIG_USB_DEVICE_CLASS is not set | ||
1022 | CONFIG_USB_DYNAMIC_MINORS=y | ||
1023 | CONFIG_USB_SUSPEND=y | ||
1024 | # CONFIG_USB_OTG is not set | ||
1025 | # CONFIG_USB_OTG_WHITELIST is not set | ||
1026 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1027 | # CONFIG_USB_MON is not set | ||
1028 | # CONFIG_USB_WUSB is not set | ||
1029 | # CONFIG_USB_WUSB_CBAF is not set | ||
967 | 1030 | ||
968 | # | 1031 | # |
969 | # USB Gadget Support | 1032 | # USB Host Controller Drivers |
970 | # | 1033 | # |
971 | # CONFIG_USB_GADGET is not set | 1034 | # CONFIG_USB_C67X00_HCD is not set |
1035 | # CONFIG_USB_XHCI_HCD is not set | ||
1036 | CONFIG_USB_EHCI_HCD=y | ||
1037 | CONFIG_USB_EHCI_ROOT_HUB_TT=y | ||
1038 | CONFIG_USB_EHCI_TT_NEWSCHED=y | ||
1039 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1040 | # CONFIG_USB_ISP116X_HCD is not set | ||
1041 | # CONFIG_USB_ISP1760_HCD is not set | ||
1042 | # CONFIG_USB_ISP1362_HCD is not set | ||
1043 | CONFIG_USB_OHCI_HCD=y | ||
1044 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
1045 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
1046 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
1047 | # CONFIG_USB_UHCI_HCD is not set | ||
1048 | # CONFIG_USB_SL811_HCD is not set | ||
1049 | # CONFIG_USB_R8A66597_HCD is not set | ||
1050 | # CONFIG_USB_WHCI_HCD is not set | ||
1051 | # CONFIG_USB_HWA_HCD is not set | ||
972 | 1052 | ||
973 | # | 1053 | # |
974 | # MMC/SD Card support | 1054 | # USB Device Class drivers |
975 | # | 1055 | # |
976 | # CONFIG_MMC is not set | 1056 | # CONFIG_USB_ACM is not set |
1057 | # CONFIG_USB_PRINTER is not set | ||
1058 | # CONFIG_USB_WDM is not set | ||
1059 | # CONFIG_USB_TMC is not set | ||
977 | 1060 | ||
978 | # | 1061 | # |
979 | # LED devices | 1062 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
980 | # | 1063 | # |
981 | # CONFIG_NEW_LEDS is not set | ||
982 | 1064 | ||
983 | # | 1065 | # |
984 | # LED drivers | 1066 | # also be needed; see USB_STORAGE Help for more info |
985 | # | 1067 | # |
1068 | # CONFIG_USB_LIBUSUAL is not set | ||
986 | 1069 | ||
987 | # | 1070 | # |
988 | # LED Triggers | 1071 | # USB Imaging devices |
989 | # | 1072 | # |
1073 | # CONFIG_USB_MDC800 is not set | ||
990 | 1074 | ||
991 | # | 1075 | # |
992 | # InfiniBand support | 1076 | # USB port drivers |
993 | # | 1077 | # |
994 | # CONFIG_INFINIBAND is not set | 1078 | # CONFIG_USB_SERIAL is not set |
995 | 1079 | ||
996 | # | 1080 | # |
997 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 1081 | # USB Miscellaneous drivers |
998 | # | 1082 | # |
1083 | # CONFIG_USB_EMI62 is not set | ||
1084 | # CONFIG_USB_EMI26 is not set | ||
1085 | # CONFIG_USB_ADUTUX is not set | ||
1086 | # CONFIG_USB_SEVSEG is not set | ||
1087 | # CONFIG_USB_RIO500 is not set | ||
1088 | # CONFIG_USB_LEGOTOWER is not set | ||
1089 | # CONFIG_USB_LCD is not set | ||
1090 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1091 | # CONFIG_USB_LED is not set | ||
1092 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1093 | # CONFIG_USB_CYTHERM is not set | ||
1094 | # CONFIG_USB_IDMOUSE is not set | ||
1095 | # CONFIG_USB_FTDI_ELAN is not set | ||
1096 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1097 | # CONFIG_USB_SISUSBVGA is not set | ||
1098 | # CONFIG_USB_LD is not set | ||
1099 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1100 | # CONFIG_USB_IOWARRIOR is not set | ||
1101 | # CONFIG_USB_TEST is not set | ||
1102 | # CONFIG_USB_ISIGHTFW is not set | ||
1103 | # CONFIG_USB_VST is not set | ||
1104 | # CONFIG_USB_GADGET is not set | ||
1105 | |||
1106 | # | ||
1107 | # OTG and related infrastructure | ||
1108 | # | ||
1109 | # CONFIG_USB_GPIO_VBUS is not set | ||
1110 | # CONFIG_NOP_USB_XCEIV is not set | ||
1111 | # CONFIG_UWB is not set | ||
1112 | # CONFIG_MMC is not set | ||
1113 | # CONFIG_MEMSTICK is not set | ||
1114 | # CONFIG_NEW_LEDS is not set | ||
1115 | # CONFIG_ACCESSIBILITY is not set | ||
1116 | # CONFIG_INFINIBAND is not set | ||
1117 | CONFIG_RTC_LIB=y | ||
1118 | CONFIG_RTC_CLASS=y | ||
1119 | CONFIG_RTC_HCTOSYS=y | ||
1120 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1121 | # CONFIG_RTC_DEBUG is not set | ||
999 | 1122 | ||
1000 | # | 1123 | # |
1001 | # Real Time Clock | 1124 | # RTC interfaces |
1002 | # | 1125 | # |
1003 | # CONFIG_RTC_CLASS is not set | 1126 | CONFIG_RTC_INTF_SYSFS=y |
1127 | CONFIG_RTC_INTF_PROC=y | ||
1128 | CONFIG_RTC_INTF_DEV=y | ||
1129 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1130 | # CONFIG_RTC_DRV_TEST is not set | ||
1004 | 1131 | ||
1005 | # | 1132 | # |
1006 | # DMA Engine support | 1133 | # I2C RTC drivers |
1007 | # | 1134 | # |
1008 | # CONFIG_DMA_ENGINE is not set | 1135 | # CONFIG_RTC_DRV_DS1307 is not set |
1136 | # CONFIG_RTC_DRV_DS1374 is not set | ||
1137 | # CONFIG_RTC_DRV_DS1672 is not set | ||
1138 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
1139 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
1140 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
1141 | # CONFIG_RTC_DRV_X1205 is not set | ||
1142 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
1143 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
1144 | # CONFIG_RTC_DRV_M41T80 is not set | ||
1145 | # CONFIG_RTC_DRV_BQ32K is not set | ||
1146 | # CONFIG_RTC_DRV_S35390A is not set | ||
1147 | # CONFIG_RTC_DRV_FM3130 is not set | ||
1148 | # CONFIG_RTC_DRV_RX8581 is not set | ||
1149 | # CONFIG_RTC_DRV_RX8025 is not set | ||
1009 | 1150 | ||
1010 | # | 1151 | # |
1011 | # DMA Clients | 1152 | # SPI RTC drivers |
1012 | # | 1153 | # |
1154 | # CONFIG_RTC_DRV_M41T94 is not set | ||
1155 | # CONFIG_RTC_DRV_DS1305 is not set | ||
1156 | # CONFIG_RTC_DRV_DS1390 is not set | ||
1157 | # CONFIG_RTC_DRV_MAX6902 is not set | ||
1158 | # CONFIG_RTC_DRV_R9701 is not set | ||
1159 | # CONFIG_RTC_DRV_RS5C348 is not set | ||
1160 | # CONFIG_RTC_DRV_DS3234 is not set | ||
1161 | # CONFIG_RTC_DRV_PCF2123 is not set | ||
1013 | 1162 | ||
1014 | # | 1163 | # |
1015 | # DMA Devices | 1164 | # Platform RTC drivers |
1016 | # | 1165 | # |
1166 | # CONFIG_RTC_DRV_CMOS is not set | ||
1167 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1168 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1169 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1170 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1171 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1172 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1173 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1174 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1175 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
1176 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1177 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
1178 | # CONFIG_RTC_DRV_V3020 is not set | ||
1017 | 1179 | ||
1018 | # | 1180 | # |
1019 | # Auxiliary Display support | 1181 | # on-CPU RTC drivers |
1020 | # | 1182 | # |
1183 | CONFIG_RTC_DRV_AU1XXX=y | ||
1184 | # CONFIG_DMADEVICES is not set | ||
1185 | # CONFIG_AUXDISPLAY is not set | ||
1186 | # CONFIG_UIO is not set | ||
1021 | 1187 | ||
1022 | # | 1188 | # |
1023 | # Virtualization | 1189 | # TI VLYNQ |
1024 | # | 1190 | # |
1191 | # CONFIG_STAGING is not set | ||
1025 | 1192 | ||
1026 | # | 1193 | # |
1027 | # File systems | 1194 | # File systems |
1028 | # | 1195 | # |
1029 | CONFIG_EXT2_FS=y | 1196 | CONFIG_EXT2_FS=y |
1030 | CONFIG_EXT2_FS_XATTR=y | 1197 | # CONFIG_EXT2_FS_XATTR is not set |
1031 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
1032 | # CONFIG_EXT2_FS_SECURITY is not set | ||
1033 | # CONFIG_EXT2_FS_XIP is not set | 1198 | # CONFIG_EXT2_FS_XIP is not set |
1034 | CONFIG_EXT3_FS=y | 1199 | # CONFIG_EXT3_FS is not set |
1035 | CONFIG_EXT3_FS_XATTR=y | 1200 | # CONFIG_EXT4_FS is not set |
1036 | CONFIG_EXT3_FS_POSIX_ACL=y | 1201 | # CONFIG_REISERFS_FS is not set |
1037 | CONFIG_EXT3_FS_SECURITY=y | ||
1038 | # CONFIG_EXT4DEV_FS is not set | ||
1039 | CONFIG_JBD=y | ||
1040 | # CONFIG_JBD_DEBUG is not set | ||
1041 | CONFIG_FS_MBCACHE=y | ||
1042 | CONFIG_REISERFS_FS=m | ||
1043 | # CONFIG_REISERFS_CHECK is not set | ||
1044 | # CONFIG_REISERFS_PROC_INFO is not set | ||
1045 | CONFIG_REISERFS_FS_XATTR=y | ||
1046 | CONFIG_REISERFS_FS_POSIX_ACL=y | ||
1047 | CONFIG_REISERFS_FS_SECURITY=y | ||
1048 | # CONFIG_JFS_FS is not set | 1202 | # CONFIG_JFS_FS is not set |
1049 | CONFIG_FS_POSIX_ACL=y | 1203 | # CONFIG_FS_POSIX_ACL is not set |
1050 | # CONFIG_XFS_FS is not set | 1204 | # CONFIG_XFS_FS is not set |
1051 | # CONFIG_GFS2_FS is not set | 1205 | # CONFIG_GFS2_FS is not set |
1052 | # CONFIG_OCFS2_FS is not set | 1206 | # CONFIG_OCFS2_FS is not set |
1053 | # CONFIG_MINIX_FS is not set | 1207 | # CONFIG_BTRFS_FS is not set |
1054 | # CONFIG_ROMFS_FS is not set | 1208 | # CONFIG_NILFS2_FS is not set |
1209 | CONFIG_FILE_LOCKING=y | ||
1210 | CONFIG_FSNOTIFY=y | ||
1211 | CONFIG_DNOTIFY=y | ||
1055 | CONFIG_INOTIFY=y | 1212 | CONFIG_INOTIFY=y |
1056 | CONFIG_INOTIFY_USER=y | 1213 | CONFIG_INOTIFY_USER=y |
1057 | # CONFIG_QUOTA is not set | 1214 | # CONFIG_QUOTA is not set |
1058 | CONFIG_DNOTIFY=y | 1215 | # CONFIG_AUTOFS_FS is not set |
1059 | CONFIG_AUTOFS_FS=m | 1216 | # CONFIG_AUTOFS4_FS is not set |
1060 | CONFIG_AUTOFS4_FS=m | 1217 | # CONFIG_FUSE_FS is not set |
1061 | CONFIG_FUSE_FS=m | 1218 | |
1062 | CONFIG_GENERIC_ACL=y | 1219 | # |
1220 | # Caches | ||
1221 | # | ||
1222 | # CONFIG_FSCACHE is not set | ||
1063 | 1223 | ||
1064 | # | 1224 | # |
1065 | # CD-ROM/DVD Filesystems | 1225 | # CD-ROM/DVD Filesystems |
@@ -1078,75 +1238,82 @@ CONFIG_GENERIC_ACL=y | |||
1078 | # Pseudo filesystems | 1238 | # Pseudo filesystems |
1079 | # | 1239 | # |
1080 | CONFIG_PROC_FS=y | 1240 | CONFIG_PROC_FS=y |
1081 | CONFIG_PROC_KCORE=y | 1241 | # CONFIG_PROC_KCORE is not set |
1082 | CONFIG_PROC_SYSCTL=y | 1242 | CONFIG_PROC_SYSCTL=y |
1243 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
1083 | CONFIG_SYSFS=y | 1244 | CONFIG_SYSFS=y |
1084 | CONFIG_TMPFS=y | 1245 | CONFIG_TMPFS=y |
1085 | CONFIG_TMPFS_POSIX_ACL=y | 1246 | # CONFIG_TMPFS_POSIX_ACL is not set |
1086 | # CONFIG_HUGETLB_PAGE is not set | 1247 | # CONFIG_HUGETLB_PAGE is not set |
1087 | CONFIG_RAMFS=y | 1248 | CONFIG_CONFIGFS_FS=y |
1088 | CONFIG_CONFIGFS_FS=m | 1249 | CONFIG_MISC_FILESYSTEMS=y |
1089 | |||
1090 | # | ||
1091 | # Miscellaneous filesystems | ||
1092 | # | ||
1093 | # CONFIG_ADFS_FS is not set | 1250 | # CONFIG_ADFS_FS is not set |
1094 | # CONFIG_AFFS_FS is not set | 1251 | # CONFIG_AFFS_FS is not set |
1095 | # CONFIG_ECRYPT_FS is not set | ||
1096 | # CONFIG_HFS_FS is not set | 1252 | # CONFIG_HFS_FS is not set |
1097 | # CONFIG_HFSPLUS_FS is not set | 1253 | # CONFIG_HFSPLUS_FS is not set |
1098 | # CONFIG_BEFS_FS is not set | 1254 | # CONFIG_BEFS_FS is not set |
1099 | # CONFIG_BFS_FS is not set | 1255 | # CONFIG_BFS_FS is not set |
1100 | # CONFIG_EFS_FS is not set | 1256 | # CONFIG_EFS_FS is not set |
1101 | # CONFIG_JFFS2_FS is not set | 1257 | CONFIG_JFFS2_FS=y |
1102 | CONFIG_CRAMFS=m | 1258 | CONFIG_JFFS2_FS_DEBUG=0 |
1259 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1260 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1261 | CONFIG_JFFS2_SUMMARY=y | ||
1262 | CONFIG_JFFS2_FS_XATTR=y | ||
1263 | # CONFIG_JFFS2_FS_POSIX_ACL is not set | ||
1264 | # CONFIG_JFFS2_FS_SECURITY is not set | ||
1265 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1266 | CONFIG_JFFS2_ZLIB=y | ||
1267 | CONFIG_JFFS2_LZO=y | ||
1268 | CONFIG_JFFS2_RTIME=y | ||
1269 | CONFIG_JFFS2_RUBIN=y | ||
1270 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1271 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1272 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1273 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1274 | # CONFIG_CRAMFS is not set | ||
1275 | CONFIG_SQUASHFS=y | ||
1276 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1277 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
1103 | # CONFIG_VXFS_FS is not set | 1278 | # CONFIG_VXFS_FS is not set |
1279 | # CONFIG_MINIX_FS is not set | ||
1280 | # CONFIG_OMFS_FS is not set | ||
1104 | # CONFIG_HPFS_FS is not set | 1281 | # CONFIG_HPFS_FS is not set |
1105 | # CONFIG_QNX4FS_FS is not set | 1282 | # CONFIG_QNX4FS_FS is not set |
1283 | # CONFIG_ROMFS_FS is not set | ||
1106 | # CONFIG_SYSV_FS is not set | 1284 | # CONFIG_SYSV_FS is not set |
1107 | # CONFIG_UFS_FS is not set | 1285 | # CONFIG_UFS_FS is not set |
1108 | 1286 | CONFIG_NETWORK_FILESYSTEMS=y | |
1109 | # | ||
1110 | # Network File Systems | ||
1111 | # | ||
1112 | CONFIG_NFS_FS=y | 1287 | CONFIG_NFS_FS=y |
1113 | # CONFIG_NFS_V3 is not set | 1288 | CONFIG_NFS_V3=y |
1289 | # CONFIG_NFS_V3_ACL is not set | ||
1114 | # CONFIG_NFS_V4 is not set | 1290 | # CONFIG_NFS_V4 is not set |
1115 | # CONFIG_NFS_DIRECTIO is not set | ||
1116 | CONFIG_NFSD=m | ||
1117 | # CONFIG_NFSD_V3 is not set | ||
1118 | # CONFIG_NFSD_TCP is not set | ||
1119 | CONFIG_ROOT_NFS=y | 1291 | CONFIG_ROOT_NFS=y |
1292 | # CONFIG_NFSD is not set | ||
1120 | CONFIG_LOCKD=y | 1293 | CONFIG_LOCKD=y |
1121 | CONFIG_EXPORTFS=m | 1294 | CONFIG_LOCKD_V4=y |
1122 | CONFIG_NFS_COMMON=y | 1295 | CONFIG_NFS_COMMON=y |
1123 | CONFIG_SUNRPC=y | 1296 | CONFIG_SUNRPC=y |
1124 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1297 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1125 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1298 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1126 | CONFIG_SMB_FS=m | 1299 | # CONFIG_SMB_FS is not set |
1127 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1128 | # CONFIG_CIFS is not set | 1300 | # CONFIG_CIFS is not set |
1129 | # CONFIG_NCP_FS is not set | 1301 | # CONFIG_NCP_FS is not set |
1130 | # CONFIG_CODA_FS is not set | 1302 | # CONFIG_CODA_FS is not set |
1131 | # CONFIG_AFS_FS is not set | 1303 | # CONFIG_AFS_FS is not set |
1132 | # CONFIG_9P_FS is not set | ||
1133 | 1304 | ||
1134 | # | 1305 | # |
1135 | # Partition Types | 1306 | # Partition Types |
1136 | # | 1307 | # |
1137 | # CONFIG_PARTITION_ADVANCED is not set | 1308 | # CONFIG_PARTITION_ADVANCED is not set |
1138 | CONFIG_MSDOS_PARTITION=y | 1309 | CONFIG_MSDOS_PARTITION=y |
1139 | 1310 | CONFIG_NLS=y | |
1140 | # | ||
1141 | # Native Language Support | ||
1142 | # | ||
1143 | CONFIG_NLS=m | ||
1144 | CONFIG_NLS_DEFAULT="iso8859-1" | 1311 | CONFIG_NLS_DEFAULT="iso8859-1" |
1145 | # CONFIG_NLS_CODEPAGE_437 is not set | 1312 | CONFIG_NLS_CODEPAGE_437=y |
1146 | # CONFIG_NLS_CODEPAGE_737 is not set | 1313 | # CONFIG_NLS_CODEPAGE_737 is not set |
1147 | # CONFIG_NLS_CODEPAGE_775 is not set | 1314 | # CONFIG_NLS_CODEPAGE_775 is not set |
1148 | # CONFIG_NLS_CODEPAGE_850 is not set | 1315 | CONFIG_NLS_CODEPAGE_850=y |
1149 | # CONFIG_NLS_CODEPAGE_852 is not set | 1316 | CONFIG_NLS_CODEPAGE_852=y |
1150 | # CONFIG_NLS_CODEPAGE_855 is not set | 1317 | # CONFIG_NLS_CODEPAGE_855 is not set |
1151 | # CONFIG_NLS_CODEPAGE_857 is not set | 1318 | # CONFIG_NLS_CODEPAGE_857 is not set |
1152 | # CONFIG_NLS_CODEPAGE_860 is not set | 1319 | # CONFIG_NLS_CODEPAGE_860 is not set |
@@ -1163,10 +1330,10 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1163 | # CONFIG_NLS_CODEPAGE_949 is not set | 1330 | # CONFIG_NLS_CODEPAGE_949 is not set |
1164 | # CONFIG_NLS_CODEPAGE_874 is not set | 1331 | # CONFIG_NLS_CODEPAGE_874 is not set |
1165 | # CONFIG_NLS_ISO8859_8 is not set | 1332 | # CONFIG_NLS_ISO8859_8 is not set |
1166 | # CONFIG_NLS_CODEPAGE_1250 is not set | 1333 | CONFIG_NLS_CODEPAGE_1250=y |
1167 | # CONFIG_NLS_CODEPAGE_1251 is not set | 1334 | # CONFIG_NLS_CODEPAGE_1251 is not set |
1168 | # CONFIG_NLS_ASCII is not set | 1335 | CONFIG_NLS_ASCII=y |
1169 | # CONFIG_NLS_ISO8859_1 is not set | 1336 | CONFIG_NLS_ISO8859_1=y |
1170 | # CONFIG_NLS_ISO8859_2 is not set | 1337 | # CONFIG_NLS_ISO8859_2 is not set |
1171 | # CONFIG_NLS_ISO8859_3 is not set | 1338 | # CONFIG_NLS_ISO8859_3 is not set |
1172 | # CONFIG_NLS_ISO8859_4 is not set | 1339 | # CONFIG_NLS_ISO8859_4 is not set |
@@ -1176,38 +1343,75 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1176 | # CONFIG_NLS_ISO8859_9 is not set | 1343 | # CONFIG_NLS_ISO8859_9 is not set |
1177 | # CONFIG_NLS_ISO8859_13 is not set | 1344 | # CONFIG_NLS_ISO8859_13 is not set |
1178 | # CONFIG_NLS_ISO8859_14 is not set | 1345 | # CONFIG_NLS_ISO8859_14 is not set |
1179 | # CONFIG_NLS_ISO8859_15 is not set | 1346 | CONFIG_NLS_ISO8859_15=y |
1180 | # CONFIG_NLS_KOI8_R is not set | 1347 | # CONFIG_NLS_KOI8_R is not set |
1181 | # CONFIG_NLS_KOI8_U is not set | 1348 | # CONFIG_NLS_KOI8_U is not set |
1182 | # CONFIG_NLS_UTF8 is not set | 1349 | CONFIG_NLS_UTF8=y |
1183 | 1350 | # CONFIG_DLM is not set | |
1184 | # | ||
1185 | # Distributed Lock Manager | ||
1186 | # | ||
1187 | CONFIG_DLM=m | ||
1188 | CONFIG_DLM_TCP=y | ||
1189 | # CONFIG_DLM_SCTP is not set | ||
1190 | # CONFIG_DLM_DEBUG is not set | ||
1191 | |||
1192 | # | ||
1193 | # Profiling support | ||
1194 | # | ||
1195 | # CONFIG_PROFILING is not set | ||
1196 | 1351 | ||
1197 | # | 1352 | # |
1198 | # Kernel hacking | 1353 | # Kernel hacking |
1199 | # | 1354 | # |
1200 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1355 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1201 | # CONFIG_PRINTK_TIME is not set | 1356 | # CONFIG_PRINTK_TIME is not set |
1357 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1202 | CONFIG_ENABLE_MUST_CHECK=y | 1358 | CONFIG_ENABLE_MUST_CHECK=y |
1359 | CONFIG_FRAME_WARN=1024 | ||
1203 | # CONFIG_MAGIC_SYSRQ is not set | 1360 | # CONFIG_MAGIC_SYSRQ is not set |
1361 | # CONFIG_STRIP_ASM_SYMS is not set | ||
1204 | # CONFIG_UNUSED_SYMBOLS is not set | 1362 | # CONFIG_UNUSED_SYMBOLS is not set |
1205 | # CONFIG_DEBUG_FS is not set | 1363 | # CONFIG_DEBUG_FS is not set |
1206 | # CONFIG_HEADERS_CHECK is not set | 1364 | # CONFIG_HEADERS_CHECK is not set |
1207 | # CONFIG_DEBUG_KERNEL is not set | 1365 | CONFIG_DEBUG_KERNEL=y |
1208 | CONFIG_LOG_BUF_SHIFT=14 | 1366 | # CONFIG_DEBUG_SHIRQ is not set |
1209 | CONFIG_CROSSCOMPILE=y | 1367 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1210 | CONFIG_CMDLINE="" | 1368 | # CONFIG_DETECT_HUNG_TASK is not set |
1369 | # CONFIG_SCHED_DEBUG is not set | ||
1370 | # CONFIG_SCHEDSTATS is not set | ||
1371 | # CONFIG_TIMER_STATS is not set | ||
1372 | # CONFIG_DEBUG_OBJECTS is not set | ||
1373 | # CONFIG_DEBUG_SLAB is not set | ||
1374 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1375 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1376 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1377 | # CONFIG_DEBUG_MUTEXES is not set | ||
1378 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1379 | # CONFIG_PROVE_LOCKING is not set | ||
1380 | # CONFIG_LOCK_STAT is not set | ||
1381 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1382 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1383 | # CONFIG_DEBUG_KOBJECT is not set | ||
1384 | # CONFIG_DEBUG_INFO is not set | ||
1385 | # CONFIG_DEBUG_VM is not set | ||
1386 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1387 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1388 | # CONFIG_DEBUG_LIST is not set | ||
1389 | # CONFIG_DEBUG_SG is not set | ||
1390 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1391 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1392 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1393 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1394 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1395 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1396 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1397 | # CONFIG_FAULT_INJECTION is not set | ||
1398 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1399 | # CONFIG_PAGE_POISONING is not set | ||
1400 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1401 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1402 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1403 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1404 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1405 | CONFIG_TRACING_SUPPORT=y | ||
1406 | # CONFIG_FTRACE is not set | ||
1407 | # CONFIG_SAMPLES is not set | ||
1408 | CONFIG_HAVE_ARCH_KGDB=y | ||
1409 | # CONFIG_KGDB is not set | ||
1410 | CONFIG_EARLY_PRINTK=y | ||
1411 | # CONFIG_CMDLINE_BOOL is not set | ||
1412 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1413 | # CONFIG_RUNTIME_DEBUG is not set | ||
1414 | CONFIG_DEBUG_ZBOOT=y | ||
1211 | 1415 | ||
1212 | # | 1416 | # |
1213 | # Security options | 1417 | # Security options |
@@ -1215,67 +1419,32 @@ CONFIG_CMDLINE="" | |||
1215 | CONFIG_KEYS=y | 1419 | CONFIG_KEYS=y |
1216 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1420 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1217 | # CONFIG_SECURITY is not set | 1421 | # CONFIG_SECURITY is not set |
1218 | 1422 | CONFIG_SECURITYFS=y | |
1219 | # | 1423 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1220 | # Cryptographic options | 1424 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1221 | # | 1425 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1222 | CONFIG_CRYPTO=y | 1426 | CONFIG_DEFAULT_SECURITY_DAC=y |
1223 | CONFIG_CRYPTO_ALGAPI=y | 1427 | CONFIG_DEFAULT_SECURITY="" |
1224 | CONFIG_CRYPTO_BLKCIPHER=m | 1428 | # CONFIG_CRYPTO is not set |
1225 | CONFIG_CRYPTO_HASH=y | 1429 | # CONFIG_BINARY_PRINTF is not set |
1226 | CONFIG_CRYPTO_MANAGER=y | ||
1227 | CONFIG_CRYPTO_HMAC=y | ||
1228 | CONFIG_CRYPTO_XCBC=m | ||
1229 | CONFIG_CRYPTO_NULL=m | ||
1230 | CONFIG_CRYPTO_MD4=m | ||
1231 | CONFIG_CRYPTO_MD5=y | ||
1232 | CONFIG_CRYPTO_SHA1=m | ||
1233 | CONFIG_CRYPTO_SHA256=m | ||
1234 | CONFIG_CRYPTO_SHA512=m | ||
1235 | CONFIG_CRYPTO_WP512=m | ||
1236 | CONFIG_CRYPTO_TGR192=m | ||
1237 | CONFIG_CRYPTO_GF128MUL=m | ||
1238 | CONFIG_CRYPTO_ECB=m | ||
1239 | CONFIG_CRYPTO_CBC=m | ||
1240 | CONFIG_CRYPTO_PCBC=m | ||
1241 | CONFIG_CRYPTO_LRW=m | ||
1242 | CONFIG_CRYPTO_DES=m | ||
1243 | CONFIG_CRYPTO_FCRYPT=m | ||
1244 | CONFIG_CRYPTO_BLOWFISH=m | ||
1245 | CONFIG_CRYPTO_TWOFISH=m | ||
1246 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1247 | CONFIG_CRYPTO_SERPENT=m | ||
1248 | CONFIG_CRYPTO_AES=m | ||
1249 | CONFIG_CRYPTO_CAST5=m | ||
1250 | CONFIG_CRYPTO_CAST6=m | ||
1251 | CONFIG_CRYPTO_TEA=m | ||
1252 | CONFIG_CRYPTO_ARC4=m | ||
1253 | CONFIG_CRYPTO_KHAZAD=m | ||
1254 | CONFIG_CRYPTO_ANUBIS=m | ||
1255 | CONFIG_CRYPTO_DEFLATE=m | ||
1256 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1257 | CONFIG_CRYPTO_CRC32C=m | ||
1258 | CONFIG_CRYPTO_CAMELLIA=m | ||
1259 | # CONFIG_CRYPTO_TEST is not set | ||
1260 | |||
1261 | # | ||
1262 | # Hardware crypto devices | ||
1263 | # | ||
1264 | 1430 | ||
1265 | # | 1431 | # |
1266 | # Library routines | 1432 | # Library routines |
1267 | # | 1433 | # |
1268 | CONFIG_BITREVERSE=y | 1434 | CONFIG_BITREVERSE=y |
1269 | CONFIG_CRC_CCITT=m | 1435 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1270 | CONFIG_CRC16=m | 1436 | # CONFIG_CRC_CCITT is not set |
1437 | # CONFIG_CRC16 is not set | ||
1438 | # CONFIG_CRC_T10DIF is not set | ||
1439 | # CONFIG_CRC_ITU_T is not set | ||
1271 | CONFIG_CRC32=y | 1440 | CONFIG_CRC32=y |
1272 | CONFIG_LIBCRC32C=m | 1441 | # CONFIG_CRC7 is not set |
1273 | CONFIG_ZLIB_INFLATE=m | 1442 | # CONFIG_LIBCRC32C is not set |
1274 | CONFIG_ZLIB_DEFLATE=m | 1443 | CONFIG_ZLIB_INFLATE=y |
1275 | CONFIG_TEXTSEARCH=y | 1444 | CONFIG_ZLIB_DEFLATE=y |
1276 | CONFIG_TEXTSEARCH_KMP=m | 1445 | CONFIG_LZO_COMPRESS=y |
1277 | CONFIG_TEXTSEARCH_BM=m | 1446 | CONFIG_LZO_DECOMPRESS=y |
1278 | CONFIG_TEXTSEARCH_FSM=m | ||
1279 | CONFIG_PLIST=y | ||
1280 | CONFIG_HAS_IOMEM=y | 1447 | CONFIG_HAS_IOMEM=y |
1281 | CONFIG_HAS_IOPORT=y | 1448 | CONFIG_HAS_IOPORT=y |
1449 | CONFIG_HAS_DMA=y | ||
1450 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/decstation_defconfig b/arch/mips/configs/decstation_defconfig index 9e65e6a2dcb3..cbb4d86f2912 100644 --- a/arch/mips/configs/decstation_defconfig +++ b/arch/mips/configs/decstation_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | CONFIG_MACH_DECSTATION=y | 26 | CONFIG_MACH_DECSTATION=y |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -882,7 +881,7 @@ CONFIG_MAGIC_SYSRQ=y | |||
882 | # CONFIG_DEBUG_KERNEL is not set | 881 | # CONFIG_DEBUG_KERNEL is not set |
883 | CONFIG_LOG_BUF_SHIFT=14 | 882 | CONFIG_LOG_BUF_SHIFT=14 |
884 | CONFIG_CROSSCOMPILE=y | 883 | CONFIG_CROSSCOMPILE=y |
885 | CONFIG_CMDLINE="" | 884 | # CONFIG_CMDLINE_BOOL is not set |
886 | 885 | ||
887 | # | 886 | # |
888 | # Security options | 887 | # Security options |
diff --git a/arch/mips/configs/e55_defconfig b/arch/mips/configs/e55_defconfig index 1bd84d42b14f..52968c46c806 100644 --- a/arch/mips/configs/e55_defconfig +++ b/arch/mips/configs/e55_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_MIPS_COBALT is not set | 12 | # CONFIG_MIPS_COBALT is not set |
14 | # CONFIG_MACH_DECSTATION is not set | 13 | # CONFIG_MACH_DECSTATION is not set |
15 | # CONFIG_MACH_JAZZ is not set | 14 | # CONFIG_MACH_JAZZ is not set |
@@ -561,7 +560,9 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
561 | # CONFIG_HEADERS_CHECK is not set | 560 | # CONFIG_HEADERS_CHECK is not set |
562 | # CONFIG_DEBUG_KERNEL is not set | 561 | # CONFIG_DEBUG_KERNEL is not set |
563 | CONFIG_CROSSCOMPILE=y | 562 | CONFIG_CROSSCOMPILE=y |
563 | CONFIG_CMDLINE_BOOL=y | ||
564 | CONFIG_CMDLINE="console=ttyVR0,19200 ide0=0x1f0,0x3f6,40 mem=8M" | 564 | CONFIG_CMDLINE="console=ttyVR0,19200 ide0=0x1f0,0x3f6,40 mem=8M" |
565 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
565 | 566 | ||
566 | # | 567 | # |
567 | # Security options | 568 | # Security options |
diff --git a/arch/mips/configs/excite_defconfig b/arch/mips/configs/excite_defconfig deleted file mode 100644 index 1995d43a2ed1..000000000000 --- a/arch/mips/configs/excite_defconfig +++ /dev/null | |||
@@ -1,1335 +0,0 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.20 | ||
4 | # Tue Feb 20 21:47:31 2007 | ||
5 | # | ||
6 | CONFIG_MIPS=y | ||
7 | |||
8 | # | ||
9 | # Machine selection | ||
10 | # | ||
11 | CONFIG_ZONE_DMA=y | ||
12 | # CONFIG_MIPS_MTX1 is not set | ||
13 | # CONFIG_MIPS_BOSPORUS is not set | ||
14 | # CONFIG_MIPS_PB1000 is not set | ||
15 | # CONFIG_MIPS_PB1100 is not set | ||
16 | # CONFIG_MIPS_PB1500 is not set | ||
17 | # CONFIG_MIPS_PB1550 is not set | ||
18 | # CONFIG_MIPS_PB1200 is not set | ||
19 | # CONFIG_MIPS_DB1000 is not set | ||
20 | # CONFIG_MIPS_DB1100 is not set | ||
21 | # CONFIG_MIPS_DB1500 is not set | ||
22 | # CONFIG_MIPS_DB1550 is not set | ||
23 | # CONFIG_MIPS_DB1200 is not set | ||
24 | # CONFIG_MIPS_MIRAGE is not set | ||
25 | CONFIG_BASLER_EXCITE=y | ||
26 | # CONFIG_BASLER_EXCITE_PROTOTYPE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | ||
28 | # CONFIG_MACH_DECSTATION is not set | ||
29 | # CONFIG_MACH_JAZZ is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | ||
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | ||
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | ||
34 | # CONFIG_MIPS_XXS1500 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | ||
36 | # CONFIG_PNX8550_STB810 is not set | ||
37 | # CONFIG_MACH_VR41XX is not set | ||
38 | # CONFIG_PMC_YOSEMITE is not set | ||
39 | # CONFIG_MARKEINS is not set | ||
40 | # CONFIG_SGI_IP22 is not set | ||
41 | # CONFIG_SGI_IP27 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | ||
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | ||
51 | # CONFIG_SNI_RM is not set | ||
52 | # CONFIG_TOSHIBA_JMR3927 is not set | ||
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | ||
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
59 | CONFIG_GENERIC_HWEIGHT=y | ||
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
61 | CONFIG_GENERIC_TIME=y | ||
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | ||
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | ||
64 | CONFIG_DMA_COHERENT=y | ||
65 | CONFIG_CPU_BIG_ENDIAN=y | ||
66 | # CONFIG_CPU_LITTLE_ENDIAN is not set | ||
67 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y | ||
68 | CONFIG_IRQ_CPU=y | ||
69 | CONFIG_IRQ_CPU_RM7K=y | ||
70 | CONFIG_IRQ_CPU_RM9K=y | ||
71 | CONFIG_MIPS_RM9122=y | ||
72 | CONFIG_SERIAL_RM9000=y | ||
73 | CONFIG_GPI_RM9000=y | ||
74 | CONFIG_WDT_RM9000=y | ||
75 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | ||
76 | |||
77 | # | ||
78 | # CPU selection | ||
79 | # | ||
80 | # CONFIG_CPU_MIPS32_R1 is not set | ||
81 | # CONFIG_CPU_MIPS32_R2 is not set | ||
82 | # CONFIG_CPU_MIPS64_R1 is not set | ||
83 | # CONFIG_CPU_MIPS64_R2 is not set | ||
84 | # CONFIG_CPU_R3000 is not set | ||
85 | # CONFIG_CPU_TX39XX is not set | ||
86 | # CONFIG_CPU_VR41XX is not set | ||
87 | # CONFIG_CPU_R4300 is not set | ||
88 | # CONFIG_CPU_R4X00 is not set | ||
89 | # CONFIG_CPU_TX49XX is not set | ||
90 | # CONFIG_CPU_R5000 is not set | ||
91 | # CONFIG_CPU_R5432 is not set | ||
92 | # CONFIG_CPU_R6000 is not set | ||
93 | # CONFIG_CPU_NEVADA is not set | ||
94 | # CONFIG_CPU_R8000 is not set | ||
95 | # CONFIG_CPU_R10000 is not set | ||
96 | # CONFIG_CPU_RM7000 is not set | ||
97 | CONFIG_CPU_RM9000=y | ||
98 | # CONFIG_CPU_SB1 is not set | ||
99 | CONFIG_SYS_HAS_CPU_RM9000=y | ||
100 | CONFIG_WEAK_ORDERING=y | ||
101 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | ||
102 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y | ||
103 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | ||
104 | CONFIG_CPU_SUPPORTS_64BIT_KERNEL=y | ||
105 | |||
106 | # | ||
107 | # Kernel type | ||
108 | # | ||
109 | CONFIG_32BIT=y | ||
110 | # CONFIG_64BIT is not set | ||
111 | CONFIG_PAGE_SIZE_4KB=y | ||
112 | # CONFIG_PAGE_SIZE_8KB is not set | ||
113 | # CONFIG_PAGE_SIZE_16KB is not set | ||
114 | # CONFIG_PAGE_SIZE_64KB is not set | ||
115 | CONFIG_CPU_HAS_PREFETCH=y | ||
116 | CONFIG_MIPS_MT_DISABLED=y | ||
117 | # CONFIG_MIPS_MT_SMP is not set | ||
118 | # CONFIG_MIPS_MT_SMTC is not set | ||
119 | # CONFIG_MIPS_VPE_LOADER is not set | ||
120 | # CONFIG_64BIT_PHYS_ADDR is not set | ||
121 | CONFIG_CPU_HAS_SYNC=y | ||
122 | CONFIG_GENERIC_HARDIRQS=y | ||
123 | CONFIG_GENERIC_IRQ_PROBE=y | ||
124 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | ||
125 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
126 | CONFIG_SELECT_MEMORY_MODEL=y | ||
127 | CONFIG_FLATMEM_MANUAL=y | ||
128 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
129 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
130 | CONFIG_FLATMEM=y | ||
131 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
132 | # CONFIG_SPARSEMEM_STATIC is not set | ||
133 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
134 | # CONFIG_RESOURCES_64BIT is not set | ||
135 | CONFIG_ZONE_DMA_FLAG=1 | ||
136 | # CONFIG_HZ_48 is not set | ||
137 | # CONFIG_HZ_100 is not set | ||
138 | # CONFIG_HZ_128 is not set | ||
139 | # CONFIG_HZ_250 is not set | ||
140 | # CONFIG_HZ_256 is not set | ||
141 | CONFIG_HZ_1000=y | ||
142 | # CONFIG_HZ_1024 is not set | ||
143 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | ||
144 | CONFIG_HZ=1000 | ||
145 | # CONFIG_PREEMPT_NONE is not set | ||
146 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
147 | CONFIG_PREEMPT=y | ||
148 | CONFIG_PREEMPT_BKL=y | ||
149 | # CONFIG_KEXEC is not set | ||
150 | CONFIG_LOCKDEP_SUPPORT=y | ||
151 | CONFIG_STACKTRACE_SUPPORT=y | ||
152 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
153 | |||
154 | # | ||
155 | # Code maturity level options | ||
156 | # | ||
157 | CONFIG_EXPERIMENTAL=y | ||
158 | CONFIG_BROKEN_ON_SMP=y | ||
159 | CONFIG_LOCK_KERNEL=y | ||
160 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
161 | |||
162 | # | ||
163 | # General setup | ||
164 | # | ||
165 | CONFIG_LOCALVERSION="" | ||
166 | # CONFIG_LOCALVERSION_AUTO is not set | ||
167 | CONFIG_SWAP=y | ||
168 | CONFIG_SYSVIPC=y | ||
169 | # CONFIG_IPC_NS is not set | ||
170 | CONFIG_SYSVIPC_SYSCTL=y | ||
171 | CONFIG_POSIX_MQUEUE=y | ||
172 | # CONFIG_BSD_PROCESS_ACCT is not set | ||
173 | # CONFIG_TASKSTATS is not set | ||
174 | # CONFIG_UTS_NS is not set | ||
175 | # CONFIG_AUDIT is not set | ||
176 | # CONFIG_IKCONFIG is not set | ||
177 | CONFIG_SYSFS_DEPRECATED=y | ||
178 | # CONFIG_RELAY is not set | ||
179 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
180 | CONFIG_SYSCTL=y | ||
181 | CONFIG_EMBEDDED=y | ||
182 | CONFIG_SYSCTL_SYSCALL=y | ||
183 | CONFIG_KALLSYMS=y | ||
184 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
185 | CONFIG_HOTPLUG=y | ||
186 | CONFIG_PRINTK=y | ||
187 | CONFIG_BUG=y | ||
188 | CONFIG_ELF_CORE=y | ||
189 | CONFIG_BASE_FULL=y | ||
190 | CONFIG_FUTEX=y | ||
191 | CONFIG_EPOLL=y | ||
192 | CONFIG_SHMEM=y | ||
193 | CONFIG_SLAB=y | ||
194 | CONFIG_VM_EVENT_COUNTERS=y | ||
195 | CONFIG_RT_MUTEXES=y | ||
196 | # CONFIG_TINY_SHMEM is not set | ||
197 | CONFIG_BASE_SMALL=0 | ||
198 | # CONFIG_SLOB is not set | ||
199 | |||
200 | # | ||
201 | # Loadable module support | ||
202 | # | ||
203 | CONFIG_MODULES=y | ||
204 | CONFIG_MODULE_UNLOAD=y | ||
205 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
206 | # CONFIG_MODVERSIONS is not set | ||
207 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
208 | CONFIG_KMOD=y | ||
209 | |||
210 | # | ||
211 | # Block layer | ||
212 | # | ||
213 | CONFIG_BLOCK=y | ||
214 | # CONFIG_LBD is not set | ||
215 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
216 | # CONFIG_LSF is not set | ||
217 | |||
218 | # | ||
219 | # IO Schedulers | ||
220 | # | ||
221 | CONFIG_IOSCHED_NOOP=y | ||
222 | CONFIG_IOSCHED_AS=y | ||
223 | CONFIG_IOSCHED_DEADLINE=y | ||
224 | CONFIG_IOSCHED_CFQ=y | ||
225 | CONFIG_DEFAULT_AS=y | ||
226 | # CONFIG_DEFAULT_DEADLINE is not set | ||
227 | # CONFIG_DEFAULT_CFQ is not set | ||
228 | # CONFIG_DEFAULT_NOOP is not set | ||
229 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
230 | |||
231 | # | ||
232 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | ||
233 | # | ||
234 | CONFIG_HW_HAS_PCI=y | ||
235 | CONFIG_PCI=y | ||
236 | CONFIG_MMU=y | ||
237 | |||
238 | # | ||
239 | # PCCARD (PCMCIA/CardBus) support | ||
240 | # | ||
241 | # CONFIG_PCCARD is not set | ||
242 | |||
243 | # | ||
244 | # PCI Hotplug Support | ||
245 | # | ||
246 | # CONFIG_HOTPLUG_PCI is not set | ||
247 | |||
248 | # | ||
249 | # Executable file formats | ||
250 | # | ||
251 | CONFIG_BINFMT_ELF=y | ||
252 | # CONFIG_BINFMT_MISC is not set | ||
253 | CONFIG_TRAD_SIGNALS=y | ||
254 | |||
255 | # | ||
256 | # Power management options | ||
257 | # | ||
258 | CONFIG_PM=y | ||
259 | # CONFIG_PM_LEGACY is not set | ||
260 | # CONFIG_PM_DEBUG is not set | ||
261 | # CONFIG_PM_SYSFS_DEPRECATED is not set | ||
262 | |||
263 | # | ||
264 | # Networking | ||
265 | # | ||
266 | CONFIG_NET=y | ||
267 | |||
268 | # | ||
269 | # Networking options | ||
270 | # | ||
271 | # CONFIG_NETDEBUG is not set | ||
272 | CONFIG_PACKET=y | ||
273 | CONFIG_PACKET_MMAP=y | ||
274 | CONFIG_UNIX=y | ||
275 | CONFIG_XFRM=y | ||
276 | # CONFIG_XFRM_USER is not set | ||
277 | # CONFIG_XFRM_SUB_POLICY is not set | ||
278 | CONFIG_XFRM_MIGRATE=y | ||
279 | # CONFIG_NET_KEY is not set | ||
280 | CONFIG_INET=y | ||
281 | # CONFIG_IP_MULTICAST is not set | ||
282 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
283 | CONFIG_IP_FIB_HASH=y | ||
284 | CONFIG_IP_PNP=y | ||
285 | CONFIG_IP_PNP_DHCP=y | ||
286 | # CONFIG_IP_PNP_BOOTP is not set | ||
287 | # CONFIG_IP_PNP_RARP is not set | ||
288 | # CONFIG_NET_IPIP is not set | ||
289 | # CONFIG_NET_IPGRE is not set | ||
290 | # CONFIG_ARPD is not set | ||
291 | # CONFIG_SYN_COOKIES is not set | ||
292 | # CONFIG_INET_AH is not set | ||
293 | # CONFIG_INET_ESP is not set | ||
294 | # CONFIG_INET_IPCOMP is not set | ||
295 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
296 | # CONFIG_INET_TUNNEL is not set | ||
297 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | ||
298 | CONFIG_INET_XFRM_MODE_TUNNEL=m | ||
299 | CONFIG_INET_XFRM_MODE_BEET=m | ||
300 | CONFIG_INET_DIAG=y | ||
301 | CONFIG_INET_TCP_DIAG=y | ||
302 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
303 | CONFIG_TCP_CONG_CUBIC=y | ||
304 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
305 | CONFIG_TCP_MD5SIG=y | ||
306 | # CONFIG_IPV6 is not set | ||
307 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
308 | # CONFIG_INET6_TUNNEL is not set | ||
309 | CONFIG_NETWORK_SECMARK=y | ||
310 | # CONFIG_NETFILTER is not set | ||
311 | |||
312 | # | ||
313 | # DCCP Configuration (EXPERIMENTAL) | ||
314 | # | ||
315 | # CONFIG_IP_DCCP is not set | ||
316 | |||
317 | # | ||
318 | # SCTP Configuration (EXPERIMENTAL) | ||
319 | # | ||
320 | # CONFIG_IP_SCTP is not set | ||
321 | |||
322 | # | ||
323 | # TIPC Configuration (EXPERIMENTAL) | ||
324 | # | ||
325 | # CONFIG_TIPC is not set | ||
326 | # CONFIG_ATM is not set | ||
327 | # CONFIG_BRIDGE is not set | ||
328 | # CONFIG_VLAN_8021Q is not set | ||
329 | # CONFIG_DECNET is not set | ||
330 | # CONFIG_LLC2 is not set | ||
331 | # CONFIG_IPX is not set | ||
332 | # CONFIG_ATALK is not set | ||
333 | # CONFIG_X25 is not set | ||
334 | # CONFIG_LAPB is not set | ||
335 | # CONFIG_ECONET is not set | ||
336 | # CONFIG_WAN_ROUTER is not set | ||
337 | |||
338 | # | ||
339 | # QoS and/or fair queueing | ||
340 | # | ||
341 | # CONFIG_NET_SCHED is not set | ||
342 | |||
343 | # | ||
344 | # Network testing | ||
345 | # | ||
346 | # CONFIG_NET_PKTGEN is not set | ||
347 | # CONFIG_HAMRADIO is not set | ||
348 | # CONFIG_IRDA is not set | ||
349 | # CONFIG_BT is not set | ||
350 | # CONFIG_IEEE80211 is not set | ||
351 | |||
352 | # | ||
353 | # Device Drivers | ||
354 | # | ||
355 | |||
356 | # | ||
357 | # Generic Driver Options | ||
358 | # | ||
359 | CONFIG_STANDALONE=y | ||
360 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
361 | CONFIG_FW_LOADER=m | ||
362 | # CONFIG_SYS_HYPERVISOR is not set | ||
363 | |||
364 | # | ||
365 | # Connector - unified userspace <-> kernelspace linker | ||
366 | # | ||
367 | # CONFIG_CONNECTOR is not set | ||
368 | |||
369 | # | ||
370 | # Memory Technology Devices (MTD) | ||
371 | # | ||
372 | CONFIG_MTD=y | ||
373 | # CONFIG_MTD_DEBUG is not set | ||
374 | # CONFIG_MTD_CONCAT is not set | ||
375 | CONFIG_MTD_PARTITIONS=y | ||
376 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
377 | # CONFIG_MTD_CMDLINE_PARTS is not set | ||
378 | |||
379 | # | ||
380 | # User Modules And Translation Layers | ||
381 | # | ||
382 | CONFIG_MTD_CHAR=y | ||
383 | CONFIG_MTD_BLKDEVS=y | ||
384 | CONFIG_MTD_BLOCK=y | ||
385 | # CONFIG_FTL is not set | ||
386 | # CONFIG_NFTL is not set | ||
387 | # CONFIG_INFTL is not set | ||
388 | # CONFIG_RFD_FTL is not set | ||
389 | # CONFIG_SSFDC is not set | ||
390 | |||
391 | # | ||
392 | # RAM/ROM/Flash chip drivers | ||
393 | # | ||
394 | # CONFIG_MTD_CFI is not set | ||
395 | # CONFIG_MTD_JEDECPROBE is not set | ||
396 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
397 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
398 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
399 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
400 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
401 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
402 | CONFIG_MTD_CFI_I1=y | ||
403 | CONFIG_MTD_CFI_I2=y | ||
404 | # CONFIG_MTD_CFI_I4 is not set | ||
405 | # CONFIG_MTD_CFI_I8 is not set | ||
406 | # CONFIG_MTD_RAM is not set | ||
407 | # CONFIG_MTD_ROM is not set | ||
408 | # CONFIG_MTD_ABSENT is not set | ||
409 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
410 | |||
411 | # | ||
412 | # Mapping drivers for chip access | ||
413 | # | ||
414 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | ||
415 | # CONFIG_MTD_PLATRAM is not set | ||
416 | |||
417 | # | ||
418 | # Self-contained MTD device drivers | ||
419 | # | ||
420 | # CONFIG_MTD_PMC551 is not set | ||
421 | # CONFIG_MTD_SLRAM is not set | ||
422 | # CONFIG_MTD_PHRAM is not set | ||
423 | # CONFIG_MTD_MTDRAM is not set | ||
424 | # CONFIG_MTD_BLOCK2MTD is not set | ||
425 | |||
426 | # | ||
427 | # Disk-On-Chip Device Drivers | ||
428 | # | ||
429 | # CONFIG_MTD_DOC2000 is not set | ||
430 | # CONFIG_MTD_DOC2001 is not set | ||
431 | # CONFIG_MTD_DOC2001PLUS is not set | ||
432 | |||
433 | # | ||
434 | # NAND Flash Device Drivers | ||
435 | # | ||
436 | CONFIG_MTD_NAND=y | ||
437 | CONFIG_MTD_NAND_VERIFY_WRITE=y | ||
438 | # CONFIG_MTD_NAND_ECC_SMC is not set | ||
439 | CONFIG_MTD_NAND_IDS=y | ||
440 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
441 | # CONFIG_MTD_NAND_BASLER_EXCITE is not set | ||
442 | # CONFIG_MTD_NAND_CAFE is not set | ||
443 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
444 | |||
445 | # | ||
446 | # OneNAND Flash Device Drivers | ||
447 | # | ||
448 | # CONFIG_MTD_ONENAND is not set | ||
449 | |||
450 | # | ||
451 | # Parallel port support | ||
452 | # | ||
453 | # CONFIG_PARPORT is not set | ||
454 | |||
455 | # | ||
456 | # Plug and Play support | ||
457 | # | ||
458 | # CONFIG_PNPACPI is not set | ||
459 | |||
460 | # | ||
461 | # Block devices | ||
462 | # | ||
463 | # CONFIG_BLK_CPQ_DA is not set | ||
464 | # CONFIG_BLK_CPQ_CISS_DA is not set | ||
465 | # CONFIG_BLK_DEV_DAC960 is not set | ||
466 | # CONFIG_BLK_DEV_UMEM is not set | ||
467 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
468 | CONFIG_BLK_DEV_LOOP=m | ||
469 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
470 | # CONFIG_BLK_DEV_NBD is not set | ||
471 | # CONFIG_BLK_DEV_SX8 is not set | ||
472 | # CONFIG_BLK_DEV_UB is not set | ||
473 | # CONFIG_BLK_DEV_RAM is not set | ||
474 | # CONFIG_BLK_DEV_INITRD is not set | ||
475 | # CONFIG_CDROM_PKTCDVD is not set | ||
476 | # CONFIG_ATA_OVER_ETH is not set | ||
477 | |||
478 | # | ||
479 | # Misc devices | ||
480 | # | ||
481 | CONFIG_SGI_IOC4=m | ||
482 | # CONFIG_TIFM_CORE is not set | ||
483 | |||
484 | # | ||
485 | # ATA/ATAPI/MFM/RLL support | ||
486 | # | ||
487 | # CONFIG_IDE is not set | ||
488 | |||
489 | # | ||
490 | # SCSI device support | ||
491 | # | ||
492 | # CONFIG_RAID_ATTRS is not set | ||
493 | CONFIG_SCSI=y | ||
494 | CONFIG_SCSI_TGT=m | ||
495 | # CONFIG_SCSI_NETLINK is not set | ||
496 | # CONFIG_SCSI_PROC_FS is not set | ||
497 | |||
498 | # | ||
499 | # SCSI support type (disk, tape, CD-ROM) | ||
500 | # | ||
501 | CONFIG_BLK_DEV_SD=y | ||
502 | # CONFIG_CHR_DEV_ST is not set | ||
503 | # CONFIG_CHR_DEV_OSST is not set | ||
504 | # CONFIG_BLK_DEV_SR is not set | ||
505 | # CONFIG_CHR_DEV_SG is not set | ||
506 | # CONFIG_CHR_DEV_SCH is not set | ||
507 | |||
508 | # | ||
509 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
510 | # | ||
511 | # CONFIG_SCSI_MULTI_LUN is not set | ||
512 | # CONFIG_SCSI_CONSTANTS is not set | ||
513 | # CONFIG_SCSI_LOGGING is not set | ||
514 | CONFIG_SCSI_SCAN_ASYNC=y | ||
515 | |||
516 | # | ||
517 | # SCSI Transports | ||
518 | # | ||
519 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
520 | # CONFIG_SCSI_FC_ATTRS is not set | ||
521 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
522 | CONFIG_SCSI_SAS_ATTRS=m | ||
523 | CONFIG_SCSI_SAS_LIBSAS=m | ||
524 | # CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set | ||
525 | |||
526 | # | ||
527 | # SCSI low-level drivers | ||
528 | # | ||
529 | # CONFIG_ISCSI_TCP is not set | ||
530 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | ||
531 | # CONFIG_SCSI_3W_9XXX is not set | ||
532 | # CONFIG_SCSI_ACARD is not set | ||
533 | # CONFIG_SCSI_AACRAID is not set | ||
534 | # CONFIG_SCSI_AIC7XXX is not set | ||
535 | # CONFIG_SCSI_AIC7XXX_OLD is not set | ||
536 | # CONFIG_SCSI_AIC79XX is not set | ||
537 | CONFIG_SCSI_AIC94XX=m | ||
538 | # CONFIG_AIC94XX_DEBUG is not set | ||
539 | # CONFIG_SCSI_DPT_I2O is not set | ||
540 | # CONFIG_SCSI_ARCMSR is not set | ||
541 | # CONFIG_MEGARAID_NEWGEN is not set | ||
542 | # CONFIG_MEGARAID_LEGACY is not set | ||
543 | # CONFIG_MEGARAID_SAS is not set | ||
544 | # CONFIG_SCSI_HPTIOP is not set | ||
545 | # CONFIG_SCSI_DMX3191D is not set | ||
546 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | ||
547 | # CONFIG_SCSI_IPS is not set | ||
548 | # CONFIG_SCSI_INITIO is not set | ||
549 | # CONFIG_SCSI_INIA100 is not set | ||
550 | # CONFIG_SCSI_STEX is not set | ||
551 | # CONFIG_SCSI_SYM53C8XX_2 is not set | ||
552 | # CONFIG_SCSI_QLOGIC_1280 is not set | ||
553 | # CONFIG_SCSI_QLA_FC is not set | ||
554 | # CONFIG_SCSI_QLA_ISCSI is not set | ||
555 | # CONFIG_SCSI_LPFC is not set | ||
556 | # CONFIG_SCSI_DC395x is not set | ||
557 | # CONFIG_SCSI_DC390T is not set | ||
558 | # CONFIG_SCSI_NSP32 is not set | ||
559 | # CONFIG_SCSI_DEBUG is not set | ||
560 | # CONFIG_SCSI_SRP is not set | ||
561 | |||
562 | # | ||
563 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
564 | # | ||
565 | # CONFIG_ATA is not set | ||
566 | |||
567 | # | ||
568 | # Multi-device support (RAID and LVM) | ||
569 | # | ||
570 | # CONFIG_MD is not set | ||
571 | |||
572 | # | ||
573 | # Fusion MPT device support | ||
574 | # | ||
575 | # CONFIG_FUSION is not set | ||
576 | # CONFIG_FUSION_SPI is not set | ||
577 | # CONFIG_FUSION_FC is not set | ||
578 | # CONFIG_FUSION_SAS is not set | ||
579 | |||
580 | # | ||
581 | # IEEE 1394 (FireWire) support | ||
582 | # | ||
583 | # CONFIG_IEEE1394 is not set | ||
584 | |||
585 | # | ||
586 | # I2O device support | ||
587 | # | ||
588 | # CONFIG_I2O is not set | ||
589 | |||
590 | # | ||
591 | # Network device support | ||
592 | # | ||
593 | CONFIG_NETDEVICES=y | ||
594 | # CONFIG_DUMMY is not set | ||
595 | # CONFIG_BONDING is not set | ||
596 | # CONFIG_EQUALIZER is not set | ||
597 | # CONFIG_TUN is not set | ||
598 | |||
599 | # | ||
600 | # ARCnet devices | ||
601 | # | ||
602 | # CONFIG_ARCNET is not set | ||
603 | |||
604 | # | ||
605 | # PHY device support | ||
606 | # | ||
607 | |||
608 | # | ||
609 | # Ethernet (10 or 100Mbit) | ||
610 | # | ||
611 | # CONFIG_NET_ETHERNET is not set | ||
612 | |||
613 | # | ||
614 | # Ethernet (1000 Mbit) | ||
615 | # | ||
616 | # CONFIG_ACENIC is not set | ||
617 | # CONFIG_DL2K is not set | ||
618 | # CONFIG_E1000 is not set | ||
619 | # CONFIG_NS83820 is not set | ||
620 | # CONFIG_HAMACHI is not set | ||
621 | # CONFIG_YELLOWFIN is not set | ||
622 | # CONFIG_R8169 is not set | ||
623 | # CONFIG_SIS190 is not set | ||
624 | # CONFIG_SKGE is not set | ||
625 | # CONFIG_SKY2 is not set | ||
626 | # CONFIG_SK98LIN is not set | ||
627 | # CONFIG_TIGON3 is not set | ||
628 | # CONFIG_BNX2 is not set | ||
629 | CONFIG_QLA3XXX=m | ||
630 | # CONFIG_ATL1 is not set | ||
631 | |||
632 | # | ||
633 | # Ethernet (10000 Mbit) | ||
634 | # | ||
635 | # CONFIG_CHELSIO_T1 is not set | ||
636 | CONFIG_CHELSIO_T3=m | ||
637 | # CONFIG_IXGB is not set | ||
638 | # CONFIG_S2IO is not set | ||
639 | # CONFIG_MYRI10GE is not set | ||
640 | CONFIG_NETXEN_NIC=m | ||
641 | |||
642 | # | ||
643 | # Token Ring devices | ||
644 | # | ||
645 | # CONFIG_TR is not set | ||
646 | |||
647 | # | ||
648 | # Wireless LAN (non-hamradio) | ||
649 | # | ||
650 | # CONFIG_NET_RADIO is not set | ||
651 | |||
652 | # | ||
653 | # Wan interfaces | ||
654 | # | ||
655 | # CONFIG_WAN is not set | ||
656 | # CONFIG_FDDI is not set | ||
657 | # CONFIG_HIPPI is not set | ||
658 | # CONFIG_PPP is not set | ||
659 | # CONFIG_SLIP is not set | ||
660 | # CONFIG_NET_FC is not set | ||
661 | # CONFIG_SHAPER is not set | ||
662 | # CONFIG_NETCONSOLE is not set | ||
663 | # CONFIG_NETPOLL is not set | ||
664 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
665 | |||
666 | # | ||
667 | # ISDN subsystem | ||
668 | # | ||
669 | # CONFIG_ISDN is not set | ||
670 | |||
671 | # | ||
672 | # Telephony Support | ||
673 | # | ||
674 | # CONFIG_PHONE is not set | ||
675 | |||
676 | # | ||
677 | # Input device support | ||
678 | # | ||
679 | CONFIG_INPUT=y | ||
680 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
681 | |||
682 | # | ||
683 | # Userland interfaces | ||
684 | # | ||
685 | CONFIG_INPUT_MOUSEDEV=m | ||
686 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
687 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
688 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
689 | # CONFIG_INPUT_JOYDEV is not set | ||
690 | # CONFIG_INPUT_TSDEV is not set | ||
691 | CONFIG_INPUT_EVDEV=m | ||
692 | # CONFIG_INPUT_EVBUG is not set | ||
693 | |||
694 | # | ||
695 | # Input Device Drivers | ||
696 | # | ||
697 | # CONFIG_INPUT_KEYBOARD is not set | ||
698 | # CONFIG_INPUT_MOUSE is not set | ||
699 | # CONFIG_INPUT_JOYSTICK is not set | ||
700 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
701 | # CONFIG_INPUT_MISC is not set | ||
702 | |||
703 | # | ||
704 | # Hardware I/O ports | ||
705 | # | ||
706 | # CONFIG_SERIO is not set | ||
707 | # CONFIG_GAMEPORT is not set | ||
708 | |||
709 | # | ||
710 | # Character devices | ||
711 | # | ||
712 | CONFIG_VT=y | ||
713 | CONFIG_VT_CONSOLE=y | ||
714 | CONFIG_HW_CONSOLE=y | ||
715 | CONFIG_VT_HW_CONSOLE_BINDING=y | ||
716 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
717 | |||
718 | # | ||
719 | # Serial drivers | ||
720 | # | ||
721 | CONFIG_SERIAL_8250=y | ||
722 | CONFIG_SERIAL_8250_CONSOLE=y | ||
723 | CONFIG_SERIAL_8250_PCI=y | ||
724 | CONFIG_SERIAL_8250_NR_UARTS=2 | ||
725 | CONFIG_SERIAL_8250_RUNTIME_UARTS=2 | ||
726 | CONFIG_SERIAL_8250_EXTENDED=y | ||
727 | # CONFIG_SERIAL_8250_MANY_PORTS is not set | ||
728 | CONFIG_SERIAL_8250_SHARE_IRQ=y | ||
729 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set | ||
730 | # CONFIG_SERIAL_8250_RSA is not set | ||
731 | |||
732 | # | ||
733 | # Non-8250 serial port support | ||
734 | # | ||
735 | CONFIG_SERIAL_CORE=y | ||
736 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
737 | # CONFIG_SERIAL_JSM is not set | ||
738 | CONFIG_UNIX98_PTYS=y | ||
739 | # CONFIG_LEGACY_PTYS is not set | ||
740 | |||
741 | # | ||
742 | # IPMI | ||
743 | # | ||
744 | # CONFIG_IPMI_HANDLER is not set | ||
745 | |||
746 | # | ||
747 | # Watchdog Cards | ||
748 | # | ||
749 | CONFIG_WATCHDOG=y | ||
750 | # CONFIG_WATCHDOG_NOWAYOUT is not set | ||
751 | |||
752 | # | ||
753 | # Watchdog Device Drivers | ||
754 | # | ||
755 | # CONFIG_SOFT_WATCHDOG is not set | ||
756 | CONFIG_WDT_RM9K_GPI=m | ||
757 | |||
758 | # | ||
759 | # PCI-based Watchdog Cards | ||
760 | # | ||
761 | # CONFIG_PCIPCWATCHDOG is not set | ||
762 | # CONFIG_WDTPCI is not set | ||
763 | |||
764 | # | ||
765 | # USB-based Watchdog Cards | ||
766 | # | ||
767 | # CONFIG_USBPCWATCHDOG is not set | ||
768 | # CONFIG_HW_RANDOM is not set | ||
769 | # CONFIG_RTC is not set | ||
770 | # CONFIG_GEN_RTC is not set | ||
771 | # CONFIG_DTLK is not set | ||
772 | # CONFIG_R3964 is not set | ||
773 | # CONFIG_APPLICOM is not set | ||
774 | # CONFIG_DRM is not set | ||
775 | # CONFIG_RAW_DRIVER is not set | ||
776 | |||
777 | # | ||
778 | # TPM devices | ||
779 | # | ||
780 | # CONFIG_TCG_TPM is not set | ||
781 | |||
782 | # | ||
783 | # I2C support | ||
784 | # | ||
785 | # CONFIG_I2C is not set | ||
786 | |||
787 | # | ||
788 | # SPI support | ||
789 | # | ||
790 | # CONFIG_SPI is not set | ||
791 | # CONFIG_SPI_MASTER is not set | ||
792 | |||
793 | # | ||
794 | # Dallas's 1-wire bus | ||
795 | # | ||
796 | # CONFIG_W1 is not set | ||
797 | |||
798 | # | ||
799 | # Hardware Monitoring support | ||
800 | # | ||
801 | # CONFIG_HWMON is not set | ||
802 | # CONFIG_HWMON_VID is not set | ||
803 | |||
804 | # | ||
805 | # Multimedia devices | ||
806 | # | ||
807 | # CONFIG_VIDEO_DEV is not set | ||
808 | |||
809 | # | ||
810 | # Digital Video Broadcasting Devices | ||
811 | # | ||
812 | # CONFIG_DVB is not set | ||
813 | # CONFIG_USB_DABUSB is not set | ||
814 | |||
815 | # | ||
816 | # Graphics support | ||
817 | # | ||
818 | # CONFIG_FIRMWARE_EDID is not set | ||
819 | CONFIG_FB=y | ||
820 | # CONFIG_FB_CFB_FILLRECT is not set | ||
821 | # CONFIG_FB_CFB_COPYAREA is not set | ||
822 | # CONFIG_FB_CFB_IMAGEBLIT is not set | ||
823 | # CONFIG_FB_SVGALIB is not set | ||
824 | # CONFIG_FB_MACMODES is not set | ||
825 | # CONFIG_FB_BACKLIGHT is not set | ||
826 | # CONFIG_FB_MODE_HELPERS is not set | ||
827 | # CONFIG_FB_TILEBLITTING is not set | ||
828 | # CONFIG_FB_CIRRUS is not set | ||
829 | # CONFIG_FB_PM2 is not set | ||
830 | # CONFIG_FB_CYBER2000 is not set | ||
831 | # CONFIG_FB_ASILIANT is not set | ||
832 | # CONFIG_FB_IMSTT is not set | ||
833 | # CONFIG_FB_S1D13XXX is not set | ||
834 | # CONFIG_FB_NVIDIA is not set | ||
835 | # CONFIG_FB_RIVA is not set | ||
836 | # CONFIG_FB_MATROX is not set | ||
837 | # CONFIG_FB_RADEON is not set | ||
838 | # CONFIG_FB_ATY128 is not set | ||
839 | # CONFIG_FB_ATY is not set | ||
840 | # CONFIG_FB_S3 is not set | ||
841 | # CONFIG_FB_SAVAGE is not set | ||
842 | # CONFIG_FB_SIS is not set | ||
843 | # CONFIG_FB_NEOMAGIC is not set | ||
844 | # CONFIG_FB_KYRO is not set | ||
845 | # CONFIG_FB_3DFX is not set | ||
846 | # CONFIG_FB_VOODOO1 is not set | ||
847 | # CONFIG_FB_SMIVGX is not set | ||
848 | # CONFIG_FB_TRIDENT is not set | ||
849 | # CONFIG_FB_VIRTUAL is not set | ||
850 | |||
851 | # | ||
852 | # Console display driver support | ||
853 | # | ||
854 | # CONFIG_VGA_CONSOLE is not set | ||
855 | CONFIG_DUMMY_CONSOLE=y | ||
856 | CONFIG_FRAMEBUFFER_CONSOLE=m | ||
857 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
858 | # CONFIG_FONTS is not set | ||
859 | CONFIG_FONT_8x8=y | ||
860 | CONFIG_FONT_8x16=y | ||
861 | |||
862 | # | ||
863 | # Logo configuration | ||
864 | # | ||
865 | # CONFIG_LOGO is not set | ||
866 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
867 | |||
868 | # | ||
869 | # Sound | ||
870 | # | ||
871 | # CONFIG_SOUND is not set | ||
872 | |||
873 | # | ||
874 | # HID Devices | ||
875 | # | ||
876 | CONFIG_HID=y | ||
877 | # CONFIG_HID_DEBUG is not set | ||
878 | |||
879 | # | ||
880 | # USB support | ||
881 | # | ||
882 | CONFIG_USB_ARCH_HAS_HCD=y | ||
883 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
884 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
885 | CONFIG_USB=y | ||
886 | # CONFIG_USB_DEBUG is not set | ||
887 | |||
888 | # | ||
889 | # Miscellaneous USB options | ||
890 | # | ||
891 | CONFIG_USB_DEVICEFS=y | ||
892 | # CONFIG_USB_DYNAMIC_MINORS is not set | ||
893 | # CONFIG_USB_SUSPEND is not set | ||
894 | # CONFIG_USB_OTG is not set | ||
895 | |||
896 | # | ||
897 | # USB Host Controller Drivers | ||
898 | # | ||
899 | CONFIG_USB_EHCI_HCD=y | ||
900 | # CONFIG_USB_EHCI_SPLIT_ISO is not set | ||
901 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | ||
902 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | ||
903 | # CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set | ||
904 | # CONFIG_USB_ISP116X_HCD is not set | ||
905 | CONFIG_USB_OHCI_HCD=y | ||
906 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
907 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
908 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
909 | # CONFIG_USB_UHCI_HCD is not set | ||
910 | # CONFIG_USB_SL811_HCD is not set | ||
911 | |||
912 | # | ||
913 | # USB Device Class drivers | ||
914 | # | ||
915 | # CONFIG_USB_ACM is not set | ||
916 | # CONFIG_USB_PRINTER is not set | ||
917 | |||
918 | # | ||
919 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
920 | # | ||
921 | |||
922 | # | ||
923 | # may also be needed; see USB_STORAGE Help for more information | ||
924 | # | ||
925 | CONFIG_USB_STORAGE=y | ||
926 | # CONFIG_USB_STORAGE_DEBUG is not set | ||
927 | # CONFIG_USB_STORAGE_DATAFAB is not set | ||
928 | # CONFIG_USB_STORAGE_FREECOM is not set | ||
929 | # CONFIG_USB_STORAGE_DPCM is not set | ||
930 | # CONFIG_USB_STORAGE_USBAT is not set | ||
931 | # CONFIG_USB_STORAGE_SDDR09 is not set | ||
932 | # CONFIG_USB_STORAGE_SDDR55 is not set | ||
933 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | ||
934 | # CONFIG_USB_STORAGE_ALAUDA is not set | ||
935 | # CONFIG_USB_STORAGE_KARMA is not set | ||
936 | # CONFIG_USB_LIBUSUAL is not set | ||
937 | |||
938 | # | ||
939 | # USB Input Devices | ||
940 | # | ||
941 | CONFIG_USB_HID=m | ||
942 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | ||
943 | # CONFIG_HID_FF is not set | ||
944 | # CONFIG_USB_HIDDEV is not set | ||
945 | |||
946 | # | ||
947 | # USB HID Boot Protocol drivers | ||
948 | # | ||
949 | # CONFIG_USB_KBD is not set | ||
950 | # CONFIG_USB_MOUSE is not set | ||
951 | # CONFIG_USB_AIPTEK is not set | ||
952 | # CONFIG_USB_WACOM is not set | ||
953 | # CONFIG_USB_ACECAD is not set | ||
954 | # CONFIG_USB_KBTAB is not set | ||
955 | # CONFIG_USB_POWERMATE is not set | ||
956 | # CONFIG_USB_TOUCHSCREEN is not set | ||
957 | # CONFIG_USB_YEALINK is not set | ||
958 | # CONFIG_USB_XPAD is not set | ||
959 | # CONFIG_USB_ATI_REMOTE is not set | ||
960 | # CONFIG_USB_ATI_REMOTE2 is not set | ||
961 | # CONFIG_USB_KEYSPAN_REMOTE is not set | ||
962 | # CONFIG_USB_APPLETOUCH is not set | ||
963 | # CONFIG_USB_GTCO is not set | ||
964 | |||
965 | # | ||
966 | # USB Imaging devices | ||
967 | # | ||
968 | # CONFIG_USB_MDC800 is not set | ||
969 | # CONFIG_USB_MICROTEK is not set | ||
970 | |||
971 | # | ||
972 | # USB Network Adapters | ||
973 | # | ||
974 | # CONFIG_USB_CATC is not set | ||
975 | # CONFIG_USB_KAWETH is not set | ||
976 | # CONFIG_USB_PEGASUS is not set | ||
977 | # CONFIG_USB_RTL8150 is not set | ||
978 | # CONFIG_USB_USBNET_MII is not set | ||
979 | # CONFIG_USB_USBNET is not set | ||
980 | # CONFIG_USB_MON is not set | ||
981 | |||
982 | # | ||
983 | # USB port drivers | ||
984 | # | ||
985 | |||
986 | # | ||
987 | # USB Serial Converter support | ||
988 | # | ||
989 | # CONFIG_USB_SERIAL is not set | ||
990 | |||
991 | # | ||
992 | # USB Miscellaneous drivers | ||
993 | # | ||
994 | # CONFIG_USB_EMI62 is not set | ||
995 | # CONFIG_USB_EMI26 is not set | ||
996 | # CONFIG_USB_ADUTUX is not set | ||
997 | # CONFIG_USB_AUERSWALD is not set | ||
998 | # CONFIG_USB_RIO500 is not set | ||
999 | # CONFIG_USB_LEGOTOWER is not set | ||
1000 | # CONFIG_USB_LCD is not set | ||
1001 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1002 | # CONFIG_USB_LED is not set | ||
1003 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1004 | # CONFIG_USB_CYTHERM is not set | ||
1005 | # CONFIG_USB_PHIDGET is not set | ||
1006 | # CONFIG_USB_IDMOUSE is not set | ||
1007 | # CONFIG_USB_FTDI_ELAN is not set | ||
1008 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1009 | # CONFIG_USB_SISUSBVGA is not set | ||
1010 | # CONFIG_USB_LD is not set | ||
1011 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1012 | # CONFIG_USB_TEST is not set | ||
1013 | |||
1014 | # | ||
1015 | # USB DSL modem support | ||
1016 | # | ||
1017 | |||
1018 | # | ||
1019 | # USB Gadget Support | ||
1020 | # | ||
1021 | # CONFIG_USB_GADGET is not set | ||
1022 | |||
1023 | # | ||
1024 | # MMC/SD Card support | ||
1025 | # | ||
1026 | # CONFIG_MMC is not set | ||
1027 | |||
1028 | # | ||
1029 | # LED devices | ||
1030 | # | ||
1031 | # CONFIG_NEW_LEDS is not set | ||
1032 | |||
1033 | # | ||
1034 | # LED drivers | ||
1035 | # | ||
1036 | |||
1037 | # | ||
1038 | # LED Triggers | ||
1039 | # | ||
1040 | |||
1041 | # | ||
1042 | # InfiniBand support | ||
1043 | # | ||
1044 | # CONFIG_INFINIBAND is not set | ||
1045 | |||
1046 | # | ||
1047 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | ||
1048 | # | ||
1049 | |||
1050 | # | ||
1051 | # Real Time Clock | ||
1052 | # | ||
1053 | # CONFIG_RTC_CLASS is not set | ||
1054 | |||
1055 | # | ||
1056 | # DMA Engine support | ||
1057 | # | ||
1058 | # CONFIG_DMA_ENGINE is not set | ||
1059 | |||
1060 | # | ||
1061 | # DMA Clients | ||
1062 | # | ||
1063 | |||
1064 | # | ||
1065 | # DMA Devices | ||
1066 | # | ||
1067 | |||
1068 | # | ||
1069 | # Auxiliary Display support | ||
1070 | # | ||
1071 | |||
1072 | # | ||
1073 | # Virtualization | ||
1074 | # | ||
1075 | |||
1076 | # | ||
1077 | # File systems | ||
1078 | # | ||
1079 | CONFIG_EXT2_FS=y | ||
1080 | # CONFIG_EXT2_FS_XATTR is not set | ||
1081 | # CONFIG_EXT2_FS_XIP is not set | ||
1082 | # CONFIG_EXT3_FS is not set | ||
1083 | # CONFIG_EXT4DEV_FS is not set | ||
1084 | # CONFIG_REISERFS_FS is not set | ||
1085 | # CONFIG_JFS_FS is not set | ||
1086 | CONFIG_FS_POSIX_ACL=y | ||
1087 | # CONFIG_XFS_FS is not set | ||
1088 | # CONFIG_GFS2_FS is not set | ||
1089 | # CONFIG_OCFS2_FS is not set | ||
1090 | # CONFIG_MINIX_FS is not set | ||
1091 | # CONFIG_ROMFS_FS is not set | ||
1092 | CONFIG_INOTIFY=y | ||
1093 | CONFIG_INOTIFY_USER=y | ||
1094 | # CONFIG_QUOTA is not set | ||
1095 | # CONFIG_DNOTIFY is not set | ||
1096 | # CONFIG_AUTOFS_FS is not set | ||
1097 | # CONFIG_AUTOFS4_FS is not set | ||
1098 | # CONFIG_FUSE_FS is not set | ||
1099 | CONFIG_GENERIC_ACL=y | ||
1100 | |||
1101 | # | ||
1102 | # CD-ROM/DVD Filesystems | ||
1103 | # | ||
1104 | # CONFIG_ISO9660_FS is not set | ||
1105 | # CONFIG_UDF_FS is not set | ||
1106 | |||
1107 | # | ||
1108 | # DOS/FAT/NT Filesystems | ||
1109 | # | ||
1110 | CONFIG_FAT_FS=m | ||
1111 | CONFIG_MSDOS_FS=m | ||
1112 | CONFIG_VFAT_FS=m | ||
1113 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
1114 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
1115 | # CONFIG_NTFS_FS is not set | ||
1116 | |||
1117 | # | ||
1118 | # Pseudo filesystems | ||
1119 | # | ||
1120 | CONFIG_PROC_FS=y | ||
1121 | CONFIG_PROC_KCORE=y | ||
1122 | CONFIG_PROC_SYSCTL=y | ||
1123 | CONFIG_SYSFS=y | ||
1124 | CONFIG_TMPFS=y | ||
1125 | CONFIG_TMPFS_POSIX_ACL=y | ||
1126 | # CONFIG_HUGETLB_PAGE is not set | ||
1127 | CONFIG_RAMFS=y | ||
1128 | CONFIG_CONFIGFS_FS=m | ||
1129 | |||
1130 | # | ||
1131 | # Miscellaneous filesystems | ||
1132 | # | ||
1133 | # CONFIG_ADFS_FS is not set | ||
1134 | # CONFIG_AFFS_FS is not set | ||
1135 | # CONFIG_HFS_FS is not set | ||
1136 | # CONFIG_HFSPLUS_FS is not set | ||
1137 | # CONFIG_BEFS_FS is not set | ||
1138 | # CONFIG_BFS_FS is not set | ||
1139 | # CONFIG_EFS_FS is not set | ||
1140 | CONFIG_JFFS2_FS=y | ||
1141 | CONFIG_JFFS2_FS_DEBUG=0 | ||
1142 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1143 | # CONFIG_JFFS2_SUMMARY is not set | ||
1144 | # CONFIG_JFFS2_FS_XATTR is not set | ||
1145 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | ||
1146 | CONFIG_JFFS2_ZLIB=y | ||
1147 | CONFIG_JFFS2_RTIME=y | ||
1148 | # CONFIG_JFFS2_RUBIN is not set | ||
1149 | # CONFIG_CRAMFS is not set | ||
1150 | # CONFIG_VXFS_FS is not set | ||
1151 | # CONFIG_HPFS_FS is not set | ||
1152 | # CONFIG_QNX4FS_FS is not set | ||
1153 | # CONFIG_SYSV_FS is not set | ||
1154 | # CONFIG_UFS_FS is not set | ||
1155 | |||
1156 | # | ||
1157 | # Network File Systems | ||
1158 | # | ||
1159 | CONFIG_NFS_FS=y | ||
1160 | CONFIG_NFS_V3=y | ||
1161 | # CONFIG_NFS_V3_ACL is not set | ||
1162 | # CONFIG_NFS_V4 is not set | ||
1163 | # CONFIG_NFS_DIRECTIO is not set | ||
1164 | # CONFIG_NFSD is not set | ||
1165 | CONFIG_ROOT_NFS=y | ||
1166 | CONFIG_LOCKD=y | ||
1167 | CONFIG_LOCKD_V4=y | ||
1168 | CONFIG_NFS_COMMON=y | ||
1169 | CONFIG_SUNRPC=y | ||
1170 | # CONFIG_RPCSEC_GSS_KRB5 is not set | ||
1171 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
1172 | # CONFIG_SMB_FS is not set | ||
1173 | # CONFIG_CIFS is not set | ||
1174 | # CONFIG_NCP_FS is not set | ||
1175 | # CONFIG_CODA_FS is not set | ||
1176 | # CONFIG_AFS_FS is not set | ||
1177 | # CONFIG_9P_FS is not set | ||
1178 | |||
1179 | # | ||
1180 | # Partition Types | ||
1181 | # | ||
1182 | CONFIG_PARTITION_ADVANCED=y | ||
1183 | # CONFIG_ACORN_PARTITION is not set | ||
1184 | # CONFIG_OSF_PARTITION is not set | ||
1185 | # CONFIG_AMIGA_PARTITION is not set | ||
1186 | # CONFIG_ATARI_PARTITION is not set | ||
1187 | # CONFIG_MAC_PARTITION is not set | ||
1188 | CONFIG_MSDOS_PARTITION=y | ||
1189 | # CONFIG_BSD_DISKLABEL is not set | ||
1190 | # CONFIG_MINIX_SUBPARTITION is not set | ||
1191 | # CONFIG_SOLARIS_X86_PARTITION is not set | ||
1192 | # CONFIG_UNIXWARE_DISKLABEL is not set | ||
1193 | # CONFIG_LDM_PARTITION is not set | ||
1194 | # CONFIG_SGI_PARTITION is not set | ||
1195 | # CONFIG_ULTRIX_PARTITION is not set | ||
1196 | # CONFIG_SUN_PARTITION is not set | ||
1197 | # CONFIG_KARMA_PARTITION is not set | ||
1198 | # CONFIG_EFI_PARTITION is not set | ||
1199 | |||
1200 | # | ||
1201 | # Native Language Support | ||
1202 | # | ||
1203 | CONFIG_NLS=y | ||
1204 | CONFIG_NLS_DEFAULT="iso8859-1" | ||
1205 | CONFIG_NLS_CODEPAGE_437=m | ||
1206 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
1207 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
1208 | CONFIG_NLS_CODEPAGE_850=m | ||
1209 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
1210 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
1211 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
1212 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
1213 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
1214 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
1215 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
1216 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
1217 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
1218 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
1219 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
1220 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
1221 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
1222 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
1223 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
1224 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
1225 | # CONFIG_NLS_ISO8859_8 is not set | ||
1226 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
1227 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
1228 | # CONFIG_NLS_ASCII is not set | ||
1229 | CONFIG_NLS_ISO8859_1=m | ||
1230 | # CONFIG_NLS_ISO8859_2 is not set | ||
1231 | # CONFIG_NLS_ISO8859_3 is not set | ||
1232 | # CONFIG_NLS_ISO8859_4 is not set | ||
1233 | # CONFIG_NLS_ISO8859_5 is not set | ||
1234 | # CONFIG_NLS_ISO8859_6 is not set | ||
1235 | # CONFIG_NLS_ISO8859_7 is not set | ||
1236 | # CONFIG_NLS_ISO8859_9 is not set | ||
1237 | # CONFIG_NLS_ISO8859_13 is not set | ||
1238 | # CONFIG_NLS_ISO8859_14 is not set | ||
1239 | # CONFIG_NLS_ISO8859_15 is not set | ||
1240 | # CONFIG_NLS_KOI8_R is not set | ||
1241 | # CONFIG_NLS_KOI8_U is not set | ||
1242 | # CONFIG_NLS_UTF8 is not set | ||
1243 | |||
1244 | # | ||
1245 | # Distributed Lock Manager | ||
1246 | # | ||
1247 | CONFIG_DLM=m | ||
1248 | CONFIG_DLM_TCP=y | ||
1249 | # CONFIG_DLM_SCTP is not set | ||
1250 | # CONFIG_DLM_DEBUG is not set | ||
1251 | |||
1252 | # | ||
1253 | # Profiling support | ||
1254 | # | ||
1255 | # CONFIG_PROFILING is not set | ||
1256 | |||
1257 | # | ||
1258 | # Kernel hacking | ||
1259 | # | ||
1260 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
1261 | # CONFIG_PRINTK_TIME is not set | ||
1262 | CONFIG_ENABLE_MUST_CHECK=y | ||
1263 | # CONFIG_MAGIC_SYSRQ is not set | ||
1264 | # CONFIG_UNUSED_SYMBOLS is not set | ||
1265 | # CONFIG_DEBUG_FS is not set | ||
1266 | # CONFIG_HEADERS_CHECK is not set | ||
1267 | # CONFIG_DEBUG_KERNEL is not set | ||
1268 | CONFIG_LOG_BUF_SHIFT=14 | ||
1269 | CONFIG_CROSSCOMPILE=y | ||
1270 | CONFIG_CMDLINE="" | ||
1271 | |||
1272 | # | ||
1273 | # Security options | ||
1274 | # | ||
1275 | # CONFIG_KEYS is not set | ||
1276 | # CONFIG_SECURITY is not set | ||
1277 | |||
1278 | # | ||
1279 | # Cryptographic options | ||
1280 | # | ||
1281 | CONFIG_CRYPTO=y | ||
1282 | CONFIG_CRYPTO_ALGAPI=y | ||
1283 | CONFIG_CRYPTO_BLKCIPHER=m | ||
1284 | CONFIG_CRYPTO_HASH=m | ||
1285 | CONFIG_CRYPTO_MANAGER=m | ||
1286 | # CONFIG_CRYPTO_HMAC is not set | ||
1287 | CONFIG_CRYPTO_XCBC=m | ||
1288 | # CONFIG_CRYPTO_NULL is not set | ||
1289 | # CONFIG_CRYPTO_MD4 is not set | ||
1290 | CONFIG_CRYPTO_MD5=y | ||
1291 | # CONFIG_CRYPTO_SHA1 is not set | ||
1292 | # CONFIG_CRYPTO_SHA256 is not set | ||
1293 | # CONFIG_CRYPTO_SHA512 is not set | ||
1294 | # CONFIG_CRYPTO_WP512 is not set | ||
1295 | # CONFIG_CRYPTO_TGR192 is not set | ||
1296 | CONFIG_CRYPTO_GF128MUL=m | ||
1297 | CONFIG_CRYPTO_ECB=m | ||
1298 | CONFIG_CRYPTO_CBC=m | ||
1299 | CONFIG_CRYPTO_PCBC=m | ||
1300 | CONFIG_CRYPTO_LRW=m | ||
1301 | # CONFIG_CRYPTO_DES is not set | ||
1302 | CONFIG_CRYPTO_FCRYPT=m | ||
1303 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
1304 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1305 | # CONFIG_CRYPTO_SERPENT is not set | ||
1306 | # CONFIG_CRYPTO_AES is not set | ||
1307 | # CONFIG_CRYPTO_CAST5 is not set | ||
1308 | # CONFIG_CRYPTO_CAST6 is not set | ||
1309 | # CONFIG_CRYPTO_TEA is not set | ||
1310 | # CONFIG_CRYPTO_ARC4 is not set | ||
1311 | # CONFIG_CRYPTO_KHAZAD is not set | ||
1312 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1313 | # CONFIG_CRYPTO_DEFLATE is not set | ||
1314 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1315 | # CONFIG_CRYPTO_CRC32C is not set | ||
1316 | CONFIG_CRYPTO_CAMELLIA=m | ||
1317 | # CONFIG_CRYPTO_TEST is not set | ||
1318 | |||
1319 | # | ||
1320 | # Hardware crypto devices | ||
1321 | # | ||
1322 | |||
1323 | # | ||
1324 | # Library routines | ||
1325 | # | ||
1326 | CONFIG_BITREVERSE=y | ||
1327 | # CONFIG_CRC_CCITT is not set | ||
1328 | # CONFIG_CRC16 is not set | ||
1329 | CONFIG_CRC32=y | ||
1330 | # CONFIG_LIBCRC32C is not set | ||
1331 | CONFIG_ZLIB_INFLATE=y | ||
1332 | CONFIG_ZLIB_DEFLATE=y | ||
1333 | CONFIG_PLIST=y | ||
1334 | CONFIG_HAS_IOMEM=y | ||
1335 | CONFIG_HAS_IOPORT=y | ||
diff --git a/arch/mips/configs/fuloong2e_defconfig b/arch/mips/configs/fuloong2e_defconfig index 0197f0de6b3f..a09dd03aa8c8 100644 --- a/arch/mips/configs/fuloong2e_defconfig +++ b/arch/mips/configs/fuloong2e_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.31-rc1 | 3 | # Linux kernel version: 2.6.32-rc4 |
4 | # Thu Jul 2 22:37:00 2009 | 4 | # Fri Oct 16 13:18:01 2009 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
@@ -10,8 +10,8 @@ CONFIG_MIPS=y | |||
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_AR7 is not set | 12 | # CONFIG_AR7 is not set |
13 | # CONFIG_BASLER_EXCITE is not set | ||
14 | # CONFIG_BCM47XX is not set | 13 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_BCM63XX is not set | ||
15 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
16 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
17 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
@@ -105,6 +105,8 @@ CONFIG_CPU_LOONGSON2E=y | |||
105 | # CONFIG_CPU_RM9000 is not set | 105 | # CONFIG_CPU_RM9000 is not set |
106 | # CONFIG_CPU_SB1 is not set | 106 | # CONFIG_CPU_SB1 is not set |
107 | # CONFIG_CPU_CAVIUM_OCTEON is not set | 107 | # CONFIG_CPU_CAVIUM_OCTEON is not set |
108 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
109 | CONFIG_SYS_SUPPORTS_ZBOOT_UART16550=y | ||
108 | CONFIG_CPU_LOONGSON2=y | 110 | CONFIG_CPU_LOONGSON2=y |
109 | CONFIG_SYS_HAS_CPU_LOONGSON2E=y | 111 | CONFIG_SYS_HAS_CPU_LOONGSON2E=y |
110 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 112 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
@@ -135,12 +137,16 @@ CONFIG_SYS_SUPPORTS_HIGHMEM=y | |||
135 | CONFIG_ARCH_FLATMEM_ENABLE=y | 137 | CONFIG_ARCH_FLATMEM_ENABLE=y |
136 | CONFIG_ARCH_POPULATES_NODE_MAP=y | 138 | CONFIG_ARCH_POPULATES_NODE_MAP=y |
137 | CONFIG_SELECT_MEMORY_MODEL=y | 139 | CONFIG_SELECT_MEMORY_MODEL=y |
138 | CONFIG_FLATMEM_MANUAL=y | 140 | # CONFIG_FLATMEM_MANUAL is not set |
139 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 141 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
140 | # CONFIG_SPARSEMEM_MANUAL is not set | 142 | CONFIG_SPARSEMEM_MANUAL=y |
141 | CONFIG_FLATMEM=y | 143 | CONFIG_SPARSEMEM=y |
142 | CONFIG_FLAT_NODE_MEM_MAP=y | 144 | CONFIG_HAVE_MEMORY_PRESENT=y |
143 | CONFIG_SPARSEMEM_STATIC=y | 145 | CONFIG_SPARSEMEM_STATIC=y |
146 | |||
147 | # | ||
148 | # Memory hotplug is currently incompatible with Software Suspend | ||
149 | # | ||
144 | CONFIG_PAGEFLAGS_EXTENDED=y | 150 | CONFIG_PAGEFLAGS_EXTENDED=y |
145 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 151 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
146 | CONFIG_PHYS_ADDR_T_64BIT=y | 152 | CONFIG_PHYS_ADDR_T_64BIT=y |
@@ -148,6 +154,7 @@ CONFIG_ZONE_DMA_FLAG=0 | |||
148 | CONFIG_VIRT_TO_BUS=y | 154 | CONFIG_VIRT_TO_BUS=y |
149 | CONFIG_HAVE_MLOCK=y | 155 | CONFIG_HAVE_MLOCK=y |
150 | CONFIG_HAVE_MLOCKED_PAGE_BIT=y | 156 | CONFIG_HAVE_MLOCKED_PAGE_BIT=y |
157 | # CONFIG_KSM is not set | ||
151 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | 158 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 |
152 | CONFIG_TICK_ONESHOT=y | 159 | CONFIG_TICK_ONESHOT=y |
153 | CONFIG_NO_HZ=y | 160 | CONFIG_NO_HZ=y |
@@ -180,6 +187,12 @@ CONFIG_BROKEN_ON_SMP=y | |||
180 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 187 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
181 | CONFIG_LOCALVERSION="-fuloong2e" | 188 | CONFIG_LOCALVERSION="-fuloong2e" |
182 | # CONFIG_LOCALVERSION_AUTO is not set | 189 | # CONFIG_LOCALVERSION_AUTO is not set |
190 | CONFIG_HAVE_KERNEL_GZIP=y | ||
191 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
192 | CONFIG_HAVE_KERNEL_LZMA=y | ||
193 | CONFIG_KERNEL_GZIP=y | ||
194 | # CONFIG_KERNEL_BZIP2 is not set | ||
195 | # CONFIG_KERNEL_LZMA is not set | ||
183 | CONFIG_SWAP=y | 196 | CONFIG_SWAP=y |
184 | CONFIG_SYSVIPC=y | 197 | CONFIG_SYSVIPC=y |
185 | CONFIG_SYSVIPC_SYSCTL=y | 198 | CONFIG_SYSVIPC_SYSCTL=y |
@@ -193,11 +206,12 @@ CONFIG_BSD_PROCESS_ACCT=y | |||
193 | # | 206 | # |
194 | # RCU Subsystem | 207 | # RCU Subsystem |
195 | # | 208 | # |
196 | CONFIG_CLASSIC_RCU=y | 209 | CONFIG_TREE_RCU=y |
197 | # CONFIG_TREE_RCU is not set | 210 | # CONFIG_TREE_PREEMPT_RCU is not set |
198 | # CONFIG_PREEMPT_RCU is not set | 211 | # CONFIG_RCU_TRACE is not set |
212 | CONFIG_RCU_FANOUT=64 | ||
213 | # CONFIG_RCU_FANOUT_EXACT is not set | ||
199 | # CONFIG_TREE_RCU_TRACE is not set | 214 | # CONFIG_TREE_RCU_TRACE is not set |
200 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
201 | CONFIG_IKCONFIG=y | 215 | CONFIG_IKCONFIG=y |
202 | CONFIG_IKCONFIG_PROC=y | 216 | CONFIG_IKCONFIG_PROC=y |
203 | CONFIG_LOG_BUF_SHIFT=14 | 217 | CONFIG_LOG_BUF_SHIFT=14 |
@@ -235,18 +249,16 @@ CONFIG_SHMEM=y | |||
235 | CONFIG_AIO=y | 249 | CONFIG_AIO=y |
236 | 250 | ||
237 | # | 251 | # |
238 | # Performance Counters | 252 | # Kernel Performance Events And Counters |
239 | # | 253 | # |
240 | CONFIG_VM_EVENT_COUNTERS=y | 254 | CONFIG_VM_EVENT_COUNTERS=y |
241 | CONFIG_PCI_QUIRKS=y | 255 | CONFIG_PCI_QUIRKS=y |
242 | # CONFIG_STRIP_ASM_SYMS is not set | ||
243 | # CONFIG_COMPAT_BRK is not set | 256 | # CONFIG_COMPAT_BRK is not set |
244 | CONFIG_SLAB=y | 257 | CONFIG_SLAB=y |
245 | # CONFIG_SLUB is not set | 258 | # CONFIG_SLUB is not set |
246 | # CONFIG_SLOB is not set | 259 | # CONFIG_SLOB is not set |
247 | CONFIG_PROFILING=y | 260 | CONFIG_PROFILING=y |
248 | CONFIG_TRACEPOINTS=y | 261 | CONFIG_TRACEPOINTS=y |
249 | CONFIG_MARKERS=y | ||
250 | CONFIG_OPROFILE=m | 262 | CONFIG_OPROFILE=m |
251 | CONFIG_HAVE_OPROFILE=y | 263 | CONFIG_HAVE_OPROFILE=y |
252 | CONFIG_HAVE_SYSCALL_WRAPPERS=y | 264 | CONFIG_HAVE_SYSCALL_WRAPPERS=y |
@@ -255,8 +267,8 @@ CONFIG_HAVE_SYSCALL_WRAPPERS=y | |||
255 | # GCOV-based kernel profiling | 267 | # GCOV-based kernel profiling |
256 | # | 268 | # |
257 | # CONFIG_GCOV_KERNEL is not set | 269 | # CONFIG_GCOV_KERNEL is not set |
258 | # CONFIG_SLOW_WORK is not set | 270 | CONFIG_SLOW_WORK=y |
259 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | 271 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y |
260 | CONFIG_SLABINFO=y | 272 | CONFIG_SLABINFO=y |
261 | CONFIG_RT_MUTEXES=y | 273 | CONFIG_RT_MUTEXES=y |
262 | CONFIG_BASE_SMALL=0 | 274 | CONFIG_BASE_SMALL=0 |
@@ -283,7 +295,7 @@ CONFIG_IOSCHED_CFQ=y | |||
283 | CONFIG_DEFAULT_CFQ=y | 295 | CONFIG_DEFAULT_CFQ=y |
284 | # CONFIG_DEFAULT_NOOP is not set | 296 | # CONFIG_DEFAULT_NOOP is not set |
285 | CONFIG_DEFAULT_IOSCHED="cfq" | 297 | CONFIG_DEFAULT_IOSCHED="cfq" |
286 | # CONFIG_FREEZER is not set | 298 | CONFIG_FREEZER=y |
287 | 299 | ||
288 | # | 300 | # |
289 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 301 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
@@ -321,9 +333,14 @@ CONFIG_ARCH_HIBERNATION_POSSIBLE=y | |||
321 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | 333 | CONFIG_ARCH_SUSPEND_POSSIBLE=y |
322 | CONFIG_PM=y | 334 | CONFIG_PM=y |
323 | # CONFIG_PM_DEBUG is not set | 335 | # CONFIG_PM_DEBUG is not set |
336 | CONFIG_PM_SLEEP=y | ||
324 | # CONFIG_SUSPEND is not set | 337 | # CONFIG_SUSPEND is not set |
325 | # CONFIG_HIBERNATION is not set | 338 | CONFIG_HIBERNATION_NVS=y |
339 | CONFIG_HIBERNATION=y | ||
340 | CONFIG_PM_STD_PARTITION="/dev/hda3" | ||
341 | # CONFIG_PM_RUNTIME is not set | ||
326 | CONFIG_NET=y | 342 | CONFIG_NET=y |
343 | CONFIG_COMPAT_NETLINK_MESSAGES=y | ||
327 | 344 | ||
328 | # | 345 | # |
329 | # Networking options | 346 | # Networking options |
@@ -442,6 +459,7 @@ CONFIG_IP_NF_ARPFILTER=m | |||
442 | CONFIG_IP_NF_ARP_MANGLE=m | 459 | CONFIG_IP_NF_ARP_MANGLE=m |
443 | # CONFIG_IP_DCCP is not set | 460 | # CONFIG_IP_DCCP is not set |
444 | # CONFIG_IP_SCTP is not set | 461 | # CONFIG_IP_SCTP is not set |
462 | # CONFIG_RDS is not set | ||
445 | # CONFIG_TIPC is not set | 463 | # CONFIG_TIPC is not set |
446 | # CONFIG_ATM is not set | 464 | # CONFIG_ATM is not set |
447 | # CONFIG_BRIDGE is not set | 465 | # CONFIG_BRIDGE is not set |
@@ -473,6 +491,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
473 | # CONFIG_AF_RXRPC is not set | 491 | # CONFIG_AF_RXRPC is not set |
474 | CONFIG_WIRELESS=y | 492 | CONFIG_WIRELESS=y |
475 | # CONFIG_CFG80211 is not set | 493 | # CONFIG_CFG80211 is not set |
494 | CONFIG_CFG80211_DEFAULT_PS_VALUE=0 | ||
476 | CONFIG_WIRELESS_OLD_REGULATORY=y | 495 | CONFIG_WIRELESS_OLD_REGULATORY=y |
477 | CONFIG_WIRELESS_EXT=y | 496 | CONFIG_WIRELESS_EXT=y |
478 | CONFIG_WIRELESS_EXT_SYSFS=y | 497 | CONFIG_WIRELESS_EXT_SYSFS=y |
@@ -481,7 +500,6 @@ CONFIG_WIRELESS_EXT_SYSFS=y | |||
481 | # | 500 | # |
482 | # CFG80211 needs to be enabled for MAC80211 | 501 | # CFG80211 needs to be enabled for MAC80211 |
483 | # | 502 | # |
484 | CONFIG_MAC80211_DEFAULT_PS_VALUE=0 | ||
485 | # CONFIG_WIMAX is not set | 503 | # CONFIG_WIMAX is not set |
486 | # CONFIG_RFKILL is not set | 504 | # CONFIG_RFKILL is not set |
487 | CONFIG_NET_9P=m | 505 | CONFIG_NET_9P=m |
@@ -495,6 +513,7 @@ CONFIG_NET_9P=m | |||
495 | # Generic Driver Options | 513 | # Generic Driver Options |
496 | # | 514 | # |
497 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | 515 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" |
516 | # CONFIG_DEVTMPFS is not set | ||
498 | CONFIG_STANDALONE=y | 517 | CONFIG_STANDALONE=y |
499 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 518 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
500 | CONFIG_FW_LOADER=m | 519 | CONFIG_FW_LOADER=m |
@@ -504,9 +523,9 @@ CONFIG_EXTRA_FIRMWARE="" | |||
504 | # CONFIG_CONNECTOR is not set | 523 | # CONFIG_CONNECTOR is not set |
505 | CONFIG_MTD=m | 524 | CONFIG_MTD=m |
506 | # CONFIG_MTD_DEBUG is not set | 525 | # CONFIG_MTD_DEBUG is not set |
526 | # CONFIG_MTD_TESTS is not set | ||
507 | # CONFIG_MTD_CONCAT is not set | 527 | # CONFIG_MTD_CONCAT is not set |
508 | # CONFIG_MTD_PARTITIONS is not set | 528 | # CONFIG_MTD_PARTITIONS is not set |
509 | # CONFIG_MTD_TESTS is not set | ||
510 | 529 | ||
511 | # | 530 | # |
512 | # User Modules And Translation Layers | 531 | # User Modules And Translation Layers |
@@ -820,6 +839,7 @@ CONFIG_8139TOO=y | |||
820 | # CONFIG_SUNDANCE is not set | 839 | # CONFIG_SUNDANCE is not set |
821 | # CONFIG_TLAN is not set | 840 | # CONFIG_TLAN is not set |
822 | # CONFIG_KS8842 is not set | 841 | # CONFIG_KS8842 is not set |
842 | # CONFIG_KS8851_MLL is not set | ||
823 | # CONFIG_VIA_RHINE is not set | 843 | # CONFIG_VIA_RHINE is not set |
824 | # CONFIG_SC92031 is not set | 844 | # CONFIG_SC92031 is not set |
825 | # CONFIG_ATL2 is not set | 845 | # CONFIG_ATL2 is not set |
@@ -867,10 +887,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y | |||
867 | # CONFIG_SFC is not set | 887 | # CONFIG_SFC is not set |
868 | # CONFIG_BE2NET is not set | 888 | # CONFIG_BE2NET is not set |
869 | # CONFIG_TR is not set | 889 | # CONFIG_TR is not set |
870 | 890 | CONFIG_WLAN=y | |
871 | # | ||
872 | # Wireless LAN | ||
873 | # | ||
874 | # CONFIG_WLAN_PRE80211 is not set | 891 | # CONFIG_WLAN_PRE80211 is not set |
875 | # CONFIG_WLAN_80211 is not set | 892 | # CONFIG_WLAN_80211 is not set |
876 | 893 | ||
@@ -886,6 +903,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y | |||
886 | # CONFIG_USB_PEGASUS is not set | 903 | # CONFIG_USB_PEGASUS is not set |
887 | # CONFIG_USB_RTL8150 is not set | 904 | # CONFIG_USB_RTL8150 is not set |
888 | # CONFIG_USB_USBNET is not set | 905 | # CONFIG_USB_USBNET is not set |
906 | # CONFIG_USB_CDC_PHONET is not set | ||
889 | # CONFIG_WAN is not set | 907 | # CONFIG_WAN is not set |
890 | # CONFIG_FDDI is not set | 908 | # CONFIG_FDDI is not set |
891 | # CONFIG_HIPPI is not set | 909 | # CONFIG_HIPPI is not set |
@@ -933,12 +951,16 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | |||
933 | # Input Device Drivers | 951 | # Input Device Drivers |
934 | # | 952 | # |
935 | CONFIG_INPUT_KEYBOARD=y | 953 | CONFIG_INPUT_KEYBOARD=y |
954 | # CONFIG_KEYBOARD_ADP5588 is not set | ||
936 | CONFIG_KEYBOARD_ATKBD=y | 955 | CONFIG_KEYBOARD_ATKBD=y |
937 | # CONFIG_KEYBOARD_SUNKBD is not set | 956 | # CONFIG_QT2160 is not set |
938 | # CONFIG_KEYBOARD_LKKBD is not set | 957 | # CONFIG_KEYBOARD_LKKBD is not set |
939 | # CONFIG_KEYBOARD_XTKBD is not set | 958 | # CONFIG_KEYBOARD_MAX7359 is not set |
940 | # CONFIG_KEYBOARD_NEWTON is not set | 959 | # CONFIG_KEYBOARD_NEWTON is not set |
960 | # CONFIG_KEYBOARD_OPENCORES is not set | ||
941 | # CONFIG_KEYBOARD_STOWAWAY is not set | 961 | # CONFIG_KEYBOARD_STOWAWAY is not set |
962 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
963 | # CONFIG_KEYBOARD_XTKBD is not set | ||
942 | CONFIG_INPUT_MOUSE=y | 964 | CONFIG_INPUT_MOUSE=y |
943 | CONFIG_MOUSE_PS2=y | 965 | CONFIG_MOUSE_PS2=y |
944 | CONFIG_MOUSE_PS2_ALPS=y | 966 | CONFIG_MOUSE_PS2_ALPS=y |
@@ -946,6 +968,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y | |||
946 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 968 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
947 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 969 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
948 | # CONFIG_MOUSE_PS2_ELANTECH is not set | 970 | # CONFIG_MOUSE_PS2_ELANTECH is not set |
971 | # CONFIG_MOUSE_PS2_SENTELIC is not set | ||
949 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 972 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
950 | CONFIG_MOUSE_SERIAL=y | 973 | CONFIG_MOUSE_SERIAL=y |
951 | # CONFIG_MOUSE_APPLETOUCH is not set | 974 | # CONFIG_MOUSE_APPLETOUCH is not set |
@@ -1015,6 +1038,7 @@ CONFIG_RTC=y | |||
1015 | CONFIG_DEVPORT=y | 1038 | CONFIG_DEVPORT=y |
1016 | CONFIG_I2C=m | 1039 | CONFIG_I2C=m |
1017 | CONFIG_I2C_BOARDINFO=y | 1040 | CONFIG_I2C_BOARDINFO=y |
1041 | CONFIG_I2C_COMPAT=y | ||
1018 | CONFIG_I2C_CHARDEV=m | 1042 | CONFIG_I2C_CHARDEV=m |
1019 | CONFIG_I2C_HELPER_AUTO=y | 1043 | CONFIG_I2C_HELPER_AUTO=y |
1020 | 1044 | ||
@@ -1070,9 +1094,6 @@ CONFIG_I2C_VIAPRO=m | |||
1070 | # Miscellaneous I2C Chip support | 1094 | # Miscellaneous I2C Chip support |
1071 | # | 1095 | # |
1072 | # CONFIG_DS1682 is not set | 1096 | # CONFIG_DS1682 is not set |
1073 | # CONFIG_SENSORS_PCF8574 is not set | ||
1074 | # CONFIG_PCF8575 is not set | ||
1075 | # CONFIG_SENSORS_PCA9539 is not set | ||
1076 | # CONFIG_SENSORS_TSL2550 is not set | 1097 | # CONFIG_SENSORS_TSL2550 is not set |
1077 | # CONFIG_I2C_DEBUG_CORE is not set | 1098 | # CONFIG_I2C_DEBUG_CORE is not set |
1078 | # CONFIG_I2C_DEBUG_ALGO is not set | 1099 | # CONFIG_I2C_DEBUG_ALGO is not set |
@@ -1088,7 +1109,6 @@ CONFIG_I2C_VIAPRO=m | |||
1088 | # CONFIG_POWER_SUPPLY is not set | 1109 | # CONFIG_POWER_SUPPLY is not set |
1089 | # CONFIG_HWMON is not set | 1110 | # CONFIG_HWMON is not set |
1090 | # CONFIG_THERMAL is not set | 1111 | # CONFIG_THERMAL is not set |
1091 | # CONFIG_THERMAL_HWMON is not set | ||
1092 | # CONFIG_WATCHDOG is not set | 1112 | # CONFIG_WATCHDOG is not set |
1093 | CONFIG_SSB_POSSIBLE=y | 1113 | CONFIG_SSB_POSSIBLE=y |
1094 | 1114 | ||
@@ -1105,6 +1125,7 @@ CONFIG_SSB_POSSIBLE=y | |||
1105 | # CONFIG_HTC_PASIC3 is not set | 1125 | # CONFIG_HTC_PASIC3 is not set |
1106 | # CONFIG_MFD_TMIO is not set | 1126 | # CONFIG_MFD_TMIO is not set |
1107 | # CONFIG_MFD_WM8400 is not set | 1127 | # CONFIG_MFD_WM8400 is not set |
1128 | # CONFIG_MFD_WM831X is not set | ||
1108 | # CONFIG_MFD_WM8350_I2C is not set | 1129 | # CONFIG_MFD_WM8350_I2C is not set |
1109 | # CONFIG_MFD_PCF50633 is not set | 1130 | # CONFIG_MFD_PCF50633 is not set |
1110 | # CONFIG_AB3100_CORE is not set | 1131 | # CONFIG_AB3100_CORE is not set |
@@ -1114,6 +1135,7 @@ CONFIG_SSB_POSSIBLE=y | |||
1114 | # | 1135 | # |
1115 | # Graphics support | 1136 | # Graphics support |
1116 | # | 1137 | # |
1138 | CONFIG_VGA_ARB=y | ||
1117 | # CONFIG_DRM is not set | 1139 | # CONFIG_DRM is not set |
1118 | # CONFIG_VGASTATE is not set | 1140 | # CONFIG_VGASTATE is not set |
1119 | CONFIG_VIDEO_OUTPUT_CONTROL=m | 1141 | CONFIG_VIDEO_OUTPUT_CONTROL=m |
@@ -1198,6 +1220,7 @@ CONFIG_FONT_8x16=y | |||
1198 | # CONFIG_LOGO is not set | 1220 | # CONFIG_LOGO is not set |
1199 | CONFIG_SOUND=y | 1221 | CONFIG_SOUND=y |
1200 | CONFIG_SOUND_OSS_CORE=y | 1222 | CONFIG_SOUND_OSS_CORE=y |
1223 | CONFIG_SOUND_OSS_CORE_PRECLAIM=y | ||
1201 | CONFIG_SND=m | 1224 | CONFIG_SND=m |
1202 | CONFIG_SND_TIMER=m | 1225 | CONFIG_SND_TIMER=m |
1203 | CONFIG_SND_PCM=m | 1226 | CONFIG_SND_PCM=m |
@@ -1304,7 +1327,6 @@ CONFIG_SND_USB=y | |||
1304 | CONFIG_AC97_BUS=m | 1327 | CONFIG_AC97_BUS=m |
1305 | CONFIG_HID_SUPPORT=y | 1328 | CONFIG_HID_SUPPORT=y |
1306 | CONFIG_HID=y | 1329 | CONFIG_HID=y |
1307 | # CONFIG_HID_DEBUG is not set | ||
1308 | CONFIG_HIDRAW=y | 1330 | CONFIG_HIDRAW=y |
1309 | 1331 | ||
1310 | # | 1332 | # |
@@ -1356,6 +1378,7 @@ CONFIG_USB_EHCI_TT_NEWSCHED=y | |||
1356 | # CONFIG_USB_OXU210HP_HCD is not set | 1378 | # CONFIG_USB_OXU210HP_HCD is not set |
1357 | # CONFIG_USB_ISP116X_HCD is not set | 1379 | # CONFIG_USB_ISP116X_HCD is not set |
1358 | CONFIG_USB_ISP1760_HCD=m | 1380 | CONFIG_USB_ISP1760_HCD=m |
1381 | # CONFIG_USB_ISP1362_HCD is not set | ||
1359 | CONFIG_USB_OHCI_HCD=y | 1382 | CONFIG_USB_OHCI_HCD=y |
1360 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | 1383 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
1361 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | 1384 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set |
@@ -1453,6 +1476,7 @@ CONFIG_UIO_CIF=m | |||
1453 | # CONFIG_UIO_SMX is not set | 1476 | # CONFIG_UIO_SMX is not set |
1454 | # CONFIG_UIO_AEC is not set | 1477 | # CONFIG_UIO_AEC is not set |
1455 | # CONFIG_UIO_SERCOS3 is not set | 1478 | # CONFIG_UIO_SERCOS3 is not set |
1479 | # CONFIG_UIO_PCI_GENERIC is not set | ||
1456 | 1480 | ||
1457 | # | 1481 | # |
1458 | # TI VLYNQ | 1482 | # TI VLYNQ |
@@ -1469,10 +1493,10 @@ CONFIG_EXT3_FS=y | |||
1469 | # CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set | 1493 | # CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set |
1470 | # CONFIG_EXT3_FS_XATTR is not set | 1494 | # CONFIG_EXT3_FS_XATTR is not set |
1471 | CONFIG_EXT4_FS=m | 1495 | CONFIG_EXT4_FS=m |
1472 | CONFIG_EXT4DEV_COMPAT=y | ||
1473 | CONFIG_EXT4_FS_XATTR=y | 1496 | CONFIG_EXT4_FS_XATTR=y |
1474 | CONFIG_EXT4_FS_POSIX_ACL=y | 1497 | CONFIG_EXT4_FS_POSIX_ACL=y |
1475 | CONFIG_EXT4_FS_SECURITY=y | 1498 | CONFIG_EXT4_FS_SECURITY=y |
1499 | # CONFIG_EXT4_DEBUG is not set | ||
1476 | CONFIG_FS_XIP=y | 1500 | CONFIG_FS_XIP=y |
1477 | CONFIG_JBD=y | 1501 | CONFIG_JBD=y |
1478 | # CONFIG_JBD_DEBUG is not set | 1502 | # CONFIG_JBD_DEBUG is not set |
@@ -1489,6 +1513,7 @@ CONFIG_FS_POSIX_ACL=y | |||
1489 | # CONFIG_GFS2_FS is not set | 1513 | # CONFIG_GFS2_FS is not set |
1490 | # CONFIG_OCFS2_FS is not set | 1514 | # CONFIG_OCFS2_FS is not set |
1491 | # CONFIG_BTRFS_FS is not set | 1515 | # CONFIG_BTRFS_FS is not set |
1516 | # CONFIG_NILFS2_FS is not set | ||
1492 | CONFIG_FILE_LOCKING=y | 1517 | CONFIG_FILE_LOCKING=y |
1493 | CONFIG_FSNOTIFY=y | 1518 | CONFIG_FSNOTIFY=y |
1494 | CONFIG_DNOTIFY=y | 1519 | CONFIG_DNOTIFY=y |
@@ -1557,7 +1582,6 @@ CONFIG_OMFS_FS=m | |||
1557 | # CONFIG_ROMFS_FS is not set | 1582 | # CONFIG_ROMFS_FS is not set |
1558 | # CONFIG_SYSV_FS is not set | 1583 | # CONFIG_SYSV_FS is not set |
1559 | # CONFIG_UFS_FS is not set | 1584 | # CONFIG_UFS_FS is not set |
1560 | # CONFIG_NILFS2_FS is not set | ||
1561 | CONFIG_NETWORK_FILESYSTEMS=y | 1585 | CONFIG_NETWORK_FILESYSTEMS=y |
1562 | CONFIG_NFS_FS=m | 1586 | CONFIG_NFS_FS=m |
1563 | CONFIG_NFS_V3=y | 1587 | CONFIG_NFS_V3=y |
@@ -1666,6 +1690,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y | |||
1666 | # CONFIG_ENABLE_MUST_CHECK is not set | 1690 | # CONFIG_ENABLE_MUST_CHECK is not set |
1667 | CONFIG_FRAME_WARN=2048 | 1691 | CONFIG_FRAME_WARN=2048 |
1668 | # CONFIG_MAGIC_SYSRQ is not set | 1692 | # CONFIG_MAGIC_SYSRQ is not set |
1693 | # CONFIG_STRIP_ASM_SYMS is not set | ||
1669 | # CONFIG_UNUSED_SYMBOLS is not set | 1694 | # CONFIG_UNUSED_SYMBOLS is not set |
1670 | CONFIG_DEBUG_FS=y | 1695 | CONFIG_DEBUG_FS=y |
1671 | # CONFIG_HEADERS_CHECK is not set | 1696 | # CONFIG_HEADERS_CHECK is not set |
@@ -1678,13 +1703,14 @@ CONFIG_NOP_TRACER=y | |||
1678 | CONFIG_RING_BUFFER=y | 1703 | CONFIG_RING_BUFFER=y |
1679 | CONFIG_EVENT_TRACING=y | 1704 | CONFIG_EVENT_TRACING=y |
1680 | CONFIG_CONTEXT_SWITCH_TRACER=y | 1705 | CONFIG_CONTEXT_SWITCH_TRACER=y |
1706 | CONFIG_RING_BUFFER_ALLOW_SWAP=y | ||
1681 | CONFIG_TRACING=y | 1707 | CONFIG_TRACING=y |
1682 | CONFIG_TRACING_SUPPORT=y | 1708 | CONFIG_TRACING_SUPPORT=y |
1683 | # CONFIG_FTRACE is not set | 1709 | # CONFIG_FTRACE is not set |
1684 | # CONFIG_DYNAMIC_DEBUG is not set | 1710 | # CONFIG_DYNAMIC_DEBUG is not set |
1685 | # CONFIG_SAMPLES is not set | 1711 | # CONFIG_SAMPLES is not set |
1686 | CONFIG_HAVE_ARCH_KGDB=y | 1712 | CONFIG_HAVE_ARCH_KGDB=y |
1687 | CONFIG_CMDLINE="" | 1713 | # CONFIG_CMDLINE_BOOL is not set |
1688 | 1714 | ||
1689 | # | 1715 | # |
1690 | # Security options | 1716 | # Security options |
@@ -1742,11 +1768,13 @@ CONFIG_CRYPTO_XTS=m | |||
1742 | # | 1768 | # |
1743 | CONFIG_CRYPTO_HMAC=y | 1769 | CONFIG_CRYPTO_HMAC=y |
1744 | # CONFIG_CRYPTO_XCBC is not set | 1770 | # CONFIG_CRYPTO_XCBC is not set |
1771 | # CONFIG_CRYPTO_VMAC is not set | ||
1745 | 1772 | ||
1746 | # | 1773 | # |
1747 | # Digest | 1774 | # Digest |
1748 | # | 1775 | # |
1749 | # CONFIG_CRYPTO_CRC32C is not set | 1776 | # CONFIG_CRYPTO_CRC32C is not set |
1777 | CONFIG_CRYPTO_GHASH=m | ||
1750 | # CONFIG_CRYPTO_MD4 is not set | 1778 | # CONFIG_CRYPTO_MD4 is not set |
1751 | CONFIG_CRYPTO_MD5=m | 1779 | CONFIG_CRYPTO_MD5=m |
1752 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1780 | # CONFIG_CRYPTO_MICHAEL_MIC is not set |
diff --git a/arch/mips/configs/ip22_defconfig b/arch/mips/configs/ip22_defconfig index f14d38ba6034..222d7eca2fe4 100644 --- a/arch/mips/configs/ip22_defconfig +++ b/arch/mips/configs/ip22_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -1188,7 +1187,7 @@ CONFIG_DEBUG_MEMORY_INIT=y | |||
1188 | CONFIG_DYNAMIC_PRINTK_DEBUG=y | 1187 | CONFIG_DYNAMIC_PRINTK_DEBUG=y |
1189 | # CONFIG_SAMPLES is not set | 1188 | # CONFIG_SAMPLES is not set |
1190 | CONFIG_HAVE_ARCH_KGDB=y | 1189 | CONFIG_HAVE_ARCH_KGDB=y |
1191 | CONFIG_CMDLINE="" | 1190 | # CONFIG_CMDLINE_BOOL is not set |
1192 | 1191 | ||
1193 | # | 1192 | # |
1194 | # Security options | 1193 | # Security options |
diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig index 1fc73aa7b509..84b6503f10b9 100644 --- a/arch/mips/configs/ip27_defconfig +++ b/arch/mips/configs/ip27_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.23-rc2 | 3 | # Linux kernel version: 2.6.33-rc6 |
4 | # Tue Aug 7 13:04:24 2007 | 4 | # Wed Feb 3 18:12:31 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
@@ -9,21 +9,28 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | 12 | # CONFIG_AR7 is not set |
13 | # CONFIG_BCM47XX is not set | ||
14 | # CONFIG_BCM63XX is not set | ||
13 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
14 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
15 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
16 | # CONFIG_LEMOTE_FULONG is not set | 18 | # CONFIG_LASAT is not set |
19 | # CONFIG_MACH_LOONGSON is not set | ||
17 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
18 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
19 | # CONFIG_MARKEINS is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
20 | # CONFIG_MACH_VR41XX is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
21 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
22 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
23 | # CONFIG_PMC_MSP is not set | 28 | # CONFIG_PMC_MSP is not set |
24 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
30 | # CONFIG_POWERTV is not set | ||
25 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
26 | CONFIG_SGI_IP27=y | 32 | CONFIG_SGI_IP27=y |
33 | # CONFIG_SGI_IP28 is not set | ||
27 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
28 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
29 | # CONFIG_SIBYTE_CARMEL is not set | 36 | # CONFIG_SIBYTE_CARMEL is not set |
@@ -34,32 +41,39 @@ CONFIG_SGI_IP27=y | |||
34 | # CONFIG_SIBYTE_SENTOSA is not set | 41 | # CONFIG_SIBYTE_SENTOSA is not set |
35 | # CONFIG_SIBYTE_BIGSUR is not set | 42 | # CONFIG_SIBYTE_BIGSUR is not set |
36 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
37 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
38 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
39 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
40 | # CONFIG_WR_PPMC is not set | 47 | # CONFIG_WR_PPMC is not set |
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
41 | CONFIG_SGI_SN_M_MODE=y | 51 | CONFIG_SGI_SN_M_MODE=y |
42 | # CONFIG_SGI_SN_N_MODE is not set | 52 | # CONFIG_SGI_SN_N_MODE is not set |
43 | # CONFIG_MAPPED_KERNEL is not set | 53 | # CONFIG_MAPPED_KERNEL is not set |
44 | # CONFIG_REPLICATE_KTEXT is not set | 54 | # CONFIG_REPLICATE_KTEXT is not set |
45 | # CONFIG_REPLICATE_EXHANDLERS is not set | 55 | # CONFIG_REPLICATE_EXHANDLERS is not set |
56 | CONFIG_LOONGSON_UART_BASE=y | ||
46 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 57 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
47 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 58 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
48 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 59 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
60 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
49 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 61 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
50 | CONFIG_GENERIC_HWEIGHT=y | 62 | CONFIG_GENERIC_HWEIGHT=y |
51 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 63 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
64 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
52 | CONFIG_GENERIC_TIME=y | 65 | CONFIG_GENERIC_TIME=y |
53 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 66 | CONFIG_GENERIC_CMOS_UPDATE=y |
67 | CONFIG_SCHED_OMIT_FRAME_POINTER=y | ||
54 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | 68 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y |
55 | CONFIG_ARC=y | 69 | CONFIG_ARC=y |
56 | CONFIG_DMA_COHERENT=y | 70 | CONFIG_DMA_COHERENT=y |
57 | CONFIG_EARLY_PRINTK=y | ||
58 | CONFIG_SYS_HAS_EARLY_PRINTK=y | 71 | CONFIG_SYS_HAS_EARLY_PRINTK=y |
59 | # CONFIG_NO_IOPORT is not set | 72 | # CONFIG_NO_IOPORT is not set |
60 | CONFIG_CPU_BIG_ENDIAN=y | 73 | CONFIG_CPU_BIG_ENDIAN=y |
61 | # CONFIG_CPU_LITTLE_ENDIAN is not set | 74 | # CONFIG_CPU_LITTLE_ENDIAN is not set |
62 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y | 75 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y |
76 | CONFIG_DEFAULT_SGI_PARTITION=y | ||
63 | CONFIG_MIPS_L1_CACHE_SHIFT=7 | 77 | CONFIG_MIPS_L1_CACHE_SHIFT=7 |
64 | CONFIG_ARC64=y | 78 | CONFIG_ARC64=y |
65 | CONFIG_BOOT_ELF64=y | 79 | CONFIG_BOOT_ELF64=y |
@@ -67,7 +81,8 @@ CONFIG_BOOT_ELF64=y | |||
67 | # | 81 | # |
68 | # CPU selection | 82 | # CPU selection |
69 | # | 83 | # |
70 | # CONFIG_CPU_LOONGSON2 is not set | 84 | # CONFIG_CPU_LOONGSON2E is not set |
85 | # CONFIG_CPU_LOONGSON2F is not set | ||
71 | # CONFIG_CPU_MIPS32_R1 is not set | 86 | # CONFIG_CPU_MIPS32_R1 is not set |
72 | # CONFIG_CPU_MIPS32_R2 is not set | 87 | # CONFIG_CPU_MIPS32_R2 is not set |
73 | # CONFIG_CPU_MIPS64_R1 is not set | 88 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -80,6 +95,7 @@ CONFIG_BOOT_ELF64=y | |||
80 | # CONFIG_CPU_TX49XX is not set | 95 | # CONFIG_CPU_TX49XX is not set |
81 | # CONFIG_CPU_R5000 is not set | 96 | # CONFIG_CPU_R5000 is not set |
82 | # CONFIG_CPU_R5432 is not set | 97 | # CONFIG_CPU_R5432 is not set |
98 | # CONFIG_CPU_R5500 is not set | ||
83 | # CONFIG_CPU_R6000 is not set | 99 | # CONFIG_CPU_R6000 is not set |
84 | # CONFIG_CPU_NEVADA is not set | 100 | # CONFIG_CPU_NEVADA is not set |
85 | # CONFIG_CPU_R8000 is not set | 101 | # CONFIG_CPU_R8000 is not set |
@@ -87,6 +103,7 @@ CONFIG_CPU_R10000=y | |||
87 | # CONFIG_CPU_RM7000 is not set | 103 | # CONFIG_CPU_RM7000 is not set |
88 | # CONFIG_CPU_RM9000 is not set | 104 | # CONFIG_CPU_RM9000 is not set |
89 | # CONFIG_CPU_SB1 is not set | 105 | # CONFIG_CPU_SB1 is not set |
106 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
90 | CONFIG_SYS_HAS_CPU_R10000=y | 107 | CONFIG_SYS_HAS_CPU_R10000=y |
91 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y | 108 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y |
92 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 109 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
@@ -100,6 +117,7 @@ CONFIG_64BIT=y | |||
100 | CONFIG_PAGE_SIZE_4KB=y | 117 | CONFIG_PAGE_SIZE_4KB=y |
101 | # CONFIG_PAGE_SIZE_8KB is not set | 118 | # CONFIG_PAGE_SIZE_8KB is not set |
102 | # CONFIG_PAGE_SIZE_16KB is not set | 119 | # CONFIG_PAGE_SIZE_16KB is not set |
120 | # CONFIG_PAGE_SIZE_32KB is not set | ||
103 | # CONFIG_PAGE_SIZE_64KB is not set | 121 | # CONFIG_PAGE_SIZE_64KB is not set |
104 | CONFIG_CPU_HAS_PREFETCH=y | 122 | CONFIG_CPU_HAS_PREFETCH=y |
105 | CONFIG_MIPS_MT_DISABLED=y | 123 | CONFIG_MIPS_MT_DISABLED=y |
@@ -111,6 +129,7 @@ CONFIG_GENERIC_IRQ_PROBE=y | |||
111 | CONFIG_IRQ_PER_CPU=y | 129 | CONFIG_IRQ_PER_CPU=y |
112 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 130 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
113 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y | 131 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y |
132 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
114 | CONFIG_NUMA=y | 133 | CONFIG_NUMA=y |
115 | CONFIG_SYS_SUPPORTS_NUMA=y | 134 | CONFIG_SYS_SUPPORTS_NUMA=y |
116 | CONFIG_NODES_SHIFT=6 | 135 | CONFIG_NODES_SHIFT=6 |
@@ -121,16 +140,22 @@ CONFIG_DISCONTIGMEM_MANUAL=y | |||
121 | CONFIG_DISCONTIGMEM=y | 140 | CONFIG_DISCONTIGMEM=y |
122 | CONFIG_FLAT_NODE_MEM_MAP=y | 141 | CONFIG_FLAT_NODE_MEM_MAP=y |
123 | CONFIG_NEED_MULTIPLE_NODES=y | 142 | CONFIG_NEED_MULTIPLE_NODES=y |
124 | # CONFIG_SPARSEMEM_STATIC is not set | 143 | CONFIG_PAGEFLAGS_EXTENDED=y |
125 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 144 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
126 | CONFIG_MIGRATION=y | 145 | CONFIG_MIGRATION=y |
127 | CONFIG_RESOURCES_64BIT=y | 146 | CONFIG_PHYS_ADDR_T_64BIT=y |
128 | CONFIG_ZONE_DMA_FLAG=0 | 147 | CONFIG_ZONE_DMA_FLAG=0 |
129 | CONFIG_VIRT_TO_BUS=y | 148 | CONFIG_VIRT_TO_BUS=y |
149 | # CONFIG_KSM is not set | ||
150 | CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 | ||
130 | CONFIG_SMP=y | 151 | CONFIG_SMP=y |
131 | CONFIG_SYS_SUPPORTS_SMP=y | 152 | CONFIG_SYS_SUPPORTS_SMP=y |
132 | CONFIG_NR_CPUS_DEFAULT_64=y | 153 | CONFIG_NR_CPUS_DEFAULT_64=y |
133 | CONFIG_NR_CPUS=64 | 154 | CONFIG_NR_CPUS=64 |
155 | CONFIG_TICK_ONESHOT=y | ||
156 | CONFIG_NO_HZ=y | ||
157 | CONFIG_HIGH_RES_TIMERS=y | ||
158 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
134 | # CONFIG_HZ_48 is not set | 159 | # CONFIG_HZ_48 is not set |
135 | # CONFIG_HZ_100 is not set | 160 | # CONFIG_HZ_100 is not set |
136 | # CONFIG_HZ_128 is not set | 161 | # CONFIG_HZ_128 is not set |
@@ -143,13 +168,13 @@ CONFIG_HZ=1000 | |||
143 | CONFIG_PREEMPT_NONE=y | 168 | CONFIG_PREEMPT_NONE=y |
144 | # CONFIG_PREEMPT_VOLUNTARY is not set | 169 | # CONFIG_PREEMPT_VOLUNTARY is not set |
145 | # CONFIG_PREEMPT is not set | 170 | # CONFIG_PREEMPT is not set |
146 | CONFIG_PREEMPT_BKL=y | ||
147 | # CONFIG_MIPS_INSANE_LARGE is not set | 171 | # CONFIG_MIPS_INSANE_LARGE is not set |
148 | # CONFIG_KEXEC is not set | 172 | # CONFIG_KEXEC is not set |
149 | CONFIG_SECCOMP=y | 173 | CONFIG_SECCOMP=y |
150 | CONFIG_LOCKDEP_SUPPORT=y | 174 | CONFIG_LOCKDEP_SUPPORT=y |
151 | CONFIG_STACKTRACE_SUPPORT=y | 175 | CONFIG_STACKTRACE_SUPPORT=y |
152 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 176 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
177 | CONFIG_CONSTRUCTORS=y | ||
153 | 178 | ||
154 | # | 179 | # |
155 | # General setup | 180 | # General setup |
@@ -163,20 +188,41 @@ CONFIG_SWAP=y | |||
163 | CONFIG_SYSVIPC=y | 188 | CONFIG_SYSVIPC=y |
164 | CONFIG_SYSVIPC_SYSCTL=y | 189 | CONFIG_SYSVIPC_SYSCTL=y |
165 | CONFIG_POSIX_MQUEUE=y | 190 | CONFIG_POSIX_MQUEUE=y |
191 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
166 | # CONFIG_BSD_PROCESS_ACCT is not set | 192 | # CONFIG_BSD_PROCESS_ACCT is not set |
167 | # CONFIG_TASKSTATS is not set | 193 | # CONFIG_TASKSTATS is not set |
168 | # CONFIG_USER_NS is not set | ||
169 | # CONFIG_AUDIT is not set | 194 | # CONFIG_AUDIT is not set |
195 | |||
196 | # | ||
197 | # RCU Subsystem | ||
198 | # | ||
199 | CONFIG_TREE_RCU=y | ||
200 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
201 | # CONFIG_TINY_RCU is not set | ||
202 | # CONFIG_RCU_TRACE is not set | ||
203 | CONFIG_RCU_FANOUT=64 | ||
204 | # CONFIG_RCU_FANOUT_EXACT is not set | ||
205 | # CONFIG_TREE_RCU_TRACE is not set | ||
170 | CONFIG_IKCONFIG=y | 206 | CONFIG_IKCONFIG=y |
171 | CONFIG_IKCONFIG_PROC=y | 207 | CONFIG_IKCONFIG_PROC=y |
172 | CONFIG_LOG_BUF_SHIFT=15 | 208 | CONFIG_LOG_BUF_SHIFT=15 |
209 | # CONFIG_GROUP_SCHED is not set | ||
173 | CONFIG_CGROUPS=y | 210 | CONFIG_CGROUPS=y |
211 | # CONFIG_CGROUP_DEBUG is not set | ||
212 | # CONFIG_CGROUP_NS is not set | ||
213 | # CONFIG_CGROUP_FREEZER is not set | ||
214 | # CONFIG_CGROUP_DEVICE is not set | ||
174 | CONFIG_CPUSETS=y | 215 | CONFIG_CPUSETS=y |
175 | CONFIG_SYSFS_DEPRECATED=y | 216 | CONFIG_PROC_PID_CPUSET=y |
217 | # CONFIG_CGROUP_CPUACCT is not set | ||
218 | # CONFIG_RESOURCE_COUNTERS is not set | ||
219 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
176 | CONFIG_RELAY=y | 220 | CONFIG_RELAY=y |
221 | # CONFIG_NAMESPACES is not set | ||
177 | # CONFIG_BLK_DEV_INITRD is not set | 222 | # CONFIG_BLK_DEV_INITRD is not set |
178 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 223 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
179 | CONFIG_SYSCTL=y | 224 | CONFIG_SYSCTL=y |
225 | CONFIG_ANON_INODES=y | ||
180 | CONFIG_EMBEDDED=y | 226 | CONFIG_EMBEDDED=y |
181 | CONFIG_SYSCTL_SYSCALL=y | 227 | CONFIG_SYSCTL_SYSCALL=y |
182 | CONFIG_KALLSYMS=y | 228 | CONFIG_KALLSYMS=y |
@@ -185,44 +231,92 @@ CONFIG_HOTPLUG=y | |||
185 | CONFIG_PRINTK=y | 231 | CONFIG_PRINTK=y |
186 | CONFIG_BUG=y | 232 | CONFIG_BUG=y |
187 | CONFIG_ELF_CORE=y | 233 | CONFIG_ELF_CORE=y |
234 | # CONFIG_PCSPKR_PLATFORM is not set | ||
188 | CONFIG_BASE_FULL=y | 235 | CONFIG_BASE_FULL=y |
189 | CONFIG_FUTEX=y | 236 | CONFIG_FUTEX=y |
190 | CONFIG_ANON_INODES=y | ||
191 | CONFIG_EPOLL=y | 237 | CONFIG_EPOLL=y |
192 | CONFIG_SIGNALFD=y | 238 | CONFIG_SIGNALFD=y |
193 | CONFIG_TIMERFD=y | 239 | CONFIG_TIMERFD=y |
194 | CONFIG_EVENTFD=y | 240 | CONFIG_EVENTFD=y |
195 | CONFIG_SHMEM=y | 241 | CONFIG_SHMEM=y |
242 | CONFIG_AIO=y | ||
243 | |||
244 | # | ||
245 | # Kernel Performance Events And Counters | ||
246 | # | ||
196 | CONFIG_VM_EVENT_COUNTERS=y | 247 | CONFIG_VM_EVENT_COUNTERS=y |
248 | CONFIG_PCI_QUIRKS=y | ||
249 | CONFIG_COMPAT_BRK=y | ||
197 | CONFIG_SLAB=y | 250 | CONFIG_SLAB=y |
198 | # CONFIG_SLUB is not set | 251 | # CONFIG_SLUB is not set |
199 | # CONFIG_SLOB is not set | 252 | # CONFIG_SLOB is not set |
253 | # CONFIG_PROFILING is not set | ||
254 | CONFIG_HAVE_OPROFILE=y | ||
255 | CONFIG_HAVE_SYSCALL_WRAPPERS=y | ||
256 | CONFIG_USE_GENERIC_SMP_HELPERS=y | ||
257 | |||
258 | # | ||
259 | # GCOV-based kernel profiling | ||
260 | # | ||
261 | CONFIG_SLOW_WORK=y | ||
262 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
263 | CONFIG_SLABINFO=y | ||
200 | CONFIG_RT_MUTEXES=y | 264 | CONFIG_RT_MUTEXES=y |
201 | # CONFIG_TINY_SHMEM is not set | ||
202 | CONFIG_BASE_SMALL=0 | 265 | CONFIG_BASE_SMALL=0 |
203 | CONFIG_MODULES=y | 266 | CONFIG_MODULES=y |
267 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
204 | CONFIG_MODULE_UNLOAD=y | 268 | CONFIG_MODULE_UNLOAD=y |
205 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 269 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
206 | # CONFIG_MODVERSIONS is not set | 270 | # CONFIG_MODVERSIONS is not set |
207 | CONFIG_MODULE_SRCVERSION_ALL=y | 271 | CONFIG_MODULE_SRCVERSION_ALL=y |
208 | CONFIG_KMOD=y | ||
209 | CONFIG_STOP_MACHINE=y | 272 | CONFIG_STOP_MACHINE=y |
210 | CONFIG_BLOCK=y | 273 | CONFIG_BLOCK=y |
211 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
212 | # CONFIG_BLK_DEV_BSG is not set | 274 | # CONFIG_BLK_DEV_BSG is not set |
275 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
276 | # CONFIG_BLK_CGROUP is not set | ||
277 | CONFIG_BLOCK_COMPAT=y | ||
213 | 278 | ||
214 | # | 279 | # |
215 | # IO Schedulers | 280 | # IO Schedulers |
216 | # | 281 | # |
217 | CONFIG_IOSCHED_NOOP=y | 282 | CONFIG_IOSCHED_NOOP=y |
218 | CONFIG_IOSCHED_AS=y | ||
219 | CONFIG_IOSCHED_DEADLINE=y | 283 | CONFIG_IOSCHED_DEADLINE=y |
220 | CONFIG_IOSCHED_CFQ=y | 284 | CONFIG_IOSCHED_CFQ=y |
221 | CONFIG_DEFAULT_AS=y | 285 | # CONFIG_CFQ_GROUP_IOSCHED is not set |
222 | # CONFIG_DEFAULT_DEADLINE is not set | 286 | # CONFIG_DEFAULT_DEADLINE is not set |
223 | # CONFIG_DEFAULT_CFQ is not set | 287 | CONFIG_DEFAULT_CFQ=y |
224 | # CONFIG_DEFAULT_NOOP is not set | 288 | # CONFIG_DEFAULT_NOOP is not set |
225 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 289 | CONFIG_DEFAULT_IOSCHED="cfq" |
290 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
291 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
293 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
294 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
295 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
296 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
297 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
298 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
299 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
300 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
301 | # CONFIG_INLINE_READ_LOCK is not set | ||
302 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
303 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
304 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
305 | CONFIG_INLINE_READ_UNLOCK=y | ||
306 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
307 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
308 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
309 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
311 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
312 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
313 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
314 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
315 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
316 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
317 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
318 | CONFIG_MUTEX_SPIN_ON_OWNER=y | ||
319 | # CONFIG_FREEZER is not set | ||
226 | 320 | ||
227 | # | 321 | # |
228 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 322 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
@@ -231,11 +325,10 @@ CONFIG_HW_HAS_PCI=y | |||
231 | CONFIG_PCI=y | 325 | CONFIG_PCI=y |
232 | CONFIG_PCI_DOMAINS=y | 326 | CONFIG_PCI_DOMAINS=y |
233 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 327 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
328 | # CONFIG_PCI_LEGACY is not set | ||
329 | # CONFIG_PCI_STUB is not set | ||
330 | # CONFIG_PCI_IOV is not set | ||
234 | CONFIG_MMU=y | 331 | CONFIG_MMU=y |
235 | |||
236 | # | ||
237 | # PCCARD (PCMCIA/CardBus) support | ||
238 | # | ||
239 | # CONFIG_PCCARD is not set | 332 | # CONFIG_PCCARD is not set |
240 | # CONFIG_HOTPLUG_PCI is not set | 333 | # CONFIG_HOTPLUG_PCI is not set |
241 | 334 | ||
@@ -243,8 +336,9 @@ CONFIG_MMU=y | |||
243 | # Executable file formats | 336 | # Executable file formats |
244 | # | 337 | # |
245 | CONFIG_BINFMT_ELF=y | 338 | CONFIG_BINFMT_ELF=y |
339 | CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y | ||
340 | # CONFIG_HAVE_AOUT is not set | ||
246 | # CONFIG_BINFMT_MISC is not set | 341 | # CONFIG_BINFMT_MISC is not set |
247 | # CONFIG_BUILD_ELF64 is not set | ||
248 | CONFIG_MIPS32_COMPAT=y | 342 | CONFIG_MIPS32_COMPAT=y |
249 | CONFIG_COMPAT=y | 343 | CONFIG_COMPAT=y |
250 | CONFIG_SYSVIPC_COMPAT=y | 344 | CONFIG_SYSVIPC_COMPAT=y |
@@ -256,13 +350,10 @@ CONFIG_BINFMT_ELF32=y | |||
256 | # Power management options | 350 | # Power management options |
257 | # | 351 | # |
258 | CONFIG_PM=y | 352 | CONFIG_PM=y |
259 | # CONFIG_PM_LEGACY is not set | ||
260 | # CONFIG_PM_DEBUG is not set | 353 | # CONFIG_PM_DEBUG is not set |
261 | 354 | # CONFIG_PM_RUNTIME is not set | |
262 | # | ||
263 | # Networking | ||
264 | # | ||
265 | CONFIG_NET=y | 355 | CONFIG_NET=y |
356 | CONFIG_COMPAT_NETLINK_MESSAGES=y | ||
266 | 357 | ||
267 | # | 358 | # |
268 | # Networking options | 359 | # Networking options |
@@ -274,6 +365,8 @@ CONFIG_XFRM=y | |||
274 | CONFIG_XFRM_USER=m | 365 | CONFIG_XFRM_USER=m |
275 | # CONFIG_XFRM_SUB_POLICY is not set | 366 | # CONFIG_XFRM_SUB_POLICY is not set |
276 | CONFIG_XFRM_MIGRATE=y | 367 | CONFIG_XFRM_MIGRATE=y |
368 | CONFIG_XFRM_STATISTICS=y | ||
369 | CONFIG_XFRM_IPCOMP=m | ||
277 | CONFIG_NET_KEY=y | 370 | CONFIG_NET_KEY=y |
278 | CONFIG_NET_KEY_MIGRATE=y | 371 | CONFIG_NET_KEY_MIGRATE=y |
279 | CONFIG_INET=y | 372 | CONFIG_INET=y |
@@ -293,19 +386,40 @@ CONFIG_IP_PNP=y | |||
293 | # CONFIG_INET_ESP is not set | 386 | # CONFIG_INET_ESP is not set |
294 | # CONFIG_INET_IPCOMP is not set | 387 | # CONFIG_INET_IPCOMP is not set |
295 | # CONFIG_INET_XFRM_TUNNEL is not set | 388 | # CONFIG_INET_XFRM_TUNNEL is not set |
296 | # CONFIG_INET_TUNNEL is not set | 389 | CONFIG_INET_TUNNEL=m |
297 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 390 | CONFIG_INET_XFRM_MODE_TRANSPORT=m |
298 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 391 | CONFIG_INET_XFRM_MODE_TUNNEL=m |
299 | CONFIG_INET_XFRM_MODE_BEET=m | 392 | CONFIG_INET_XFRM_MODE_BEET=m |
393 | CONFIG_INET_LRO=y | ||
300 | CONFIG_INET_DIAG=y | 394 | CONFIG_INET_DIAG=y |
301 | CONFIG_INET_TCP_DIAG=y | 395 | CONFIG_INET_TCP_DIAG=y |
302 | # CONFIG_TCP_CONG_ADVANCED is not set | 396 | # CONFIG_TCP_CONG_ADVANCED is not set |
303 | CONFIG_TCP_CONG_CUBIC=y | 397 | CONFIG_TCP_CONG_CUBIC=y |
304 | CONFIG_DEFAULT_TCP_CONG="cubic" | 398 | CONFIG_DEFAULT_TCP_CONG="cubic" |
305 | CONFIG_TCP_MD5SIG=y | 399 | CONFIG_TCP_MD5SIG=y |
306 | # CONFIG_IPV6 is not set | 400 | CONFIG_IPV6=y |
307 | # CONFIG_INET6_XFRM_TUNNEL is not set | 401 | CONFIG_IPV6_PRIVACY=y |
308 | # CONFIG_INET6_TUNNEL is not set | 402 | CONFIG_IPV6_ROUTER_PREF=y |
403 | CONFIG_IPV6_ROUTE_INFO=y | ||
404 | CONFIG_IPV6_OPTIMISTIC_DAD=y | ||
405 | CONFIG_INET6_AH=m | ||
406 | CONFIG_INET6_ESP=m | ||
407 | CONFIG_INET6_IPCOMP=m | ||
408 | CONFIG_IPV6_MIP6=m | ||
409 | CONFIG_INET6_XFRM_TUNNEL=m | ||
410 | CONFIG_INET6_TUNNEL=m | ||
411 | CONFIG_INET6_XFRM_MODE_TRANSPORT=m | ||
412 | CONFIG_INET6_XFRM_MODE_TUNNEL=m | ||
413 | CONFIG_INET6_XFRM_MODE_BEET=m | ||
414 | CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m | ||
415 | CONFIG_IPV6_SIT=m | ||
416 | CONFIG_IPV6_SIT_6RD=y | ||
417 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
418 | CONFIG_IPV6_TUNNEL=m | ||
419 | CONFIG_IPV6_MULTIPLE_TABLES=y | ||
420 | CONFIG_IPV6_SUBTREES=y | ||
421 | CONFIG_IPV6_MROUTE=y | ||
422 | CONFIG_IPV6_PIMSM_V2=y | ||
309 | CONFIG_NETWORK_SECMARK=y | 423 | CONFIG_NETWORK_SECMARK=y |
310 | # CONFIG_NETFILTER is not set | 424 | # CONFIG_NETFILTER is not set |
311 | # CONFIG_IP_DCCP is not set | 425 | # CONFIG_IP_DCCP is not set |
@@ -315,9 +429,11 @@ CONFIG_IP_SCTP=m | |||
315 | # CONFIG_SCTP_HMAC_NONE is not set | 429 | # CONFIG_SCTP_HMAC_NONE is not set |
316 | # CONFIG_SCTP_HMAC_SHA1 is not set | 430 | # CONFIG_SCTP_HMAC_SHA1 is not set |
317 | CONFIG_SCTP_HMAC_MD5=y | 431 | CONFIG_SCTP_HMAC_MD5=y |
432 | # CONFIG_RDS is not set | ||
318 | # CONFIG_TIPC is not set | 433 | # CONFIG_TIPC is not set |
319 | # CONFIG_ATM is not set | 434 | # CONFIG_ATM is not set |
320 | # CONFIG_BRIDGE is not set | 435 | # CONFIG_BRIDGE is not set |
436 | # CONFIG_NET_DSA is not set | ||
321 | # CONFIG_VLAN_8021Q is not set | 437 | # CONFIG_VLAN_8021Q is not set |
322 | # CONFIG_DECNET is not set | 438 | # CONFIG_DECNET is not set |
323 | # CONFIG_LLC2 is not set | 439 | # CONFIG_LLC2 is not set |
@@ -327,12 +443,9 @@ CONFIG_SCTP_HMAC_MD5=y | |||
327 | # CONFIG_LAPB is not set | 443 | # CONFIG_LAPB is not set |
328 | # CONFIG_ECONET is not set | 444 | # CONFIG_ECONET is not set |
329 | # CONFIG_WAN_ROUTER is not set | 445 | # CONFIG_WAN_ROUTER is not set |
330 | 446 | # CONFIG_PHONET is not set | |
331 | # | 447 | # CONFIG_IEEE802154 is not set |
332 | # QoS and/or fair queueing | ||
333 | # | ||
334 | CONFIG_NET_SCHED=y | 448 | CONFIG_NET_SCHED=y |
335 | CONFIG_NET_SCH_FIFO=y | ||
336 | 449 | ||
337 | # | 450 | # |
338 | # Queueing/Scheduling | 451 | # Queueing/Scheduling |
@@ -341,7 +454,7 @@ CONFIG_NET_SCH_CBQ=m | |||
341 | CONFIG_NET_SCH_HTB=m | 454 | CONFIG_NET_SCH_HTB=m |
342 | CONFIG_NET_SCH_HFSC=m | 455 | CONFIG_NET_SCH_HFSC=m |
343 | CONFIG_NET_SCH_PRIO=m | 456 | CONFIG_NET_SCH_PRIO=m |
344 | CONFIG_NET_SCH_RR=m | 457 | CONFIG_NET_SCH_MULTIQ=y |
345 | CONFIG_NET_SCH_RED=m | 458 | CONFIG_NET_SCH_RED=m |
346 | CONFIG_NET_SCH_SFQ=m | 459 | CONFIG_NET_SCH_SFQ=m |
347 | CONFIG_NET_SCH_TEQL=m | 460 | CONFIG_NET_SCH_TEQL=m |
@@ -349,6 +462,7 @@ CONFIG_NET_SCH_TBF=m | |||
349 | CONFIG_NET_SCH_GRED=m | 462 | CONFIG_NET_SCH_GRED=m |
350 | CONFIG_NET_SCH_DSMARK=m | 463 | CONFIG_NET_SCH_DSMARK=m |
351 | CONFIG_NET_SCH_NETEM=m | 464 | CONFIG_NET_SCH_NETEM=m |
465 | # CONFIG_NET_SCH_DRR is not set | ||
352 | CONFIG_NET_SCH_INGRESS=m | 466 | CONFIG_NET_SCH_INGRESS=m |
353 | 467 | ||
354 | # | 468 | # |
@@ -365,41 +479,63 @@ CONFIG_NET_CLS_U32=m | |||
365 | CONFIG_CLS_U32_MARK=y | 479 | CONFIG_CLS_U32_MARK=y |
366 | CONFIG_NET_CLS_RSVP=m | 480 | CONFIG_NET_CLS_RSVP=m |
367 | CONFIG_NET_CLS_RSVP6=m | 481 | CONFIG_NET_CLS_RSVP6=m |
482 | CONFIG_NET_CLS_FLOW=m | ||
483 | CONFIG_NET_CLS_CGROUP=y | ||
368 | # CONFIG_NET_EMATCH is not set | 484 | # CONFIG_NET_EMATCH is not set |
369 | CONFIG_NET_CLS_ACT=y | 485 | CONFIG_NET_CLS_ACT=y |
370 | CONFIG_NET_ACT_POLICE=y | 486 | CONFIG_NET_ACT_POLICE=y |
371 | CONFIG_NET_ACT_GACT=m | 487 | CONFIG_NET_ACT_GACT=m |
372 | CONFIG_GACT_PROB=y | 488 | CONFIG_GACT_PROB=y |
373 | CONFIG_NET_ACT_MIRRED=m | 489 | CONFIG_NET_ACT_MIRRED=m |
490 | CONFIG_NET_ACT_NAT=m | ||
374 | CONFIG_NET_ACT_PEDIT=m | 491 | CONFIG_NET_ACT_PEDIT=m |
375 | # CONFIG_NET_ACT_SIMP is not set | 492 | # CONFIG_NET_ACT_SIMP is not set |
376 | CONFIG_NET_CLS_POLICE=y | 493 | CONFIG_NET_ACT_SKBEDIT=m |
377 | # CONFIG_NET_CLS_IND is not set | 494 | # CONFIG_NET_CLS_IND is not set |
495 | CONFIG_NET_SCH_FIFO=y | ||
496 | # CONFIG_DCB is not set | ||
378 | 497 | ||
379 | # | 498 | # |
380 | # Network testing | 499 | # Network testing |
381 | # | 500 | # |
382 | # CONFIG_NET_PKTGEN is not set | 501 | # CONFIG_NET_PKTGEN is not set |
383 | # CONFIG_HAMRADIO is not set | 502 | # CONFIG_HAMRADIO is not set |
503 | # CONFIG_CAN is not set | ||
384 | # CONFIG_IRDA is not set | 504 | # CONFIG_IRDA is not set |
385 | # CONFIG_BT is not set | 505 | # CONFIG_BT is not set |
386 | # CONFIG_AF_RXRPC is not set | 506 | # CONFIG_AF_RXRPC is not set |
387 | 507 | CONFIG_FIB_RULES=y | |
388 | # | 508 | CONFIG_WIRELESS=y |
389 | # Wireless | ||
390 | # | ||
391 | CONFIG_CFG80211=m | ||
392 | CONFIG_WIRELESS_EXT=y | 509 | CONFIG_WIRELESS_EXT=y |
510 | CONFIG_WEXT_CORE=y | ||
511 | CONFIG_WEXT_PROC=y | ||
512 | CONFIG_WEXT_SPY=y | ||
513 | CONFIG_WEXT_PRIV=y | ||
514 | CONFIG_CFG80211=m | ||
515 | # CONFIG_NL80211_TESTMODE is not set | ||
516 | # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set | ||
517 | # CONFIG_CFG80211_REG_DEBUG is not set | ||
518 | CONFIG_CFG80211_DEFAULT_PS=y | ||
519 | # CONFIG_WIRELESS_OLD_REGULATORY is not set | ||
520 | CONFIG_CFG80211_WEXT=y | ||
521 | CONFIG_WIRELESS_EXT_SYSFS=y | ||
522 | CONFIG_LIB80211=m | ||
523 | CONFIG_LIB80211_CRYPT_WEP=m | ||
524 | CONFIG_LIB80211_CRYPT_CCMP=m | ||
525 | CONFIG_LIB80211_CRYPT_TKIP=m | ||
526 | # CONFIG_LIB80211_DEBUG is not set | ||
393 | CONFIG_MAC80211=m | 527 | CONFIG_MAC80211=m |
394 | # CONFIG_MAC80211_DEBUG is not set | 528 | CONFIG_MAC80211_RC_PID=y |
395 | CONFIG_IEEE80211=m | 529 | CONFIG_MAC80211_RC_MINSTREL=y |
396 | # CONFIG_IEEE80211_DEBUG is not set | 530 | # CONFIG_MAC80211_RC_DEFAULT_PID is not set |
397 | CONFIG_IEEE80211_CRYPT_WEP=m | 531 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y |
398 | CONFIG_IEEE80211_CRYPT_CCMP=m | 532 | CONFIG_MAC80211_RC_DEFAULT="minstrel" |
399 | CONFIG_IEEE80211_CRYPT_TKIP=m | 533 | # CONFIG_MAC80211_MESH is not set |
400 | CONFIG_IEEE80211_SOFTMAC=m | 534 | CONFIG_MAC80211_LEDS=y |
401 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | 535 | # CONFIG_MAC80211_DEBUG_MENU is not set |
536 | # CONFIG_WIMAX is not set | ||
402 | CONFIG_RFKILL=m | 537 | CONFIG_RFKILL=m |
538 | CONFIG_RFKILL_LEDS=y | ||
403 | # CONFIG_NET_9P is not set | 539 | # CONFIG_NET_9P is not set |
404 | 540 | ||
405 | # | 541 | # |
@@ -409,9 +545,13 @@ CONFIG_RFKILL=m | |||
409 | # | 545 | # |
410 | # Generic Driver Options | 546 | # Generic Driver Options |
411 | # | 547 | # |
548 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
549 | # CONFIG_DEVTMPFS is not set | ||
412 | CONFIG_STANDALONE=y | 550 | CONFIG_STANDALONE=y |
413 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 551 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
414 | CONFIG_FW_LOADER=y | 552 | CONFIG_FW_LOADER=y |
553 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
554 | CONFIG_EXTRA_FIRMWARE="" | ||
415 | # CONFIG_SYS_HYPERVISOR is not set | 555 | # CONFIG_SYS_HYPERVISOR is not set |
416 | CONFIG_CONNECTOR=m | 556 | CONFIG_CONNECTOR=m |
417 | # CONFIG_MTD is not set | 557 | # CONFIG_MTD is not set |
@@ -424,14 +564,19 @@ CONFIG_BLK_DEV=y | |||
424 | # CONFIG_BLK_DEV_COW_COMMON is not set | 564 | # CONFIG_BLK_DEV_COW_COMMON is not set |
425 | CONFIG_BLK_DEV_LOOP=y | 565 | CONFIG_BLK_DEV_LOOP=y |
426 | CONFIG_BLK_DEV_CRYPTOLOOP=m | 566 | CONFIG_BLK_DEV_CRYPTOLOOP=m |
567 | # CONFIG_BLK_DEV_DRBD is not set | ||
427 | # CONFIG_BLK_DEV_NBD is not set | 568 | # CONFIG_BLK_DEV_NBD is not set |
569 | CONFIG_BLK_DEV_OSD=m | ||
428 | # CONFIG_BLK_DEV_SX8 is not set | 570 | # CONFIG_BLK_DEV_SX8 is not set |
429 | # CONFIG_BLK_DEV_RAM is not set | 571 | # CONFIG_BLK_DEV_RAM is not set |
430 | CONFIG_CDROM_PKTCDVD=m | 572 | CONFIG_CDROM_PKTCDVD=m |
431 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 573 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
432 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 574 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
433 | CONFIG_ATA_OVER_ETH=m | 575 | CONFIG_ATA_OVER_ETH=m |
576 | # CONFIG_BLK_DEV_HD is not set | ||
434 | # CONFIG_MISC_DEVICES is not set | 577 | # CONFIG_MISC_DEVICES is not set |
578 | CONFIG_EEPROM_93CX6=m | ||
579 | CONFIG_HAVE_IDE=y | ||
435 | # CONFIG_IDE is not set | 580 | # CONFIG_IDE is not set |
436 | 581 | ||
437 | # | 582 | # |
@@ -454,10 +599,6 @@ CONFIG_BLK_DEV_SR=m | |||
454 | CONFIG_BLK_DEV_SR_VENDOR=y | 599 | CONFIG_BLK_DEV_SR_VENDOR=y |
455 | CONFIG_CHR_DEV_SG=m | 600 | CONFIG_CHR_DEV_SG=m |
456 | CONFIG_CHR_DEV_SCH=m | 601 | CONFIG_CHR_DEV_SCH=m |
457 | |||
458 | # | ||
459 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
460 | # | ||
461 | # CONFIG_SCSI_MULTI_LUN is not set | 602 | # CONFIG_SCSI_MULTI_LUN is not set |
462 | CONFIG_SCSI_CONSTANTS=y | 603 | CONFIG_SCSI_CONSTANTS=y |
463 | CONFIG_SCSI_LOGGING=y | 604 | CONFIG_SCSI_LOGGING=y |
@@ -472,11 +613,18 @@ CONFIG_SCSI_FC_ATTRS=y | |||
472 | CONFIG_SCSI_ISCSI_ATTRS=m | 613 | CONFIG_SCSI_ISCSI_ATTRS=m |
473 | CONFIG_SCSI_SAS_ATTRS=m | 614 | CONFIG_SCSI_SAS_ATTRS=m |
474 | CONFIG_SCSI_SAS_LIBSAS=m | 615 | CONFIG_SCSI_SAS_LIBSAS=m |
616 | CONFIG_SCSI_SAS_HOST_SMP=y | ||
475 | # CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set | 617 | # CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set |
618 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
476 | CONFIG_SCSI_LOWLEVEL=y | 619 | CONFIG_SCSI_LOWLEVEL=y |
477 | # CONFIG_ISCSI_TCP is not set | 620 | # CONFIG_ISCSI_TCP is not set |
621 | CONFIG_SCSI_CXGB3_ISCSI=m | ||
622 | CONFIG_SCSI_BNX2_ISCSI=m | ||
623 | CONFIG_BE2ISCSI=m | ||
478 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 624 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
625 | CONFIG_SCSI_HPSA=m | ||
479 | # CONFIG_SCSI_3W_9XXX is not set | 626 | # CONFIG_SCSI_3W_9XXX is not set |
627 | CONFIG_SCSI_3W_SAS=m | ||
480 | # CONFIG_SCSI_ACARD is not set | 628 | # CONFIG_SCSI_ACARD is not set |
481 | # CONFIG_SCSI_AACRAID is not set | 629 | # CONFIG_SCSI_AACRAID is not set |
482 | # CONFIG_SCSI_AIC7XXX is not set | 630 | # CONFIG_SCSI_AIC7XXX is not set |
@@ -484,11 +632,21 @@ CONFIG_SCSI_LOWLEVEL=y | |||
484 | # CONFIG_SCSI_AIC79XX is not set | 632 | # CONFIG_SCSI_AIC79XX is not set |
485 | CONFIG_SCSI_AIC94XX=m | 633 | CONFIG_SCSI_AIC94XX=m |
486 | # CONFIG_AIC94XX_DEBUG is not set | 634 | # CONFIG_AIC94XX_DEBUG is not set |
635 | CONFIG_SCSI_MVSAS=m | ||
636 | # CONFIG_SCSI_MVSAS_DEBUG is not set | ||
637 | CONFIG_SCSI_DPT_I2O=m | ||
638 | # CONFIG_SCSI_ADVANSYS is not set | ||
487 | # CONFIG_SCSI_ARCMSR is not set | 639 | # CONFIG_SCSI_ARCMSR is not set |
488 | # CONFIG_MEGARAID_NEWGEN is not set | 640 | # CONFIG_MEGARAID_NEWGEN is not set |
489 | # CONFIG_MEGARAID_LEGACY is not set | 641 | # CONFIG_MEGARAID_LEGACY is not set |
490 | # CONFIG_MEGARAID_SAS is not set | 642 | # CONFIG_MEGARAID_SAS is not set |
643 | CONFIG_SCSI_MPT2SAS=m | ||
644 | CONFIG_SCSI_MPT2SAS_MAX_SGE=128 | ||
645 | # CONFIG_SCSI_MPT2SAS_LOGGING is not set | ||
491 | # CONFIG_SCSI_HPTIOP is not set | 646 | # CONFIG_SCSI_HPTIOP is not set |
647 | CONFIG_LIBFC=m | ||
648 | # CONFIG_LIBFCOE is not set | ||
649 | # CONFIG_FCOE is not set | ||
492 | # CONFIG_SCSI_DMX3191D is not set | 650 | # CONFIG_SCSI_DMX3191D is not set |
493 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 651 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
494 | # CONFIG_SCSI_IPS is not set | 652 | # CONFIG_SCSI_IPS is not set |
@@ -503,16 +661,31 @@ CONFIG_SCSI_QLOGIC_1280=y | |||
503 | # CONFIG_SCSI_DC395x is not set | 661 | # CONFIG_SCSI_DC395x is not set |
504 | # CONFIG_SCSI_DC390T is not set | 662 | # CONFIG_SCSI_DC390T is not set |
505 | # CONFIG_SCSI_DEBUG is not set | 663 | # CONFIG_SCSI_DEBUG is not set |
664 | CONFIG_SCSI_PMCRAID=m | ||
665 | # CONFIG_SCSI_PM8001 is not set | ||
506 | # CONFIG_SCSI_SRP is not set | 666 | # CONFIG_SCSI_SRP is not set |
667 | CONFIG_SCSI_BFA_FC=m | ||
668 | CONFIG_SCSI_DH=m | ||
669 | CONFIG_SCSI_DH_RDAC=m | ||
670 | CONFIG_SCSI_DH_HP_SW=m | ||
671 | CONFIG_SCSI_DH_EMC=m | ||
672 | CONFIG_SCSI_DH_ALUA=m | ||
673 | CONFIG_SCSI_OSD_INITIATOR=m | ||
674 | CONFIG_SCSI_OSD_ULD=m | ||
675 | CONFIG_SCSI_OSD_DPRINT_SENSE=1 | ||
676 | # CONFIG_SCSI_OSD_DEBUG is not set | ||
507 | # CONFIG_ATA is not set | 677 | # CONFIG_ATA is not set |
508 | CONFIG_MD=y | 678 | CONFIG_MD=y |
509 | CONFIG_BLK_DEV_MD=y | 679 | CONFIG_BLK_DEV_MD=y |
680 | CONFIG_MD_AUTODETECT=y | ||
510 | CONFIG_MD_LINEAR=m | 681 | CONFIG_MD_LINEAR=m |
511 | CONFIG_MD_RAID0=y | 682 | CONFIG_MD_RAID0=y |
512 | CONFIG_MD_RAID1=y | 683 | CONFIG_MD_RAID1=y |
513 | CONFIG_MD_RAID10=m | 684 | CONFIG_MD_RAID10=m |
514 | CONFIG_MD_RAID456=y | 685 | CONFIG_MD_RAID456=y |
515 | CONFIG_MD_RAID5_RESHAPE=y | 686 | # CONFIG_MULTICORE_RAID456 is not set |
687 | CONFIG_MD_RAID6_PQ=y | ||
688 | # CONFIG_ASYNC_RAID6_TEST is not set | ||
516 | CONFIG_MD_MULTIPATH=m | 689 | CONFIG_MD_MULTIPATH=m |
517 | CONFIG_MD_FAULTY=m | 690 | CONFIG_MD_FAULTY=m |
518 | CONFIG_BLK_DEV_DM=m | 691 | CONFIG_BLK_DEV_DM=m |
@@ -520,36 +693,39 @@ CONFIG_BLK_DEV_DM=m | |||
520 | CONFIG_DM_CRYPT=m | 693 | CONFIG_DM_CRYPT=m |
521 | CONFIG_DM_SNAPSHOT=m | 694 | CONFIG_DM_SNAPSHOT=m |
522 | CONFIG_DM_MIRROR=m | 695 | CONFIG_DM_MIRROR=m |
696 | CONFIG_DM_LOG_USERSPACE=m | ||
523 | CONFIG_DM_ZERO=m | 697 | CONFIG_DM_ZERO=m |
524 | CONFIG_DM_MULTIPATH=m | 698 | CONFIG_DM_MULTIPATH=m |
525 | CONFIG_DM_MULTIPATH_EMC=m | 699 | CONFIG_DM_MULTIPATH_QL=m |
526 | CONFIG_DM_MULTIPATH_RDAC=m | 700 | CONFIG_DM_MULTIPATH_ST=m |
527 | # CONFIG_DM_DELAY is not set | 701 | # CONFIG_DM_DELAY is not set |
702 | CONFIG_DM_UEVENT=y | ||
703 | # CONFIG_FUSION is not set | ||
528 | 704 | ||
529 | # | 705 | # |
530 | # Fusion MPT device support | 706 | # IEEE 1394 (FireWire) support |
531 | # | 707 | # |
532 | # CONFIG_FUSION is not set | ||
533 | # CONFIG_FUSION_SPI is not set | ||
534 | # CONFIG_FUSION_FC is not set | ||
535 | # CONFIG_FUSION_SAS is not set | ||
536 | 708 | ||
537 | # | 709 | # |
538 | # IEEE 1394 (FireWire) support | 710 | # You can enable one or both FireWire driver stacks. |
711 | # | ||
712 | |||
713 | # | ||
714 | # The newer stack is recommended. | ||
539 | # | 715 | # |
540 | # CONFIG_FIREWIRE is not set | 716 | # CONFIG_FIREWIRE is not set |
541 | # CONFIG_IEEE1394 is not set | 717 | # CONFIG_IEEE1394 is not set |
542 | # CONFIG_I2O is not set | 718 | # CONFIG_I2O is not set |
543 | CONFIG_NETDEVICES=y | 719 | CONFIG_NETDEVICES=y |
544 | CONFIG_NETDEVICES_MULTIQUEUE=y | ||
545 | CONFIG_IFB=m | 720 | CONFIG_IFB=m |
546 | # CONFIG_DUMMY is not set | 721 | # CONFIG_DUMMY is not set |
547 | # CONFIG_BONDING is not set | 722 | # CONFIG_BONDING is not set |
548 | CONFIG_MACVLAN=m | 723 | CONFIG_MACVLAN=m |
549 | # CONFIG_EQUALIZER is not set | 724 | # CONFIG_EQUALIZER is not set |
550 | # CONFIG_TUN is not set | 725 | # CONFIG_TUN is not set |
726 | CONFIG_VETH=m | ||
551 | # CONFIG_ARCNET is not set | 727 | # CONFIG_ARCNET is not set |
552 | CONFIG_PHYLIB=m | 728 | CONFIG_PHYLIB=y |
553 | 729 | ||
554 | # | 730 | # |
555 | # MII PHY device drivers | 731 | # MII PHY device drivers |
@@ -563,23 +739,51 @@ CONFIG_VITESSE_PHY=m | |||
563 | CONFIG_SMSC_PHY=m | 739 | CONFIG_SMSC_PHY=m |
564 | # CONFIG_BROADCOM_PHY is not set | 740 | # CONFIG_BROADCOM_PHY is not set |
565 | CONFIG_ICPLUS_PHY=m | 741 | CONFIG_ICPLUS_PHY=m |
742 | CONFIG_REALTEK_PHY=m | ||
743 | CONFIG_NATIONAL_PHY=m | ||
744 | CONFIG_STE10XP=m | ||
745 | CONFIG_LSI_ET1011C_PHY=m | ||
566 | # CONFIG_FIXED_PHY is not set | 746 | # CONFIG_FIXED_PHY is not set |
747 | CONFIG_MDIO_BITBANG=m | ||
567 | CONFIG_NET_ETHERNET=y | 748 | CONFIG_NET_ETHERNET=y |
568 | CONFIG_MII=y | 749 | CONFIG_MII=y |
569 | CONFIG_AX88796=m | 750 | CONFIG_AX88796=m |
751 | CONFIG_AX88796_93CX6=y | ||
570 | CONFIG_SGI_IOC3_ETH=y | 752 | CONFIG_SGI_IOC3_ETH=y |
571 | # CONFIG_HAPPYMEAL is not set | 753 | # CONFIG_HAPPYMEAL is not set |
572 | # CONFIG_SUNGEM is not set | 754 | # CONFIG_SUNGEM is not set |
573 | # CONFIG_CASSINI is not set | 755 | # CONFIG_CASSINI is not set |
574 | # CONFIG_NET_VENDOR_3COM is not set | 756 | # CONFIG_NET_VENDOR_3COM is not set |
757 | CONFIG_SMC91X=m | ||
575 | # CONFIG_DM9000 is not set | 758 | # CONFIG_DM9000 is not set |
759 | CONFIG_ETHOC=m | ||
760 | CONFIG_SMSC911X=m | ||
761 | CONFIG_DNET=m | ||
576 | # CONFIG_NET_TULIP is not set | 762 | # CONFIG_NET_TULIP is not set |
577 | # CONFIG_HP100 is not set | 763 | # CONFIG_HP100 is not set |
764 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
765 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
766 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
767 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
768 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
769 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
770 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
578 | # CONFIG_NET_PCI is not set | 771 | # CONFIG_NET_PCI is not set |
772 | CONFIG_B44=m | ||
773 | CONFIG_B44_PCI_AUTOSELECT=y | ||
774 | CONFIG_B44_PCICORE_AUTOSELECT=y | ||
775 | CONFIG_B44_PCI=y | ||
776 | CONFIG_KS8842=m | ||
777 | CONFIG_KS8851_MLL=m | ||
778 | CONFIG_ATL2=m | ||
579 | CONFIG_NETDEV_1000=y | 779 | CONFIG_NETDEV_1000=y |
580 | # CONFIG_ACENIC is not set | 780 | # CONFIG_ACENIC is not set |
581 | # CONFIG_DL2K is not set | 781 | # CONFIG_DL2K is not set |
582 | # CONFIG_E1000 is not set | 782 | # CONFIG_E1000 is not set |
783 | CONFIG_E1000E=m | ||
784 | CONFIG_IP1000=m | ||
785 | CONFIG_IGB=m | ||
786 | CONFIG_IGBVF=m | ||
583 | # CONFIG_NS83820 is not set | 787 | # CONFIG_NS83820 is not set |
584 | # CONFIG_HAMACHI is not set | 788 | # CONFIG_HAMACHI is not set |
585 | # CONFIG_YELLOWFIN is not set | 789 | # CONFIG_YELLOWFIN is not set |
@@ -589,24 +793,75 @@ CONFIG_NETDEV_1000=y | |||
589 | # CONFIG_SKY2 is not set | 793 | # CONFIG_SKY2 is not set |
590 | CONFIG_VIA_VELOCITY=m | 794 | CONFIG_VIA_VELOCITY=m |
591 | # CONFIG_TIGON3 is not set | 795 | # CONFIG_TIGON3 is not set |
592 | # CONFIG_BNX2 is not set | 796 | CONFIG_BNX2=m |
797 | CONFIG_CNIC=m | ||
593 | CONFIG_QLA3XXX=m | 798 | CONFIG_QLA3XXX=m |
594 | # CONFIG_ATL1 is not set | 799 | # CONFIG_ATL1 is not set |
800 | CONFIG_ATL1E=m | ||
801 | CONFIG_ATL1C=m | ||
802 | CONFIG_JME=m | ||
595 | CONFIG_NETDEV_10000=y | 803 | CONFIG_NETDEV_10000=y |
804 | CONFIG_MDIO=m | ||
596 | # CONFIG_CHELSIO_T1 is not set | 805 | # CONFIG_CHELSIO_T1 is not set |
806 | CONFIG_CHELSIO_T3_DEPENDS=y | ||
597 | CONFIG_CHELSIO_T3=m | 807 | CONFIG_CHELSIO_T3=m |
808 | CONFIG_ENIC=m | ||
809 | CONFIG_IXGBE=m | ||
598 | # CONFIG_IXGB is not set | 810 | # CONFIG_IXGB is not set |
599 | # CONFIG_S2IO is not set | 811 | # CONFIG_S2IO is not set |
812 | CONFIG_VXGE=m | ||
813 | # CONFIG_VXGE_DEBUG_TRACE_ALL is not set | ||
600 | # CONFIG_MYRI10GE is not set | 814 | # CONFIG_MYRI10GE is not set |
601 | CONFIG_NETXEN_NIC=m | 815 | CONFIG_NETXEN_NIC=m |
602 | # CONFIG_MLX4_CORE is not set | 816 | CONFIG_NIU=m |
817 | CONFIG_MLX4_EN=m | ||
818 | CONFIG_MLX4_CORE=m | ||
819 | # CONFIG_MLX4_DEBUG is not set | ||
820 | CONFIG_TEHUTI=m | ||
821 | CONFIG_BNX2X=m | ||
822 | CONFIG_QLGE=m | ||
823 | CONFIG_SFC=m | ||
824 | CONFIG_BE2NET=m | ||
603 | # CONFIG_TR is not set | 825 | # CONFIG_TR is not set |
604 | 826 | CONFIG_WLAN=y | |
605 | # | 827 | CONFIG_LIBERTAS_THINFIRM=m |
606 | # Wireless LAN | 828 | CONFIG_ATMEL=m |
607 | # | 829 | CONFIG_PCI_ATMEL=m |
608 | # CONFIG_WLAN_PRE80211 is not set | 830 | CONFIG_PRISM54=m |
609 | CONFIG_WLAN_80211=y | 831 | CONFIG_RTL8180=m |
832 | CONFIG_ADM8211=m | ||
833 | # CONFIG_MAC80211_HWSIM is not set | ||
834 | CONFIG_MWL8K=m | ||
835 | CONFIG_ATH_COMMON=m | ||
836 | # CONFIG_ATH_DEBUG is not set | ||
837 | CONFIG_ATH5K=m | ||
838 | # CONFIG_ATH5K_DEBUG is not set | ||
839 | CONFIG_ATH9K_HW=m | ||
840 | CONFIG_ATH9K_COMMON=m | ||
841 | CONFIG_ATH9K=m | ||
842 | CONFIG_B43=m | ||
843 | CONFIG_B43_PCI_AUTOSELECT=y | ||
844 | CONFIG_B43_PCICORE_AUTOSELECT=y | ||
845 | CONFIG_B43_PHY_LP=y | ||
846 | CONFIG_B43_LEDS=y | ||
847 | CONFIG_B43_HWRNG=y | ||
848 | # CONFIG_B43_DEBUG is not set | ||
849 | CONFIG_B43LEGACY=m | ||
850 | CONFIG_B43LEGACY_PCI_AUTOSELECT=y | ||
851 | CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y | ||
852 | CONFIG_B43LEGACY_LEDS=y | ||
853 | CONFIG_B43LEGACY_HWRNG=y | ||
854 | # CONFIG_B43LEGACY_DEBUG is not set | ||
855 | CONFIG_B43LEGACY_DMA=y | ||
856 | CONFIG_B43LEGACY_PIO=y | ||
857 | CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y | ||
858 | # CONFIG_B43LEGACY_DMA_MODE is not set | ||
859 | # CONFIG_B43LEGACY_PIO_MODE is not set | ||
860 | CONFIG_HOSTAP=m | ||
861 | CONFIG_HOSTAP_FIRMWARE=y | ||
862 | CONFIG_HOSTAP_FIRMWARE_NVRAM=y | ||
863 | CONFIG_HOSTAP_PLX=m | ||
864 | CONFIG_HOSTAP_PCI=m | ||
610 | CONFIG_IPW2100=m | 865 | CONFIG_IPW2100=m |
611 | CONFIG_IPW2100_MONITOR=y | 866 | CONFIG_IPW2100_MONITOR=y |
612 | CONFIG_IPW2100_DEBUG=y | 867 | CONFIG_IPW2100_DEBUG=y |
@@ -616,38 +871,57 @@ CONFIG_IPW2200_RADIOTAP=y | |||
616 | CONFIG_IPW2200_PROMISCUOUS=y | 871 | CONFIG_IPW2200_PROMISCUOUS=y |
617 | CONFIG_IPW2200_QOS=y | 872 | CONFIG_IPW2200_QOS=y |
618 | CONFIG_IPW2200_DEBUG=y | 873 | CONFIG_IPW2200_DEBUG=y |
874 | CONFIG_LIBIPW=m | ||
875 | # CONFIG_LIBIPW_DEBUG is not set | ||
876 | CONFIG_IWLWIFI=m | ||
877 | CONFIG_IWLWIFI_SPECTRUM_MEASUREMENT=y | ||
878 | # CONFIG_IWLWIFI_DEBUG is not set | ||
879 | CONFIG_IWLAGN=m | ||
880 | CONFIG_IWL4965=y | ||
881 | CONFIG_IWL5000=y | ||
882 | CONFIG_IWL3945=m | ||
883 | CONFIG_IWL3945_SPECTRUM_MEASUREMENT=y | ||
619 | CONFIG_LIBERTAS=m | 884 | CONFIG_LIBERTAS=m |
620 | # CONFIG_LIBERTAS_DEBUG is not set | 885 | # CONFIG_LIBERTAS_DEBUG is not set |
621 | CONFIG_HERMES=m | 886 | CONFIG_HERMES=m |
887 | # CONFIG_HERMES_CACHE_FW_ON_INIT is not set | ||
622 | CONFIG_PLX_HERMES=m | 888 | CONFIG_PLX_HERMES=m |
623 | CONFIG_TMD_HERMES=m | 889 | CONFIG_TMD_HERMES=m |
624 | CONFIG_NORTEL_HERMES=m | 890 | CONFIG_NORTEL_HERMES=m |
625 | CONFIG_PCI_HERMES=m | 891 | CONFIG_PCI_HERMES=m |
626 | CONFIG_ATMEL=m | 892 | CONFIG_P54_COMMON=m |
627 | CONFIG_PCI_ATMEL=m | 893 | CONFIG_P54_PCI=m |
628 | CONFIG_PRISM54=m | 894 | CONFIG_P54_LEDS=y |
629 | CONFIG_HOSTAP=m | 895 | CONFIG_RT2X00=m |
630 | CONFIG_HOSTAP_FIRMWARE=y | 896 | CONFIG_RT2400PCI=m |
631 | CONFIG_HOSTAP_FIRMWARE_NVRAM=y | 897 | CONFIG_RT2500PCI=m |
632 | CONFIG_HOSTAP_PLX=m | 898 | CONFIG_RT61PCI=m |
633 | CONFIG_HOSTAP_PCI=m | 899 | CONFIG_RT2800PCI_PCI=m |
634 | CONFIG_BCM43XX=m | 900 | CONFIG_RT2800PCI=m |
635 | CONFIG_BCM43XX_DEBUG=y | 901 | CONFIG_RT2800_LIB=m |
636 | CONFIG_BCM43XX_DMA=y | 902 | CONFIG_RT2X00_LIB_PCI=m |
637 | CONFIG_BCM43XX_PIO=y | 903 | CONFIG_RT2X00_LIB=m |
638 | CONFIG_BCM43XX_DMA_AND_PIO_MODE=y | 904 | CONFIG_RT2X00_LIB_HT=y |
639 | # CONFIG_BCM43XX_DMA_MODE is not set | 905 | CONFIG_RT2X00_LIB_FIRMWARE=y |
640 | # CONFIG_BCM43XX_PIO_MODE is not set | 906 | CONFIG_RT2X00_LIB_CRYPTO=y |
907 | CONFIG_RT2X00_LIB_LEDS=y | ||
908 | # CONFIG_RT2X00_DEBUG is not set | ||
909 | CONFIG_WL12XX=m | ||
910 | CONFIG_WL1251=m | ||
911 | |||
912 | # | ||
913 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
914 | # | ||
641 | # CONFIG_WAN is not set | 915 | # CONFIG_WAN is not set |
642 | # CONFIG_FDDI is not set | 916 | # CONFIG_FDDI is not set |
643 | # CONFIG_HIPPI is not set | 917 | # CONFIG_HIPPI is not set |
644 | # CONFIG_PPP is not set | 918 | # CONFIG_PPP is not set |
645 | # CONFIG_SLIP is not set | 919 | # CONFIG_SLIP is not set |
646 | # CONFIG_NET_FC is not set | 920 | # CONFIG_NET_FC is not set |
647 | # CONFIG_SHAPER is not set | ||
648 | # CONFIG_NETCONSOLE is not set | 921 | # CONFIG_NETCONSOLE is not set |
649 | # CONFIG_NETPOLL is not set | 922 | # CONFIG_NETPOLL is not set |
650 | # CONFIG_NET_POLL_CONTROLLER is not set | 923 | # CONFIG_NET_POLL_CONTROLLER is not set |
924 | # CONFIG_VMXNET3 is not set | ||
651 | # CONFIG_ISDN is not set | 925 | # CONFIG_ISDN is not set |
652 | # CONFIG_PHONE is not set | 926 | # CONFIG_PHONE is not set |
653 | 927 | ||
@@ -665,13 +939,16 @@ CONFIG_SERIO_SERPORT=y | |||
665 | # CONFIG_SERIO_PCIPS2 is not set | 939 | # CONFIG_SERIO_PCIPS2 is not set |
666 | CONFIG_SERIO_LIBPS2=m | 940 | CONFIG_SERIO_LIBPS2=m |
667 | CONFIG_SERIO_RAW=m | 941 | CONFIG_SERIO_RAW=m |
942 | CONFIG_SERIO_ALTERA_PS2=m | ||
668 | # CONFIG_GAMEPORT is not set | 943 | # CONFIG_GAMEPORT is not set |
669 | 944 | ||
670 | # | 945 | # |
671 | # Character devices | 946 | # Character devices |
672 | # | 947 | # |
673 | # CONFIG_VT is not set | 948 | # CONFIG_VT is not set |
949 | CONFIG_DEVKMEM=y | ||
674 | # CONFIG_SERIAL_NONSTANDARD is not set | 950 | # CONFIG_SERIAL_NONSTANDARD is not set |
951 | CONFIG_NOZOMI=m | ||
675 | 952 | ||
676 | # | 953 | # |
677 | # Serial drivers | 954 | # Serial drivers |
@@ -694,95 +971,258 @@ CONFIG_SERIAL_CORE=y | |||
694 | CONFIG_SERIAL_CORE_CONSOLE=y | 971 | CONFIG_SERIAL_CORE_CONSOLE=y |
695 | # CONFIG_SERIAL_JSM is not set | 972 | # CONFIG_SERIAL_JSM is not set |
696 | CONFIG_UNIX98_PTYS=y | 973 | CONFIG_UNIX98_PTYS=y |
974 | CONFIG_DEVPTS_MULTIPLE_INSTANCES=y | ||
697 | CONFIG_LEGACY_PTYS=y | 975 | CONFIG_LEGACY_PTYS=y |
698 | CONFIG_LEGACY_PTY_COUNT=256 | 976 | CONFIG_LEGACY_PTY_COUNT=256 |
699 | # CONFIG_IPMI_HANDLER is not set | 977 | # CONFIG_IPMI_HANDLER is not set |
700 | # CONFIG_WATCHDOG is not set | ||
701 | CONFIG_HW_RANDOM=m | 978 | CONFIG_HW_RANDOM=m |
702 | # CONFIG_RTC is not set | 979 | CONFIG_HW_RANDOM_TIMERIOMEM=m |
703 | # CONFIG_R3964 is not set | 980 | # CONFIG_R3964 is not set |
704 | # CONFIG_APPLICOM is not set | 981 | # CONFIG_APPLICOM is not set |
705 | # CONFIG_DRM is not set | ||
706 | # CONFIG_RAW_DRIVER is not set | 982 | # CONFIG_RAW_DRIVER is not set |
707 | # CONFIG_TCG_TPM is not set | 983 | # CONFIG_TCG_TPM is not set |
708 | CONFIG_DEVPORT=y | 984 | CONFIG_DEVPORT=y |
709 | # CONFIG_I2C is not set | 985 | CONFIG_I2C=m |
986 | CONFIG_I2C_BOARDINFO=y | ||
987 | CONFIG_I2C_COMPAT=y | ||
988 | CONFIG_I2C_CHARDEV=m | ||
989 | CONFIG_I2C_HELPER_AUTO=y | ||
990 | CONFIG_I2C_ALGOBIT=m | ||
991 | CONFIG_I2C_ALGOPCA=m | ||
992 | |||
993 | # | ||
994 | # I2C Hardware Bus support | ||
995 | # | ||
996 | |||
997 | # | ||
998 | # PC SMBus host controller drivers | ||
999 | # | ||
1000 | CONFIG_I2C_ALI1535=m | ||
1001 | CONFIG_I2C_ALI1563=m | ||
1002 | CONFIG_I2C_ALI15X3=m | ||
1003 | CONFIG_I2C_AMD756=m | ||
1004 | CONFIG_I2C_AMD8111=m | ||
1005 | CONFIG_I2C_I801=m | ||
1006 | CONFIG_I2C_ISCH=m | ||
1007 | CONFIG_I2C_PIIX4=m | ||
1008 | CONFIG_I2C_NFORCE2=m | ||
1009 | CONFIG_I2C_SIS5595=m | ||
1010 | CONFIG_I2C_SIS630=m | ||
1011 | CONFIG_I2C_SIS96X=m | ||
1012 | CONFIG_I2C_VIA=m | ||
1013 | CONFIG_I2C_VIAPRO=m | ||
710 | 1014 | ||
711 | # | 1015 | # |
712 | # SPI support | 1016 | # I2C system bus drivers (mostly embedded / system-on-chip) |
713 | # | 1017 | # |
1018 | CONFIG_I2C_OCORES=m | ||
1019 | CONFIG_I2C_SIMTEC=m | ||
1020 | |||
1021 | # | ||
1022 | # External I2C/SMBus adapter drivers | ||
1023 | # | ||
1024 | CONFIG_I2C_PARPORT_LIGHT=m | ||
1025 | CONFIG_I2C_TAOS_EVM=m | ||
1026 | |||
1027 | # | ||
1028 | # Other I2C/SMBus bus drivers | ||
1029 | # | ||
1030 | CONFIG_I2C_PCA_PLATFORM=m | ||
1031 | CONFIG_I2C_STUB=m | ||
1032 | |||
1033 | # | ||
1034 | # Miscellaneous I2C Chip support | ||
1035 | # | ||
1036 | CONFIG_SENSORS_TSL2550=m | ||
1037 | # CONFIG_I2C_DEBUG_CORE is not set | ||
1038 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
1039 | # CONFIG_I2C_DEBUG_BUS is not set | ||
1040 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
714 | # CONFIG_SPI is not set | 1041 | # CONFIG_SPI is not set |
715 | # CONFIG_SPI_MASTER is not set | 1042 | |
1043 | # | ||
1044 | # PPS support | ||
1045 | # | ||
1046 | CONFIG_PPS=m | ||
1047 | # CONFIG_PPS_DEBUG is not set | ||
716 | # CONFIG_W1 is not set | 1048 | # CONFIG_W1 is not set |
717 | # CONFIG_POWER_SUPPLY is not set | 1049 | # CONFIG_POWER_SUPPLY is not set |
718 | # CONFIG_HWMON is not set | 1050 | # CONFIG_HWMON is not set |
1051 | CONFIG_THERMAL=m | ||
1052 | # CONFIG_WATCHDOG is not set | ||
1053 | CONFIG_SSB_POSSIBLE=y | ||
719 | 1054 | ||
720 | # | 1055 | # |
721 | # Multifunction device drivers | 1056 | # Sonics Silicon Backplane |
722 | # | 1057 | # |
723 | # CONFIG_MFD_SM501 is not set | 1058 | CONFIG_SSB=m |
1059 | CONFIG_SSB_SPROM=y | ||
1060 | CONFIG_SSB_PCIHOST_POSSIBLE=y | ||
1061 | CONFIG_SSB_PCIHOST=y | ||
1062 | CONFIG_SSB_B43_PCI_BRIDGE=y | ||
1063 | # CONFIG_SSB_SILENT is not set | ||
1064 | # CONFIG_SSB_DEBUG is not set | ||
1065 | CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y | ||
1066 | CONFIG_SSB_DRIVER_PCICORE=y | ||
1067 | # CONFIG_SSB_DRIVER_MIPS is not set | ||
724 | 1068 | ||
725 | # | 1069 | # |
726 | # Multimedia devices | 1070 | # Multifunction device drivers |
727 | # | 1071 | # |
728 | # CONFIG_VIDEO_DEV is not set | 1072 | # CONFIG_MFD_CORE is not set |
729 | # CONFIG_DVB_CORE is not set | 1073 | # CONFIG_MFD_SM501 is not set |
730 | # CONFIG_DAB is not set | 1074 | # CONFIG_HTC_PASIC3 is not set |
1075 | # CONFIG_MFD_TMIO is not set | ||
1076 | # CONFIG_MFD_WM8400 is not set | ||
1077 | CONFIG_MFD_WM8350=m | ||
1078 | CONFIG_MFD_WM8350_I2C=m | ||
1079 | CONFIG_MFD_PCF50633=m | ||
1080 | CONFIG_PCF50633_ADC=m | ||
1081 | CONFIG_PCF50633_GPIO=m | ||
1082 | CONFIG_AB3100_CORE=m | ||
1083 | CONFIG_AB3100_OTP=m | ||
1084 | # CONFIG_REGULATOR is not set | ||
1085 | # CONFIG_MEDIA_SUPPORT is not set | ||
731 | 1086 | ||
732 | # | 1087 | # |
733 | # Graphics support | 1088 | # Graphics support |
734 | # | 1089 | # |
735 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 1090 | # CONFIG_VGA_ARB is not set |
736 | 1091 | # CONFIG_DRM is not set | |
737 | # | ||
738 | # Display device support | ||
739 | # | ||
740 | # CONFIG_DISPLAY_SUPPORT is not set | ||
741 | # CONFIG_VGASTATE is not set | 1092 | # CONFIG_VGASTATE is not set |
742 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | 1093 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set |
743 | # CONFIG_FB is not set | 1094 | # CONFIG_FB is not set |
1095 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
744 | 1096 | ||
745 | # | 1097 | # |
746 | # Sound | 1098 | # Display device support |
747 | # | 1099 | # |
1100 | # CONFIG_DISPLAY_SUPPORT is not set | ||
748 | # CONFIG_SOUND is not set | 1101 | # CONFIG_SOUND is not set |
749 | CONFIG_USB_SUPPORT=y | 1102 | CONFIG_USB_SUPPORT=y |
750 | CONFIG_USB_ARCH_HAS_HCD=y | 1103 | CONFIG_USB_ARCH_HAS_HCD=y |
751 | CONFIG_USB_ARCH_HAS_OHCI=y | 1104 | CONFIG_USB_ARCH_HAS_OHCI=y |
752 | CONFIG_USB_ARCH_HAS_EHCI=y | 1105 | CONFIG_USB_ARCH_HAS_EHCI=y |
753 | # CONFIG_USB is not set | 1106 | # CONFIG_USB is not set |
1107 | # CONFIG_USB_OTG_WHITELIST is not set | ||
1108 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
754 | 1109 | ||
755 | # | 1110 | # |
756 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1111 | # Enable Host or Gadget support to see Inventra options |
757 | # | 1112 | # |
758 | 1113 | ||
759 | # | 1114 | # |
760 | # USB Gadget Support | 1115 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
761 | # | 1116 | # |
762 | # CONFIG_USB_GADGET is not set | 1117 | # CONFIG_USB_GADGET is not set |
1118 | |||
1119 | # | ||
1120 | # OTG and related infrastructure | ||
1121 | # | ||
1122 | # CONFIG_UWB is not set | ||
763 | # CONFIG_MMC is not set | 1123 | # CONFIG_MMC is not set |
764 | # CONFIG_NEW_LEDS is not set | 1124 | # CONFIG_MEMSTICK is not set |
765 | # CONFIG_INFINIBAND is not set | 1125 | CONFIG_NEW_LEDS=y |
766 | # CONFIG_RTC_CLASS is not set | 1126 | CONFIG_LEDS_CLASS=m |
1127 | |||
1128 | # | ||
1129 | # LED drivers | ||
1130 | # | ||
1131 | CONFIG_LEDS_LP3944=m | ||
1132 | CONFIG_LEDS_PCA955X=m | ||
1133 | CONFIG_LEDS_WM8350=m | ||
1134 | CONFIG_LEDS_BD2802=m | ||
1135 | |||
1136 | # | ||
1137 | # LED Triggers | ||
1138 | # | ||
1139 | CONFIG_LEDS_TRIGGERS=y | ||
1140 | CONFIG_LEDS_TRIGGER_TIMER=m | ||
1141 | CONFIG_LEDS_TRIGGER_HEARTBEAT=m | ||
1142 | CONFIG_LEDS_TRIGGER_BACKLIGHT=m | ||
1143 | CONFIG_LEDS_TRIGGER_DEFAULT_ON=m | ||
767 | 1144 | ||
768 | # | 1145 | # |
769 | # DMA Engine support | 1146 | # iptables trigger is under Netfilter config (LED target) |
770 | # | 1147 | # |
771 | # CONFIG_DMA_ENGINE is not set | 1148 | # CONFIG_ACCESSIBILITY is not set |
1149 | # CONFIG_INFINIBAND is not set | ||
1150 | CONFIG_RTC_LIB=y | ||
1151 | CONFIG_RTC_CLASS=y | ||
1152 | CONFIG_RTC_HCTOSYS=y | ||
1153 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1154 | # CONFIG_RTC_DEBUG is not set | ||
772 | 1155 | ||
773 | # | 1156 | # |
774 | # DMA Clients | 1157 | # RTC interfaces |
775 | # | 1158 | # |
1159 | CONFIG_RTC_INTF_SYSFS=y | ||
1160 | CONFIG_RTC_INTF_PROC=y | ||
1161 | CONFIG_RTC_INTF_DEV=y | ||
1162 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1163 | # CONFIG_RTC_DRV_TEST is not set | ||
776 | 1164 | ||
777 | # | 1165 | # |
778 | # DMA Devices | 1166 | # I2C RTC drivers |
1167 | # | ||
1168 | # CONFIG_RTC_DRV_DS1307 is not set | ||
1169 | # CONFIG_RTC_DRV_DS1374 is not set | ||
1170 | # CONFIG_RTC_DRV_DS1672 is not set | ||
1171 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
1172 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
1173 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
1174 | # CONFIG_RTC_DRV_X1205 is not set | ||
1175 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
1176 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
1177 | # CONFIG_RTC_DRV_M41T80 is not set | ||
1178 | # CONFIG_RTC_DRV_BQ32K is not set | ||
1179 | # CONFIG_RTC_DRV_S35390A is not set | ||
1180 | # CONFIG_RTC_DRV_FM3130 is not set | ||
1181 | # CONFIG_RTC_DRV_RX8581 is not set | ||
1182 | # CONFIG_RTC_DRV_RX8025 is not set | ||
1183 | |||
1184 | # | ||
1185 | # SPI RTC drivers | ||
1186 | # | ||
1187 | |||
779 | # | 1188 | # |
1189 | # Platform RTC drivers | ||
1190 | # | ||
1191 | # CONFIG_RTC_DRV_CMOS is not set | ||
1192 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1193 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1194 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1195 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1196 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1197 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1198 | CONFIG_RTC_DRV_M48T35=y | ||
1199 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1200 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
1201 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1202 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
1203 | # CONFIG_RTC_DRV_V3020 is not set | ||
1204 | # CONFIG_RTC_DRV_WM8350 is not set | ||
1205 | # CONFIG_RTC_DRV_PCF50633 is not set | ||
1206 | CONFIG_RTC_DRV_AB3100=m | ||
780 | 1207 | ||
781 | # | 1208 | # |
782 | # Userspace I/O | 1209 | # on-CPU RTC drivers |
783 | # | 1210 | # |
1211 | # CONFIG_DMADEVICES is not set | ||
1212 | # CONFIG_AUXDISPLAY is not set | ||
784 | CONFIG_UIO=y | 1213 | CONFIG_UIO=y |
785 | # CONFIG_UIO_CIF is not set | 1214 | # CONFIG_UIO_CIF is not set |
1215 | # CONFIG_UIO_PDRV is not set | ||
1216 | # CONFIG_UIO_PDRV_GENIRQ is not set | ||
1217 | CONFIG_UIO_SMX=m | ||
1218 | CONFIG_UIO_AEC=m | ||
1219 | CONFIG_UIO_SERCOS3=m | ||
1220 | CONFIG_UIO_PCI_GENERIC=m | ||
1221 | |||
1222 | # | ||
1223 | # TI VLYNQ | ||
1224 | # | ||
1225 | # CONFIG_STAGING is not set | ||
786 | 1226 | ||
787 | # | 1227 | # |
788 | # File systems | 1228 | # File systems |
@@ -793,36 +1233,58 @@ CONFIG_EXT2_FS_POSIX_ACL=y | |||
793 | CONFIG_EXT2_FS_SECURITY=y | 1233 | CONFIG_EXT2_FS_SECURITY=y |
794 | # CONFIG_EXT2_FS_XIP is not set | 1234 | # CONFIG_EXT2_FS_XIP is not set |
795 | CONFIG_EXT3_FS=y | 1235 | CONFIG_EXT3_FS=y |
1236 | # CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set | ||
796 | CONFIG_EXT3_FS_XATTR=y | 1237 | CONFIG_EXT3_FS_XATTR=y |
797 | CONFIG_EXT3_FS_POSIX_ACL=y | 1238 | CONFIG_EXT3_FS_POSIX_ACL=y |
798 | CONFIG_EXT3_FS_SECURITY=y | 1239 | CONFIG_EXT3_FS_SECURITY=y |
799 | # CONFIG_EXT4DEV_FS is not set | 1240 | CONFIG_EXT4_FS=y |
1241 | CONFIG_EXT4_FS_XATTR=y | ||
1242 | CONFIG_EXT4_FS_POSIX_ACL=y | ||
1243 | CONFIG_EXT4_FS_SECURITY=y | ||
1244 | # CONFIG_EXT4_DEBUG is not set | ||
800 | CONFIG_JBD=y | 1245 | CONFIG_JBD=y |
801 | CONFIG_JBD_DEBUG=y | 1246 | CONFIG_JBD2=y |
802 | CONFIG_FS_MBCACHE=y | 1247 | CONFIG_FS_MBCACHE=y |
803 | # CONFIG_REISERFS_FS is not set | 1248 | # CONFIG_REISERFS_FS is not set |
804 | # CONFIG_JFS_FS is not set | 1249 | # CONFIG_JFS_FS is not set |
805 | CONFIG_FS_POSIX_ACL=y | 1250 | CONFIG_FS_POSIX_ACL=y |
806 | CONFIG_XFS_FS=m | 1251 | CONFIG_XFS_FS=m |
807 | CONFIG_XFS_QUOTA=y | 1252 | CONFIG_XFS_QUOTA=y |
808 | CONFIG_XFS_SECURITY=y | ||
809 | CONFIG_XFS_POSIX_ACL=y | 1253 | CONFIG_XFS_POSIX_ACL=y |
810 | # CONFIG_XFS_RT is not set | 1254 | # CONFIG_XFS_RT is not set |
1255 | # CONFIG_XFS_DEBUG is not set | ||
811 | # CONFIG_GFS2_FS is not set | 1256 | # CONFIG_GFS2_FS is not set |
812 | # CONFIG_OCFS2_FS is not set | 1257 | # CONFIG_OCFS2_FS is not set |
813 | # CONFIG_MINIX_FS is not set | 1258 | CONFIG_BTRFS_FS=m |
814 | # CONFIG_ROMFS_FS is not set | 1259 | CONFIG_BTRFS_FS_POSIX_ACL=y |
1260 | # CONFIG_NILFS2_FS is not set | ||
1261 | CONFIG_FILE_LOCKING=y | ||
1262 | CONFIG_FSNOTIFY=y | ||
1263 | CONFIG_DNOTIFY=y | ||
815 | CONFIG_INOTIFY=y | 1264 | CONFIG_INOTIFY=y |
816 | CONFIG_INOTIFY_USER=y | 1265 | CONFIG_INOTIFY_USER=y |
817 | # CONFIG_QUOTA is not set | 1266 | # CONFIG_QUOTA is not set |
1267 | CONFIG_QUOTA_NETLINK_INTERFACE=y | ||
818 | CONFIG_QUOTACTL=y | 1268 | CONFIG_QUOTACTL=y |
819 | CONFIG_DNOTIFY=y | ||
820 | CONFIG_AUTOFS_FS=m | 1269 | CONFIG_AUTOFS_FS=m |
821 | # CONFIG_AUTOFS4_FS is not set | 1270 | # CONFIG_AUTOFS4_FS is not set |
822 | CONFIG_FUSE_FS=m | 1271 | CONFIG_FUSE_FS=m |
1272 | CONFIG_CUSE=m | ||
823 | CONFIG_GENERIC_ACL=y | 1273 | CONFIG_GENERIC_ACL=y |
824 | 1274 | ||
825 | # | 1275 | # |
1276 | # Caches | ||
1277 | # | ||
1278 | CONFIG_FSCACHE=m | ||
1279 | CONFIG_FSCACHE_STATS=y | ||
1280 | # CONFIG_FSCACHE_HISTOGRAM is not set | ||
1281 | # CONFIG_FSCACHE_DEBUG is not set | ||
1282 | # CONFIG_FSCACHE_OBJECT_LIST is not set | ||
1283 | CONFIG_CACHEFILES=m | ||
1284 | # CONFIG_CACHEFILES_DEBUG is not set | ||
1285 | # CONFIG_CACHEFILES_HISTOGRAM is not set | ||
1286 | |||
1287 | # | ||
826 | # CD-ROM/DVD Filesystems | 1288 | # CD-ROM/DVD Filesystems |
827 | # | 1289 | # |
828 | # CONFIG_ISO9660_FS is not set | 1290 | # CONFIG_ISO9660_FS is not set |
@@ -841,16 +1303,13 @@ CONFIG_GENERIC_ACL=y | |||
841 | CONFIG_PROC_FS=y | 1303 | CONFIG_PROC_FS=y |
842 | CONFIG_PROC_KCORE=y | 1304 | CONFIG_PROC_KCORE=y |
843 | CONFIG_PROC_SYSCTL=y | 1305 | CONFIG_PROC_SYSCTL=y |
1306 | CONFIG_PROC_PAGE_MONITOR=y | ||
844 | CONFIG_SYSFS=y | 1307 | CONFIG_SYSFS=y |
845 | CONFIG_TMPFS=y | 1308 | CONFIG_TMPFS=y |
846 | CONFIG_TMPFS_POSIX_ACL=y | 1309 | CONFIG_TMPFS_POSIX_ACL=y |
847 | # CONFIG_HUGETLB_PAGE is not set | 1310 | # CONFIG_HUGETLB_PAGE is not set |
848 | CONFIG_RAMFS=y | ||
849 | CONFIG_CONFIGFS_FS=m | 1311 | CONFIG_CONFIGFS_FS=m |
850 | 1312 | CONFIG_MISC_FILESYSTEMS=y | |
851 | # | ||
852 | # Miscellaneous filesystems | ||
853 | # | ||
854 | # CONFIG_ADFS_FS is not set | 1313 | # CONFIG_ADFS_FS is not set |
855 | # CONFIG_AFFS_FS is not set | 1314 | # CONFIG_AFFS_FS is not set |
856 | # CONFIG_ECRYPT_FS is not set | 1315 | # CONFIG_ECRYPT_FS is not set |
@@ -860,28 +1319,32 @@ CONFIG_CONFIGFS_FS=m | |||
860 | # CONFIG_BFS_FS is not set | 1319 | # CONFIG_BFS_FS is not set |
861 | # CONFIG_EFS_FS is not set | 1320 | # CONFIG_EFS_FS is not set |
862 | # CONFIG_CRAMFS is not set | 1321 | # CONFIG_CRAMFS is not set |
1322 | CONFIG_SQUASHFS=m | ||
1323 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1324 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
863 | # CONFIG_VXFS_FS is not set | 1325 | # CONFIG_VXFS_FS is not set |
1326 | # CONFIG_MINIX_FS is not set | ||
1327 | CONFIG_OMFS_FS=m | ||
864 | # CONFIG_HPFS_FS is not set | 1328 | # CONFIG_HPFS_FS is not set |
865 | # CONFIG_QNX4FS_FS is not set | 1329 | # CONFIG_QNX4FS_FS is not set |
1330 | # CONFIG_ROMFS_FS is not set | ||
866 | # CONFIG_SYSV_FS is not set | 1331 | # CONFIG_SYSV_FS is not set |
867 | # CONFIG_UFS_FS is not set | 1332 | # CONFIG_UFS_FS is not set |
868 | 1333 | CONFIG_EXOFS_FS=m | |
869 | # | 1334 | # CONFIG_EXOFS_DEBUG is not set |
870 | # Network File Systems | 1335 | CONFIG_NETWORK_FILESYSTEMS=y |
871 | # | ||
872 | CONFIG_NFS_FS=y | 1336 | CONFIG_NFS_FS=y |
873 | CONFIG_NFS_V3=y | 1337 | CONFIG_NFS_V3=y |
874 | # CONFIG_NFS_V3_ACL is not set | 1338 | # CONFIG_NFS_V3_ACL is not set |
875 | # CONFIG_NFS_V4 is not set | 1339 | # CONFIG_NFS_V4 is not set |
876 | # CONFIG_NFS_DIRECTIO is not set | ||
877 | # CONFIG_NFSD is not set | ||
878 | # CONFIG_ROOT_NFS is not set | 1340 | # CONFIG_ROOT_NFS is not set |
1341 | # CONFIG_NFSD is not set | ||
879 | CONFIG_LOCKD=y | 1342 | CONFIG_LOCKD=y |
880 | CONFIG_LOCKD_V4=y | 1343 | CONFIG_LOCKD_V4=y |
1344 | CONFIG_EXPORTFS=m | ||
881 | CONFIG_NFS_COMMON=y | 1345 | CONFIG_NFS_COMMON=y |
882 | CONFIG_SUNRPC=y | 1346 | CONFIG_SUNRPC=y |
883 | CONFIG_SUNRPC_GSS=y | 1347 | CONFIG_SUNRPC_GSS=y |
884 | # CONFIG_SUNRPC_BIND34 is not set | ||
885 | CONFIG_RPCSEC_GSS_KRB5=y | 1348 | CONFIG_RPCSEC_GSS_KRB5=y |
886 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1349 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
887 | # CONFIG_SMB_FS is not set | 1350 | # CONFIG_SMB_FS is not set |
@@ -911,36 +1374,38 @@ CONFIG_SGI_PARTITION=y | |||
911 | # CONFIG_KARMA_PARTITION is not set | 1374 | # CONFIG_KARMA_PARTITION is not set |
912 | # CONFIG_EFI_PARTITION is not set | 1375 | # CONFIG_EFI_PARTITION is not set |
913 | # CONFIG_SYSV68_PARTITION is not set | 1376 | # CONFIG_SYSV68_PARTITION is not set |
914 | |||
915 | # | ||
916 | # Native Language Support | ||
917 | # | ||
918 | # CONFIG_NLS is not set | 1377 | # CONFIG_NLS is not set |
919 | |||
920 | # | ||
921 | # Distributed Lock Manager | ||
922 | # | ||
923 | CONFIG_DLM=m | 1378 | CONFIG_DLM=m |
924 | # CONFIG_DLM_DEBUG is not set | 1379 | # CONFIG_DLM_DEBUG is not set |
925 | 1380 | ||
926 | # | 1381 | # |
927 | # Profiling support | ||
928 | # | ||
929 | # CONFIG_PROFILING is not set | ||
930 | |||
931 | # | ||
932 | # Kernel hacking | 1382 | # Kernel hacking |
933 | # | 1383 | # |
934 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1384 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
935 | # CONFIG_PRINTK_TIME is not set | 1385 | # CONFIG_PRINTK_TIME is not set |
1386 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
936 | CONFIG_ENABLE_MUST_CHECK=y | 1387 | CONFIG_ENABLE_MUST_CHECK=y |
1388 | CONFIG_FRAME_WARN=2048 | ||
937 | # CONFIG_MAGIC_SYSRQ is not set | 1389 | # CONFIG_MAGIC_SYSRQ is not set |
1390 | # CONFIG_STRIP_ASM_SYMS is not set | ||
938 | # CONFIG_UNUSED_SYMBOLS is not set | 1391 | # CONFIG_UNUSED_SYMBOLS is not set |
939 | # CONFIG_DEBUG_FS is not set | 1392 | # CONFIG_DEBUG_FS is not set |
940 | # CONFIG_HEADERS_CHECK is not set | 1393 | # CONFIG_HEADERS_CHECK is not set |
941 | # CONFIG_DEBUG_KERNEL is not set | 1394 | # CONFIG_DEBUG_KERNEL is not set |
942 | CONFIG_CROSSCOMPILE=y | 1395 | # CONFIG_DEBUG_MEMORY_INIT is not set |
943 | CONFIG_CMDLINE="" | 1396 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set |
1397 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1398 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1399 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1400 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1401 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1402 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1403 | CONFIG_TRACING_SUPPORT=y | ||
1404 | # CONFIG_FTRACE is not set | ||
1405 | # CONFIG_SAMPLES is not set | ||
1406 | CONFIG_HAVE_ARCH_KGDB=y | ||
1407 | CONFIG_EARLY_PRINTK=y | ||
1408 | # CONFIG_CMDLINE_BOOL is not set | ||
944 | 1409 | ||
945 | # | 1410 | # |
946 | # Security options | 1411 | # Security options |
@@ -948,65 +1413,140 @@ CONFIG_CMDLINE="" | |||
948 | CONFIG_KEYS=y | 1413 | CONFIG_KEYS=y |
949 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1414 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
950 | # CONFIG_SECURITY is not set | 1415 | # CONFIG_SECURITY is not set |
951 | CONFIG_XOR_BLOCKS=m | 1416 | CONFIG_SECURITYFS=y |
952 | CONFIG_ASYNC_CORE=m | 1417 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
953 | CONFIG_ASYNC_MEMCPY=m | 1418 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
954 | CONFIG_ASYNC_XOR=m | 1419 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1420 | CONFIG_DEFAULT_SECURITY_DAC=y | ||
1421 | CONFIG_DEFAULT_SECURITY="" | ||
1422 | CONFIG_XOR_BLOCKS=y | ||
1423 | CONFIG_ASYNC_CORE=y | ||
1424 | CONFIG_ASYNC_MEMCPY=y | ||
1425 | CONFIG_ASYNC_XOR=y | ||
1426 | CONFIG_ASYNC_PQ=y | ||
1427 | CONFIG_ASYNC_RAID6_RECOV=y | ||
955 | CONFIG_CRYPTO=y | 1428 | CONFIG_CRYPTO=y |
1429 | |||
1430 | # | ||
1431 | # Crypto core or helper | ||
1432 | # | ||
1433 | CONFIG_CRYPTO_FIPS=y | ||
956 | CONFIG_CRYPTO_ALGAPI=y | 1434 | CONFIG_CRYPTO_ALGAPI=y |
957 | CONFIG_CRYPTO_ABLKCIPHER=m | 1435 | CONFIG_CRYPTO_ALGAPI2=y |
1436 | CONFIG_CRYPTO_AEAD=m | ||
1437 | CONFIG_CRYPTO_AEAD2=y | ||
958 | CONFIG_CRYPTO_BLKCIPHER=y | 1438 | CONFIG_CRYPTO_BLKCIPHER=y |
1439 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
959 | CONFIG_CRYPTO_HASH=y | 1440 | CONFIG_CRYPTO_HASH=y |
1441 | CONFIG_CRYPTO_HASH2=y | ||
1442 | CONFIG_CRYPTO_RNG=m | ||
1443 | CONFIG_CRYPTO_RNG2=y | ||
1444 | CONFIG_CRYPTO_PCOMP=y | ||
960 | CONFIG_CRYPTO_MANAGER=y | 1445 | CONFIG_CRYPTO_MANAGER=y |
1446 | CONFIG_CRYPTO_MANAGER2=y | ||
1447 | CONFIG_CRYPTO_GF128MUL=m | ||
1448 | CONFIG_CRYPTO_NULL=m | ||
1449 | CONFIG_CRYPTO_WORKQUEUE=y | ||
1450 | CONFIG_CRYPTO_CRYPTD=m | ||
1451 | CONFIG_CRYPTO_AUTHENC=m | ||
1452 | # CONFIG_CRYPTO_TEST is not set | ||
1453 | |||
1454 | # | ||
1455 | # Authenticated Encryption with Associated Data | ||
1456 | # | ||
1457 | CONFIG_CRYPTO_CCM=m | ||
1458 | CONFIG_CRYPTO_GCM=m | ||
1459 | CONFIG_CRYPTO_SEQIV=m | ||
1460 | |||
1461 | # | ||
1462 | # Block modes | ||
1463 | # | ||
1464 | CONFIG_CRYPTO_CBC=y | ||
1465 | CONFIG_CRYPTO_CTR=m | ||
1466 | CONFIG_CRYPTO_CTS=m | ||
1467 | CONFIG_CRYPTO_ECB=m | ||
1468 | CONFIG_CRYPTO_LRW=m | ||
1469 | CONFIG_CRYPTO_PCBC=m | ||
1470 | CONFIG_CRYPTO_XTS=m | ||
1471 | |||
1472 | # | ||
1473 | # Hash modes | ||
1474 | # | ||
961 | CONFIG_CRYPTO_HMAC=y | 1475 | CONFIG_CRYPTO_HMAC=y |
962 | CONFIG_CRYPTO_XCBC=m | 1476 | CONFIG_CRYPTO_XCBC=m |
963 | CONFIG_CRYPTO_NULL=m | 1477 | CONFIG_CRYPTO_VMAC=m |
1478 | |||
1479 | # | ||
1480 | # Digest | ||
1481 | # | ||
1482 | CONFIG_CRYPTO_CRC32C=m | ||
1483 | CONFIG_CRYPTO_GHASH=m | ||
964 | CONFIG_CRYPTO_MD4=m | 1484 | CONFIG_CRYPTO_MD4=m |
965 | CONFIG_CRYPTO_MD5=y | 1485 | CONFIG_CRYPTO_MD5=y |
1486 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1487 | CONFIG_CRYPTO_RMD128=m | ||
1488 | CONFIG_CRYPTO_RMD160=m | ||
1489 | CONFIG_CRYPTO_RMD256=m | ||
1490 | CONFIG_CRYPTO_RMD320=m | ||
966 | CONFIG_CRYPTO_SHA1=m | 1491 | CONFIG_CRYPTO_SHA1=m |
967 | CONFIG_CRYPTO_SHA256=m | 1492 | CONFIG_CRYPTO_SHA256=m |
968 | CONFIG_CRYPTO_SHA512=m | 1493 | CONFIG_CRYPTO_SHA512=m |
969 | CONFIG_CRYPTO_WP512=m | ||
970 | CONFIG_CRYPTO_TGR192=m | 1494 | CONFIG_CRYPTO_TGR192=m |
971 | CONFIG_CRYPTO_GF128MUL=m | 1495 | CONFIG_CRYPTO_WP512=m |
972 | CONFIG_CRYPTO_ECB=m | 1496 | |
973 | CONFIG_CRYPTO_CBC=y | 1497 | # |
974 | CONFIG_CRYPTO_PCBC=m | 1498 | # Ciphers |
975 | CONFIG_CRYPTO_LRW=m | 1499 | # |
976 | CONFIG_CRYPTO_CRYPTD=m | ||
977 | CONFIG_CRYPTO_DES=y | ||
978 | CONFIG_CRYPTO_FCRYPT=m | ||
979 | CONFIG_CRYPTO_BLOWFISH=m | ||
980 | CONFIG_CRYPTO_TWOFISH=m | ||
981 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
982 | CONFIG_CRYPTO_SERPENT=m | ||
983 | CONFIG_CRYPTO_AES=m | 1500 | CONFIG_CRYPTO_AES=m |
1501 | CONFIG_CRYPTO_ANUBIS=m | ||
1502 | CONFIG_CRYPTO_ARC4=m | ||
1503 | CONFIG_CRYPTO_BLOWFISH=m | ||
1504 | CONFIG_CRYPTO_CAMELLIA=m | ||
984 | CONFIG_CRYPTO_CAST5=m | 1505 | CONFIG_CRYPTO_CAST5=m |
985 | CONFIG_CRYPTO_CAST6=m | 1506 | CONFIG_CRYPTO_CAST6=m |
986 | CONFIG_CRYPTO_TEA=m | 1507 | CONFIG_CRYPTO_DES=y |
987 | CONFIG_CRYPTO_ARC4=m | 1508 | CONFIG_CRYPTO_FCRYPT=m |
988 | CONFIG_CRYPTO_KHAZAD=m | 1509 | CONFIG_CRYPTO_KHAZAD=m |
989 | CONFIG_CRYPTO_ANUBIS=m | 1510 | CONFIG_CRYPTO_SALSA20=m |
1511 | CONFIG_CRYPTO_SEED=m | ||
1512 | CONFIG_CRYPTO_SERPENT=m | ||
1513 | CONFIG_CRYPTO_TEA=m | ||
1514 | CONFIG_CRYPTO_TWOFISH=m | ||
1515 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1516 | |||
1517 | # | ||
1518 | # Compression | ||
1519 | # | ||
990 | CONFIG_CRYPTO_DEFLATE=m | 1520 | CONFIG_CRYPTO_DEFLATE=m |
991 | CONFIG_CRYPTO_MICHAEL_MIC=m | 1521 | CONFIG_CRYPTO_ZLIB=m |
992 | CONFIG_CRYPTO_CRC32C=m | 1522 | CONFIG_CRYPTO_LZO=m |
993 | CONFIG_CRYPTO_CAMELLIA=m | 1523 | |
994 | # CONFIG_CRYPTO_TEST is not set | 1524 | # |
1525 | # Random Number Generation | ||
1526 | # | ||
1527 | CONFIG_CRYPTO_ANSI_CPRNG=m | ||
995 | CONFIG_CRYPTO_HW=y | 1528 | CONFIG_CRYPTO_HW=y |
1529 | CONFIG_CRYPTO_DEV_HIFN_795X=m | ||
1530 | # CONFIG_CRYPTO_DEV_HIFN_795X_RNG is not set | ||
1531 | # CONFIG_BINARY_PRINTF is not set | ||
996 | 1532 | ||
997 | # | 1533 | # |
998 | # Library routines | 1534 | # Library routines |
999 | # | 1535 | # |
1000 | CONFIG_BITREVERSE=y | 1536 | CONFIG_BITREVERSE=y |
1537 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
1001 | CONFIG_CRC_CCITT=m | 1538 | CONFIG_CRC_CCITT=m |
1002 | # CONFIG_CRC16 is not set | 1539 | CONFIG_CRC16=y |
1003 | # CONFIG_CRC_ITU_T is not set | 1540 | CONFIG_CRC_T10DIF=m |
1541 | CONFIG_CRC_ITU_T=m | ||
1004 | CONFIG_CRC32=y | 1542 | CONFIG_CRC32=y |
1005 | # CONFIG_CRC7 is not set | 1543 | CONFIG_CRC7=m |
1006 | CONFIG_LIBCRC32C=m | 1544 | CONFIG_LIBCRC32C=m |
1007 | CONFIG_ZLIB_INFLATE=m | 1545 | CONFIG_ZLIB_INFLATE=m |
1008 | CONFIG_ZLIB_DEFLATE=m | 1546 | CONFIG_ZLIB_DEFLATE=m |
1009 | CONFIG_PLIST=y | 1547 | CONFIG_LZO_COMPRESS=m |
1548 | CONFIG_LZO_DECOMPRESS=m | ||
1010 | CONFIG_HAS_IOMEM=y | 1549 | CONFIG_HAS_IOMEM=y |
1011 | CONFIG_HAS_IOPORT=y | 1550 | CONFIG_HAS_IOPORT=y |
1012 | CONFIG_HAS_DMA=y | 1551 | CONFIG_HAS_DMA=y |
1552 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/ip28_defconfig b/arch/mips/configs/ip28_defconfig index 539dccb0345d..dab2e5aaadaf 100644 --- a/arch/mips/configs/ip28_defconfig +++ b/arch/mips/configs/ip28_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -816,7 +815,7 @@ CONFIG_MAGIC_SYSRQ=y | |||
816 | # CONFIG_HEADERS_CHECK is not set | 815 | # CONFIG_HEADERS_CHECK is not set |
817 | # CONFIG_DEBUG_KERNEL is not set | 816 | # CONFIG_DEBUG_KERNEL is not set |
818 | # CONFIG_SAMPLES is not set | 817 | # CONFIG_SAMPLES is not set |
819 | CONFIG_CMDLINE="" | 818 | # CONFIG_CMDLINE_BOOL is not set |
820 | 819 | ||
821 | # | 820 | # |
822 | # Security options | 821 | # Security options |
diff --git a/arch/mips/configs/ip32_defconfig b/arch/mips/configs/ip32_defconfig index d934bdefb393..1841c88d3d24 100644 --- a/arch/mips/configs/ip32_defconfig +++ b/arch/mips/configs/ip32_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -1126,7 +1125,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y | |||
1126 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | 1125 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set |
1127 | # CONFIG_SAMPLES is not set | 1126 | # CONFIG_SAMPLES is not set |
1128 | CONFIG_HAVE_ARCH_KGDB=y | 1127 | CONFIG_HAVE_ARCH_KGDB=y |
1129 | CONFIG_CMDLINE="" | 1128 | # CONFIG_CMDLINE_BOOL is not set |
1130 | 1129 | ||
1131 | # | 1130 | # |
1132 | # Security options | 1131 | # Security options |
diff --git a/arch/mips/configs/jazz_defconfig b/arch/mips/configs/jazz_defconfig index d22df61833a8..14c2ab3b2674 100644 --- a/arch/mips/configs/jazz_defconfig +++ b/arch/mips/configs/jazz_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | CONFIG_MACH_JAZZ=y | 27 | CONFIG_MACH_JAZZ=y |
@@ -1374,7 +1373,7 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
1374 | # CONFIG_DEBUG_KERNEL is not set | 1373 | # CONFIG_DEBUG_KERNEL is not set |
1375 | CONFIG_LOG_BUF_SHIFT=14 | 1374 | CONFIG_LOG_BUF_SHIFT=14 |
1376 | CONFIG_CROSSCOMPILE=y | 1375 | CONFIG_CROSSCOMPILE=y |
1377 | CONFIG_CMDLINE="" | 1376 | # CONFIG_CMDLINE_BOOL is not set |
1378 | 1377 | ||
1379 | # | 1378 | # |
1380 | # Security options | 1379 | # Security options |
diff --git a/arch/mips/configs/jmr3927_defconfig b/arch/mips/configs/jmr3927_defconfig index 5380f1f582d9..4d66c44cced8 100644 --- a/arch/mips/configs/jmr3927_defconfig +++ b/arch/mips/configs/jmr3927_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -835,7 +834,7 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y | |||
835 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | 834 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set |
836 | # CONFIG_SAMPLES is not set | 835 | # CONFIG_SAMPLES is not set |
837 | CONFIG_HAVE_ARCH_KGDB=y | 836 | CONFIG_HAVE_ARCH_KGDB=y |
838 | CONFIG_CMDLINE="" | 837 | # CONFIG_CMDLINE_BOOL is not set |
839 | 838 | ||
840 | # | 839 | # |
841 | # Security options | 840 | # Security options |
diff --git a/arch/mips/configs/lasat_defconfig b/arch/mips/configs/lasat_defconfig index 044074db7e55..08d481e3d42a 100644 --- a/arch/mips/configs/lasat_defconfig +++ b/arch/mips/configs/lasat_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_MIPS_COBALT is not set | 12 | # CONFIG_MIPS_COBALT is not set |
14 | # CONFIG_MACH_DECSTATION is not set | 13 | # CONFIG_MACH_DECSTATION is not set |
15 | # CONFIG_MACH_JAZZ is not set | 14 | # CONFIG_MACH_JAZZ is not set |
@@ -798,7 +797,7 @@ CONFIG_MAGIC_SYSRQ=y | |||
798 | # CONFIG_HEADERS_CHECK is not set | 797 | # CONFIG_HEADERS_CHECK is not set |
799 | # CONFIG_DEBUG_KERNEL is not set | 798 | # CONFIG_DEBUG_KERNEL is not set |
800 | CONFIG_CROSSCOMPILE=y | 799 | CONFIG_CROSSCOMPILE=y |
801 | CONFIG_CMDLINE="" | 800 | # CONFIG_CMDLINE_BOOL is not set |
802 | 801 | ||
803 | # | 802 | # |
804 | # Security options | 803 | # Security options |
diff --git a/arch/mips/configs/lemote2f_defconfig b/arch/mips/configs/lemote2f_defconfig new file mode 100644 index 000000000000..4caa0e0fee81 --- /dev/null +++ b/arch/mips/configs/lemote2f_defconfig | |||
@@ -0,0 +1,2211 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.33-rc2 | ||
4 | # Mon Jan 4 13:41:09 2010 | ||
5 | # | ||
6 | CONFIG_MIPS=y | ||
7 | |||
8 | # | ||
9 | # Machine selection | ||
10 | # | ||
11 | # CONFIG_MACH_ALCHEMY is not set | ||
12 | # CONFIG_AR7 is not set | ||
13 | # CONFIG_BCM47XX is not set | ||
14 | # CONFIG_BCM63XX is not set | ||
15 | # CONFIG_MIPS_COBALT is not set | ||
16 | # CONFIG_MACH_DECSTATION is not set | ||
17 | # CONFIG_MACH_JAZZ is not set | ||
18 | # CONFIG_LASAT is not set | ||
19 | CONFIG_MACH_LOONGSON=y | ||
20 | # CONFIG_MIPS_MALTA is not set | ||
21 | # CONFIG_MIPS_SIM is not set | ||
22 | # CONFIG_NEC_MARKEINS is not set | ||
23 | # CONFIG_MACH_VR41XX is not set | ||
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
26 | # CONFIG_PNX8550_JBS is not set | ||
27 | # CONFIG_PNX8550_STB810 is not set | ||
28 | # CONFIG_PMC_MSP is not set | ||
29 | # CONFIG_PMC_YOSEMITE is not set | ||
30 | # CONFIG_POWERTV is not set | ||
31 | # CONFIG_SGI_IP22 is not set | ||
32 | # CONFIG_SGI_IP27 is not set | ||
33 | # CONFIG_SGI_IP28 is not set | ||
34 | # CONFIG_SGI_IP32 is not set | ||
35 | # CONFIG_SIBYTE_CRHINE is not set | ||
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
37 | # CONFIG_SIBYTE_CRHONE is not set | ||
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
43 | # CONFIG_SNI_RM is not set | ||
44 | # CONFIG_MACH_TX39XX is not set | ||
45 | # CONFIG_MACH_TX49XX is not set | ||
46 | # CONFIG_MIKROTIK_RB532 is not set | ||
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
51 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
52 | # CONFIG_LEMOTE_FULOONG2E is not set | ||
53 | CONFIG_LEMOTE_MACH2F=y | ||
54 | CONFIG_CS5536=y | ||
55 | CONFIG_CS5536_MFGPT=y | ||
56 | CONFIG_LOONGSON_SUSPEND=y | ||
57 | CONFIG_LOONGSON_UART_BASE=y | ||
58 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
59 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
60 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
61 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
62 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
63 | CONFIG_GENERIC_HWEIGHT=y | ||
64 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
65 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
66 | CONFIG_GENERIC_TIME=y | ||
67 | CONFIG_GENERIC_CMOS_UPDATE=y | ||
68 | CONFIG_SCHED_OMIT_FRAME_POINTER=y | ||
69 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
70 | CONFIG_DMA_NONCOHERENT=y | ||
71 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | ||
72 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
73 | CONFIG_I8259=y | ||
74 | # CONFIG_NO_IOPORT is not set | ||
75 | CONFIG_GENERIC_ISA_DMA=y | ||
76 | CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y | ||
77 | # CONFIG_CPU_BIG_ENDIAN is not set | ||
78 | CONFIG_CPU_LITTLE_ENDIAN=y | ||
79 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | ||
80 | CONFIG_IRQ_CPU=y | ||
81 | CONFIG_BOOT_ELF32=y | ||
82 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | ||
83 | |||
84 | # | ||
85 | # CPU selection | ||
86 | # | ||
87 | # CONFIG_CPU_LOONGSON2E is not set | ||
88 | CONFIG_CPU_LOONGSON2F=y | ||
89 | # CONFIG_CPU_MIPS32_R1 is not set | ||
90 | # CONFIG_CPU_MIPS32_R2 is not set | ||
91 | # CONFIG_CPU_MIPS64_R1 is not set | ||
92 | # CONFIG_CPU_MIPS64_R2 is not set | ||
93 | # CONFIG_CPU_R3000 is not set | ||
94 | # CONFIG_CPU_TX39XX is not set | ||
95 | # CONFIG_CPU_VR41XX is not set | ||
96 | # CONFIG_CPU_R4300 is not set | ||
97 | # CONFIG_CPU_R4X00 is not set | ||
98 | # CONFIG_CPU_TX49XX is not set | ||
99 | # CONFIG_CPU_R5000 is not set | ||
100 | # CONFIG_CPU_R5432 is not set | ||
101 | # CONFIG_CPU_R5500 is not set | ||
102 | # CONFIG_CPU_R6000 is not set | ||
103 | # CONFIG_CPU_NEVADA is not set | ||
104 | # CONFIG_CPU_R8000 is not set | ||
105 | # CONFIG_CPU_R10000 is not set | ||
106 | # CONFIG_CPU_RM7000 is not set | ||
107 | # CONFIG_CPU_RM9000 is not set | ||
108 | # CONFIG_CPU_SB1 is not set | ||
109 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
110 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
111 | CONFIG_CPU_LOONGSON2=y | ||
112 | CONFIG_SYS_HAS_CPU_LOONGSON2F=y | ||
113 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | ||
114 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y | ||
115 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | ||
116 | CONFIG_CPU_SUPPORTS_64BIT_KERNEL=y | ||
117 | CONFIG_CPU_SUPPORTS_CPUFREQ=y | ||
118 | CONFIG_CPU_SUPPORTS_ADDRWINCFG=y | ||
119 | CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED=y | ||
120 | |||
121 | # | ||
122 | # Kernel type | ||
123 | # | ||
124 | # CONFIG_32BIT is not set | ||
125 | CONFIG_64BIT=y | ||
126 | # CONFIG_PAGE_SIZE_4KB is not set | ||
127 | # CONFIG_PAGE_SIZE_8KB is not set | ||
128 | CONFIG_PAGE_SIZE_16KB=y | ||
129 | # CONFIG_PAGE_SIZE_32KB is not set | ||
130 | # CONFIG_PAGE_SIZE_64KB is not set | ||
131 | CONFIG_BOARD_SCACHE=y | ||
132 | CONFIG_MIPS_MT_DISABLED=y | ||
133 | # CONFIG_MIPS_MT_SMP is not set | ||
134 | # CONFIG_MIPS_MT_SMTC is not set | ||
135 | CONFIG_CPU_HAS_WB=y | ||
136 | CONFIG_CPU_HAS_SYNC=y | ||
137 | CONFIG_GENERIC_HARDIRQS=y | ||
138 | CONFIG_GENERIC_IRQ_PROBE=y | ||
139 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | ||
140 | CONFIG_SYS_SUPPORTS_HIGHMEM=y | ||
141 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
142 | CONFIG_SELECT_MEMORY_MODEL=y | ||
143 | # CONFIG_FLATMEM_MANUAL is not set | ||
144 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
145 | CONFIG_SPARSEMEM_MANUAL=y | ||
146 | CONFIG_SPARSEMEM=y | ||
147 | CONFIG_HAVE_MEMORY_PRESENT=y | ||
148 | CONFIG_SPARSEMEM_STATIC=y | ||
149 | CONFIG_PAGEFLAGS_EXTENDED=y | ||
150 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
151 | CONFIG_PHYS_ADDR_T_64BIT=y | ||
152 | CONFIG_ZONE_DMA_FLAG=0 | ||
153 | CONFIG_VIRT_TO_BUS=y | ||
154 | # CONFIG_KSM is not set | ||
155 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
156 | CONFIG_TICK_ONESHOT=y | ||
157 | CONFIG_NO_HZ=y | ||
158 | CONFIG_HIGH_RES_TIMERS=y | ||
159 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
160 | # CONFIG_HZ_48 is not set | ||
161 | # CONFIG_HZ_100 is not set | ||
162 | # CONFIG_HZ_128 is not set | ||
163 | CONFIG_HZ_250=y | ||
164 | # CONFIG_HZ_256 is not set | ||
165 | # CONFIG_HZ_1000 is not set | ||
166 | # CONFIG_HZ_1024 is not set | ||
167 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | ||
168 | CONFIG_HZ=250 | ||
169 | # CONFIG_PREEMPT_NONE is not set | ||
170 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
171 | CONFIG_PREEMPT=y | ||
172 | CONFIG_KEXEC=y | ||
173 | # CONFIG_SECCOMP is not set | ||
174 | CONFIG_LOCKDEP_SUPPORT=y | ||
175 | CONFIG_STACKTRACE_SUPPORT=y | ||
176 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
177 | CONFIG_CONSTRUCTORS=y | ||
178 | |||
179 | # | ||
180 | # General setup | ||
181 | # | ||
182 | CONFIG_EXPERIMENTAL=y | ||
183 | CONFIG_BROKEN_ON_SMP=y | ||
184 | CONFIG_LOCK_KERNEL=y | ||
185 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
186 | CONFIG_LOCALVERSION="" | ||
187 | # CONFIG_LOCALVERSION_AUTO is not set | ||
188 | CONFIG_HAVE_KERNEL_GZIP=y | ||
189 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
190 | CONFIG_HAVE_KERNEL_LZMA=y | ||
191 | CONFIG_KERNEL_GZIP=y | ||
192 | # CONFIG_KERNEL_BZIP2 is not set | ||
193 | # CONFIG_KERNEL_LZMA is not set | ||
194 | CONFIG_SWAP=y | ||
195 | CONFIG_SYSVIPC=y | ||
196 | CONFIG_SYSVIPC_SYSCTL=y | ||
197 | # CONFIG_POSIX_MQUEUE is not set | ||
198 | CONFIG_BSD_PROCESS_ACCT=y | ||
199 | CONFIG_BSD_PROCESS_ACCT_V3=y | ||
200 | # CONFIG_TASKSTATS is not set | ||
201 | CONFIG_AUDIT=y | ||
202 | |||
203 | # | ||
204 | # RCU Subsystem | ||
205 | # | ||
206 | CONFIG_TREE_RCU=y | ||
207 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
208 | # CONFIG_TINY_RCU is not set | ||
209 | # CONFIG_RCU_TRACE is not set | ||
210 | CONFIG_RCU_FANOUT=64 | ||
211 | # CONFIG_RCU_FANOUT_EXACT is not set | ||
212 | # CONFIG_TREE_RCU_TRACE is not set | ||
213 | CONFIG_IKCONFIG=y | ||
214 | CONFIG_IKCONFIG_PROC=y | ||
215 | CONFIG_LOG_BUF_SHIFT=15 | ||
216 | # CONFIG_GROUP_SCHED is not set | ||
217 | # CONFIG_CGROUPS is not set | ||
218 | CONFIG_SYSFS_DEPRECATED=y | ||
219 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
220 | # CONFIG_RELAY is not set | ||
221 | # CONFIG_NAMESPACES is not set | ||
222 | CONFIG_BLK_DEV_INITRD=y | ||
223 | CONFIG_INITRAMFS_SOURCE="" | ||
224 | CONFIG_RD_GZIP=y | ||
225 | CONFIG_RD_BZIP2=y | ||
226 | CONFIG_RD_LZMA=y | ||
227 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
228 | CONFIG_SYSCTL=y | ||
229 | CONFIG_ANON_INODES=y | ||
230 | CONFIG_EMBEDDED=y | ||
231 | CONFIG_SYSCTL_SYSCALL=y | ||
232 | CONFIG_KALLSYMS=y | ||
233 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
234 | CONFIG_HOTPLUG=y | ||
235 | CONFIG_PRINTK=y | ||
236 | CONFIG_BUG=y | ||
237 | CONFIG_ELF_CORE=y | ||
238 | CONFIG_PCSPKR_PLATFORM=y | ||
239 | CONFIG_BASE_FULL=y | ||
240 | CONFIG_FUTEX=y | ||
241 | CONFIG_EPOLL=y | ||
242 | CONFIG_SIGNALFD=y | ||
243 | CONFIG_TIMERFD=y | ||
244 | CONFIG_EVENTFD=y | ||
245 | CONFIG_SHMEM=y | ||
246 | CONFIG_AIO=y | ||
247 | |||
248 | # | ||
249 | # Kernel Performance Events And Counters | ||
250 | # | ||
251 | CONFIG_VM_EVENT_COUNTERS=y | ||
252 | CONFIG_PCI_QUIRKS=y | ||
253 | CONFIG_SLUB_DEBUG=y | ||
254 | CONFIG_COMPAT_BRK=y | ||
255 | # CONFIG_SLAB is not set | ||
256 | CONFIG_SLUB=y | ||
257 | # CONFIG_SLOB is not set | ||
258 | CONFIG_PROFILING=y | ||
259 | CONFIG_TRACEPOINTS=y | ||
260 | CONFIG_OPROFILE=m | ||
261 | CONFIG_HAVE_OPROFILE=y | ||
262 | CONFIG_HAVE_SYSCALL_WRAPPERS=y | ||
263 | |||
264 | # | ||
265 | # GCOV-based kernel profiling | ||
266 | # | ||
267 | # CONFIG_GCOV_KERNEL is not set | ||
268 | CONFIG_SLOW_WORK=y | ||
269 | # CONFIG_SLOW_WORK_DEBUG is not set | ||
270 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
271 | CONFIG_SLABINFO=y | ||
272 | CONFIG_RT_MUTEXES=y | ||
273 | CONFIG_BASE_SMALL=0 | ||
274 | CONFIG_MODULES=y | ||
275 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
276 | CONFIG_MODULE_UNLOAD=y | ||
277 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
278 | CONFIG_MODVERSIONS=y | ||
279 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
280 | CONFIG_BLOCK=y | ||
281 | CONFIG_BLK_DEV_BSG=y | ||
282 | CONFIG_BLK_DEV_INTEGRITY=y | ||
283 | CONFIG_BLOCK_COMPAT=y | ||
284 | |||
285 | # | ||
286 | # IO Schedulers | ||
287 | # | ||
288 | CONFIG_IOSCHED_NOOP=y | ||
289 | CONFIG_IOSCHED_DEADLINE=m | ||
290 | CONFIG_IOSCHED_CFQ=y | ||
291 | # CONFIG_DEFAULT_DEADLINE is not set | ||
292 | CONFIG_DEFAULT_CFQ=y | ||
293 | # CONFIG_DEFAULT_NOOP is not set | ||
294 | CONFIG_DEFAULT_IOSCHED="cfq" | ||
295 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
296 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
297 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
298 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
299 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
300 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
301 | # CONFIG_INLINE_SPIN_UNLOCK is not set | ||
302 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
303 | # CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set | ||
304 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
305 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
306 | # CONFIG_INLINE_READ_LOCK is not set | ||
307 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
308 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
309 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
310 | # CONFIG_INLINE_READ_UNLOCK is not set | ||
311 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
312 | # CONFIG_INLINE_READ_UNLOCK_IRQ is not set | ||
313 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
314 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
315 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
316 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
317 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
318 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
319 | # CONFIG_INLINE_WRITE_UNLOCK is not set | ||
320 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
321 | # CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set | ||
322 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
323 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
324 | CONFIG_FREEZER=y | ||
325 | |||
326 | # | ||
327 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | ||
328 | # | ||
329 | CONFIG_HW_HAS_PCI=y | ||
330 | CONFIG_PCI=y | ||
331 | CONFIG_PCI_DOMAINS=y | ||
332 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
333 | CONFIG_PCI_LEGACY=y | ||
334 | # CONFIG_PCI_STUB is not set | ||
335 | # CONFIG_PCI_IOV is not set | ||
336 | CONFIG_ISA=y | ||
337 | CONFIG_MMU=y | ||
338 | # CONFIG_PCCARD is not set | ||
339 | # CONFIG_HOTPLUG_PCI is not set | ||
340 | |||
341 | # | ||
342 | # Executable file formats | ||
343 | # | ||
344 | CONFIG_BINFMT_ELF=y | ||
345 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
346 | # CONFIG_HAVE_AOUT is not set | ||
347 | CONFIG_BINFMT_MISC=m | ||
348 | CONFIG_MIPS32_COMPAT=y | ||
349 | CONFIG_COMPAT=y | ||
350 | CONFIG_SYSVIPC_COMPAT=y | ||
351 | CONFIG_MIPS32_O32=y | ||
352 | CONFIG_MIPS32_N32=y | ||
353 | CONFIG_BINFMT_ELF32=y | ||
354 | |||
355 | # | ||
356 | # Power management options | ||
357 | # | ||
358 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y | ||
359 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
360 | CONFIG_PM=y | ||
361 | # CONFIG_PM_DEBUG is not set | ||
362 | CONFIG_PM_SLEEP=y | ||
363 | CONFIG_SUSPEND=y | ||
364 | CONFIG_SUSPEND_FREEZER=y | ||
365 | CONFIG_HIBERNATION_NVS=y | ||
366 | CONFIG_HIBERNATION=y | ||
367 | CONFIG_PM_STD_PARTITION="/dev/hda3" | ||
368 | CONFIG_PM_RUNTIME=y | ||
369 | CONFIG_MIPS_EXTERNAL_TIMER=y | ||
370 | CONFIG_MIPS_CPUFREQ=y | ||
371 | |||
372 | # | ||
373 | # CPU Frequency scaling | ||
374 | # | ||
375 | CONFIG_CPU_FREQ=y | ||
376 | CONFIG_CPU_FREQ_TABLE=y | ||
377 | CONFIG_CPU_FREQ_DEBUG=y | ||
378 | CONFIG_CPU_FREQ_STAT=m | ||
379 | CONFIG_CPU_FREQ_STAT_DETAILS=y | ||
380 | # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set | ||
381 | # CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set | ||
382 | # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set | ||
383 | CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y | ||
384 | # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set | ||
385 | CONFIG_CPU_FREQ_GOV_PERFORMANCE=y | ||
386 | CONFIG_CPU_FREQ_GOV_POWERSAVE=m | ||
387 | CONFIG_CPU_FREQ_GOV_USERSPACE=m | ||
388 | CONFIG_CPU_FREQ_GOV_ONDEMAND=y | ||
389 | CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m | ||
390 | |||
391 | # | ||
392 | # CPUFreq processor drivers | ||
393 | # | ||
394 | CONFIG_LOONGSON2_CPUFREQ=m | ||
395 | CONFIG_NET=y | ||
396 | |||
397 | # | ||
398 | # Networking options | ||
399 | # | ||
400 | CONFIG_PACKET=y | ||
401 | CONFIG_PACKET_MMAP=y | ||
402 | CONFIG_UNIX=y | ||
403 | CONFIG_XFRM=y | ||
404 | CONFIG_XFRM_USER=m | ||
405 | # CONFIG_XFRM_SUB_POLICY is not set | ||
406 | # CONFIG_XFRM_MIGRATE is not set | ||
407 | # CONFIG_XFRM_STATISTICS is not set | ||
408 | CONFIG_NET_KEY=m | ||
409 | # CONFIG_NET_KEY_MIGRATE is not set | ||
410 | CONFIG_INET=y | ||
411 | CONFIG_IP_MULTICAST=y | ||
412 | CONFIG_IP_ADVANCED_ROUTER=y | ||
413 | CONFIG_ASK_IP_FIB_HASH=y | ||
414 | # CONFIG_IP_FIB_TRIE is not set | ||
415 | CONFIG_IP_FIB_HASH=y | ||
416 | CONFIG_IP_MULTIPLE_TABLES=y | ||
417 | CONFIG_IP_ROUTE_MULTIPATH=y | ||
418 | CONFIG_IP_ROUTE_VERBOSE=y | ||
419 | # CONFIG_IP_PNP is not set | ||
420 | CONFIG_NET_IPIP=m | ||
421 | CONFIG_NET_IPGRE=m | ||
422 | # CONFIG_NET_IPGRE_BROADCAST is not set | ||
423 | CONFIG_IP_MROUTE=y | ||
424 | CONFIG_IP_PIMSM_V1=y | ||
425 | CONFIG_IP_PIMSM_V2=y | ||
426 | CONFIG_ARPD=y | ||
427 | CONFIG_SYN_COOKIES=y | ||
428 | # CONFIG_INET_AH is not set | ||
429 | # CONFIG_INET_ESP is not set | ||
430 | # CONFIG_INET_IPCOMP is not set | ||
431 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
432 | CONFIG_INET_TUNNEL=m | ||
433 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | ||
434 | CONFIG_INET_XFRM_MODE_TUNNEL=m | ||
435 | CONFIG_INET_XFRM_MODE_BEET=m | ||
436 | CONFIG_INET_LRO=y | ||
437 | CONFIG_INET_DIAG=y | ||
438 | CONFIG_INET_TCP_DIAG=y | ||
439 | CONFIG_TCP_CONG_ADVANCED=y | ||
440 | CONFIG_TCP_CONG_BIC=y | ||
441 | CONFIG_TCP_CONG_CUBIC=y | ||
442 | CONFIG_TCP_CONG_WESTWOOD=m | ||
443 | CONFIG_TCP_CONG_HTCP=m | ||
444 | # CONFIG_TCP_CONG_HSTCP is not set | ||
445 | # CONFIG_TCP_CONG_HYBLA is not set | ||
446 | # CONFIG_TCP_CONG_VEGAS is not set | ||
447 | # CONFIG_TCP_CONG_SCALABLE is not set | ||
448 | # CONFIG_TCP_CONG_LP is not set | ||
449 | # CONFIG_TCP_CONG_VENO is not set | ||
450 | # CONFIG_TCP_CONG_YEAH is not set | ||
451 | # CONFIG_TCP_CONG_ILLINOIS is not set | ||
452 | CONFIG_DEFAULT_BIC=y | ||
453 | # CONFIG_DEFAULT_CUBIC is not set | ||
454 | # CONFIG_DEFAULT_HTCP is not set | ||
455 | # CONFIG_DEFAULT_VEGAS is not set | ||
456 | # CONFIG_DEFAULT_WESTWOOD is not set | ||
457 | # CONFIG_DEFAULT_RENO is not set | ||
458 | CONFIG_DEFAULT_TCP_CONG="bic" | ||
459 | CONFIG_TCP_MD5SIG=y | ||
460 | CONFIG_IPV6=m | ||
461 | CONFIG_IPV6_PRIVACY=y | ||
462 | CONFIG_IPV6_ROUTER_PREF=y | ||
463 | # CONFIG_IPV6_ROUTE_INFO is not set | ||
464 | # CONFIG_IPV6_OPTIMISTIC_DAD is not set | ||
465 | # CONFIG_INET6_AH is not set | ||
466 | # CONFIG_INET6_ESP is not set | ||
467 | # CONFIG_INET6_IPCOMP is not set | ||
468 | # CONFIG_IPV6_MIP6 is not set | ||
469 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
470 | CONFIG_INET6_TUNNEL=m | ||
471 | CONFIG_INET6_XFRM_MODE_TRANSPORT=m | ||
472 | CONFIG_INET6_XFRM_MODE_TUNNEL=m | ||
473 | CONFIG_INET6_XFRM_MODE_BEET=m | ||
474 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set | ||
475 | CONFIG_IPV6_SIT=m | ||
476 | # CONFIG_IPV6_SIT_6RD is not set | ||
477 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
478 | CONFIG_IPV6_TUNNEL=m | ||
479 | CONFIG_IPV6_MULTIPLE_TABLES=y | ||
480 | CONFIG_IPV6_SUBTREES=y | ||
481 | # CONFIG_IPV6_MROUTE is not set | ||
482 | CONFIG_NETWORK_SECMARK=y | ||
483 | CONFIG_NETFILTER=y | ||
484 | # CONFIG_NETFILTER_DEBUG is not set | ||
485 | CONFIG_NETFILTER_ADVANCED=y | ||
486 | CONFIG_BRIDGE_NETFILTER=y | ||
487 | |||
488 | # | ||
489 | # Core Netfilter Configuration | ||
490 | # | ||
491 | # CONFIG_NETFILTER_NETLINK_QUEUE is not set | ||
492 | # CONFIG_NETFILTER_NETLINK_LOG is not set | ||
493 | # CONFIG_NF_CONNTRACK is not set | ||
494 | # CONFIG_NETFILTER_XTABLES is not set | ||
495 | # CONFIG_IP_VS is not set | ||
496 | |||
497 | # | ||
498 | # IP: Netfilter Configuration | ||
499 | # | ||
500 | # CONFIG_NF_DEFRAG_IPV4 is not set | ||
501 | # CONFIG_IP_NF_QUEUE is not set | ||
502 | # CONFIG_IP_NF_IPTABLES is not set | ||
503 | # CONFIG_IP_NF_ARPTABLES is not set | ||
504 | |||
505 | # | ||
506 | # IPv6: Netfilter Configuration | ||
507 | # | ||
508 | # CONFIG_IP6_NF_QUEUE is not set | ||
509 | # CONFIG_IP6_NF_IPTABLES is not set | ||
510 | # CONFIG_BRIDGE_NF_EBTABLES is not set | ||
511 | # CONFIG_IP_DCCP is not set | ||
512 | # CONFIG_IP_SCTP is not set | ||
513 | # CONFIG_RDS is not set | ||
514 | # CONFIG_TIPC is not set | ||
515 | # CONFIG_ATM is not set | ||
516 | CONFIG_STP=m | ||
517 | CONFIG_BRIDGE=m | ||
518 | # CONFIG_NET_DSA is not set | ||
519 | CONFIG_VLAN_8021Q=m | ||
520 | # CONFIG_VLAN_8021Q_GVRP is not set | ||
521 | # CONFIG_DECNET is not set | ||
522 | CONFIG_LLC=m | ||
523 | # CONFIG_LLC2 is not set | ||
524 | CONFIG_IPX=m | ||
525 | # CONFIG_IPX_INTERN is not set | ||
526 | # CONFIG_ATALK is not set | ||
527 | # CONFIG_X25 is not set | ||
528 | # CONFIG_LAPB is not set | ||
529 | # CONFIG_ECONET is not set | ||
530 | # CONFIG_WAN_ROUTER is not set | ||
531 | # CONFIG_PHONET is not set | ||
532 | # CONFIG_IEEE802154 is not set | ||
533 | CONFIG_NET_SCHED=y | ||
534 | |||
535 | # | ||
536 | # Queueing/Scheduling | ||
537 | # | ||
538 | # CONFIG_NET_SCH_CBQ is not set | ||
539 | # CONFIG_NET_SCH_HTB is not set | ||
540 | # CONFIG_NET_SCH_HFSC is not set | ||
541 | # CONFIG_NET_SCH_PRIO is not set | ||
542 | # CONFIG_NET_SCH_MULTIQ is not set | ||
543 | # CONFIG_NET_SCH_RED is not set | ||
544 | # CONFIG_NET_SCH_SFQ is not set | ||
545 | # CONFIG_NET_SCH_TEQL is not set | ||
546 | # CONFIG_NET_SCH_TBF is not set | ||
547 | # CONFIG_NET_SCH_GRED is not set | ||
548 | # CONFIG_NET_SCH_DSMARK is not set | ||
549 | # CONFIG_NET_SCH_NETEM is not set | ||
550 | # CONFIG_NET_SCH_DRR is not set | ||
551 | # CONFIG_NET_SCH_INGRESS is not set | ||
552 | |||
553 | # | ||
554 | # Classification | ||
555 | # | ||
556 | CONFIG_NET_CLS=y | ||
557 | # CONFIG_NET_CLS_BASIC is not set | ||
558 | # CONFIG_NET_CLS_TCINDEX is not set | ||
559 | # CONFIG_NET_CLS_ROUTE4 is not set | ||
560 | # CONFIG_NET_CLS_FW is not set | ||
561 | # CONFIG_NET_CLS_U32 is not set | ||
562 | # CONFIG_NET_CLS_RSVP is not set | ||
563 | # CONFIG_NET_CLS_RSVP6 is not set | ||
564 | # CONFIG_NET_CLS_FLOW is not set | ||
565 | CONFIG_NET_EMATCH=y | ||
566 | CONFIG_NET_EMATCH_STACK=32 | ||
567 | # CONFIG_NET_EMATCH_CMP is not set | ||
568 | # CONFIG_NET_EMATCH_NBYTE is not set | ||
569 | # CONFIG_NET_EMATCH_U32 is not set | ||
570 | # CONFIG_NET_EMATCH_META is not set | ||
571 | # CONFIG_NET_EMATCH_TEXT is not set | ||
572 | CONFIG_NET_CLS_ACT=y | ||
573 | # CONFIG_NET_ACT_POLICE is not set | ||
574 | # CONFIG_NET_ACT_GACT is not set | ||
575 | # CONFIG_NET_ACT_MIRRED is not set | ||
576 | # CONFIG_NET_ACT_NAT is not set | ||
577 | # CONFIG_NET_ACT_PEDIT is not set | ||
578 | # CONFIG_NET_ACT_SIMP is not set | ||
579 | # CONFIG_NET_ACT_SKBEDIT is not set | ||
580 | CONFIG_NET_SCH_FIFO=y | ||
581 | # CONFIG_DCB is not set | ||
582 | |||
583 | # | ||
584 | # Network testing | ||
585 | # | ||
586 | # CONFIG_NET_PKTGEN is not set | ||
587 | # CONFIG_NET_DROP_MONITOR is not set | ||
588 | # CONFIG_HAMRADIO is not set | ||
589 | # CONFIG_CAN is not set | ||
590 | # CONFIG_IRDA is not set | ||
591 | CONFIG_BT=m | ||
592 | CONFIG_BT_L2CAP=m | ||
593 | CONFIG_BT_SCO=m | ||
594 | CONFIG_BT_RFCOMM=m | ||
595 | CONFIG_BT_RFCOMM_TTY=y | ||
596 | CONFIG_BT_BNEP=m | ||
597 | CONFIG_BT_BNEP_MC_FILTER=y | ||
598 | CONFIG_BT_BNEP_PROTO_FILTER=y | ||
599 | CONFIG_BT_HIDP=m | ||
600 | |||
601 | # | ||
602 | # Bluetooth device drivers | ||
603 | # | ||
604 | CONFIG_BT_HCIBTUSB=m | ||
605 | # CONFIG_BT_HCIBTSDIO is not set | ||
606 | # CONFIG_BT_HCIUART is not set | ||
607 | # CONFIG_BT_HCIBCM203X is not set | ||
608 | # CONFIG_BT_HCIBPA10X is not set | ||
609 | CONFIG_BT_HCIBFUSB=m | ||
610 | CONFIG_BT_HCIVHCI=m | ||
611 | # CONFIG_BT_MRVL is not set | ||
612 | # CONFIG_AF_RXRPC is not set | ||
613 | CONFIG_FIB_RULES=y | ||
614 | CONFIG_WIRELESS=y | ||
615 | CONFIG_WEXT_CORE=y | ||
616 | CONFIG_WEXT_PROC=y | ||
617 | CONFIG_CFG80211=m | ||
618 | # CONFIG_NL80211_TESTMODE is not set | ||
619 | # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set | ||
620 | # CONFIG_CFG80211_REG_DEBUG is not set | ||
621 | CONFIG_CFG80211_DEFAULT_PS=y | ||
622 | # CONFIG_CFG80211_DEBUGFS is not set | ||
623 | # CONFIG_WIRELESS_OLD_REGULATORY is not set | ||
624 | CONFIG_CFG80211_WEXT=y | ||
625 | CONFIG_WIRELESS_EXT_SYSFS=y | ||
626 | CONFIG_LIB80211=m | ||
627 | CONFIG_LIB80211_DEBUG=y | ||
628 | CONFIG_MAC80211=m | ||
629 | # CONFIG_MAC80211_RC_PID is not set | ||
630 | CONFIG_MAC80211_RC_MINSTREL=y | ||
631 | # CONFIG_MAC80211_RC_DEFAULT_PID is not set | ||
632 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y | ||
633 | CONFIG_MAC80211_RC_DEFAULT="minstrel" | ||
634 | # CONFIG_MAC80211_MESH is not set | ||
635 | CONFIG_MAC80211_LEDS=y | ||
636 | # CONFIG_MAC80211_DEBUGFS is not set | ||
637 | # CONFIG_MAC80211_DEBUG_MENU is not set | ||
638 | # CONFIG_WIMAX is not set | ||
639 | CONFIG_RFKILL=m | ||
640 | CONFIG_RFKILL_LEDS=y | ||
641 | CONFIG_RFKILL_INPUT=y | ||
642 | # CONFIG_NET_9P is not set | ||
643 | |||
644 | # | ||
645 | # Device Drivers | ||
646 | # | ||
647 | |||
648 | # | ||
649 | # Generic Driver Options | ||
650 | # | ||
651 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
652 | # CONFIG_DEVTMPFS is not set | ||
653 | CONFIG_STANDALONE=y | ||
654 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
655 | CONFIG_FW_LOADER=y | ||
656 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
657 | CONFIG_EXTRA_FIRMWARE="" | ||
658 | # CONFIG_SYS_HYPERVISOR is not set | ||
659 | CONFIG_CONNECTOR=m | ||
660 | # CONFIG_MTD is not set | ||
661 | # CONFIG_PARPORT is not set | ||
662 | # CONFIG_PNP is not set | ||
663 | CONFIG_BLK_DEV=y | ||
664 | # CONFIG_BLK_CPQ_DA is not set | ||
665 | # CONFIG_BLK_CPQ_CISS_DA is not set | ||
666 | # CONFIG_BLK_DEV_DAC960 is not set | ||
667 | # CONFIG_BLK_DEV_UMEM is not set | ||
668 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
669 | CONFIG_BLK_DEV_LOOP=y | ||
670 | CONFIG_BLK_DEV_CRYPTOLOOP=m | ||
671 | |||
672 | # | ||
673 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected | ||
674 | # | ||
675 | # CONFIG_BLK_DEV_DRBD is not set | ||
676 | # CONFIG_BLK_DEV_NBD is not set | ||
677 | # CONFIG_BLK_DEV_SX8 is not set | ||
678 | # CONFIG_BLK_DEV_UB is not set | ||
679 | CONFIG_BLK_DEV_RAM=y | ||
680 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
681 | CONFIG_BLK_DEV_RAM_SIZE=8192 | ||
682 | # CONFIG_BLK_DEV_XIP is not set | ||
683 | # CONFIG_CDROM_PKTCDVD is not set | ||
684 | # CONFIG_ATA_OVER_ETH is not set | ||
685 | # CONFIG_BLK_DEV_HD is not set | ||
686 | # CONFIG_MISC_DEVICES is not set | ||
687 | CONFIG_HAVE_IDE=y | ||
688 | CONFIG_IDE=y | ||
689 | |||
690 | # | ||
691 | # Please see Documentation/ide/ide.txt for help/info on IDE drives | ||
692 | # | ||
693 | CONFIG_IDE_XFER_MODE=y | ||
694 | CONFIG_IDE_TIMINGS=y | ||
695 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
696 | CONFIG_IDE_GD=y | ||
697 | CONFIG_IDE_GD_ATA=y | ||
698 | # CONFIG_IDE_GD_ATAPI is not set | ||
699 | # CONFIG_BLK_DEV_IDECD is not set | ||
700 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
701 | CONFIG_IDE_TASK_IOCTL=y | ||
702 | CONFIG_IDE_PROC_FS=y | ||
703 | |||
704 | # | ||
705 | # IDE chipset support/bugfixes | ||
706 | # | ||
707 | # CONFIG_IDE_GENERIC is not set | ||
708 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
709 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
710 | |||
711 | # | ||
712 | # PCI IDE chipsets support | ||
713 | # | ||
714 | CONFIG_BLK_DEV_IDEPCI=y | ||
715 | # CONFIG_IDEPCI_PCIBUS_ORDER is not set | ||
716 | # CONFIG_BLK_DEV_GENERIC is not set | ||
717 | # CONFIG_BLK_DEV_OPTI621 is not set | ||
718 | CONFIG_BLK_DEV_IDEDMA_PCI=y | ||
719 | # CONFIG_BLK_DEV_AEC62XX is not set | ||
720 | # CONFIG_BLK_DEV_ALI15X3 is not set | ||
721 | CONFIG_BLK_DEV_AMD74XX=y | ||
722 | # CONFIG_BLK_DEV_CMD64X is not set | ||
723 | # CONFIG_BLK_DEV_TRIFLEX is not set | ||
724 | # CONFIG_BLK_DEV_CS5520 is not set | ||
725 | # CONFIG_BLK_DEV_CS5530 is not set | ||
726 | # CONFIG_BLK_DEV_HPT366 is not set | ||
727 | # CONFIG_BLK_DEV_JMICRON is not set | ||
728 | # CONFIG_BLK_DEV_SC1200 is not set | ||
729 | # CONFIG_BLK_DEV_PIIX is not set | ||
730 | # CONFIG_BLK_DEV_IT8172 is not set | ||
731 | # CONFIG_BLK_DEV_IT8213 is not set | ||
732 | # CONFIG_BLK_DEV_IT821X is not set | ||
733 | # CONFIG_BLK_DEV_NS87415 is not set | ||
734 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | ||
735 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set | ||
736 | # CONFIG_BLK_DEV_SVWKS is not set | ||
737 | # CONFIG_BLK_DEV_SIIMAGE is not set | ||
738 | # CONFIG_BLK_DEV_SLC90E66 is not set | ||
739 | # CONFIG_BLK_DEV_TRM290 is not set | ||
740 | # CONFIG_BLK_DEV_VIA82CXXX is not set | ||
741 | # CONFIG_BLK_DEV_TC86C001 is not set | ||
742 | |||
743 | # | ||
744 | # Other IDE chipsets support | ||
745 | # | ||
746 | |||
747 | # | ||
748 | # Note: most of these also require special kernel boot parameters | ||
749 | # | ||
750 | # CONFIG_BLK_DEV_4DRIVES is not set | ||
751 | # CONFIG_BLK_DEV_ALI14XX is not set | ||
752 | # CONFIG_BLK_DEV_DTC2278 is not set | ||
753 | # CONFIG_BLK_DEV_HT6560B is not set | ||
754 | # CONFIG_BLK_DEV_QD65XX is not set | ||
755 | # CONFIG_BLK_DEV_UMC8672 is not set | ||
756 | CONFIG_BLK_DEV_IDEDMA=y | ||
757 | |||
758 | # | ||
759 | # SCSI device support | ||
760 | # | ||
761 | # CONFIG_RAID_ATTRS is not set | ||
762 | CONFIG_SCSI=m | ||
763 | CONFIG_SCSI_DMA=y | ||
764 | # CONFIG_SCSI_TGT is not set | ||
765 | # CONFIG_SCSI_NETLINK is not set | ||
766 | CONFIG_SCSI_PROC_FS=y | ||
767 | |||
768 | # | ||
769 | # SCSI support type (disk, tape, CD-ROM) | ||
770 | # | ||
771 | CONFIG_BLK_DEV_SD=m | ||
772 | # CONFIG_CHR_DEV_ST is not set | ||
773 | # CONFIG_CHR_DEV_OSST is not set | ||
774 | # CONFIG_BLK_DEV_SR is not set | ||
775 | CONFIG_CHR_DEV_SG=m | ||
776 | # CONFIG_CHR_DEV_SCH is not set | ||
777 | CONFIG_SCSI_MULTI_LUN=y | ||
778 | # CONFIG_SCSI_CONSTANTS is not set | ||
779 | # CONFIG_SCSI_LOGGING is not set | ||
780 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
781 | CONFIG_SCSI_WAIT_SCAN=m | ||
782 | |||
783 | # | ||
784 | # SCSI Transports | ||
785 | # | ||
786 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
787 | # CONFIG_SCSI_FC_ATTRS is not set | ||
788 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
789 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
790 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
791 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
792 | # CONFIG_SCSI_LOWLEVEL is not set | ||
793 | # CONFIG_SCSI_DH is not set | ||
794 | # CONFIG_SCSI_OSD_INITIATOR is not set | ||
795 | # CONFIG_ATA is not set | ||
796 | CONFIG_MD=y | ||
797 | CONFIG_BLK_DEV_MD=m | ||
798 | CONFIG_MD_LINEAR=m | ||
799 | CONFIG_MD_RAID0=m | ||
800 | CONFIG_MD_RAID1=m | ||
801 | CONFIG_MD_RAID10=m | ||
802 | CONFIG_MD_RAID456=m | ||
803 | CONFIG_MD_RAID6_PQ=m | ||
804 | # CONFIG_ASYNC_RAID6_TEST is not set | ||
805 | CONFIG_MD_MULTIPATH=m | ||
806 | CONFIG_MD_FAULTY=m | ||
807 | CONFIG_BLK_DEV_DM=m | ||
808 | CONFIG_DM_DEBUG=y | ||
809 | CONFIG_DM_CRYPT=m | ||
810 | CONFIG_DM_SNAPSHOT=m | ||
811 | CONFIG_DM_MIRROR=m | ||
812 | CONFIG_DM_LOG_USERSPACE=m | ||
813 | CONFIG_DM_ZERO=m | ||
814 | CONFIG_DM_MULTIPATH=m | ||
815 | CONFIG_DM_MULTIPATH_QL=m | ||
816 | CONFIG_DM_MULTIPATH_ST=m | ||
817 | CONFIG_DM_DELAY=m | ||
818 | CONFIG_DM_UEVENT=y | ||
819 | # CONFIG_FUSION is not set | ||
820 | |||
821 | # | ||
822 | # IEEE 1394 (FireWire) support | ||
823 | # | ||
824 | |||
825 | # | ||
826 | # You can enable one or both FireWire driver stacks. | ||
827 | # | ||
828 | |||
829 | # | ||
830 | # The newer stack is recommended. | ||
831 | # | ||
832 | # CONFIG_FIREWIRE is not set | ||
833 | # CONFIG_IEEE1394 is not set | ||
834 | # CONFIG_I2O is not set | ||
835 | CONFIG_NETDEVICES=y | ||
836 | # CONFIG_IFB is not set | ||
837 | CONFIG_DUMMY=m | ||
838 | # CONFIG_BONDING is not set | ||
839 | # CONFIG_MACVLAN is not set | ||
840 | # CONFIG_EQUALIZER is not set | ||
841 | CONFIG_TUN=m | ||
842 | CONFIG_VETH=m | ||
843 | # CONFIG_ARCNET is not set | ||
844 | # CONFIG_PHYLIB is not set | ||
845 | CONFIG_NET_ETHERNET=y | ||
846 | CONFIG_MII=y | ||
847 | # CONFIG_AX88796 is not set | ||
848 | # CONFIG_HAPPYMEAL is not set | ||
849 | # CONFIG_SUNGEM is not set | ||
850 | # CONFIG_CASSINI is not set | ||
851 | # CONFIG_NET_VENDOR_3COM is not set | ||
852 | # CONFIG_NET_VENDOR_SMC is not set | ||
853 | # CONFIG_SMC91X is not set | ||
854 | # CONFIG_DM9000 is not set | ||
855 | # CONFIG_ETHOC is not set | ||
856 | # CONFIG_SMSC911X is not set | ||
857 | # CONFIG_NET_VENDOR_RACAL is not set | ||
858 | # CONFIG_DNET is not set | ||
859 | # CONFIG_NET_TULIP is not set | ||
860 | # CONFIG_AT1700 is not set | ||
861 | # CONFIG_DEPCA is not set | ||
862 | # CONFIG_HP100 is not set | ||
863 | # CONFIG_NET_ISA is not set | ||
864 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
865 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
866 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
867 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
868 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
869 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
870 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
871 | CONFIG_NET_PCI=y | ||
872 | # CONFIG_PCNET32 is not set | ||
873 | # CONFIG_AMD8111_ETH is not set | ||
874 | # CONFIG_ADAPTEC_STARFIRE is not set | ||
875 | # CONFIG_AC3200 is not set | ||
876 | # CONFIG_APRICOT is not set | ||
877 | # CONFIG_B44 is not set | ||
878 | # CONFIG_FORCEDETH is not set | ||
879 | # CONFIG_CS89x0 is not set | ||
880 | # CONFIG_TC35815 is not set | ||
881 | # CONFIG_E100 is not set | ||
882 | # CONFIG_FEALNX is not set | ||
883 | # CONFIG_NATSEMI is not set | ||
884 | # CONFIG_NE2K_PCI is not set | ||
885 | # CONFIG_8139CP is not set | ||
886 | CONFIG_8139TOO=y | ||
887 | # CONFIG_8139TOO_PIO is not set | ||
888 | # CONFIG_8139TOO_TUNE_TWISTER is not set | ||
889 | # CONFIG_8139TOO_8129 is not set | ||
890 | # CONFIG_8139_OLD_RX_RESET is not set | ||
891 | # CONFIG_R6040 is not set | ||
892 | # CONFIG_SIS900 is not set | ||
893 | # CONFIG_EPIC100 is not set | ||
894 | # CONFIG_SMSC9420 is not set | ||
895 | # CONFIG_SUNDANCE is not set | ||
896 | # CONFIG_TLAN is not set | ||
897 | # CONFIG_KS8842 is not set | ||
898 | # CONFIG_KS8851_MLL is not set | ||
899 | # CONFIG_VIA_RHINE is not set | ||
900 | # CONFIG_SC92031 is not set | ||
901 | # CONFIG_ATL2 is not set | ||
902 | CONFIG_NETDEV_1000=y | ||
903 | # CONFIG_ACENIC is not set | ||
904 | # CONFIG_DL2K is not set | ||
905 | # CONFIG_E1000 is not set | ||
906 | # CONFIG_E1000E is not set | ||
907 | # CONFIG_IP1000 is not set | ||
908 | # CONFIG_IGB is not set | ||
909 | # CONFIG_IGBVF is not set | ||
910 | # CONFIG_NS83820 is not set | ||
911 | # CONFIG_HAMACHI is not set | ||
912 | # CONFIG_YELLOWFIN is not set | ||
913 | CONFIG_R8169=y | ||
914 | CONFIG_R8169_VLAN=y | ||
915 | # CONFIG_SIS190 is not set | ||
916 | # CONFIG_SKGE is not set | ||
917 | # CONFIG_SKY2 is not set | ||
918 | # CONFIG_VIA_VELOCITY is not set | ||
919 | # CONFIG_TIGON3 is not set | ||
920 | # CONFIG_BNX2 is not set | ||
921 | # CONFIG_CNIC is not set | ||
922 | # CONFIG_QLA3XXX is not set | ||
923 | # CONFIG_ATL1 is not set | ||
924 | # CONFIG_ATL1E is not set | ||
925 | # CONFIG_ATL1C is not set | ||
926 | # CONFIG_JME is not set | ||
927 | # CONFIG_NETDEV_10000 is not set | ||
928 | # CONFIG_TR is not set | ||
929 | CONFIG_WLAN=y | ||
930 | # CONFIG_LIBERTAS_THINFIRM is not set | ||
931 | # CONFIG_ATMEL is not set | ||
932 | # CONFIG_AT76C50X_USB is not set | ||
933 | # CONFIG_PRISM54 is not set | ||
934 | # CONFIG_USB_ZD1201 is not set | ||
935 | # CONFIG_USB_NET_RNDIS_WLAN is not set | ||
936 | # CONFIG_RTL8180 is not set | ||
937 | # CONFIG_RTL8187 is not set | ||
938 | # CONFIG_ADM8211 is not set | ||
939 | # CONFIG_MAC80211_HWSIM is not set | ||
940 | # CONFIG_MWL8K is not set | ||
941 | # CONFIG_ATH_COMMON is not set | ||
942 | # CONFIG_B43 is not set | ||
943 | # CONFIG_B43LEGACY is not set | ||
944 | # CONFIG_HOSTAP is not set | ||
945 | # CONFIG_IPW2100 is not set | ||
946 | # CONFIG_IPW2200 is not set | ||
947 | # CONFIG_IWLWIFI is not set | ||
948 | # CONFIG_IWM is not set | ||
949 | # CONFIG_LIBERTAS is not set | ||
950 | # CONFIG_HERMES is not set | ||
951 | # CONFIG_P54_COMMON is not set | ||
952 | # CONFIG_RT2X00 is not set | ||
953 | # CONFIG_WL12XX is not set | ||
954 | # CONFIG_ZD1211RW is not set | ||
955 | |||
956 | # | ||
957 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
958 | # | ||
959 | |||
960 | # | ||
961 | # USB Network Adapters | ||
962 | # | ||
963 | # CONFIG_USB_CATC is not set | ||
964 | # CONFIG_USB_KAWETH is not set | ||
965 | # CONFIG_USB_PEGASUS is not set | ||
966 | # CONFIG_USB_RTL8150 is not set | ||
967 | CONFIG_USB_USBNET=m | ||
968 | CONFIG_USB_NET_AX8817X=m | ||
969 | CONFIG_USB_NET_CDCETHER=m | ||
970 | CONFIG_USB_NET_CDC_EEM=m | ||
971 | # CONFIG_USB_NET_DM9601 is not set | ||
972 | # CONFIG_USB_NET_SMSC95XX is not set | ||
973 | # CONFIG_USB_NET_GL620A is not set | ||
974 | CONFIG_USB_NET_NET1080=m | ||
975 | # CONFIG_USB_NET_PLUSB is not set | ||
976 | # CONFIG_USB_NET_MCS7830 is not set | ||
977 | # CONFIG_USB_NET_RNDIS_HOST is not set | ||
978 | CONFIG_USB_NET_CDC_SUBSET=m | ||
979 | # CONFIG_USB_ALI_M5632 is not set | ||
980 | # CONFIG_USB_AN2720 is not set | ||
981 | CONFIG_USB_BELKIN=y | ||
982 | CONFIG_USB_ARMLINUX=y | ||
983 | # CONFIG_USB_EPSON2888 is not set | ||
984 | # CONFIG_USB_KC2190 is not set | ||
985 | CONFIG_USB_NET_ZAURUS=m | ||
986 | # CONFIG_USB_HSO is not set | ||
987 | # CONFIG_USB_NET_INT51X1 is not set | ||
988 | # CONFIG_WAN is not set | ||
989 | # CONFIG_FDDI is not set | ||
990 | # CONFIG_HIPPI is not set | ||
991 | # CONFIG_PPP is not set | ||
992 | # CONFIG_SLIP is not set | ||
993 | # CONFIG_NET_FC is not set | ||
994 | CONFIG_NETCONSOLE=m | ||
995 | CONFIG_NETCONSOLE_DYNAMIC=y | ||
996 | CONFIG_NETPOLL=y | ||
997 | # CONFIG_NETPOLL_TRAP is not set | ||
998 | CONFIG_NET_POLL_CONTROLLER=y | ||
999 | # CONFIG_VMXNET3 is not set | ||
1000 | # CONFIG_ISDN is not set | ||
1001 | # CONFIG_PHONE is not set | ||
1002 | |||
1003 | # | ||
1004 | # Input device support | ||
1005 | # | ||
1006 | CONFIG_INPUT=y | ||
1007 | CONFIG_INPUT_FF_MEMLESS=m | ||
1008 | CONFIG_INPUT_POLLDEV=m | ||
1009 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
1010 | |||
1011 | # | ||
1012 | # Userland interfaces | ||
1013 | # | ||
1014 | CONFIG_INPUT_MOUSEDEV=y | ||
1015 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
1016 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
1017 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
1018 | # CONFIG_INPUT_JOYDEV is not set | ||
1019 | CONFIG_INPUT_EVDEV=y | ||
1020 | # CONFIG_INPUT_EVBUG is not set | ||
1021 | |||
1022 | # | ||
1023 | # Input Device Drivers | ||
1024 | # | ||
1025 | CONFIG_INPUT_KEYBOARD=y | ||
1026 | CONFIG_KEYBOARD_ATKBD=y | ||
1027 | # CONFIG_KEYBOARD_LKKBD is not set | ||
1028 | # CONFIG_KEYBOARD_NEWTON is not set | ||
1029 | # CONFIG_KEYBOARD_OPENCORES is not set | ||
1030 | # CONFIG_KEYBOARD_STOWAWAY is not set | ||
1031 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
1032 | # CONFIG_KEYBOARD_XTKBD is not set | ||
1033 | CONFIG_INPUT_MOUSE=y | ||
1034 | CONFIG_MOUSE_PS2=y | ||
1035 | # CONFIG_MOUSE_PS2_ALPS is not set | ||
1036 | # CONFIG_MOUSE_PS2_LOGIPS2PP is not set | ||
1037 | CONFIG_MOUSE_PS2_SYNAPTICS=y | ||
1038 | # CONFIG_MOUSE_PS2_TRACKPOINT is not set | ||
1039 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
1040 | # CONFIG_MOUSE_PS2_SENTELIC is not set | ||
1041 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | ||
1042 | # CONFIG_MOUSE_SERIAL is not set | ||
1043 | CONFIG_MOUSE_APPLETOUCH=m | ||
1044 | # CONFIG_MOUSE_BCM5974 is not set | ||
1045 | # CONFIG_MOUSE_INPORT is not set | ||
1046 | # CONFIG_MOUSE_LOGIBM is not set | ||
1047 | # CONFIG_MOUSE_PC110PAD is not set | ||
1048 | # CONFIG_MOUSE_VSXXXAA is not set | ||
1049 | # CONFIG_INPUT_JOYSTICK is not set | ||
1050 | # CONFIG_INPUT_TABLET is not set | ||
1051 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
1052 | # CONFIG_INPUT_MISC is not set | ||
1053 | |||
1054 | # | ||
1055 | # Hardware I/O ports | ||
1056 | # | ||
1057 | CONFIG_SERIO=y | ||
1058 | CONFIG_SERIO_I8042=y | ||
1059 | # CONFIG_SERIO_SERPORT is not set | ||
1060 | # CONFIG_SERIO_PCIPS2 is not set | ||
1061 | CONFIG_SERIO_LIBPS2=y | ||
1062 | # CONFIG_SERIO_RAW is not set | ||
1063 | # CONFIG_SERIO_ALTERA_PS2 is not set | ||
1064 | # CONFIG_GAMEPORT is not set | ||
1065 | |||
1066 | # | ||
1067 | # Character devices | ||
1068 | # | ||
1069 | CONFIG_VT=y | ||
1070 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
1071 | CONFIG_VT_CONSOLE=y | ||
1072 | CONFIG_HW_CONSOLE=y | ||
1073 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
1074 | CONFIG_DEVKMEM=y | ||
1075 | CONFIG_SERIAL_NONSTANDARD=y | ||
1076 | # CONFIG_COMPUTONE is not set | ||
1077 | # CONFIG_ROCKETPORT is not set | ||
1078 | # CONFIG_CYCLADES is not set | ||
1079 | # CONFIG_DIGIEPCA is not set | ||
1080 | # CONFIG_MOXA_INTELLIO is not set | ||
1081 | # CONFIG_MOXA_SMARTIO is not set | ||
1082 | # CONFIG_ISI is not set | ||
1083 | # CONFIG_SYNCLINKMP is not set | ||
1084 | # CONFIG_SYNCLINK_GT is not set | ||
1085 | # CONFIG_N_HDLC is not set | ||
1086 | # CONFIG_RISCOM8 is not set | ||
1087 | # CONFIG_SPECIALIX is not set | ||
1088 | # CONFIG_STALDRV is not set | ||
1089 | # CONFIG_NOZOMI is not set | ||
1090 | |||
1091 | # | ||
1092 | # Serial drivers | ||
1093 | # | ||
1094 | CONFIG_SERIAL_8250=m | ||
1095 | # CONFIG_SERIAL_8250_PCI is not set | ||
1096 | CONFIG_SERIAL_8250_NR_UARTS=16 | ||
1097 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | ||
1098 | CONFIG_SERIAL_8250_EXTENDED=y | ||
1099 | CONFIG_SERIAL_8250_MANY_PORTS=y | ||
1100 | CONFIG_SERIAL_8250_FOURPORT=y | ||
1101 | # CONFIG_SERIAL_8250_ACCENT is not set | ||
1102 | # CONFIG_SERIAL_8250_BOCA is not set | ||
1103 | # CONFIG_SERIAL_8250_EXAR_ST16C554 is not set | ||
1104 | # CONFIG_SERIAL_8250_HUB6 is not set | ||
1105 | # CONFIG_SERIAL_8250_SHARE_IRQ is not set | ||
1106 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set | ||
1107 | # CONFIG_SERIAL_8250_RSA is not set | ||
1108 | |||
1109 | # | ||
1110 | # Non-8250 serial port support | ||
1111 | # | ||
1112 | CONFIG_SERIAL_CORE=m | ||
1113 | # CONFIG_SERIAL_JSM is not set | ||
1114 | CONFIG_UNIX98_PTYS=y | ||
1115 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
1116 | CONFIG_LEGACY_PTYS=y | ||
1117 | CONFIG_LEGACY_PTY_COUNT=16 | ||
1118 | # CONFIG_IPMI_HANDLER is not set | ||
1119 | CONFIG_HW_RANDOM=y | ||
1120 | # CONFIG_HW_RANDOM_TIMERIOMEM is not set | ||
1121 | CONFIG_RTC=y | ||
1122 | # CONFIG_DTLK is not set | ||
1123 | # CONFIG_R3964 is not set | ||
1124 | # CONFIG_APPLICOM is not set | ||
1125 | # CONFIG_RAW_DRIVER is not set | ||
1126 | # CONFIG_TCG_TPM is not set | ||
1127 | CONFIG_DEVPORT=y | ||
1128 | # CONFIG_I2C is not set | ||
1129 | # CONFIG_SPI is not set | ||
1130 | |||
1131 | # | ||
1132 | # PPS support | ||
1133 | # | ||
1134 | # CONFIG_PPS is not set | ||
1135 | # CONFIG_W1 is not set | ||
1136 | # CONFIG_POWER_SUPPLY is not set | ||
1137 | CONFIG_HWMON=y | ||
1138 | # CONFIG_HWMON_VID is not set | ||
1139 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
1140 | |||
1141 | # | ||
1142 | # Native drivers | ||
1143 | # | ||
1144 | # CONFIG_SENSORS_I5K_AMB is not set | ||
1145 | # CONFIG_SENSORS_F71805F is not set | ||
1146 | # CONFIG_SENSORS_F71882FG is not set | ||
1147 | # CONFIG_SENSORS_IT87 is not set | ||
1148 | # CONFIG_SENSORS_PC87360 is not set | ||
1149 | # CONFIG_SENSORS_PC87427 is not set | ||
1150 | # CONFIG_SENSORS_SIS5595 is not set | ||
1151 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
1152 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
1153 | # CONFIG_SENSORS_VIA686A is not set | ||
1154 | # CONFIG_SENSORS_VT1211 is not set | ||
1155 | # CONFIG_SENSORS_VT8231 is not set | ||
1156 | # CONFIG_SENSORS_W83627HF is not set | ||
1157 | # CONFIG_SENSORS_W83627EHF is not set | ||
1158 | CONFIG_THERMAL=y | ||
1159 | # CONFIG_THERMAL_HWMON is not set | ||
1160 | # CONFIG_WATCHDOG is not set | ||
1161 | CONFIG_SSB_POSSIBLE=y | ||
1162 | |||
1163 | # | ||
1164 | # Sonics Silicon Backplane | ||
1165 | # | ||
1166 | # CONFIG_SSB is not set | ||
1167 | |||
1168 | # | ||
1169 | # Multifunction device drivers | ||
1170 | # | ||
1171 | # CONFIG_MFD_CORE is not set | ||
1172 | # CONFIG_MFD_SM501 is not set | ||
1173 | # CONFIG_HTC_PASIC3 is not set | ||
1174 | # CONFIG_MFD_TMIO is not set | ||
1175 | # CONFIG_REGULATOR is not set | ||
1176 | CONFIG_MEDIA_SUPPORT=m | ||
1177 | |||
1178 | # | ||
1179 | # Multimedia core support | ||
1180 | # | ||
1181 | CONFIG_VIDEO_DEV=m | ||
1182 | CONFIG_VIDEO_V4L2_COMMON=m | ||
1183 | CONFIG_VIDEO_ALLOW_V4L1=y | ||
1184 | CONFIG_VIDEO_V4L1_COMPAT=y | ||
1185 | # CONFIG_DVB_CORE is not set | ||
1186 | CONFIG_VIDEO_MEDIA=m | ||
1187 | |||
1188 | # | ||
1189 | # Multimedia drivers | ||
1190 | # | ||
1191 | CONFIG_IR_CORE=m | ||
1192 | CONFIG_VIDEO_IR=m | ||
1193 | # CONFIG_MEDIA_ATTACH is not set | ||
1194 | CONFIG_VIDEO_V4L2=m | ||
1195 | CONFIG_VIDEO_V4L1=m | ||
1196 | CONFIG_VIDEOBUF_GEN=m | ||
1197 | CONFIG_VIDEOBUF_VMALLOC=m | ||
1198 | CONFIG_VIDEO_CAPTURE_DRIVERS=y | ||
1199 | # CONFIG_VIDEO_ADV_DEBUG is not set | ||
1200 | # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set | ||
1201 | CONFIG_VIDEO_HELPER_CHIPS_AUTO=y | ||
1202 | CONFIG_VIDEO_VIVI=m | ||
1203 | # CONFIG_VIDEO_PMS is not set | ||
1204 | # CONFIG_VIDEO_CPIA is not set | ||
1205 | # CONFIG_VIDEO_CPIA2 is not set | ||
1206 | # CONFIG_VIDEO_STRADIS is not set | ||
1207 | CONFIG_V4L_USB_DRIVERS=y | ||
1208 | CONFIG_USB_VIDEO_CLASS=m | ||
1209 | CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y | ||
1210 | CONFIG_USB_GSPCA=m | ||
1211 | CONFIG_USB_M5602=m | ||
1212 | CONFIG_USB_STV06XX=m | ||
1213 | # CONFIG_USB_GL860 is not set | ||
1214 | CONFIG_USB_GSPCA_CONEX=m | ||
1215 | CONFIG_USB_GSPCA_ETOMS=m | ||
1216 | CONFIG_USB_GSPCA_FINEPIX=m | ||
1217 | # CONFIG_USB_GSPCA_JEILINJ is not set | ||
1218 | CONFIG_USB_GSPCA_MARS=m | ||
1219 | CONFIG_USB_GSPCA_MR97310A=m | ||
1220 | CONFIG_USB_GSPCA_OV519=m | ||
1221 | CONFIG_USB_GSPCA_OV534=m | ||
1222 | CONFIG_USB_GSPCA_PAC207=m | ||
1223 | # CONFIG_USB_GSPCA_PAC7302 is not set | ||
1224 | CONFIG_USB_GSPCA_PAC7311=m | ||
1225 | CONFIG_USB_GSPCA_SN9C20X=m | ||
1226 | CONFIG_USB_GSPCA_SN9C20X_EVDEV=y | ||
1227 | CONFIG_USB_GSPCA_SONIXB=m | ||
1228 | CONFIG_USB_GSPCA_SONIXJ=m | ||
1229 | CONFIG_USB_GSPCA_SPCA500=m | ||
1230 | CONFIG_USB_GSPCA_SPCA501=m | ||
1231 | CONFIG_USB_GSPCA_SPCA505=m | ||
1232 | CONFIG_USB_GSPCA_SPCA506=m | ||
1233 | CONFIG_USB_GSPCA_SPCA508=m | ||
1234 | CONFIG_USB_GSPCA_SPCA561=m | ||
1235 | CONFIG_USB_GSPCA_SQ905=m | ||
1236 | CONFIG_USB_GSPCA_SQ905C=m | ||
1237 | CONFIG_USB_GSPCA_STK014=m | ||
1238 | # CONFIG_USB_GSPCA_STV0680 is not set | ||
1239 | CONFIG_USB_GSPCA_SUNPLUS=m | ||
1240 | CONFIG_USB_GSPCA_T613=m | ||
1241 | CONFIG_USB_GSPCA_TV8532=m | ||
1242 | CONFIG_USB_GSPCA_VC032X=m | ||
1243 | CONFIG_USB_GSPCA_ZC3XX=m | ||
1244 | # CONFIG_VIDEO_HDPVR is not set | ||
1245 | # CONFIG_USB_VICAM is not set | ||
1246 | # CONFIG_USB_IBMCAM is not set | ||
1247 | # CONFIG_USB_KONICAWC is not set | ||
1248 | # CONFIG_USB_QUICKCAM_MESSENGER is not set | ||
1249 | CONFIG_USB_ET61X251=m | ||
1250 | # CONFIG_USB_OV511 is not set | ||
1251 | # CONFIG_USB_SE401 is not set | ||
1252 | CONFIG_USB_SN9C102=m | ||
1253 | # CONFIG_USB_STV680 is not set | ||
1254 | CONFIG_USB_ZC0301=m | ||
1255 | # CONFIG_USB_PWC is not set | ||
1256 | CONFIG_USB_PWC_INPUT_EVDEV=y | ||
1257 | CONFIG_USB_ZR364XX=m | ||
1258 | CONFIG_USB_STKWEBCAM=m | ||
1259 | CONFIG_USB_S2255=m | ||
1260 | # CONFIG_RADIO_ADAPTERS is not set | ||
1261 | # CONFIG_DAB is not set | ||
1262 | |||
1263 | # | ||
1264 | # Graphics support | ||
1265 | # | ||
1266 | CONFIG_VGA_ARB=y | ||
1267 | # CONFIG_DRM is not set | ||
1268 | # CONFIG_VGASTATE is not set | ||
1269 | CONFIG_VIDEO_OUTPUT_CONTROL=y | ||
1270 | CONFIG_FB=y | ||
1271 | CONFIG_FIRMWARE_EDID=y | ||
1272 | # CONFIG_FB_DDC is not set | ||
1273 | CONFIG_FB_BOOT_VESA_SUPPORT=y | ||
1274 | CONFIG_FB_CFB_FILLRECT=y | ||
1275 | CONFIG_FB_CFB_COPYAREA=y | ||
1276 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
1277 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
1278 | # CONFIG_FB_SYS_FILLRECT is not set | ||
1279 | # CONFIG_FB_SYS_COPYAREA is not set | ||
1280 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
1281 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
1282 | # CONFIG_FB_SYS_FOPS is not set | ||
1283 | # CONFIG_FB_SVGALIB is not set | ||
1284 | # CONFIG_FB_MACMODES is not set | ||
1285 | # CONFIG_FB_BACKLIGHT is not set | ||
1286 | CONFIG_FB_MODE_HELPERS=y | ||
1287 | CONFIG_FB_TILEBLITTING=y | ||
1288 | |||
1289 | # | ||
1290 | # Frame buffer hardware drivers | ||
1291 | # | ||
1292 | # CONFIG_FB_CIRRUS is not set | ||
1293 | # CONFIG_FB_PM2 is not set | ||
1294 | # CONFIG_FB_CYBER2000 is not set | ||
1295 | # CONFIG_FB_ASILIANT is not set | ||
1296 | # CONFIG_FB_IMSTT is not set | ||
1297 | # CONFIG_FB_UVESA is not set | ||
1298 | # CONFIG_FB_S1D13XXX is not set | ||
1299 | # CONFIG_FB_NVIDIA is not set | ||
1300 | # CONFIG_FB_RIVA is not set | ||
1301 | # CONFIG_FB_MATROX is not set | ||
1302 | # CONFIG_FB_RADEON is not set | ||
1303 | # CONFIG_FB_ATY128 is not set | ||
1304 | # CONFIG_FB_ATY is not set | ||
1305 | # CONFIG_FB_S3 is not set | ||
1306 | # CONFIG_FB_SAVAGE is not set | ||
1307 | CONFIG_FB_SIS=y | ||
1308 | CONFIG_FB_SIS_300=y | ||
1309 | CONFIG_FB_SIS_315=y | ||
1310 | # CONFIG_FB_VIA is not set | ||
1311 | # CONFIG_FB_NEOMAGIC is not set | ||
1312 | # CONFIG_FB_KYRO is not set | ||
1313 | # CONFIG_FB_3DFX is not set | ||
1314 | # CONFIG_FB_VOODOO1 is not set | ||
1315 | # CONFIG_FB_VT8623 is not set | ||
1316 | # CONFIG_FB_TRIDENT is not set | ||
1317 | # CONFIG_FB_ARK is not set | ||
1318 | # CONFIG_FB_PM3 is not set | ||
1319 | # CONFIG_FB_CARMINE is not set | ||
1320 | # CONFIG_FB_VIRTUAL is not set | ||
1321 | # CONFIG_FB_METRONOME is not set | ||
1322 | # CONFIG_FB_MB862XX is not set | ||
1323 | # CONFIG_FB_BROADSHEET is not set | ||
1324 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||
1325 | # CONFIG_LCD_CLASS_DEVICE is not set | ||
1326 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
1327 | CONFIG_BACKLIGHT_GENERIC=m | ||
1328 | |||
1329 | # | ||
1330 | # Display device support | ||
1331 | # | ||
1332 | # CONFIG_DISPLAY_SUPPORT is not set | ||
1333 | |||
1334 | # | ||
1335 | # Console display driver support | ||
1336 | # | ||
1337 | # CONFIG_VGA_CONSOLE is not set | ||
1338 | # CONFIG_MDA_CONSOLE is not set | ||
1339 | CONFIG_DUMMY_CONSOLE=y | ||
1340 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
1341 | # CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set | ||
1342 | CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y | ||
1343 | CONFIG_FONTS=y | ||
1344 | CONFIG_FONT_8x8=y | ||
1345 | CONFIG_FONT_8x16=y | ||
1346 | CONFIG_FONT_6x11=y | ||
1347 | CONFIG_FONT_7x14=y | ||
1348 | CONFIG_FONT_PEARL_8x8=y | ||
1349 | CONFIG_FONT_ACORN_8x8=y | ||
1350 | CONFIG_FONT_MINI_4x6=y | ||
1351 | CONFIG_FONT_SUN8x16=y | ||
1352 | CONFIG_FONT_SUN12x22=y | ||
1353 | CONFIG_FONT_10x18=y | ||
1354 | CONFIG_LOGO=y | ||
1355 | # CONFIG_LOGO_LINUX_MONO is not set | ||
1356 | # CONFIG_LOGO_LINUX_VGA16 is not set | ||
1357 | CONFIG_LOGO_LINUX_CLUT224=y | ||
1358 | CONFIG_SOUND=m | ||
1359 | CONFIG_SOUND_OSS_CORE=y | ||
1360 | CONFIG_SOUND_OSS_CORE_PRECLAIM=y | ||
1361 | CONFIG_SND=m | ||
1362 | CONFIG_SND_TIMER=m | ||
1363 | CONFIG_SND_PCM=m | ||
1364 | CONFIG_SND_HWDEP=m | ||
1365 | CONFIG_SND_RAWMIDI=m | ||
1366 | CONFIG_SND_SEQUENCER=m | ||
1367 | CONFIG_SND_SEQ_DUMMY=m | ||
1368 | CONFIG_SND_OSSEMUL=y | ||
1369 | CONFIG_SND_MIXER_OSS=m | ||
1370 | CONFIG_SND_PCM_OSS=m | ||
1371 | CONFIG_SND_PCM_OSS_PLUGINS=y | ||
1372 | CONFIG_SND_SEQUENCER_OSS=y | ||
1373 | CONFIG_SND_HRTIMER=m | ||
1374 | CONFIG_SND_SEQ_HRTIMER_DEFAULT=y | ||
1375 | # CONFIG_SND_RTCTIMER is not set | ||
1376 | # CONFIG_SND_DYNAMIC_MINORS is not set | ||
1377 | CONFIG_SND_SUPPORT_OLD_API=y | ||
1378 | CONFIG_SND_VERBOSE_PROCFS=y | ||
1379 | # CONFIG_SND_VERBOSE_PRINTK is not set | ||
1380 | # CONFIG_SND_DEBUG is not set | ||
1381 | CONFIG_SND_VMASTER=y | ||
1382 | CONFIG_SND_RAWMIDI_SEQ=m | ||
1383 | # CONFIG_SND_OPL3_LIB_SEQ is not set | ||
1384 | # CONFIG_SND_OPL4_LIB_SEQ is not set | ||
1385 | # CONFIG_SND_SBAWE_SEQ is not set | ||
1386 | # CONFIG_SND_EMU10K1_SEQ is not set | ||
1387 | CONFIG_SND_MPU401_UART=m | ||
1388 | CONFIG_SND_AC97_CODEC=m | ||
1389 | CONFIG_SND_DRIVERS=y | ||
1390 | CONFIG_SND_DUMMY=m | ||
1391 | CONFIG_SND_VIRMIDI=m | ||
1392 | # CONFIG_SND_MTPAV is not set | ||
1393 | CONFIG_SND_SERIAL_U16550=m | ||
1394 | CONFIG_SND_MPU401=m | ||
1395 | CONFIG_SND_AC97_POWER_SAVE=y | ||
1396 | CONFIG_SND_AC97_POWER_SAVE_DEFAULT=10 | ||
1397 | CONFIG_SND_PCI=y | ||
1398 | # CONFIG_SND_AD1889 is not set | ||
1399 | # CONFIG_SND_ALS300 is not set | ||
1400 | # CONFIG_SND_ALI5451 is not set | ||
1401 | # CONFIG_SND_ATIIXP is not set | ||
1402 | # CONFIG_SND_ATIIXP_MODEM is not set | ||
1403 | # CONFIG_SND_AU8810 is not set | ||
1404 | # CONFIG_SND_AU8820 is not set | ||
1405 | # CONFIG_SND_AU8830 is not set | ||
1406 | # CONFIG_SND_AW2 is not set | ||
1407 | # CONFIG_SND_AZT3328 is not set | ||
1408 | # CONFIG_SND_BT87X is not set | ||
1409 | # CONFIG_SND_CA0106 is not set | ||
1410 | # CONFIG_SND_CMIPCI is not set | ||
1411 | # CONFIG_SND_OXYGEN is not set | ||
1412 | # CONFIG_SND_CS4281 is not set | ||
1413 | # CONFIG_SND_CS46XX is not set | ||
1414 | CONFIG_SND_CS5535AUDIO=m | ||
1415 | # CONFIG_SND_CTXFI is not set | ||
1416 | # CONFIG_SND_DARLA20 is not set | ||
1417 | # CONFIG_SND_GINA20 is not set | ||
1418 | # CONFIG_SND_LAYLA20 is not set | ||
1419 | # CONFIG_SND_DARLA24 is not set | ||
1420 | # CONFIG_SND_GINA24 is not set | ||
1421 | # CONFIG_SND_LAYLA24 is not set | ||
1422 | # CONFIG_SND_MONA is not set | ||
1423 | # CONFIG_SND_MIA is not set | ||
1424 | # CONFIG_SND_ECHO3G is not set | ||
1425 | # CONFIG_SND_INDIGO is not set | ||
1426 | # CONFIG_SND_INDIGOIO is not set | ||
1427 | # CONFIG_SND_INDIGODJ is not set | ||
1428 | # CONFIG_SND_INDIGOIOX is not set | ||
1429 | # CONFIG_SND_INDIGODJX is not set | ||
1430 | # CONFIG_SND_EMU10K1 is not set | ||
1431 | # CONFIG_SND_EMU10K1X is not set | ||
1432 | # CONFIG_SND_ENS1370 is not set | ||
1433 | # CONFIG_SND_ENS1371 is not set | ||
1434 | # CONFIG_SND_ES1938 is not set | ||
1435 | # CONFIG_SND_ES1968 is not set | ||
1436 | # CONFIG_SND_FM801 is not set | ||
1437 | # CONFIG_SND_HDA_INTEL is not set | ||
1438 | # CONFIG_SND_HDSP is not set | ||
1439 | # CONFIG_SND_HDSPM is not set | ||
1440 | # CONFIG_SND_HIFIER is not set | ||
1441 | # CONFIG_SND_ICE1712 is not set | ||
1442 | # CONFIG_SND_ICE1724 is not set | ||
1443 | # CONFIG_SND_INTEL8X0 is not set | ||
1444 | # CONFIG_SND_INTEL8X0M is not set | ||
1445 | # CONFIG_SND_KORG1212 is not set | ||
1446 | # CONFIG_SND_LX6464ES is not set | ||
1447 | # CONFIG_SND_MAESTRO3 is not set | ||
1448 | # CONFIG_SND_MIXART is not set | ||
1449 | # CONFIG_SND_NM256 is not set | ||
1450 | # CONFIG_SND_PCXHR is not set | ||
1451 | # CONFIG_SND_RIPTIDE is not set | ||
1452 | # CONFIG_SND_RME32 is not set | ||
1453 | # CONFIG_SND_RME96 is not set | ||
1454 | # CONFIG_SND_RME9652 is not set | ||
1455 | # CONFIG_SND_SONICVIBES is not set | ||
1456 | # CONFIG_SND_TRIDENT is not set | ||
1457 | # CONFIG_SND_VIA82XX is not set | ||
1458 | # CONFIG_SND_VIA82XX_MODEM is not set | ||
1459 | # CONFIG_SND_VIRTUOSO is not set | ||
1460 | # CONFIG_SND_VX222 is not set | ||
1461 | # CONFIG_SND_YMFPCI is not set | ||
1462 | # CONFIG_SND_MIPS is not set | ||
1463 | CONFIG_SND_USB=y | ||
1464 | CONFIG_SND_USB_AUDIO=m | ||
1465 | CONFIG_SND_USB_CAIAQ=m | ||
1466 | CONFIG_SND_USB_CAIAQ_INPUT=y | ||
1467 | # CONFIG_SND_SOC is not set | ||
1468 | # CONFIG_SOUND_PRIME is not set | ||
1469 | CONFIG_AC97_BUS=m | ||
1470 | CONFIG_HID_SUPPORT=y | ||
1471 | CONFIG_HID=y | ||
1472 | CONFIG_HIDRAW=y | ||
1473 | |||
1474 | # | ||
1475 | # USB Input Devices | ||
1476 | # | ||
1477 | CONFIG_USB_HID=y | ||
1478 | # CONFIG_HID_PID is not set | ||
1479 | CONFIG_USB_HIDDEV=y | ||
1480 | |||
1481 | # | ||
1482 | # Special HID drivers | ||
1483 | # | ||
1484 | CONFIG_HID_A4TECH=m | ||
1485 | CONFIG_HID_APPLE=m | ||
1486 | CONFIG_HID_BELKIN=m | ||
1487 | CONFIG_HID_CHERRY=m | ||
1488 | CONFIG_HID_CHICONY=m | ||
1489 | CONFIG_HID_CYPRESS=m | ||
1490 | CONFIG_HID_DRAGONRISE=m | ||
1491 | CONFIG_DRAGONRISE_FF=y | ||
1492 | CONFIG_HID_EZKEY=m | ||
1493 | CONFIG_HID_KYE=m | ||
1494 | CONFIG_HID_GYRATION=m | ||
1495 | CONFIG_HID_TWINHAN=m | ||
1496 | CONFIG_HID_KENSINGTON=m | ||
1497 | CONFIG_HID_LOGITECH=m | ||
1498 | CONFIG_LOGITECH_FF=y | ||
1499 | CONFIG_LOGIRUMBLEPAD2_FF=y | ||
1500 | CONFIG_HID_MICROSOFT=m | ||
1501 | CONFIG_HID_MONTEREY=m | ||
1502 | CONFIG_HID_NTRIG=m | ||
1503 | CONFIG_HID_PANTHERLORD=m | ||
1504 | CONFIG_PANTHERLORD_FF=y | ||
1505 | CONFIG_HID_PETALYNX=m | ||
1506 | CONFIG_HID_SAMSUNG=m | ||
1507 | CONFIG_HID_SONY=m | ||
1508 | CONFIG_HID_SUNPLUS=m | ||
1509 | CONFIG_HID_GREENASIA=m | ||
1510 | CONFIG_GREENASIA_FF=y | ||
1511 | CONFIG_HID_SMARTJOYPLUS=m | ||
1512 | CONFIG_SMARTJOYPLUS_FF=y | ||
1513 | CONFIG_HID_TOPSEED=m | ||
1514 | CONFIG_HID_THRUSTMASTER=m | ||
1515 | CONFIG_THRUSTMASTER_FF=y | ||
1516 | CONFIG_HID_WACOM=m | ||
1517 | CONFIG_HID_ZEROPLUS=m | ||
1518 | CONFIG_ZEROPLUS_FF=y | ||
1519 | CONFIG_USB_SUPPORT=y | ||
1520 | CONFIG_USB_ARCH_HAS_HCD=y | ||
1521 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
1522 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
1523 | CONFIG_USB=y | ||
1524 | # CONFIG_USB_DEBUG is not set | ||
1525 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
1526 | |||
1527 | # | ||
1528 | # Miscellaneous USB options | ||
1529 | # | ||
1530 | CONFIG_USB_DEVICEFS=y | ||
1531 | # CONFIG_USB_DEVICE_CLASS is not set | ||
1532 | CONFIG_USB_DYNAMIC_MINORS=y | ||
1533 | CONFIG_USB_SUSPEND=y | ||
1534 | # CONFIG_USB_OTG is not set | ||
1535 | CONFIG_USB_OTG_WHITELIST=y | ||
1536 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1537 | CONFIG_USB_MON=y | ||
1538 | CONFIG_USB_WUSB=m | ||
1539 | # CONFIG_USB_WUSB_CBAF is not set | ||
1540 | |||
1541 | # | ||
1542 | # USB Host Controller Drivers | ||
1543 | # | ||
1544 | # CONFIG_USB_C67X00_HCD is not set | ||
1545 | # CONFIG_USB_XHCI_HCD is not set | ||
1546 | CONFIG_USB_EHCI_HCD=y | ||
1547 | CONFIG_USB_EHCI_ROOT_HUB_TT=y | ||
1548 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | ||
1549 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1550 | # CONFIG_USB_ISP116X_HCD is not set | ||
1551 | # CONFIG_USB_ISP1760_HCD is not set | ||
1552 | # CONFIG_USB_ISP1362_HCD is not set | ||
1553 | CONFIG_USB_OHCI_HCD=y | ||
1554 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
1555 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
1556 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
1557 | CONFIG_USB_UHCI_HCD=m | ||
1558 | # CONFIG_USB_SL811_HCD is not set | ||
1559 | # CONFIG_USB_R8A66597_HCD is not set | ||
1560 | CONFIG_USB_WHCI_HCD=m | ||
1561 | CONFIG_USB_HWA_HCD=m | ||
1562 | # CONFIG_USB_GADGET_MUSB_HDRC is not set | ||
1563 | |||
1564 | # | ||
1565 | # USB Device Class drivers | ||
1566 | # | ||
1567 | CONFIG_USB_ACM=m | ||
1568 | CONFIG_USB_PRINTER=m | ||
1569 | CONFIG_USB_WDM=m | ||
1570 | # CONFIG_USB_TMC is not set | ||
1571 | |||
1572 | # | ||
1573 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may | ||
1574 | # | ||
1575 | |||
1576 | # | ||
1577 | # also be needed; see USB_STORAGE Help for more info | ||
1578 | # | ||
1579 | CONFIG_USB_STORAGE=m | ||
1580 | # CONFIG_USB_STORAGE_DEBUG is not set | ||
1581 | CONFIG_USB_STORAGE_DATAFAB=m | ||
1582 | CONFIG_USB_STORAGE_FREECOM=m | ||
1583 | CONFIG_USB_STORAGE_ISD200=m | ||
1584 | CONFIG_USB_STORAGE_USBAT=m | ||
1585 | CONFIG_USB_STORAGE_SDDR09=m | ||
1586 | CONFIG_USB_STORAGE_SDDR55=m | ||
1587 | CONFIG_USB_STORAGE_JUMPSHOT=m | ||
1588 | CONFIG_USB_STORAGE_ALAUDA=m | ||
1589 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
1590 | # CONFIG_USB_STORAGE_KARMA is not set | ||
1591 | # CONFIG_USB_STORAGE_CYPRESS_ATACB is not set | ||
1592 | CONFIG_USB_LIBUSUAL=y | ||
1593 | |||
1594 | # | ||
1595 | # USB Imaging devices | ||
1596 | # | ||
1597 | # CONFIG_USB_MDC800 is not set | ||
1598 | # CONFIG_USB_MICROTEK is not set | ||
1599 | |||
1600 | # | ||
1601 | # USB port drivers | ||
1602 | # | ||
1603 | CONFIG_USB_SERIAL=m | ||
1604 | # CONFIG_USB_EZUSB is not set | ||
1605 | CONFIG_USB_SERIAL_GENERIC=y | ||
1606 | # CONFIG_USB_SERIAL_AIRCABLE is not set | ||
1607 | # CONFIG_USB_SERIAL_ARK3116 is not set | ||
1608 | # CONFIG_USB_SERIAL_BELKIN is not set | ||
1609 | # CONFIG_USB_SERIAL_CH341 is not set | ||
1610 | # CONFIG_USB_SERIAL_WHITEHEAT is not set | ||
1611 | # CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set | ||
1612 | # CONFIG_USB_SERIAL_CP210X is not set | ||
1613 | # CONFIG_USB_SERIAL_CYPRESS_M8 is not set | ||
1614 | # CONFIG_USB_SERIAL_EMPEG is not set | ||
1615 | # CONFIG_USB_SERIAL_FTDI_SIO is not set | ||
1616 | # CONFIG_USB_SERIAL_FUNSOFT is not set | ||
1617 | # CONFIG_USB_SERIAL_VISOR is not set | ||
1618 | # CONFIG_USB_SERIAL_IPAQ is not set | ||
1619 | # CONFIG_USB_SERIAL_IR is not set | ||
1620 | # CONFIG_USB_SERIAL_EDGEPORT is not set | ||
1621 | # CONFIG_USB_SERIAL_EDGEPORT_TI is not set | ||
1622 | # CONFIG_USB_SERIAL_GARMIN is not set | ||
1623 | # CONFIG_USB_SERIAL_IPW is not set | ||
1624 | # CONFIG_USB_SERIAL_IUU is not set | ||
1625 | # CONFIG_USB_SERIAL_KEYSPAN_PDA is not set | ||
1626 | # CONFIG_USB_SERIAL_KEYSPAN is not set | ||
1627 | # CONFIG_USB_SERIAL_KLSI is not set | ||
1628 | # CONFIG_USB_SERIAL_KOBIL_SCT is not set | ||
1629 | # CONFIG_USB_SERIAL_MCT_U232 is not set | ||
1630 | # CONFIG_USB_SERIAL_MOS7720 is not set | ||
1631 | # CONFIG_USB_SERIAL_MOS7840 is not set | ||
1632 | # CONFIG_USB_SERIAL_MOTOROLA is not set | ||
1633 | # CONFIG_USB_SERIAL_NAVMAN is not set | ||
1634 | # CONFIG_USB_SERIAL_PL2303 is not set | ||
1635 | # CONFIG_USB_SERIAL_OTI6858 is not set | ||
1636 | # CONFIG_USB_SERIAL_QUALCOMM is not set | ||
1637 | # CONFIG_USB_SERIAL_SPCP8X5 is not set | ||
1638 | # CONFIG_USB_SERIAL_HP4X is not set | ||
1639 | # CONFIG_USB_SERIAL_SAFE is not set | ||
1640 | # CONFIG_USB_SERIAL_SIEMENS_MPI is not set | ||
1641 | # CONFIG_USB_SERIAL_SIERRAWIRELESS is not set | ||
1642 | # CONFIG_USB_SERIAL_SYMBOL is not set | ||
1643 | # CONFIG_USB_SERIAL_TI is not set | ||
1644 | # CONFIG_USB_SERIAL_CYBERJACK is not set | ||
1645 | # CONFIG_USB_SERIAL_XIRCOM is not set | ||
1646 | # CONFIG_USB_SERIAL_OPTION is not set | ||
1647 | # CONFIG_USB_SERIAL_OMNINET is not set | ||
1648 | # CONFIG_USB_SERIAL_OPTICON is not set | ||
1649 | # CONFIG_USB_SERIAL_DEBUG is not set | ||
1650 | |||
1651 | # | ||
1652 | # USB Miscellaneous drivers | ||
1653 | # | ||
1654 | # CONFIG_USB_EMI62 is not set | ||
1655 | # CONFIG_USB_EMI26 is not set | ||
1656 | # CONFIG_USB_ADUTUX is not set | ||
1657 | # CONFIG_USB_SEVSEG is not set | ||
1658 | # CONFIG_USB_RIO500 is not set | ||
1659 | # CONFIG_USB_LEGOTOWER is not set | ||
1660 | # CONFIG_USB_LCD is not set | ||
1661 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1662 | CONFIG_USB_LED=m | ||
1663 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1664 | # CONFIG_USB_CYTHERM is not set | ||
1665 | # CONFIG_USB_IDMOUSE is not set | ||
1666 | # CONFIG_USB_FTDI_ELAN is not set | ||
1667 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1668 | # CONFIG_USB_SISUSBVGA is not set | ||
1669 | # CONFIG_USB_LD is not set | ||
1670 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1671 | # CONFIG_USB_IOWARRIOR is not set | ||
1672 | # CONFIG_USB_TEST is not set | ||
1673 | # CONFIG_USB_ISIGHTFW is not set | ||
1674 | # CONFIG_USB_VST is not set | ||
1675 | CONFIG_USB_GADGET=m | ||
1676 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | ||
1677 | # CONFIG_USB_GADGET_DEBUG_FS is not set | ||
1678 | CONFIG_USB_GADGET_VBUS_DRAW=2 | ||
1679 | CONFIG_USB_GADGET_SELECTED=y | ||
1680 | # CONFIG_USB_GADGET_AT91 is not set | ||
1681 | # CONFIG_USB_GADGET_ATMEL_USBA is not set | ||
1682 | # CONFIG_USB_GADGET_FSL_USB2 is not set | ||
1683 | # CONFIG_USB_GADGET_LH7A40X is not set | ||
1684 | # CONFIG_USB_GADGET_OMAP is not set | ||
1685 | # CONFIG_USB_GADGET_PXA25X is not set | ||
1686 | # CONFIG_USB_GADGET_R8A66597 is not set | ||
1687 | # CONFIG_USB_GADGET_PXA27X is not set | ||
1688 | # CONFIG_USB_GADGET_S3C_HSOTG is not set | ||
1689 | # CONFIG_USB_GADGET_IMX is not set | ||
1690 | # CONFIG_USB_GADGET_S3C2410 is not set | ||
1691 | CONFIG_USB_GADGET_M66592=y | ||
1692 | CONFIG_USB_M66592=m | ||
1693 | # CONFIG_USB_GADGET_AMD5536UDC is not set | ||
1694 | # CONFIG_USB_GADGET_FSL_QE is not set | ||
1695 | # CONFIG_USB_GADGET_CI13XXX is not set | ||
1696 | # CONFIG_USB_GADGET_NET2280 is not set | ||
1697 | # CONFIG_USB_GADGET_GOKU is not set | ||
1698 | # CONFIG_USB_GADGET_LANGWELL is not set | ||
1699 | # CONFIG_USB_GADGET_DUMMY_HCD is not set | ||
1700 | CONFIG_USB_GADGET_DUALSPEED=y | ||
1701 | # CONFIG_USB_ZERO is not set | ||
1702 | # CONFIG_USB_AUDIO is not set | ||
1703 | # CONFIG_USB_ETH is not set | ||
1704 | # CONFIG_USB_GADGETFS is not set | ||
1705 | # CONFIG_USB_FILE_STORAGE is not set | ||
1706 | # CONFIG_USB_MASS_STORAGE is not set | ||
1707 | # CONFIG_USB_G_SERIAL is not set | ||
1708 | # CONFIG_USB_MIDI_GADGET is not set | ||
1709 | # CONFIG_USB_G_PRINTER is not set | ||
1710 | # CONFIG_USB_CDC_COMPOSITE is not set | ||
1711 | # CONFIG_USB_G_MULTI is not set | ||
1712 | |||
1713 | # | ||
1714 | # OTG and related infrastructure | ||
1715 | # | ||
1716 | # CONFIG_NOP_USB_XCEIV is not set | ||
1717 | CONFIG_UWB=m | ||
1718 | CONFIG_UWB_HWA=m | ||
1719 | CONFIG_UWB_WHCI=m | ||
1720 | # CONFIG_UWB_WLP is not set | ||
1721 | # CONFIG_UWB_I1480U is not set | ||
1722 | CONFIG_MMC=m | ||
1723 | # CONFIG_MMC_DEBUG is not set | ||
1724 | # CONFIG_MMC_UNSAFE_RESUME is not set | ||
1725 | |||
1726 | # | ||
1727 | # MMC/SD/SDIO Card Drivers | ||
1728 | # | ||
1729 | CONFIG_MMC_BLOCK=m | ||
1730 | CONFIG_MMC_BLOCK_BOUNCE=y | ||
1731 | # CONFIG_SDIO_UART is not set | ||
1732 | # CONFIG_MMC_TEST is not set | ||
1733 | |||
1734 | # | ||
1735 | # MMC/SD/SDIO Host Controller Drivers | ||
1736 | # | ||
1737 | # CONFIG_MMC_SDHCI is not set | ||
1738 | # CONFIG_MMC_AT91 is not set | ||
1739 | # CONFIG_MMC_ATMELMCI is not set | ||
1740 | # CONFIG_MMC_TIFM_SD is not set | ||
1741 | # CONFIG_MMC_CB710 is not set | ||
1742 | # CONFIG_MMC_VIA_SDMMC is not set | ||
1743 | # CONFIG_MEMSTICK is not set | ||
1744 | CONFIG_NEW_LEDS=y | ||
1745 | CONFIG_LEDS_CLASS=m | ||
1746 | |||
1747 | # | ||
1748 | # LED drivers | ||
1749 | # | ||
1750 | |||
1751 | # | ||
1752 | # LED Triggers | ||
1753 | # | ||
1754 | CONFIG_LEDS_TRIGGERS=y | ||
1755 | # CONFIG_LEDS_TRIGGER_TIMER is not set | ||
1756 | # CONFIG_LEDS_TRIGGER_IDE_DISK is not set | ||
1757 | # CONFIG_LEDS_TRIGGER_HEARTBEAT is not set | ||
1758 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set | ||
1759 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set | ||
1760 | |||
1761 | # | ||
1762 | # iptables trigger is under Netfilter config (LED target) | ||
1763 | # | ||
1764 | # CONFIG_ACCESSIBILITY is not set | ||
1765 | # CONFIG_INFINIBAND is not set | ||
1766 | # CONFIG_RTC_CLASS is not set | ||
1767 | # CONFIG_DMADEVICES is not set | ||
1768 | # CONFIG_AUXDISPLAY is not set | ||
1769 | # CONFIG_UIO is not set | ||
1770 | |||
1771 | # | ||
1772 | # TI VLYNQ | ||
1773 | # | ||
1774 | CONFIG_STAGING=y | ||
1775 | # CONFIG_STAGING_EXCLUDE_BUILD is not set | ||
1776 | # CONFIG_ET131X is not set | ||
1777 | # CONFIG_USB_IP_COMMON is not set | ||
1778 | # CONFIG_W35UND is not set | ||
1779 | # CONFIG_ECHO is not set | ||
1780 | # CONFIG_OTUS is not set | ||
1781 | # CONFIG_COMEDI is not set | ||
1782 | # CONFIG_ASUS_OLED is not set | ||
1783 | # CONFIG_ALTERA_PCIE_CHDMA is not set | ||
1784 | # CONFIG_R8187SE is not set | ||
1785 | # CONFIG_RTL8192E is not set | ||
1786 | # CONFIG_INPUT_MIMIO is not set | ||
1787 | # CONFIG_TRANZPORT is not set | ||
1788 | |||
1789 | # | ||
1790 | # Qualcomm MSM Camera And Video | ||
1791 | # | ||
1792 | |||
1793 | # | ||
1794 | # Camera Sensor Selection | ||
1795 | # | ||
1796 | # CONFIG_INPUT_GPIO is not set | ||
1797 | # CONFIG_POHMELFS is not set | ||
1798 | # CONFIG_B3DFG is not set | ||
1799 | # CONFIG_PLAN9AUTH is not set | ||
1800 | # CONFIG_LINE6_USB is not set | ||
1801 | # CONFIG_USB_SERIAL_QUATECH2 is not set | ||
1802 | # CONFIG_USB_SERIAL_QUATECH_USB2 is not set | ||
1803 | # CONFIG_VT6655 is not set | ||
1804 | # CONFIG_VT6656 is not set | ||
1805 | # CONFIG_FB_UDL is not set | ||
1806 | # CONFIG_VME_BUS is not set | ||
1807 | |||
1808 | # | ||
1809 | # RAR Register Driver | ||
1810 | # | ||
1811 | # CONFIG_RAR_REGISTER is not set | ||
1812 | # CONFIG_IIO is not set | ||
1813 | # CONFIG_RAMZSWAP is not set | ||
1814 | # CONFIG_BATMAN_ADV is not set | ||
1815 | # CONFIG_STRIP is not set | ||
1816 | # CONFIG_WAVELAN is not set | ||
1817 | CONFIG_FB_SM7XX=y | ||
1818 | # CONFIG_FB_SM7XX_ACCEL is not set | ||
1819 | |||
1820 | # | ||
1821 | # File systems | ||
1822 | # | ||
1823 | CONFIG_EXT2_FS=m | ||
1824 | # CONFIG_EXT2_FS_XATTR is not set | ||
1825 | # CONFIG_EXT2_FS_XIP is not set | ||
1826 | CONFIG_EXT3_FS=y | ||
1827 | # CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set | ||
1828 | CONFIG_EXT3_FS_XATTR=y | ||
1829 | CONFIG_EXT3_FS_POSIX_ACL=y | ||
1830 | CONFIG_EXT3_FS_SECURITY=y | ||
1831 | CONFIG_EXT4_FS=y | ||
1832 | CONFIG_EXT4_FS_XATTR=y | ||
1833 | # CONFIG_EXT4_FS_POSIX_ACL is not set | ||
1834 | # CONFIG_EXT4_FS_SECURITY is not set | ||
1835 | # CONFIG_EXT4_DEBUG is not set | ||
1836 | CONFIG_JBD=y | ||
1837 | # CONFIG_JBD_DEBUG is not set | ||
1838 | CONFIG_JBD2=y | ||
1839 | # CONFIG_JBD2_DEBUG is not set | ||
1840 | CONFIG_FS_MBCACHE=y | ||
1841 | CONFIG_REISERFS_FS=m | ||
1842 | # CONFIG_REISERFS_CHECK is not set | ||
1843 | CONFIG_REISERFS_PROC_INFO=y | ||
1844 | CONFIG_REISERFS_FS_XATTR=y | ||
1845 | # CONFIG_REISERFS_FS_POSIX_ACL is not set | ||
1846 | # CONFIG_REISERFS_FS_SECURITY is not set | ||
1847 | CONFIG_JFS_FS=m | ||
1848 | CONFIG_JFS_POSIX_ACL=y | ||
1849 | # CONFIG_JFS_SECURITY is not set | ||
1850 | # CONFIG_JFS_DEBUG is not set | ||
1851 | # CONFIG_JFS_STATISTICS is not set | ||
1852 | CONFIG_FS_POSIX_ACL=y | ||
1853 | CONFIG_XFS_FS=m | ||
1854 | CONFIG_XFS_QUOTA=y | ||
1855 | CONFIG_XFS_POSIX_ACL=y | ||
1856 | # CONFIG_XFS_RT is not set | ||
1857 | # CONFIG_XFS_DEBUG is not set | ||
1858 | # CONFIG_GFS2_FS is not set | ||
1859 | # CONFIG_OCFS2_FS is not set | ||
1860 | CONFIG_BTRFS_FS=m | ||
1861 | # CONFIG_BTRFS_FS_POSIX_ACL is not set | ||
1862 | # CONFIG_NILFS2_FS is not set | ||
1863 | CONFIG_FILE_LOCKING=y | ||
1864 | CONFIG_FSNOTIFY=y | ||
1865 | CONFIG_DNOTIFY=y | ||
1866 | CONFIG_INOTIFY=y | ||
1867 | CONFIG_INOTIFY_USER=y | ||
1868 | CONFIG_QUOTA=y | ||
1869 | # CONFIG_QUOTA_NETLINK_INTERFACE is not set | ||
1870 | CONFIG_PRINT_QUOTA_WARNING=y | ||
1871 | CONFIG_QUOTA_TREE=m | ||
1872 | # CONFIG_QFMT_V1 is not set | ||
1873 | CONFIG_QFMT_V2=m | ||
1874 | CONFIG_QUOTACTL=y | ||
1875 | CONFIG_AUTOFS_FS=m | ||
1876 | CONFIG_AUTOFS4_FS=m | ||
1877 | # CONFIG_FUSE_FS is not set | ||
1878 | |||
1879 | # | ||
1880 | # Caches | ||
1881 | # | ||
1882 | CONFIG_FSCACHE=m | ||
1883 | # CONFIG_FSCACHE_STATS is not set | ||
1884 | # CONFIG_FSCACHE_HISTOGRAM is not set | ||
1885 | # CONFIG_FSCACHE_DEBUG is not set | ||
1886 | # CONFIG_FSCACHE_OBJECT_LIST is not set | ||
1887 | CONFIG_CACHEFILES=m | ||
1888 | # CONFIG_CACHEFILES_DEBUG is not set | ||
1889 | # CONFIG_CACHEFILES_HISTOGRAM is not set | ||
1890 | |||
1891 | # | ||
1892 | # CD-ROM/DVD Filesystems | ||
1893 | # | ||
1894 | CONFIG_ISO9660_FS=m | ||
1895 | CONFIG_JOLIET=y | ||
1896 | CONFIG_ZISOFS=y | ||
1897 | # CONFIG_UDF_FS is not set | ||
1898 | |||
1899 | # | ||
1900 | # DOS/FAT/NT Filesystems | ||
1901 | # | ||
1902 | CONFIG_FAT_FS=m | ||
1903 | CONFIG_MSDOS_FS=m | ||
1904 | CONFIG_VFAT_FS=m | ||
1905 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
1906 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
1907 | CONFIG_NTFS_FS=m | ||
1908 | # CONFIG_NTFS_DEBUG is not set | ||
1909 | CONFIG_NTFS_RW=y | ||
1910 | |||
1911 | # | ||
1912 | # Pseudo filesystems | ||
1913 | # | ||
1914 | CONFIG_PROC_FS=y | ||
1915 | CONFIG_PROC_KCORE=y | ||
1916 | CONFIG_PROC_SYSCTL=y | ||
1917 | CONFIG_PROC_PAGE_MONITOR=y | ||
1918 | CONFIG_SYSFS=y | ||
1919 | CONFIG_TMPFS=y | ||
1920 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
1921 | # CONFIG_HUGETLB_PAGE is not set | ||
1922 | CONFIG_CONFIGFS_FS=m | ||
1923 | CONFIG_MISC_FILESYSTEMS=y | ||
1924 | # CONFIG_ADFS_FS is not set | ||
1925 | # CONFIG_AFFS_FS is not set | ||
1926 | # CONFIG_ECRYPT_FS is not set | ||
1927 | # CONFIG_HFS_FS is not set | ||
1928 | # CONFIG_HFSPLUS_FS is not set | ||
1929 | # CONFIG_BEFS_FS is not set | ||
1930 | # CONFIG_BFS_FS is not set | ||
1931 | # CONFIG_EFS_FS is not set | ||
1932 | CONFIG_CRAMFS=m | ||
1933 | CONFIG_SQUASHFS=m | ||
1934 | CONFIG_SQUASHFS_EMBEDDED=y | ||
1935 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
1936 | # CONFIG_VXFS_FS is not set | ||
1937 | # CONFIG_MINIX_FS is not set | ||
1938 | # CONFIG_OMFS_FS is not set | ||
1939 | # CONFIG_HPFS_FS is not set | ||
1940 | # CONFIG_QNX4FS_FS is not set | ||
1941 | CONFIG_ROMFS_FS=m | ||
1942 | CONFIG_ROMFS_BACKED_BY_BLOCK=y | ||
1943 | # CONFIG_ROMFS_BACKED_BY_MTD is not set | ||
1944 | # CONFIG_ROMFS_BACKED_BY_BOTH is not set | ||
1945 | CONFIG_ROMFS_ON_BLOCK=y | ||
1946 | # CONFIG_SYSV_FS is not set | ||
1947 | # CONFIG_UFS_FS is not set | ||
1948 | CONFIG_NETWORK_FILESYSTEMS=y | ||
1949 | CONFIG_NFS_FS=m | ||
1950 | CONFIG_NFS_V3=y | ||
1951 | CONFIG_NFS_V3_ACL=y | ||
1952 | # CONFIG_NFS_V4 is not set | ||
1953 | # CONFIG_NFS_FSCACHE is not set | ||
1954 | CONFIG_NFSD=m | ||
1955 | CONFIG_NFSD_V3=y | ||
1956 | # CONFIG_NFSD_V3_ACL is not set | ||
1957 | CONFIG_NFSD_V4=y | ||
1958 | CONFIG_LOCKD=m | ||
1959 | CONFIG_LOCKD_V4=y | ||
1960 | CONFIG_EXPORTFS=m | ||
1961 | CONFIG_NFS_ACL_SUPPORT=m | ||
1962 | CONFIG_NFS_COMMON=y | ||
1963 | CONFIG_SUNRPC=m | ||
1964 | CONFIG_SUNRPC_GSS=m | ||
1965 | CONFIG_RPCSEC_GSS_KRB5=m | ||
1966 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
1967 | # CONFIG_SMB_FS is not set | ||
1968 | CONFIG_CIFS=m | ||
1969 | # CONFIG_CIFS_STATS is not set | ||
1970 | # CONFIG_CIFS_WEAK_PW_HASH is not set | ||
1971 | # CONFIG_CIFS_UPCALL is not set | ||
1972 | # CONFIG_CIFS_XATTR is not set | ||
1973 | # CONFIG_CIFS_DEBUG2 is not set | ||
1974 | # CONFIG_CIFS_DFS_UPCALL is not set | ||
1975 | # CONFIG_CIFS_EXPERIMENTAL is not set | ||
1976 | # CONFIG_NCP_FS is not set | ||
1977 | # CONFIG_CODA_FS is not set | ||
1978 | # CONFIG_AFS_FS is not set | ||
1979 | |||
1980 | # | ||
1981 | # Partition Types | ||
1982 | # | ||
1983 | # CONFIG_PARTITION_ADVANCED is not set | ||
1984 | CONFIG_MSDOS_PARTITION=y | ||
1985 | CONFIG_NLS=y | ||
1986 | CONFIG_NLS_DEFAULT="utf8" | ||
1987 | CONFIG_NLS_CODEPAGE_437=m | ||
1988 | CONFIG_NLS_CODEPAGE_737=m | ||
1989 | CONFIG_NLS_CODEPAGE_775=m | ||
1990 | CONFIG_NLS_CODEPAGE_850=m | ||
1991 | CONFIG_NLS_CODEPAGE_852=m | ||
1992 | CONFIG_NLS_CODEPAGE_855=m | ||
1993 | CONFIG_NLS_CODEPAGE_857=m | ||
1994 | CONFIG_NLS_CODEPAGE_860=m | ||
1995 | CONFIG_NLS_CODEPAGE_861=m | ||
1996 | CONFIG_NLS_CODEPAGE_862=m | ||
1997 | CONFIG_NLS_CODEPAGE_863=m | ||
1998 | CONFIG_NLS_CODEPAGE_864=m | ||
1999 | CONFIG_NLS_CODEPAGE_865=m | ||
2000 | CONFIG_NLS_CODEPAGE_866=m | ||
2001 | CONFIG_NLS_CODEPAGE_869=m | ||
2002 | CONFIG_NLS_CODEPAGE_936=m | ||
2003 | CONFIG_NLS_CODEPAGE_950=m | ||
2004 | CONFIG_NLS_CODEPAGE_932=m | ||
2005 | CONFIG_NLS_CODEPAGE_949=m | ||
2006 | CONFIG_NLS_CODEPAGE_874=m | ||
2007 | CONFIG_NLS_ISO8859_8=m | ||
2008 | CONFIG_NLS_CODEPAGE_1250=m | ||
2009 | CONFIG_NLS_CODEPAGE_1251=m | ||
2010 | CONFIG_NLS_ASCII=m | ||
2011 | CONFIG_NLS_ISO8859_1=m | ||
2012 | CONFIG_NLS_ISO8859_2=m | ||
2013 | CONFIG_NLS_ISO8859_3=m | ||
2014 | CONFIG_NLS_ISO8859_4=m | ||
2015 | CONFIG_NLS_ISO8859_5=m | ||
2016 | CONFIG_NLS_ISO8859_6=m | ||
2017 | CONFIG_NLS_ISO8859_7=m | ||
2018 | CONFIG_NLS_ISO8859_9=m | ||
2019 | CONFIG_NLS_ISO8859_13=m | ||
2020 | CONFIG_NLS_ISO8859_14=m | ||
2021 | CONFIG_NLS_ISO8859_15=m | ||
2022 | CONFIG_NLS_KOI8_R=m | ||
2023 | CONFIG_NLS_KOI8_U=m | ||
2024 | CONFIG_NLS_UTF8=y | ||
2025 | # CONFIG_DLM is not set | ||
2026 | |||
2027 | # | ||
2028 | # Kernel hacking | ||
2029 | # | ||
2030 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
2031 | CONFIG_PRINTK_TIME=y | ||
2032 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
2033 | CONFIG_ENABLE_MUST_CHECK=y | ||
2034 | CONFIG_FRAME_WARN=1024 | ||
2035 | # CONFIG_MAGIC_SYSRQ is not set | ||
2036 | CONFIG_STRIP_ASM_SYMS=y | ||
2037 | # CONFIG_UNUSED_SYMBOLS is not set | ||
2038 | CONFIG_DEBUG_FS=y | ||
2039 | # CONFIG_HEADERS_CHECK is not set | ||
2040 | # CONFIG_DEBUG_KERNEL is not set | ||
2041 | # CONFIG_SLUB_DEBUG_ON is not set | ||
2042 | # CONFIG_SLUB_STATS is not set | ||
2043 | CONFIG_STACKTRACE=y | ||
2044 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
2045 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
2046 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
2047 | CONFIG_NOP_TRACER=y | ||
2048 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
2049 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
2050 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
2051 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
2052 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
2053 | CONFIG_RING_BUFFER=y | ||
2054 | CONFIG_EVENT_TRACING=y | ||
2055 | CONFIG_CONTEXT_SWITCH_TRACER=y | ||
2056 | CONFIG_RING_BUFFER_ALLOW_SWAP=y | ||
2057 | CONFIG_TRACING=y | ||
2058 | CONFIG_TRACING_SUPPORT=y | ||
2059 | # CONFIG_FTRACE is not set | ||
2060 | # CONFIG_DYNAMIC_DEBUG is not set | ||
2061 | # CONFIG_SAMPLES is not set | ||
2062 | CONFIG_HAVE_ARCH_KGDB=y | ||
2063 | CONFIG_EARLY_PRINTK=y | ||
2064 | # CONFIG_CMDLINE_BOOL is not set | ||
2065 | |||
2066 | # | ||
2067 | # Security options | ||
2068 | # | ||
2069 | CONFIG_KEYS=y | ||
2070 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | ||
2071 | # CONFIG_SECURITY is not set | ||
2072 | # CONFIG_SECURITYFS is not set | ||
2073 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set | ||
2074 | # CONFIG_DEFAULT_SECURITY_SMACK is not set | ||
2075 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set | ||
2076 | CONFIG_DEFAULT_SECURITY_DAC=y | ||
2077 | CONFIG_DEFAULT_SECURITY="" | ||
2078 | CONFIG_XOR_BLOCKS=m | ||
2079 | CONFIG_ASYNC_CORE=m | ||
2080 | CONFIG_ASYNC_MEMCPY=m | ||
2081 | CONFIG_ASYNC_XOR=m | ||
2082 | CONFIG_ASYNC_PQ=m | ||
2083 | CONFIG_ASYNC_RAID6_RECOV=m | ||
2084 | CONFIG_CRYPTO=y | ||
2085 | |||
2086 | # | ||
2087 | # Crypto core or helper | ||
2088 | # | ||
2089 | CONFIG_CRYPTO_FIPS=y | ||
2090 | CONFIG_CRYPTO_ALGAPI=y | ||
2091 | CONFIG_CRYPTO_ALGAPI2=y | ||
2092 | CONFIG_CRYPTO_AEAD=m | ||
2093 | CONFIG_CRYPTO_AEAD2=y | ||
2094 | CONFIG_CRYPTO_BLKCIPHER=m | ||
2095 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
2096 | CONFIG_CRYPTO_HASH=y | ||
2097 | CONFIG_CRYPTO_HASH2=y | ||
2098 | CONFIG_CRYPTO_RNG=m | ||
2099 | CONFIG_CRYPTO_RNG2=y | ||
2100 | CONFIG_CRYPTO_PCOMP=y | ||
2101 | CONFIG_CRYPTO_MANAGER=m | ||
2102 | CONFIG_CRYPTO_MANAGER2=y | ||
2103 | CONFIG_CRYPTO_GF128MUL=m | ||
2104 | CONFIG_CRYPTO_NULL=m | ||
2105 | CONFIG_CRYPTO_WORKQUEUE=y | ||
2106 | CONFIG_CRYPTO_CRYPTD=m | ||
2107 | CONFIG_CRYPTO_AUTHENC=m | ||
2108 | CONFIG_CRYPTO_TEST=m | ||
2109 | |||
2110 | # | ||
2111 | # Authenticated Encryption with Associated Data | ||
2112 | # | ||
2113 | CONFIG_CRYPTO_CCM=m | ||
2114 | CONFIG_CRYPTO_GCM=m | ||
2115 | CONFIG_CRYPTO_SEQIV=m | ||
2116 | |||
2117 | # | ||
2118 | # Block modes | ||
2119 | # | ||
2120 | CONFIG_CRYPTO_CBC=m | ||
2121 | CONFIG_CRYPTO_CTR=m | ||
2122 | # CONFIG_CRYPTO_CTS is not set | ||
2123 | CONFIG_CRYPTO_ECB=m | ||
2124 | CONFIG_CRYPTO_LRW=m | ||
2125 | CONFIG_CRYPTO_PCBC=m | ||
2126 | CONFIG_CRYPTO_XTS=m | ||
2127 | |||
2128 | # | ||
2129 | # Hash modes | ||
2130 | # | ||
2131 | CONFIG_CRYPTO_HMAC=m | ||
2132 | CONFIG_CRYPTO_XCBC=m | ||
2133 | # CONFIG_CRYPTO_VMAC is not set | ||
2134 | |||
2135 | # | ||
2136 | # Digest | ||
2137 | # | ||
2138 | CONFIG_CRYPTO_CRC32C=m | ||
2139 | CONFIG_CRYPTO_GHASH=m | ||
2140 | CONFIG_CRYPTO_MD4=m | ||
2141 | CONFIG_CRYPTO_MD5=y | ||
2142 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
2143 | CONFIG_CRYPTO_RMD128=m | ||
2144 | CONFIG_CRYPTO_RMD160=m | ||
2145 | CONFIG_CRYPTO_RMD256=m | ||
2146 | CONFIG_CRYPTO_RMD320=m | ||
2147 | CONFIG_CRYPTO_SHA1=m | ||
2148 | CONFIG_CRYPTO_SHA256=m | ||
2149 | CONFIG_CRYPTO_SHA512=m | ||
2150 | CONFIG_CRYPTO_TGR192=m | ||
2151 | CONFIG_CRYPTO_WP512=m | ||
2152 | |||
2153 | # | ||
2154 | # Ciphers | ||
2155 | # | ||
2156 | CONFIG_CRYPTO_AES=m | ||
2157 | CONFIG_CRYPTO_ANUBIS=m | ||
2158 | CONFIG_CRYPTO_ARC4=m | ||
2159 | CONFIG_CRYPTO_BLOWFISH=m | ||
2160 | CONFIG_CRYPTO_CAMELLIA=m | ||
2161 | CONFIG_CRYPTO_CAST5=m | ||
2162 | CONFIG_CRYPTO_CAST6=m | ||
2163 | CONFIG_CRYPTO_DES=m | ||
2164 | CONFIG_CRYPTO_FCRYPT=m | ||
2165 | CONFIG_CRYPTO_KHAZAD=m | ||
2166 | CONFIG_CRYPTO_SALSA20=m | ||
2167 | CONFIG_CRYPTO_SEED=m | ||
2168 | CONFIG_CRYPTO_SERPENT=m | ||
2169 | CONFIG_CRYPTO_TEA=m | ||
2170 | CONFIG_CRYPTO_TWOFISH=m | ||
2171 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
2172 | |||
2173 | # | ||
2174 | # Compression | ||
2175 | # | ||
2176 | CONFIG_CRYPTO_DEFLATE=m | ||
2177 | CONFIG_CRYPTO_ZLIB=m | ||
2178 | CONFIG_CRYPTO_LZO=m | ||
2179 | |||
2180 | # | ||
2181 | # Random Number Generation | ||
2182 | # | ||
2183 | CONFIG_CRYPTO_ANSI_CPRNG=m | ||
2184 | CONFIG_CRYPTO_HW=y | ||
2185 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set | ||
2186 | CONFIG_BINARY_PRINTF=y | ||
2187 | |||
2188 | # | ||
2189 | # Library routines | ||
2190 | # | ||
2191 | CONFIG_BITREVERSE=y | ||
2192 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
2193 | # CONFIG_CRC_CCITT is not set | ||
2194 | CONFIG_CRC16=y | ||
2195 | CONFIG_CRC_T10DIF=y | ||
2196 | # CONFIG_CRC_ITU_T is not set | ||
2197 | CONFIG_CRC32=y | ||
2198 | # CONFIG_CRC7 is not set | ||
2199 | CONFIG_LIBCRC32C=m | ||
2200 | CONFIG_AUDIT_GENERIC=y | ||
2201 | CONFIG_ZLIB_INFLATE=y | ||
2202 | CONFIG_ZLIB_DEFLATE=m | ||
2203 | CONFIG_LZO_COMPRESS=m | ||
2204 | CONFIG_LZO_DECOMPRESS=m | ||
2205 | CONFIG_DECOMPRESS_GZIP=y | ||
2206 | CONFIG_DECOMPRESS_BZIP2=y | ||
2207 | CONFIG_DECOMPRESS_LZMA=y | ||
2208 | CONFIG_HAS_IOMEM=y | ||
2209 | CONFIG_HAS_IOPORT=y | ||
2210 | CONFIG_HAS_DMA=y | ||
2211 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/malta_defconfig b/arch/mips/configs/malta_defconfig index 3f01870b4d65..d3c601206db2 100644 --- a/arch/mips/configs/malta_defconfig +++ b/arch/mips/configs/malta_defconfig | |||
@@ -10,7 +10,6 @@ CONFIG_MIPS=y | |||
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | 11 | CONFIG_ZONE_DMA=y |
12 | # CONFIG_MACH_ALCHEMY is not set | 12 | # CONFIG_MACH_ALCHEMY is not set |
13 | # CONFIG_BASLER_EXCITE is not set | ||
14 | # CONFIG_BCM47XX is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_COBALT is not set | 14 | # CONFIG_MIPS_COBALT is not set |
16 | # CONFIG_MACH_DECSTATION is not set | 15 | # CONFIG_MACH_DECSTATION is not set |
@@ -1591,7 +1590,7 @@ CONFIG_FRAME_WARN=1024 | |||
1591 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | 1590 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set |
1592 | # CONFIG_SAMPLES is not set | 1591 | # CONFIG_SAMPLES is not set |
1593 | CONFIG_HAVE_ARCH_KGDB=y | 1592 | CONFIG_HAVE_ARCH_KGDB=y |
1594 | CONFIG_CMDLINE="" | 1593 | # CONFIG_CMDLINE_BOOL is not set |
1595 | 1594 | ||
1596 | # | 1595 | # |
1597 | # Security options | 1596 | # Security options |
diff --git a/arch/mips/configs/markeins_defconfig b/arch/mips/configs/markeins_defconfig index d001f7e87418..6a325c02b63c 100644 --- a/arch/mips/configs/markeins_defconfig +++ b/arch/mips/configs/markeins_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -1366,7 +1365,9 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
1366 | # CONFIG_DEBUG_KERNEL is not set | 1365 | # CONFIG_DEBUG_KERNEL is not set |
1367 | CONFIG_LOG_BUF_SHIFT=14 | 1366 | CONFIG_LOG_BUF_SHIFT=14 |
1368 | CONFIG_CROSSCOMPILE=y | 1367 | CONFIG_CROSSCOMPILE=y |
1368 | CONFIG_CMDLINE_BOOL=y | ||
1369 | CONFIG_CMDLINE="console=ttyS0,115200 mem=192m ip=bootp root=/dev/nfs rw" | 1369 | CONFIG_CMDLINE="console=ttyS0,115200 mem=192m ip=bootp root=/dev/nfs rw" |
1370 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1370 | 1371 | ||
1371 | # | 1372 | # |
1372 | # Security options | 1373 | # Security options |
diff --git a/arch/mips/configs/mipssim_defconfig b/arch/mips/configs/mipssim_defconfig index 7358454deaa6..f77a34e0f938 100644 --- a/arch/mips/configs/mipssim_defconfig +++ b/arch/mips/configs/mipssim_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -635,7 +634,9 @@ CONFIG_FORCED_INLINING=y | |||
635 | # CONFIG_RCU_TORTURE_TEST is not set | 634 | # CONFIG_RCU_TORTURE_TEST is not set |
636 | # CONFIG_FAULT_INJECTION is not set | 635 | # CONFIG_FAULT_INJECTION is not set |
637 | CONFIG_CROSSCOMPILE=y | 636 | CONFIG_CROSSCOMPILE=y |
637 | CONFIG_CMDLINE_BOOL=y | ||
638 | CONFIG_CMDLINE="nfsroot=192.168.192.169:/u1/mipsel,timeo=20 ip=dhcp" | 638 | CONFIG_CMDLINE="nfsroot=192.168.192.169:/u1/mipsel,timeo=20 ip=dhcp" |
639 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
639 | # CONFIG_DEBUG_STACK_USAGE is not set | 640 | # CONFIG_DEBUG_STACK_USAGE is not set |
640 | # CONFIG_RUNTIME_DEBUG is not set | 641 | # CONFIG_RUNTIME_DEBUG is not set |
641 | 642 | ||
diff --git a/arch/mips/configs/mpc30x_defconfig b/arch/mips/configs/mpc30x_defconfig index 8c720e51795b..17203056b22b 100644 --- a/arch/mips/configs/mpc30x_defconfig +++ b/arch/mips/configs/mpc30x_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_MIPS_COBALT is not set | 12 | # CONFIG_MIPS_COBALT is not set |
14 | # CONFIG_MACH_DECSTATION is not set | 13 | # CONFIG_MACH_DECSTATION is not set |
15 | # CONFIG_MACH_JAZZ is not set | 14 | # CONFIG_MACH_JAZZ is not set |
@@ -817,7 +816,9 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
817 | # CONFIG_HEADERS_CHECK is not set | 816 | # CONFIG_HEADERS_CHECK is not set |
818 | # CONFIG_DEBUG_KERNEL is not set | 817 | # CONFIG_DEBUG_KERNEL is not set |
819 | CONFIG_CROSSCOMPILE=y | 818 | CONFIG_CROSSCOMPILE=y |
819 | CONFIG_CMDLINE_BOOL=y | ||
820 | CONFIG_CMDLINE="mem=32M console=ttyVR0,19200 ide0=0x170,0x376,73" | 820 | CONFIG_CMDLINE="mem=32M console=ttyVR0,19200 ide0=0x170,0x376,73" |
821 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
821 | 822 | ||
822 | # | 823 | # |
823 | # Security options | 824 | # Security options |
diff --git a/arch/mips/configs/msp71xx_defconfig b/arch/mips/configs/msp71xx_defconfig index ecbc030b7b6c..000d185ddf42 100644 --- a/arch/mips/configs/msp71xx_defconfig +++ b/arch/mips/configs/msp71xx_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -1412,7 +1411,7 @@ CONFIG_FORCED_INLINING=y | |||
1412 | # CONFIG_RCU_TORTURE_TEST is not set | 1411 | # CONFIG_RCU_TORTURE_TEST is not set |
1413 | # CONFIG_FAULT_INJECTION is not set | 1412 | # CONFIG_FAULT_INJECTION is not set |
1414 | CONFIG_CROSSCOMPILE=y | 1413 | CONFIG_CROSSCOMPILE=y |
1415 | CONFIG_CMDLINE="" | 1414 | # CONFIG_CMDLINE_BOOL is not set |
1416 | # CONFIG_DEBUG_STACK_USAGE is not set | 1415 | # CONFIG_DEBUG_STACK_USAGE is not set |
1417 | # CONFIG_RUNTIME_DEBUG is not set | 1416 | # CONFIG_RUNTIME_DEBUG is not set |
1418 | # CONFIG_MIPS_UNCACHED is not set | 1417 | # CONFIG_MIPS_UNCACHED is not set |
diff --git a/arch/mips/configs/mtx1_defconfig b/arch/mips/configs/mtx1_defconfig index 9477f040796d..144b94d9a6ad 100644 --- a/arch/mips/configs/mtx1_defconfig +++ b/arch/mips/configs/mtx1_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_MIPS_COBALT is not set | 12 | # CONFIG_MIPS_COBALT is not set |
14 | # CONFIG_MACH_DECSTATION is not set | 13 | # CONFIG_MACH_DECSTATION is not set |
15 | # CONFIG_MACH_JAZZ is not set | 14 | # CONFIG_MACH_JAZZ is not set |
@@ -3018,7 +3017,7 @@ CONFIG_MAGIC_SYSRQ=y | |||
3018 | # CONFIG_HEADERS_CHECK is not set | 3017 | # CONFIG_HEADERS_CHECK is not set |
3019 | # CONFIG_DEBUG_KERNEL is not set | 3018 | # CONFIG_DEBUG_KERNEL is not set |
3020 | CONFIG_CROSSCOMPILE=y | 3019 | CONFIG_CROSSCOMPILE=y |
3021 | CONFIG_CMDLINE="" | 3020 | # CONFIG_CMDLINE_BOOL is not set |
3022 | 3021 | ||
3023 | # | 3022 | # |
3024 | # Security options | 3023 | # Security options |
diff --git a/arch/mips/configs/pb1100_defconfig b/arch/mips/configs/pb1100_defconfig index be8091ef0a79..97382b698b9b 100644 --- a/arch/mips/configs/pb1100_defconfig +++ b/arch/mips/configs/pb1100_defconfig | |||
@@ -1,80 +1,103 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:37 2007 | 4 | # Fri Feb 26 09:53:29 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | CONFIG_MIPS_PB1100=y | ||
17 | # CONFIG_MIPS_PB1500 is not set | ||
18 | # CONFIG_MIPS_PB1550 is not set | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | # CONFIG_MIPS_DB1000 is not set | ||
21 | # CONFIG_MIPS_DB1100 is not set | ||
22 | # CONFIG_MIPS_DB1500 is not set | ||
23 | # CONFIG_MIPS_DB1550 is not set | ||
24 | # CONFIG_MIPS_DB1200 is not set | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | CONFIG_MIPS_PB1100=y | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1100=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_NONCOHERENT=y | 83 | CONFIG_DMA_NONCOHERENT=y |
65 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
86 | # CONFIG_NO_IOPORT is not set | ||
87 | CONFIG_GENERIC_GPIO=y | ||
66 | # CONFIG_CPU_BIG_ENDIAN is not set | 88 | # CONFIG_CPU_BIG_ENDIAN is not set |
67 | CONFIG_CPU_LITTLE_ENDIAN=y | 89 | CONFIG_CPU_LITTLE_ENDIAN=y |
68 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 90 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
69 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 91 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
70 | CONFIG_SOC_AU1100=y | 92 | CONFIG_IRQ_CPU=y |
71 | CONFIG_SOC_AU1X00=y | ||
72 | CONFIG_SWAP_IO_SPACE=y | 93 | CONFIG_SWAP_IO_SPACE=y |
73 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 94 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
74 | 95 | ||
75 | # | 96 | # |
76 | # CPU selection | 97 | # CPU selection |
77 | # | 98 | # |
99 | # CONFIG_CPU_LOONGSON2E is not set | ||
100 | # CONFIG_CPU_LOONGSON2F is not set | ||
78 | CONFIG_CPU_MIPS32_R1=y | 101 | CONFIG_CPU_MIPS32_R1=y |
79 | # CONFIG_CPU_MIPS32_R2 is not set | 102 | # CONFIG_CPU_MIPS32_R2 is not set |
80 | # CONFIG_CPU_MIPS64_R1 is not set | 103 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -87,6 +110,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
87 | # CONFIG_CPU_TX49XX is not set | 110 | # CONFIG_CPU_TX49XX is not set |
88 | # CONFIG_CPU_R5000 is not set | 111 | # CONFIG_CPU_R5000 is not set |
89 | # CONFIG_CPU_R5432 is not set | 112 | # CONFIG_CPU_R5432 is not set |
113 | # CONFIG_CPU_R5500 is not set | ||
90 | # CONFIG_CPU_R6000 is not set | 114 | # CONFIG_CPU_R6000 is not set |
91 | # CONFIG_CPU_NEVADA is not set | 115 | # CONFIG_CPU_NEVADA is not set |
92 | # CONFIG_CPU_R8000 is not set | 116 | # CONFIG_CPU_R8000 is not set |
@@ -94,11 +118,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
94 | # CONFIG_CPU_RM7000 is not set | 118 | # CONFIG_CPU_RM7000 is not set |
95 | # CONFIG_CPU_RM9000 is not set | 119 | # CONFIG_CPU_RM9000 is not set |
96 | # CONFIG_CPU_SB1 is not set | 120 | # CONFIG_CPU_SB1 is not set |
121 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
122 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
97 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 123 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
98 | CONFIG_CPU_MIPS32=y | 124 | CONFIG_CPU_MIPS32=y |
99 | CONFIG_CPU_MIPSR1=y | 125 | CONFIG_CPU_MIPSR1=y |
100 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 126 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
101 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 127 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
128 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
102 | 129 | ||
103 | # | 130 | # |
104 | # Kernel type | 131 | # Kernel type |
@@ -108,184 +135,244 @@ CONFIG_32BIT=y | |||
108 | CONFIG_PAGE_SIZE_4KB=y | 135 | CONFIG_PAGE_SIZE_4KB=y |
109 | # CONFIG_PAGE_SIZE_8KB is not set | 136 | # CONFIG_PAGE_SIZE_8KB is not set |
110 | # CONFIG_PAGE_SIZE_16KB is not set | 137 | # CONFIG_PAGE_SIZE_16KB is not set |
138 | # CONFIG_PAGE_SIZE_32KB is not set | ||
111 | # CONFIG_PAGE_SIZE_64KB is not set | 139 | # CONFIG_PAGE_SIZE_64KB is not set |
112 | CONFIG_CPU_HAS_PREFETCH=y | 140 | CONFIG_CPU_HAS_PREFETCH=y |
113 | CONFIG_MIPS_MT_DISABLED=y | 141 | CONFIG_MIPS_MT_DISABLED=y |
114 | # CONFIG_MIPS_MT_SMP is not set | 142 | # CONFIG_MIPS_MT_SMP is not set |
115 | # CONFIG_MIPS_MT_SMTC is not set | 143 | # CONFIG_MIPS_MT_SMTC is not set |
116 | # CONFIG_MIPS_VPE_LOADER is not set | ||
117 | CONFIG_64BIT_PHYS_ADDR=y | 144 | CONFIG_64BIT_PHYS_ADDR=y |
145 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
118 | CONFIG_CPU_HAS_SYNC=y | 146 | CONFIG_CPU_HAS_SYNC=y |
119 | CONFIG_GENERIC_HARDIRQS=y | 147 | CONFIG_GENERIC_HARDIRQS=y |
120 | CONFIG_GENERIC_IRQ_PROBE=y | 148 | CONFIG_GENERIC_IRQ_PROBE=y |
121 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 149 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
122 | CONFIG_ARCH_FLATMEM_ENABLE=y | 150 | CONFIG_ARCH_FLATMEM_ENABLE=y |
151 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
123 | CONFIG_SELECT_MEMORY_MODEL=y | 152 | CONFIG_SELECT_MEMORY_MODEL=y |
124 | CONFIG_FLATMEM_MANUAL=y | 153 | CONFIG_FLATMEM_MANUAL=y |
125 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 154 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
126 | # CONFIG_SPARSEMEM_MANUAL is not set | 155 | # CONFIG_SPARSEMEM_MANUAL is not set |
127 | CONFIG_FLATMEM=y | 156 | CONFIG_FLATMEM=y |
128 | CONFIG_FLAT_NODE_MEM_MAP=y | 157 | CONFIG_FLAT_NODE_MEM_MAP=y |
129 | # CONFIG_SPARSEMEM_STATIC is not set | 158 | CONFIG_PAGEFLAGS_EXTENDED=y |
130 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 159 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
131 | # CONFIG_RESOURCES_64BIT is not set | 160 | CONFIG_PHYS_ADDR_T_64BIT=y |
132 | CONFIG_ZONE_DMA_FLAG=1 | 161 | CONFIG_ZONE_DMA_FLAG=0 |
162 | CONFIG_VIRT_TO_BUS=y | ||
163 | # CONFIG_KSM is not set | ||
164 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
165 | CONFIG_TICK_ONESHOT=y | ||
166 | CONFIG_NO_HZ=y | ||
167 | CONFIG_HIGH_RES_TIMERS=y | ||
168 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
133 | # CONFIG_HZ_48 is not set | 169 | # CONFIG_HZ_48 is not set |
134 | # CONFIG_HZ_100 is not set | 170 | CONFIG_HZ_100=y |
135 | # CONFIG_HZ_128 is not set | 171 | # CONFIG_HZ_128 is not set |
136 | # CONFIG_HZ_250 is not set | 172 | # CONFIG_HZ_250 is not set |
137 | # CONFIG_HZ_256 is not set | 173 | # CONFIG_HZ_256 is not set |
138 | CONFIG_HZ_1000=y | 174 | # CONFIG_HZ_1000 is not set |
139 | # CONFIG_HZ_1024 is not set | 175 | # CONFIG_HZ_1024 is not set |
140 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 176 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
141 | CONFIG_HZ=1000 | 177 | CONFIG_HZ=100 |
142 | CONFIG_PREEMPT_NONE=y | 178 | CONFIG_PREEMPT_NONE=y |
143 | # CONFIG_PREEMPT_VOLUNTARY is not set | 179 | # CONFIG_PREEMPT_VOLUNTARY is not set |
144 | # CONFIG_PREEMPT is not set | 180 | # CONFIG_PREEMPT is not set |
145 | # CONFIG_KEXEC is not set | 181 | # CONFIG_KEXEC is not set |
182 | # CONFIG_SECCOMP is not set | ||
146 | CONFIG_LOCKDEP_SUPPORT=y | 183 | CONFIG_LOCKDEP_SUPPORT=y |
147 | CONFIG_STACKTRACE_SUPPORT=y | 184 | CONFIG_STACKTRACE_SUPPORT=y |
148 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 185 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
186 | CONFIG_CONSTRUCTORS=y | ||
149 | 187 | ||
150 | # | 188 | # |
151 | # Code maturity level options | 189 | # General setup |
152 | # | 190 | # |
153 | CONFIG_EXPERIMENTAL=y | 191 | CONFIG_EXPERIMENTAL=y |
154 | CONFIG_BROKEN_ON_SMP=y | 192 | CONFIG_BROKEN_ON_SMP=y |
155 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 193 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
156 | 194 | CONFIG_LOCALVERSION="-pb1100" | |
157 | # | ||
158 | # General setup | ||
159 | # | ||
160 | CONFIG_LOCALVERSION="" | ||
161 | CONFIG_LOCALVERSION_AUTO=y | 195 | CONFIG_LOCALVERSION_AUTO=y |
196 | CONFIG_HAVE_KERNEL_GZIP=y | ||
197 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
198 | CONFIG_HAVE_KERNEL_LZMA=y | ||
199 | CONFIG_HAVE_KERNEL_LZO=y | ||
200 | # CONFIG_KERNEL_GZIP is not set | ||
201 | # CONFIG_KERNEL_BZIP2 is not set | ||
202 | CONFIG_KERNEL_LZMA=y | ||
203 | # CONFIG_KERNEL_LZO is not set | ||
162 | CONFIG_SWAP=y | 204 | CONFIG_SWAP=y |
163 | CONFIG_SYSVIPC=y | 205 | CONFIG_SYSVIPC=y |
164 | # CONFIG_IPC_NS is not set | ||
165 | CONFIG_SYSVIPC_SYSCTL=y | 206 | CONFIG_SYSVIPC_SYSCTL=y |
166 | # CONFIG_POSIX_MQUEUE is not set | 207 | CONFIG_POSIX_MQUEUE=y |
208 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
167 | # CONFIG_BSD_PROCESS_ACCT is not set | 209 | # CONFIG_BSD_PROCESS_ACCT is not set |
168 | # CONFIG_TASKSTATS is not set | 210 | # CONFIG_TASKSTATS is not set |
169 | # CONFIG_UTS_NS is not set | ||
170 | # CONFIG_AUDIT is not set | 211 | # CONFIG_AUDIT is not set |
212 | |||
213 | # | ||
214 | # RCU Subsystem | ||
215 | # | ||
216 | # CONFIG_TREE_RCU is not set | ||
217 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
218 | CONFIG_TINY_RCU=y | ||
219 | # CONFIG_TREE_RCU_TRACE is not set | ||
171 | # CONFIG_IKCONFIG is not set | 220 | # CONFIG_IKCONFIG is not set |
172 | CONFIG_SYSFS_DEPRECATED=y | 221 | CONFIG_LOG_BUF_SHIFT=14 |
173 | CONFIG_RELAY=y | 222 | # CONFIG_GROUP_SCHED is not set |
174 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 223 | # CONFIG_CGROUPS is not set |
224 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
225 | # CONFIG_RELAY is not set | ||
226 | # CONFIG_NAMESPACES is not set | ||
227 | # CONFIG_BLK_DEV_INITRD is not set | ||
228 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
175 | CONFIG_SYSCTL=y | 229 | CONFIG_SYSCTL=y |
230 | CONFIG_ANON_INODES=y | ||
176 | CONFIG_EMBEDDED=y | 231 | CONFIG_EMBEDDED=y |
177 | CONFIG_SYSCTL_SYSCALL=y | 232 | # CONFIG_SYSCTL_SYSCALL is not set |
178 | CONFIG_KALLSYMS=y | 233 | # CONFIG_KALLSYMS is not set |
179 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
180 | CONFIG_HOTPLUG=y | 234 | CONFIG_HOTPLUG=y |
181 | CONFIG_PRINTK=y | 235 | CONFIG_PRINTK=y |
182 | CONFIG_BUG=y | 236 | CONFIG_BUG=y |
183 | CONFIG_ELF_CORE=y | 237 | CONFIG_ELF_CORE=y |
238 | # CONFIG_PCSPKR_PLATFORM is not set | ||
184 | CONFIG_BASE_FULL=y | 239 | CONFIG_BASE_FULL=y |
185 | CONFIG_FUTEX=y | 240 | CONFIG_FUTEX=y |
186 | CONFIG_EPOLL=y | 241 | CONFIG_EPOLL=y |
242 | CONFIG_SIGNALFD=y | ||
243 | CONFIG_TIMERFD=y | ||
244 | CONFIG_EVENTFD=y | ||
187 | CONFIG_SHMEM=y | 245 | CONFIG_SHMEM=y |
246 | CONFIG_AIO=y | ||
247 | |||
248 | # | ||
249 | # Kernel Performance Events And Counters | ||
250 | # | ||
251 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
252 | # CONFIG_COMPAT_BRK is not set | ||
188 | CONFIG_SLAB=y | 253 | CONFIG_SLAB=y |
189 | CONFIG_VM_EVENT_COUNTERS=y | 254 | # CONFIG_SLUB is not set |
190 | CONFIG_RT_MUTEXES=y | ||
191 | # CONFIG_TINY_SHMEM is not set | ||
192 | CONFIG_BASE_SMALL=0 | ||
193 | # CONFIG_SLOB is not set | 255 | # CONFIG_SLOB is not set |
256 | # CONFIG_PROFILING is not set | ||
257 | CONFIG_HAVE_OPROFILE=y | ||
194 | 258 | ||
195 | # | 259 | # |
196 | # Loadable module support | 260 | # GCOV-based kernel profiling |
197 | # | 261 | # |
262 | # CONFIG_SLOW_WORK is not set | ||
263 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
264 | CONFIG_SLABINFO=y | ||
265 | CONFIG_RT_MUTEXES=y | ||
266 | CONFIG_BASE_SMALL=0 | ||
198 | CONFIG_MODULES=y | 267 | CONFIG_MODULES=y |
268 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
199 | CONFIG_MODULE_UNLOAD=y | 269 | CONFIG_MODULE_UNLOAD=y |
200 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 270 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
201 | CONFIG_MODVERSIONS=y | 271 | # CONFIG_MODVERSIONS is not set |
202 | CONFIG_MODULE_SRCVERSION_ALL=y | 272 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
203 | CONFIG_KMOD=y | ||
204 | |||
205 | # | ||
206 | # Block layer | ||
207 | # | ||
208 | CONFIG_BLOCK=y | 273 | CONFIG_BLOCK=y |
209 | # CONFIG_LBD is not set | 274 | # CONFIG_LBDAF is not set |
210 | # CONFIG_BLK_DEV_IO_TRACE is not set | 275 | # CONFIG_BLK_DEV_BSG is not set |
211 | # CONFIG_LSF is not set | 276 | # CONFIG_BLK_DEV_INTEGRITY is not set |
212 | 277 | ||
213 | # | 278 | # |
214 | # IO Schedulers | 279 | # IO Schedulers |
215 | # | 280 | # |
216 | CONFIG_IOSCHED_NOOP=y | 281 | CONFIG_IOSCHED_NOOP=y |
217 | CONFIG_IOSCHED_AS=y | 282 | # CONFIG_IOSCHED_DEADLINE is not set |
218 | CONFIG_IOSCHED_DEADLINE=y | 283 | # CONFIG_IOSCHED_CFQ is not set |
219 | CONFIG_IOSCHED_CFQ=y | ||
220 | CONFIG_DEFAULT_AS=y | ||
221 | # CONFIG_DEFAULT_DEADLINE is not set | 284 | # CONFIG_DEFAULT_DEADLINE is not set |
222 | # CONFIG_DEFAULT_CFQ is not set | 285 | # CONFIG_DEFAULT_CFQ is not set |
223 | # CONFIG_DEFAULT_NOOP is not set | 286 | CONFIG_DEFAULT_NOOP=y |
224 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 287 | CONFIG_DEFAULT_IOSCHED="noop" |
288 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
289 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
290 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
293 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
294 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
295 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
296 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
297 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
298 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
299 | # CONFIG_INLINE_READ_LOCK is not set | ||
300 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
302 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
303 | CONFIG_INLINE_READ_UNLOCK=y | ||
304 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
305 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
306 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
307 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
308 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
311 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
312 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
313 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
314 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
315 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
316 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
317 | CONFIG_FREEZER=y | ||
225 | 318 | ||
226 | # | 319 | # |
227 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 320 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
228 | # | 321 | # |
229 | CONFIG_HW_HAS_PCI=y | 322 | CONFIG_HW_HAS_PCI=y |
230 | # CONFIG_PCI is not set | 323 | # CONFIG_PCI is not set |
324 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
231 | CONFIG_MMU=y | 325 | CONFIG_MMU=y |
232 | 326 | CONFIG_PCCARD=y | |
233 | # | 327 | CONFIG_PCMCIA=y |
234 | # PCCARD (PCMCIA/CardBus) support | ||
235 | # | ||
236 | CONFIG_PCCARD=m | ||
237 | # CONFIG_PCMCIA_DEBUG is not set | ||
238 | CONFIG_PCMCIA=m | ||
239 | CONFIG_PCMCIA_LOAD_CIS=y | 328 | CONFIG_PCMCIA_LOAD_CIS=y |
240 | CONFIG_PCMCIA_IOCTL=y | 329 | # CONFIG_PCMCIA_IOCTL is not set |
241 | 330 | ||
242 | # | 331 | # |
243 | # PC-card bridges | 332 | # PC-card bridges |
244 | # | 333 | # |
245 | # CONFIG_PCMCIA_AU1X00 is not set | 334 | # CONFIG_PCMCIA_AU1X00 is not set |
246 | 335 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y | |
247 | # | ||
248 | # PCI Hotplug Support | ||
249 | # | ||
250 | 336 | ||
251 | # | 337 | # |
252 | # Executable file formats | 338 | # Executable file formats |
253 | # | 339 | # |
254 | CONFIG_BINFMT_ELF=y | 340 | CONFIG_BINFMT_ELF=y |
341 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
342 | # CONFIG_HAVE_AOUT is not set | ||
255 | # CONFIG_BINFMT_MISC is not set | 343 | # CONFIG_BINFMT_MISC is not set |
256 | CONFIG_TRAD_SIGNALS=y | 344 | CONFIG_TRAD_SIGNALS=y |
257 | 345 | ||
258 | # | 346 | # |
259 | # Power management options | 347 | # Power management options |
260 | # | 348 | # |
261 | # CONFIG_PM is not set | 349 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y |
262 | 350 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | |
263 | # | 351 | CONFIG_PM=y |
264 | # Networking | 352 | # CONFIG_PM_DEBUG is not set |
265 | # | 353 | CONFIG_PM_SLEEP=y |
354 | CONFIG_SUSPEND=y | ||
355 | CONFIG_SUSPEND_FREEZER=y | ||
356 | # CONFIG_HIBERNATION is not set | ||
357 | # CONFIG_APM_EMULATION is not set | ||
358 | CONFIG_PM_RUNTIME=y | ||
266 | CONFIG_NET=y | 359 | CONFIG_NET=y |
267 | 360 | ||
268 | # | 361 | # |
269 | # Networking options | 362 | # Networking options |
270 | # | 363 | # |
271 | # CONFIG_NETDEBUG is not set | ||
272 | CONFIG_PACKET=y | 364 | CONFIG_PACKET=y |
273 | # CONFIG_PACKET_MMAP is not set | 365 | # CONFIG_PACKET_MMAP is not set |
274 | CONFIG_UNIX=y | 366 | CONFIG_UNIX=y |
275 | CONFIG_XFRM=y | 367 | # CONFIG_NET_KEY is not set |
276 | CONFIG_XFRM_USER=m | ||
277 | # CONFIG_XFRM_SUB_POLICY is not set | ||
278 | CONFIG_XFRM_MIGRATE=y | ||
279 | CONFIG_NET_KEY=y | ||
280 | CONFIG_NET_KEY_MIGRATE=y | ||
281 | CONFIG_INET=y | 368 | CONFIG_INET=y |
282 | CONFIG_IP_MULTICAST=y | 369 | CONFIG_IP_MULTICAST=y |
283 | # CONFIG_IP_ADVANCED_ROUTER is not set | 370 | # CONFIG_IP_ADVANCED_ROUTER is not set |
284 | CONFIG_IP_FIB_HASH=y | 371 | CONFIG_IP_FIB_HASH=y |
285 | CONFIG_IP_PNP=y | 372 | CONFIG_IP_PNP=y |
286 | # CONFIG_IP_PNP_DHCP is not set | 373 | CONFIG_IP_PNP_DHCP=y |
287 | CONFIG_IP_PNP_BOOTP=y | 374 | CONFIG_IP_PNP_BOOTP=y |
288 | # CONFIG_IP_PNP_RARP is not set | 375 | CONFIG_IP_PNP_RARP=y |
289 | # CONFIG_NET_IPIP is not set | 376 | # CONFIG_NET_IPIP is not set |
290 | # CONFIG_NET_IPGRE is not set | 377 | # CONFIG_NET_IPGRE is not set |
291 | # CONFIG_IP_MROUTE is not set | 378 | # CONFIG_IP_MROUTE is not set |
@@ -296,110 +383,25 @@ CONFIG_IP_PNP_BOOTP=y | |||
296 | # CONFIG_INET_IPCOMP is not set | 383 | # CONFIG_INET_IPCOMP is not set |
297 | # CONFIG_INET_XFRM_TUNNEL is not set | 384 | # CONFIG_INET_XFRM_TUNNEL is not set |
298 | # CONFIG_INET_TUNNEL is not set | 385 | # CONFIG_INET_TUNNEL is not set |
299 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 386 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
300 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 387 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
301 | CONFIG_INET_XFRM_MODE_BEET=m | 388 | # CONFIG_INET_XFRM_MODE_BEET is not set |
302 | CONFIG_INET_DIAG=y | 389 | CONFIG_INET_LRO=y |
303 | CONFIG_INET_TCP_DIAG=y | 390 | # CONFIG_INET_DIAG is not set |
304 | # CONFIG_TCP_CONG_ADVANCED is not set | 391 | # CONFIG_TCP_CONG_ADVANCED is not set |
305 | CONFIG_TCP_CONG_CUBIC=y | 392 | CONFIG_TCP_CONG_CUBIC=y |
306 | CONFIG_DEFAULT_TCP_CONG="cubic" | 393 | CONFIG_DEFAULT_TCP_CONG="cubic" |
307 | CONFIG_TCP_MD5SIG=y | 394 | # CONFIG_TCP_MD5SIG is not set |
308 | |||
309 | # | ||
310 | # IP: Virtual Server Configuration | ||
311 | # | ||
312 | # CONFIG_IP_VS is not set | ||
313 | # CONFIG_IPV6 is not set | 395 | # CONFIG_IPV6 is not set |
314 | # CONFIG_INET6_XFRM_TUNNEL is not set | 396 | # CONFIG_NETWORK_SECMARK is not set |
315 | # CONFIG_INET6_TUNNEL is not set | 397 | # CONFIG_NETFILTER is not set |
316 | CONFIG_NETWORK_SECMARK=y | ||
317 | CONFIG_NETFILTER=y | ||
318 | # CONFIG_NETFILTER_DEBUG is not set | ||
319 | |||
320 | # | ||
321 | # Core Netfilter Configuration | ||
322 | # | ||
323 | CONFIG_NETFILTER_NETLINK=m | ||
324 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
325 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
326 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
327 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
328 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
329 | CONFIG_NF_CONNTRACK=m | ||
330 | CONFIG_NF_CT_ACCT=y | ||
331 | CONFIG_NF_CONNTRACK_MARK=y | ||
332 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
333 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
334 | CONFIG_NF_CT_PROTO_GRE=m | ||
335 | CONFIG_NF_CT_PROTO_SCTP=m | ||
336 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
337 | CONFIG_NF_CONNTRACK_FTP=m | ||
338 | CONFIG_NF_CONNTRACK_H323=m | ||
339 | CONFIG_NF_CONNTRACK_IRC=m | ||
340 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
341 | CONFIG_NF_CONNTRACK_PPTP=m | ||
342 | CONFIG_NF_CONNTRACK_SANE=m | ||
343 | CONFIG_NF_CONNTRACK_SIP=m | ||
344 | CONFIG_NF_CONNTRACK_TFTP=m | ||
345 | CONFIG_NF_CT_NETLINK=m | ||
346 | CONFIG_NETFILTER_XTABLES=m | ||
347 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
348 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
349 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
350 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
351 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
352 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
353 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
354 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
355 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
356 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
357 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
358 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
359 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
365 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
366 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
367 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
368 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
369 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
370 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
371 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
372 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
373 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
374 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
375 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
376 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
377 | |||
378 | # | ||
379 | # IP: Netfilter Configuration | ||
380 | # | ||
381 | CONFIG_NF_CONNTRACK_IPV4=m | ||
382 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
383 | # CONFIG_IP_NF_QUEUE is not set | ||
384 | # CONFIG_IP_NF_IPTABLES is not set | ||
385 | # CONFIG_IP_NF_ARPTABLES is not set | ||
386 | |||
387 | # | ||
388 | # DCCP Configuration (EXPERIMENTAL) | ||
389 | # | ||
390 | # CONFIG_IP_DCCP is not set | 398 | # CONFIG_IP_DCCP is not set |
391 | |||
392 | # | ||
393 | # SCTP Configuration (EXPERIMENTAL) | ||
394 | # | ||
395 | # CONFIG_IP_SCTP is not set | 399 | # CONFIG_IP_SCTP is not set |
396 | 400 | # CONFIG_RDS is not set | |
397 | # | ||
398 | # TIPC Configuration (EXPERIMENTAL) | ||
399 | # | ||
400 | # CONFIG_TIPC is not set | 401 | # CONFIG_TIPC is not set |
401 | # CONFIG_ATM is not set | 402 | # CONFIG_ATM is not set |
402 | # CONFIG_BRIDGE is not set | 403 | # CONFIG_BRIDGE is not set |
404 | # CONFIG_NET_DSA is not set | ||
403 | # CONFIG_VLAN_8021Q is not set | 405 | # CONFIG_VLAN_8021Q is not set |
404 | # CONFIG_DECNET is not set | 406 | # CONFIG_DECNET is not set |
405 | # CONFIG_LLC2 is not set | 407 | # CONFIG_LLC2 is not set |
@@ -409,27 +411,24 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
409 | # CONFIG_LAPB is not set | 411 | # CONFIG_LAPB is not set |
410 | # CONFIG_ECONET is not set | 412 | # CONFIG_ECONET is not set |
411 | # CONFIG_WAN_ROUTER is not set | 413 | # CONFIG_WAN_ROUTER is not set |
412 | 414 | # CONFIG_PHONET is not set | |
413 | # | 415 | # CONFIG_IEEE802154 is not set |
414 | # QoS and/or fair queueing | ||
415 | # | ||
416 | # CONFIG_NET_SCHED is not set | 416 | # CONFIG_NET_SCHED is not set |
417 | CONFIG_NET_CLS_ROUTE=y | 417 | # CONFIG_DCB is not set |
418 | 418 | ||
419 | # | 419 | # |
420 | # Network testing | 420 | # Network testing |
421 | # | 421 | # |
422 | # CONFIG_NET_PKTGEN is not set | 422 | # CONFIG_NET_PKTGEN is not set |
423 | # CONFIG_HAMRADIO is not set | 423 | # CONFIG_HAMRADIO is not set |
424 | # CONFIG_CAN is not set | ||
424 | # CONFIG_IRDA is not set | 425 | # CONFIG_IRDA is not set |
425 | # CONFIG_BT is not set | 426 | # CONFIG_BT is not set |
426 | CONFIG_IEEE80211=m | 427 | # CONFIG_AF_RXRPC is not set |
427 | # CONFIG_IEEE80211_DEBUG is not set | 428 | # CONFIG_WIRELESS is not set |
428 | CONFIG_IEEE80211_CRYPT_WEP=m | 429 | # CONFIG_WIMAX is not set |
429 | CONFIG_IEEE80211_CRYPT_CCMP=m | 430 | # CONFIG_RFKILL is not set |
430 | CONFIG_IEEE80211_SOFTMAC=m | 431 | # CONFIG_NET_9P is not set |
431 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
432 | CONFIG_WIRELESS_EXT=y | ||
433 | 432 | ||
434 | # | 433 | # |
435 | # Device Drivers | 434 | # Device Drivers |
@@ -438,25 +437,25 @@ CONFIG_WIRELESS_EXT=y | |||
438 | # | 437 | # |
439 | # Generic Driver Options | 438 | # Generic Driver Options |
440 | # | 439 | # |
440 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
441 | # CONFIG_DEVTMPFS is not set | ||
441 | CONFIG_STANDALONE=y | 442 | CONFIG_STANDALONE=y |
442 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 443 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
443 | CONFIG_FW_LOADER=m | 444 | CONFIG_FW_LOADER=y |
445 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
446 | CONFIG_EXTRA_FIRMWARE="" | ||
447 | # CONFIG_DEBUG_DRIVER is not set | ||
448 | # CONFIG_DEBUG_DEVRES is not set | ||
444 | # CONFIG_SYS_HYPERVISOR is not set | 449 | # CONFIG_SYS_HYPERVISOR is not set |
445 | 450 | # CONFIG_CONNECTOR is not set | |
446 | # | ||
447 | # Connector - unified userspace <-> kernelspace linker | ||
448 | # | ||
449 | CONFIG_CONNECTOR=m | ||
450 | |||
451 | # | ||
452 | # Memory Technology Devices (MTD) | ||
453 | # | ||
454 | CONFIG_MTD=y | 451 | CONFIG_MTD=y |
455 | # CONFIG_MTD_DEBUG is not set | 452 | # CONFIG_MTD_DEBUG is not set |
453 | # CONFIG_MTD_TESTS is not set | ||
456 | # CONFIG_MTD_CONCAT is not set | 454 | # CONFIG_MTD_CONCAT is not set |
457 | CONFIG_MTD_PARTITIONS=y | 455 | CONFIG_MTD_PARTITIONS=y |
458 | # CONFIG_MTD_REDBOOT_PARTS is not set | 456 | # CONFIG_MTD_REDBOOT_PARTS is not set |
459 | # CONFIG_MTD_CMDLINE_PARTS is not set | 457 | # CONFIG_MTD_CMDLINE_PARTS is not set |
458 | # CONFIG_MTD_AR7_PARTS is not set | ||
460 | 459 | ||
461 | # | 460 | # |
462 | # User Modules And Translation Layers | 461 | # User Modules And Translation Layers |
@@ -469,6 +468,7 @@ CONFIG_MTD_BLOCK=y | |||
469 | # CONFIG_INFTL is not set | 468 | # CONFIG_INFTL is not set |
470 | # CONFIG_RFD_FTL is not set | 469 | # CONFIG_RFD_FTL is not set |
471 | # CONFIG_SSFDC is not set | 470 | # CONFIG_SSFDC is not set |
471 | # CONFIG_MTD_OOPS is not set | ||
472 | 472 | ||
473 | # | 473 | # |
474 | # RAM/ROM/Flash chip drivers | 474 | # RAM/ROM/Flash chip drivers |
@@ -494,14 +494,13 @@ CONFIG_MTD_CFI_UTIL=y | |||
494 | # CONFIG_MTD_RAM is not set | 494 | # CONFIG_MTD_RAM is not set |
495 | # CONFIG_MTD_ROM is not set | 495 | # CONFIG_MTD_ROM is not set |
496 | # CONFIG_MTD_ABSENT is not set | 496 | # CONFIG_MTD_ABSENT is not set |
497 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
498 | 497 | ||
499 | # | 498 | # |
500 | # Mapping drivers for chip access | 499 | # Mapping drivers for chip access |
501 | # | 500 | # |
502 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 501 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
503 | # CONFIG_MTD_PHYSMAP is not set | 502 | CONFIG_MTD_PHYSMAP=y |
504 | CONFIG_MTD_ALCHEMY=y | 503 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
505 | # CONFIG_MTD_PLATRAM is not set | 504 | # CONFIG_MTD_PLATRAM is not set |
506 | 505 | ||
507 | # | 506 | # |
@@ -518,166 +517,136 @@ CONFIG_MTD_ALCHEMY=y | |||
518 | # CONFIG_MTD_DOC2000 is not set | 517 | # CONFIG_MTD_DOC2000 is not set |
519 | # CONFIG_MTD_DOC2001 is not set | 518 | # CONFIG_MTD_DOC2001 is not set |
520 | # CONFIG_MTD_DOC2001PLUS is not set | 519 | # CONFIG_MTD_DOC2001PLUS is not set |
521 | |||
522 | # | ||
523 | # NAND Flash Device Drivers | ||
524 | # | ||
525 | # CONFIG_MTD_NAND is not set | 520 | # CONFIG_MTD_NAND is not set |
526 | |||
527 | # | ||
528 | # OneNAND Flash Device Drivers | ||
529 | # | ||
530 | # CONFIG_MTD_ONENAND is not set | 521 | # CONFIG_MTD_ONENAND is not set |
531 | 522 | ||
532 | # | 523 | # |
533 | # Parallel port support | 524 | # LPDDR flash memory drivers |
534 | # | 525 | # |
535 | # CONFIG_PARPORT is not set | 526 | # CONFIG_MTD_LPDDR is not set |
536 | 527 | ||
537 | # | 528 | # |
538 | # Plug and Play support | 529 | # UBI - Unsorted block images |
539 | # | ||
540 | # CONFIG_PNPACPI is not set | ||
541 | |||
542 | # | ||
543 | # Block devices | ||
544 | # | 530 | # |
531 | # CONFIG_MTD_UBI is not set | ||
532 | # CONFIG_PARPORT is not set | ||
533 | CONFIG_BLK_DEV=y | ||
545 | # CONFIG_BLK_DEV_COW_COMMON is not set | 534 | # CONFIG_BLK_DEV_COW_COMMON is not set |
546 | CONFIG_BLK_DEV_LOOP=y | 535 | CONFIG_BLK_DEV_LOOP=y |
547 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 536 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
537 | |||
538 | # | ||
539 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected | ||
540 | # | ||
548 | # CONFIG_BLK_DEV_NBD is not set | 541 | # CONFIG_BLK_DEV_NBD is not set |
542 | CONFIG_BLK_DEV_UB=y | ||
549 | # CONFIG_BLK_DEV_RAM is not set | 543 | # CONFIG_BLK_DEV_RAM is not set |
550 | # CONFIG_BLK_DEV_INITRD is not set | 544 | # CONFIG_CDROM_PKTCDVD is not set |
551 | CONFIG_CDROM_PKTCDVD=m | 545 | # CONFIG_ATA_OVER_ETH is not set |
552 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 546 | # CONFIG_BLK_DEV_HD is not set |
553 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 547 | # CONFIG_MISC_DEVICES is not set |
554 | CONFIG_ATA_OVER_ETH=m | 548 | CONFIG_HAVE_IDE=y |
549 | CONFIG_IDE=y | ||
555 | 550 | ||
556 | # | 551 | # |
557 | # Misc devices | 552 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
558 | # | 553 | # |
554 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
555 | CONFIG_IDE_GD=y | ||
556 | CONFIG_IDE_GD_ATA=y | ||
557 | # CONFIG_IDE_GD_ATAPI is not set | ||
558 | CONFIG_BLK_DEV_IDECS=y | ||
559 | # CONFIG_BLK_DEV_IDECD is not set | ||
560 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
561 | CONFIG_IDE_TASK_IOCTL=y | ||
562 | # CONFIG_IDE_PROC_FS is not set | ||
559 | 563 | ||
560 | # | 564 | # |
561 | # ATA/ATAPI/MFM/RLL support | 565 | # IDE chipset support/bugfixes |
562 | # | 566 | # |
563 | # CONFIG_IDE is not set | 567 | # CONFIG_IDE_GENERIC is not set |
568 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
569 | # CONFIG_BLK_DEV_IDEDMA is not set | ||
564 | 570 | ||
565 | # | 571 | # |
566 | # SCSI device support | 572 | # SCSI device support |
567 | # | 573 | # |
568 | CONFIG_RAID_ATTRS=m | 574 | # CONFIG_RAID_ATTRS is not set |
569 | # CONFIG_SCSI is not set | 575 | # CONFIG_SCSI is not set |
576 | # CONFIG_SCSI_DMA is not set | ||
570 | # CONFIG_SCSI_NETLINK is not set | 577 | # CONFIG_SCSI_NETLINK is not set |
571 | |||
572 | # | ||
573 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
574 | # | ||
575 | # CONFIG_ATA is not set | 578 | # CONFIG_ATA is not set |
576 | |||
577 | # | ||
578 | # Multi-device support (RAID and LVM) | ||
579 | # | ||
580 | # CONFIG_MD is not set | 579 | # CONFIG_MD is not set |
581 | |||
582 | # | ||
583 | # Fusion MPT device support | ||
584 | # | ||
585 | # CONFIG_FUSION is not set | ||
586 | |||
587 | # | ||
588 | # IEEE 1394 (FireWire) support | ||
589 | # | ||
590 | |||
591 | # | ||
592 | # I2O device support | ||
593 | # | ||
594 | |||
595 | # | ||
596 | # Network device support | ||
597 | # | ||
598 | CONFIG_NETDEVICES=y | 580 | CONFIG_NETDEVICES=y |
599 | # CONFIG_DUMMY is not set | 581 | # CONFIG_DUMMY is not set |
600 | # CONFIG_BONDING is not set | 582 | # CONFIG_BONDING is not set |
583 | # CONFIG_MACVLAN is not set | ||
601 | # CONFIG_EQUALIZER is not set | 584 | # CONFIG_EQUALIZER is not set |
602 | # CONFIG_TUN is not set | 585 | # CONFIG_TUN is not set |
603 | 586 | # CONFIG_VETH is not set | |
604 | # | 587 | CONFIG_PHYLIB=y |
605 | # PHY device support | ||
606 | # | ||
607 | CONFIG_PHYLIB=m | ||
608 | 588 | ||
609 | # | 589 | # |
610 | # MII PHY device drivers | 590 | # MII PHY device drivers |
611 | # | 591 | # |
612 | CONFIG_MARVELL_PHY=m | 592 | CONFIG_MARVELL_PHY=y |
613 | CONFIG_DAVICOM_PHY=m | 593 | CONFIG_DAVICOM_PHY=y |
614 | CONFIG_QSEMI_PHY=m | 594 | CONFIG_QSEMI_PHY=y |
615 | CONFIG_LXT_PHY=m | 595 | CONFIG_LXT_PHY=y |
616 | CONFIG_CICADA_PHY=m | 596 | CONFIG_CICADA_PHY=y |
617 | CONFIG_VITESSE_PHY=m | 597 | CONFIG_VITESSE_PHY=y |
618 | CONFIG_SMSC_PHY=m | 598 | CONFIG_SMSC_PHY=y |
619 | # CONFIG_BROADCOM_PHY is not set | 599 | CONFIG_BROADCOM_PHY=y |
600 | CONFIG_ICPLUS_PHY=y | ||
601 | CONFIG_REALTEK_PHY=y | ||
602 | CONFIG_NATIONAL_PHY=y | ||
603 | CONFIG_STE10XP=y | ||
604 | CONFIG_LSI_ET1011C_PHY=y | ||
620 | # CONFIG_FIXED_PHY is not set | 605 | # CONFIG_FIXED_PHY is not set |
621 | 606 | # CONFIG_MDIO_BITBANG is not set | |
622 | # | ||
623 | # Ethernet (10 or 100Mbit) | ||
624 | # | ||
625 | CONFIG_NET_ETHERNET=y | 607 | CONFIG_NET_ETHERNET=y |
626 | # CONFIG_MII is not set | 608 | CONFIG_MII=y |
627 | # CONFIG_MIPS_AU1X00_ENET is not set | 609 | # CONFIG_AX88796 is not set |
610 | CONFIG_MIPS_AU1X00_ENET=y | ||
628 | # CONFIG_SMC91X is not set | 611 | # CONFIG_SMC91X is not set |
629 | # CONFIG_DM9000 is not set | 612 | # CONFIG_DM9000 is not set |
630 | 613 | # CONFIG_ETHOC is not set | |
631 | # | 614 | # CONFIG_SMSC911X is not set |
632 | # Ethernet (1000 Mbit) | 615 | # CONFIG_DNET is not set |
633 | # | 616 | # CONFIG_IBM_NEW_EMAC_ZMII is not set |
634 | 617 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | |
635 | # | 618 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
636 | # Ethernet (10000 Mbit) | 619 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
637 | # | 620 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set |
638 | 621 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | |
639 | # | 622 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set |
640 | # Token Ring devices | 623 | # CONFIG_B44 is not set |
641 | # | 624 | # CONFIG_KS8842 is not set |
642 | 625 | # CONFIG_KS8851_MLL is not set | |
643 | # | 626 | # CONFIG_NETDEV_1000 is not set |
644 | # Wireless LAN (non-hamradio) | 627 | # CONFIG_NETDEV_10000 is not set |
645 | # | 628 | # CONFIG_WLAN is not set |
646 | # CONFIG_NET_RADIO is not set | 629 | |
647 | 630 | # | |
648 | # | 631 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
649 | # PCMCIA network device support | 632 | # |
650 | # | 633 | |
634 | # | ||
635 | # USB Network Adapters | ||
636 | # | ||
637 | # CONFIG_USB_CATC is not set | ||
638 | # CONFIG_USB_KAWETH is not set | ||
639 | # CONFIG_USB_PEGASUS is not set | ||
640 | # CONFIG_USB_RTL8150 is not set | ||
641 | # CONFIG_USB_USBNET is not set | ||
651 | # CONFIG_NET_PCMCIA is not set | 642 | # CONFIG_NET_PCMCIA is not set |
652 | |||
653 | # | ||
654 | # Wan interfaces | ||
655 | # | ||
656 | # CONFIG_WAN is not set | 643 | # CONFIG_WAN is not set |
657 | CONFIG_PPP=m | 644 | # CONFIG_PPP is not set |
658 | CONFIG_PPP_MULTILINK=y | ||
659 | # CONFIG_PPP_FILTER is not set | ||
660 | CONFIG_PPP_ASYNC=m | ||
661 | # CONFIG_PPP_SYNC_TTY is not set | ||
662 | CONFIG_PPP_DEFLATE=m | ||
663 | # CONFIG_PPP_BSDCOMP is not set | ||
664 | CONFIG_PPP_MPPE=m | ||
665 | CONFIG_PPPOE=m | ||
666 | # CONFIG_SLIP is not set | 645 | # CONFIG_SLIP is not set |
667 | CONFIG_SLHC=m | ||
668 | # CONFIG_SHAPER is not set | ||
669 | # CONFIG_NETCONSOLE is not set | 646 | # CONFIG_NETCONSOLE is not set |
670 | # CONFIG_NETPOLL is not set | 647 | # CONFIG_NETPOLL is not set |
671 | # CONFIG_NET_POLL_CONTROLLER is not set | 648 | # CONFIG_NET_POLL_CONTROLLER is not set |
672 | |||
673 | # | ||
674 | # ISDN subsystem | ||
675 | # | ||
676 | # CONFIG_ISDN is not set | 649 | # CONFIG_ISDN is not set |
677 | |||
678 | # | ||
679 | # Telephony Support | ||
680 | # | ||
681 | # CONFIG_PHONE is not set | 650 | # CONFIG_PHONE is not set |
682 | 651 | ||
683 | # | 652 | # |
@@ -685,16 +654,14 @@ CONFIG_SLHC=m | |||
685 | # | 654 | # |
686 | CONFIG_INPUT=y | 655 | CONFIG_INPUT=y |
687 | # CONFIG_INPUT_FF_MEMLESS is not set | 656 | # CONFIG_INPUT_FF_MEMLESS is not set |
657 | # CONFIG_INPUT_POLLDEV is not set | ||
658 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
688 | 659 | ||
689 | # | 660 | # |
690 | # Userland interfaces | 661 | # Userland interfaces |
691 | # | 662 | # |
692 | CONFIG_INPUT_MOUSEDEV=y | 663 | # CONFIG_INPUT_MOUSEDEV is not set |
693 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
694 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
695 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
696 | # CONFIG_INPUT_JOYDEV is not set | 664 | # CONFIG_INPUT_JOYDEV is not set |
697 | # CONFIG_INPUT_TSDEV is not set | ||
698 | CONFIG_INPUT_EVDEV=y | 665 | CONFIG_INPUT_EVDEV=y |
699 | # CONFIG_INPUT_EVBUG is not set | 666 | # CONFIG_INPUT_EVBUG is not set |
700 | 667 | ||
@@ -704,28 +671,26 @@ CONFIG_INPUT_EVDEV=y | |||
704 | # CONFIG_INPUT_KEYBOARD is not set | 671 | # CONFIG_INPUT_KEYBOARD is not set |
705 | # CONFIG_INPUT_MOUSE is not set | 672 | # CONFIG_INPUT_MOUSE is not set |
706 | # CONFIG_INPUT_JOYSTICK is not set | 673 | # CONFIG_INPUT_JOYSTICK is not set |
674 | # CONFIG_INPUT_TABLET is not set | ||
707 | # CONFIG_INPUT_TOUCHSCREEN is not set | 675 | # CONFIG_INPUT_TOUCHSCREEN is not set |
708 | # CONFIG_INPUT_MISC is not set | 676 | # CONFIG_INPUT_MISC is not set |
709 | 677 | ||
710 | # | 678 | # |
711 | # Hardware I/O ports | 679 | # Hardware I/O ports |
712 | # | 680 | # |
713 | CONFIG_SERIO=y | 681 | # CONFIG_SERIO is not set |
714 | # CONFIG_SERIO_I8042 is not set | ||
715 | CONFIG_SERIO_SERPORT=y | ||
716 | # CONFIG_SERIO_LIBPS2 is not set | ||
717 | CONFIG_SERIO_RAW=m | ||
718 | # CONFIG_GAMEPORT is not set | 682 | # CONFIG_GAMEPORT is not set |
719 | 683 | ||
720 | # | 684 | # |
721 | # Character devices | 685 | # Character devices |
722 | # | 686 | # |
723 | CONFIG_VT=y | 687 | CONFIG_VT=y |
688 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
724 | CONFIG_VT_CONSOLE=y | 689 | CONFIG_VT_CONSOLE=y |
725 | CONFIG_HW_CONSOLE=y | 690 | CONFIG_HW_CONSOLE=y |
726 | CONFIG_VT_HW_CONSOLE_BINDING=y | 691 | CONFIG_VT_HW_CONSOLE_BINDING=y |
692 | CONFIG_DEVKMEM=y | ||
727 | # CONFIG_SERIAL_NONSTANDARD is not set | 693 | # CONFIG_SERIAL_NONSTANDARD is not set |
728 | # CONFIG_AU1X00_GPIO is not set | ||
729 | 694 | ||
730 | # | 695 | # |
731 | # Serial drivers | 696 | # Serial drivers |
@@ -744,198 +709,288 @@ CONFIG_SERIAL_8250_AU1X00=y | |||
744 | CONFIG_SERIAL_CORE=y | 709 | CONFIG_SERIAL_CORE=y |
745 | CONFIG_SERIAL_CORE_CONSOLE=y | 710 | CONFIG_SERIAL_CORE_CONSOLE=y |
746 | CONFIG_UNIX98_PTYS=y | 711 | CONFIG_UNIX98_PTYS=y |
747 | CONFIG_LEGACY_PTYS=y | 712 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
748 | CONFIG_LEGACY_PTY_COUNT=256 | 713 | # CONFIG_LEGACY_PTYS is not set |
749 | |||
750 | # | ||
751 | # IPMI | ||
752 | # | ||
753 | # CONFIG_IPMI_HANDLER is not set | 714 | # CONFIG_IPMI_HANDLER is not set |
754 | |||
755 | # | ||
756 | # Watchdog Cards | ||
757 | # | ||
758 | # CONFIG_WATCHDOG is not set | ||
759 | # CONFIG_HW_RANDOM is not set | 715 | # CONFIG_HW_RANDOM is not set |
760 | # CONFIG_RTC is not set | ||
761 | # CONFIG_GEN_RTC is not set | ||
762 | # CONFIG_DTLK is not set | ||
763 | # CONFIG_R3964 is not set | 716 | # CONFIG_R3964 is not set |
764 | 717 | ||
765 | # | 718 | # |
766 | # PCMCIA character devices | 719 | # PCMCIA character devices |
767 | # | 720 | # |
768 | CONFIG_SYNCLINK_CS=m | 721 | # CONFIG_SYNCLINK_CS is not set |
769 | # CONFIG_CARDMAN_4000 is not set | 722 | # CONFIG_CARDMAN_4000 is not set |
770 | # CONFIG_CARDMAN_4040 is not set | 723 | # CONFIG_CARDMAN_4040 is not set |
724 | # CONFIG_IPWIRELESS is not set | ||
771 | # CONFIG_RAW_DRIVER is not set | 725 | # CONFIG_RAW_DRIVER is not set |
772 | |||
773 | # | ||
774 | # TPM devices | ||
775 | # | ||
776 | # CONFIG_TCG_TPM is not set | 726 | # CONFIG_TCG_TPM is not set |
777 | |||
778 | # | ||
779 | # I2C support | ||
780 | # | ||
781 | # CONFIG_I2C is not set | 727 | # CONFIG_I2C is not set |
782 | |||
783 | # | ||
784 | # SPI support | ||
785 | # | ||
786 | # CONFIG_SPI is not set | 728 | # CONFIG_SPI is not set |
787 | # CONFIG_SPI_MASTER is not set | ||
788 | 729 | ||
789 | # | 730 | # |
790 | # Dallas's 1-wire bus | 731 | # PPS support |
791 | # | 732 | # |
733 | # CONFIG_PPS is not set | ||
734 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
735 | # CONFIG_GPIOLIB is not set | ||
792 | # CONFIG_W1 is not set | 736 | # CONFIG_W1 is not set |
793 | 737 | # CONFIG_POWER_SUPPLY is not set | |
794 | # | ||
795 | # Hardware Monitoring support | ||
796 | # | ||
797 | # CONFIG_HWMON is not set | 738 | # CONFIG_HWMON is not set |
798 | # CONFIG_HWMON_VID is not set | 739 | # CONFIG_THERMAL is not set |
740 | # CONFIG_WATCHDOG is not set | ||
741 | CONFIG_SSB_POSSIBLE=y | ||
799 | 742 | ||
800 | # | 743 | # |
801 | # Multimedia devices | 744 | # Sonics Silicon Backplane |
802 | # | 745 | # |
803 | # CONFIG_VIDEO_DEV is not set | 746 | # CONFIG_SSB is not set |
804 | 747 | ||
805 | # | 748 | # |
806 | # Digital Video Broadcasting Devices | 749 | # Multifunction device drivers |
807 | # | 750 | # |
808 | # CONFIG_DVB is not set | 751 | # CONFIG_MFD_CORE is not set |
752 | # CONFIG_MFD_SM501 is not set | ||
753 | # CONFIG_HTC_PASIC3 is not set | ||
754 | # CONFIG_MFD_TMIO is not set | ||
755 | # CONFIG_REGULATOR is not set | ||
756 | # CONFIG_MEDIA_SUPPORT is not set | ||
809 | 757 | ||
810 | # | 758 | # |
811 | # Graphics support | 759 | # Graphics support |
812 | # | 760 | # |
813 | # CONFIG_FIRMWARE_EDID is not set | 761 | # CONFIG_VGASTATE is not set |
762 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
814 | # CONFIG_FB is not set | 763 | # CONFIG_FB is not set |
815 | |||
816 | # | ||
817 | # Console display driver support | ||
818 | # | ||
819 | # CONFIG_VGA_CONSOLE is not set | ||
820 | CONFIG_DUMMY_CONSOLE=y | ||
821 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 764 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
822 | 765 | ||
823 | # | 766 | # |
824 | # Sound | 767 | # Display device support |
825 | # | 768 | # |
826 | # CONFIG_SOUND is not set | 769 | # CONFIG_DISPLAY_SUPPORT is not set |
827 | 770 | ||
828 | # | 771 | # |
829 | # HID Devices | 772 | # Console display driver support |
830 | # | ||
831 | # CONFIG_HID is not set | ||
832 | |||
833 | # | ||
834 | # USB support | ||
835 | # | 773 | # |
774 | # CONFIG_VGA_CONSOLE is not set | ||
775 | CONFIG_DUMMY_CONSOLE=y | ||
776 | # CONFIG_SOUND is not set | ||
777 | CONFIG_HID_SUPPORT=y | ||
778 | CONFIG_HID=y | ||
779 | CONFIG_HIDRAW=y | ||
780 | |||
781 | # | ||
782 | # USB Input Devices | ||
783 | # | ||
784 | CONFIG_USB_HID=y | ||
785 | # CONFIG_HID_PID is not set | ||
786 | CONFIG_USB_HIDDEV=y | ||
787 | |||
788 | # | ||
789 | # Special HID drivers | ||
790 | # | ||
791 | # CONFIG_HID_A4TECH is not set | ||
792 | # CONFIG_HID_APPLE is not set | ||
793 | # CONFIG_HID_BELKIN is not set | ||
794 | # CONFIG_HID_CHERRY is not set | ||
795 | # CONFIG_HID_CHICONY is not set | ||
796 | # CONFIG_HID_CYPRESS is not set | ||
797 | # CONFIG_HID_DRAGONRISE is not set | ||
798 | # CONFIG_HID_EZKEY is not set | ||
799 | # CONFIG_HID_KYE is not set | ||
800 | # CONFIG_HID_GYRATION is not set | ||
801 | # CONFIG_HID_TWINHAN is not set | ||
802 | # CONFIG_HID_KENSINGTON is not set | ||
803 | # CONFIG_HID_LOGITECH is not set | ||
804 | # CONFIG_HID_MICROSOFT is not set | ||
805 | # CONFIG_HID_MONTEREY is not set | ||
806 | # CONFIG_HID_NTRIG is not set | ||
807 | # CONFIG_HID_PANTHERLORD is not set | ||
808 | # CONFIG_HID_PETALYNX is not set | ||
809 | # CONFIG_HID_SAMSUNG is not set | ||
810 | # CONFIG_HID_SONY is not set | ||
811 | # CONFIG_HID_SUNPLUS is not set | ||
812 | # CONFIG_HID_GREENASIA is not set | ||
813 | # CONFIG_HID_SMARTJOYPLUS is not set | ||
814 | # CONFIG_HID_TOPSEED is not set | ||
815 | # CONFIG_HID_THRUSTMASTER is not set | ||
816 | # CONFIG_HID_ZEROPLUS is not set | ||
817 | CONFIG_USB_SUPPORT=y | ||
836 | CONFIG_USB_ARCH_HAS_HCD=y | 818 | CONFIG_USB_ARCH_HAS_HCD=y |
837 | CONFIG_USB_ARCH_HAS_OHCI=y | 819 | CONFIG_USB_ARCH_HAS_OHCI=y |
838 | # CONFIG_USB_ARCH_HAS_EHCI is not set | 820 | # CONFIG_USB_ARCH_HAS_EHCI is not set |
839 | # CONFIG_USB is not set | 821 | CONFIG_USB=y |
822 | # CONFIG_USB_DEBUG is not set | ||
823 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
840 | 824 | ||
841 | # | 825 | # |
842 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 826 | # Miscellaneous USB options |
843 | # | 827 | # |
828 | # CONFIG_USB_DEVICEFS is not set | ||
829 | # CONFIG_USB_DEVICE_CLASS is not set | ||
830 | CONFIG_USB_DYNAMIC_MINORS=y | ||
831 | CONFIG_USB_SUSPEND=y | ||
832 | # CONFIG_USB_OTG is not set | ||
833 | # CONFIG_USB_OTG_WHITELIST is not set | ||
834 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
835 | # CONFIG_USB_MON is not set | ||
836 | # CONFIG_USB_WUSB is not set | ||
837 | # CONFIG_USB_WUSB_CBAF is not set | ||
844 | 838 | ||
845 | # | 839 | # |
846 | # USB Gadget Support | 840 | # USB Host Controller Drivers |
847 | # | 841 | # |
848 | # CONFIG_USB_GADGET is not set | 842 | # CONFIG_USB_C67X00_HCD is not set |
843 | # CONFIG_USB_OXU210HP_HCD is not set | ||
844 | # CONFIG_USB_ISP116X_HCD is not set | ||
845 | # CONFIG_USB_ISP1760_HCD is not set | ||
846 | # CONFIG_USB_ISP1362_HCD is not set | ||
847 | CONFIG_USB_OHCI_HCD=y | ||
848 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
849 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
850 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
851 | # CONFIG_USB_SL811_HCD is not set | ||
852 | # CONFIG_USB_R8A66597_HCD is not set | ||
853 | # CONFIG_USB_HWA_HCD is not set | ||
849 | 854 | ||
850 | # | 855 | # |
851 | # MMC/SD Card support | 856 | # USB Device Class drivers |
852 | # | 857 | # |
853 | # CONFIG_MMC is not set | 858 | # CONFIG_USB_ACM is not set |
859 | # CONFIG_USB_PRINTER is not set | ||
860 | # CONFIG_USB_WDM is not set | ||
861 | # CONFIG_USB_TMC is not set | ||
854 | 862 | ||
855 | # | 863 | # |
856 | # LED devices | 864 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
857 | # | 865 | # |
858 | # CONFIG_NEW_LEDS is not set | ||
859 | 866 | ||
860 | # | 867 | # |
861 | # LED drivers | 868 | # also be needed; see USB_STORAGE Help for more info |
862 | # | 869 | # |
870 | # CONFIG_USB_LIBUSUAL is not set | ||
863 | 871 | ||
864 | # | 872 | # |
865 | # LED Triggers | 873 | # USB Imaging devices |
866 | # | 874 | # |
875 | # CONFIG_USB_MDC800 is not set | ||
867 | 876 | ||
868 | # | 877 | # |
869 | # InfiniBand support | 878 | # USB port drivers |
870 | # | 879 | # |
880 | # CONFIG_USB_SERIAL is not set | ||
871 | 881 | ||
872 | # | 882 | # |
873 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 883 | # USB Miscellaneous drivers |
874 | # | 884 | # |
885 | # CONFIG_USB_EMI62 is not set | ||
886 | # CONFIG_USB_EMI26 is not set | ||
887 | # CONFIG_USB_ADUTUX is not set | ||
888 | # CONFIG_USB_SEVSEG is not set | ||
889 | # CONFIG_USB_RIO500 is not set | ||
890 | # CONFIG_USB_LEGOTOWER is not set | ||
891 | # CONFIG_USB_LCD is not set | ||
892 | # CONFIG_USB_BERRY_CHARGE is not set | ||
893 | # CONFIG_USB_LED is not set | ||
894 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
895 | # CONFIG_USB_CYTHERM is not set | ||
896 | # CONFIG_USB_IDMOUSE is not set | ||
897 | # CONFIG_USB_FTDI_ELAN is not set | ||
898 | # CONFIG_USB_APPLEDISPLAY is not set | ||
899 | # CONFIG_USB_LD is not set | ||
900 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
901 | # CONFIG_USB_IOWARRIOR is not set | ||
902 | # CONFIG_USB_TEST is not set | ||
903 | # CONFIG_USB_ISIGHTFW is not set | ||
904 | # CONFIG_USB_VST is not set | ||
905 | # CONFIG_USB_GADGET is not set | ||
875 | 906 | ||
876 | # | 907 | # |
877 | # Real Time Clock | 908 | # OTG and related infrastructure |
878 | # | 909 | # |
879 | # CONFIG_RTC_CLASS is not set | 910 | # CONFIG_USB_GPIO_VBUS is not set |
911 | # CONFIG_NOP_USB_XCEIV is not set | ||
912 | # CONFIG_MMC is not set | ||
913 | # CONFIG_MEMSTICK is not set | ||
914 | # CONFIG_NEW_LEDS is not set | ||
915 | # CONFIG_ACCESSIBILITY is not set | ||
916 | CONFIG_RTC_LIB=y | ||
917 | CONFIG_RTC_CLASS=y | ||
918 | CONFIG_RTC_HCTOSYS=y | ||
919 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
920 | # CONFIG_RTC_DEBUG is not set | ||
880 | 921 | ||
881 | # | 922 | # |
882 | # DMA Engine support | 923 | # RTC interfaces |
883 | # | 924 | # |
884 | # CONFIG_DMA_ENGINE is not set | 925 | CONFIG_RTC_INTF_SYSFS=y |
926 | CONFIG_RTC_INTF_PROC=y | ||
927 | CONFIG_RTC_INTF_DEV=y | ||
928 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
929 | # CONFIG_RTC_DRV_TEST is not set | ||
885 | 930 | ||
886 | # | 931 | # |
887 | # DMA Clients | 932 | # SPI RTC drivers |
888 | # | 933 | # |
889 | 934 | ||
890 | # | 935 | # |
891 | # DMA Devices | 936 | # Platform RTC drivers |
892 | # | 937 | # |
938 | # CONFIG_RTC_DRV_CMOS is not set | ||
939 | # CONFIG_RTC_DRV_DS1286 is not set | ||
940 | # CONFIG_RTC_DRV_DS1511 is not set | ||
941 | # CONFIG_RTC_DRV_DS1553 is not set | ||
942 | # CONFIG_RTC_DRV_DS1742 is not set | ||
943 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
944 | # CONFIG_RTC_DRV_M48T86 is not set | ||
945 | # CONFIG_RTC_DRV_M48T35 is not set | ||
946 | # CONFIG_RTC_DRV_M48T59 is not set | ||
947 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
948 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
949 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
950 | # CONFIG_RTC_DRV_V3020 is not set | ||
893 | 951 | ||
894 | # | 952 | # |
895 | # Auxiliary Display support | 953 | # on-CPU RTC drivers |
896 | # | 954 | # |
955 | CONFIG_RTC_DRV_AU1XXX=y | ||
956 | # CONFIG_DMADEVICES is not set | ||
957 | # CONFIG_AUXDISPLAY is not set | ||
958 | # CONFIG_UIO is not set | ||
897 | 959 | ||
898 | # | 960 | # |
899 | # Virtualization | 961 | # TI VLYNQ |
900 | # | 962 | # |
963 | # CONFIG_STAGING is not set | ||
901 | 964 | ||
902 | # | 965 | # |
903 | # File systems | 966 | # File systems |
904 | # | 967 | # |
905 | CONFIG_EXT2_FS=y | 968 | CONFIG_EXT2_FS=y |
906 | CONFIG_EXT2_FS_XATTR=y | 969 | # CONFIG_EXT2_FS_XATTR is not set |
907 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
908 | # CONFIG_EXT2_FS_SECURITY is not set | ||
909 | # CONFIG_EXT2_FS_XIP is not set | 970 | # CONFIG_EXT2_FS_XIP is not set |
910 | CONFIG_EXT3_FS=y | 971 | # CONFIG_EXT3_FS is not set |
911 | CONFIG_EXT3_FS_XATTR=y | 972 | # CONFIG_EXT4_FS is not set |
912 | CONFIG_EXT3_FS_POSIX_ACL=y | 973 | # CONFIG_REISERFS_FS is not set |
913 | CONFIG_EXT3_FS_SECURITY=y | ||
914 | # CONFIG_EXT4DEV_FS is not set | ||
915 | CONFIG_JBD=y | ||
916 | # CONFIG_JBD_DEBUG is not set | ||
917 | CONFIG_FS_MBCACHE=y | ||
918 | CONFIG_REISERFS_FS=m | ||
919 | # CONFIG_REISERFS_CHECK is not set | ||
920 | # CONFIG_REISERFS_PROC_INFO is not set | ||
921 | CONFIG_REISERFS_FS_XATTR=y | ||
922 | CONFIG_REISERFS_FS_POSIX_ACL=y | ||
923 | CONFIG_REISERFS_FS_SECURITY=y | ||
924 | # CONFIG_JFS_FS is not set | 974 | # CONFIG_JFS_FS is not set |
925 | CONFIG_FS_POSIX_ACL=y | 975 | # CONFIG_FS_POSIX_ACL is not set |
926 | # CONFIG_XFS_FS is not set | 976 | # CONFIG_XFS_FS is not set |
927 | # CONFIG_GFS2_FS is not set | ||
928 | # CONFIG_OCFS2_FS is not set | 977 | # CONFIG_OCFS2_FS is not set |
929 | # CONFIG_MINIX_FS is not set | 978 | # CONFIG_BTRFS_FS is not set |
930 | # CONFIG_ROMFS_FS is not set | 979 | # CONFIG_NILFS2_FS is not set |
980 | CONFIG_FILE_LOCKING=y | ||
981 | CONFIG_FSNOTIFY=y | ||
982 | CONFIG_DNOTIFY=y | ||
931 | CONFIG_INOTIFY=y | 983 | CONFIG_INOTIFY=y |
932 | CONFIG_INOTIFY_USER=y | 984 | CONFIG_INOTIFY_USER=y |
933 | # CONFIG_QUOTA is not set | 985 | # CONFIG_QUOTA is not set |
934 | CONFIG_DNOTIFY=y | 986 | # CONFIG_AUTOFS_FS is not set |
935 | CONFIG_AUTOFS_FS=m | 987 | # CONFIG_AUTOFS4_FS is not set |
936 | CONFIG_AUTOFS4_FS=m | 988 | # CONFIG_FUSE_FS is not set |
937 | CONFIG_FUSE_FS=m | 989 | |
938 | CONFIG_GENERIC_ACL=y | 990 | # |
991 | # Caches | ||
992 | # | ||
993 | # CONFIG_FSCACHE is not set | ||
939 | 994 | ||
940 | # | 995 | # |
941 | # CD-ROM/DVD Filesystems | 996 | # CD-ROM/DVD Filesystems |
@@ -954,69 +1009,76 @@ CONFIG_GENERIC_ACL=y | |||
954 | # Pseudo filesystems | 1009 | # Pseudo filesystems |
955 | # | 1010 | # |
956 | CONFIG_PROC_FS=y | 1011 | CONFIG_PROC_FS=y |
957 | CONFIG_PROC_KCORE=y | 1012 | # CONFIG_PROC_KCORE is not set |
958 | CONFIG_PROC_SYSCTL=y | 1013 | CONFIG_PROC_SYSCTL=y |
1014 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
959 | CONFIG_SYSFS=y | 1015 | CONFIG_SYSFS=y |
960 | CONFIG_TMPFS=y | 1016 | CONFIG_TMPFS=y |
961 | CONFIG_TMPFS_POSIX_ACL=y | 1017 | # CONFIG_TMPFS_POSIX_ACL is not set |
962 | # CONFIG_HUGETLB_PAGE is not set | 1018 | # CONFIG_HUGETLB_PAGE is not set |
963 | CONFIG_RAMFS=y | 1019 | # CONFIG_CONFIGFS_FS is not set |
964 | CONFIG_CONFIGFS_FS=m | 1020 | CONFIG_MISC_FILESYSTEMS=y |
965 | |||
966 | # | ||
967 | # Miscellaneous filesystems | ||
968 | # | ||
969 | # CONFIG_ADFS_FS is not set | 1021 | # CONFIG_ADFS_FS is not set |
970 | # CONFIG_AFFS_FS is not set | 1022 | # CONFIG_AFFS_FS is not set |
971 | # CONFIG_ECRYPT_FS is not set | ||
972 | # CONFIG_HFS_FS is not set | 1023 | # CONFIG_HFS_FS is not set |
973 | # CONFIG_HFSPLUS_FS is not set | 1024 | # CONFIG_HFSPLUS_FS is not set |
974 | # CONFIG_BEFS_FS is not set | 1025 | # CONFIG_BEFS_FS is not set |
975 | # CONFIG_BFS_FS is not set | 1026 | # CONFIG_BFS_FS is not set |
976 | # CONFIG_EFS_FS is not set | 1027 | # CONFIG_EFS_FS is not set |
977 | # CONFIG_JFFS2_FS is not set | 1028 | CONFIG_JFFS2_FS=y |
978 | CONFIG_CRAMFS=m | 1029 | CONFIG_JFFS2_FS_DEBUG=0 |
1030 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1031 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1032 | CONFIG_JFFS2_SUMMARY=y | ||
1033 | CONFIG_JFFS2_FS_XATTR=y | ||
1034 | # CONFIG_JFFS2_FS_POSIX_ACL is not set | ||
1035 | # CONFIG_JFFS2_FS_SECURITY is not set | ||
1036 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1037 | CONFIG_JFFS2_ZLIB=y | ||
1038 | CONFIG_JFFS2_LZO=y | ||
1039 | CONFIG_JFFS2_RTIME=y | ||
1040 | CONFIG_JFFS2_RUBIN=y | ||
1041 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1042 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1043 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1044 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1045 | # CONFIG_CRAMFS is not set | ||
1046 | CONFIG_SQUASHFS=y | ||
1047 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1048 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
979 | # CONFIG_VXFS_FS is not set | 1049 | # CONFIG_VXFS_FS is not set |
1050 | # CONFIG_MINIX_FS is not set | ||
1051 | # CONFIG_OMFS_FS is not set | ||
980 | # CONFIG_HPFS_FS is not set | 1052 | # CONFIG_HPFS_FS is not set |
981 | # CONFIG_QNX4FS_FS is not set | 1053 | # CONFIG_QNX4FS_FS is not set |
1054 | # CONFIG_ROMFS_FS is not set | ||
982 | # CONFIG_SYSV_FS is not set | 1055 | # CONFIG_SYSV_FS is not set |
983 | # CONFIG_UFS_FS is not set | 1056 | # CONFIG_UFS_FS is not set |
984 | 1057 | CONFIG_NETWORK_FILESYSTEMS=y | |
985 | # | ||
986 | # Network File Systems | ||
987 | # | ||
988 | CONFIG_NFS_FS=y | 1058 | CONFIG_NFS_FS=y |
989 | # CONFIG_NFS_V3 is not set | 1059 | CONFIG_NFS_V3=y |
1060 | # CONFIG_NFS_V3_ACL is not set | ||
990 | # CONFIG_NFS_V4 is not set | 1061 | # CONFIG_NFS_V4 is not set |
991 | # CONFIG_NFS_DIRECTIO is not set | ||
992 | CONFIG_NFSD=m | ||
993 | # CONFIG_NFSD_V3 is not set | ||
994 | # CONFIG_NFSD_TCP is not set | ||
995 | CONFIG_ROOT_NFS=y | 1062 | CONFIG_ROOT_NFS=y |
1063 | # CONFIG_NFSD is not set | ||
996 | CONFIG_LOCKD=y | 1064 | CONFIG_LOCKD=y |
997 | CONFIG_EXPORTFS=m | 1065 | CONFIG_LOCKD_V4=y |
998 | CONFIG_NFS_COMMON=y | 1066 | CONFIG_NFS_COMMON=y |
999 | CONFIG_SUNRPC=y | 1067 | CONFIG_SUNRPC=y |
1000 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1068 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1001 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1069 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1002 | CONFIG_SMB_FS=m | 1070 | # CONFIG_SMB_FS is not set |
1003 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1004 | # CONFIG_CIFS is not set | 1071 | # CONFIG_CIFS is not set |
1005 | # CONFIG_NCP_FS is not set | 1072 | # CONFIG_NCP_FS is not set |
1006 | # CONFIG_CODA_FS is not set | 1073 | # CONFIG_CODA_FS is not set |
1007 | # CONFIG_AFS_FS is not set | 1074 | # CONFIG_AFS_FS is not set |
1008 | # CONFIG_9P_FS is not set | ||
1009 | 1075 | ||
1010 | # | 1076 | # |
1011 | # Partition Types | 1077 | # Partition Types |
1012 | # | 1078 | # |
1013 | # CONFIG_PARTITION_ADVANCED is not set | 1079 | # CONFIG_PARTITION_ADVANCED is not set |
1014 | CONFIG_MSDOS_PARTITION=y | 1080 | CONFIG_MSDOS_PARTITION=y |
1015 | 1081 | CONFIG_NLS=y | |
1016 | # | ||
1017 | # Native Language Support | ||
1018 | # | ||
1019 | CONFIG_NLS=m | ||
1020 | CONFIG_NLS_DEFAULT="iso8859-1" | 1082 | CONFIG_NLS_DEFAULT="iso8859-1" |
1021 | # CONFIG_NLS_CODEPAGE_437 is not set | 1083 | # CONFIG_NLS_CODEPAGE_437 is not set |
1022 | # CONFIG_NLS_CODEPAGE_737 is not set | 1084 | # CONFIG_NLS_CODEPAGE_737 is not set |
@@ -1056,34 +1118,71 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1056 | # CONFIG_NLS_KOI8_R is not set | 1118 | # CONFIG_NLS_KOI8_R is not set |
1057 | # CONFIG_NLS_KOI8_U is not set | 1119 | # CONFIG_NLS_KOI8_U is not set |
1058 | # CONFIG_NLS_UTF8 is not set | 1120 | # CONFIG_NLS_UTF8 is not set |
1059 | 1121 | # CONFIG_DLM is not set | |
1060 | # | ||
1061 | # Distributed Lock Manager | ||
1062 | # | ||
1063 | CONFIG_DLM=m | ||
1064 | CONFIG_DLM_TCP=y | ||
1065 | # CONFIG_DLM_SCTP is not set | ||
1066 | # CONFIG_DLM_DEBUG is not set | ||
1067 | |||
1068 | # | ||
1069 | # Profiling support | ||
1070 | # | ||
1071 | # CONFIG_PROFILING is not set | ||
1072 | 1122 | ||
1073 | # | 1123 | # |
1074 | # Kernel hacking | 1124 | # Kernel hacking |
1075 | # | 1125 | # |
1076 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1126 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1077 | # CONFIG_PRINTK_TIME is not set | 1127 | # CONFIG_PRINTK_TIME is not set |
1128 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1078 | CONFIG_ENABLE_MUST_CHECK=y | 1129 | CONFIG_ENABLE_MUST_CHECK=y |
1130 | CONFIG_FRAME_WARN=1024 | ||
1079 | # CONFIG_MAGIC_SYSRQ is not set | 1131 | # CONFIG_MAGIC_SYSRQ is not set |
1132 | CONFIG_STRIP_ASM_SYMS=y | ||
1080 | # CONFIG_UNUSED_SYMBOLS is not set | 1133 | # CONFIG_UNUSED_SYMBOLS is not set |
1081 | # CONFIG_DEBUG_FS is not set | 1134 | # CONFIG_DEBUG_FS is not set |
1082 | # CONFIG_HEADERS_CHECK is not set | 1135 | # CONFIG_HEADERS_CHECK is not set |
1083 | # CONFIG_DEBUG_KERNEL is not set | 1136 | CONFIG_DEBUG_KERNEL=y |
1084 | CONFIG_LOG_BUF_SHIFT=14 | 1137 | # CONFIG_DEBUG_SHIRQ is not set |
1085 | CONFIG_CROSSCOMPILE=y | 1138 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1086 | CONFIG_CMDLINE="" | 1139 | # CONFIG_DETECT_HUNG_TASK is not set |
1140 | # CONFIG_SCHED_DEBUG is not set | ||
1141 | # CONFIG_SCHEDSTATS is not set | ||
1142 | # CONFIG_TIMER_STATS is not set | ||
1143 | # CONFIG_DEBUG_OBJECTS is not set | ||
1144 | # CONFIG_DEBUG_SLAB is not set | ||
1145 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1146 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1147 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1148 | # CONFIG_DEBUG_MUTEXES is not set | ||
1149 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1150 | # CONFIG_PROVE_LOCKING is not set | ||
1151 | # CONFIG_LOCK_STAT is not set | ||
1152 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1153 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1154 | # CONFIG_DEBUG_KOBJECT is not set | ||
1155 | # CONFIG_DEBUG_INFO is not set | ||
1156 | # CONFIG_DEBUG_VM is not set | ||
1157 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1158 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1159 | # CONFIG_DEBUG_LIST is not set | ||
1160 | # CONFIG_DEBUG_SG is not set | ||
1161 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1162 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1163 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1164 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1165 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1166 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1167 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1168 | # CONFIG_FAULT_INJECTION is not set | ||
1169 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1170 | # CONFIG_PAGE_POISONING is not set | ||
1171 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1172 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1173 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1174 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1175 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1176 | CONFIG_TRACING_SUPPORT=y | ||
1177 | # CONFIG_FTRACE is not set | ||
1178 | # CONFIG_SAMPLES is not set | ||
1179 | CONFIG_HAVE_ARCH_KGDB=y | ||
1180 | # CONFIG_KGDB is not set | ||
1181 | CONFIG_EARLY_PRINTK=y | ||
1182 | # CONFIG_CMDLINE_BOOL is not set | ||
1183 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1184 | # CONFIG_RUNTIME_DEBUG is not set | ||
1185 | CONFIG_DEBUG_ZBOOT=y | ||
1087 | 1186 | ||
1088 | # | 1187 | # |
1089 | # Security options | 1188 | # Security options |
@@ -1091,67 +1190,32 @@ CONFIG_CMDLINE="" | |||
1091 | CONFIG_KEYS=y | 1190 | CONFIG_KEYS=y |
1092 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1191 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1093 | # CONFIG_SECURITY is not set | 1192 | # CONFIG_SECURITY is not set |
1094 | 1193 | CONFIG_SECURITYFS=y | |
1095 | # | 1194 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1096 | # Cryptographic options | 1195 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1097 | # | 1196 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1098 | CONFIG_CRYPTO=y | 1197 | CONFIG_DEFAULT_SECURITY_DAC=y |
1099 | CONFIG_CRYPTO_ALGAPI=y | 1198 | CONFIG_DEFAULT_SECURITY="" |
1100 | CONFIG_CRYPTO_BLKCIPHER=m | 1199 | # CONFIG_CRYPTO is not set |
1101 | CONFIG_CRYPTO_HASH=y | 1200 | # CONFIG_BINARY_PRINTF is not set |
1102 | CONFIG_CRYPTO_MANAGER=y | ||
1103 | CONFIG_CRYPTO_HMAC=y | ||
1104 | CONFIG_CRYPTO_XCBC=m | ||
1105 | CONFIG_CRYPTO_NULL=m | ||
1106 | CONFIG_CRYPTO_MD4=m | ||
1107 | CONFIG_CRYPTO_MD5=y | ||
1108 | CONFIG_CRYPTO_SHA1=m | ||
1109 | CONFIG_CRYPTO_SHA256=m | ||
1110 | CONFIG_CRYPTO_SHA512=m | ||
1111 | CONFIG_CRYPTO_WP512=m | ||
1112 | CONFIG_CRYPTO_TGR192=m | ||
1113 | CONFIG_CRYPTO_GF128MUL=m | ||
1114 | CONFIG_CRYPTO_ECB=m | ||
1115 | CONFIG_CRYPTO_CBC=m | ||
1116 | CONFIG_CRYPTO_PCBC=m | ||
1117 | CONFIG_CRYPTO_LRW=m | ||
1118 | CONFIG_CRYPTO_DES=m | ||
1119 | CONFIG_CRYPTO_FCRYPT=m | ||
1120 | CONFIG_CRYPTO_BLOWFISH=m | ||
1121 | CONFIG_CRYPTO_TWOFISH=m | ||
1122 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1123 | CONFIG_CRYPTO_SERPENT=m | ||
1124 | CONFIG_CRYPTO_AES=m | ||
1125 | CONFIG_CRYPTO_CAST5=m | ||
1126 | CONFIG_CRYPTO_CAST6=m | ||
1127 | CONFIG_CRYPTO_TEA=m | ||
1128 | CONFIG_CRYPTO_ARC4=m | ||
1129 | CONFIG_CRYPTO_KHAZAD=m | ||
1130 | CONFIG_CRYPTO_ANUBIS=m | ||
1131 | CONFIG_CRYPTO_DEFLATE=m | ||
1132 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1133 | CONFIG_CRYPTO_CRC32C=m | ||
1134 | CONFIG_CRYPTO_CAMELLIA=m | ||
1135 | # CONFIG_CRYPTO_TEST is not set | ||
1136 | |||
1137 | # | ||
1138 | # Hardware crypto devices | ||
1139 | # | ||
1140 | 1201 | ||
1141 | # | 1202 | # |
1142 | # Library routines | 1203 | # Library routines |
1143 | # | 1204 | # |
1144 | CONFIG_BITREVERSE=y | 1205 | CONFIG_BITREVERSE=y |
1145 | CONFIG_CRC_CCITT=m | 1206 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1146 | CONFIG_CRC16=m | 1207 | # CONFIG_CRC_CCITT is not set |
1208 | # CONFIG_CRC16 is not set | ||
1209 | # CONFIG_CRC_T10DIF is not set | ||
1210 | # CONFIG_CRC_ITU_T is not set | ||
1147 | CONFIG_CRC32=y | 1211 | CONFIG_CRC32=y |
1148 | CONFIG_LIBCRC32C=m | 1212 | # CONFIG_CRC7 is not set |
1149 | CONFIG_ZLIB_INFLATE=m | 1213 | # CONFIG_LIBCRC32C is not set |
1150 | CONFIG_ZLIB_DEFLATE=m | 1214 | CONFIG_ZLIB_INFLATE=y |
1151 | CONFIG_TEXTSEARCH=y | 1215 | CONFIG_ZLIB_DEFLATE=y |
1152 | CONFIG_TEXTSEARCH_KMP=m | 1216 | CONFIG_LZO_COMPRESS=y |
1153 | CONFIG_TEXTSEARCH_BM=m | 1217 | CONFIG_LZO_DECOMPRESS=y |
1154 | CONFIG_TEXTSEARCH_FSM=m | ||
1155 | CONFIG_PLIST=y | ||
1156 | CONFIG_HAS_IOMEM=y | 1218 | CONFIG_HAS_IOMEM=y |
1157 | CONFIG_HAS_IOPORT=y | 1219 | CONFIG_HAS_IOPORT=y |
1220 | CONFIG_HAS_DMA=y | ||
1221 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/pb1200_defconfig b/arch/mips/configs/pb1200_defconfig new file mode 100644 index 000000000000..e9ad77320f16 --- /dev/null +++ b/arch/mips/configs/pb1200_defconfig | |||
@@ -0,0 +1,1568 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.33 | ||
4 | # Fri Feb 26 10:23:34 2010 | ||
5 | # | ||
6 | CONFIG_MIPS=y | ||
7 | |||
8 | # | ||
9 | # Machine selection | ||
10 | # | ||
11 | CONFIG_MACH_ALCHEMY=y | ||
12 | # CONFIG_AR7 is not set | ||
13 | # CONFIG_BCM47XX is not set | ||
14 | # CONFIG_BCM63XX is not set | ||
15 | # CONFIG_MIPS_COBALT is not set | ||
16 | # CONFIG_MACH_DECSTATION is not set | ||
17 | # CONFIG_MACH_JAZZ is not set | ||
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
20 | # CONFIG_MIPS_MALTA is not set | ||
21 | # CONFIG_MIPS_SIM is not set | ||
22 | # CONFIG_NEC_MARKEINS is not set | ||
23 | # CONFIG_MACH_VR41XX is not set | ||
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
26 | # CONFIG_PNX8550_JBS is not set | ||
27 | # CONFIG_PNX8550_STB810 is not set | ||
28 | # CONFIG_PMC_MSP is not set | ||
29 | # CONFIG_PMC_YOSEMITE is not set | ||
30 | # CONFIG_POWERTV is not set | ||
31 | # CONFIG_SGI_IP22 is not set | ||
32 | # CONFIG_SGI_IP27 is not set | ||
33 | # CONFIG_SGI_IP28 is not set | ||
34 | # CONFIG_SGI_IP32 is not set | ||
35 | # CONFIG_SIBYTE_CRHINE is not set | ||
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
37 | # CONFIG_SIBYTE_CRHONE is not set | ||
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
43 | # CONFIG_SNI_RM is not set | ||
44 | # CONFIG_MACH_TX39XX is not set | ||
45 | # CONFIG_MACH_TX49XX is not set | ||
46 | # CONFIG_MIKROTIK_RB532 is not set | ||
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | CONFIG_MIPS_PB1200=y | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1200=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
73 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
74 | CONFIG_GENERIC_HWEIGHT=y | ||
75 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
77 | CONFIG_GENERIC_TIME=y | ||
78 | CONFIG_GENERIC_CMOS_UPDATE=y | ||
79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y | ||
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
83 | CONFIG_DMA_NONCOHERENT=y | ||
84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | ||
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
86 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y | ||
87 | # CONFIG_NO_IOPORT is not set | ||
88 | CONFIG_GENERIC_GPIO=y | ||
89 | # CONFIG_CPU_BIG_ENDIAN is not set | ||
90 | CONFIG_CPU_LITTLE_ENDIAN=y | ||
91 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | ||
92 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | ||
93 | CONFIG_IRQ_CPU=y | ||
94 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | ||
95 | |||
96 | # | ||
97 | # CPU selection | ||
98 | # | ||
99 | # CONFIG_CPU_LOONGSON2E is not set | ||
100 | # CONFIG_CPU_LOONGSON2F is not set | ||
101 | CONFIG_CPU_MIPS32_R1=y | ||
102 | # CONFIG_CPU_MIPS32_R2 is not set | ||
103 | # CONFIG_CPU_MIPS64_R1 is not set | ||
104 | # CONFIG_CPU_MIPS64_R2 is not set | ||
105 | # CONFIG_CPU_R3000 is not set | ||
106 | # CONFIG_CPU_TX39XX is not set | ||
107 | # CONFIG_CPU_VR41XX is not set | ||
108 | # CONFIG_CPU_R4300 is not set | ||
109 | # CONFIG_CPU_R4X00 is not set | ||
110 | # CONFIG_CPU_TX49XX is not set | ||
111 | # CONFIG_CPU_R5000 is not set | ||
112 | # CONFIG_CPU_R5432 is not set | ||
113 | # CONFIG_CPU_R5500 is not set | ||
114 | # CONFIG_CPU_R6000 is not set | ||
115 | # CONFIG_CPU_NEVADA is not set | ||
116 | # CONFIG_CPU_R8000 is not set | ||
117 | # CONFIG_CPU_R10000 is not set | ||
118 | # CONFIG_CPU_RM7000 is not set | ||
119 | # CONFIG_CPU_RM9000 is not set | ||
120 | # CONFIG_CPU_SB1 is not set | ||
121 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
122 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
123 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | ||
124 | CONFIG_CPU_MIPS32=y | ||
125 | CONFIG_CPU_MIPSR1=y | ||
126 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | ||
127 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | ||
128 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
129 | |||
130 | # | ||
131 | # Kernel type | ||
132 | # | ||
133 | CONFIG_32BIT=y | ||
134 | # CONFIG_64BIT is not set | ||
135 | CONFIG_PAGE_SIZE_4KB=y | ||
136 | # CONFIG_PAGE_SIZE_8KB is not set | ||
137 | # CONFIG_PAGE_SIZE_16KB is not set | ||
138 | # CONFIG_PAGE_SIZE_32KB is not set | ||
139 | # CONFIG_PAGE_SIZE_64KB is not set | ||
140 | CONFIG_CPU_HAS_PREFETCH=y | ||
141 | CONFIG_MIPS_MT_DISABLED=y | ||
142 | # CONFIG_MIPS_MT_SMP is not set | ||
143 | # CONFIG_MIPS_MT_SMTC is not set | ||
144 | CONFIG_64BIT_PHYS_ADDR=y | ||
145 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
146 | CONFIG_CPU_HAS_SYNC=y | ||
147 | CONFIG_GENERIC_HARDIRQS=y | ||
148 | CONFIG_GENERIC_IRQ_PROBE=y | ||
149 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | ||
150 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
151 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
152 | CONFIG_SELECT_MEMORY_MODEL=y | ||
153 | CONFIG_FLATMEM_MANUAL=y | ||
154 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
155 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
156 | CONFIG_FLATMEM=y | ||
157 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
158 | CONFIG_PAGEFLAGS_EXTENDED=y | ||
159 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
160 | CONFIG_PHYS_ADDR_T_64BIT=y | ||
161 | CONFIG_ZONE_DMA_FLAG=0 | ||
162 | CONFIG_VIRT_TO_BUS=y | ||
163 | CONFIG_KSM=y | ||
164 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
165 | CONFIG_TICK_ONESHOT=y | ||
166 | CONFIG_NO_HZ=y | ||
167 | CONFIG_HIGH_RES_TIMERS=y | ||
168 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
169 | # CONFIG_HZ_48 is not set | ||
170 | CONFIG_HZ_100=y | ||
171 | # CONFIG_HZ_128 is not set | ||
172 | # CONFIG_HZ_250 is not set | ||
173 | # CONFIG_HZ_256 is not set | ||
174 | # CONFIG_HZ_1000 is not set | ||
175 | # CONFIG_HZ_1024 is not set | ||
176 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | ||
177 | CONFIG_HZ=100 | ||
178 | CONFIG_PREEMPT_NONE=y | ||
179 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
180 | # CONFIG_PREEMPT is not set | ||
181 | # CONFIG_KEXEC is not set | ||
182 | # CONFIG_SECCOMP is not set | ||
183 | CONFIG_LOCKDEP_SUPPORT=y | ||
184 | CONFIG_STACKTRACE_SUPPORT=y | ||
185 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
186 | CONFIG_CONSTRUCTORS=y | ||
187 | |||
188 | # | ||
189 | # General setup | ||
190 | # | ||
191 | CONFIG_EXPERIMENTAL=y | ||
192 | CONFIG_BROKEN_ON_SMP=y | ||
193 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
194 | CONFIG_LOCALVERSION="-pb1200" | ||
195 | CONFIG_LOCALVERSION_AUTO=y | ||
196 | CONFIG_HAVE_KERNEL_GZIP=y | ||
197 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
198 | CONFIG_HAVE_KERNEL_LZMA=y | ||
199 | CONFIG_HAVE_KERNEL_LZO=y | ||
200 | # CONFIG_KERNEL_GZIP is not set | ||
201 | # CONFIG_KERNEL_BZIP2 is not set | ||
202 | CONFIG_KERNEL_LZMA=y | ||
203 | # CONFIG_KERNEL_LZO is not set | ||
204 | CONFIG_SWAP=y | ||
205 | CONFIG_SYSVIPC=y | ||
206 | CONFIG_SYSVIPC_SYSCTL=y | ||
207 | CONFIG_POSIX_MQUEUE=y | ||
208 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
209 | # CONFIG_BSD_PROCESS_ACCT is not set | ||
210 | # CONFIG_TASKSTATS is not set | ||
211 | # CONFIG_AUDIT is not set | ||
212 | |||
213 | # | ||
214 | # RCU Subsystem | ||
215 | # | ||
216 | # CONFIG_TREE_RCU is not set | ||
217 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
218 | CONFIG_TINY_RCU=y | ||
219 | # CONFIG_TREE_RCU_TRACE is not set | ||
220 | # CONFIG_IKCONFIG is not set | ||
221 | CONFIG_LOG_BUF_SHIFT=14 | ||
222 | # CONFIG_GROUP_SCHED is not set | ||
223 | # CONFIG_CGROUPS is not set | ||
224 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
225 | # CONFIG_RELAY is not set | ||
226 | # CONFIG_NAMESPACES is not set | ||
227 | # CONFIG_BLK_DEV_INITRD is not set | ||
228 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
229 | CONFIG_SYSCTL=y | ||
230 | CONFIG_ANON_INODES=y | ||
231 | CONFIG_EMBEDDED=y | ||
232 | # CONFIG_SYSCTL_SYSCALL is not set | ||
233 | # CONFIG_KALLSYMS is not set | ||
234 | CONFIG_HOTPLUG=y | ||
235 | CONFIG_PRINTK=y | ||
236 | CONFIG_BUG=y | ||
237 | CONFIG_ELF_CORE=y | ||
238 | # CONFIG_PCSPKR_PLATFORM is not set | ||
239 | CONFIG_BASE_FULL=y | ||
240 | CONFIG_FUTEX=y | ||
241 | CONFIG_EPOLL=y | ||
242 | CONFIG_SIGNALFD=y | ||
243 | CONFIG_TIMERFD=y | ||
244 | CONFIG_EVENTFD=y | ||
245 | CONFIG_SHMEM=y | ||
246 | CONFIG_AIO=y | ||
247 | |||
248 | # | ||
249 | # Kernel Performance Events And Counters | ||
250 | # | ||
251 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
252 | # CONFIG_COMPAT_BRK is not set | ||
253 | CONFIG_SLAB=y | ||
254 | # CONFIG_SLUB is not set | ||
255 | # CONFIG_SLOB is not set | ||
256 | # CONFIG_PROFILING is not set | ||
257 | CONFIG_HAVE_OPROFILE=y | ||
258 | |||
259 | # | ||
260 | # GCOV-based kernel profiling | ||
261 | # | ||
262 | # CONFIG_SLOW_WORK is not set | ||
263 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
264 | CONFIG_SLABINFO=y | ||
265 | CONFIG_RT_MUTEXES=y | ||
266 | CONFIG_BASE_SMALL=0 | ||
267 | CONFIG_MODULES=y | ||
268 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
269 | CONFIG_MODULE_UNLOAD=y | ||
270 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
271 | # CONFIG_MODVERSIONS is not set | ||
272 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
273 | CONFIG_BLOCK=y | ||
274 | # CONFIG_LBDAF is not set | ||
275 | # CONFIG_BLK_DEV_BSG is not set | ||
276 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
277 | |||
278 | # | ||
279 | # IO Schedulers | ||
280 | # | ||
281 | CONFIG_IOSCHED_NOOP=y | ||
282 | # CONFIG_IOSCHED_DEADLINE is not set | ||
283 | # CONFIG_IOSCHED_CFQ is not set | ||
284 | # CONFIG_DEFAULT_DEADLINE is not set | ||
285 | # CONFIG_DEFAULT_CFQ is not set | ||
286 | CONFIG_DEFAULT_NOOP=y | ||
287 | CONFIG_DEFAULT_IOSCHED="noop" | ||
288 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
289 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
290 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
293 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
294 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
295 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
296 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
297 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
298 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
299 | # CONFIG_INLINE_READ_LOCK is not set | ||
300 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
302 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
303 | CONFIG_INLINE_READ_UNLOCK=y | ||
304 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
305 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
306 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
307 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
308 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
311 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
312 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
313 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
314 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
315 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
316 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
317 | # CONFIG_FREEZER is not set | ||
318 | |||
319 | # | ||
320 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | ||
321 | # | ||
322 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
323 | CONFIG_MMU=y | ||
324 | CONFIG_PCCARD=y | ||
325 | CONFIG_PCMCIA=y | ||
326 | CONFIG_PCMCIA_LOAD_CIS=y | ||
327 | # CONFIG_PCMCIA_IOCTL is not set | ||
328 | |||
329 | # | ||
330 | # PC-card bridges | ||
331 | # | ||
332 | # CONFIG_PCMCIA_AU1X00 is not set | ||
333 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y | ||
334 | |||
335 | # | ||
336 | # Executable file formats | ||
337 | # | ||
338 | CONFIG_BINFMT_ELF=y | ||
339 | CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y | ||
340 | # CONFIG_HAVE_AOUT is not set | ||
341 | CONFIG_BINFMT_MISC=y | ||
342 | CONFIG_TRAD_SIGNALS=y | ||
343 | |||
344 | # | ||
345 | # Power management options | ||
346 | # | ||
347 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y | ||
348 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
349 | # CONFIG_PM is not set | ||
350 | CONFIG_NET=y | ||
351 | |||
352 | # | ||
353 | # Networking options | ||
354 | # | ||
355 | CONFIG_PACKET=y | ||
356 | CONFIG_PACKET_MMAP=y | ||
357 | CONFIG_UNIX=y | ||
358 | # CONFIG_NET_KEY is not set | ||
359 | CONFIG_INET=y | ||
360 | CONFIG_IP_MULTICAST=y | ||
361 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
362 | CONFIG_IP_FIB_HASH=y | ||
363 | CONFIG_IP_PNP=y | ||
364 | # CONFIG_IP_PNP_DHCP is not set | ||
365 | # CONFIG_IP_PNP_BOOTP is not set | ||
366 | # CONFIG_IP_PNP_RARP is not set | ||
367 | # CONFIG_NET_IPIP is not set | ||
368 | # CONFIG_NET_IPGRE is not set | ||
369 | # CONFIG_IP_MROUTE is not set | ||
370 | # CONFIG_ARPD is not set | ||
371 | # CONFIG_SYN_COOKIES is not set | ||
372 | # CONFIG_INET_AH is not set | ||
373 | # CONFIG_INET_ESP is not set | ||
374 | # CONFIG_INET_IPCOMP is not set | ||
375 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
376 | # CONFIG_INET_TUNNEL is not set | ||
377 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set | ||
378 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set | ||
379 | # CONFIG_INET_XFRM_MODE_BEET is not set | ||
380 | CONFIG_INET_LRO=y | ||
381 | # CONFIG_INET_DIAG is not set | ||
382 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
383 | CONFIG_TCP_CONG_CUBIC=y | ||
384 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
385 | # CONFIG_TCP_MD5SIG is not set | ||
386 | # CONFIG_IPV6 is not set | ||
387 | # CONFIG_NETWORK_SECMARK is not set | ||
388 | # CONFIG_NETFILTER is not set | ||
389 | # CONFIG_IP_DCCP is not set | ||
390 | # CONFIG_IP_SCTP is not set | ||
391 | # CONFIG_RDS is not set | ||
392 | # CONFIG_TIPC is not set | ||
393 | # CONFIG_ATM is not set | ||
394 | # CONFIG_BRIDGE is not set | ||
395 | # CONFIG_NET_DSA is not set | ||
396 | # CONFIG_VLAN_8021Q is not set | ||
397 | # CONFIG_DECNET is not set | ||
398 | # CONFIG_LLC2 is not set | ||
399 | # CONFIG_IPX is not set | ||
400 | # CONFIG_ATALK is not set | ||
401 | # CONFIG_X25 is not set | ||
402 | # CONFIG_LAPB is not set | ||
403 | # CONFIG_ECONET is not set | ||
404 | # CONFIG_WAN_ROUTER is not set | ||
405 | # CONFIG_PHONET is not set | ||
406 | # CONFIG_IEEE802154 is not set | ||
407 | # CONFIG_NET_SCHED is not set | ||
408 | # CONFIG_DCB is not set | ||
409 | |||
410 | # | ||
411 | # Network testing | ||
412 | # | ||
413 | # CONFIG_NET_PKTGEN is not set | ||
414 | # CONFIG_HAMRADIO is not set | ||
415 | # CONFIG_CAN is not set | ||
416 | # CONFIG_IRDA is not set | ||
417 | # CONFIG_BT is not set | ||
418 | # CONFIG_AF_RXRPC is not set | ||
419 | # CONFIG_WIRELESS is not set | ||
420 | # CONFIG_WIMAX is not set | ||
421 | # CONFIG_RFKILL is not set | ||
422 | # CONFIG_NET_9P is not set | ||
423 | |||
424 | # | ||
425 | # Device Drivers | ||
426 | # | ||
427 | |||
428 | # | ||
429 | # Generic Driver Options | ||
430 | # | ||
431 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
432 | # CONFIG_DEVTMPFS is not set | ||
433 | CONFIG_STANDALONE=y | ||
434 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
435 | CONFIG_FW_LOADER=y | ||
436 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
437 | CONFIG_EXTRA_FIRMWARE="" | ||
438 | # CONFIG_DEBUG_DRIVER is not set | ||
439 | # CONFIG_DEBUG_DEVRES is not set | ||
440 | # CONFIG_SYS_HYPERVISOR is not set | ||
441 | # CONFIG_CONNECTOR is not set | ||
442 | CONFIG_MTD=y | ||
443 | # CONFIG_MTD_DEBUG is not set | ||
444 | # CONFIG_MTD_TESTS is not set | ||
445 | # CONFIG_MTD_CONCAT is not set | ||
446 | CONFIG_MTD_PARTITIONS=y | ||
447 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
448 | CONFIG_MTD_CMDLINE_PARTS=y | ||
449 | # CONFIG_MTD_AR7_PARTS is not set | ||
450 | |||
451 | # | ||
452 | # User Modules And Translation Layers | ||
453 | # | ||
454 | CONFIG_MTD_CHAR=y | ||
455 | CONFIG_MTD_BLKDEVS=y | ||
456 | CONFIG_MTD_BLOCK=y | ||
457 | # CONFIG_FTL is not set | ||
458 | # CONFIG_NFTL is not set | ||
459 | # CONFIG_INFTL is not set | ||
460 | # CONFIG_RFD_FTL is not set | ||
461 | # CONFIG_SSFDC is not set | ||
462 | # CONFIG_MTD_OOPS is not set | ||
463 | |||
464 | # | ||
465 | # RAM/ROM/Flash chip drivers | ||
466 | # | ||
467 | CONFIG_MTD_CFI=y | ||
468 | # CONFIG_MTD_JEDECPROBE is not set | ||
469 | CONFIG_MTD_GEN_PROBE=y | ||
470 | # CONFIG_MTD_CFI_ADV_OPTIONS is not set | ||
471 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
472 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
473 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
474 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
475 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
476 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
477 | CONFIG_MTD_CFI_I1=y | ||
478 | CONFIG_MTD_CFI_I2=y | ||
479 | # CONFIG_MTD_CFI_I4 is not set | ||
480 | # CONFIG_MTD_CFI_I8 is not set | ||
481 | # CONFIG_MTD_CFI_INTELEXT is not set | ||
482 | CONFIG_MTD_CFI_AMDSTD=y | ||
483 | # CONFIG_MTD_CFI_STAA is not set | ||
484 | CONFIG_MTD_CFI_UTIL=y | ||
485 | # CONFIG_MTD_RAM is not set | ||
486 | # CONFIG_MTD_ROM is not set | ||
487 | # CONFIG_MTD_ABSENT is not set | ||
488 | |||
489 | # | ||
490 | # Mapping drivers for chip access | ||
491 | # | ||
492 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | ||
493 | CONFIG_MTD_PHYSMAP=y | ||
494 | # CONFIG_MTD_PHYSMAP_COMPAT is not set | ||
495 | # CONFIG_MTD_PLATRAM is not set | ||
496 | |||
497 | # | ||
498 | # Self-contained MTD device drivers | ||
499 | # | ||
500 | # CONFIG_MTD_DATAFLASH is not set | ||
501 | # CONFIG_MTD_M25P80 is not set | ||
502 | # CONFIG_MTD_SST25L is not set | ||
503 | # CONFIG_MTD_SLRAM is not set | ||
504 | # CONFIG_MTD_PHRAM is not set | ||
505 | # CONFIG_MTD_MTDRAM is not set | ||
506 | # CONFIG_MTD_BLOCK2MTD is not set | ||
507 | |||
508 | # | ||
509 | # Disk-On-Chip Device Drivers | ||
510 | # | ||
511 | # CONFIG_MTD_DOC2000 is not set | ||
512 | # CONFIG_MTD_DOC2001 is not set | ||
513 | # CONFIG_MTD_DOC2001PLUS is not set | ||
514 | CONFIG_MTD_NAND=y | ||
515 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | ||
516 | # CONFIG_MTD_NAND_ECC_SMC is not set | ||
517 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set | ||
518 | CONFIG_MTD_NAND_IDS=y | ||
519 | # CONFIG_MTD_NAND_AU1550 is not set | ||
520 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
521 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
522 | CONFIG_MTD_NAND_PLATFORM=y | ||
523 | # CONFIG_MTD_ALAUDA is not set | ||
524 | # CONFIG_MTD_ONENAND is not set | ||
525 | |||
526 | # | ||
527 | # LPDDR flash memory drivers | ||
528 | # | ||
529 | # CONFIG_MTD_LPDDR is not set | ||
530 | |||
531 | # | ||
532 | # UBI - Unsorted block images | ||
533 | # | ||
534 | # CONFIG_MTD_UBI is not set | ||
535 | # CONFIG_PARPORT is not set | ||
536 | CONFIG_BLK_DEV=y | ||
537 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
538 | CONFIG_BLK_DEV_LOOP=y | ||
539 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
540 | |||
541 | # | ||
542 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected | ||
543 | # | ||
544 | # CONFIG_BLK_DEV_NBD is not set | ||
545 | CONFIG_BLK_DEV_UB=y | ||
546 | # CONFIG_BLK_DEV_RAM is not set | ||
547 | # CONFIG_CDROM_PKTCDVD is not set | ||
548 | # CONFIG_ATA_OVER_ETH is not set | ||
549 | # CONFIG_BLK_DEV_HD is not set | ||
550 | # CONFIG_MISC_DEVICES is not set | ||
551 | CONFIG_HAVE_IDE=y | ||
552 | CONFIG_IDE=y | ||
553 | |||
554 | # | ||
555 | # Please see Documentation/ide/ide.txt for help/info on IDE drives | ||
556 | # | ||
557 | CONFIG_IDE_XFER_MODE=y | ||
558 | CONFIG_IDE_ATAPI=y | ||
559 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
560 | CONFIG_IDE_GD=y | ||
561 | CONFIG_IDE_GD_ATA=y | ||
562 | # CONFIG_IDE_GD_ATAPI is not set | ||
563 | CONFIG_BLK_DEV_IDECS=y | ||
564 | CONFIG_BLK_DEV_IDECD=y | ||
565 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | ||
566 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
567 | CONFIG_IDE_TASK_IOCTL=y | ||
568 | # CONFIG_IDE_PROC_FS is not set | ||
569 | |||
570 | # | ||
571 | # IDE chipset support/bugfixes | ||
572 | # | ||
573 | # CONFIG_IDE_GENERIC is not set | ||
574 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
575 | CONFIG_BLK_DEV_IDE_AU1XXX=y | ||
576 | CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA=y | ||
577 | # CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA is not set | ||
578 | # CONFIG_BLK_DEV_IDEDMA is not set | ||
579 | |||
580 | # | ||
581 | # SCSI device support | ||
582 | # | ||
583 | # CONFIG_RAID_ATTRS is not set | ||
584 | # CONFIG_SCSI is not set | ||
585 | # CONFIG_SCSI_DMA is not set | ||
586 | # CONFIG_SCSI_NETLINK is not set | ||
587 | # CONFIG_ATA is not set | ||
588 | # CONFIG_MD is not set | ||
589 | CONFIG_NETDEVICES=y | ||
590 | # CONFIG_DUMMY is not set | ||
591 | # CONFIG_BONDING is not set | ||
592 | # CONFIG_MACVLAN is not set | ||
593 | # CONFIG_EQUALIZER is not set | ||
594 | # CONFIG_TUN is not set | ||
595 | # CONFIG_VETH is not set | ||
596 | # CONFIG_PHYLIB is not set | ||
597 | CONFIG_NET_ETHERNET=y | ||
598 | CONFIG_MII=y | ||
599 | # CONFIG_AX88796 is not set | ||
600 | # CONFIG_MIPS_AU1X00_ENET is not set | ||
601 | CONFIG_SMC91X=y | ||
602 | # CONFIG_DM9000 is not set | ||
603 | # CONFIG_ENC28J60 is not set | ||
604 | # CONFIG_ETHOC is not set | ||
605 | # CONFIG_SMSC911X is not set | ||
606 | # CONFIG_DNET is not set | ||
607 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
608 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
609 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
610 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
611 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
612 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
613 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
614 | # CONFIG_B44 is not set | ||
615 | # CONFIG_KS8842 is not set | ||
616 | # CONFIG_KS8851 is not set | ||
617 | # CONFIG_KS8851_MLL is not set | ||
618 | # CONFIG_NETDEV_1000 is not set | ||
619 | # CONFIG_NETDEV_10000 is not set | ||
620 | # CONFIG_WLAN is not set | ||
621 | |||
622 | # | ||
623 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
624 | # | ||
625 | |||
626 | # | ||
627 | # USB Network Adapters | ||
628 | # | ||
629 | # CONFIG_USB_CATC is not set | ||
630 | # CONFIG_USB_KAWETH is not set | ||
631 | # CONFIG_USB_PEGASUS is not set | ||
632 | # CONFIG_USB_RTL8150 is not set | ||
633 | # CONFIG_USB_USBNET is not set | ||
634 | # CONFIG_NET_PCMCIA is not set | ||
635 | # CONFIG_WAN is not set | ||
636 | # CONFIG_PPP is not set | ||
637 | # CONFIG_SLIP is not set | ||
638 | # CONFIG_NETCONSOLE is not set | ||
639 | # CONFIG_NETPOLL is not set | ||
640 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
641 | # CONFIG_ISDN is not set | ||
642 | # CONFIG_PHONE is not set | ||
643 | |||
644 | # | ||
645 | # Input device support | ||
646 | # | ||
647 | CONFIG_INPUT=y | ||
648 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
649 | # CONFIG_INPUT_POLLDEV is not set | ||
650 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
651 | |||
652 | # | ||
653 | # Userland interfaces | ||
654 | # | ||
655 | # CONFIG_INPUT_MOUSEDEV is not set | ||
656 | # CONFIG_INPUT_JOYDEV is not set | ||
657 | CONFIG_INPUT_EVDEV=y | ||
658 | # CONFIG_INPUT_EVBUG is not set | ||
659 | |||
660 | # | ||
661 | # Input Device Drivers | ||
662 | # | ||
663 | # CONFIG_INPUT_KEYBOARD is not set | ||
664 | # CONFIG_INPUT_MOUSE is not set | ||
665 | # CONFIG_INPUT_JOYSTICK is not set | ||
666 | # CONFIG_INPUT_TABLET is not set | ||
667 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
668 | # CONFIG_INPUT_MISC is not set | ||
669 | |||
670 | # | ||
671 | # Hardware I/O ports | ||
672 | # | ||
673 | # CONFIG_SERIO is not set | ||
674 | # CONFIG_GAMEPORT is not set | ||
675 | |||
676 | # | ||
677 | # Character devices | ||
678 | # | ||
679 | CONFIG_VT=y | ||
680 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
681 | CONFIG_VT_CONSOLE=y | ||
682 | CONFIG_HW_CONSOLE=y | ||
683 | CONFIG_VT_HW_CONSOLE_BINDING=y | ||
684 | CONFIG_DEVKMEM=y | ||
685 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
686 | |||
687 | # | ||
688 | # Serial drivers | ||
689 | # | ||
690 | CONFIG_SERIAL_8250=y | ||
691 | CONFIG_SERIAL_8250_CONSOLE=y | ||
692 | # CONFIG_SERIAL_8250_CS is not set | ||
693 | CONFIG_SERIAL_8250_NR_UARTS=2 | ||
694 | CONFIG_SERIAL_8250_RUNTIME_UARTS=2 | ||
695 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
696 | CONFIG_SERIAL_8250_AU1X00=y | ||
697 | |||
698 | # | ||
699 | # Non-8250 serial port support | ||
700 | # | ||
701 | # CONFIG_SERIAL_MAX3100 is not set | ||
702 | CONFIG_SERIAL_CORE=y | ||
703 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
704 | CONFIG_UNIX98_PTYS=y | ||
705 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
706 | # CONFIG_LEGACY_PTYS is not set | ||
707 | # CONFIG_IPMI_HANDLER is not set | ||
708 | # CONFIG_HW_RANDOM is not set | ||
709 | # CONFIG_R3964 is not set | ||
710 | |||
711 | # | ||
712 | # PCMCIA character devices | ||
713 | # | ||
714 | # CONFIG_SYNCLINK_CS is not set | ||
715 | # CONFIG_CARDMAN_4000 is not set | ||
716 | # CONFIG_CARDMAN_4040 is not set | ||
717 | # CONFIG_IPWIRELESS is not set | ||
718 | # CONFIG_RAW_DRIVER is not set | ||
719 | # CONFIG_TCG_TPM is not set | ||
720 | CONFIG_I2C=y | ||
721 | CONFIG_I2C_BOARDINFO=y | ||
722 | # CONFIG_I2C_COMPAT is not set | ||
723 | CONFIG_I2C_CHARDEV=y | ||
724 | # CONFIG_I2C_HELPER_AUTO is not set | ||
725 | |||
726 | # | ||
727 | # I2C Algorithms | ||
728 | # | ||
729 | # CONFIG_I2C_ALGOBIT is not set | ||
730 | # CONFIG_I2C_ALGOPCF is not set | ||
731 | # CONFIG_I2C_ALGOPCA is not set | ||
732 | |||
733 | # | ||
734 | # I2C Hardware Bus support | ||
735 | # | ||
736 | |||
737 | # | ||
738 | # I2C system bus drivers (mostly embedded / system-on-chip) | ||
739 | # | ||
740 | CONFIG_I2C_AU1550=y | ||
741 | # CONFIG_I2C_GPIO is not set | ||
742 | # CONFIG_I2C_OCORES is not set | ||
743 | # CONFIG_I2C_SIMTEC is not set | ||
744 | |||
745 | # | ||
746 | # External I2C/SMBus adapter drivers | ||
747 | # | ||
748 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
749 | # CONFIG_I2C_TAOS_EVM is not set | ||
750 | # CONFIG_I2C_TINY_USB is not set | ||
751 | |||
752 | # | ||
753 | # Other I2C/SMBus bus drivers | ||
754 | # | ||
755 | # CONFIG_I2C_PCA_PLATFORM is not set | ||
756 | # CONFIG_I2C_STUB is not set | ||
757 | |||
758 | # | ||
759 | # Miscellaneous I2C Chip support | ||
760 | # | ||
761 | # CONFIG_SENSORS_TSL2550 is not set | ||
762 | # CONFIG_I2C_DEBUG_CORE is not set | ||
763 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
764 | # CONFIG_I2C_DEBUG_BUS is not set | ||
765 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
766 | CONFIG_SPI=y | ||
767 | # CONFIG_SPI_DEBUG is not set | ||
768 | CONFIG_SPI_MASTER=y | ||
769 | |||
770 | # | ||
771 | # SPI Master Controller Drivers | ||
772 | # | ||
773 | CONFIG_SPI_AU1550=y | ||
774 | CONFIG_SPI_BITBANG=y | ||
775 | # CONFIG_SPI_GPIO is not set | ||
776 | # CONFIG_SPI_XILINX is not set | ||
777 | # CONFIG_SPI_DESIGNWARE is not set | ||
778 | |||
779 | # | ||
780 | # SPI Protocol Masters | ||
781 | # | ||
782 | # CONFIG_SPI_SPIDEV is not set | ||
783 | # CONFIG_SPI_TLE62X0 is not set | ||
784 | |||
785 | # | ||
786 | # PPS support | ||
787 | # | ||
788 | # CONFIG_PPS is not set | ||
789 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
790 | CONFIG_GPIOLIB=y | ||
791 | # CONFIG_DEBUG_GPIO is not set | ||
792 | CONFIG_GPIO_SYSFS=y | ||
793 | |||
794 | # | ||
795 | # Memory mapped GPIO expanders: | ||
796 | # | ||
797 | |||
798 | # | ||
799 | # I2C GPIO expanders: | ||
800 | # | ||
801 | # CONFIG_GPIO_MAX732X is not set | ||
802 | # CONFIG_GPIO_PCA953X is not set | ||
803 | # CONFIG_GPIO_PCF857X is not set | ||
804 | # CONFIG_GPIO_ADP5588 is not set | ||
805 | |||
806 | # | ||
807 | # PCI GPIO expanders: | ||
808 | # | ||
809 | |||
810 | # | ||
811 | # SPI GPIO expanders: | ||
812 | # | ||
813 | # CONFIG_GPIO_MAX7301 is not set | ||
814 | # CONFIG_GPIO_MCP23S08 is not set | ||
815 | # CONFIG_GPIO_MC33880 is not set | ||
816 | |||
817 | # | ||
818 | # AC97 GPIO expanders: | ||
819 | # | ||
820 | # CONFIG_W1 is not set | ||
821 | # CONFIG_POWER_SUPPLY is not set | ||
822 | CONFIG_HWMON=y | ||
823 | CONFIG_HWMON_VID=y | ||
824 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
825 | |||
826 | # | ||
827 | # Native drivers | ||
828 | # | ||
829 | # CONFIG_SENSORS_AD7414 is not set | ||
830 | # CONFIG_SENSORS_AD7418 is not set | ||
831 | # CONFIG_SENSORS_ADCXX is not set | ||
832 | # CONFIG_SENSORS_ADM1021 is not set | ||
833 | CONFIG_SENSORS_ADM1025=y | ||
834 | # CONFIG_SENSORS_ADM1026 is not set | ||
835 | # CONFIG_SENSORS_ADM1029 is not set | ||
836 | # CONFIG_SENSORS_ADM1031 is not set | ||
837 | # CONFIG_SENSORS_ADM9240 is not set | ||
838 | # CONFIG_SENSORS_ADT7462 is not set | ||
839 | # CONFIG_SENSORS_ADT7470 is not set | ||
840 | # CONFIG_SENSORS_ADT7473 is not set | ||
841 | # CONFIG_SENSORS_ADT7475 is not set | ||
842 | # CONFIG_SENSORS_ATXP1 is not set | ||
843 | # CONFIG_SENSORS_DS1621 is not set | ||
844 | # CONFIG_SENSORS_F71805F is not set | ||
845 | # CONFIG_SENSORS_F71882FG is not set | ||
846 | # CONFIG_SENSORS_F75375S is not set | ||
847 | # CONFIG_SENSORS_G760A is not set | ||
848 | # CONFIG_SENSORS_GL518SM is not set | ||
849 | # CONFIG_SENSORS_GL520SM is not set | ||
850 | # CONFIG_SENSORS_IT87 is not set | ||
851 | # CONFIG_SENSORS_LM63 is not set | ||
852 | CONFIG_SENSORS_LM70=y | ||
853 | # CONFIG_SENSORS_LM73 is not set | ||
854 | # CONFIG_SENSORS_LM75 is not set | ||
855 | # CONFIG_SENSORS_LM77 is not set | ||
856 | # CONFIG_SENSORS_LM78 is not set | ||
857 | # CONFIG_SENSORS_LM80 is not set | ||
858 | # CONFIG_SENSORS_LM83 is not set | ||
859 | # CONFIG_SENSORS_LM85 is not set | ||
860 | # CONFIG_SENSORS_LM87 is not set | ||
861 | # CONFIG_SENSORS_LM90 is not set | ||
862 | # CONFIG_SENSORS_LM92 is not set | ||
863 | # CONFIG_SENSORS_LM93 is not set | ||
864 | # CONFIG_SENSORS_LTC4215 is not set | ||
865 | # CONFIG_SENSORS_LTC4245 is not set | ||
866 | # CONFIG_SENSORS_LM95241 is not set | ||
867 | # CONFIG_SENSORS_MAX1111 is not set | ||
868 | # CONFIG_SENSORS_MAX1619 is not set | ||
869 | # CONFIG_SENSORS_MAX6650 is not set | ||
870 | # CONFIG_SENSORS_PC87360 is not set | ||
871 | # CONFIG_SENSORS_PC87427 is not set | ||
872 | # CONFIG_SENSORS_PCF8591 is not set | ||
873 | # CONFIG_SENSORS_SHT15 is not set | ||
874 | # CONFIG_SENSORS_DME1737 is not set | ||
875 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
876 | # CONFIG_SENSORS_SMSC47M192 is not set | ||
877 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
878 | # CONFIG_SENSORS_ADS7828 is not set | ||
879 | # CONFIG_SENSORS_AMC6821 is not set | ||
880 | # CONFIG_SENSORS_THMC50 is not set | ||
881 | # CONFIG_SENSORS_TMP401 is not set | ||
882 | # CONFIG_SENSORS_TMP421 is not set | ||
883 | # CONFIG_SENSORS_VT1211 is not set | ||
884 | # CONFIG_SENSORS_W83781D is not set | ||
885 | # CONFIG_SENSORS_W83791D is not set | ||
886 | # CONFIG_SENSORS_W83792D is not set | ||
887 | # CONFIG_SENSORS_W83793 is not set | ||
888 | # CONFIG_SENSORS_W83L785TS is not set | ||
889 | # CONFIG_SENSORS_W83L786NG is not set | ||
890 | # CONFIG_SENSORS_W83627HF is not set | ||
891 | # CONFIG_SENSORS_W83627EHF is not set | ||
892 | # CONFIG_SENSORS_LIS3_SPI is not set | ||
893 | # CONFIG_SENSORS_LIS3_I2C is not set | ||
894 | # CONFIG_THERMAL is not set | ||
895 | # CONFIG_WATCHDOG is not set | ||
896 | CONFIG_SSB_POSSIBLE=y | ||
897 | |||
898 | # | ||
899 | # Sonics Silicon Backplane | ||
900 | # | ||
901 | # CONFIG_SSB is not set | ||
902 | |||
903 | # | ||
904 | # Multifunction device drivers | ||
905 | # | ||
906 | # CONFIG_MFD_CORE is not set | ||
907 | # CONFIG_MFD_SM501 is not set | ||
908 | # CONFIG_HTC_PASIC3 is not set | ||
909 | # CONFIG_UCB1400_CORE is not set | ||
910 | # CONFIG_TPS65010 is not set | ||
911 | # CONFIG_TWL4030_CORE is not set | ||
912 | # CONFIG_MFD_TMIO is not set | ||
913 | # CONFIG_PMIC_DA903X is not set | ||
914 | # CONFIG_PMIC_ADP5520 is not set | ||
915 | # CONFIG_MFD_WM8400 is not set | ||
916 | # CONFIG_MFD_WM831X is not set | ||
917 | # CONFIG_MFD_WM8350_I2C is not set | ||
918 | # CONFIG_MFD_PCF50633 is not set | ||
919 | # CONFIG_MFD_MC13783 is not set | ||
920 | # CONFIG_AB3100_CORE is not set | ||
921 | # CONFIG_EZX_PCAP is not set | ||
922 | # CONFIG_MFD_88PM8607 is not set | ||
923 | # CONFIG_AB4500_CORE is not set | ||
924 | # CONFIG_REGULATOR is not set | ||
925 | # CONFIG_MEDIA_SUPPORT is not set | ||
926 | |||
927 | # | ||
928 | # Graphics support | ||
929 | # | ||
930 | # CONFIG_VGASTATE is not set | ||
931 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
932 | CONFIG_FB=y | ||
933 | # CONFIG_FIRMWARE_EDID is not set | ||
934 | # CONFIG_FB_DDC is not set | ||
935 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
936 | CONFIG_FB_CFB_FILLRECT=y | ||
937 | CONFIG_FB_CFB_COPYAREA=y | ||
938 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
939 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
940 | # CONFIG_FB_SYS_FILLRECT is not set | ||
941 | # CONFIG_FB_SYS_COPYAREA is not set | ||
942 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
943 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
944 | # CONFIG_FB_SYS_FOPS is not set | ||
945 | # CONFIG_FB_SVGALIB is not set | ||
946 | # CONFIG_FB_MACMODES is not set | ||
947 | # CONFIG_FB_BACKLIGHT is not set | ||
948 | # CONFIG_FB_MODE_HELPERS is not set | ||
949 | # CONFIG_FB_TILEBLITTING is not set | ||
950 | |||
951 | # | ||
952 | # Frame buffer hardware drivers | ||
953 | # | ||
954 | # CONFIG_FB_S1D13XXX is not set | ||
955 | CONFIG_FB_AU1200=y | ||
956 | # CONFIG_FB_VIRTUAL is not set | ||
957 | # CONFIG_FB_METRONOME is not set | ||
958 | # CONFIG_FB_MB862XX is not set | ||
959 | # CONFIG_FB_BROADSHEET is not set | ||
960 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
961 | |||
962 | # | ||
963 | # Display device support | ||
964 | # | ||
965 | # CONFIG_DISPLAY_SUPPORT is not set | ||
966 | |||
967 | # | ||
968 | # Console display driver support | ||
969 | # | ||
970 | # CONFIG_VGA_CONSOLE is not set | ||
971 | CONFIG_DUMMY_CONSOLE=y | ||
972 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
973 | # CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set | ||
974 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
975 | CONFIG_FONTS=y | ||
976 | # CONFIG_FONT_8x8 is not set | ||
977 | CONFIG_FONT_8x16=y | ||
978 | # CONFIG_FONT_6x11 is not set | ||
979 | # CONFIG_FONT_7x14 is not set | ||
980 | # CONFIG_FONT_PEARL_8x8 is not set | ||
981 | # CONFIG_FONT_ACORN_8x8 is not set | ||
982 | # CONFIG_FONT_MINI_4x6 is not set | ||
983 | # CONFIG_FONT_SUN8x16 is not set | ||
984 | # CONFIG_FONT_SUN12x22 is not set | ||
985 | # CONFIG_FONT_10x18 is not set | ||
986 | # CONFIG_LOGO is not set | ||
987 | CONFIG_SOUND=y | ||
988 | # CONFIG_SOUND_OSS_CORE is not set | ||
989 | CONFIG_SND=y | ||
990 | CONFIG_SND_TIMER=y | ||
991 | CONFIG_SND_PCM=y | ||
992 | CONFIG_SND_JACK=y | ||
993 | # CONFIG_SND_SEQUENCER is not set | ||
994 | # CONFIG_SND_MIXER_OSS is not set | ||
995 | # CONFIG_SND_PCM_OSS is not set | ||
996 | # CONFIG_SND_HRTIMER is not set | ||
997 | CONFIG_SND_DYNAMIC_MINORS=y | ||
998 | # CONFIG_SND_SUPPORT_OLD_API is not set | ||
999 | # CONFIG_SND_VERBOSE_PROCFS is not set | ||
1000 | # CONFIG_SND_VERBOSE_PRINTK is not set | ||
1001 | # CONFIG_SND_DEBUG is not set | ||
1002 | CONFIG_SND_VMASTER=y | ||
1003 | # CONFIG_SND_RAWMIDI_SEQ is not set | ||
1004 | # CONFIG_SND_OPL3_LIB_SEQ is not set | ||
1005 | # CONFIG_SND_OPL4_LIB_SEQ is not set | ||
1006 | # CONFIG_SND_SBAWE_SEQ is not set | ||
1007 | # CONFIG_SND_EMU10K1_SEQ is not set | ||
1008 | CONFIG_SND_AC97_CODEC=y | ||
1009 | # CONFIG_SND_DRIVERS is not set | ||
1010 | # CONFIG_SND_SPI is not set | ||
1011 | # CONFIG_SND_MIPS is not set | ||
1012 | # CONFIG_SND_USB is not set | ||
1013 | # CONFIG_SND_PCMCIA is not set | ||
1014 | CONFIG_SND_SOC=y | ||
1015 | CONFIG_SND_SOC_AC97_BUS=y | ||
1016 | CONFIG_SND_SOC_AU1XPSC=y | ||
1017 | CONFIG_SND_SOC_AU1XPSC_I2S=y | ||
1018 | CONFIG_SND_SOC_AU1XPSC_AC97=y | ||
1019 | CONFIG_SND_SOC_DB1200=y | ||
1020 | CONFIG_SND_SOC_I2C_AND_SPI=y | ||
1021 | # CONFIG_SND_SOC_ALL_CODECS is not set | ||
1022 | CONFIG_SND_SOC_AC97_CODEC=y | ||
1023 | CONFIG_SND_SOC_WM8731=y | ||
1024 | # CONFIG_SOUND_PRIME is not set | ||
1025 | CONFIG_AC97_BUS=y | ||
1026 | CONFIG_HID_SUPPORT=y | ||
1027 | CONFIG_HID=y | ||
1028 | CONFIG_HIDRAW=y | ||
1029 | |||
1030 | # | ||
1031 | # USB Input Devices | ||
1032 | # | ||
1033 | CONFIG_USB_HID=y | ||
1034 | # CONFIG_HID_PID is not set | ||
1035 | CONFIG_USB_HIDDEV=y | ||
1036 | |||
1037 | # | ||
1038 | # Special HID drivers | ||
1039 | # | ||
1040 | # CONFIG_HID_A4TECH is not set | ||
1041 | # CONFIG_HID_APPLE is not set | ||
1042 | # CONFIG_HID_BELKIN is not set | ||
1043 | # CONFIG_HID_CHERRY is not set | ||
1044 | # CONFIG_HID_CHICONY is not set | ||
1045 | # CONFIG_HID_CYPRESS is not set | ||
1046 | # CONFIG_HID_DRAGONRISE is not set | ||
1047 | # CONFIG_HID_EZKEY is not set | ||
1048 | # CONFIG_HID_KYE is not set | ||
1049 | # CONFIG_HID_GYRATION is not set | ||
1050 | # CONFIG_HID_TWINHAN is not set | ||
1051 | # CONFIG_HID_KENSINGTON is not set | ||
1052 | # CONFIG_HID_LOGITECH is not set | ||
1053 | # CONFIG_HID_MICROSOFT is not set | ||
1054 | # CONFIG_HID_MONTEREY is not set | ||
1055 | # CONFIG_HID_NTRIG is not set | ||
1056 | # CONFIG_HID_PANTHERLORD is not set | ||
1057 | # CONFIG_HID_PETALYNX is not set | ||
1058 | # CONFIG_HID_SAMSUNG is not set | ||
1059 | # CONFIG_HID_SONY is not set | ||
1060 | # CONFIG_HID_SUNPLUS is not set | ||
1061 | # CONFIG_HID_GREENASIA is not set | ||
1062 | # CONFIG_HID_SMARTJOYPLUS is not set | ||
1063 | # CONFIG_HID_TOPSEED is not set | ||
1064 | # CONFIG_HID_THRUSTMASTER is not set | ||
1065 | # CONFIG_HID_ZEROPLUS is not set | ||
1066 | CONFIG_USB_SUPPORT=y | ||
1067 | CONFIG_USB_ARCH_HAS_HCD=y | ||
1068 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
1069 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
1070 | CONFIG_USB=y | ||
1071 | CONFIG_USB_DEBUG=y | ||
1072 | CONFIG_USB_ANNOUNCE_NEW_DEVICES=y | ||
1073 | |||
1074 | # | ||
1075 | # Miscellaneous USB options | ||
1076 | # | ||
1077 | # CONFIG_USB_DEVICEFS is not set | ||
1078 | # CONFIG_USB_DEVICE_CLASS is not set | ||
1079 | CONFIG_USB_DYNAMIC_MINORS=y | ||
1080 | # CONFIG_USB_OTG is not set | ||
1081 | # CONFIG_USB_OTG_WHITELIST is not set | ||
1082 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1083 | # CONFIG_USB_MON is not set | ||
1084 | # CONFIG_USB_WUSB is not set | ||
1085 | # CONFIG_USB_WUSB_CBAF is not set | ||
1086 | |||
1087 | # | ||
1088 | # USB Host Controller Drivers | ||
1089 | # | ||
1090 | # CONFIG_USB_C67X00_HCD is not set | ||
1091 | CONFIG_USB_EHCI_HCD=y | ||
1092 | CONFIG_USB_EHCI_ROOT_HUB_TT=y | ||
1093 | CONFIG_USB_EHCI_TT_NEWSCHED=y | ||
1094 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1095 | # CONFIG_USB_ISP116X_HCD is not set | ||
1096 | # CONFIG_USB_ISP1760_HCD is not set | ||
1097 | # CONFIG_USB_ISP1362_HCD is not set | ||
1098 | CONFIG_USB_OHCI_HCD=y | ||
1099 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
1100 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
1101 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
1102 | # CONFIG_USB_SL811_HCD is not set | ||
1103 | # CONFIG_USB_R8A66597_HCD is not set | ||
1104 | # CONFIG_USB_HWA_HCD is not set | ||
1105 | |||
1106 | # | ||
1107 | # USB Device Class drivers | ||
1108 | # | ||
1109 | # CONFIG_USB_ACM is not set | ||
1110 | # CONFIG_USB_PRINTER is not set | ||
1111 | # CONFIG_USB_WDM is not set | ||
1112 | # CONFIG_USB_TMC is not set | ||
1113 | |||
1114 | # | ||
1115 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may | ||
1116 | # | ||
1117 | |||
1118 | # | ||
1119 | # also be needed; see USB_STORAGE Help for more info | ||
1120 | # | ||
1121 | # CONFIG_USB_LIBUSUAL is not set | ||
1122 | |||
1123 | # | ||
1124 | # USB Imaging devices | ||
1125 | # | ||
1126 | # CONFIG_USB_MDC800 is not set | ||
1127 | |||
1128 | # | ||
1129 | # USB port drivers | ||
1130 | # | ||
1131 | # CONFIG_USB_SERIAL is not set | ||
1132 | |||
1133 | # | ||
1134 | # USB Miscellaneous drivers | ||
1135 | # | ||
1136 | # CONFIG_USB_EMI62 is not set | ||
1137 | # CONFIG_USB_EMI26 is not set | ||
1138 | # CONFIG_USB_ADUTUX is not set | ||
1139 | # CONFIG_USB_SEVSEG is not set | ||
1140 | # CONFIG_USB_RIO500 is not set | ||
1141 | # CONFIG_USB_LEGOTOWER is not set | ||
1142 | # CONFIG_USB_LCD is not set | ||
1143 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1144 | # CONFIG_USB_LED is not set | ||
1145 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1146 | # CONFIG_USB_CYTHERM is not set | ||
1147 | # CONFIG_USB_IDMOUSE is not set | ||
1148 | # CONFIG_USB_FTDI_ELAN is not set | ||
1149 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1150 | # CONFIG_USB_SISUSBVGA is not set | ||
1151 | # CONFIG_USB_LD is not set | ||
1152 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1153 | # CONFIG_USB_IOWARRIOR is not set | ||
1154 | # CONFIG_USB_TEST is not set | ||
1155 | # CONFIG_USB_ISIGHTFW is not set | ||
1156 | # CONFIG_USB_VST is not set | ||
1157 | # CONFIG_USB_GADGET is not set | ||
1158 | |||
1159 | # | ||
1160 | # OTG and related infrastructure | ||
1161 | # | ||
1162 | # CONFIG_USB_GPIO_VBUS is not set | ||
1163 | # CONFIG_NOP_USB_XCEIV is not set | ||
1164 | CONFIG_MMC=y | ||
1165 | # CONFIG_MMC_DEBUG is not set | ||
1166 | # CONFIG_MMC_UNSAFE_RESUME is not set | ||
1167 | |||
1168 | # | ||
1169 | # MMC/SD/SDIO Card Drivers | ||
1170 | # | ||
1171 | CONFIG_MMC_BLOCK=y | ||
1172 | # CONFIG_MMC_BLOCK_BOUNCE is not set | ||
1173 | # CONFIG_SDIO_UART is not set | ||
1174 | # CONFIG_MMC_TEST is not set | ||
1175 | |||
1176 | # | ||
1177 | # MMC/SD/SDIO Host Controller Drivers | ||
1178 | # | ||
1179 | # CONFIG_MMC_SDHCI is not set | ||
1180 | CONFIG_MMC_AU1X=y | ||
1181 | # CONFIG_MMC_AT91 is not set | ||
1182 | # CONFIG_MMC_ATMELMCI is not set | ||
1183 | # CONFIG_MMC_SPI is not set | ||
1184 | # CONFIG_MEMSTICK is not set | ||
1185 | CONFIG_NEW_LEDS=y | ||
1186 | CONFIG_LEDS_CLASS=y | ||
1187 | |||
1188 | # | ||
1189 | # LED drivers | ||
1190 | # | ||
1191 | # CONFIG_LEDS_PCA9532 is not set | ||
1192 | # CONFIG_LEDS_GPIO is not set | ||
1193 | # CONFIG_LEDS_LP3944 is not set | ||
1194 | # CONFIG_LEDS_PCA955X is not set | ||
1195 | # CONFIG_LEDS_DAC124S085 is not set | ||
1196 | # CONFIG_LEDS_BD2802 is not set | ||
1197 | # CONFIG_LEDS_LT3593 is not set | ||
1198 | |||
1199 | # | ||
1200 | # LED Triggers | ||
1201 | # | ||
1202 | CONFIG_LEDS_TRIGGERS=y | ||
1203 | # CONFIG_LEDS_TRIGGER_TIMER is not set | ||
1204 | # CONFIG_LEDS_TRIGGER_IDE_DISK is not set | ||
1205 | # CONFIG_LEDS_TRIGGER_HEARTBEAT is not set | ||
1206 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set | ||
1207 | # CONFIG_LEDS_TRIGGER_GPIO is not set | ||
1208 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set | ||
1209 | |||
1210 | # | ||
1211 | # iptables trigger is under Netfilter config (LED target) | ||
1212 | # | ||
1213 | # CONFIG_ACCESSIBILITY is not set | ||
1214 | CONFIG_RTC_LIB=y | ||
1215 | CONFIG_RTC_CLASS=y | ||
1216 | CONFIG_RTC_HCTOSYS=y | ||
1217 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1218 | # CONFIG_RTC_DEBUG is not set | ||
1219 | |||
1220 | # | ||
1221 | # RTC interfaces | ||
1222 | # | ||
1223 | CONFIG_RTC_INTF_SYSFS=y | ||
1224 | CONFIG_RTC_INTF_PROC=y | ||
1225 | CONFIG_RTC_INTF_DEV=y | ||
1226 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1227 | # CONFIG_RTC_DRV_TEST is not set | ||
1228 | |||
1229 | # | ||
1230 | # I2C RTC drivers | ||
1231 | # | ||
1232 | # CONFIG_RTC_DRV_DS1307 is not set | ||
1233 | # CONFIG_RTC_DRV_DS1374 is not set | ||
1234 | # CONFIG_RTC_DRV_DS1672 is not set | ||
1235 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
1236 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
1237 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
1238 | # CONFIG_RTC_DRV_X1205 is not set | ||
1239 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
1240 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
1241 | # CONFIG_RTC_DRV_M41T80 is not set | ||
1242 | # CONFIG_RTC_DRV_BQ32K is not set | ||
1243 | # CONFIG_RTC_DRV_S35390A is not set | ||
1244 | # CONFIG_RTC_DRV_FM3130 is not set | ||
1245 | # CONFIG_RTC_DRV_RX8581 is not set | ||
1246 | # CONFIG_RTC_DRV_RX8025 is not set | ||
1247 | |||
1248 | # | ||
1249 | # SPI RTC drivers | ||
1250 | # | ||
1251 | # CONFIG_RTC_DRV_M41T94 is not set | ||
1252 | # CONFIG_RTC_DRV_DS1305 is not set | ||
1253 | # CONFIG_RTC_DRV_DS1390 is not set | ||
1254 | # CONFIG_RTC_DRV_MAX6902 is not set | ||
1255 | # CONFIG_RTC_DRV_R9701 is not set | ||
1256 | # CONFIG_RTC_DRV_RS5C348 is not set | ||
1257 | # CONFIG_RTC_DRV_DS3234 is not set | ||
1258 | # CONFIG_RTC_DRV_PCF2123 is not set | ||
1259 | |||
1260 | # | ||
1261 | # Platform RTC drivers | ||
1262 | # | ||
1263 | # CONFIG_RTC_DRV_CMOS is not set | ||
1264 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1265 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1266 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1267 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1268 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1269 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1270 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1271 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1272 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
1273 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1274 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
1275 | # CONFIG_RTC_DRV_V3020 is not set | ||
1276 | |||
1277 | # | ||
1278 | # on-CPU RTC drivers | ||
1279 | # | ||
1280 | CONFIG_RTC_DRV_AU1XXX=y | ||
1281 | # CONFIG_DMADEVICES is not set | ||
1282 | # CONFIG_AUXDISPLAY is not set | ||
1283 | # CONFIG_UIO is not set | ||
1284 | |||
1285 | # | ||
1286 | # TI VLYNQ | ||
1287 | # | ||
1288 | # CONFIG_STAGING is not set | ||
1289 | |||
1290 | # | ||
1291 | # File systems | ||
1292 | # | ||
1293 | CONFIG_EXT2_FS=y | ||
1294 | # CONFIG_EXT2_FS_XATTR is not set | ||
1295 | # CONFIG_EXT2_FS_XIP is not set | ||
1296 | # CONFIG_EXT3_FS is not set | ||
1297 | # CONFIG_EXT4_FS is not set | ||
1298 | # CONFIG_REISERFS_FS is not set | ||
1299 | # CONFIG_JFS_FS is not set | ||
1300 | # CONFIG_FS_POSIX_ACL is not set | ||
1301 | # CONFIG_XFS_FS is not set | ||
1302 | # CONFIG_OCFS2_FS is not set | ||
1303 | # CONFIG_BTRFS_FS is not set | ||
1304 | # CONFIG_NILFS2_FS is not set | ||
1305 | CONFIG_FILE_LOCKING=y | ||
1306 | CONFIG_FSNOTIFY=y | ||
1307 | CONFIG_DNOTIFY=y | ||
1308 | CONFIG_INOTIFY=y | ||
1309 | CONFIG_INOTIFY_USER=y | ||
1310 | # CONFIG_QUOTA is not set | ||
1311 | # CONFIG_AUTOFS_FS is not set | ||
1312 | # CONFIG_AUTOFS4_FS is not set | ||
1313 | # CONFIG_FUSE_FS is not set | ||
1314 | |||
1315 | # | ||
1316 | # Caches | ||
1317 | # | ||
1318 | # CONFIG_FSCACHE is not set | ||
1319 | |||
1320 | # | ||
1321 | # CD-ROM/DVD Filesystems | ||
1322 | # | ||
1323 | CONFIG_ISO9660_FS=y | ||
1324 | CONFIG_JOLIET=y | ||
1325 | CONFIG_ZISOFS=y | ||
1326 | CONFIG_UDF_FS=y | ||
1327 | CONFIG_UDF_NLS=y | ||
1328 | |||
1329 | # | ||
1330 | # DOS/FAT/NT Filesystems | ||
1331 | # | ||
1332 | CONFIG_FAT_FS=y | ||
1333 | # CONFIG_MSDOS_FS is not set | ||
1334 | CONFIG_VFAT_FS=y | ||
1335 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
1336 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
1337 | # CONFIG_NTFS_FS is not set | ||
1338 | |||
1339 | # | ||
1340 | # Pseudo filesystems | ||
1341 | # | ||
1342 | CONFIG_PROC_FS=y | ||
1343 | # CONFIG_PROC_KCORE is not set | ||
1344 | CONFIG_PROC_SYSCTL=y | ||
1345 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
1346 | CONFIG_SYSFS=y | ||
1347 | CONFIG_TMPFS=y | ||
1348 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
1349 | # CONFIG_HUGETLB_PAGE is not set | ||
1350 | # CONFIG_CONFIGFS_FS is not set | ||
1351 | CONFIG_MISC_FILESYSTEMS=y | ||
1352 | # CONFIG_ADFS_FS is not set | ||
1353 | # CONFIG_AFFS_FS is not set | ||
1354 | # CONFIG_HFS_FS is not set | ||
1355 | # CONFIG_HFSPLUS_FS is not set | ||
1356 | # CONFIG_BEFS_FS is not set | ||
1357 | # CONFIG_BFS_FS is not set | ||
1358 | # CONFIG_EFS_FS is not set | ||
1359 | CONFIG_JFFS2_FS=y | ||
1360 | CONFIG_JFFS2_FS_DEBUG=0 | ||
1361 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1362 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1363 | CONFIG_JFFS2_SUMMARY=y | ||
1364 | # CONFIG_JFFS2_FS_XATTR is not set | ||
1365 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1366 | CONFIG_JFFS2_ZLIB=y | ||
1367 | CONFIG_JFFS2_LZO=y | ||
1368 | CONFIG_JFFS2_RTIME=y | ||
1369 | CONFIG_JFFS2_RUBIN=y | ||
1370 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1371 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1372 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1373 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1374 | # CONFIG_CRAMFS is not set | ||
1375 | CONFIG_SQUASHFS=y | ||
1376 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1377 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
1378 | # CONFIG_VXFS_FS is not set | ||
1379 | # CONFIG_MINIX_FS is not set | ||
1380 | # CONFIG_OMFS_FS is not set | ||
1381 | # CONFIG_HPFS_FS is not set | ||
1382 | # CONFIG_QNX4FS_FS is not set | ||
1383 | # CONFIG_ROMFS_FS is not set | ||
1384 | # CONFIG_SYSV_FS is not set | ||
1385 | # CONFIG_UFS_FS is not set | ||
1386 | CONFIG_NETWORK_FILESYSTEMS=y | ||
1387 | CONFIG_NFS_FS=y | ||
1388 | CONFIG_NFS_V3=y | ||
1389 | # CONFIG_NFS_V3_ACL is not set | ||
1390 | # CONFIG_NFS_V4 is not set | ||
1391 | CONFIG_ROOT_NFS=y | ||
1392 | # CONFIG_NFSD is not set | ||
1393 | CONFIG_LOCKD=y | ||
1394 | CONFIG_LOCKD_V4=y | ||
1395 | CONFIG_NFS_COMMON=y | ||
1396 | CONFIG_SUNRPC=y | ||
1397 | # CONFIG_RPCSEC_GSS_KRB5 is not set | ||
1398 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
1399 | # CONFIG_SMB_FS is not set | ||
1400 | # CONFIG_CIFS is not set | ||
1401 | # CONFIG_NCP_FS is not set | ||
1402 | # CONFIG_CODA_FS is not set | ||
1403 | # CONFIG_AFS_FS is not set | ||
1404 | |||
1405 | # | ||
1406 | # Partition Types | ||
1407 | # | ||
1408 | CONFIG_PARTITION_ADVANCED=y | ||
1409 | # CONFIG_ACORN_PARTITION is not set | ||
1410 | # CONFIG_OSF_PARTITION is not set | ||
1411 | # CONFIG_AMIGA_PARTITION is not set | ||
1412 | # CONFIG_ATARI_PARTITION is not set | ||
1413 | # CONFIG_MAC_PARTITION is not set | ||
1414 | CONFIG_MSDOS_PARTITION=y | ||
1415 | # CONFIG_BSD_DISKLABEL is not set | ||
1416 | # CONFIG_MINIX_SUBPARTITION is not set | ||
1417 | # CONFIG_SOLARIS_X86_PARTITION is not set | ||
1418 | # CONFIG_UNIXWARE_DISKLABEL is not set | ||
1419 | # CONFIG_LDM_PARTITION is not set | ||
1420 | # CONFIG_SGI_PARTITION is not set | ||
1421 | # CONFIG_ULTRIX_PARTITION is not set | ||
1422 | # CONFIG_SUN_PARTITION is not set | ||
1423 | # CONFIG_KARMA_PARTITION is not set | ||
1424 | CONFIG_EFI_PARTITION=y | ||
1425 | # CONFIG_SYSV68_PARTITION is not set | ||
1426 | CONFIG_NLS=y | ||
1427 | CONFIG_NLS_DEFAULT="iso8859-1" | ||
1428 | CONFIG_NLS_CODEPAGE_437=y | ||
1429 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
1430 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
1431 | CONFIG_NLS_CODEPAGE_850=y | ||
1432 | CONFIG_NLS_CODEPAGE_852=y | ||
1433 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
1434 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
1435 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
1436 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
1437 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
1438 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
1439 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
1440 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
1441 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
1442 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
1443 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
1444 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
1445 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
1446 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
1447 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
1448 | # CONFIG_NLS_ISO8859_8 is not set | ||
1449 | CONFIG_NLS_CODEPAGE_1250=y | ||
1450 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
1451 | CONFIG_NLS_ASCII=y | ||
1452 | CONFIG_NLS_ISO8859_1=y | ||
1453 | CONFIG_NLS_ISO8859_2=y | ||
1454 | # CONFIG_NLS_ISO8859_3 is not set | ||
1455 | # CONFIG_NLS_ISO8859_4 is not set | ||
1456 | # CONFIG_NLS_ISO8859_5 is not set | ||
1457 | # CONFIG_NLS_ISO8859_6 is not set | ||
1458 | # CONFIG_NLS_ISO8859_7 is not set | ||
1459 | # CONFIG_NLS_ISO8859_9 is not set | ||
1460 | # CONFIG_NLS_ISO8859_13 is not set | ||
1461 | # CONFIG_NLS_ISO8859_14 is not set | ||
1462 | CONFIG_NLS_ISO8859_15=y | ||
1463 | # CONFIG_NLS_KOI8_R is not set | ||
1464 | # CONFIG_NLS_KOI8_U is not set | ||
1465 | CONFIG_NLS_UTF8=y | ||
1466 | # CONFIG_DLM is not set | ||
1467 | |||
1468 | # | ||
1469 | # Kernel hacking | ||
1470 | # | ||
1471 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
1472 | # CONFIG_PRINTK_TIME is not set | ||
1473 | # CONFIG_ENABLE_WARN_DEPRECATED is not set | ||
1474 | # CONFIG_ENABLE_MUST_CHECK is not set | ||
1475 | CONFIG_FRAME_WARN=1024 | ||
1476 | CONFIG_MAGIC_SYSRQ=y | ||
1477 | CONFIG_STRIP_ASM_SYMS=y | ||
1478 | # CONFIG_UNUSED_SYMBOLS is not set | ||
1479 | # CONFIG_DEBUG_FS is not set | ||
1480 | # CONFIG_HEADERS_CHECK is not set | ||
1481 | CONFIG_DEBUG_KERNEL=y | ||
1482 | # CONFIG_DEBUG_SHIRQ is not set | ||
1483 | # CONFIG_DETECT_SOFTLOCKUP is not set | ||
1484 | # CONFIG_DETECT_HUNG_TASK is not set | ||
1485 | # CONFIG_SCHED_DEBUG is not set | ||
1486 | # CONFIG_SCHEDSTATS is not set | ||
1487 | # CONFIG_TIMER_STATS is not set | ||
1488 | # CONFIG_DEBUG_OBJECTS is not set | ||
1489 | # CONFIG_DEBUG_SLAB is not set | ||
1490 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1491 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1492 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1493 | # CONFIG_DEBUG_MUTEXES is not set | ||
1494 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1495 | # CONFIG_PROVE_LOCKING is not set | ||
1496 | # CONFIG_LOCK_STAT is not set | ||
1497 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1498 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1499 | # CONFIG_DEBUG_KOBJECT is not set | ||
1500 | # CONFIG_DEBUG_INFO is not set | ||
1501 | # CONFIG_DEBUG_VM is not set | ||
1502 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1503 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1504 | # CONFIG_DEBUG_LIST is not set | ||
1505 | # CONFIG_DEBUG_SG is not set | ||
1506 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1507 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1508 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1509 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1510 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1511 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1512 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1513 | # CONFIG_FAULT_INJECTION is not set | ||
1514 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1515 | # CONFIG_PAGE_POISONING is not set | ||
1516 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1517 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1518 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1519 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1520 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1521 | CONFIG_TRACING_SUPPORT=y | ||
1522 | # CONFIG_FTRACE is not set | ||
1523 | # CONFIG_SAMPLES is not set | ||
1524 | CONFIG_HAVE_ARCH_KGDB=y | ||
1525 | # CONFIG_KGDB is not set | ||
1526 | CONFIG_EARLY_PRINTK=y | ||
1527 | CONFIG_CMDLINE_BOOL=y | ||
1528 | CONFIG_CMDLINE="console=ttyS0,115200" | ||
1529 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1530 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1531 | # CONFIG_RUNTIME_DEBUG is not set | ||
1532 | CONFIG_DEBUG_ZBOOT=y | ||
1533 | |||
1534 | # | ||
1535 | # Security options | ||
1536 | # | ||
1537 | CONFIG_KEYS=y | ||
1538 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | ||
1539 | # CONFIG_SECURITY is not set | ||
1540 | CONFIG_SECURITYFS=y | ||
1541 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set | ||
1542 | # CONFIG_DEFAULT_SECURITY_SMACK is not set | ||
1543 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set | ||
1544 | CONFIG_DEFAULT_SECURITY_DAC=y | ||
1545 | CONFIG_DEFAULT_SECURITY="" | ||
1546 | # CONFIG_CRYPTO is not set | ||
1547 | # CONFIG_BINARY_PRINTF is not set | ||
1548 | |||
1549 | # | ||
1550 | # Library routines | ||
1551 | # | ||
1552 | CONFIG_BITREVERSE=y | ||
1553 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
1554 | # CONFIG_CRC_CCITT is not set | ||
1555 | # CONFIG_CRC16 is not set | ||
1556 | # CONFIG_CRC_T10DIF is not set | ||
1557 | CONFIG_CRC_ITU_T=y | ||
1558 | CONFIG_CRC32=y | ||
1559 | # CONFIG_CRC7 is not set | ||
1560 | # CONFIG_LIBCRC32C is not set | ||
1561 | CONFIG_ZLIB_INFLATE=y | ||
1562 | CONFIG_ZLIB_DEFLATE=y | ||
1563 | CONFIG_LZO_COMPRESS=y | ||
1564 | CONFIG_LZO_DECOMPRESS=y | ||
1565 | CONFIG_HAS_IOMEM=y | ||
1566 | CONFIG_HAS_IOPORT=y | ||
1567 | CONFIG_HAS_DMA=y | ||
1568 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/pb1500_defconfig b/arch/mips/configs/pb1500_defconfig index e74ba794c789..7497d3306b91 100644 --- a/arch/mips/configs/pb1500_defconfig +++ b/arch/mips/configs/pb1500_defconfig | |||
@@ -1,79 +1,102 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:37 2007 | 4 | # Fri Feb 26 10:05:27 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_PB1100 is not set | ||
17 | CONFIG_MIPS_PB1500=y | ||
18 | # CONFIG_MIPS_PB1550 is not set | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | # CONFIG_MIPS_DB1000 is not set | ||
21 | # CONFIG_MIPS_DB1100 is not set | ||
22 | # CONFIG_MIPS_DB1500 is not set | ||
23 | # CONFIG_MIPS_DB1550 is not set | ||
24 | # CONFIG_MIPS_DB1200 is not set | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | CONFIG_MIPS_PB1500=y | ||
64 | # CONFIG_MIPS_PB1550 is not set | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1500=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_NONCOHERENT=y | 83 | CONFIG_DMA_NONCOHERENT=y |
65 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
86 | # CONFIG_NO_IOPORT is not set | ||
87 | CONFIG_GENERIC_GPIO=y | ||
66 | # CONFIG_CPU_BIG_ENDIAN is not set | 88 | # CONFIG_CPU_BIG_ENDIAN is not set |
67 | CONFIG_CPU_LITTLE_ENDIAN=y | 89 | CONFIG_CPU_LITTLE_ENDIAN=y |
68 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 90 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
69 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 91 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
70 | CONFIG_SOC_AU1500=y | 92 | CONFIG_IRQ_CPU=y |
71 | CONFIG_SOC_AU1X00=y | ||
72 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 93 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
73 | 94 | ||
74 | # | 95 | # |
75 | # CPU selection | 96 | # CPU selection |
76 | # | 97 | # |
98 | # CONFIG_CPU_LOONGSON2E is not set | ||
99 | # CONFIG_CPU_LOONGSON2F is not set | ||
77 | CONFIG_CPU_MIPS32_R1=y | 100 | CONFIG_CPU_MIPS32_R1=y |
78 | # CONFIG_CPU_MIPS32_R2 is not set | 101 | # CONFIG_CPU_MIPS32_R2 is not set |
79 | # CONFIG_CPU_MIPS64_R1 is not set | 102 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -86,6 +109,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
86 | # CONFIG_CPU_TX49XX is not set | 109 | # CONFIG_CPU_TX49XX is not set |
87 | # CONFIG_CPU_R5000 is not set | 110 | # CONFIG_CPU_R5000 is not set |
88 | # CONFIG_CPU_R5432 is not set | 111 | # CONFIG_CPU_R5432 is not set |
112 | # CONFIG_CPU_R5500 is not set | ||
89 | # CONFIG_CPU_R6000 is not set | 113 | # CONFIG_CPU_R6000 is not set |
90 | # CONFIG_CPU_NEVADA is not set | 114 | # CONFIG_CPU_NEVADA is not set |
91 | # CONFIG_CPU_R8000 is not set | 115 | # CONFIG_CPU_R8000 is not set |
@@ -93,11 +117,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
93 | # CONFIG_CPU_RM7000 is not set | 117 | # CONFIG_CPU_RM7000 is not set |
94 | # CONFIG_CPU_RM9000 is not set | 118 | # CONFIG_CPU_RM9000 is not set |
95 | # CONFIG_CPU_SB1 is not set | 119 | # CONFIG_CPU_SB1 is not set |
120 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
121 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
96 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 122 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
97 | CONFIG_CPU_MIPS32=y | 123 | CONFIG_CPU_MIPS32=y |
98 | CONFIG_CPU_MIPSR1=y | 124 | CONFIG_CPU_MIPSR1=y |
99 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 125 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
100 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 126 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
127 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
101 | 128 | ||
102 | # | 129 | # |
103 | # Kernel type | 130 | # Kernel type |
@@ -107,190 +134,255 @@ CONFIG_32BIT=y | |||
107 | CONFIG_PAGE_SIZE_4KB=y | 134 | CONFIG_PAGE_SIZE_4KB=y |
108 | # CONFIG_PAGE_SIZE_8KB is not set | 135 | # CONFIG_PAGE_SIZE_8KB is not set |
109 | # CONFIG_PAGE_SIZE_16KB is not set | 136 | # CONFIG_PAGE_SIZE_16KB is not set |
137 | # CONFIG_PAGE_SIZE_32KB is not set | ||
110 | # CONFIG_PAGE_SIZE_64KB is not set | 138 | # CONFIG_PAGE_SIZE_64KB is not set |
111 | CONFIG_CPU_HAS_PREFETCH=y | 139 | CONFIG_CPU_HAS_PREFETCH=y |
112 | CONFIG_MIPS_MT_DISABLED=y | 140 | CONFIG_MIPS_MT_DISABLED=y |
113 | # CONFIG_MIPS_MT_SMP is not set | 141 | # CONFIG_MIPS_MT_SMP is not set |
114 | # CONFIG_MIPS_MT_SMTC is not set | 142 | # CONFIG_MIPS_MT_SMTC is not set |
115 | # CONFIG_MIPS_VPE_LOADER is not set | ||
116 | CONFIG_64BIT_PHYS_ADDR=y | 143 | CONFIG_64BIT_PHYS_ADDR=y |
144 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
117 | CONFIG_CPU_HAS_SYNC=y | 145 | CONFIG_CPU_HAS_SYNC=y |
118 | CONFIG_GENERIC_HARDIRQS=y | 146 | CONFIG_GENERIC_HARDIRQS=y |
119 | CONFIG_GENERIC_IRQ_PROBE=y | 147 | CONFIG_GENERIC_IRQ_PROBE=y |
120 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 148 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
121 | CONFIG_ARCH_FLATMEM_ENABLE=y | 149 | CONFIG_ARCH_FLATMEM_ENABLE=y |
150 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
122 | CONFIG_SELECT_MEMORY_MODEL=y | 151 | CONFIG_SELECT_MEMORY_MODEL=y |
123 | CONFIG_FLATMEM_MANUAL=y | 152 | CONFIG_FLATMEM_MANUAL=y |
124 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 153 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
125 | # CONFIG_SPARSEMEM_MANUAL is not set | 154 | # CONFIG_SPARSEMEM_MANUAL is not set |
126 | CONFIG_FLATMEM=y | 155 | CONFIG_FLATMEM=y |
127 | CONFIG_FLAT_NODE_MEM_MAP=y | 156 | CONFIG_FLAT_NODE_MEM_MAP=y |
128 | # CONFIG_SPARSEMEM_STATIC is not set | 157 | CONFIG_PAGEFLAGS_EXTENDED=y |
129 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 158 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
130 | CONFIG_RESOURCES_64BIT=y | 159 | CONFIG_PHYS_ADDR_T_64BIT=y |
131 | CONFIG_ZONE_DMA_FLAG=1 | 160 | CONFIG_ZONE_DMA_FLAG=0 |
161 | CONFIG_VIRT_TO_BUS=y | ||
162 | # CONFIG_KSM is not set | ||
163 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
164 | CONFIG_TICK_ONESHOT=y | ||
165 | CONFIG_NO_HZ=y | ||
166 | CONFIG_HIGH_RES_TIMERS=y | ||
167 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
132 | # CONFIG_HZ_48 is not set | 168 | # CONFIG_HZ_48 is not set |
133 | # CONFIG_HZ_100 is not set | 169 | CONFIG_HZ_100=y |
134 | # CONFIG_HZ_128 is not set | 170 | # CONFIG_HZ_128 is not set |
135 | # CONFIG_HZ_250 is not set | 171 | # CONFIG_HZ_250 is not set |
136 | # CONFIG_HZ_256 is not set | 172 | # CONFIG_HZ_256 is not set |
137 | CONFIG_HZ_1000=y | 173 | # CONFIG_HZ_1000 is not set |
138 | # CONFIG_HZ_1024 is not set | 174 | # CONFIG_HZ_1024 is not set |
139 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 175 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
140 | CONFIG_HZ=1000 | 176 | CONFIG_HZ=100 |
141 | CONFIG_PREEMPT_NONE=y | 177 | CONFIG_PREEMPT_NONE=y |
142 | # CONFIG_PREEMPT_VOLUNTARY is not set | 178 | # CONFIG_PREEMPT_VOLUNTARY is not set |
143 | # CONFIG_PREEMPT is not set | 179 | # CONFIG_PREEMPT is not set |
144 | # CONFIG_KEXEC is not set | 180 | # CONFIG_KEXEC is not set |
181 | # CONFIG_SECCOMP is not set | ||
145 | CONFIG_LOCKDEP_SUPPORT=y | 182 | CONFIG_LOCKDEP_SUPPORT=y |
146 | CONFIG_STACKTRACE_SUPPORT=y | 183 | CONFIG_STACKTRACE_SUPPORT=y |
147 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 184 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
185 | CONFIG_CONSTRUCTORS=y | ||
148 | 186 | ||
149 | # | 187 | # |
150 | # Code maturity level options | 188 | # General setup |
151 | # | 189 | # |
152 | CONFIG_EXPERIMENTAL=y | 190 | CONFIG_EXPERIMENTAL=y |
153 | CONFIG_BROKEN_ON_SMP=y | 191 | CONFIG_BROKEN_ON_SMP=y |
154 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 192 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
155 | 193 | CONFIG_LOCALVERSION="-pb1500" | |
156 | # | ||
157 | # General setup | ||
158 | # | ||
159 | CONFIG_LOCALVERSION="" | ||
160 | CONFIG_LOCALVERSION_AUTO=y | 194 | CONFIG_LOCALVERSION_AUTO=y |
195 | CONFIG_HAVE_KERNEL_GZIP=y | ||
196 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
197 | CONFIG_HAVE_KERNEL_LZMA=y | ||
198 | CONFIG_HAVE_KERNEL_LZO=y | ||
199 | # CONFIG_KERNEL_GZIP is not set | ||
200 | # CONFIG_KERNEL_BZIP2 is not set | ||
201 | CONFIG_KERNEL_LZMA=y | ||
202 | # CONFIG_KERNEL_LZO is not set | ||
161 | CONFIG_SWAP=y | 203 | CONFIG_SWAP=y |
162 | CONFIG_SYSVIPC=y | 204 | CONFIG_SYSVIPC=y |
163 | # CONFIG_IPC_NS is not set | ||
164 | CONFIG_SYSVIPC_SYSCTL=y | 205 | CONFIG_SYSVIPC_SYSCTL=y |
165 | # CONFIG_POSIX_MQUEUE is not set | 206 | CONFIG_POSIX_MQUEUE=y |
207 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
166 | # CONFIG_BSD_PROCESS_ACCT is not set | 208 | # CONFIG_BSD_PROCESS_ACCT is not set |
167 | # CONFIG_TASKSTATS is not set | 209 | # CONFIG_TASKSTATS is not set |
168 | # CONFIG_UTS_NS is not set | ||
169 | # CONFIG_AUDIT is not set | 210 | # CONFIG_AUDIT is not set |
211 | |||
212 | # | ||
213 | # RCU Subsystem | ||
214 | # | ||
215 | # CONFIG_TREE_RCU is not set | ||
216 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
217 | CONFIG_TINY_RCU=y | ||
218 | # CONFIG_TREE_RCU_TRACE is not set | ||
170 | # CONFIG_IKCONFIG is not set | 219 | # CONFIG_IKCONFIG is not set |
171 | CONFIG_SYSFS_DEPRECATED=y | 220 | CONFIG_LOG_BUF_SHIFT=14 |
172 | CONFIG_RELAY=y | 221 | # CONFIG_GROUP_SCHED is not set |
173 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 222 | # CONFIG_CGROUPS is not set |
223 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
224 | # CONFIG_RELAY is not set | ||
225 | # CONFIG_NAMESPACES is not set | ||
226 | # CONFIG_BLK_DEV_INITRD is not set | ||
227 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
174 | CONFIG_SYSCTL=y | 228 | CONFIG_SYSCTL=y |
229 | CONFIG_ANON_INODES=y | ||
175 | CONFIG_EMBEDDED=y | 230 | CONFIG_EMBEDDED=y |
176 | CONFIG_SYSCTL_SYSCALL=y | 231 | # CONFIG_SYSCTL_SYSCALL is not set |
177 | CONFIG_KALLSYMS=y | 232 | # CONFIG_KALLSYMS is not set |
178 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
179 | CONFIG_HOTPLUG=y | 233 | CONFIG_HOTPLUG=y |
180 | CONFIG_PRINTK=y | 234 | CONFIG_PRINTK=y |
181 | CONFIG_BUG=y | 235 | CONFIG_BUG=y |
182 | CONFIG_ELF_CORE=y | 236 | CONFIG_ELF_CORE=y |
237 | # CONFIG_PCSPKR_PLATFORM is not set | ||
183 | CONFIG_BASE_FULL=y | 238 | CONFIG_BASE_FULL=y |
184 | CONFIG_FUTEX=y | 239 | CONFIG_FUTEX=y |
185 | CONFIG_EPOLL=y | 240 | CONFIG_EPOLL=y |
241 | CONFIG_SIGNALFD=y | ||
242 | CONFIG_TIMERFD=y | ||
243 | CONFIG_EVENTFD=y | ||
186 | CONFIG_SHMEM=y | 244 | CONFIG_SHMEM=y |
245 | CONFIG_AIO=y | ||
246 | |||
247 | # | ||
248 | # Kernel Performance Events And Counters | ||
249 | # | ||
250 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
251 | CONFIG_PCI_QUIRKS=y | ||
252 | # CONFIG_COMPAT_BRK is not set | ||
187 | CONFIG_SLAB=y | 253 | CONFIG_SLAB=y |
188 | CONFIG_VM_EVENT_COUNTERS=y | 254 | # CONFIG_SLUB is not set |
189 | CONFIG_RT_MUTEXES=y | ||
190 | # CONFIG_TINY_SHMEM is not set | ||
191 | CONFIG_BASE_SMALL=0 | ||
192 | # CONFIG_SLOB is not set | 255 | # CONFIG_SLOB is not set |
256 | # CONFIG_PROFILING is not set | ||
257 | CONFIG_HAVE_OPROFILE=y | ||
193 | 258 | ||
194 | # | 259 | # |
195 | # Loadable module support | 260 | # GCOV-based kernel profiling |
196 | # | 261 | # |
262 | # CONFIG_SLOW_WORK is not set | ||
263 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
264 | CONFIG_SLABINFO=y | ||
265 | CONFIG_RT_MUTEXES=y | ||
266 | CONFIG_BASE_SMALL=0 | ||
197 | CONFIG_MODULES=y | 267 | CONFIG_MODULES=y |
268 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
198 | CONFIG_MODULE_UNLOAD=y | 269 | CONFIG_MODULE_UNLOAD=y |
199 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 270 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
200 | CONFIG_MODVERSIONS=y | 271 | # CONFIG_MODVERSIONS is not set |
201 | CONFIG_MODULE_SRCVERSION_ALL=y | 272 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
202 | CONFIG_KMOD=y | ||
203 | |||
204 | # | ||
205 | # Block layer | ||
206 | # | ||
207 | CONFIG_BLOCK=y | 273 | CONFIG_BLOCK=y |
208 | # CONFIG_LBD is not set | 274 | CONFIG_LBDAF=y |
209 | # CONFIG_BLK_DEV_IO_TRACE is not set | 275 | CONFIG_BLK_DEV_BSG=y |
210 | # CONFIG_LSF is not set | 276 | # CONFIG_BLK_DEV_INTEGRITY is not set |
211 | 277 | ||
212 | # | 278 | # |
213 | # IO Schedulers | 279 | # IO Schedulers |
214 | # | 280 | # |
215 | CONFIG_IOSCHED_NOOP=y | 281 | CONFIG_IOSCHED_NOOP=y |
216 | CONFIG_IOSCHED_AS=y | 282 | # CONFIG_IOSCHED_DEADLINE is not set |
217 | CONFIG_IOSCHED_DEADLINE=y | 283 | # CONFIG_IOSCHED_CFQ is not set |
218 | CONFIG_IOSCHED_CFQ=y | ||
219 | CONFIG_DEFAULT_AS=y | ||
220 | # CONFIG_DEFAULT_DEADLINE is not set | 284 | # CONFIG_DEFAULT_DEADLINE is not set |
221 | # CONFIG_DEFAULT_CFQ is not set | 285 | # CONFIG_DEFAULT_CFQ is not set |
222 | # CONFIG_DEFAULT_NOOP is not set | 286 | CONFIG_DEFAULT_NOOP=y |
223 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 287 | CONFIG_DEFAULT_IOSCHED="noop" |
288 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
289 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
290 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
293 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
294 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
295 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
296 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
297 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
298 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
299 | # CONFIG_INLINE_READ_LOCK is not set | ||
300 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
302 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
303 | CONFIG_INLINE_READ_UNLOCK=y | ||
304 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
305 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
306 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
307 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
308 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
311 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
312 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
313 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
314 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
315 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
316 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
317 | CONFIG_FREEZER=y | ||
224 | 318 | ||
225 | # | 319 | # |
226 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 320 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
227 | # | 321 | # |
228 | CONFIG_HW_HAS_PCI=y | 322 | CONFIG_HW_HAS_PCI=y |
229 | CONFIG_PCI=y | 323 | CONFIG_PCI=y |
324 | CONFIG_PCI_DOMAINS=y | ||
325 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
326 | CONFIG_PCI_LEGACY=y | ||
327 | # CONFIG_PCI_DEBUG is not set | ||
328 | # CONFIG_PCI_STUB is not set | ||
329 | # CONFIG_PCI_IOV is not set | ||
230 | CONFIG_MMU=y | 330 | CONFIG_MMU=y |
231 | 331 | CONFIG_PCCARD=y | |
232 | # | 332 | CONFIG_PCMCIA=y |
233 | # PCCARD (PCMCIA/CardBus) support | ||
234 | # | ||
235 | CONFIG_PCCARD=m | ||
236 | # CONFIG_PCMCIA_DEBUG is not set | ||
237 | CONFIG_PCMCIA=m | ||
238 | CONFIG_PCMCIA_LOAD_CIS=y | 333 | CONFIG_PCMCIA_LOAD_CIS=y |
239 | CONFIG_PCMCIA_IOCTL=y | 334 | CONFIG_PCMCIA_IOCTL=y |
240 | CONFIG_CARDBUS=y | 335 | # CONFIG_CARDBUS is not set |
241 | 336 | ||
242 | # | 337 | # |
243 | # PC-card bridges | 338 | # PC-card bridges |
244 | # | 339 | # |
245 | # CONFIG_YENTA is not set | 340 | # CONFIG_YENTA is not set |
246 | CONFIG_PD6729=m | 341 | # CONFIG_PD6729 is not set |
247 | # CONFIG_I82092 is not set | 342 | # CONFIG_I82092 is not set |
248 | # CONFIG_PCMCIA_AU1X00 is not set | 343 | # CONFIG_PCMCIA_AU1X00 is not set |
249 | CONFIG_PCCARD_NONSTATIC=m | 344 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y |
250 | |||
251 | # | ||
252 | # PCI Hotplug Support | ||
253 | # | ||
254 | # CONFIG_HOTPLUG_PCI is not set | 345 | # CONFIG_HOTPLUG_PCI is not set |
255 | 346 | ||
256 | # | 347 | # |
257 | # Executable file formats | 348 | # Executable file formats |
258 | # | 349 | # |
259 | CONFIG_BINFMT_ELF=y | 350 | CONFIG_BINFMT_ELF=y |
351 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
352 | # CONFIG_HAVE_AOUT is not set | ||
260 | # CONFIG_BINFMT_MISC is not set | 353 | # CONFIG_BINFMT_MISC is not set |
261 | CONFIG_TRAD_SIGNALS=y | 354 | CONFIG_TRAD_SIGNALS=y |
262 | 355 | ||
263 | # | 356 | # |
264 | # Power management options | 357 | # Power management options |
265 | # | 358 | # |
266 | # CONFIG_PM is not set | 359 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y |
267 | 360 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | |
268 | # | 361 | CONFIG_PM=y |
269 | # Networking | 362 | # CONFIG_PM_DEBUG is not set |
270 | # | 363 | CONFIG_PM_SLEEP=y |
364 | CONFIG_SUSPEND=y | ||
365 | CONFIG_SUSPEND_FREEZER=y | ||
366 | # CONFIG_HIBERNATION is not set | ||
367 | # CONFIG_APM_EMULATION is not set | ||
368 | CONFIG_PM_RUNTIME=y | ||
271 | CONFIG_NET=y | 369 | CONFIG_NET=y |
272 | 370 | ||
273 | # | 371 | # |
274 | # Networking options | 372 | # Networking options |
275 | # | 373 | # |
276 | # CONFIG_NETDEBUG is not set | ||
277 | CONFIG_PACKET=y | 374 | CONFIG_PACKET=y |
278 | # CONFIG_PACKET_MMAP is not set | 375 | CONFIG_PACKET_MMAP=y |
279 | CONFIG_UNIX=y | 376 | CONFIG_UNIX=y |
280 | CONFIG_XFRM=y | 377 | # CONFIG_NET_KEY is not set |
281 | CONFIG_XFRM_USER=m | ||
282 | # CONFIG_XFRM_SUB_POLICY is not set | ||
283 | CONFIG_XFRM_MIGRATE=y | ||
284 | CONFIG_NET_KEY=y | ||
285 | CONFIG_NET_KEY_MIGRATE=y | ||
286 | CONFIG_INET=y | 378 | CONFIG_INET=y |
287 | CONFIG_IP_MULTICAST=y | 379 | CONFIG_IP_MULTICAST=y |
288 | # CONFIG_IP_ADVANCED_ROUTER is not set | 380 | # CONFIG_IP_ADVANCED_ROUTER is not set |
289 | CONFIG_IP_FIB_HASH=y | 381 | CONFIG_IP_FIB_HASH=y |
290 | CONFIG_IP_PNP=y | 382 | CONFIG_IP_PNP=y |
291 | # CONFIG_IP_PNP_DHCP is not set | 383 | CONFIG_IP_PNP_DHCP=y |
292 | CONFIG_IP_PNP_BOOTP=y | 384 | CONFIG_IP_PNP_BOOTP=y |
293 | # CONFIG_IP_PNP_RARP is not set | 385 | CONFIG_IP_PNP_RARP=y |
294 | # CONFIG_NET_IPIP is not set | 386 | # CONFIG_NET_IPIP is not set |
295 | # CONFIG_NET_IPGRE is not set | 387 | # CONFIG_NET_IPGRE is not set |
296 | # CONFIG_IP_MROUTE is not set | 388 | # CONFIG_IP_MROUTE is not set |
@@ -301,110 +393,25 @@ CONFIG_IP_PNP_BOOTP=y | |||
301 | # CONFIG_INET_IPCOMP is not set | 393 | # CONFIG_INET_IPCOMP is not set |
302 | # CONFIG_INET_XFRM_TUNNEL is not set | 394 | # CONFIG_INET_XFRM_TUNNEL is not set |
303 | # CONFIG_INET_TUNNEL is not set | 395 | # CONFIG_INET_TUNNEL is not set |
304 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 396 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
305 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 397 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
306 | CONFIG_INET_XFRM_MODE_BEET=m | 398 | # CONFIG_INET_XFRM_MODE_BEET is not set |
307 | CONFIG_INET_DIAG=y | 399 | CONFIG_INET_LRO=y |
308 | CONFIG_INET_TCP_DIAG=y | 400 | # CONFIG_INET_DIAG is not set |
309 | # CONFIG_TCP_CONG_ADVANCED is not set | 401 | # CONFIG_TCP_CONG_ADVANCED is not set |
310 | CONFIG_TCP_CONG_CUBIC=y | 402 | CONFIG_TCP_CONG_CUBIC=y |
311 | CONFIG_DEFAULT_TCP_CONG="cubic" | 403 | CONFIG_DEFAULT_TCP_CONG="cubic" |
312 | CONFIG_TCP_MD5SIG=y | 404 | # CONFIG_TCP_MD5SIG is not set |
313 | |||
314 | # | ||
315 | # IP: Virtual Server Configuration | ||
316 | # | ||
317 | # CONFIG_IP_VS is not set | ||
318 | # CONFIG_IPV6 is not set | 405 | # CONFIG_IPV6 is not set |
319 | # CONFIG_INET6_XFRM_TUNNEL is not set | 406 | # CONFIG_NETWORK_SECMARK is not set |
320 | # CONFIG_INET6_TUNNEL is not set | 407 | # CONFIG_NETFILTER is not set |
321 | CONFIG_NETWORK_SECMARK=y | ||
322 | CONFIG_NETFILTER=y | ||
323 | # CONFIG_NETFILTER_DEBUG is not set | ||
324 | |||
325 | # | ||
326 | # Core Netfilter Configuration | ||
327 | # | ||
328 | CONFIG_NETFILTER_NETLINK=m | ||
329 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
330 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
331 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
332 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
333 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
334 | CONFIG_NF_CONNTRACK=m | ||
335 | CONFIG_NF_CT_ACCT=y | ||
336 | CONFIG_NF_CONNTRACK_MARK=y | ||
337 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
338 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
339 | CONFIG_NF_CT_PROTO_GRE=m | ||
340 | CONFIG_NF_CT_PROTO_SCTP=m | ||
341 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
342 | CONFIG_NF_CONNTRACK_FTP=m | ||
343 | CONFIG_NF_CONNTRACK_H323=m | ||
344 | CONFIG_NF_CONNTRACK_IRC=m | ||
345 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
346 | CONFIG_NF_CONNTRACK_PPTP=m | ||
347 | CONFIG_NF_CONNTRACK_SANE=m | ||
348 | CONFIG_NF_CONNTRACK_SIP=m | ||
349 | CONFIG_NF_CONNTRACK_TFTP=m | ||
350 | CONFIG_NF_CT_NETLINK=m | ||
351 | CONFIG_NETFILTER_XTABLES=m | ||
352 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
353 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
354 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
355 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
356 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
357 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
358 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
359 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
365 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
366 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
367 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
368 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
369 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
370 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
371 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
372 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
373 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
374 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
375 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
376 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
377 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
378 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
379 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
380 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
381 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
382 | |||
383 | # | ||
384 | # IP: Netfilter Configuration | ||
385 | # | ||
386 | CONFIG_NF_CONNTRACK_IPV4=m | ||
387 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
388 | # CONFIG_IP_NF_QUEUE is not set | ||
389 | # CONFIG_IP_NF_IPTABLES is not set | ||
390 | # CONFIG_IP_NF_ARPTABLES is not set | ||
391 | |||
392 | # | ||
393 | # DCCP Configuration (EXPERIMENTAL) | ||
394 | # | ||
395 | # CONFIG_IP_DCCP is not set | 408 | # CONFIG_IP_DCCP is not set |
396 | |||
397 | # | ||
398 | # SCTP Configuration (EXPERIMENTAL) | ||
399 | # | ||
400 | # CONFIG_IP_SCTP is not set | 409 | # CONFIG_IP_SCTP is not set |
401 | 410 | # CONFIG_RDS is not set | |
402 | # | ||
403 | # TIPC Configuration (EXPERIMENTAL) | ||
404 | # | ||
405 | # CONFIG_TIPC is not set | 411 | # CONFIG_TIPC is not set |
406 | # CONFIG_ATM is not set | 412 | # CONFIG_ATM is not set |
407 | # CONFIG_BRIDGE is not set | 413 | # CONFIG_BRIDGE is not set |
414 | # CONFIG_NET_DSA is not set | ||
408 | # CONFIG_VLAN_8021Q is not set | 415 | # CONFIG_VLAN_8021Q is not set |
409 | # CONFIG_DECNET is not set | 416 | # CONFIG_DECNET is not set |
410 | # CONFIG_LLC2 is not set | 417 | # CONFIG_LLC2 is not set |
@@ -414,27 +421,24 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
414 | # CONFIG_LAPB is not set | 421 | # CONFIG_LAPB is not set |
415 | # CONFIG_ECONET is not set | 422 | # CONFIG_ECONET is not set |
416 | # CONFIG_WAN_ROUTER is not set | 423 | # CONFIG_WAN_ROUTER is not set |
417 | 424 | # CONFIG_PHONET is not set | |
418 | # | 425 | # CONFIG_IEEE802154 is not set |
419 | # QoS and/or fair queueing | ||
420 | # | ||
421 | # CONFIG_NET_SCHED is not set | 426 | # CONFIG_NET_SCHED is not set |
422 | CONFIG_NET_CLS_ROUTE=y | 427 | # CONFIG_DCB is not set |
423 | 428 | ||
424 | # | 429 | # |
425 | # Network testing | 430 | # Network testing |
426 | # | 431 | # |
427 | # CONFIG_NET_PKTGEN is not set | 432 | # CONFIG_NET_PKTGEN is not set |
428 | # CONFIG_HAMRADIO is not set | 433 | # CONFIG_HAMRADIO is not set |
434 | # CONFIG_CAN is not set | ||
429 | # CONFIG_IRDA is not set | 435 | # CONFIG_IRDA is not set |
430 | # CONFIG_BT is not set | 436 | # CONFIG_BT is not set |
431 | CONFIG_IEEE80211=m | 437 | # CONFIG_AF_RXRPC is not set |
432 | # CONFIG_IEEE80211_DEBUG is not set | 438 | # CONFIG_WIRELESS is not set |
433 | CONFIG_IEEE80211_CRYPT_WEP=m | 439 | # CONFIG_WIMAX is not set |
434 | CONFIG_IEEE80211_CRYPT_CCMP=m | 440 | # CONFIG_RFKILL is not set |
435 | CONFIG_IEEE80211_SOFTMAC=m | 441 | # CONFIG_NET_9P is not set |
436 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | ||
437 | CONFIG_WIRELESS_EXT=y | ||
438 | 442 | ||
439 | # | 443 | # |
440 | # Device Drivers | 444 | # Device Drivers |
@@ -443,25 +447,25 @@ CONFIG_WIRELESS_EXT=y | |||
443 | # | 447 | # |
444 | # Generic Driver Options | 448 | # Generic Driver Options |
445 | # | 449 | # |
450 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
451 | # CONFIG_DEVTMPFS is not set | ||
446 | CONFIG_STANDALONE=y | 452 | CONFIG_STANDALONE=y |
447 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 453 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
448 | CONFIG_FW_LOADER=m | 454 | CONFIG_FW_LOADER=y |
455 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
456 | CONFIG_EXTRA_FIRMWARE="" | ||
457 | # CONFIG_DEBUG_DRIVER is not set | ||
458 | # CONFIG_DEBUG_DEVRES is not set | ||
449 | # CONFIG_SYS_HYPERVISOR is not set | 459 | # CONFIG_SYS_HYPERVISOR is not set |
450 | 460 | # CONFIG_CONNECTOR is not set | |
451 | # | ||
452 | # Connector - unified userspace <-> kernelspace linker | ||
453 | # | ||
454 | CONFIG_CONNECTOR=m | ||
455 | |||
456 | # | ||
457 | # Memory Technology Devices (MTD) | ||
458 | # | ||
459 | CONFIG_MTD=y | 461 | CONFIG_MTD=y |
460 | # CONFIG_MTD_DEBUG is not set | 462 | # CONFIG_MTD_DEBUG is not set |
463 | # CONFIG_MTD_TESTS is not set | ||
461 | # CONFIG_MTD_CONCAT is not set | 464 | # CONFIG_MTD_CONCAT is not set |
462 | CONFIG_MTD_PARTITIONS=y | 465 | CONFIG_MTD_PARTITIONS=y |
463 | # CONFIG_MTD_REDBOOT_PARTS is not set | 466 | # CONFIG_MTD_REDBOOT_PARTS is not set |
464 | # CONFIG_MTD_CMDLINE_PARTS is not set | 467 | # CONFIG_MTD_CMDLINE_PARTS is not set |
468 | # CONFIG_MTD_AR7_PARTS is not set | ||
465 | 469 | ||
466 | # | 470 | # |
467 | # User Modules And Translation Layers | 471 | # User Modules And Translation Layers |
@@ -474,6 +478,7 @@ CONFIG_MTD_BLOCK=y | |||
474 | # CONFIG_INFTL is not set | 478 | # CONFIG_INFTL is not set |
475 | # CONFIG_RFD_FTL is not set | 479 | # CONFIG_RFD_FTL is not set |
476 | # CONFIG_SSFDC is not set | 480 | # CONFIG_SSFDC is not set |
481 | # CONFIG_MTD_OOPS is not set | ||
477 | 482 | ||
478 | # | 483 | # |
479 | # RAM/ROM/Flash chip drivers | 484 | # RAM/ROM/Flash chip drivers |
@@ -499,14 +504,14 @@ CONFIG_MTD_CFI_UTIL=y | |||
499 | # CONFIG_MTD_RAM is not set | 504 | # CONFIG_MTD_RAM is not set |
500 | # CONFIG_MTD_ROM is not set | 505 | # CONFIG_MTD_ROM is not set |
501 | # CONFIG_MTD_ABSENT is not set | 506 | # CONFIG_MTD_ABSENT is not set |
502 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
503 | 507 | ||
504 | # | 508 | # |
505 | # Mapping drivers for chip access | 509 | # Mapping drivers for chip access |
506 | # | 510 | # |
507 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 511 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
508 | # CONFIG_MTD_PHYSMAP is not set | 512 | CONFIG_MTD_PHYSMAP=y |
509 | CONFIG_MTD_ALCHEMY=y | 513 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
514 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
510 | # CONFIG_MTD_PLATRAM is not set | 515 | # CONFIG_MTD_PLATRAM is not set |
511 | 516 | ||
512 | # | 517 | # |
@@ -524,30 +529,20 @@ CONFIG_MTD_ALCHEMY=y | |||
524 | # CONFIG_MTD_DOC2000 is not set | 529 | # CONFIG_MTD_DOC2000 is not set |
525 | # CONFIG_MTD_DOC2001 is not set | 530 | # CONFIG_MTD_DOC2001 is not set |
526 | # CONFIG_MTD_DOC2001PLUS is not set | 531 | # CONFIG_MTD_DOC2001PLUS is not set |
527 | |||
528 | # | ||
529 | # NAND Flash Device Drivers | ||
530 | # | ||
531 | # CONFIG_MTD_NAND is not set | 532 | # CONFIG_MTD_NAND is not set |
532 | |||
533 | # | ||
534 | # OneNAND Flash Device Drivers | ||
535 | # | ||
536 | # CONFIG_MTD_ONENAND is not set | 533 | # CONFIG_MTD_ONENAND is not set |
537 | 534 | ||
538 | # | 535 | # |
539 | # Parallel port support | 536 | # LPDDR flash memory drivers |
540 | # | 537 | # |
541 | # CONFIG_PARPORT is not set | 538 | # CONFIG_MTD_LPDDR is not set |
542 | 539 | ||
543 | # | 540 | # |
544 | # Plug and Play support | 541 | # UBI - Unsorted block images |
545 | # | ||
546 | # CONFIG_PNPACPI is not set | ||
547 | |||
548 | # | ||
549 | # Block devices | ||
550 | # | 542 | # |
543 | # CONFIG_MTD_UBI is not set | ||
544 | # CONFIG_PARPORT is not set | ||
545 | CONFIG_BLK_DEV=y | ||
551 | # CONFIG_BLK_CPQ_DA is not set | 546 | # CONFIG_BLK_CPQ_DA is not set |
552 | # CONFIG_BLK_CPQ_CISS_DA is not set | 547 | # CONFIG_BLK_CPQ_CISS_DA is not set |
553 | # CONFIG_BLK_DEV_DAC960 is not set | 548 | # CONFIG_BLK_DEV_DAC960 is not set |
@@ -555,67 +550,66 @@ CONFIG_MTD_ALCHEMY=y | |||
555 | # CONFIG_BLK_DEV_COW_COMMON is not set | 550 | # CONFIG_BLK_DEV_COW_COMMON is not set |
556 | CONFIG_BLK_DEV_LOOP=y | 551 | CONFIG_BLK_DEV_LOOP=y |
557 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 552 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
558 | # CONFIG_BLK_DEV_NBD is not set | ||
559 | # CONFIG_BLK_DEV_SX8 is not set | ||
560 | # CONFIG_BLK_DEV_RAM is not set | ||
561 | # CONFIG_BLK_DEV_INITRD is not set | ||
562 | CONFIG_CDROM_PKTCDVD=m | ||
563 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | ||
564 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | ||
565 | CONFIG_ATA_OVER_ETH=m | ||
566 | |||
567 | # | ||
568 | # Misc devices | ||
569 | # | ||
570 | CONFIG_SGI_IOC4=m | ||
571 | # CONFIG_TIFM_CORE is not set | ||
572 | 553 | ||
573 | # | 554 | # |
574 | # ATA/ATAPI/MFM/RLL support | 555 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected |
575 | # | 556 | # |
557 | # CONFIG_BLK_DEV_NBD is not set | ||
558 | # CONFIG_BLK_DEV_SX8 is not set | ||
559 | CONFIG_BLK_DEV_UB=y | ||
560 | # CONFIG_BLK_DEV_RAM is not set | ||
561 | # CONFIG_CDROM_PKTCDVD is not set | ||
562 | # CONFIG_ATA_OVER_ETH is not set | ||
563 | # CONFIG_BLK_DEV_HD is not set | ||
564 | # CONFIG_MISC_DEVICES is not set | ||
565 | CONFIG_HAVE_IDE=y | ||
576 | CONFIG_IDE=y | 566 | CONFIG_IDE=y |
577 | CONFIG_IDE_MAX_HWIFS=4 | ||
578 | CONFIG_BLK_DEV_IDE=y | ||
579 | 567 | ||
580 | # | 568 | # |
581 | # Please see Documentation/ide.txt for help/info on IDE drives | 569 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
582 | # | 570 | # |
571 | CONFIG_IDE_XFER_MODE=y | ||
572 | CONFIG_IDE_ATAPI=y | ||
583 | # CONFIG_BLK_DEV_IDE_SATA is not set | 573 | # CONFIG_BLK_DEV_IDE_SATA is not set |
584 | CONFIG_BLK_DEV_IDEDISK=y | 574 | CONFIG_IDE_GD=y |
585 | # CONFIG_IDEDISK_MULTI_MODE is not set | 575 | CONFIG_IDE_GD_ATA=y |
586 | CONFIG_BLK_DEV_IDECS=m | 576 | # CONFIG_IDE_GD_ATAPI is not set |
587 | # CONFIG_BLK_DEV_DELKIN is not set | 577 | CONFIG_BLK_DEV_IDECS=y |
588 | # CONFIG_BLK_DEV_IDECD is not set | 578 | CONFIG_BLK_DEV_IDECD=y |
579 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | ||
589 | # CONFIG_BLK_DEV_IDETAPE is not set | 580 | # CONFIG_BLK_DEV_IDETAPE is not set |
590 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | 581 | CONFIG_IDE_TASK_IOCTL=y |
591 | # CONFIG_IDE_TASK_IOCTL is not set | 582 | CONFIG_IDE_PROC_FS=y |
592 | 583 | ||
593 | # | 584 | # |
594 | # IDE chipset support/bugfixes | 585 | # IDE chipset support/bugfixes |
595 | # | 586 | # |
596 | CONFIG_IDE_GENERIC=y | 587 | # CONFIG_IDE_GENERIC is not set |
588 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
589 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
590 | |||
591 | # | ||
592 | # PCI IDE chipsets support | ||
593 | # | ||
597 | CONFIG_BLK_DEV_IDEPCI=y | 594 | CONFIG_BLK_DEV_IDEPCI=y |
598 | # CONFIG_IDEPCI_SHARE_IRQ is not set | 595 | # CONFIG_IDEPCI_PCIBUS_ORDER is not set |
599 | # CONFIG_BLK_DEV_OFFBOARD is not set | 596 | # CONFIG_BLK_DEV_OFFBOARD is not set |
600 | CONFIG_BLK_DEV_GENERIC=y | 597 | # CONFIG_BLK_DEV_GENERIC is not set |
601 | # CONFIG_BLK_DEV_OPTI621 is not set | 598 | # CONFIG_BLK_DEV_OPTI621 is not set |
602 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 599 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
603 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | ||
604 | # CONFIG_IDEDMA_PCI_AUTO is not set | ||
605 | # CONFIG_BLK_DEV_AEC62XX is not set | 600 | # CONFIG_BLK_DEV_AEC62XX is not set |
606 | # CONFIG_BLK_DEV_ALI15X3 is not set | 601 | # CONFIG_BLK_DEV_ALI15X3 is not set |
607 | # CONFIG_BLK_DEV_AMD74XX is not set | 602 | # CONFIG_BLK_DEV_AMD74XX is not set |
608 | # CONFIG_BLK_DEV_CMD64X is not set | 603 | # CONFIG_BLK_DEV_CMD64X is not set |
609 | # CONFIG_BLK_DEV_TRIFLEX is not set | 604 | # CONFIG_BLK_DEV_TRIFLEX is not set |
610 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
611 | # CONFIG_BLK_DEV_CS5520 is not set | 605 | # CONFIG_BLK_DEV_CS5520 is not set |
612 | # CONFIG_BLK_DEV_CS5530 is not set | 606 | # CONFIG_BLK_DEV_CS5530 is not set |
613 | # CONFIG_BLK_DEV_HPT34X is not set | ||
614 | CONFIG_BLK_DEV_HPT366=y | 607 | CONFIG_BLK_DEV_HPT366=y |
615 | # CONFIG_BLK_DEV_JMICRON is not set | 608 | # CONFIG_BLK_DEV_JMICRON is not set |
616 | # CONFIG_BLK_DEV_SC1200 is not set | 609 | # CONFIG_BLK_DEV_SC1200 is not set |
617 | # CONFIG_BLK_DEV_PIIX is not set | 610 | # CONFIG_BLK_DEV_PIIX is not set |
618 | CONFIG_BLK_DEV_IT8213=m | 611 | # CONFIG_BLK_DEV_IT8172 is not set |
612 | # CONFIG_BLK_DEV_IT8213 is not set | ||
619 | # CONFIG_BLK_DEV_IT821X is not set | 613 | # CONFIG_BLK_DEV_IT821X is not set |
620 | # CONFIG_BLK_DEV_NS87415 is not set | 614 | # CONFIG_BLK_DEV_NS87415 is not set |
621 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 615 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
@@ -625,82 +619,65 @@ CONFIG_BLK_DEV_IT8213=m | |||
625 | # CONFIG_BLK_DEV_SLC90E66 is not set | 619 | # CONFIG_BLK_DEV_SLC90E66 is not set |
626 | # CONFIG_BLK_DEV_TRM290 is not set | 620 | # CONFIG_BLK_DEV_TRM290 is not set |
627 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 621 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
628 | CONFIG_BLK_DEV_TC86C001=m | 622 | # CONFIG_BLK_DEV_TC86C001 is not set |
629 | # CONFIG_IDE_ARM is not set | ||
630 | CONFIG_BLK_DEV_IDEDMA=y | 623 | CONFIG_BLK_DEV_IDEDMA=y |
631 | # CONFIG_IDEDMA_IVB is not set | ||
632 | # CONFIG_IDEDMA_AUTO is not set | ||
633 | # CONFIG_BLK_DEV_HD is not set | ||
634 | 624 | ||
635 | # | 625 | # |
636 | # SCSI device support | 626 | # SCSI device support |
637 | # | 627 | # |
638 | CONFIG_RAID_ATTRS=m | 628 | # CONFIG_RAID_ATTRS is not set |
639 | # CONFIG_SCSI is not set | 629 | # CONFIG_SCSI is not set |
630 | # CONFIG_SCSI_DMA is not set | ||
640 | # CONFIG_SCSI_NETLINK is not set | 631 | # CONFIG_SCSI_NETLINK is not set |
641 | |||
642 | # | ||
643 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
644 | # | ||
645 | # CONFIG_ATA is not set | 632 | # CONFIG_ATA is not set |
646 | |||
647 | # | ||
648 | # Multi-device support (RAID and LVM) | ||
649 | # | ||
650 | # CONFIG_MD is not set | 633 | # CONFIG_MD is not set |
651 | |||
652 | # | ||
653 | # Fusion MPT device support | ||
654 | # | ||
655 | # CONFIG_FUSION is not set | 634 | # CONFIG_FUSION is not set |
656 | 635 | ||
657 | # | 636 | # |
658 | # IEEE 1394 (FireWire) support | 637 | # IEEE 1394 (FireWire) support |
659 | # | 638 | # |
660 | # CONFIG_IEEE1394 is not set | ||
661 | 639 | ||
662 | # | 640 | # |
663 | # I2O device support | 641 | # You can enable one or both FireWire driver stacks. |
664 | # | 642 | # |
665 | # CONFIG_I2O is not set | ||
666 | 643 | ||
667 | # | 644 | # |
668 | # Network device support | 645 | # The newer stack is recommended. |
669 | # | 646 | # |
647 | # CONFIG_FIREWIRE is not set | ||
648 | # CONFIG_IEEE1394 is not set | ||
649 | # CONFIG_I2O is not set | ||
670 | CONFIG_NETDEVICES=y | 650 | CONFIG_NETDEVICES=y |
671 | # CONFIG_DUMMY is not set | 651 | # CONFIG_DUMMY is not set |
672 | # CONFIG_BONDING is not set | 652 | # CONFIG_BONDING is not set |
653 | # CONFIG_MACVLAN is not set | ||
673 | # CONFIG_EQUALIZER is not set | 654 | # CONFIG_EQUALIZER is not set |
674 | # CONFIG_TUN is not set | 655 | # CONFIG_TUN is not set |
675 | 656 | # CONFIG_VETH is not set | |
676 | # | ||
677 | # ARCnet devices | ||
678 | # | ||
679 | # CONFIG_ARCNET is not set | 657 | # CONFIG_ARCNET is not set |
680 | |||
681 | # | ||
682 | # PHY device support | ||
683 | # | ||
684 | CONFIG_PHYLIB=y | 658 | CONFIG_PHYLIB=y |
685 | 659 | ||
686 | # | 660 | # |
687 | # MII PHY device drivers | 661 | # MII PHY device drivers |
688 | # | 662 | # |
689 | CONFIG_MARVELL_PHY=m | 663 | CONFIG_MARVELL_PHY=y |
690 | CONFIG_DAVICOM_PHY=m | 664 | CONFIG_DAVICOM_PHY=y |
691 | CONFIG_QSEMI_PHY=m | 665 | CONFIG_QSEMI_PHY=y |
692 | CONFIG_LXT_PHY=m | 666 | CONFIG_LXT_PHY=y |
693 | CONFIG_CICADA_PHY=m | 667 | CONFIG_CICADA_PHY=y |
694 | CONFIG_VITESSE_PHY=m | 668 | CONFIG_VITESSE_PHY=y |
695 | CONFIG_SMSC_PHY=m | 669 | CONFIG_SMSC_PHY=y |
696 | # CONFIG_BROADCOM_PHY is not set | 670 | CONFIG_BROADCOM_PHY=y |
671 | CONFIG_ICPLUS_PHY=y | ||
672 | CONFIG_REALTEK_PHY=y | ||
673 | CONFIG_NATIONAL_PHY=y | ||
674 | CONFIG_STE10XP=y | ||
675 | CONFIG_LSI_ET1011C_PHY=y | ||
697 | # CONFIG_FIXED_PHY is not set | 676 | # CONFIG_FIXED_PHY is not set |
698 | 677 | # CONFIG_MDIO_BITBANG is not set | |
699 | # | ||
700 | # Ethernet (10 or 100Mbit) | ||
701 | # | ||
702 | CONFIG_NET_ETHERNET=y | 678 | CONFIG_NET_ETHERNET=y |
703 | CONFIG_MII=m | 679 | CONFIG_MII=y |
680 | # CONFIG_AX88796 is not set | ||
704 | CONFIG_MIPS_AU1X00_ENET=y | 681 | CONFIG_MIPS_AU1X00_ENET=y |
705 | # CONFIG_HAPPYMEAL is not set | 682 | # CONFIG_HAPPYMEAL is not set |
706 | # CONFIG_SUNGEM is not set | 683 | # CONFIG_SUNGEM is not set |
@@ -708,96 +685,51 @@ CONFIG_MIPS_AU1X00_ENET=y | |||
708 | # CONFIG_NET_VENDOR_3COM is not set | 685 | # CONFIG_NET_VENDOR_3COM is not set |
709 | # CONFIG_SMC91X is not set | 686 | # CONFIG_SMC91X is not set |
710 | # CONFIG_DM9000 is not set | 687 | # CONFIG_DM9000 is not set |
711 | 688 | # CONFIG_ETHOC is not set | |
712 | # | 689 | # CONFIG_SMSC911X is not set |
713 | # Tulip family network device support | 690 | # CONFIG_DNET is not set |
714 | # | ||
715 | # CONFIG_NET_TULIP is not set | 691 | # CONFIG_NET_TULIP is not set |
716 | # CONFIG_HP100 is not set | 692 | # CONFIG_HP100 is not set |
693 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
694 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
695 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
696 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
697 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
698 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
699 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
717 | # CONFIG_NET_PCI is not set | 700 | # CONFIG_NET_PCI is not set |
718 | 701 | # CONFIG_B44 is not set | |
719 | # | 702 | # CONFIG_KS8842 is not set |
720 | # Ethernet (1000 Mbit) | 703 | # CONFIG_KS8851_MLL is not set |
721 | # | 704 | # CONFIG_ATL2 is not set |
722 | # CONFIG_ACENIC is not set | 705 | # CONFIG_NETDEV_1000 is not set |
723 | # CONFIG_DL2K is not set | 706 | # CONFIG_NETDEV_10000 is not set |
724 | # CONFIG_E1000 is not set | ||
725 | # CONFIG_NS83820 is not set | ||
726 | # CONFIG_HAMACHI is not set | ||
727 | # CONFIG_YELLOWFIN is not set | ||
728 | # CONFIG_R8169 is not set | ||
729 | # CONFIG_SIS190 is not set | ||
730 | # CONFIG_SKGE is not set | ||
731 | # CONFIG_SKY2 is not set | ||
732 | # CONFIG_SK98LIN is not set | ||
733 | # CONFIG_TIGON3 is not set | ||
734 | # CONFIG_BNX2 is not set | ||
735 | CONFIG_QLA3XXX=m | ||
736 | # CONFIG_ATL1 is not set | ||
737 | |||
738 | # | ||
739 | # Ethernet (10000 Mbit) | ||
740 | # | ||
741 | # CONFIG_CHELSIO_T1 is not set | ||
742 | CONFIG_CHELSIO_T3=m | ||
743 | # CONFIG_IXGB is not set | ||
744 | # CONFIG_S2IO is not set | ||
745 | # CONFIG_MYRI10GE is not set | ||
746 | CONFIG_NETXEN_NIC=m | ||
747 | |||
748 | # | ||
749 | # Token Ring devices | ||
750 | # | ||
751 | # CONFIG_TR is not set | 707 | # CONFIG_TR is not set |
708 | # CONFIG_WLAN is not set | ||
752 | 709 | ||
753 | # | 710 | # |
754 | # Wireless LAN (non-hamradio) | 711 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
755 | # | 712 | # |
756 | # CONFIG_NET_RADIO is not set | ||
757 | 713 | ||
758 | # | 714 | # |
759 | # PCMCIA network device support | 715 | # USB Network Adapters |
760 | # | ||
761 | CONFIG_NET_PCMCIA=y | ||
762 | CONFIG_PCMCIA_3C589=m | ||
763 | CONFIG_PCMCIA_3C574=m | ||
764 | CONFIG_PCMCIA_FMVJ18X=m | ||
765 | CONFIG_PCMCIA_PCNET=m | ||
766 | CONFIG_PCMCIA_NMCLAN=m | ||
767 | CONFIG_PCMCIA_SMC91C92=m | ||
768 | CONFIG_PCMCIA_XIRC2PS=m | ||
769 | CONFIG_PCMCIA_AXNET=m | ||
770 | |||
771 | # | ||
772 | # Wan interfaces | ||
773 | # | 716 | # |
717 | # CONFIG_USB_CATC is not set | ||
718 | # CONFIG_USB_KAWETH is not set | ||
719 | # CONFIG_USB_PEGASUS is not set | ||
720 | # CONFIG_USB_RTL8150 is not set | ||
721 | # CONFIG_USB_USBNET is not set | ||
722 | # CONFIG_NET_PCMCIA is not set | ||
774 | # CONFIG_WAN is not set | 723 | # CONFIG_WAN is not set |
775 | # CONFIG_FDDI is not set | 724 | # CONFIG_FDDI is not set |
776 | # CONFIG_HIPPI is not set | 725 | # CONFIG_HIPPI is not set |
777 | CONFIG_PPP=m | 726 | # CONFIG_PPP is not set |
778 | CONFIG_PPP_MULTILINK=y | ||
779 | # CONFIG_PPP_FILTER is not set | ||
780 | CONFIG_PPP_ASYNC=m | ||
781 | # CONFIG_PPP_SYNC_TTY is not set | ||
782 | CONFIG_PPP_DEFLATE=m | ||
783 | # CONFIG_PPP_BSDCOMP is not set | ||
784 | CONFIG_PPP_MPPE=m | ||
785 | CONFIG_PPPOE=m | ||
786 | # CONFIG_SLIP is not set | 727 | # CONFIG_SLIP is not set |
787 | CONFIG_SLHC=m | ||
788 | # CONFIG_SHAPER is not set | ||
789 | # CONFIG_NETCONSOLE is not set | 728 | # CONFIG_NETCONSOLE is not set |
790 | # CONFIG_NETPOLL is not set | 729 | # CONFIG_NETPOLL is not set |
791 | # CONFIG_NET_POLL_CONTROLLER is not set | 730 | # CONFIG_NET_POLL_CONTROLLER is not set |
792 | 731 | # CONFIG_VMXNET3 is not set | |
793 | # | ||
794 | # ISDN subsystem | ||
795 | # | ||
796 | # CONFIG_ISDN is not set | 732 | # CONFIG_ISDN is not set |
797 | |||
798 | # | ||
799 | # Telephony Support | ||
800 | # | ||
801 | # CONFIG_PHONE is not set | 733 | # CONFIG_PHONE is not set |
802 | 734 | ||
803 | # | 735 | # |
@@ -805,16 +737,14 @@ CONFIG_SLHC=m | |||
805 | # | 737 | # |
806 | CONFIG_INPUT=y | 738 | CONFIG_INPUT=y |
807 | # CONFIG_INPUT_FF_MEMLESS is not set | 739 | # CONFIG_INPUT_FF_MEMLESS is not set |
740 | # CONFIG_INPUT_POLLDEV is not set | ||
741 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
808 | 742 | ||
809 | # | 743 | # |
810 | # Userland interfaces | 744 | # Userland interfaces |
811 | # | 745 | # |
812 | CONFIG_INPUT_MOUSEDEV=y | 746 | # CONFIG_INPUT_MOUSEDEV is not set |
813 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
814 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
815 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
816 | # CONFIG_INPUT_JOYDEV is not set | 747 | # CONFIG_INPUT_JOYDEV is not set |
817 | # CONFIG_INPUT_TSDEV is not set | ||
818 | CONFIG_INPUT_EVDEV=y | 748 | CONFIG_INPUT_EVDEV=y |
819 | # CONFIG_INPUT_EVBUG is not set | 749 | # CONFIG_INPUT_EVBUG is not set |
820 | 750 | ||
@@ -824,33 +754,34 @@ CONFIG_INPUT_EVDEV=y | |||
824 | # CONFIG_INPUT_KEYBOARD is not set | 754 | # CONFIG_INPUT_KEYBOARD is not set |
825 | # CONFIG_INPUT_MOUSE is not set | 755 | # CONFIG_INPUT_MOUSE is not set |
826 | # CONFIG_INPUT_JOYSTICK is not set | 756 | # CONFIG_INPUT_JOYSTICK is not set |
757 | # CONFIG_INPUT_TABLET is not set | ||
827 | # CONFIG_INPUT_TOUCHSCREEN is not set | 758 | # CONFIG_INPUT_TOUCHSCREEN is not set |
828 | # CONFIG_INPUT_MISC is not set | 759 | # CONFIG_INPUT_MISC is not set |
829 | 760 | ||
830 | # | 761 | # |
831 | # Hardware I/O ports | 762 | # Hardware I/O ports |
832 | # | 763 | # |
833 | CONFIG_SERIO=y | 764 | # CONFIG_SERIO is not set |
834 | # CONFIG_SERIO_I8042 is not set | ||
835 | CONFIG_SERIO_SERPORT=y | ||
836 | # CONFIG_SERIO_PCIPS2 is not set | ||
837 | # CONFIG_SERIO_LIBPS2 is not set | ||
838 | CONFIG_SERIO_RAW=m | ||
839 | # CONFIG_GAMEPORT is not set | 765 | # CONFIG_GAMEPORT is not set |
840 | 766 | ||
841 | # | 767 | # |
842 | # Character devices | 768 | # Character devices |
843 | # | 769 | # |
844 | # CONFIG_VT is not set | 770 | CONFIG_VT=y |
771 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
772 | CONFIG_VT_CONSOLE=y | ||
773 | CONFIG_HW_CONSOLE=y | ||
774 | CONFIG_VT_HW_CONSOLE_BINDING=y | ||
775 | CONFIG_DEVKMEM=y | ||
845 | # CONFIG_SERIAL_NONSTANDARD is not set | 776 | # CONFIG_SERIAL_NONSTANDARD is not set |
846 | # CONFIG_AU1X00_GPIO is not set | 777 | # CONFIG_NOZOMI is not set |
847 | 778 | ||
848 | # | 779 | # |
849 | # Serial drivers | 780 | # Serial drivers |
850 | # | 781 | # |
851 | CONFIG_SERIAL_8250=y | 782 | CONFIG_SERIAL_8250=y |
852 | CONFIG_SERIAL_8250_CONSOLE=y | 783 | CONFIG_SERIAL_8250_CONSOLE=y |
853 | CONFIG_SERIAL_8250_PCI=y | 784 | # CONFIG_SERIAL_8250_PCI is not set |
854 | # CONFIG_SERIAL_8250_CS is not set | 785 | # CONFIG_SERIAL_8250_CS is not set |
855 | CONFIG_SERIAL_8250_NR_UARTS=4 | 786 | CONFIG_SERIAL_8250_NR_UARTS=4 |
856 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 787 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
@@ -864,282 +795,450 @@ CONFIG_SERIAL_CORE=y | |||
864 | CONFIG_SERIAL_CORE_CONSOLE=y | 795 | CONFIG_SERIAL_CORE_CONSOLE=y |
865 | # CONFIG_SERIAL_JSM is not set | 796 | # CONFIG_SERIAL_JSM is not set |
866 | CONFIG_UNIX98_PTYS=y | 797 | CONFIG_UNIX98_PTYS=y |
867 | CONFIG_LEGACY_PTYS=y | 798 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
868 | CONFIG_LEGACY_PTY_COUNT=256 | 799 | # CONFIG_LEGACY_PTYS is not set |
869 | |||
870 | # | ||
871 | # IPMI | ||
872 | # | ||
873 | # CONFIG_IPMI_HANDLER is not set | 800 | # CONFIG_IPMI_HANDLER is not set |
874 | |||
875 | # | ||
876 | # Watchdog Cards | ||
877 | # | ||
878 | # CONFIG_WATCHDOG is not set | ||
879 | # CONFIG_HW_RANDOM is not set | 801 | # CONFIG_HW_RANDOM is not set |
880 | # CONFIG_RTC is not set | ||
881 | # CONFIG_GEN_RTC is not set | ||
882 | # CONFIG_DTLK is not set | ||
883 | # CONFIG_R3964 is not set | 802 | # CONFIG_R3964 is not set |
884 | # CONFIG_APPLICOM is not set | 803 | # CONFIG_APPLICOM is not set |
885 | # CONFIG_DRM is not set | ||
886 | 804 | ||
887 | # | 805 | # |
888 | # PCMCIA character devices | 806 | # PCMCIA character devices |
889 | # | 807 | # |
890 | CONFIG_SYNCLINK_CS=m | 808 | # CONFIG_SYNCLINK_CS is not set |
891 | # CONFIG_CARDMAN_4000 is not set | 809 | # CONFIG_CARDMAN_4000 is not set |
892 | # CONFIG_CARDMAN_4040 is not set | 810 | # CONFIG_CARDMAN_4040 is not set |
811 | # CONFIG_IPWIRELESS is not set | ||
893 | # CONFIG_RAW_DRIVER is not set | 812 | # CONFIG_RAW_DRIVER is not set |
894 | |||
895 | # | ||
896 | # TPM devices | ||
897 | # | ||
898 | # CONFIG_TCG_TPM is not set | 813 | # CONFIG_TCG_TPM is not set |
899 | 814 | CONFIG_DEVPORT=y | |
900 | # | ||
901 | # I2C support | ||
902 | # | ||
903 | # CONFIG_I2C is not set | 815 | # CONFIG_I2C is not set |
904 | |||
905 | # | ||
906 | # SPI support | ||
907 | # | ||
908 | # CONFIG_SPI is not set | 816 | # CONFIG_SPI is not set |
909 | # CONFIG_SPI_MASTER is not set | ||
910 | 817 | ||
911 | # | 818 | # |
912 | # Dallas's 1-wire bus | 819 | # PPS support |
913 | # | 820 | # |
821 | # CONFIG_PPS is not set | ||
822 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
823 | # CONFIG_GPIOLIB is not set | ||
914 | # CONFIG_W1 is not set | 824 | # CONFIG_W1 is not set |
915 | 825 | # CONFIG_POWER_SUPPLY is not set | |
916 | # | ||
917 | # Hardware Monitoring support | ||
918 | # | ||
919 | # CONFIG_HWMON is not set | 826 | # CONFIG_HWMON is not set |
920 | # CONFIG_HWMON_VID is not set | 827 | # CONFIG_THERMAL is not set |
828 | # CONFIG_WATCHDOG is not set | ||
829 | CONFIG_SSB_POSSIBLE=y | ||
921 | 830 | ||
922 | # | 831 | # |
923 | # Multimedia devices | 832 | # Sonics Silicon Backplane |
924 | # | 833 | # |
925 | # CONFIG_VIDEO_DEV is not set | 834 | # CONFIG_SSB is not set |
926 | 835 | ||
927 | # | 836 | # |
928 | # Digital Video Broadcasting Devices | 837 | # Multifunction device drivers |
929 | # | 838 | # |
930 | # CONFIG_DVB is not set | 839 | # CONFIG_MFD_CORE is not set |
840 | # CONFIG_MFD_SM501 is not set | ||
841 | # CONFIG_HTC_PASIC3 is not set | ||
842 | # CONFIG_MFD_TMIO is not set | ||
843 | # CONFIG_REGULATOR is not set | ||
844 | # CONFIG_MEDIA_SUPPORT is not set | ||
931 | 845 | ||
932 | # | 846 | # |
933 | # Graphics support | 847 | # Graphics support |
934 | # | 848 | # |
935 | # CONFIG_FIRMWARE_EDID is not set | 849 | # CONFIG_VGA_ARB is not set |
936 | # CONFIG_FB is not set | 850 | # CONFIG_DRM is not set |
851 | # CONFIG_VGASTATE is not set | ||
852 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
853 | CONFIG_FB=y | ||
854 | CONFIG_FIRMWARE_EDID=y | ||
855 | # CONFIG_FB_DDC is not set | ||
856 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
857 | CONFIG_FB_CFB_FILLRECT=y | ||
858 | CONFIG_FB_CFB_COPYAREA=y | ||
859 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
860 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
861 | # CONFIG_FB_SYS_FILLRECT is not set | ||
862 | # CONFIG_FB_SYS_COPYAREA is not set | ||
863 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
864 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
865 | # CONFIG_FB_SYS_FOPS is not set | ||
866 | # CONFIG_FB_SVGALIB is not set | ||
867 | # CONFIG_FB_MACMODES is not set | ||
868 | # CONFIG_FB_BACKLIGHT is not set | ||
869 | CONFIG_FB_MODE_HELPERS=y | ||
870 | CONFIG_FB_TILEBLITTING=y | ||
871 | |||
872 | # | ||
873 | # Frame buffer hardware drivers | ||
874 | # | ||
875 | # CONFIG_FB_CIRRUS is not set | ||
876 | # CONFIG_FB_PM2 is not set | ||
877 | # CONFIG_FB_CYBER2000 is not set | ||
878 | # CONFIG_FB_ASILIANT is not set | ||
879 | # CONFIG_FB_IMSTT is not set | ||
880 | CONFIG_FB_S1D13XXX=y | ||
881 | # CONFIG_FB_NVIDIA is not set | ||
882 | # CONFIG_FB_RIVA is not set | ||
883 | # CONFIG_FB_MATROX is not set | ||
884 | # CONFIG_FB_RADEON is not set | ||
885 | # CONFIG_FB_ATY128 is not set | ||
886 | # CONFIG_FB_ATY is not set | ||
887 | # CONFIG_FB_S3 is not set | ||
888 | # CONFIG_FB_SAVAGE is not set | ||
889 | # CONFIG_FB_SIS is not set | ||
890 | # CONFIG_FB_VIA is not set | ||
891 | # CONFIG_FB_NEOMAGIC is not set | ||
892 | # CONFIG_FB_KYRO is not set | ||
893 | # CONFIG_FB_3DFX is not set | ||
894 | # CONFIG_FB_VOODOO1 is not set | ||
895 | # CONFIG_FB_VT8623 is not set | ||
896 | # CONFIG_FB_TRIDENT is not set | ||
897 | # CONFIG_FB_ARK is not set | ||
898 | # CONFIG_FB_PM3 is not set | ||
899 | # CONFIG_FB_CARMINE is not set | ||
900 | # CONFIG_FB_VIRTUAL is not set | ||
901 | # CONFIG_FB_METRONOME is not set | ||
902 | # CONFIG_FB_MB862XX is not set | ||
903 | # CONFIG_FB_BROADSHEET is not set | ||
937 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 904 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
938 | 905 | ||
939 | # | 906 | # |
940 | # Sound | 907 | # Display device support |
941 | # | 908 | # |
942 | # CONFIG_SOUND is not set | 909 | # CONFIG_DISPLAY_SUPPORT is not set |
943 | |||
944 | # | ||
945 | # HID Devices | ||
946 | # | ||
947 | # CONFIG_HID is not set | ||
948 | 910 | ||
949 | # | 911 | # |
950 | # USB support | 912 | # Console display driver support |
951 | # | 913 | # |
914 | CONFIG_VGA_CONSOLE=y | ||
915 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set | ||
916 | CONFIG_DUMMY_CONSOLE=y | ||
917 | # CONFIG_FRAMEBUFFER_CONSOLE is not set | ||
918 | # CONFIG_LOGO is not set | ||
919 | # CONFIG_SOUND is not set | ||
920 | CONFIG_HID_SUPPORT=y | ||
921 | CONFIG_HID=y | ||
922 | # CONFIG_HIDRAW is not set | ||
923 | |||
924 | # | ||
925 | # USB Input Devices | ||
926 | # | ||
927 | CONFIG_USB_HID=y | ||
928 | # CONFIG_HID_PID is not set | ||
929 | CONFIG_USB_HIDDEV=y | ||
930 | |||
931 | # | ||
932 | # Special HID drivers | ||
933 | # | ||
934 | # CONFIG_HID_A4TECH is not set | ||
935 | # CONFIG_HID_APPLE is not set | ||
936 | # CONFIG_HID_BELKIN is not set | ||
937 | # CONFIG_HID_CHERRY is not set | ||
938 | # CONFIG_HID_CHICONY is not set | ||
939 | # CONFIG_HID_CYPRESS is not set | ||
940 | # CONFIG_HID_DRAGONRISE is not set | ||
941 | # CONFIG_HID_EZKEY is not set | ||
942 | # CONFIG_HID_KYE is not set | ||
943 | # CONFIG_HID_GYRATION is not set | ||
944 | # CONFIG_HID_TWINHAN is not set | ||
945 | # CONFIG_HID_KENSINGTON is not set | ||
946 | # CONFIG_HID_LOGITECH is not set | ||
947 | # CONFIG_HID_MICROSOFT is not set | ||
948 | # CONFIG_HID_MONTEREY is not set | ||
949 | # CONFIG_HID_NTRIG is not set | ||
950 | # CONFIG_HID_PANTHERLORD is not set | ||
951 | # CONFIG_HID_PETALYNX is not set | ||
952 | # CONFIG_HID_SAMSUNG is not set | ||
953 | # CONFIG_HID_SONY is not set | ||
954 | # CONFIG_HID_SUNPLUS is not set | ||
955 | # CONFIG_HID_GREENASIA is not set | ||
956 | # CONFIG_HID_SMARTJOYPLUS is not set | ||
957 | # CONFIG_HID_TOPSEED is not set | ||
958 | # CONFIG_HID_THRUSTMASTER is not set | ||
959 | # CONFIG_HID_ZEROPLUS is not set | ||
960 | CONFIG_USB_SUPPORT=y | ||
952 | CONFIG_USB_ARCH_HAS_HCD=y | 961 | CONFIG_USB_ARCH_HAS_HCD=y |
953 | CONFIG_USB_ARCH_HAS_OHCI=y | 962 | CONFIG_USB_ARCH_HAS_OHCI=y |
954 | CONFIG_USB_ARCH_HAS_EHCI=y | 963 | CONFIG_USB_ARCH_HAS_EHCI=y |
955 | # CONFIG_USB is not set | 964 | CONFIG_USB=y |
965 | # CONFIG_USB_DEBUG is not set | ||
966 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
956 | 967 | ||
957 | # | 968 | # |
958 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 969 | # Miscellaneous USB options |
959 | # | 970 | # |
971 | # CONFIG_USB_DEVICEFS is not set | ||
972 | # CONFIG_USB_DEVICE_CLASS is not set | ||
973 | CONFIG_USB_DYNAMIC_MINORS=y | ||
974 | # CONFIG_USB_SUSPEND is not set | ||
975 | # CONFIG_USB_OTG is not set | ||
976 | CONFIG_USB_OTG_WHITELIST=y | ||
977 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
978 | # CONFIG_USB_MON is not set | ||
979 | # CONFIG_USB_WUSB is not set | ||
980 | # CONFIG_USB_WUSB_CBAF is not set | ||
960 | 981 | ||
961 | # | 982 | # |
962 | # USB Gadget Support | 983 | # USB Host Controller Drivers |
963 | # | 984 | # |
964 | # CONFIG_USB_GADGET is not set | 985 | # CONFIG_USB_C67X00_HCD is not set |
986 | # CONFIG_USB_XHCI_HCD is not set | ||
987 | # CONFIG_USB_EHCI_HCD is not set | ||
988 | # CONFIG_USB_OXU210HP_HCD is not set | ||
989 | # CONFIG_USB_ISP116X_HCD is not set | ||
990 | # CONFIG_USB_ISP1760_HCD is not set | ||
991 | # CONFIG_USB_ISP1362_HCD is not set | ||
992 | CONFIG_USB_OHCI_HCD=y | ||
993 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
994 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
995 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
996 | # CONFIG_USB_UHCI_HCD is not set | ||
997 | # CONFIG_USB_SL811_HCD is not set | ||
998 | # CONFIG_USB_R8A66597_HCD is not set | ||
999 | # CONFIG_USB_WHCI_HCD is not set | ||
1000 | # CONFIG_USB_HWA_HCD is not set | ||
965 | 1001 | ||
966 | # | 1002 | # |
967 | # MMC/SD Card support | 1003 | # USB Device Class drivers |
968 | # | 1004 | # |
969 | # CONFIG_MMC is not set | 1005 | # CONFIG_USB_ACM is not set |
1006 | # CONFIG_USB_PRINTER is not set | ||
1007 | # CONFIG_USB_WDM is not set | ||
1008 | # CONFIG_USB_TMC is not set | ||
970 | 1009 | ||
971 | # | 1010 | # |
972 | # LED devices | 1011 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
973 | # | 1012 | # |
974 | # CONFIG_NEW_LEDS is not set | ||
975 | 1013 | ||
976 | # | 1014 | # |
977 | # LED drivers | 1015 | # also be needed; see USB_STORAGE Help for more info |
978 | # | 1016 | # |
1017 | # CONFIG_USB_LIBUSUAL is not set | ||
979 | 1018 | ||
980 | # | 1019 | # |
981 | # LED Triggers | 1020 | # USB Imaging devices |
982 | # | 1021 | # |
1022 | # CONFIG_USB_MDC800 is not set | ||
983 | 1023 | ||
984 | # | 1024 | # |
985 | # InfiniBand support | 1025 | # USB port drivers |
986 | # | 1026 | # |
987 | # CONFIG_INFINIBAND is not set | 1027 | # CONFIG_USB_SERIAL is not set |
988 | 1028 | ||
989 | # | 1029 | # |
990 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 1030 | # USB Miscellaneous drivers |
991 | # | 1031 | # |
1032 | # CONFIG_USB_EMI62 is not set | ||
1033 | # CONFIG_USB_EMI26 is not set | ||
1034 | # CONFIG_USB_ADUTUX is not set | ||
1035 | # CONFIG_USB_SEVSEG is not set | ||
1036 | # CONFIG_USB_RIO500 is not set | ||
1037 | # CONFIG_USB_LEGOTOWER is not set | ||
1038 | # CONFIG_USB_LCD is not set | ||
1039 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1040 | # CONFIG_USB_LED is not set | ||
1041 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1042 | # CONFIG_USB_CYTHERM is not set | ||
1043 | # CONFIG_USB_IDMOUSE is not set | ||
1044 | # CONFIG_USB_FTDI_ELAN is not set | ||
1045 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1046 | # CONFIG_USB_LD is not set | ||
1047 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1048 | # CONFIG_USB_IOWARRIOR is not set | ||
1049 | # CONFIG_USB_TEST is not set | ||
1050 | # CONFIG_USB_ISIGHTFW is not set | ||
1051 | # CONFIG_USB_VST is not set | ||
1052 | # CONFIG_USB_GADGET is not set | ||
992 | 1053 | ||
993 | # | 1054 | # |
994 | # Real Time Clock | 1055 | # OTG and related infrastructure |
995 | # | 1056 | # |
996 | # CONFIG_RTC_CLASS is not set | 1057 | # CONFIG_USB_GPIO_VBUS is not set |
1058 | # CONFIG_NOP_USB_XCEIV is not set | ||
1059 | # CONFIG_UWB is not set | ||
1060 | # CONFIG_MMC is not set | ||
1061 | # CONFIG_MEMSTICK is not set | ||
1062 | # CONFIG_NEW_LEDS is not set | ||
1063 | # CONFIG_ACCESSIBILITY is not set | ||
1064 | # CONFIG_INFINIBAND is not set | ||
1065 | CONFIG_RTC_LIB=y | ||
1066 | CONFIG_RTC_CLASS=y | ||
1067 | CONFIG_RTC_HCTOSYS=y | ||
1068 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1069 | # CONFIG_RTC_DEBUG is not set | ||
997 | 1070 | ||
998 | # | 1071 | # |
999 | # DMA Engine support | 1072 | # RTC interfaces |
1000 | # | 1073 | # |
1001 | # CONFIG_DMA_ENGINE is not set | 1074 | CONFIG_RTC_INTF_SYSFS=y |
1075 | CONFIG_RTC_INTF_PROC=y | ||
1076 | CONFIG_RTC_INTF_DEV=y | ||
1077 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1078 | # CONFIG_RTC_DRV_TEST is not set | ||
1002 | 1079 | ||
1003 | # | 1080 | # |
1004 | # DMA Clients | 1081 | # SPI RTC drivers |
1005 | # | 1082 | # |
1006 | 1083 | ||
1007 | # | 1084 | # |
1008 | # DMA Devices | 1085 | # Platform RTC drivers |
1009 | # | 1086 | # |
1087 | # CONFIG_RTC_DRV_CMOS is not set | ||
1088 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1089 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1090 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1091 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1092 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1093 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1094 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1095 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1096 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
1097 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1098 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
1099 | # CONFIG_RTC_DRV_V3020 is not set | ||
1010 | 1100 | ||
1011 | # | 1101 | # |
1012 | # Auxiliary Display support | 1102 | # on-CPU RTC drivers |
1013 | # | 1103 | # |
1104 | CONFIG_RTC_DRV_AU1XXX=y | ||
1105 | # CONFIG_DMADEVICES is not set | ||
1106 | # CONFIG_AUXDISPLAY is not set | ||
1107 | # CONFIG_UIO is not set | ||
1014 | 1108 | ||
1015 | # | 1109 | # |
1016 | # Virtualization | 1110 | # TI VLYNQ |
1017 | # | 1111 | # |
1112 | # CONFIG_STAGING is not set | ||
1018 | 1113 | ||
1019 | # | 1114 | # |
1020 | # File systems | 1115 | # File systems |
1021 | # | 1116 | # |
1022 | CONFIG_EXT2_FS=y | 1117 | CONFIG_EXT2_FS=y |
1023 | CONFIG_EXT2_FS_XATTR=y | 1118 | # CONFIG_EXT2_FS_XATTR is not set |
1024 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
1025 | # CONFIG_EXT2_FS_SECURITY is not set | ||
1026 | # CONFIG_EXT2_FS_XIP is not set | 1119 | # CONFIG_EXT2_FS_XIP is not set |
1027 | CONFIG_EXT3_FS=y | 1120 | # CONFIG_EXT3_FS is not set |
1028 | CONFIG_EXT3_FS_XATTR=y | 1121 | # CONFIG_EXT4_FS is not set |
1029 | CONFIG_EXT3_FS_POSIX_ACL=y | 1122 | # CONFIG_REISERFS_FS is not set |
1030 | CONFIG_EXT3_FS_SECURITY=y | ||
1031 | # CONFIG_EXT4DEV_FS is not set | ||
1032 | CONFIG_JBD=y | ||
1033 | # CONFIG_JBD_DEBUG is not set | ||
1034 | CONFIG_FS_MBCACHE=y | ||
1035 | CONFIG_REISERFS_FS=m | ||
1036 | # CONFIG_REISERFS_CHECK is not set | ||
1037 | # CONFIG_REISERFS_PROC_INFO is not set | ||
1038 | CONFIG_REISERFS_FS_XATTR=y | ||
1039 | CONFIG_REISERFS_FS_POSIX_ACL=y | ||
1040 | CONFIG_REISERFS_FS_SECURITY=y | ||
1041 | # CONFIG_JFS_FS is not set | 1123 | # CONFIG_JFS_FS is not set |
1042 | CONFIG_FS_POSIX_ACL=y | 1124 | # CONFIG_FS_POSIX_ACL is not set |
1043 | # CONFIG_XFS_FS is not set | 1125 | # CONFIG_XFS_FS is not set |
1044 | # CONFIG_GFS2_FS is not set | 1126 | # CONFIG_GFS2_FS is not set |
1045 | # CONFIG_OCFS2_FS is not set | 1127 | # CONFIG_OCFS2_FS is not set |
1046 | # CONFIG_MINIX_FS is not set | 1128 | # CONFIG_BTRFS_FS is not set |
1047 | # CONFIG_ROMFS_FS is not set | 1129 | # CONFIG_NILFS2_FS is not set |
1130 | CONFIG_FILE_LOCKING=y | ||
1131 | CONFIG_FSNOTIFY=y | ||
1132 | CONFIG_DNOTIFY=y | ||
1048 | CONFIG_INOTIFY=y | 1133 | CONFIG_INOTIFY=y |
1049 | CONFIG_INOTIFY_USER=y | 1134 | CONFIG_INOTIFY_USER=y |
1050 | # CONFIG_QUOTA is not set | 1135 | # CONFIG_QUOTA is not set |
1051 | CONFIG_DNOTIFY=y | 1136 | # CONFIG_AUTOFS_FS is not set |
1052 | CONFIG_AUTOFS_FS=m | 1137 | # CONFIG_AUTOFS4_FS is not set |
1053 | CONFIG_AUTOFS4_FS=m | 1138 | # CONFIG_FUSE_FS is not set |
1054 | CONFIG_FUSE_FS=m | 1139 | |
1055 | CONFIG_GENERIC_ACL=y | 1140 | # |
1141 | # Caches | ||
1142 | # | ||
1143 | # CONFIG_FSCACHE is not set | ||
1056 | 1144 | ||
1057 | # | 1145 | # |
1058 | # CD-ROM/DVD Filesystems | 1146 | # CD-ROM/DVD Filesystems |
1059 | # | 1147 | # |
1060 | # CONFIG_ISO9660_FS is not set | 1148 | CONFIG_ISO9660_FS=y |
1061 | # CONFIG_UDF_FS is not set | 1149 | CONFIG_JOLIET=y |
1150 | CONFIG_ZISOFS=y | ||
1151 | CONFIG_UDF_FS=y | ||
1152 | CONFIG_UDF_NLS=y | ||
1062 | 1153 | ||
1063 | # | 1154 | # |
1064 | # DOS/FAT/NT Filesystems | 1155 | # DOS/FAT/NT Filesystems |
1065 | # | 1156 | # |
1157 | CONFIG_FAT_FS=y | ||
1066 | # CONFIG_MSDOS_FS is not set | 1158 | # CONFIG_MSDOS_FS is not set |
1067 | # CONFIG_VFAT_FS is not set | 1159 | CONFIG_VFAT_FS=y |
1160 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
1161 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
1068 | # CONFIG_NTFS_FS is not set | 1162 | # CONFIG_NTFS_FS is not set |
1069 | 1163 | ||
1070 | # | 1164 | # |
1071 | # Pseudo filesystems | 1165 | # Pseudo filesystems |
1072 | # | 1166 | # |
1073 | CONFIG_PROC_FS=y | 1167 | CONFIG_PROC_FS=y |
1074 | CONFIG_PROC_KCORE=y | 1168 | # CONFIG_PROC_KCORE is not set |
1075 | CONFIG_PROC_SYSCTL=y | 1169 | CONFIG_PROC_SYSCTL=y |
1170 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
1076 | CONFIG_SYSFS=y | 1171 | CONFIG_SYSFS=y |
1077 | CONFIG_TMPFS=y | 1172 | CONFIG_TMPFS=y |
1078 | CONFIG_TMPFS_POSIX_ACL=y | 1173 | # CONFIG_TMPFS_POSIX_ACL is not set |
1079 | # CONFIG_HUGETLB_PAGE is not set | 1174 | # CONFIG_HUGETLB_PAGE is not set |
1080 | CONFIG_RAMFS=y | 1175 | # CONFIG_CONFIGFS_FS is not set |
1081 | CONFIG_CONFIGFS_FS=m | 1176 | CONFIG_MISC_FILESYSTEMS=y |
1082 | |||
1083 | # | ||
1084 | # Miscellaneous filesystems | ||
1085 | # | ||
1086 | # CONFIG_ADFS_FS is not set | 1177 | # CONFIG_ADFS_FS is not set |
1087 | # CONFIG_AFFS_FS is not set | 1178 | # CONFIG_AFFS_FS is not set |
1088 | # CONFIG_ECRYPT_FS is not set | ||
1089 | # CONFIG_HFS_FS is not set | 1179 | # CONFIG_HFS_FS is not set |
1090 | # CONFIG_HFSPLUS_FS is not set | 1180 | # CONFIG_HFSPLUS_FS is not set |
1091 | # CONFIG_BEFS_FS is not set | 1181 | # CONFIG_BEFS_FS is not set |
1092 | # CONFIG_BFS_FS is not set | 1182 | # CONFIG_BFS_FS is not set |
1093 | # CONFIG_EFS_FS is not set | 1183 | # CONFIG_EFS_FS is not set |
1094 | # CONFIG_JFFS2_FS is not set | 1184 | CONFIG_JFFS2_FS=y |
1095 | CONFIG_CRAMFS=m | 1185 | CONFIG_JFFS2_FS_DEBUG=0 |
1186 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1187 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1188 | CONFIG_JFFS2_SUMMARY=y | ||
1189 | # CONFIG_JFFS2_FS_XATTR is not set | ||
1190 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1191 | CONFIG_JFFS2_ZLIB=y | ||
1192 | CONFIG_JFFS2_LZO=y | ||
1193 | CONFIG_JFFS2_RTIME=y | ||
1194 | CONFIG_JFFS2_RUBIN=y | ||
1195 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1196 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1197 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1198 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1199 | # CONFIG_CRAMFS is not set | ||
1200 | CONFIG_SQUASHFS=y | ||
1201 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1202 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
1096 | # CONFIG_VXFS_FS is not set | 1203 | # CONFIG_VXFS_FS is not set |
1204 | # CONFIG_MINIX_FS is not set | ||
1205 | # CONFIG_OMFS_FS is not set | ||
1097 | # CONFIG_HPFS_FS is not set | 1206 | # CONFIG_HPFS_FS is not set |
1098 | # CONFIG_QNX4FS_FS is not set | 1207 | # CONFIG_QNX4FS_FS is not set |
1208 | # CONFIG_ROMFS_FS is not set | ||
1099 | # CONFIG_SYSV_FS is not set | 1209 | # CONFIG_SYSV_FS is not set |
1100 | # CONFIG_UFS_FS is not set | 1210 | # CONFIG_UFS_FS is not set |
1101 | 1211 | CONFIG_NETWORK_FILESYSTEMS=y | |
1102 | # | ||
1103 | # Network File Systems | ||
1104 | # | ||
1105 | CONFIG_NFS_FS=y | 1212 | CONFIG_NFS_FS=y |
1106 | # CONFIG_NFS_V3 is not set | 1213 | CONFIG_NFS_V3=y |
1214 | # CONFIG_NFS_V3_ACL is not set | ||
1107 | # CONFIG_NFS_V4 is not set | 1215 | # CONFIG_NFS_V4 is not set |
1108 | # CONFIG_NFS_DIRECTIO is not set | ||
1109 | CONFIG_NFSD=m | ||
1110 | # CONFIG_NFSD_V3 is not set | ||
1111 | # CONFIG_NFSD_TCP is not set | ||
1112 | CONFIG_ROOT_NFS=y | 1216 | CONFIG_ROOT_NFS=y |
1217 | # CONFIG_NFSD is not set | ||
1113 | CONFIG_LOCKD=y | 1218 | CONFIG_LOCKD=y |
1114 | CONFIG_EXPORTFS=m | 1219 | CONFIG_LOCKD_V4=y |
1115 | CONFIG_NFS_COMMON=y | 1220 | CONFIG_NFS_COMMON=y |
1116 | CONFIG_SUNRPC=y | 1221 | CONFIG_SUNRPC=y |
1117 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1222 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1118 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1223 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1119 | CONFIG_SMB_FS=m | 1224 | # CONFIG_SMB_FS is not set |
1120 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1121 | # CONFIG_CIFS is not set | 1225 | # CONFIG_CIFS is not set |
1122 | # CONFIG_NCP_FS is not set | 1226 | # CONFIG_NCP_FS is not set |
1123 | # CONFIG_CODA_FS is not set | 1227 | # CONFIG_CODA_FS is not set |
1124 | # CONFIG_AFS_FS is not set | 1228 | # CONFIG_AFS_FS is not set |
1125 | # CONFIG_9P_FS is not set | ||
1126 | 1229 | ||
1127 | # | 1230 | # |
1128 | # Partition Types | 1231 | # Partition Types |
1129 | # | 1232 | # |
1130 | # CONFIG_PARTITION_ADVANCED is not set | 1233 | # CONFIG_PARTITION_ADVANCED is not set |
1131 | CONFIG_MSDOS_PARTITION=y | 1234 | CONFIG_MSDOS_PARTITION=y |
1132 | 1235 | CONFIG_NLS=y | |
1133 | # | ||
1134 | # Native Language Support | ||
1135 | # | ||
1136 | CONFIG_NLS=m | ||
1137 | CONFIG_NLS_DEFAULT="iso8859-1" | 1236 | CONFIG_NLS_DEFAULT="iso8859-1" |
1138 | # CONFIG_NLS_CODEPAGE_437 is not set | 1237 | CONFIG_NLS_CODEPAGE_437=y |
1139 | # CONFIG_NLS_CODEPAGE_737 is not set | 1238 | # CONFIG_NLS_CODEPAGE_737 is not set |
1140 | # CONFIG_NLS_CODEPAGE_775 is not set | 1239 | # CONFIG_NLS_CODEPAGE_775 is not set |
1141 | # CONFIG_NLS_CODEPAGE_850 is not set | 1240 | CONFIG_NLS_CODEPAGE_850=y |
1142 | # CONFIG_NLS_CODEPAGE_852 is not set | 1241 | CONFIG_NLS_CODEPAGE_852=y |
1143 | # CONFIG_NLS_CODEPAGE_855 is not set | 1242 | # CONFIG_NLS_CODEPAGE_855 is not set |
1144 | # CONFIG_NLS_CODEPAGE_857 is not set | 1243 | # CONFIG_NLS_CODEPAGE_857 is not set |
1145 | # CONFIG_NLS_CODEPAGE_860 is not set | 1244 | # CONFIG_NLS_CODEPAGE_860 is not set |
@@ -1156,10 +1255,10 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1156 | # CONFIG_NLS_CODEPAGE_949 is not set | 1255 | # CONFIG_NLS_CODEPAGE_949 is not set |
1157 | # CONFIG_NLS_CODEPAGE_874 is not set | 1256 | # CONFIG_NLS_CODEPAGE_874 is not set |
1158 | # CONFIG_NLS_ISO8859_8 is not set | 1257 | # CONFIG_NLS_ISO8859_8 is not set |
1159 | # CONFIG_NLS_CODEPAGE_1250 is not set | 1258 | CONFIG_NLS_CODEPAGE_1250=y |
1160 | # CONFIG_NLS_CODEPAGE_1251 is not set | 1259 | # CONFIG_NLS_CODEPAGE_1251 is not set |
1161 | # CONFIG_NLS_ASCII is not set | 1260 | CONFIG_NLS_ASCII=y |
1162 | # CONFIG_NLS_ISO8859_1 is not set | 1261 | CONFIG_NLS_ISO8859_1=y |
1163 | # CONFIG_NLS_ISO8859_2 is not set | 1262 | # CONFIG_NLS_ISO8859_2 is not set |
1164 | # CONFIG_NLS_ISO8859_3 is not set | 1263 | # CONFIG_NLS_ISO8859_3 is not set |
1165 | # CONFIG_NLS_ISO8859_4 is not set | 1264 | # CONFIG_NLS_ISO8859_4 is not set |
@@ -1169,38 +1268,75 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1169 | # CONFIG_NLS_ISO8859_9 is not set | 1268 | # CONFIG_NLS_ISO8859_9 is not set |
1170 | # CONFIG_NLS_ISO8859_13 is not set | 1269 | # CONFIG_NLS_ISO8859_13 is not set |
1171 | # CONFIG_NLS_ISO8859_14 is not set | 1270 | # CONFIG_NLS_ISO8859_14 is not set |
1172 | # CONFIG_NLS_ISO8859_15 is not set | 1271 | CONFIG_NLS_ISO8859_15=y |
1173 | # CONFIG_NLS_KOI8_R is not set | 1272 | # CONFIG_NLS_KOI8_R is not set |
1174 | # CONFIG_NLS_KOI8_U is not set | 1273 | # CONFIG_NLS_KOI8_U is not set |
1175 | # CONFIG_NLS_UTF8 is not set | 1274 | CONFIG_NLS_UTF8=y |
1176 | 1275 | # CONFIG_DLM is not set | |
1177 | # | ||
1178 | # Distributed Lock Manager | ||
1179 | # | ||
1180 | CONFIG_DLM=m | ||
1181 | CONFIG_DLM_TCP=y | ||
1182 | # CONFIG_DLM_SCTP is not set | ||
1183 | # CONFIG_DLM_DEBUG is not set | ||
1184 | |||
1185 | # | ||
1186 | # Profiling support | ||
1187 | # | ||
1188 | # CONFIG_PROFILING is not set | ||
1189 | 1276 | ||
1190 | # | 1277 | # |
1191 | # Kernel hacking | 1278 | # Kernel hacking |
1192 | # | 1279 | # |
1193 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1280 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1194 | # CONFIG_PRINTK_TIME is not set | 1281 | # CONFIG_PRINTK_TIME is not set |
1282 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1195 | CONFIG_ENABLE_MUST_CHECK=y | 1283 | CONFIG_ENABLE_MUST_CHECK=y |
1284 | CONFIG_FRAME_WARN=1024 | ||
1196 | # CONFIG_MAGIC_SYSRQ is not set | 1285 | # CONFIG_MAGIC_SYSRQ is not set |
1286 | CONFIG_STRIP_ASM_SYMS=y | ||
1197 | # CONFIG_UNUSED_SYMBOLS is not set | 1287 | # CONFIG_UNUSED_SYMBOLS is not set |
1198 | # CONFIG_DEBUG_FS is not set | 1288 | # CONFIG_DEBUG_FS is not set |
1199 | # CONFIG_HEADERS_CHECK is not set | 1289 | # CONFIG_HEADERS_CHECK is not set |
1200 | # CONFIG_DEBUG_KERNEL is not set | 1290 | CONFIG_DEBUG_KERNEL=y |
1201 | CONFIG_LOG_BUF_SHIFT=14 | 1291 | # CONFIG_DEBUG_SHIRQ is not set |
1202 | CONFIG_CROSSCOMPILE=y | 1292 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1203 | CONFIG_CMDLINE="" | 1293 | # CONFIG_DETECT_HUNG_TASK is not set |
1294 | # CONFIG_SCHED_DEBUG is not set | ||
1295 | # CONFIG_SCHEDSTATS is not set | ||
1296 | # CONFIG_TIMER_STATS is not set | ||
1297 | # CONFIG_DEBUG_OBJECTS is not set | ||
1298 | # CONFIG_DEBUG_SLAB is not set | ||
1299 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1300 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1301 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1302 | # CONFIG_DEBUG_MUTEXES is not set | ||
1303 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1304 | # CONFIG_PROVE_LOCKING is not set | ||
1305 | # CONFIG_LOCK_STAT is not set | ||
1306 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1307 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1308 | # CONFIG_DEBUG_KOBJECT is not set | ||
1309 | # CONFIG_DEBUG_INFO is not set | ||
1310 | # CONFIG_DEBUG_VM is not set | ||
1311 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1312 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1313 | # CONFIG_DEBUG_LIST is not set | ||
1314 | # CONFIG_DEBUG_SG is not set | ||
1315 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1316 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1317 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1318 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1319 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1320 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1321 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1322 | # CONFIG_FAULT_INJECTION is not set | ||
1323 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1324 | # CONFIG_PAGE_POISONING is not set | ||
1325 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1326 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1327 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1328 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1329 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1330 | CONFIG_TRACING_SUPPORT=y | ||
1331 | # CONFIG_FTRACE is not set | ||
1332 | # CONFIG_SAMPLES is not set | ||
1333 | CONFIG_HAVE_ARCH_KGDB=y | ||
1334 | # CONFIG_KGDB is not set | ||
1335 | CONFIG_EARLY_PRINTK=y | ||
1336 | # CONFIG_CMDLINE_BOOL is not set | ||
1337 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1338 | # CONFIG_RUNTIME_DEBUG is not set | ||
1339 | CONFIG_DEBUG_ZBOOT=y | ||
1204 | 1340 | ||
1205 | # | 1341 | # |
1206 | # Security options | 1342 | # Security options |
@@ -1208,67 +1344,32 @@ CONFIG_CMDLINE="" | |||
1208 | CONFIG_KEYS=y | 1344 | CONFIG_KEYS=y |
1209 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1345 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1210 | # CONFIG_SECURITY is not set | 1346 | # CONFIG_SECURITY is not set |
1211 | 1347 | CONFIG_SECURITYFS=y | |
1212 | # | 1348 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1213 | # Cryptographic options | 1349 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1214 | # | 1350 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1215 | CONFIG_CRYPTO=y | 1351 | CONFIG_DEFAULT_SECURITY_DAC=y |
1216 | CONFIG_CRYPTO_ALGAPI=y | 1352 | CONFIG_DEFAULT_SECURITY="" |
1217 | CONFIG_CRYPTO_BLKCIPHER=m | 1353 | # CONFIG_CRYPTO is not set |
1218 | CONFIG_CRYPTO_HASH=y | 1354 | # CONFIG_BINARY_PRINTF is not set |
1219 | CONFIG_CRYPTO_MANAGER=y | ||
1220 | CONFIG_CRYPTO_HMAC=y | ||
1221 | CONFIG_CRYPTO_XCBC=m | ||
1222 | CONFIG_CRYPTO_NULL=m | ||
1223 | CONFIG_CRYPTO_MD4=m | ||
1224 | CONFIG_CRYPTO_MD5=y | ||
1225 | CONFIG_CRYPTO_SHA1=m | ||
1226 | CONFIG_CRYPTO_SHA256=m | ||
1227 | CONFIG_CRYPTO_SHA512=m | ||
1228 | CONFIG_CRYPTO_WP512=m | ||
1229 | CONFIG_CRYPTO_TGR192=m | ||
1230 | CONFIG_CRYPTO_GF128MUL=m | ||
1231 | CONFIG_CRYPTO_ECB=m | ||
1232 | CONFIG_CRYPTO_CBC=m | ||
1233 | CONFIG_CRYPTO_PCBC=m | ||
1234 | CONFIG_CRYPTO_LRW=m | ||
1235 | CONFIG_CRYPTO_DES=m | ||
1236 | CONFIG_CRYPTO_FCRYPT=m | ||
1237 | CONFIG_CRYPTO_BLOWFISH=m | ||
1238 | CONFIG_CRYPTO_TWOFISH=m | ||
1239 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1240 | CONFIG_CRYPTO_SERPENT=m | ||
1241 | CONFIG_CRYPTO_AES=m | ||
1242 | CONFIG_CRYPTO_CAST5=m | ||
1243 | CONFIG_CRYPTO_CAST6=m | ||
1244 | CONFIG_CRYPTO_TEA=m | ||
1245 | CONFIG_CRYPTO_ARC4=m | ||
1246 | CONFIG_CRYPTO_KHAZAD=m | ||
1247 | CONFIG_CRYPTO_ANUBIS=m | ||
1248 | CONFIG_CRYPTO_DEFLATE=m | ||
1249 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1250 | CONFIG_CRYPTO_CRC32C=m | ||
1251 | CONFIG_CRYPTO_CAMELLIA=m | ||
1252 | # CONFIG_CRYPTO_TEST is not set | ||
1253 | |||
1254 | # | ||
1255 | # Hardware crypto devices | ||
1256 | # | ||
1257 | 1355 | ||
1258 | # | 1356 | # |
1259 | # Library routines | 1357 | # Library routines |
1260 | # | 1358 | # |
1261 | CONFIG_BITREVERSE=y | 1359 | CONFIG_BITREVERSE=y |
1262 | CONFIG_CRC_CCITT=m | 1360 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1263 | CONFIG_CRC16=m | 1361 | # CONFIG_CRC_CCITT is not set |
1362 | # CONFIG_CRC16 is not set | ||
1363 | # CONFIG_CRC_T10DIF is not set | ||
1364 | CONFIG_CRC_ITU_T=y | ||
1264 | CONFIG_CRC32=y | 1365 | CONFIG_CRC32=y |
1265 | CONFIG_LIBCRC32C=m | 1366 | # CONFIG_CRC7 is not set |
1266 | CONFIG_ZLIB_INFLATE=m | 1367 | # CONFIG_LIBCRC32C is not set |
1267 | CONFIG_ZLIB_DEFLATE=m | 1368 | CONFIG_ZLIB_INFLATE=y |
1268 | CONFIG_TEXTSEARCH=y | 1369 | CONFIG_ZLIB_DEFLATE=y |
1269 | CONFIG_TEXTSEARCH_KMP=m | 1370 | CONFIG_LZO_COMPRESS=y |
1270 | CONFIG_TEXTSEARCH_BM=m | 1371 | CONFIG_LZO_DECOMPRESS=y |
1271 | CONFIG_TEXTSEARCH_FSM=m | ||
1272 | CONFIG_PLIST=y | ||
1273 | CONFIG_HAS_IOMEM=y | 1372 | CONFIG_HAS_IOMEM=y |
1274 | CONFIG_HAS_IOPORT=y | 1373 | CONFIG_HAS_IOPORT=y |
1374 | CONFIG_HAS_DMA=y | ||
1375 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/pb1550_defconfig b/arch/mips/configs/pb1550_defconfig index 1d896fd830da..aa526f53cb1b 100644 --- a/arch/mips/configs/pb1550_defconfig +++ b/arch/mips/configs/pb1550_defconfig | |||
@@ -1,80 +1,103 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.20 | 3 | # Linux kernel version: 2.6.33 |
4 | # Tue Feb 20 21:47:37 2007 | 4 | # Fri Feb 26 10:06:07 2010 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
8 | # | 8 | # |
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | CONFIG_ZONE_DMA=y | ||
12 | CONFIG_MACH_ALCHEMY=y | 11 | CONFIG_MACH_ALCHEMY=y |
13 | # CONFIG_MIPS_MTX1 is not set | 12 | # CONFIG_AR7 is not set |
14 | # CONFIG_MIPS_BOSPORUS is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_MIPS_PB1000 is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_PB1100 is not set | ||
17 | # CONFIG_MIPS_PB1500 is not set | ||
18 | CONFIG_MIPS_PB1550=y | ||
19 | # CONFIG_MIPS_PB1200 is not set | ||
20 | # CONFIG_MIPS_DB1000 is not set | ||
21 | # CONFIG_MIPS_DB1100 is not set | ||
22 | # CONFIG_MIPS_DB1500 is not set | ||
23 | # CONFIG_MIPS_DB1550 is not set | ||
24 | # CONFIG_MIPS_DB1200 is not set | ||
25 | # CONFIG_MIPS_MIRAGE is not set | ||
26 | # CONFIG_BASLER_EXCITE is not set | ||
27 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
28 | # CONFIG_MACH_DECSTATION is not set | 16 | # CONFIG_MACH_DECSTATION is not set |
29 | # CONFIG_MACH_JAZZ is not set | 17 | # CONFIG_MACH_JAZZ is not set |
18 | # CONFIG_LASAT is not set | ||
19 | # CONFIG_MACH_LOONGSON is not set | ||
30 | # CONFIG_MIPS_MALTA is not set | 20 | # CONFIG_MIPS_MALTA is not set |
31 | # CONFIG_WR_PPMC is not set | ||
32 | # CONFIG_MIPS_SIM is not set | 21 | # CONFIG_MIPS_SIM is not set |
33 | # CONFIG_MOMENCO_JAGUAR_ATX is not set | 22 | # CONFIG_NEC_MARKEINS is not set |
34 | # CONFIG_MIPS_XXS1500 is not set | 23 | # CONFIG_MACH_VR41XX is not set |
24 | # CONFIG_NXP_STB220 is not set | ||
25 | # CONFIG_NXP_STB225 is not set | ||
35 | # CONFIG_PNX8550_JBS is not set | 26 | # CONFIG_PNX8550_JBS is not set |
36 | # CONFIG_PNX8550_STB810 is not set | 27 | # CONFIG_PNX8550_STB810 is not set |
37 | # CONFIG_MACH_VR41XX is not set | 28 | # CONFIG_PMC_MSP is not set |
38 | # CONFIG_PMC_YOSEMITE is not set | 29 | # CONFIG_PMC_YOSEMITE is not set |
39 | # CONFIG_MARKEINS is not set | 30 | # CONFIG_POWERTV is not set |
40 | # CONFIG_SGI_IP22 is not set | 31 | # CONFIG_SGI_IP22 is not set |
41 | # CONFIG_SGI_IP27 is not set | 32 | # CONFIG_SGI_IP27 is not set |
33 | # CONFIG_SGI_IP28 is not set | ||
42 | # CONFIG_SGI_IP32 is not set | 34 | # CONFIG_SGI_IP32 is not set |
43 | # CONFIG_SIBYTE_BIGSUR is not set | ||
44 | # CONFIG_SIBYTE_SWARM is not set | ||
45 | # CONFIG_SIBYTE_SENTOSA is not set | ||
46 | # CONFIG_SIBYTE_RHONE is not set | ||
47 | # CONFIG_SIBYTE_CARMEL is not set | ||
48 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
49 | # CONFIG_SIBYTE_CRHINE is not set | 35 | # CONFIG_SIBYTE_CRHINE is not set |
36 | # CONFIG_SIBYTE_CARMEL is not set | ||
50 | # CONFIG_SIBYTE_CRHONE is not set | 37 | # CONFIG_SIBYTE_CRHONE is not set |
38 | # CONFIG_SIBYTE_RHONE is not set | ||
39 | # CONFIG_SIBYTE_SWARM is not set | ||
40 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
41 | # CONFIG_SIBYTE_SENTOSA is not set | ||
42 | # CONFIG_SIBYTE_BIGSUR is not set | ||
51 | # CONFIG_SNI_RM is not set | 43 | # CONFIG_SNI_RM is not set |
52 | # CONFIG_TOSHIBA_JMR3927 is not set | 44 | # CONFIG_MACH_TX39XX is not set |
53 | # CONFIG_TOSHIBA_RBTX4927 is not set | 45 | # CONFIG_MACH_TX49XX is not set |
54 | # CONFIG_TOSHIBA_RBTX4938 is not set | 46 | # CONFIG_MIKROTIK_RB532 is not set |
47 | # CONFIG_WR_PPMC is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
49 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
50 | CONFIG_ALCHEMY_GPIOINT_AU1000=y | ||
51 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
52 | # CONFIG_MIPS_MTX1 is not set | ||
53 | # CONFIG_MIPS_BOSPORUS is not set | ||
54 | # CONFIG_MIPS_DB1000 is not set | ||
55 | # CONFIG_MIPS_DB1100 is not set | ||
56 | # CONFIG_MIPS_DB1200 is not set | ||
57 | # CONFIG_MIPS_DB1500 is not set | ||
58 | # CONFIG_MIPS_DB1550 is not set | ||
59 | # CONFIG_MIPS_MIRAGE is not set | ||
60 | # CONFIG_MIPS_PB1000 is not set | ||
61 | # CONFIG_MIPS_PB1100 is not set | ||
62 | # CONFIG_MIPS_PB1200 is not set | ||
63 | # CONFIG_MIPS_PB1500 is not set | ||
64 | CONFIG_MIPS_PB1550=y | ||
65 | # CONFIG_MIPS_XXS1500 is not set | ||
66 | CONFIG_SOC_AU1550=y | ||
67 | CONFIG_SOC_AU1X00=y | ||
68 | CONFIG_LOONGSON_UART_BASE=y | ||
55 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 69 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
56 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 70 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
57 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | 71 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set |
72 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 73 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
59 | CONFIG_GENERIC_HWEIGHT=y | 74 | CONFIG_GENERIC_HWEIGHT=y |
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 75 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
76 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
61 | CONFIG_GENERIC_TIME=y | 77 | CONFIG_GENERIC_TIME=y |
62 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 78 | CONFIG_GENERIC_CMOS_UPDATE=y |
63 | # CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set | 79 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
80 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
81 | CONFIG_CEVT_R4K_LIB=y | ||
82 | CONFIG_CSRC_R4K_LIB=y | ||
64 | CONFIG_DMA_NONCOHERENT=y | 83 | CONFIG_DMA_NONCOHERENT=y |
65 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
85 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
66 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y | 86 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y |
87 | # CONFIG_NO_IOPORT is not set | ||
88 | CONFIG_GENERIC_GPIO=y | ||
67 | # CONFIG_CPU_BIG_ENDIAN is not set | 89 | # CONFIG_CPU_BIG_ENDIAN is not set |
68 | CONFIG_CPU_LITTLE_ENDIAN=y | 90 | CONFIG_CPU_LITTLE_ENDIAN=y |
69 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 91 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
70 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 92 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
71 | CONFIG_SOC_AU1550=y | 93 | CONFIG_IRQ_CPU=y |
72 | CONFIG_SOC_AU1X00=y | ||
73 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 94 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
74 | 95 | ||
75 | # | 96 | # |
76 | # CPU selection | 97 | # CPU selection |
77 | # | 98 | # |
99 | # CONFIG_CPU_LOONGSON2E is not set | ||
100 | # CONFIG_CPU_LOONGSON2F is not set | ||
78 | CONFIG_CPU_MIPS32_R1=y | 101 | CONFIG_CPU_MIPS32_R1=y |
79 | # CONFIG_CPU_MIPS32_R2 is not set | 102 | # CONFIG_CPU_MIPS32_R2 is not set |
80 | # CONFIG_CPU_MIPS64_R1 is not set | 103 | # CONFIG_CPU_MIPS64_R1 is not set |
@@ -87,6 +110,7 @@ CONFIG_CPU_MIPS32_R1=y | |||
87 | # CONFIG_CPU_TX49XX is not set | 110 | # CONFIG_CPU_TX49XX is not set |
88 | # CONFIG_CPU_R5000 is not set | 111 | # CONFIG_CPU_R5000 is not set |
89 | # CONFIG_CPU_R5432 is not set | 112 | # CONFIG_CPU_R5432 is not set |
113 | # CONFIG_CPU_R5500 is not set | ||
90 | # CONFIG_CPU_R6000 is not set | 114 | # CONFIG_CPU_R6000 is not set |
91 | # CONFIG_CPU_NEVADA is not set | 115 | # CONFIG_CPU_NEVADA is not set |
92 | # CONFIG_CPU_R8000 is not set | 116 | # CONFIG_CPU_R8000 is not set |
@@ -94,11 +118,14 @@ CONFIG_CPU_MIPS32_R1=y | |||
94 | # CONFIG_CPU_RM7000 is not set | 118 | # CONFIG_CPU_RM7000 is not set |
95 | # CONFIG_CPU_RM9000 is not set | 119 | # CONFIG_CPU_RM9000 is not set |
96 | # CONFIG_CPU_SB1 is not set | 120 | # CONFIG_CPU_SB1 is not set |
121 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
122 | CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
97 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y | 123 | CONFIG_SYS_HAS_CPU_MIPS32_R1=y |
98 | CONFIG_CPU_MIPS32=y | 124 | CONFIG_CPU_MIPS32=y |
99 | CONFIG_CPU_MIPSR1=y | 125 | CONFIG_CPU_MIPSR1=y |
100 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 126 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
101 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 127 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
128 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
102 | 129 | ||
103 | # | 130 | # |
104 | # Kernel type | 131 | # Kernel type |
@@ -108,190 +135,255 @@ CONFIG_32BIT=y | |||
108 | CONFIG_PAGE_SIZE_4KB=y | 135 | CONFIG_PAGE_SIZE_4KB=y |
109 | # CONFIG_PAGE_SIZE_8KB is not set | 136 | # CONFIG_PAGE_SIZE_8KB is not set |
110 | # CONFIG_PAGE_SIZE_16KB is not set | 137 | # CONFIG_PAGE_SIZE_16KB is not set |
138 | # CONFIG_PAGE_SIZE_32KB is not set | ||
111 | # CONFIG_PAGE_SIZE_64KB is not set | 139 | # CONFIG_PAGE_SIZE_64KB is not set |
112 | CONFIG_CPU_HAS_PREFETCH=y | 140 | CONFIG_CPU_HAS_PREFETCH=y |
113 | CONFIG_MIPS_MT_DISABLED=y | 141 | CONFIG_MIPS_MT_DISABLED=y |
114 | # CONFIG_MIPS_MT_SMP is not set | 142 | # CONFIG_MIPS_MT_SMP is not set |
115 | # CONFIG_MIPS_MT_SMTC is not set | 143 | # CONFIG_MIPS_MT_SMTC is not set |
116 | # CONFIG_MIPS_VPE_LOADER is not set | ||
117 | CONFIG_64BIT_PHYS_ADDR=y | 144 | CONFIG_64BIT_PHYS_ADDR=y |
145 | CONFIG_ARCH_PHYS_ADDR_T_64BIT=y | ||
118 | CONFIG_CPU_HAS_SYNC=y | 146 | CONFIG_CPU_HAS_SYNC=y |
119 | CONFIG_GENERIC_HARDIRQS=y | 147 | CONFIG_GENERIC_HARDIRQS=y |
120 | CONFIG_GENERIC_IRQ_PROBE=y | 148 | CONFIG_GENERIC_IRQ_PROBE=y |
121 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | 149 | CONFIG_CPU_SUPPORTS_HIGHMEM=y |
122 | CONFIG_ARCH_FLATMEM_ENABLE=y | 150 | CONFIG_ARCH_FLATMEM_ENABLE=y |
151 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
123 | CONFIG_SELECT_MEMORY_MODEL=y | 152 | CONFIG_SELECT_MEMORY_MODEL=y |
124 | CONFIG_FLATMEM_MANUAL=y | 153 | CONFIG_FLATMEM_MANUAL=y |
125 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 154 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
126 | # CONFIG_SPARSEMEM_MANUAL is not set | 155 | # CONFIG_SPARSEMEM_MANUAL is not set |
127 | CONFIG_FLATMEM=y | 156 | CONFIG_FLATMEM=y |
128 | CONFIG_FLAT_NODE_MEM_MAP=y | 157 | CONFIG_FLAT_NODE_MEM_MAP=y |
129 | # CONFIG_SPARSEMEM_STATIC is not set | 158 | CONFIG_PAGEFLAGS_EXTENDED=y |
130 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 159 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
131 | CONFIG_RESOURCES_64BIT=y | 160 | CONFIG_PHYS_ADDR_T_64BIT=y |
132 | CONFIG_ZONE_DMA_FLAG=1 | 161 | CONFIG_ZONE_DMA_FLAG=0 |
162 | CONFIG_VIRT_TO_BUS=y | ||
163 | # CONFIG_KSM is not set | ||
164 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
165 | CONFIG_TICK_ONESHOT=y | ||
166 | CONFIG_NO_HZ=y | ||
167 | CONFIG_HIGH_RES_TIMERS=y | ||
168 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
133 | # CONFIG_HZ_48 is not set | 169 | # CONFIG_HZ_48 is not set |
134 | # CONFIG_HZ_100 is not set | 170 | CONFIG_HZ_100=y |
135 | # CONFIG_HZ_128 is not set | 171 | # CONFIG_HZ_128 is not set |
136 | # CONFIG_HZ_250 is not set | 172 | # CONFIG_HZ_250 is not set |
137 | # CONFIG_HZ_256 is not set | 173 | # CONFIG_HZ_256 is not set |
138 | CONFIG_HZ_1000=y | 174 | # CONFIG_HZ_1000 is not set |
139 | # CONFIG_HZ_1024 is not set | 175 | # CONFIG_HZ_1024 is not set |
140 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | 176 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y |
141 | CONFIG_HZ=1000 | 177 | CONFIG_HZ=100 |
142 | CONFIG_PREEMPT_NONE=y | 178 | CONFIG_PREEMPT_NONE=y |
143 | # CONFIG_PREEMPT_VOLUNTARY is not set | 179 | # CONFIG_PREEMPT_VOLUNTARY is not set |
144 | # CONFIG_PREEMPT is not set | 180 | # CONFIG_PREEMPT is not set |
145 | # CONFIG_KEXEC is not set | 181 | # CONFIG_KEXEC is not set |
182 | # CONFIG_SECCOMP is not set | ||
146 | CONFIG_LOCKDEP_SUPPORT=y | 183 | CONFIG_LOCKDEP_SUPPORT=y |
147 | CONFIG_STACKTRACE_SUPPORT=y | 184 | CONFIG_STACKTRACE_SUPPORT=y |
148 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 185 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
186 | CONFIG_CONSTRUCTORS=y | ||
149 | 187 | ||
150 | # | 188 | # |
151 | # Code maturity level options | 189 | # General setup |
152 | # | 190 | # |
153 | CONFIG_EXPERIMENTAL=y | 191 | CONFIG_EXPERIMENTAL=y |
154 | CONFIG_BROKEN_ON_SMP=y | 192 | CONFIG_BROKEN_ON_SMP=y |
155 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 193 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
156 | 194 | CONFIG_LOCALVERSION="-pb1550" | |
157 | # | ||
158 | # General setup | ||
159 | # | ||
160 | CONFIG_LOCALVERSION="" | ||
161 | CONFIG_LOCALVERSION_AUTO=y | 195 | CONFIG_LOCALVERSION_AUTO=y |
196 | CONFIG_HAVE_KERNEL_GZIP=y | ||
197 | CONFIG_HAVE_KERNEL_BZIP2=y | ||
198 | CONFIG_HAVE_KERNEL_LZMA=y | ||
199 | CONFIG_HAVE_KERNEL_LZO=y | ||
200 | # CONFIG_KERNEL_GZIP is not set | ||
201 | # CONFIG_KERNEL_BZIP2 is not set | ||
202 | CONFIG_KERNEL_LZMA=y | ||
203 | # CONFIG_KERNEL_LZO is not set | ||
162 | CONFIG_SWAP=y | 204 | CONFIG_SWAP=y |
163 | CONFIG_SYSVIPC=y | 205 | CONFIG_SYSVIPC=y |
164 | # CONFIG_IPC_NS is not set | ||
165 | CONFIG_SYSVIPC_SYSCTL=y | 206 | CONFIG_SYSVIPC_SYSCTL=y |
166 | # CONFIG_POSIX_MQUEUE is not set | 207 | CONFIG_POSIX_MQUEUE=y |
208 | CONFIG_POSIX_MQUEUE_SYSCTL=y | ||
167 | # CONFIG_BSD_PROCESS_ACCT is not set | 209 | # CONFIG_BSD_PROCESS_ACCT is not set |
168 | # CONFIG_TASKSTATS is not set | 210 | # CONFIG_TASKSTATS is not set |
169 | # CONFIG_UTS_NS is not set | ||
170 | # CONFIG_AUDIT is not set | 211 | # CONFIG_AUDIT is not set |
212 | |||
213 | # | ||
214 | # RCU Subsystem | ||
215 | # | ||
216 | # CONFIG_TREE_RCU is not set | ||
217 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
218 | CONFIG_TINY_RCU=y | ||
219 | # CONFIG_TREE_RCU_TRACE is not set | ||
171 | # CONFIG_IKCONFIG is not set | 220 | # CONFIG_IKCONFIG is not set |
172 | CONFIG_SYSFS_DEPRECATED=y | 221 | CONFIG_LOG_BUF_SHIFT=14 |
173 | CONFIG_RELAY=y | 222 | # CONFIG_GROUP_SCHED is not set |
174 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 223 | # CONFIG_CGROUPS is not set |
224 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
225 | # CONFIG_RELAY is not set | ||
226 | # CONFIG_NAMESPACES is not set | ||
227 | # CONFIG_BLK_DEV_INITRD is not set | ||
228 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
175 | CONFIG_SYSCTL=y | 229 | CONFIG_SYSCTL=y |
230 | CONFIG_ANON_INODES=y | ||
176 | CONFIG_EMBEDDED=y | 231 | CONFIG_EMBEDDED=y |
177 | CONFIG_SYSCTL_SYSCALL=y | 232 | # CONFIG_SYSCTL_SYSCALL is not set |
178 | CONFIG_KALLSYMS=y | 233 | # CONFIG_KALLSYMS is not set |
179 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
180 | CONFIG_HOTPLUG=y | 234 | CONFIG_HOTPLUG=y |
181 | CONFIG_PRINTK=y | 235 | CONFIG_PRINTK=y |
182 | CONFIG_BUG=y | 236 | CONFIG_BUG=y |
183 | CONFIG_ELF_CORE=y | 237 | CONFIG_ELF_CORE=y |
238 | # CONFIG_PCSPKR_PLATFORM is not set | ||
184 | CONFIG_BASE_FULL=y | 239 | CONFIG_BASE_FULL=y |
185 | CONFIG_FUTEX=y | 240 | CONFIG_FUTEX=y |
186 | CONFIG_EPOLL=y | 241 | CONFIG_EPOLL=y |
242 | CONFIG_SIGNALFD=y | ||
243 | CONFIG_TIMERFD=y | ||
244 | CONFIG_EVENTFD=y | ||
187 | CONFIG_SHMEM=y | 245 | CONFIG_SHMEM=y |
246 | CONFIG_AIO=y | ||
247 | |||
248 | # | ||
249 | # Kernel Performance Events And Counters | ||
250 | # | ||
251 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
252 | CONFIG_PCI_QUIRKS=y | ||
253 | # CONFIG_COMPAT_BRK is not set | ||
188 | CONFIG_SLAB=y | 254 | CONFIG_SLAB=y |
189 | CONFIG_VM_EVENT_COUNTERS=y | 255 | # CONFIG_SLUB is not set |
190 | CONFIG_RT_MUTEXES=y | ||
191 | # CONFIG_TINY_SHMEM is not set | ||
192 | CONFIG_BASE_SMALL=0 | ||
193 | # CONFIG_SLOB is not set | 256 | # CONFIG_SLOB is not set |
257 | # CONFIG_PROFILING is not set | ||
258 | CONFIG_HAVE_OPROFILE=y | ||
194 | 259 | ||
195 | # | 260 | # |
196 | # Loadable module support | 261 | # GCOV-based kernel profiling |
197 | # | 262 | # |
263 | # CONFIG_SLOW_WORK is not set | ||
264 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
265 | CONFIG_SLABINFO=y | ||
266 | CONFIG_RT_MUTEXES=y | ||
267 | CONFIG_BASE_SMALL=0 | ||
198 | CONFIG_MODULES=y | 268 | CONFIG_MODULES=y |
269 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
199 | CONFIG_MODULE_UNLOAD=y | 270 | CONFIG_MODULE_UNLOAD=y |
200 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 271 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
201 | CONFIG_MODVERSIONS=y | 272 | # CONFIG_MODVERSIONS is not set |
202 | CONFIG_MODULE_SRCVERSION_ALL=y | 273 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
203 | CONFIG_KMOD=y | ||
204 | |||
205 | # | ||
206 | # Block layer | ||
207 | # | ||
208 | CONFIG_BLOCK=y | 274 | CONFIG_BLOCK=y |
209 | # CONFIG_LBD is not set | 275 | CONFIG_LBDAF=y |
210 | # CONFIG_BLK_DEV_IO_TRACE is not set | 276 | CONFIG_BLK_DEV_BSG=y |
211 | # CONFIG_LSF is not set | 277 | # CONFIG_BLK_DEV_INTEGRITY is not set |
212 | 278 | ||
213 | # | 279 | # |
214 | # IO Schedulers | 280 | # IO Schedulers |
215 | # | 281 | # |
216 | CONFIG_IOSCHED_NOOP=y | 282 | CONFIG_IOSCHED_NOOP=y |
217 | CONFIG_IOSCHED_AS=y | 283 | # CONFIG_IOSCHED_DEADLINE is not set |
218 | CONFIG_IOSCHED_DEADLINE=y | 284 | # CONFIG_IOSCHED_CFQ is not set |
219 | CONFIG_IOSCHED_CFQ=y | ||
220 | CONFIG_DEFAULT_AS=y | ||
221 | # CONFIG_DEFAULT_DEADLINE is not set | 285 | # CONFIG_DEFAULT_DEADLINE is not set |
222 | # CONFIG_DEFAULT_CFQ is not set | 286 | # CONFIG_DEFAULT_CFQ is not set |
223 | # CONFIG_DEFAULT_NOOP is not set | 287 | CONFIG_DEFAULT_NOOP=y |
224 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 288 | CONFIG_DEFAULT_IOSCHED="noop" |
289 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
290 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
291 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
292 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
293 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
294 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
295 | CONFIG_INLINE_SPIN_UNLOCK=y | ||
296 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
297 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y | ||
298 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
299 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
300 | # CONFIG_INLINE_READ_LOCK is not set | ||
301 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
302 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
303 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
304 | CONFIG_INLINE_READ_UNLOCK=y | ||
305 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
306 | CONFIG_INLINE_READ_UNLOCK_IRQ=y | ||
307 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
308 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
309 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
310 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
311 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
312 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
313 | CONFIG_INLINE_WRITE_UNLOCK=y | ||
314 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
315 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y | ||
316 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
317 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
318 | CONFIG_FREEZER=y | ||
225 | 319 | ||
226 | # | 320 | # |
227 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 321 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
228 | # | 322 | # |
229 | CONFIG_HW_HAS_PCI=y | 323 | CONFIG_HW_HAS_PCI=y |
230 | CONFIG_PCI=y | 324 | CONFIG_PCI=y |
325 | CONFIG_PCI_DOMAINS=y | ||
326 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
327 | CONFIG_PCI_LEGACY=y | ||
328 | # CONFIG_PCI_DEBUG is not set | ||
329 | # CONFIG_PCI_STUB is not set | ||
330 | # CONFIG_PCI_IOV is not set | ||
231 | CONFIG_MMU=y | 331 | CONFIG_MMU=y |
232 | 332 | CONFIG_PCCARD=y | |
233 | # | 333 | CONFIG_PCMCIA=y |
234 | # PCCARD (PCMCIA/CardBus) support | ||
235 | # | ||
236 | CONFIG_PCCARD=m | ||
237 | # CONFIG_PCMCIA_DEBUG is not set | ||
238 | CONFIG_PCMCIA=m | ||
239 | CONFIG_PCMCIA_LOAD_CIS=y | 334 | CONFIG_PCMCIA_LOAD_CIS=y |
240 | CONFIG_PCMCIA_IOCTL=y | 335 | CONFIG_PCMCIA_IOCTL=y |
241 | CONFIG_CARDBUS=y | 336 | # CONFIG_CARDBUS is not set |
242 | 337 | ||
243 | # | 338 | # |
244 | # PC-card bridges | 339 | # PC-card bridges |
245 | # | 340 | # |
246 | # CONFIG_YENTA is not set | 341 | # CONFIG_YENTA is not set |
247 | CONFIG_PD6729=m | 342 | # CONFIG_PD6729 is not set |
248 | # CONFIG_I82092 is not set | 343 | # CONFIG_I82092 is not set |
249 | # CONFIG_PCMCIA_AU1X00 is not set | 344 | # CONFIG_PCMCIA_AU1X00 is not set |
250 | CONFIG_PCCARD_NONSTATIC=m | 345 | CONFIG_PCMCIA_ALCHEMY_DEVBOARD=y |
251 | |||
252 | # | ||
253 | # PCI Hotplug Support | ||
254 | # | ||
255 | # CONFIG_HOTPLUG_PCI is not set | 346 | # CONFIG_HOTPLUG_PCI is not set |
256 | 347 | ||
257 | # | 348 | # |
258 | # Executable file formats | 349 | # Executable file formats |
259 | # | 350 | # |
260 | CONFIG_BINFMT_ELF=y | 351 | CONFIG_BINFMT_ELF=y |
352 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
353 | # CONFIG_HAVE_AOUT is not set | ||
261 | # CONFIG_BINFMT_MISC is not set | 354 | # CONFIG_BINFMT_MISC is not set |
262 | CONFIG_TRAD_SIGNALS=y | 355 | CONFIG_TRAD_SIGNALS=y |
263 | 356 | ||
264 | # | 357 | # |
265 | # Power management options | 358 | # Power management options |
266 | # | 359 | # |
267 | # CONFIG_PM is not set | 360 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y |
268 | 361 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | |
269 | # | 362 | CONFIG_PM=y |
270 | # Networking | 363 | # CONFIG_PM_DEBUG is not set |
271 | # | 364 | CONFIG_PM_SLEEP=y |
365 | CONFIG_SUSPEND=y | ||
366 | CONFIG_SUSPEND_FREEZER=y | ||
367 | # CONFIG_HIBERNATION is not set | ||
368 | # CONFIG_APM_EMULATION is not set | ||
369 | CONFIG_PM_RUNTIME=y | ||
272 | CONFIG_NET=y | 370 | CONFIG_NET=y |
273 | 371 | ||
274 | # | 372 | # |
275 | # Networking options | 373 | # Networking options |
276 | # | 374 | # |
277 | # CONFIG_NETDEBUG is not set | ||
278 | CONFIG_PACKET=y | 375 | CONFIG_PACKET=y |
279 | # CONFIG_PACKET_MMAP is not set | 376 | CONFIG_PACKET_MMAP=y |
280 | CONFIG_UNIX=y | 377 | CONFIG_UNIX=y |
281 | CONFIG_XFRM=y | 378 | # CONFIG_NET_KEY is not set |
282 | CONFIG_XFRM_USER=m | ||
283 | # CONFIG_XFRM_SUB_POLICY is not set | ||
284 | CONFIG_XFRM_MIGRATE=y | ||
285 | CONFIG_NET_KEY=y | ||
286 | CONFIG_NET_KEY_MIGRATE=y | ||
287 | CONFIG_INET=y | 379 | CONFIG_INET=y |
288 | CONFIG_IP_MULTICAST=y | 380 | CONFIG_IP_MULTICAST=y |
289 | # CONFIG_IP_ADVANCED_ROUTER is not set | 381 | # CONFIG_IP_ADVANCED_ROUTER is not set |
290 | CONFIG_IP_FIB_HASH=y | 382 | CONFIG_IP_FIB_HASH=y |
291 | CONFIG_IP_PNP=y | 383 | CONFIG_IP_PNP=y |
292 | # CONFIG_IP_PNP_DHCP is not set | 384 | CONFIG_IP_PNP_DHCP=y |
293 | CONFIG_IP_PNP_BOOTP=y | 385 | CONFIG_IP_PNP_BOOTP=y |
294 | # CONFIG_IP_PNP_RARP is not set | 386 | CONFIG_IP_PNP_RARP=y |
295 | # CONFIG_NET_IPIP is not set | 387 | # CONFIG_NET_IPIP is not set |
296 | # CONFIG_NET_IPGRE is not set | 388 | # CONFIG_NET_IPGRE is not set |
297 | # CONFIG_IP_MROUTE is not set | 389 | # CONFIG_IP_MROUTE is not set |
@@ -302,110 +394,25 @@ CONFIG_IP_PNP_BOOTP=y | |||
302 | # CONFIG_INET_IPCOMP is not set | 394 | # CONFIG_INET_IPCOMP is not set |
303 | # CONFIG_INET_XFRM_TUNNEL is not set | 395 | # CONFIG_INET_XFRM_TUNNEL is not set |
304 | # CONFIG_INET_TUNNEL is not set | 396 | # CONFIG_INET_TUNNEL is not set |
305 | CONFIG_INET_XFRM_MODE_TRANSPORT=m | 397 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set |
306 | CONFIG_INET_XFRM_MODE_TUNNEL=m | 398 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set |
307 | CONFIG_INET_XFRM_MODE_BEET=m | 399 | # CONFIG_INET_XFRM_MODE_BEET is not set |
308 | CONFIG_INET_DIAG=y | 400 | CONFIG_INET_LRO=y |
309 | CONFIG_INET_TCP_DIAG=y | 401 | # CONFIG_INET_DIAG is not set |
310 | # CONFIG_TCP_CONG_ADVANCED is not set | 402 | # CONFIG_TCP_CONG_ADVANCED is not set |
311 | CONFIG_TCP_CONG_CUBIC=y | 403 | CONFIG_TCP_CONG_CUBIC=y |
312 | CONFIG_DEFAULT_TCP_CONG="cubic" | 404 | CONFIG_DEFAULT_TCP_CONG="cubic" |
313 | CONFIG_TCP_MD5SIG=y | 405 | # CONFIG_TCP_MD5SIG is not set |
314 | |||
315 | # | ||
316 | # IP: Virtual Server Configuration | ||
317 | # | ||
318 | # CONFIG_IP_VS is not set | ||
319 | # CONFIG_IPV6 is not set | 406 | # CONFIG_IPV6 is not set |
320 | # CONFIG_INET6_XFRM_TUNNEL is not set | 407 | # CONFIG_NETWORK_SECMARK is not set |
321 | # CONFIG_INET6_TUNNEL is not set | 408 | # CONFIG_NETFILTER is not set |
322 | CONFIG_NETWORK_SECMARK=y | ||
323 | CONFIG_NETFILTER=y | ||
324 | # CONFIG_NETFILTER_DEBUG is not set | ||
325 | |||
326 | # | ||
327 | # Core Netfilter Configuration | ||
328 | # | ||
329 | CONFIG_NETFILTER_NETLINK=m | ||
330 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
331 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
332 | CONFIG_NF_CONNTRACK_ENABLED=m | ||
333 | CONFIG_NF_CONNTRACK_SUPPORT=y | ||
334 | # CONFIG_IP_NF_CONNTRACK_SUPPORT is not set | ||
335 | CONFIG_NF_CONNTRACK=m | ||
336 | CONFIG_NF_CT_ACCT=y | ||
337 | CONFIG_NF_CONNTRACK_MARK=y | ||
338 | CONFIG_NF_CONNTRACK_SECMARK=y | ||
339 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
340 | CONFIG_NF_CT_PROTO_GRE=m | ||
341 | CONFIG_NF_CT_PROTO_SCTP=m | ||
342 | CONFIG_NF_CONNTRACK_AMANDA=m | ||
343 | CONFIG_NF_CONNTRACK_FTP=m | ||
344 | CONFIG_NF_CONNTRACK_H323=m | ||
345 | CONFIG_NF_CONNTRACK_IRC=m | ||
346 | # CONFIG_NF_CONNTRACK_NETBIOS_NS is not set | ||
347 | CONFIG_NF_CONNTRACK_PPTP=m | ||
348 | CONFIG_NF_CONNTRACK_SANE=m | ||
349 | CONFIG_NF_CONNTRACK_SIP=m | ||
350 | CONFIG_NF_CONNTRACK_TFTP=m | ||
351 | CONFIG_NF_CT_NETLINK=m | ||
352 | CONFIG_NETFILTER_XTABLES=m | ||
353 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
354 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
355 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
356 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
357 | CONFIG_NETFILTER_XT_TARGET_SECMARK=m | ||
358 | CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m | ||
359 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
361 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | ||
362 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | ||
363 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
364 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
365 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
366 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
367 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | ||
368 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
369 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
370 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
371 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
372 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
373 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
374 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
375 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
376 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
377 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
378 | CONFIG_NETFILTER_XT_MATCH_STATE=m | ||
379 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
380 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
381 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
382 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
383 | |||
384 | # | ||
385 | # IP: Netfilter Configuration | ||
386 | # | ||
387 | CONFIG_NF_CONNTRACK_IPV4=m | ||
388 | CONFIG_NF_CONNTRACK_PROC_COMPAT=y | ||
389 | # CONFIG_IP_NF_QUEUE is not set | ||
390 | # CONFIG_IP_NF_IPTABLES is not set | ||
391 | # CONFIG_IP_NF_ARPTABLES is not set | ||
392 | |||
393 | # | ||
394 | # DCCP Configuration (EXPERIMENTAL) | ||
395 | # | ||
396 | # CONFIG_IP_DCCP is not set | 409 | # CONFIG_IP_DCCP is not set |
397 | |||
398 | # | ||
399 | # SCTP Configuration (EXPERIMENTAL) | ||
400 | # | ||
401 | # CONFIG_IP_SCTP is not set | 410 | # CONFIG_IP_SCTP is not set |
402 | 411 | # CONFIG_RDS is not set | |
403 | # | ||
404 | # TIPC Configuration (EXPERIMENTAL) | ||
405 | # | ||
406 | # CONFIG_TIPC is not set | 412 | # CONFIG_TIPC is not set |
407 | # CONFIG_ATM is not set | 413 | # CONFIG_ATM is not set |
408 | # CONFIG_BRIDGE is not set | 414 | # CONFIG_BRIDGE is not set |
415 | # CONFIG_NET_DSA is not set | ||
409 | # CONFIG_VLAN_8021Q is not set | 416 | # CONFIG_VLAN_8021Q is not set |
410 | # CONFIG_DECNET is not set | 417 | # CONFIG_DECNET is not set |
411 | # CONFIG_LLC2 is not set | 418 | # CONFIG_LLC2 is not set |
@@ -415,27 +422,30 @@ CONFIG_NF_CONNTRACK_PROC_COMPAT=y | |||
415 | # CONFIG_LAPB is not set | 422 | # CONFIG_LAPB is not set |
416 | # CONFIG_ECONET is not set | 423 | # CONFIG_ECONET is not set |
417 | # CONFIG_WAN_ROUTER is not set | 424 | # CONFIG_WAN_ROUTER is not set |
418 | 425 | # CONFIG_PHONET is not set | |
419 | # | 426 | # CONFIG_IEEE802154 is not set |
420 | # QoS and/or fair queueing | ||
421 | # | ||
422 | # CONFIG_NET_SCHED is not set | 427 | # CONFIG_NET_SCHED is not set |
423 | CONFIG_NET_CLS_ROUTE=y | 428 | # CONFIG_DCB is not set |
424 | 429 | ||
425 | # | 430 | # |
426 | # Network testing | 431 | # Network testing |
427 | # | 432 | # |
428 | # CONFIG_NET_PKTGEN is not set | 433 | # CONFIG_NET_PKTGEN is not set |
429 | # CONFIG_HAMRADIO is not set | 434 | # CONFIG_HAMRADIO is not set |
435 | # CONFIG_CAN is not set | ||
430 | # CONFIG_IRDA is not set | 436 | # CONFIG_IRDA is not set |
431 | # CONFIG_BT is not set | 437 | # CONFIG_BT is not set |
432 | CONFIG_IEEE80211=m | 438 | # CONFIG_AF_RXRPC is not set |
433 | # CONFIG_IEEE80211_DEBUG is not set | 439 | CONFIG_WIRELESS=y |
434 | CONFIG_IEEE80211_CRYPT_WEP=m | 440 | # CONFIG_CFG80211 is not set |
435 | CONFIG_IEEE80211_CRYPT_CCMP=m | 441 | # CONFIG_LIB80211 is not set |
436 | CONFIG_IEEE80211_SOFTMAC=m | 442 | |
437 | # CONFIG_IEEE80211_SOFTMAC_DEBUG is not set | 443 | # |
438 | CONFIG_WIRELESS_EXT=y | 444 | # CFG80211 needs to be enabled for MAC80211 |
445 | # | ||
446 | # CONFIG_WIMAX is not set | ||
447 | # CONFIG_RFKILL is not set | ||
448 | # CONFIG_NET_9P is not set | ||
439 | 449 | ||
440 | # | 450 | # |
441 | # Device Drivers | 451 | # Device Drivers |
@@ -444,25 +454,25 @@ CONFIG_WIRELESS_EXT=y | |||
444 | # | 454 | # |
445 | # Generic Driver Options | 455 | # Generic Driver Options |
446 | # | 456 | # |
457 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
458 | # CONFIG_DEVTMPFS is not set | ||
447 | CONFIG_STANDALONE=y | 459 | CONFIG_STANDALONE=y |
448 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 460 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
449 | CONFIG_FW_LOADER=m | 461 | CONFIG_FW_LOADER=y |
462 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
463 | CONFIG_EXTRA_FIRMWARE="" | ||
464 | # CONFIG_DEBUG_DRIVER is not set | ||
465 | # CONFIG_DEBUG_DEVRES is not set | ||
450 | # CONFIG_SYS_HYPERVISOR is not set | 466 | # CONFIG_SYS_HYPERVISOR is not set |
451 | 467 | # CONFIG_CONNECTOR is not set | |
452 | # | ||
453 | # Connector - unified userspace <-> kernelspace linker | ||
454 | # | ||
455 | CONFIG_CONNECTOR=m | ||
456 | |||
457 | # | ||
458 | # Memory Technology Devices (MTD) | ||
459 | # | ||
460 | CONFIG_MTD=y | 468 | CONFIG_MTD=y |
461 | # CONFIG_MTD_DEBUG is not set | 469 | # CONFIG_MTD_DEBUG is not set |
470 | # CONFIG_MTD_TESTS is not set | ||
462 | # CONFIG_MTD_CONCAT is not set | 471 | # CONFIG_MTD_CONCAT is not set |
463 | CONFIG_MTD_PARTITIONS=y | 472 | CONFIG_MTD_PARTITIONS=y |
464 | # CONFIG_MTD_REDBOOT_PARTS is not set | 473 | # CONFIG_MTD_REDBOOT_PARTS is not set |
465 | # CONFIG_MTD_CMDLINE_PARTS is not set | 474 | # CONFIG_MTD_CMDLINE_PARTS is not set |
475 | # CONFIG_MTD_AR7_PARTS is not set | ||
466 | 476 | ||
467 | # | 477 | # |
468 | # User Modules And Translation Layers | 478 | # User Modules And Translation Layers |
@@ -475,6 +485,7 @@ CONFIG_MTD_BLOCK=y | |||
475 | # CONFIG_INFTL is not set | 485 | # CONFIG_INFTL is not set |
476 | # CONFIG_RFD_FTL is not set | 486 | # CONFIG_RFD_FTL is not set |
477 | # CONFIG_SSFDC is not set | 487 | # CONFIG_SSFDC is not set |
488 | # CONFIG_MTD_OOPS is not set | ||
478 | 489 | ||
479 | # | 490 | # |
480 | # RAM/ROM/Flash chip drivers | 491 | # RAM/ROM/Flash chip drivers |
@@ -500,14 +511,14 @@ CONFIG_MTD_CFI_UTIL=y | |||
500 | # CONFIG_MTD_RAM is not set | 511 | # CONFIG_MTD_RAM is not set |
501 | # CONFIG_MTD_ROM is not set | 512 | # CONFIG_MTD_ROM is not set |
502 | # CONFIG_MTD_ABSENT is not set | 513 | # CONFIG_MTD_ABSENT is not set |
503 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
504 | 514 | ||
505 | # | 515 | # |
506 | # Mapping drivers for chip access | 516 | # Mapping drivers for chip access |
507 | # | 517 | # |
508 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 518 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
509 | # CONFIG_MTD_PHYSMAP is not set | 519 | CONFIG_MTD_PHYSMAP=y |
510 | CONFIG_MTD_ALCHEMY=y | 520 | # CONFIG_MTD_PHYSMAP_COMPAT is not set |
521 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
511 | # CONFIG_MTD_PLATRAM is not set | 522 | # CONFIG_MTD_PLATRAM is not set |
512 | 523 | ||
513 | # | 524 | # |
@@ -525,30 +536,30 @@ CONFIG_MTD_ALCHEMY=y | |||
525 | # CONFIG_MTD_DOC2000 is not set | 536 | # CONFIG_MTD_DOC2000 is not set |
526 | # CONFIG_MTD_DOC2001 is not set | 537 | # CONFIG_MTD_DOC2001 is not set |
527 | # CONFIG_MTD_DOC2001PLUS is not set | 538 | # CONFIG_MTD_DOC2001PLUS is not set |
528 | 539 | CONFIG_MTD_NAND=y | |
529 | # | 540 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set |
530 | # NAND Flash Device Drivers | 541 | # CONFIG_MTD_NAND_ECC_SMC is not set |
531 | # | 542 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set |
532 | # CONFIG_MTD_NAND is not set | 543 | CONFIG_MTD_NAND_IDS=y |
533 | 544 | CONFIG_MTD_NAND_AU1550=y | |
534 | # | 545 | # CONFIG_MTD_NAND_DISKONCHIP is not set |
535 | # OneNAND Flash Device Drivers | 546 | # CONFIG_MTD_NAND_CAFE is not set |
536 | # | 547 | # CONFIG_MTD_NAND_NANDSIM is not set |
548 | # CONFIG_MTD_NAND_PLATFORM is not set | ||
549 | # CONFIG_MTD_ALAUDA is not set | ||
537 | # CONFIG_MTD_ONENAND is not set | 550 | # CONFIG_MTD_ONENAND is not set |
538 | 551 | ||
539 | # | 552 | # |
540 | # Parallel port support | 553 | # LPDDR flash memory drivers |
541 | # | ||
542 | # CONFIG_PARPORT is not set | ||
543 | |||
544 | # | ||
545 | # Plug and Play support | ||
546 | # | 554 | # |
547 | # CONFIG_PNPACPI is not set | 555 | # CONFIG_MTD_LPDDR is not set |
548 | 556 | ||
549 | # | 557 | # |
550 | # Block devices | 558 | # UBI - Unsorted block images |
551 | # | 559 | # |
560 | # CONFIG_MTD_UBI is not set | ||
561 | # CONFIG_PARPORT is not set | ||
562 | CONFIG_BLK_DEV=y | ||
552 | # CONFIG_BLK_CPQ_DA is not set | 563 | # CONFIG_BLK_CPQ_DA is not set |
553 | # CONFIG_BLK_CPQ_CISS_DA is not set | 564 | # CONFIG_BLK_CPQ_CISS_DA is not set |
554 | # CONFIG_BLK_DEV_DAC960 is not set | 565 | # CONFIG_BLK_DEV_DAC960 is not set |
@@ -556,67 +567,66 @@ CONFIG_MTD_ALCHEMY=y | |||
556 | # CONFIG_BLK_DEV_COW_COMMON is not set | 567 | # CONFIG_BLK_DEV_COW_COMMON is not set |
557 | CONFIG_BLK_DEV_LOOP=y | 568 | CONFIG_BLK_DEV_LOOP=y |
558 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 569 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
559 | # CONFIG_BLK_DEV_NBD is not set | ||
560 | # CONFIG_BLK_DEV_SX8 is not set | ||
561 | # CONFIG_BLK_DEV_RAM is not set | ||
562 | # CONFIG_BLK_DEV_INITRD is not set | ||
563 | CONFIG_CDROM_PKTCDVD=m | ||
564 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | ||
565 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | ||
566 | CONFIG_ATA_OVER_ETH=m | ||
567 | 570 | ||
568 | # | 571 | # |
569 | # Misc devices | 572 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected |
570 | # | ||
571 | CONFIG_SGI_IOC4=m | ||
572 | # CONFIG_TIFM_CORE is not set | ||
573 | |||
574 | # | ||
575 | # ATA/ATAPI/MFM/RLL support | ||
576 | # | 573 | # |
574 | # CONFIG_BLK_DEV_NBD is not set | ||
575 | # CONFIG_BLK_DEV_SX8 is not set | ||
576 | CONFIG_BLK_DEV_UB=y | ||
577 | # CONFIG_BLK_DEV_RAM is not set | ||
578 | # CONFIG_CDROM_PKTCDVD is not set | ||
579 | # CONFIG_ATA_OVER_ETH is not set | ||
580 | # CONFIG_BLK_DEV_HD is not set | ||
581 | # CONFIG_MISC_DEVICES is not set | ||
582 | CONFIG_HAVE_IDE=y | ||
577 | CONFIG_IDE=y | 583 | CONFIG_IDE=y |
578 | CONFIG_IDE_MAX_HWIFS=4 | ||
579 | CONFIG_BLK_DEV_IDE=y | ||
580 | 584 | ||
581 | # | 585 | # |
582 | # Please see Documentation/ide.txt for help/info on IDE drives | 586 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
583 | # | 587 | # |
588 | CONFIG_IDE_XFER_MODE=y | ||
589 | CONFIG_IDE_ATAPI=y | ||
584 | # CONFIG_BLK_DEV_IDE_SATA is not set | 590 | # CONFIG_BLK_DEV_IDE_SATA is not set |
585 | CONFIG_BLK_DEV_IDEDISK=y | 591 | CONFIG_IDE_GD=y |
586 | # CONFIG_IDEDISK_MULTI_MODE is not set | 592 | CONFIG_IDE_GD_ATA=y |
587 | CONFIG_BLK_DEV_IDECS=m | 593 | # CONFIG_IDE_GD_ATAPI is not set |
588 | # CONFIG_BLK_DEV_DELKIN is not set | 594 | CONFIG_BLK_DEV_IDECS=y |
589 | # CONFIG_BLK_DEV_IDECD is not set | 595 | CONFIG_BLK_DEV_IDECD=y |
596 | # CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS is not set | ||
590 | # CONFIG_BLK_DEV_IDETAPE is not set | 597 | # CONFIG_BLK_DEV_IDETAPE is not set |
591 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
592 | # CONFIG_IDE_TASK_IOCTL is not set | 598 | # CONFIG_IDE_TASK_IOCTL is not set |
599 | CONFIG_IDE_PROC_FS=y | ||
593 | 600 | ||
594 | # | 601 | # |
595 | # IDE chipset support/bugfixes | 602 | # IDE chipset support/bugfixes |
596 | # | 603 | # |
597 | CONFIG_IDE_GENERIC=y | 604 | # CONFIG_IDE_GENERIC is not set |
605 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
606 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
607 | |||
608 | # | ||
609 | # PCI IDE chipsets support | ||
610 | # | ||
598 | CONFIG_BLK_DEV_IDEPCI=y | 611 | CONFIG_BLK_DEV_IDEPCI=y |
599 | # CONFIG_IDEPCI_SHARE_IRQ is not set | 612 | # CONFIG_IDEPCI_PCIBUS_ORDER is not set |
600 | # CONFIG_BLK_DEV_OFFBOARD is not set | 613 | # CONFIG_BLK_DEV_OFFBOARD is not set |
601 | CONFIG_BLK_DEV_GENERIC=y | 614 | # CONFIG_BLK_DEV_GENERIC is not set |
602 | # CONFIG_BLK_DEV_OPTI621 is not set | 615 | # CONFIG_BLK_DEV_OPTI621 is not set |
603 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 616 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
604 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | ||
605 | # CONFIG_IDEDMA_PCI_AUTO is not set | ||
606 | # CONFIG_BLK_DEV_AEC62XX is not set | 617 | # CONFIG_BLK_DEV_AEC62XX is not set |
607 | # CONFIG_BLK_DEV_ALI15X3 is not set | 618 | # CONFIG_BLK_DEV_ALI15X3 is not set |
608 | # CONFIG_BLK_DEV_AMD74XX is not set | 619 | # CONFIG_BLK_DEV_AMD74XX is not set |
609 | # CONFIG_BLK_DEV_CMD64X is not set | 620 | # CONFIG_BLK_DEV_CMD64X is not set |
610 | # CONFIG_BLK_DEV_TRIFLEX is not set | 621 | # CONFIG_BLK_DEV_TRIFLEX is not set |
611 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
612 | # CONFIG_BLK_DEV_CS5520 is not set | 622 | # CONFIG_BLK_DEV_CS5520 is not set |
613 | # CONFIG_BLK_DEV_CS5530 is not set | 623 | # CONFIG_BLK_DEV_CS5530 is not set |
614 | # CONFIG_BLK_DEV_HPT34X is not set | ||
615 | CONFIG_BLK_DEV_HPT366=y | 624 | CONFIG_BLK_DEV_HPT366=y |
616 | # CONFIG_BLK_DEV_JMICRON is not set | 625 | # CONFIG_BLK_DEV_JMICRON is not set |
617 | # CONFIG_BLK_DEV_SC1200 is not set | 626 | # CONFIG_BLK_DEV_SC1200 is not set |
618 | # CONFIG_BLK_DEV_PIIX is not set | 627 | # CONFIG_BLK_DEV_PIIX is not set |
619 | CONFIG_BLK_DEV_IT8213=m | 628 | # CONFIG_BLK_DEV_IT8172 is not set |
629 | # CONFIG_BLK_DEV_IT8213 is not set | ||
620 | # CONFIG_BLK_DEV_IT821X is not set | 630 | # CONFIG_BLK_DEV_IT821X is not set |
621 | # CONFIG_BLK_DEV_NS87415 is not set | 631 | # CONFIG_BLK_DEV_NS87415 is not set |
622 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 632 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
@@ -626,82 +636,65 @@ CONFIG_BLK_DEV_IT8213=m | |||
626 | # CONFIG_BLK_DEV_SLC90E66 is not set | 636 | # CONFIG_BLK_DEV_SLC90E66 is not set |
627 | # CONFIG_BLK_DEV_TRM290 is not set | 637 | # CONFIG_BLK_DEV_TRM290 is not set |
628 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 638 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
629 | CONFIG_BLK_DEV_TC86C001=m | 639 | # CONFIG_BLK_DEV_TC86C001 is not set |
630 | # CONFIG_IDE_ARM is not set | ||
631 | CONFIG_BLK_DEV_IDEDMA=y | 640 | CONFIG_BLK_DEV_IDEDMA=y |
632 | # CONFIG_IDEDMA_IVB is not set | ||
633 | # CONFIG_IDEDMA_AUTO is not set | ||
634 | # CONFIG_BLK_DEV_HD is not set | ||
635 | 641 | ||
636 | # | 642 | # |
637 | # SCSI device support | 643 | # SCSI device support |
638 | # | 644 | # |
639 | CONFIG_RAID_ATTRS=m | 645 | # CONFIG_RAID_ATTRS is not set |
640 | # CONFIG_SCSI is not set | 646 | # CONFIG_SCSI is not set |
647 | # CONFIG_SCSI_DMA is not set | ||
641 | # CONFIG_SCSI_NETLINK is not set | 648 | # CONFIG_SCSI_NETLINK is not set |
642 | |||
643 | # | ||
644 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
645 | # | ||
646 | # CONFIG_ATA is not set | 649 | # CONFIG_ATA is not set |
647 | |||
648 | # | ||
649 | # Multi-device support (RAID and LVM) | ||
650 | # | ||
651 | # CONFIG_MD is not set | 650 | # CONFIG_MD is not set |
652 | |||
653 | # | ||
654 | # Fusion MPT device support | ||
655 | # | ||
656 | # CONFIG_FUSION is not set | 651 | # CONFIG_FUSION is not set |
657 | 652 | ||
658 | # | 653 | # |
659 | # IEEE 1394 (FireWire) support | 654 | # IEEE 1394 (FireWire) support |
660 | # | 655 | # |
661 | # CONFIG_IEEE1394 is not set | ||
662 | 656 | ||
663 | # | 657 | # |
664 | # I2O device support | 658 | # You can enable one or both FireWire driver stacks. |
665 | # | 659 | # |
666 | # CONFIG_I2O is not set | ||
667 | 660 | ||
668 | # | 661 | # |
669 | # Network device support | 662 | # The newer stack is recommended. |
670 | # | 663 | # |
664 | # CONFIG_FIREWIRE is not set | ||
665 | # CONFIG_IEEE1394 is not set | ||
666 | # CONFIG_I2O is not set | ||
671 | CONFIG_NETDEVICES=y | 667 | CONFIG_NETDEVICES=y |
672 | # CONFIG_DUMMY is not set | 668 | # CONFIG_DUMMY is not set |
673 | # CONFIG_BONDING is not set | 669 | # CONFIG_BONDING is not set |
670 | # CONFIG_MACVLAN is not set | ||
674 | # CONFIG_EQUALIZER is not set | 671 | # CONFIG_EQUALIZER is not set |
675 | # CONFIG_TUN is not set | 672 | # CONFIG_TUN is not set |
676 | 673 | # CONFIG_VETH is not set | |
677 | # | ||
678 | # ARCnet devices | ||
679 | # | ||
680 | # CONFIG_ARCNET is not set | 674 | # CONFIG_ARCNET is not set |
681 | |||
682 | # | ||
683 | # PHY device support | ||
684 | # | ||
685 | CONFIG_PHYLIB=y | 675 | CONFIG_PHYLIB=y |
686 | 676 | ||
687 | # | 677 | # |
688 | # MII PHY device drivers | 678 | # MII PHY device drivers |
689 | # | 679 | # |
690 | CONFIG_MARVELL_PHY=m | 680 | CONFIG_MARVELL_PHY=y |
691 | CONFIG_DAVICOM_PHY=m | 681 | CONFIG_DAVICOM_PHY=y |
692 | CONFIG_QSEMI_PHY=m | 682 | CONFIG_QSEMI_PHY=y |
693 | CONFIG_LXT_PHY=m | 683 | CONFIG_LXT_PHY=y |
694 | CONFIG_CICADA_PHY=m | 684 | CONFIG_CICADA_PHY=y |
695 | CONFIG_VITESSE_PHY=m | 685 | CONFIG_VITESSE_PHY=y |
696 | CONFIG_SMSC_PHY=m | 686 | CONFIG_SMSC_PHY=y |
697 | # CONFIG_BROADCOM_PHY is not set | 687 | CONFIG_BROADCOM_PHY=y |
688 | CONFIG_ICPLUS_PHY=y | ||
689 | CONFIG_REALTEK_PHY=y | ||
690 | CONFIG_NATIONAL_PHY=y | ||
691 | CONFIG_STE10XP=y | ||
692 | CONFIG_LSI_ET1011C_PHY=y | ||
698 | # CONFIG_FIXED_PHY is not set | 693 | # CONFIG_FIXED_PHY is not set |
699 | 694 | # CONFIG_MDIO_BITBANG is not set | |
700 | # | ||
701 | # Ethernet (10 or 100Mbit) | ||
702 | # | ||
703 | CONFIG_NET_ETHERNET=y | 695 | CONFIG_NET_ETHERNET=y |
704 | # CONFIG_MII is not set | 696 | CONFIG_MII=y |
697 | # CONFIG_AX88796 is not set | ||
705 | CONFIG_MIPS_AU1X00_ENET=y | 698 | CONFIG_MIPS_AU1X00_ENET=y |
706 | # CONFIG_HAPPYMEAL is not set | 699 | # CONFIG_HAPPYMEAL is not set |
707 | # CONFIG_SUNGEM is not set | 700 | # CONFIG_SUNGEM is not set |
@@ -709,88 +702,51 @@ CONFIG_MIPS_AU1X00_ENET=y | |||
709 | # CONFIG_NET_VENDOR_3COM is not set | 702 | # CONFIG_NET_VENDOR_3COM is not set |
710 | # CONFIG_SMC91X is not set | 703 | # CONFIG_SMC91X is not set |
711 | # CONFIG_DM9000 is not set | 704 | # CONFIG_DM9000 is not set |
712 | 705 | # CONFIG_ETHOC is not set | |
713 | # | 706 | # CONFIG_SMSC911X is not set |
714 | # Tulip family network device support | 707 | # CONFIG_DNET is not set |
715 | # | ||
716 | # CONFIG_NET_TULIP is not set | 708 | # CONFIG_NET_TULIP is not set |
717 | # CONFIG_HP100 is not set | 709 | # CONFIG_HP100 is not set |
710 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
711 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
712 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
713 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
714 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
715 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
716 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
718 | # CONFIG_NET_PCI is not set | 717 | # CONFIG_NET_PCI is not set |
719 | 718 | # CONFIG_B44 is not set | |
720 | # | 719 | # CONFIG_KS8842 is not set |
721 | # Ethernet (1000 Mbit) | 720 | # CONFIG_KS8851_MLL is not set |
722 | # | 721 | # CONFIG_ATL2 is not set |
723 | # CONFIG_ACENIC is not set | 722 | # CONFIG_NETDEV_1000 is not set |
724 | # CONFIG_DL2K is not set | 723 | # CONFIG_NETDEV_10000 is not set |
725 | # CONFIG_E1000 is not set | ||
726 | # CONFIG_NS83820 is not set | ||
727 | # CONFIG_HAMACHI is not set | ||
728 | # CONFIG_YELLOWFIN is not set | ||
729 | # CONFIG_R8169 is not set | ||
730 | # CONFIG_SIS190 is not set | ||
731 | # CONFIG_SKGE is not set | ||
732 | # CONFIG_SKY2 is not set | ||
733 | # CONFIG_SK98LIN is not set | ||
734 | # CONFIG_TIGON3 is not set | ||
735 | # CONFIG_BNX2 is not set | ||
736 | CONFIG_QLA3XXX=m | ||
737 | # CONFIG_ATL1 is not set | ||
738 | |||
739 | # | ||
740 | # Ethernet (10000 Mbit) | ||
741 | # | ||
742 | # CONFIG_CHELSIO_T1 is not set | ||
743 | CONFIG_CHELSIO_T3=m | ||
744 | # CONFIG_IXGB is not set | ||
745 | # CONFIG_S2IO is not set | ||
746 | # CONFIG_MYRI10GE is not set | ||
747 | CONFIG_NETXEN_NIC=m | ||
748 | |||
749 | # | ||
750 | # Token Ring devices | ||
751 | # | ||
752 | # CONFIG_TR is not set | 724 | # CONFIG_TR is not set |
725 | # CONFIG_WLAN is not set | ||
753 | 726 | ||
754 | # | 727 | # |
755 | # Wireless LAN (non-hamradio) | 728 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
756 | # | 729 | # |
757 | # CONFIG_NET_RADIO is not set | ||
758 | 730 | ||
759 | # | 731 | # |
760 | # PCMCIA network device support | 732 | # USB Network Adapters |
761 | # | 733 | # |
734 | # CONFIG_USB_CATC is not set | ||
735 | # CONFIG_USB_KAWETH is not set | ||
736 | # CONFIG_USB_PEGASUS is not set | ||
737 | # CONFIG_USB_RTL8150 is not set | ||
738 | # CONFIG_USB_USBNET is not set | ||
762 | # CONFIG_NET_PCMCIA is not set | 739 | # CONFIG_NET_PCMCIA is not set |
763 | |||
764 | # | ||
765 | # Wan interfaces | ||
766 | # | ||
767 | # CONFIG_WAN is not set | 740 | # CONFIG_WAN is not set |
768 | # CONFIG_FDDI is not set | 741 | # CONFIG_FDDI is not set |
769 | # CONFIG_HIPPI is not set | 742 | # CONFIG_HIPPI is not set |
770 | CONFIG_PPP=m | 743 | # CONFIG_PPP is not set |
771 | CONFIG_PPP_MULTILINK=y | ||
772 | # CONFIG_PPP_FILTER is not set | ||
773 | CONFIG_PPP_ASYNC=m | ||
774 | # CONFIG_PPP_SYNC_TTY is not set | ||
775 | CONFIG_PPP_DEFLATE=m | ||
776 | # CONFIG_PPP_BSDCOMP is not set | ||
777 | CONFIG_PPP_MPPE=m | ||
778 | CONFIG_PPPOE=m | ||
779 | # CONFIG_SLIP is not set | 744 | # CONFIG_SLIP is not set |
780 | CONFIG_SLHC=m | ||
781 | # CONFIG_SHAPER is not set | ||
782 | # CONFIG_NETCONSOLE is not set | 745 | # CONFIG_NETCONSOLE is not set |
783 | # CONFIG_NETPOLL is not set | 746 | # CONFIG_NETPOLL is not set |
784 | # CONFIG_NET_POLL_CONTROLLER is not set | 747 | # CONFIG_NET_POLL_CONTROLLER is not set |
785 | 748 | # CONFIG_VMXNET3 is not set | |
786 | # | ||
787 | # ISDN subsystem | ||
788 | # | ||
789 | # CONFIG_ISDN is not set | 749 | # CONFIG_ISDN is not set |
790 | |||
791 | # | ||
792 | # Telephony Support | ||
793 | # | ||
794 | # CONFIG_PHONE is not set | 750 | # CONFIG_PHONE is not set |
795 | 751 | ||
796 | # | 752 | # |
@@ -798,16 +754,14 @@ CONFIG_SLHC=m | |||
798 | # | 754 | # |
799 | CONFIG_INPUT=y | 755 | CONFIG_INPUT=y |
800 | # CONFIG_INPUT_FF_MEMLESS is not set | 756 | # CONFIG_INPUT_FF_MEMLESS is not set |
757 | # CONFIG_INPUT_POLLDEV is not set | ||
758 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
801 | 759 | ||
802 | # | 760 | # |
803 | # Userland interfaces | 761 | # Userland interfaces |
804 | # | 762 | # |
805 | CONFIG_INPUT_MOUSEDEV=y | 763 | # CONFIG_INPUT_MOUSEDEV is not set |
806 | CONFIG_INPUT_MOUSEDEV_PSAUX=y | ||
807 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
808 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
809 | # CONFIG_INPUT_JOYDEV is not set | 764 | # CONFIG_INPUT_JOYDEV is not set |
810 | # CONFIG_INPUT_TSDEV is not set | ||
811 | CONFIG_INPUT_EVDEV=y | 765 | CONFIG_INPUT_EVDEV=y |
812 | # CONFIG_INPUT_EVBUG is not set | 766 | # CONFIG_INPUT_EVBUG is not set |
813 | 767 | ||
@@ -817,33 +771,34 @@ CONFIG_INPUT_EVDEV=y | |||
817 | # CONFIG_INPUT_KEYBOARD is not set | 771 | # CONFIG_INPUT_KEYBOARD is not set |
818 | # CONFIG_INPUT_MOUSE is not set | 772 | # CONFIG_INPUT_MOUSE is not set |
819 | # CONFIG_INPUT_JOYSTICK is not set | 773 | # CONFIG_INPUT_JOYSTICK is not set |
774 | # CONFIG_INPUT_TABLET is not set | ||
820 | # CONFIG_INPUT_TOUCHSCREEN is not set | 775 | # CONFIG_INPUT_TOUCHSCREEN is not set |
821 | # CONFIG_INPUT_MISC is not set | 776 | # CONFIG_INPUT_MISC is not set |
822 | 777 | ||
823 | # | 778 | # |
824 | # Hardware I/O ports | 779 | # Hardware I/O ports |
825 | # | 780 | # |
826 | CONFIG_SERIO=y | 781 | # CONFIG_SERIO is not set |
827 | # CONFIG_SERIO_I8042 is not set | ||
828 | CONFIG_SERIO_SERPORT=y | ||
829 | # CONFIG_SERIO_PCIPS2 is not set | ||
830 | # CONFIG_SERIO_LIBPS2 is not set | ||
831 | CONFIG_SERIO_RAW=m | ||
832 | # CONFIG_GAMEPORT is not set | 782 | # CONFIG_GAMEPORT is not set |
833 | 783 | ||
834 | # | 784 | # |
835 | # Character devices | 785 | # Character devices |
836 | # | 786 | # |
837 | # CONFIG_VT is not set | 787 | CONFIG_VT=y |
788 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
789 | CONFIG_VT_CONSOLE=y | ||
790 | CONFIG_HW_CONSOLE=y | ||
791 | CONFIG_VT_HW_CONSOLE_BINDING=y | ||
792 | CONFIG_DEVKMEM=y | ||
838 | # CONFIG_SERIAL_NONSTANDARD is not set | 793 | # CONFIG_SERIAL_NONSTANDARD is not set |
839 | # CONFIG_AU1X00_GPIO is not set | 794 | # CONFIG_NOZOMI is not set |
840 | 795 | ||
841 | # | 796 | # |
842 | # Serial drivers | 797 | # Serial drivers |
843 | # | 798 | # |
844 | CONFIG_SERIAL_8250=y | 799 | CONFIG_SERIAL_8250=y |
845 | CONFIG_SERIAL_8250_CONSOLE=y | 800 | CONFIG_SERIAL_8250_CONSOLE=y |
846 | CONFIG_SERIAL_8250_PCI=y | 801 | # CONFIG_SERIAL_8250_PCI is not set |
847 | # CONFIG_SERIAL_8250_CS is not set | 802 | # CONFIG_SERIAL_8250_CS is not set |
848 | CONFIG_SERIAL_8250_NR_UARTS=4 | 803 | CONFIG_SERIAL_8250_NR_UARTS=4 |
849 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 804 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
@@ -857,282 +812,492 @@ CONFIG_SERIAL_CORE=y | |||
857 | CONFIG_SERIAL_CORE_CONSOLE=y | 812 | CONFIG_SERIAL_CORE_CONSOLE=y |
858 | # CONFIG_SERIAL_JSM is not set | 813 | # CONFIG_SERIAL_JSM is not set |
859 | CONFIG_UNIX98_PTYS=y | 814 | CONFIG_UNIX98_PTYS=y |
860 | CONFIG_LEGACY_PTYS=y | 815 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
861 | CONFIG_LEGACY_PTY_COUNT=256 | 816 | # CONFIG_LEGACY_PTYS is not set |
862 | |||
863 | # | ||
864 | # IPMI | ||
865 | # | ||
866 | # CONFIG_IPMI_HANDLER is not set | 817 | # CONFIG_IPMI_HANDLER is not set |
867 | |||
868 | # | ||
869 | # Watchdog Cards | ||
870 | # | ||
871 | # CONFIG_WATCHDOG is not set | ||
872 | # CONFIG_HW_RANDOM is not set | 818 | # CONFIG_HW_RANDOM is not set |
873 | # CONFIG_RTC is not set | ||
874 | # CONFIG_GEN_RTC is not set | ||
875 | # CONFIG_DTLK is not set | ||
876 | # CONFIG_R3964 is not set | 819 | # CONFIG_R3964 is not set |
877 | # CONFIG_APPLICOM is not set | 820 | # CONFIG_APPLICOM is not set |
878 | # CONFIG_DRM is not set | ||
879 | 821 | ||
880 | # | 822 | # |
881 | # PCMCIA character devices | 823 | # PCMCIA character devices |
882 | # | 824 | # |
883 | CONFIG_SYNCLINK_CS=m | 825 | # CONFIG_SYNCLINK_CS is not set |
884 | # CONFIG_CARDMAN_4000 is not set | 826 | # CONFIG_CARDMAN_4000 is not set |
885 | # CONFIG_CARDMAN_4040 is not set | 827 | # CONFIG_CARDMAN_4040 is not set |
828 | # CONFIG_IPWIRELESS is not set | ||
886 | # CONFIG_RAW_DRIVER is not set | 829 | # CONFIG_RAW_DRIVER is not set |
830 | # CONFIG_TCG_TPM is not set | ||
831 | CONFIG_DEVPORT=y | ||
832 | CONFIG_I2C=y | ||
833 | CONFIG_I2C_BOARDINFO=y | ||
834 | # CONFIG_I2C_COMPAT is not set | ||
835 | CONFIG_I2C_CHARDEV=y | ||
836 | # CONFIG_I2C_HELPER_AUTO is not set | ||
887 | 837 | ||
888 | # | 838 | # |
889 | # TPM devices | 839 | # I2C Algorithms |
890 | # | 840 | # |
891 | # CONFIG_TCG_TPM is not set | 841 | # CONFIG_I2C_ALGOBIT is not set |
842 | # CONFIG_I2C_ALGOPCF is not set | ||
843 | # CONFIG_I2C_ALGOPCA is not set | ||
892 | 844 | ||
893 | # | 845 | # |
894 | # I2C support | 846 | # I2C Hardware Bus support |
895 | # | 847 | # |
896 | # CONFIG_I2C is not set | ||
897 | 848 | ||
898 | # | 849 | # |
899 | # SPI support | 850 | # PC SMBus host controller drivers |
900 | # | 851 | # |
901 | # CONFIG_SPI is not set | 852 | # CONFIG_I2C_ALI1535 is not set |
902 | # CONFIG_SPI_MASTER is not set | 853 | # CONFIG_I2C_ALI1563 is not set |
854 | # CONFIG_I2C_ALI15X3 is not set | ||
855 | # CONFIG_I2C_AMD756 is not set | ||
856 | # CONFIG_I2C_AMD8111 is not set | ||
857 | # CONFIG_I2C_I801 is not set | ||
858 | # CONFIG_I2C_ISCH is not set | ||
859 | # CONFIG_I2C_PIIX4 is not set | ||
860 | # CONFIG_I2C_NFORCE2 is not set | ||
861 | # CONFIG_I2C_SIS5595 is not set | ||
862 | # CONFIG_I2C_SIS630 is not set | ||
863 | # CONFIG_I2C_SIS96X is not set | ||
864 | # CONFIG_I2C_VIA is not set | ||
865 | # CONFIG_I2C_VIAPRO is not set | ||
903 | 866 | ||
904 | # | 867 | # |
905 | # Dallas's 1-wire bus | 868 | # I2C system bus drivers (mostly embedded / system-on-chip) |
906 | # | 869 | # |
907 | # CONFIG_W1 is not set | 870 | CONFIG_I2C_AU1550=y |
871 | # CONFIG_I2C_GPIO is not set | ||
872 | # CONFIG_I2C_OCORES is not set | ||
873 | # CONFIG_I2C_SIMTEC is not set | ||
874 | |||
875 | # | ||
876 | # External I2C/SMBus adapter drivers | ||
877 | # | ||
878 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
879 | # CONFIG_I2C_TAOS_EVM is not set | ||
880 | # CONFIG_I2C_TINY_USB is not set | ||
908 | 881 | ||
909 | # | 882 | # |
910 | # Hardware Monitoring support | 883 | # Other I2C/SMBus bus drivers |
911 | # | 884 | # |
885 | # CONFIG_I2C_PCA_PLATFORM is not set | ||
886 | # CONFIG_I2C_STUB is not set | ||
887 | |||
888 | # | ||
889 | # Miscellaneous I2C Chip support | ||
890 | # | ||
891 | # CONFIG_SENSORS_TSL2550 is not set | ||
892 | # CONFIG_I2C_DEBUG_CORE is not set | ||
893 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
894 | # CONFIG_I2C_DEBUG_BUS is not set | ||
895 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
896 | # CONFIG_SPI is not set | ||
897 | |||
898 | # | ||
899 | # PPS support | ||
900 | # | ||
901 | # CONFIG_PPS is not set | ||
902 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
903 | # CONFIG_GPIOLIB is not set | ||
904 | # CONFIG_W1 is not set | ||
905 | # CONFIG_POWER_SUPPLY is not set | ||
912 | # CONFIG_HWMON is not set | 906 | # CONFIG_HWMON is not set |
913 | # CONFIG_HWMON_VID is not set | 907 | # CONFIG_THERMAL is not set |
908 | # CONFIG_WATCHDOG is not set | ||
909 | CONFIG_SSB_POSSIBLE=y | ||
914 | 910 | ||
915 | # | 911 | # |
916 | # Multimedia devices | 912 | # Sonics Silicon Backplane |
917 | # | 913 | # |
918 | # CONFIG_VIDEO_DEV is not set | 914 | # CONFIG_SSB is not set |
919 | 915 | ||
920 | # | 916 | # |
921 | # Digital Video Broadcasting Devices | 917 | # Multifunction device drivers |
922 | # | 918 | # |
923 | # CONFIG_DVB is not set | 919 | # CONFIG_MFD_CORE is not set |
920 | # CONFIG_MFD_SM501 is not set | ||
921 | # CONFIG_HTC_PASIC3 is not set | ||
922 | # CONFIG_TWL4030_CORE is not set | ||
923 | # CONFIG_MFD_TMIO is not set | ||
924 | # CONFIG_PMIC_DA903X is not set | ||
925 | # CONFIG_PMIC_ADP5520 is not set | ||
926 | # CONFIG_MFD_WM8400 is not set | ||
927 | # CONFIG_MFD_WM831X is not set | ||
928 | # CONFIG_MFD_WM8350_I2C is not set | ||
929 | # CONFIG_MFD_PCF50633 is not set | ||
930 | # CONFIG_AB3100_CORE is not set | ||
931 | # CONFIG_MFD_88PM8607 is not set | ||
932 | # CONFIG_REGULATOR is not set | ||
933 | # CONFIG_MEDIA_SUPPORT is not set | ||
924 | 934 | ||
925 | # | 935 | # |
926 | # Graphics support | 936 | # Graphics support |
927 | # | 937 | # |
928 | # CONFIG_FIRMWARE_EDID is not set | 938 | # CONFIG_VGA_ARB is not set |
939 | # CONFIG_DRM is not set | ||
940 | # CONFIG_VGASTATE is not set | ||
941 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
929 | # CONFIG_FB is not set | 942 | # CONFIG_FB is not set |
930 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 943 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
931 | 944 | ||
932 | # | 945 | # |
933 | # Sound | 946 | # Display device support |
934 | # | ||
935 | # CONFIG_SOUND is not set | ||
936 | |||
937 | # | ||
938 | # HID Devices | ||
939 | # | 947 | # |
940 | # CONFIG_HID is not set | 948 | # CONFIG_DISPLAY_SUPPORT is not set |
941 | 949 | ||
942 | # | 950 | # |
943 | # USB support | 951 | # Console display driver support |
944 | # | 952 | # |
953 | CONFIG_VGA_CONSOLE=y | ||
954 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set | ||
955 | CONFIG_DUMMY_CONSOLE=y | ||
956 | # CONFIG_SOUND is not set | ||
957 | CONFIG_HID_SUPPORT=y | ||
958 | CONFIG_HID=y | ||
959 | CONFIG_HIDRAW=y | ||
960 | |||
961 | # | ||
962 | # USB Input Devices | ||
963 | # | ||
964 | CONFIG_USB_HID=y | ||
965 | # CONFIG_HID_PID is not set | ||
966 | CONFIG_USB_HIDDEV=y | ||
967 | |||
968 | # | ||
969 | # Special HID drivers | ||
970 | # | ||
971 | # CONFIG_HID_A4TECH is not set | ||
972 | # CONFIG_HID_APPLE is not set | ||
973 | # CONFIG_HID_BELKIN is not set | ||
974 | # CONFIG_HID_CHERRY is not set | ||
975 | # CONFIG_HID_CHICONY is not set | ||
976 | # CONFIG_HID_CYPRESS is not set | ||
977 | # CONFIG_HID_DRAGONRISE is not set | ||
978 | # CONFIG_HID_EZKEY is not set | ||
979 | # CONFIG_HID_KYE is not set | ||
980 | # CONFIG_HID_GYRATION is not set | ||
981 | # CONFIG_HID_TWINHAN is not set | ||
982 | # CONFIG_HID_KENSINGTON is not set | ||
983 | # CONFIG_HID_LOGITECH is not set | ||
984 | # CONFIG_HID_MICROSOFT is not set | ||
985 | # CONFIG_HID_MONTEREY is not set | ||
986 | # CONFIG_HID_NTRIG is not set | ||
987 | # CONFIG_HID_PANTHERLORD is not set | ||
988 | # CONFIG_HID_PETALYNX is not set | ||
989 | # CONFIG_HID_SAMSUNG is not set | ||
990 | # CONFIG_HID_SONY is not set | ||
991 | # CONFIG_HID_SUNPLUS is not set | ||
992 | # CONFIG_HID_GREENASIA is not set | ||
993 | # CONFIG_HID_SMARTJOYPLUS is not set | ||
994 | # CONFIG_HID_TOPSEED is not set | ||
995 | # CONFIG_HID_THRUSTMASTER is not set | ||
996 | # CONFIG_HID_ZEROPLUS is not set | ||
997 | CONFIG_USB_SUPPORT=y | ||
945 | CONFIG_USB_ARCH_HAS_HCD=y | 998 | CONFIG_USB_ARCH_HAS_HCD=y |
946 | CONFIG_USB_ARCH_HAS_OHCI=y | 999 | CONFIG_USB_ARCH_HAS_OHCI=y |
947 | CONFIG_USB_ARCH_HAS_EHCI=y | 1000 | CONFIG_USB_ARCH_HAS_EHCI=y |
948 | # CONFIG_USB is not set | 1001 | CONFIG_USB=y |
1002 | # CONFIG_USB_DEBUG is not set | ||
1003 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
949 | 1004 | ||
950 | # | 1005 | # |
951 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1006 | # Miscellaneous USB options |
952 | # | 1007 | # |
1008 | CONFIG_USB_DEVICEFS=y | ||
1009 | CONFIG_USB_DEVICE_CLASS=y | ||
1010 | CONFIG_USB_DYNAMIC_MINORS=y | ||
1011 | CONFIG_USB_SUSPEND=y | ||
1012 | # CONFIG_USB_OTG is not set | ||
1013 | # CONFIG_USB_OTG_WHITELIST is not set | ||
1014 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1015 | # CONFIG_USB_MON is not set | ||
1016 | # CONFIG_USB_WUSB is not set | ||
1017 | # CONFIG_USB_WUSB_CBAF is not set | ||
953 | 1018 | ||
954 | # | 1019 | # |
955 | # USB Gadget Support | 1020 | # USB Host Controller Drivers |
956 | # | 1021 | # |
957 | # CONFIG_USB_GADGET is not set | 1022 | # CONFIG_USB_C67X00_HCD is not set |
1023 | # CONFIG_USB_XHCI_HCD is not set | ||
1024 | CONFIG_USB_EHCI_HCD=y | ||
1025 | CONFIG_USB_EHCI_ROOT_HUB_TT=y | ||
1026 | CONFIG_USB_EHCI_TT_NEWSCHED=y | ||
1027 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1028 | # CONFIG_USB_ISP116X_HCD is not set | ||
1029 | # CONFIG_USB_ISP1760_HCD is not set | ||
1030 | # CONFIG_USB_ISP1362_HCD is not set | ||
1031 | CONFIG_USB_OHCI_HCD=y | ||
1032 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
1033 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
1034 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
1035 | # CONFIG_USB_UHCI_HCD is not set | ||
1036 | # CONFIG_USB_SL811_HCD is not set | ||
1037 | # CONFIG_USB_R8A66597_HCD is not set | ||
1038 | # CONFIG_USB_WHCI_HCD is not set | ||
1039 | # CONFIG_USB_HWA_HCD is not set | ||
958 | 1040 | ||
959 | # | 1041 | # |
960 | # MMC/SD Card support | 1042 | # USB Device Class drivers |
961 | # | 1043 | # |
962 | # CONFIG_MMC is not set | 1044 | # CONFIG_USB_ACM is not set |
1045 | # CONFIG_USB_PRINTER is not set | ||
1046 | # CONFIG_USB_WDM is not set | ||
1047 | # CONFIG_USB_TMC is not set | ||
963 | 1048 | ||
964 | # | 1049 | # |
965 | # LED devices | 1050 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may |
966 | # | 1051 | # |
967 | # CONFIG_NEW_LEDS is not set | ||
968 | 1052 | ||
969 | # | 1053 | # |
970 | # LED drivers | 1054 | # also be needed; see USB_STORAGE Help for more info |
971 | # | 1055 | # |
1056 | # CONFIG_USB_LIBUSUAL is not set | ||
972 | 1057 | ||
973 | # | 1058 | # |
974 | # LED Triggers | 1059 | # USB Imaging devices |
975 | # | 1060 | # |
1061 | # CONFIG_USB_MDC800 is not set | ||
976 | 1062 | ||
977 | # | 1063 | # |
978 | # InfiniBand support | 1064 | # USB port drivers |
979 | # | 1065 | # |
980 | # CONFIG_INFINIBAND is not set | 1066 | # CONFIG_USB_SERIAL is not set |
981 | 1067 | ||
982 | # | 1068 | # |
983 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 1069 | # USB Miscellaneous drivers |
984 | # | 1070 | # |
1071 | # CONFIG_USB_EMI62 is not set | ||
1072 | # CONFIG_USB_EMI26 is not set | ||
1073 | # CONFIG_USB_ADUTUX is not set | ||
1074 | # CONFIG_USB_SEVSEG is not set | ||
1075 | # CONFIG_USB_RIO500 is not set | ||
1076 | # CONFIG_USB_LEGOTOWER is not set | ||
1077 | # CONFIG_USB_LCD is not set | ||
1078 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1079 | # CONFIG_USB_LED is not set | ||
1080 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1081 | # CONFIG_USB_CYTHERM is not set | ||
1082 | # CONFIG_USB_IDMOUSE is not set | ||
1083 | # CONFIG_USB_FTDI_ELAN is not set | ||
1084 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1085 | # CONFIG_USB_SISUSBVGA is not set | ||
1086 | # CONFIG_USB_LD is not set | ||
1087 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1088 | # CONFIG_USB_IOWARRIOR is not set | ||
1089 | # CONFIG_USB_TEST is not set | ||
1090 | # CONFIG_USB_ISIGHTFW is not set | ||
1091 | # CONFIG_USB_VST is not set | ||
1092 | # CONFIG_USB_GADGET is not set | ||
1093 | |||
1094 | # | ||
1095 | # OTG and related infrastructure | ||
1096 | # | ||
1097 | # CONFIG_USB_GPIO_VBUS is not set | ||
1098 | # CONFIG_NOP_USB_XCEIV is not set | ||
1099 | # CONFIG_UWB is not set | ||
1100 | # CONFIG_MMC is not set | ||
1101 | # CONFIG_MEMSTICK is not set | ||
1102 | # CONFIG_NEW_LEDS is not set | ||
1103 | # CONFIG_ACCESSIBILITY is not set | ||
1104 | # CONFIG_INFINIBAND is not set | ||
1105 | CONFIG_RTC_LIB=y | ||
1106 | CONFIG_RTC_CLASS=y | ||
1107 | CONFIG_RTC_HCTOSYS=y | ||
1108 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1109 | # CONFIG_RTC_DEBUG is not set | ||
985 | 1110 | ||
986 | # | 1111 | # |
987 | # Real Time Clock | 1112 | # RTC interfaces |
988 | # | 1113 | # |
989 | # CONFIG_RTC_CLASS is not set | 1114 | CONFIG_RTC_INTF_SYSFS=y |
1115 | CONFIG_RTC_INTF_PROC=y | ||
1116 | CONFIG_RTC_INTF_DEV=y | ||
1117 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1118 | # CONFIG_RTC_DRV_TEST is not set | ||
990 | 1119 | ||
991 | # | 1120 | # |
992 | # DMA Engine support | 1121 | # I2C RTC drivers |
993 | # | 1122 | # |
994 | # CONFIG_DMA_ENGINE is not set | 1123 | # CONFIG_RTC_DRV_DS1307 is not set |
1124 | # CONFIG_RTC_DRV_DS1374 is not set | ||
1125 | # CONFIG_RTC_DRV_DS1672 is not set | ||
1126 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
1127 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
1128 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
1129 | # CONFIG_RTC_DRV_X1205 is not set | ||
1130 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
1131 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
1132 | # CONFIG_RTC_DRV_M41T80 is not set | ||
1133 | # CONFIG_RTC_DRV_BQ32K is not set | ||
1134 | # CONFIG_RTC_DRV_S35390A is not set | ||
1135 | # CONFIG_RTC_DRV_FM3130 is not set | ||
1136 | # CONFIG_RTC_DRV_RX8581 is not set | ||
1137 | # CONFIG_RTC_DRV_RX8025 is not set | ||
995 | 1138 | ||
996 | # | 1139 | # |
997 | # DMA Clients | 1140 | # SPI RTC drivers |
998 | # | 1141 | # |
999 | 1142 | ||
1000 | # | 1143 | # |
1001 | # DMA Devices | 1144 | # Platform RTC drivers |
1002 | # | 1145 | # |
1146 | # CONFIG_RTC_DRV_CMOS is not set | ||
1147 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1148 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1149 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1150 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1151 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1152 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1153 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1154 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1155 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
1156 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1157 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
1158 | # CONFIG_RTC_DRV_V3020 is not set | ||
1003 | 1159 | ||
1004 | # | 1160 | # |
1005 | # Auxiliary Display support | 1161 | # on-CPU RTC drivers |
1006 | # | 1162 | # |
1163 | CONFIG_RTC_DRV_AU1XXX=y | ||
1164 | # CONFIG_DMADEVICES is not set | ||
1165 | # CONFIG_AUXDISPLAY is not set | ||
1166 | # CONFIG_UIO is not set | ||
1007 | 1167 | ||
1008 | # | 1168 | # |
1009 | # Virtualization | 1169 | # TI VLYNQ |
1010 | # | 1170 | # |
1171 | # CONFIG_STAGING is not set | ||
1011 | 1172 | ||
1012 | # | 1173 | # |
1013 | # File systems | 1174 | # File systems |
1014 | # | 1175 | # |
1015 | CONFIG_EXT2_FS=y | 1176 | CONFIG_EXT2_FS=y |
1016 | CONFIG_EXT2_FS_XATTR=y | 1177 | # CONFIG_EXT2_FS_XATTR is not set |
1017 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
1018 | # CONFIG_EXT2_FS_SECURITY is not set | ||
1019 | # CONFIG_EXT2_FS_XIP is not set | 1178 | # CONFIG_EXT2_FS_XIP is not set |
1020 | CONFIG_EXT3_FS=y | 1179 | # CONFIG_EXT3_FS is not set |
1021 | CONFIG_EXT3_FS_XATTR=y | 1180 | # CONFIG_EXT4_FS is not set |
1022 | CONFIG_EXT3_FS_POSIX_ACL=y | 1181 | # CONFIG_REISERFS_FS is not set |
1023 | CONFIG_EXT3_FS_SECURITY=y | ||
1024 | # CONFIG_EXT4DEV_FS is not set | ||
1025 | CONFIG_JBD=y | ||
1026 | # CONFIG_JBD_DEBUG is not set | ||
1027 | CONFIG_FS_MBCACHE=y | ||
1028 | CONFIG_REISERFS_FS=m | ||
1029 | # CONFIG_REISERFS_CHECK is not set | ||
1030 | # CONFIG_REISERFS_PROC_INFO is not set | ||
1031 | CONFIG_REISERFS_FS_XATTR=y | ||
1032 | CONFIG_REISERFS_FS_POSIX_ACL=y | ||
1033 | CONFIG_REISERFS_FS_SECURITY=y | ||
1034 | # CONFIG_JFS_FS is not set | 1182 | # CONFIG_JFS_FS is not set |
1035 | CONFIG_FS_POSIX_ACL=y | 1183 | # CONFIG_FS_POSIX_ACL is not set |
1036 | # CONFIG_XFS_FS is not set | 1184 | # CONFIG_XFS_FS is not set |
1037 | # CONFIG_GFS2_FS is not set | 1185 | # CONFIG_GFS2_FS is not set |
1038 | # CONFIG_OCFS2_FS is not set | 1186 | # CONFIG_OCFS2_FS is not set |
1039 | # CONFIG_MINIX_FS is not set | 1187 | # CONFIG_BTRFS_FS is not set |
1040 | # CONFIG_ROMFS_FS is not set | 1188 | # CONFIG_NILFS2_FS is not set |
1189 | CONFIG_FILE_LOCKING=y | ||
1190 | CONFIG_FSNOTIFY=y | ||
1191 | CONFIG_DNOTIFY=y | ||
1041 | CONFIG_INOTIFY=y | 1192 | CONFIG_INOTIFY=y |
1042 | CONFIG_INOTIFY_USER=y | 1193 | CONFIG_INOTIFY_USER=y |
1043 | # CONFIG_QUOTA is not set | 1194 | # CONFIG_QUOTA is not set |
1044 | CONFIG_DNOTIFY=y | 1195 | # CONFIG_AUTOFS_FS is not set |
1045 | CONFIG_AUTOFS_FS=m | 1196 | # CONFIG_AUTOFS4_FS is not set |
1046 | CONFIG_AUTOFS4_FS=m | 1197 | # CONFIG_FUSE_FS is not set |
1047 | CONFIG_FUSE_FS=m | 1198 | |
1048 | CONFIG_GENERIC_ACL=y | 1199 | # |
1200 | # Caches | ||
1201 | # | ||
1202 | # CONFIG_FSCACHE is not set | ||
1049 | 1203 | ||
1050 | # | 1204 | # |
1051 | # CD-ROM/DVD Filesystems | 1205 | # CD-ROM/DVD Filesystems |
1052 | # | 1206 | # |
1053 | # CONFIG_ISO9660_FS is not set | 1207 | CONFIG_ISO9660_FS=y |
1054 | # CONFIG_UDF_FS is not set | 1208 | CONFIG_JOLIET=y |
1209 | CONFIG_ZISOFS=y | ||
1210 | CONFIG_UDF_FS=y | ||
1211 | CONFIG_UDF_NLS=y | ||
1055 | 1212 | ||
1056 | # | 1213 | # |
1057 | # DOS/FAT/NT Filesystems | 1214 | # DOS/FAT/NT Filesystems |
1058 | # | 1215 | # |
1216 | CONFIG_FAT_FS=y | ||
1059 | # CONFIG_MSDOS_FS is not set | 1217 | # CONFIG_MSDOS_FS is not set |
1060 | # CONFIG_VFAT_FS is not set | 1218 | CONFIG_VFAT_FS=y |
1219 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
1220 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
1061 | # CONFIG_NTFS_FS is not set | 1221 | # CONFIG_NTFS_FS is not set |
1062 | 1222 | ||
1063 | # | 1223 | # |
1064 | # Pseudo filesystems | 1224 | # Pseudo filesystems |
1065 | # | 1225 | # |
1066 | CONFIG_PROC_FS=y | 1226 | CONFIG_PROC_FS=y |
1067 | CONFIG_PROC_KCORE=y | 1227 | # CONFIG_PROC_KCORE is not set |
1068 | CONFIG_PROC_SYSCTL=y | 1228 | CONFIG_PROC_SYSCTL=y |
1229 | # CONFIG_PROC_PAGE_MONITOR is not set | ||
1069 | CONFIG_SYSFS=y | 1230 | CONFIG_SYSFS=y |
1070 | CONFIG_TMPFS=y | 1231 | CONFIG_TMPFS=y |
1071 | CONFIG_TMPFS_POSIX_ACL=y | 1232 | # CONFIG_TMPFS_POSIX_ACL is not set |
1072 | # CONFIG_HUGETLB_PAGE is not set | 1233 | # CONFIG_HUGETLB_PAGE is not set |
1073 | CONFIG_RAMFS=y | 1234 | # CONFIG_CONFIGFS_FS is not set |
1074 | CONFIG_CONFIGFS_FS=m | 1235 | CONFIG_MISC_FILESYSTEMS=y |
1075 | |||
1076 | # | ||
1077 | # Miscellaneous filesystems | ||
1078 | # | ||
1079 | # CONFIG_ADFS_FS is not set | 1236 | # CONFIG_ADFS_FS is not set |
1080 | # CONFIG_AFFS_FS is not set | 1237 | # CONFIG_AFFS_FS is not set |
1081 | # CONFIG_ECRYPT_FS is not set | ||
1082 | # CONFIG_HFS_FS is not set | 1238 | # CONFIG_HFS_FS is not set |
1083 | # CONFIG_HFSPLUS_FS is not set | 1239 | # CONFIG_HFSPLUS_FS is not set |
1084 | # CONFIG_BEFS_FS is not set | 1240 | # CONFIG_BEFS_FS is not set |
1085 | # CONFIG_BFS_FS is not set | 1241 | # CONFIG_BFS_FS is not set |
1086 | # CONFIG_EFS_FS is not set | 1242 | # CONFIG_EFS_FS is not set |
1087 | # CONFIG_JFFS2_FS is not set | 1243 | CONFIG_JFFS2_FS=y |
1088 | CONFIG_CRAMFS=m | 1244 | CONFIG_JFFS2_FS_DEBUG=0 |
1245 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1246 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1247 | CONFIG_JFFS2_SUMMARY=y | ||
1248 | # CONFIG_JFFS2_FS_XATTR is not set | ||
1249 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1250 | CONFIG_JFFS2_ZLIB=y | ||
1251 | CONFIG_JFFS2_LZO=y | ||
1252 | CONFIG_JFFS2_RTIME=y | ||
1253 | CONFIG_JFFS2_RUBIN=y | ||
1254 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1255 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1256 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1257 | # CONFIG_JFFS2_CMODE_FAVOURLZO is not set | ||
1258 | # CONFIG_CRAMFS is not set | ||
1259 | CONFIG_SQUASHFS=y | ||
1260 | # CONFIG_SQUASHFS_EMBEDDED is not set | ||
1261 | CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 | ||
1089 | # CONFIG_VXFS_FS is not set | 1262 | # CONFIG_VXFS_FS is not set |
1263 | # CONFIG_MINIX_FS is not set | ||
1264 | # CONFIG_OMFS_FS is not set | ||
1090 | # CONFIG_HPFS_FS is not set | 1265 | # CONFIG_HPFS_FS is not set |
1091 | # CONFIG_QNX4FS_FS is not set | 1266 | # CONFIG_QNX4FS_FS is not set |
1267 | # CONFIG_ROMFS_FS is not set | ||
1092 | # CONFIG_SYSV_FS is not set | 1268 | # CONFIG_SYSV_FS is not set |
1093 | # CONFIG_UFS_FS is not set | 1269 | # CONFIG_UFS_FS is not set |
1094 | 1270 | CONFIG_NETWORK_FILESYSTEMS=y | |
1095 | # | ||
1096 | # Network File Systems | ||
1097 | # | ||
1098 | CONFIG_NFS_FS=y | 1271 | CONFIG_NFS_FS=y |
1099 | # CONFIG_NFS_V3 is not set | 1272 | CONFIG_NFS_V3=y |
1273 | # CONFIG_NFS_V3_ACL is not set | ||
1100 | # CONFIG_NFS_V4 is not set | 1274 | # CONFIG_NFS_V4 is not set |
1101 | # CONFIG_NFS_DIRECTIO is not set | ||
1102 | CONFIG_NFSD=m | ||
1103 | # CONFIG_NFSD_V3 is not set | ||
1104 | # CONFIG_NFSD_TCP is not set | ||
1105 | CONFIG_ROOT_NFS=y | 1275 | CONFIG_ROOT_NFS=y |
1276 | # CONFIG_NFSD is not set | ||
1106 | CONFIG_LOCKD=y | 1277 | CONFIG_LOCKD=y |
1107 | CONFIG_EXPORTFS=m | 1278 | CONFIG_LOCKD_V4=y |
1108 | CONFIG_NFS_COMMON=y | 1279 | CONFIG_NFS_COMMON=y |
1109 | CONFIG_SUNRPC=y | 1280 | CONFIG_SUNRPC=y |
1110 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1281 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1111 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1282 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1112 | CONFIG_SMB_FS=m | 1283 | # CONFIG_SMB_FS is not set |
1113 | # CONFIG_SMB_NLS_DEFAULT is not set | ||
1114 | # CONFIG_CIFS is not set | 1284 | # CONFIG_CIFS is not set |
1115 | # CONFIG_NCP_FS is not set | 1285 | # CONFIG_NCP_FS is not set |
1116 | # CONFIG_CODA_FS is not set | 1286 | # CONFIG_CODA_FS is not set |
1117 | # CONFIG_AFS_FS is not set | 1287 | # CONFIG_AFS_FS is not set |
1118 | # CONFIG_9P_FS is not set | ||
1119 | 1288 | ||
1120 | # | 1289 | # |
1121 | # Partition Types | 1290 | # Partition Types |
1122 | # | 1291 | # |
1123 | # CONFIG_PARTITION_ADVANCED is not set | 1292 | # CONFIG_PARTITION_ADVANCED is not set |
1124 | CONFIG_MSDOS_PARTITION=y | 1293 | CONFIG_MSDOS_PARTITION=y |
1125 | 1294 | CONFIG_NLS=y | |
1126 | # | ||
1127 | # Native Language Support | ||
1128 | # | ||
1129 | CONFIG_NLS=m | ||
1130 | CONFIG_NLS_DEFAULT="iso8859-1" | 1295 | CONFIG_NLS_DEFAULT="iso8859-1" |
1131 | # CONFIG_NLS_CODEPAGE_437 is not set | 1296 | CONFIG_NLS_CODEPAGE_437=y |
1132 | # CONFIG_NLS_CODEPAGE_737 is not set | 1297 | # CONFIG_NLS_CODEPAGE_737 is not set |
1133 | # CONFIG_NLS_CODEPAGE_775 is not set | 1298 | # CONFIG_NLS_CODEPAGE_775 is not set |
1134 | # CONFIG_NLS_CODEPAGE_850 is not set | 1299 | CONFIG_NLS_CODEPAGE_850=y |
1135 | # CONFIG_NLS_CODEPAGE_852 is not set | 1300 | CONFIG_NLS_CODEPAGE_852=y |
1136 | # CONFIG_NLS_CODEPAGE_855 is not set | 1301 | # CONFIG_NLS_CODEPAGE_855 is not set |
1137 | # CONFIG_NLS_CODEPAGE_857 is not set | 1302 | # CONFIG_NLS_CODEPAGE_857 is not set |
1138 | # CONFIG_NLS_CODEPAGE_860 is not set | 1303 | # CONFIG_NLS_CODEPAGE_860 is not set |
@@ -1149,10 +1314,10 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1149 | # CONFIG_NLS_CODEPAGE_949 is not set | 1314 | # CONFIG_NLS_CODEPAGE_949 is not set |
1150 | # CONFIG_NLS_CODEPAGE_874 is not set | 1315 | # CONFIG_NLS_CODEPAGE_874 is not set |
1151 | # CONFIG_NLS_ISO8859_8 is not set | 1316 | # CONFIG_NLS_ISO8859_8 is not set |
1152 | # CONFIG_NLS_CODEPAGE_1250 is not set | 1317 | CONFIG_NLS_CODEPAGE_1250=y |
1153 | # CONFIG_NLS_CODEPAGE_1251 is not set | 1318 | # CONFIG_NLS_CODEPAGE_1251 is not set |
1154 | # CONFIG_NLS_ASCII is not set | 1319 | CONFIG_NLS_ASCII=y |
1155 | # CONFIG_NLS_ISO8859_1 is not set | 1320 | CONFIG_NLS_ISO8859_1=y |
1156 | # CONFIG_NLS_ISO8859_2 is not set | 1321 | # CONFIG_NLS_ISO8859_2 is not set |
1157 | # CONFIG_NLS_ISO8859_3 is not set | 1322 | # CONFIG_NLS_ISO8859_3 is not set |
1158 | # CONFIG_NLS_ISO8859_4 is not set | 1323 | # CONFIG_NLS_ISO8859_4 is not set |
@@ -1162,38 +1327,75 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
1162 | # CONFIG_NLS_ISO8859_9 is not set | 1327 | # CONFIG_NLS_ISO8859_9 is not set |
1163 | # CONFIG_NLS_ISO8859_13 is not set | 1328 | # CONFIG_NLS_ISO8859_13 is not set |
1164 | # CONFIG_NLS_ISO8859_14 is not set | 1329 | # CONFIG_NLS_ISO8859_14 is not set |
1165 | # CONFIG_NLS_ISO8859_15 is not set | 1330 | CONFIG_NLS_ISO8859_15=y |
1166 | # CONFIG_NLS_KOI8_R is not set | 1331 | # CONFIG_NLS_KOI8_R is not set |
1167 | # CONFIG_NLS_KOI8_U is not set | 1332 | # CONFIG_NLS_KOI8_U is not set |
1168 | # CONFIG_NLS_UTF8 is not set | 1333 | CONFIG_NLS_UTF8=y |
1169 | 1334 | # CONFIG_DLM is not set | |
1170 | # | ||
1171 | # Distributed Lock Manager | ||
1172 | # | ||
1173 | CONFIG_DLM=m | ||
1174 | CONFIG_DLM_TCP=y | ||
1175 | # CONFIG_DLM_SCTP is not set | ||
1176 | # CONFIG_DLM_DEBUG is not set | ||
1177 | |||
1178 | # | ||
1179 | # Profiling support | ||
1180 | # | ||
1181 | # CONFIG_PROFILING is not set | ||
1182 | 1335 | ||
1183 | # | 1336 | # |
1184 | # Kernel hacking | 1337 | # Kernel hacking |
1185 | # | 1338 | # |
1186 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 1339 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
1187 | # CONFIG_PRINTK_TIME is not set | 1340 | # CONFIG_PRINTK_TIME is not set |
1341 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1188 | CONFIG_ENABLE_MUST_CHECK=y | 1342 | CONFIG_ENABLE_MUST_CHECK=y |
1343 | CONFIG_FRAME_WARN=1024 | ||
1189 | # CONFIG_MAGIC_SYSRQ is not set | 1344 | # CONFIG_MAGIC_SYSRQ is not set |
1345 | CONFIG_STRIP_ASM_SYMS=y | ||
1190 | # CONFIG_UNUSED_SYMBOLS is not set | 1346 | # CONFIG_UNUSED_SYMBOLS is not set |
1191 | # CONFIG_DEBUG_FS is not set | 1347 | # CONFIG_DEBUG_FS is not set |
1192 | # CONFIG_HEADERS_CHECK is not set | 1348 | # CONFIG_HEADERS_CHECK is not set |
1193 | # CONFIG_DEBUG_KERNEL is not set | 1349 | CONFIG_DEBUG_KERNEL=y |
1194 | CONFIG_LOG_BUF_SHIFT=14 | 1350 | # CONFIG_DEBUG_SHIRQ is not set |
1195 | CONFIG_CROSSCOMPILE=y | 1351 | # CONFIG_DETECT_SOFTLOCKUP is not set |
1196 | CONFIG_CMDLINE="" | 1352 | # CONFIG_DETECT_HUNG_TASK is not set |
1353 | # CONFIG_SCHED_DEBUG is not set | ||
1354 | # CONFIG_SCHEDSTATS is not set | ||
1355 | # CONFIG_TIMER_STATS is not set | ||
1356 | # CONFIG_DEBUG_OBJECTS is not set | ||
1357 | # CONFIG_DEBUG_SLAB is not set | ||
1358 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1359 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1360 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1361 | # CONFIG_DEBUG_MUTEXES is not set | ||
1362 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1363 | # CONFIG_PROVE_LOCKING is not set | ||
1364 | # CONFIG_LOCK_STAT is not set | ||
1365 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1366 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1367 | # CONFIG_DEBUG_KOBJECT is not set | ||
1368 | # CONFIG_DEBUG_INFO is not set | ||
1369 | # CONFIG_DEBUG_VM is not set | ||
1370 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1371 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1372 | # CONFIG_DEBUG_LIST is not set | ||
1373 | # CONFIG_DEBUG_SG is not set | ||
1374 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1375 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
1376 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1377 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1378 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1379 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1380 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
1381 | # CONFIG_FAULT_INJECTION is not set | ||
1382 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1383 | # CONFIG_PAGE_POISONING is not set | ||
1384 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1385 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y | ||
1386 | CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y | ||
1387 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
1388 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y | ||
1389 | CONFIG_TRACING_SUPPORT=y | ||
1390 | # CONFIG_FTRACE is not set | ||
1391 | # CONFIG_SAMPLES is not set | ||
1392 | CONFIG_HAVE_ARCH_KGDB=y | ||
1393 | # CONFIG_KGDB is not set | ||
1394 | CONFIG_EARLY_PRINTK=y | ||
1395 | # CONFIG_CMDLINE_BOOL is not set | ||
1396 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1397 | # CONFIG_RUNTIME_DEBUG is not set | ||
1398 | CONFIG_DEBUG_ZBOOT=y | ||
1197 | 1399 | ||
1198 | # | 1400 | # |
1199 | # Security options | 1401 | # Security options |
@@ -1201,67 +1403,32 @@ CONFIG_CMDLINE="" | |||
1201 | CONFIG_KEYS=y | 1403 | CONFIG_KEYS=y |
1202 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1404 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1203 | # CONFIG_SECURITY is not set | 1405 | # CONFIG_SECURITY is not set |
1204 | 1406 | CONFIG_SECURITYFS=y | |
1205 | # | 1407 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1206 | # Cryptographic options | 1408 | # CONFIG_DEFAULT_SECURITY_SMACK is not set |
1207 | # | 1409 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set |
1208 | CONFIG_CRYPTO=y | 1410 | CONFIG_DEFAULT_SECURITY_DAC=y |
1209 | CONFIG_CRYPTO_ALGAPI=y | 1411 | CONFIG_DEFAULT_SECURITY="" |
1210 | CONFIG_CRYPTO_BLKCIPHER=m | 1412 | # CONFIG_CRYPTO is not set |
1211 | CONFIG_CRYPTO_HASH=y | 1413 | # CONFIG_BINARY_PRINTF is not set |
1212 | CONFIG_CRYPTO_MANAGER=y | ||
1213 | CONFIG_CRYPTO_HMAC=y | ||
1214 | CONFIG_CRYPTO_XCBC=m | ||
1215 | CONFIG_CRYPTO_NULL=m | ||
1216 | CONFIG_CRYPTO_MD4=m | ||
1217 | CONFIG_CRYPTO_MD5=y | ||
1218 | CONFIG_CRYPTO_SHA1=m | ||
1219 | CONFIG_CRYPTO_SHA256=m | ||
1220 | CONFIG_CRYPTO_SHA512=m | ||
1221 | CONFIG_CRYPTO_WP512=m | ||
1222 | CONFIG_CRYPTO_TGR192=m | ||
1223 | CONFIG_CRYPTO_GF128MUL=m | ||
1224 | CONFIG_CRYPTO_ECB=m | ||
1225 | CONFIG_CRYPTO_CBC=m | ||
1226 | CONFIG_CRYPTO_PCBC=m | ||
1227 | CONFIG_CRYPTO_LRW=m | ||
1228 | CONFIG_CRYPTO_DES=m | ||
1229 | CONFIG_CRYPTO_FCRYPT=m | ||
1230 | CONFIG_CRYPTO_BLOWFISH=m | ||
1231 | CONFIG_CRYPTO_TWOFISH=m | ||
1232 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1233 | CONFIG_CRYPTO_SERPENT=m | ||
1234 | CONFIG_CRYPTO_AES=m | ||
1235 | CONFIG_CRYPTO_CAST5=m | ||
1236 | CONFIG_CRYPTO_CAST6=m | ||
1237 | CONFIG_CRYPTO_TEA=m | ||
1238 | CONFIG_CRYPTO_ARC4=m | ||
1239 | CONFIG_CRYPTO_KHAZAD=m | ||
1240 | CONFIG_CRYPTO_ANUBIS=m | ||
1241 | CONFIG_CRYPTO_DEFLATE=m | ||
1242 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1243 | CONFIG_CRYPTO_CRC32C=m | ||
1244 | CONFIG_CRYPTO_CAMELLIA=m | ||
1245 | # CONFIG_CRYPTO_TEST is not set | ||
1246 | |||
1247 | # | ||
1248 | # Hardware crypto devices | ||
1249 | # | ||
1250 | 1414 | ||
1251 | # | 1415 | # |
1252 | # Library routines | 1416 | # Library routines |
1253 | # | 1417 | # |
1254 | CONFIG_BITREVERSE=y | 1418 | CONFIG_BITREVERSE=y |
1255 | CONFIG_CRC_CCITT=m | 1419 | CONFIG_GENERIC_FIND_LAST_BIT=y |
1256 | CONFIG_CRC16=m | 1420 | # CONFIG_CRC_CCITT is not set |
1421 | # CONFIG_CRC16 is not set | ||
1422 | # CONFIG_CRC_T10DIF is not set | ||
1423 | CONFIG_CRC_ITU_T=y | ||
1257 | CONFIG_CRC32=y | 1424 | CONFIG_CRC32=y |
1258 | CONFIG_LIBCRC32C=m | 1425 | # CONFIG_CRC7 is not set |
1259 | CONFIG_ZLIB_INFLATE=m | 1426 | # CONFIG_LIBCRC32C is not set |
1260 | CONFIG_ZLIB_DEFLATE=m | 1427 | CONFIG_ZLIB_INFLATE=y |
1261 | CONFIG_TEXTSEARCH=y | 1428 | CONFIG_ZLIB_DEFLATE=y |
1262 | CONFIG_TEXTSEARCH_KMP=m | 1429 | CONFIG_LZO_COMPRESS=y |
1263 | CONFIG_TEXTSEARCH_BM=m | 1430 | CONFIG_LZO_DECOMPRESS=y |
1264 | CONFIG_TEXTSEARCH_FSM=m | ||
1265 | CONFIG_PLIST=y | ||
1266 | CONFIG_HAS_IOMEM=y | 1431 | CONFIG_HAS_IOMEM=y |
1267 | CONFIG_HAS_IOPORT=y | 1432 | CONFIG_HAS_IOPORT=y |
1433 | CONFIG_HAS_DMA=y | ||
1434 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/pnx8335-stb225_defconfig b/arch/mips/configs/pnx8335-stb225_defconfig index fef4d31c2055..848344d588d1 100644 --- a/arch/mips/configs/pnx8335-stb225_defconfig +++ b/arch/mips/configs/pnx8335-stb225_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -1034,7 +1033,7 @@ CONFIG_FRAME_WARN=1024 | |||
1034 | # CONFIG_DEBUG_KERNEL is not set | 1033 | # CONFIG_DEBUG_KERNEL is not set |
1035 | # CONFIG_SAMPLES is not set | 1034 | # CONFIG_SAMPLES is not set |
1036 | # CONFIG_KERNEL_TESTS is not set | 1035 | # CONFIG_KERNEL_TESTS is not set |
1037 | CONFIG_CMDLINE="" | 1036 | # CONFIG_CMDLINE_BOOL is not set |
1038 | 1037 | ||
1039 | # | 1038 | # |
1040 | # Security options | 1039 | # Security options |
diff --git a/arch/mips/configs/pnx8550-jbs_defconfig b/arch/mips/configs/pnx8550-jbs_defconfig index e10c7116c3c2..9d721fdccb30 100644 --- a/arch/mips/configs/pnx8550-jbs_defconfig +++ b/arch/mips/configs/pnx8550-jbs_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -1215,7 +1214,9 @@ CONFIG_DEBUG_MUTEXES=y | |||
1215 | CONFIG_FORCED_INLINING=y | 1214 | CONFIG_FORCED_INLINING=y |
1216 | # CONFIG_RCU_TORTURE_TEST is not set | 1215 | # CONFIG_RCU_TORTURE_TEST is not set |
1217 | CONFIG_CROSSCOMPILE=y | 1216 | CONFIG_CROSSCOMPILE=y |
1217 | CONFIG_CMDLINE_BOOL=y | ||
1218 | CONFIG_CMDLINE="console=ttyS1,38400n8 root=/dev/nfs ip=bootp" | 1218 | CONFIG_CMDLINE="console=ttyS1,38400n8 root=/dev/nfs ip=bootp" |
1219 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1219 | # CONFIG_DEBUG_STACK_USAGE is not set | 1220 | # CONFIG_DEBUG_STACK_USAGE is not set |
1220 | # CONFIG_RUNTIME_DEBUG is not set | 1221 | # CONFIG_RUNTIME_DEBUG is not set |
1221 | 1222 | ||
diff --git a/arch/mips/configs/pnx8550-stb810_defconfig b/arch/mips/configs/pnx8550-stb810_defconfig index 5ed3c8dfa0a1..ab07ec08c6fa 100644 --- a/arch/mips/configs/pnx8550-stb810_defconfig +++ b/arch/mips/configs/pnx8550-stb810_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -1205,7 +1204,9 @@ CONFIG_DEBUG_SLAB=y | |||
1205 | CONFIG_FORCED_INLINING=y | 1204 | CONFIG_FORCED_INLINING=y |
1206 | # CONFIG_RCU_TORTURE_TEST is not set | 1205 | # CONFIG_RCU_TORTURE_TEST is not set |
1207 | CONFIG_CROSSCOMPILE=y | 1206 | CONFIG_CROSSCOMPILE=y |
1207 | CONFIG_CMDLINE_BOOL=y | ||
1208 | CONFIG_CMDLINE="console=ttyS1,38400n8 root=/dev/nfs ip=bootp" | 1208 | CONFIG_CMDLINE="console=ttyS1,38400n8 root=/dev/nfs ip=bootp" |
1209 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1209 | # CONFIG_DEBUG_STACK_USAGE is not set | 1210 | # CONFIG_DEBUG_STACK_USAGE is not set |
1210 | # CONFIG_RUNTIME_DEBUG is not set | 1211 | # CONFIG_RUNTIME_DEBUG is not set |
1211 | 1212 | ||
diff --git a/arch/mips/configs/powertv_defconfig b/arch/mips/configs/powertv_defconfig new file mode 100644 index 000000000000..7291633d81cc --- /dev/null +++ b/arch/mips/configs/powertv_defconfig | |||
@@ -0,0 +1,1550 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.31-rc5 | ||
4 | # Fri Aug 28 14:49:33 2009 | ||
5 | # | ||
6 | CONFIG_MIPS=y | ||
7 | |||
8 | # | ||
9 | # Machine selection | ||
10 | # | ||
11 | # CONFIG_MACH_ALCHEMY is not set | ||
12 | # CONFIG_AR7 is not set | ||
13 | # CONFIG_BCM47XX is not set | ||
14 | # CONFIG_MIPS_COBALT is not set | ||
15 | # CONFIG_MACH_DECSTATION is not set | ||
16 | # CONFIG_MACH_JAZZ is not set | ||
17 | # CONFIG_LASAT is not set | ||
18 | # CONFIG_LEMOTE_FULONG is not set | ||
19 | # CONFIG_MIPS_MALTA is not set | ||
20 | # CONFIG_MIPS_SIM is not set | ||
21 | # CONFIG_NEC_MARKEINS is not set | ||
22 | # CONFIG_MACH_VR41XX is not set | ||
23 | # CONFIG_NXP_STB220 is not set | ||
24 | # CONFIG_NXP_STB225 is not set | ||
25 | # CONFIG_PNX8550_JBS is not set | ||
26 | # CONFIG_PNX8550_STB810 is not set | ||
27 | # CONFIG_PMC_MSP is not set | ||
28 | # CONFIG_PMC_YOSEMITE is not set | ||
29 | CONFIG_POWERTV=y | ||
30 | # CONFIG_SGI_IP22 is not set | ||
31 | # CONFIG_SGI_IP27 is not set | ||
32 | # CONFIG_SGI_IP28 is not set | ||
33 | # CONFIG_SGI_IP32 is not set | ||
34 | # CONFIG_SIBYTE_CRHINE is not set | ||
35 | # CONFIG_SIBYTE_CARMEL is not set | ||
36 | # CONFIG_SIBYTE_CRHONE is not set | ||
37 | # CONFIG_SIBYTE_RHONE is not set | ||
38 | # CONFIG_SIBYTE_SWARM is not set | ||
39 | # CONFIG_SIBYTE_LITTLESUR is not set | ||
40 | # CONFIG_SIBYTE_SENTOSA is not set | ||
41 | # CONFIG_SIBYTE_BIGSUR is not set | ||
42 | # CONFIG_SNI_RM is not set | ||
43 | # CONFIG_MACH_TX39XX is not set | ||
44 | # CONFIG_MACH_TX49XX is not set | ||
45 | # CONFIG_MIKROTIK_RB532 is not set | ||
46 | # CONFIG_WR_PPMC is not set | ||
47 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
48 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
49 | # CONFIG_ALCHEMY_GPIO_INDIRECT is not set | ||
50 | # CONFIG_MIN_RUNTIME_RESOURCES is not set | ||
51 | # CONFIG_BOOTLOADER_DRIVER is not set | ||
52 | CONFIG_BOOTLOADER_FAMILY="R2" | ||
53 | CONFIG_CSRC_POWERTV=y | ||
54 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
55 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
56 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
57 | CONFIG_ARCH_SUPPORTS_OPROFILE=y | ||
58 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
59 | CONFIG_GENERIC_HWEIGHT=y | ||
60 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
61 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
62 | CONFIG_GENERIC_TIME=y | ||
63 | CONFIG_GENERIC_CMOS_UPDATE=y | ||
64 | CONFIG_SCHED_OMIT_FRAME_POINTER=y | ||
65 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
66 | CONFIG_CEVT_R4K_LIB=y | ||
67 | CONFIG_CEVT_R4K=y | ||
68 | CONFIG_DMA_NONCOHERENT=y | ||
69 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | ||
70 | # CONFIG_EARLY_PRINTK is not set | ||
71 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
72 | # CONFIG_NO_IOPORT is not set | ||
73 | CONFIG_CPU_BIG_ENDIAN=y | ||
74 | # CONFIG_CPU_LITTLE_ENDIAN is not set | ||
75 | CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y | ||
76 | CONFIG_BOOT_ELF32=y | ||
77 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | ||
78 | |||
79 | # | ||
80 | # CPU selection | ||
81 | # | ||
82 | # CONFIG_CPU_LOONGSON2 is not set | ||
83 | # CONFIG_CPU_MIPS32_R1 is not set | ||
84 | CONFIG_CPU_MIPS32_R2=y | ||
85 | # CONFIG_CPU_MIPS64_R1 is not set | ||
86 | # CONFIG_CPU_MIPS64_R2 is not set | ||
87 | # CONFIG_CPU_R3000 is not set | ||
88 | # CONFIG_CPU_TX39XX is not set | ||
89 | # CONFIG_CPU_VR41XX is not set | ||
90 | # CONFIG_CPU_R4300 is not set | ||
91 | # CONFIG_CPU_R4X00 is not set | ||
92 | # CONFIG_CPU_TX49XX is not set | ||
93 | # CONFIG_CPU_R5000 is not set | ||
94 | # CONFIG_CPU_R5432 is not set | ||
95 | # CONFIG_CPU_R5500 is not set | ||
96 | # CONFIG_CPU_R6000 is not set | ||
97 | # CONFIG_CPU_NEVADA is not set | ||
98 | # CONFIG_CPU_R8000 is not set | ||
99 | # CONFIG_CPU_R10000 is not set | ||
100 | # CONFIG_CPU_RM7000 is not set | ||
101 | # CONFIG_CPU_RM9000 is not set | ||
102 | # CONFIG_CPU_SB1 is not set | ||
103 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
104 | CONFIG_SYS_HAS_CPU_MIPS32_R2=y | ||
105 | CONFIG_CPU_MIPS32=y | ||
106 | CONFIG_CPU_MIPSR2=y | ||
107 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | ||
108 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | ||
109 | CONFIG_HARDWARE_WATCHPOINTS=y | ||
110 | |||
111 | # | ||
112 | # Kernel type | ||
113 | # | ||
114 | CONFIG_32BIT=y | ||
115 | # CONFIG_64BIT is not set | ||
116 | CONFIG_PAGE_SIZE_4KB=y | ||
117 | # CONFIG_PAGE_SIZE_8KB is not set | ||
118 | # CONFIG_PAGE_SIZE_16KB is not set | ||
119 | # CONFIG_PAGE_SIZE_32KB is not set | ||
120 | # CONFIG_PAGE_SIZE_64KB is not set | ||
121 | CONFIG_CPU_HAS_PREFETCH=y | ||
122 | CONFIG_MIPS_MT_DISABLED=y | ||
123 | # CONFIG_MIPS_MT_SMP is not set | ||
124 | # CONFIG_MIPS_MT_SMTC is not set | ||
125 | CONFIG_CPU_HAS_LLSC=y | ||
126 | CONFIG_CPU_MIPSR2_IRQ_VI=y | ||
127 | CONFIG_CPU_MIPSR2_IRQ_EI=y | ||
128 | CONFIG_CPU_HAS_SYNC=y | ||
129 | CONFIG_GENERIC_HARDIRQS=y | ||
130 | CONFIG_GENERIC_IRQ_PROBE=y | ||
131 | # CONFIG_HIGHMEM is not set | ||
132 | CONFIG_CPU_SUPPORTS_HIGHMEM=y | ||
133 | CONFIG_SYS_SUPPORTS_HIGHMEM=y | ||
134 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
135 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
136 | CONFIG_SELECT_MEMORY_MODEL=y | ||
137 | CONFIG_FLATMEM_MANUAL=y | ||
138 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
139 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
140 | CONFIG_FLATMEM=y | ||
141 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
142 | CONFIG_PAGEFLAGS_EXTENDED=y | ||
143 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
144 | # CONFIG_PHYS_ADDR_T_64BIT is not set | ||
145 | CONFIG_ZONE_DMA_FLAG=0 | ||
146 | CONFIG_VIRT_TO_BUS=y | ||
147 | CONFIG_HAVE_MLOCK=y | ||
148 | CONFIG_HAVE_MLOCKED_PAGE_BIT=y | ||
149 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
150 | CONFIG_TICK_ONESHOT=y | ||
151 | CONFIG_NO_HZ=y | ||
152 | CONFIG_HIGH_RES_TIMERS=y | ||
153 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
154 | # CONFIG_HZ_48 is not set | ||
155 | # CONFIG_HZ_100 is not set | ||
156 | # CONFIG_HZ_128 is not set | ||
157 | # CONFIG_HZ_250 is not set | ||
158 | # CONFIG_HZ_256 is not set | ||
159 | CONFIG_HZ_1000=y | ||
160 | # CONFIG_HZ_1024 is not set | ||
161 | CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | ||
162 | CONFIG_HZ=1000 | ||
163 | # CONFIG_PREEMPT_NONE is not set | ||
164 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
165 | CONFIG_PREEMPT=y | ||
166 | # CONFIG_KEXEC is not set | ||
167 | # CONFIG_SECCOMP is not set | ||
168 | CONFIG_LOCKDEP_SUPPORT=y | ||
169 | CONFIG_STACKTRACE_SUPPORT=y | ||
170 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
171 | CONFIG_CONSTRUCTORS=y | ||
172 | |||
173 | # | ||
174 | # General setup | ||
175 | # | ||
176 | CONFIG_EXPERIMENTAL=y | ||
177 | CONFIG_BROKEN_ON_SMP=y | ||
178 | CONFIG_LOCK_KERNEL=y | ||
179 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
180 | CONFIG_LOCALVERSION="" | ||
181 | CONFIG_LOCALVERSION_AUTO=y | ||
182 | # CONFIG_SWAP is not set | ||
183 | CONFIG_SYSVIPC=y | ||
184 | CONFIG_SYSVIPC_SYSCTL=y | ||
185 | # CONFIG_POSIX_MQUEUE is not set | ||
186 | # CONFIG_BSD_PROCESS_ACCT is not set | ||
187 | # CONFIG_TASKSTATS is not set | ||
188 | # CONFIG_AUDIT is not set | ||
189 | |||
190 | # | ||
191 | # RCU Subsystem | ||
192 | # | ||
193 | CONFIG_CLASSIC_RCU=y | ||
194 | # CONFIG_TREE_RCU is not set | ||
195 | # CONFIG_PREEMPT_RCU is not set | ||
196 | # CONFIG_TREE_RCU_TRACE is not set | ||
197 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
198 | # CONFIG_IKCONFIG is not set | ||
199 | CONFIG_LOG_BUF_SHIFT=16 | ||
200 | CONFIG_GROUP_SCHED=y | ||
201 | CONFIG_FAIR_GROUP_SCHED=y | ||
202 | # CONFIG_RT_GROUP_SCHED is not set | ||
203 | CONFIG_USER_SCHED=y | ||
204 | # CONFIG_CGROUP_SCHED is not set | ||
205 | # CONFIG_CGROUPS is not set | ||
206 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
207 | CONFIG_RELAY=y | ||
208 | # CONFIG_NAMESPACES is not set | ||
209 | CONFIG_BLK_DEV_INITRD=y | ||
210 | CONFIG_INITRAMFS_SOURCE="" | ||
211 | # CONFIG_RD_GZIP is not set | ||
212 | # CONFIG_RD_BZIP2 is not set | ||
213 | # CONFIG_RD_LZMA is not set | ||
214 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
215 | CONFIG_SYSCTL=y | ||
216 | CONFIG_ANON_INODES=y | ||
217 | CONFIG_EMBEDDED=y | ||
218 | # CONFIG_SYSCTL_SYSCALL is not set | ||
219 | CONFIG_KALLSYMS=y | ||
220 | CONFIG_KALLSYMS_ALL=y | ||
221 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
222 | CONFIG_HOTPLUG=y | ||
223 | CONFIG_PRINTK=y | ||
224 | CONFIG_BUG=y | ||
225 | CONFIG_ELF_CORE=y | ||
226 | # CONFIG_PCSPKR_PLATFORM is not set | ||
227 | CONFIG_BASE_FULL=y | ||
228 | CONFIG_FUTEX=y | ||
229 | # CONFIG_EPOLL is not set | ||
230 | # CONFIG_SIGNALFD is not set | ||
231 | CONFIG_TIMERFD=y | ||
232 | # CONFIG_EVENTFD is not set | ||
233 | CONFIG_SHMEM=y | ||
234 | CONFIG_AIO=y | ||
235 | |||
236 | # | ||
237 | # Performance Counters | ||
238 | # | ||
239 | # CONFIG_VM_EVENT_COUNTERS is not set | ||
240 | CONFIG_PCI_QUIRKS=y | ||
241 | # CONFIG_SLUB_DEBUG is not set | ||
242 | # CONFIG_STRIP_ASM_SYMS is not set | ||
243 | CONFIG_COMPAT_BRK=y | ||
244 | # CONFIG_SLAB is not set | ||
245 | CONFIG_SLUB=y | ||
246 | # CONFIG_SLOB is not set | ||
247 | # CONFIG_PROFILING is not set | ||
248 | # CONFIG_MARKERS is not set | ||
249 | CONFIG_HAVE_OPROFILE=y | ||
250 | |||
251 | # | ||
252 | # GCOV-based kernel profiling | ||
253 | # | ||
254 | # CONFIG_GCOV_KERNEL is not set | ||
255 | # CONFIG_SLOW_WORK is not set | ||
256 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
257 | CONFIG_RT_MUTEXES=y | ||
258 | CONFIG_BASE_SMALL=0 | ||
259 | CONFIG_MODULES=y | ||
260 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
261 | CONFIG_MODULE_UNLOAD=y | ||
262 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
263 | CONFIG_MODVERSIONS=y | ||
264 | CONFIG_MODULE_SRCVERSION_ALL=y | ||
265 | CONFIG_BLOCK=y | ||
266 | CONFIG_LBDAF=y | ||
267 | # CONFIG_BLK_DEV_BSG is not set | ||
268 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
269 | |||
270 | # | ||
271 | # IO Schedulers | ||
272 | # | ||
273 | CONFIG_IOSCHED_NOOP=y | ||
274 | # CONFIG_IOSCHED_AS is not set | ||
275 | # CONFIG_IOSCHED_DEADLINE is not set | ||
276 | # CONFIG_IOSCHED_CFQ is not set | ||
277 | # CONFIG_DEFAULT_AS is not set | ||
278 | # CONFIG_DEFAULT_DEADLINE is not set | ||
279 | # CONFIG_DEFAULT_CFQ is not set | ||
280 | CONFIG_DEFAULT_NOOP=y | ||
281 | CONFIG_DEFAULT_IOSCHED="noop" | ||
282 | # CONFIG_PROBE_INITRD_HEADER is not set | ||
283 | # CONFIG_FREEZER is not set | ||
284 | |||
285 | # | ||
286 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | ||
287 | # | ||
288 | CONFIG_HW_HAS_PCI=y | ||
289 | CONFIG_PCI=y | ||
290 | CONFIG_PCI_DOMAINS=y | ||
291 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
292 | # CONFIG_PCI_LEGACY is not set | ||
293 | # CONFIG_PCI_DEBUG is not set | ||
294 | # CONFIG_PCI_STUB is not set | ||
295 | # CONFIG_PCI_IOV is not set | ||
296 | CONFIG_MMU=y | ||
297 | # CONFIG_PCCARD is not set | ||
298 | # CONFIG_HOTPLUG_PCI is not set | ||
299 | |||
300 | # | ||
301 | # Executable file formats | ||
302 | # | ||
303 | CONFIG_BINFMT_ELF=y | ||
304 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
305 | # CONFIG_HAVE_AOUT is not set | ||
306 | # CONFIG_BINFMT_MISC is not set | ||
307 | CONFIG_TRAD_SIGNALS=y | ||
308 | |||
309 | # | ||
310 | # Power management options | ||
311 | # | ||
312 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y | ||
313 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
314 | # CONFIG_PM is not set | ||
315 | CONFIG_NET=y | ||
316 | |||
317 | # | ||
318 | # Networking options | ||
319 | # | ||
320 | CONFIG_PACKET=y | ||
321 | CONFIG_PACKET_MMAP=y | ||
322 | CONFIG_UNIX=y | ||
323 | CONFIG_XFRM=y | ||
324 | # CONFIG_XFRM_USER is not set | ||
325 | # CONFIG_XFRM_SUB_POLICY is not set | ||
326 | # CONFIG_XFRM_MIGRATE is not set | ||
327 | # CONFIG_XFRM_STATISTICS is not set | ||
328 | CONFIG_XFRM_IPCOMP=y | ||
329 | # CONFIG_NET_KEY is not set | ||
330 | CONFIG_INET=y | ||
331 | CONFIG_IP_MULTICAST=y | ||
332 | CONFIG_IP_ADVANCED_ROUTER=y | ||
333 | CONFIG_ASK_IP_FIB_HASH=y | ||
334 | # CONFIG_IP_FIB_TRIE is not set | ||
335 | CONFIG_IP_FIB_HASH=y | ||
336 | # CONFIG_IP_MULTIPLE_TABLES is not set | ||
337 | # CONFIG_IP_ROUTE_MULTIPATH is not set | ||
338 | # CONFIG_IP_ROUTE_VERBOSE is not set | ||
339 | CONFIG_IP_PNP=y | ||
340 | # CONFIG_IP_PNP_DHCP is not set | ||
341 | # CONFIG_IP_PNP_BOOTP is not set | ||
342 | # CONFIG_IP_PNP_RARP is not set | ||
343 | # CONFIG_NET_IPIP is not set | ||
344 | # CONFIG_NET_IPGRE is not set | ||
345 | # CONFIG_IP_MROUTE is not set | ||
346 | # CONFIG_ARPD is not set | ||
347 | CONFIG_SYN_COOKIES=y | ||
348 | # CONFIG_INET_AH is not set | ||
349 | # CONFIG_INET_ESP is not set | ||
350 | # CONFIG_INET_IPCOMP is not set | ||
351 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
352 | # CONFIG_INET_TUNNEL is not set | ||
353 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set | ||
354 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set | ||
355 | # CONFIG_INET_XFRM_MODE_BEET is not set | ||
356 | # CONFIG_INET_LRO is not set | ||
357 | # CONFIG_INET_DIAG is not set | ||
358 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
359 | CONFIG_TCP_CONG_CUBIC=y | ||
360 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
361 | # CONFIG_TCP_MD5SIG is not set | ||
362 | CONFIG_IPV6=y | ||
363 | CONFIG_IPV6_PRIVACY=y | ||
364 | # CONFIG_IPV6_ROUTER_PREF is not set | ||
365 | # CONFIG_IPV6_OPTIMISTIC_DAD is not set | ||
366 | CONFIG_INET6_AH=y | ||
367 | CONFIG_INET6_ESP=y | ||
368 | CONFIG_INET6_IPCOMP=y | ||
369 | # CONFIG_IPV6_MIP6 is not set | ||
370 | CONFIG_INET6_XFRM_TUNNEL=y | ||
371 | CONFIG_INET6_TUNNEL=y | ||
372 | # CONFIG_INET6_XFRM_MODE_TRANSPORT is not set | ||
373 | # CONFIG_INET6_XFRM_MODE_TUNNEL is not set | ||
374 | # CONFIG_INET6_XFRM_MODE_BEET is not set | ||
375 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set | ||
376 | # CONFIG_IPV6_SIT is not set | ||
377 | CONFIG_IPV6_TUNNEL=y | ||
378 | # CONFIG_IPV6_MULTIPLE_TABLES is not set | ||
379 | # CONFIG_IPV6_MROUTE is not set | ||
380 | # CONFIG_NETWORK_SECMARK is not set | ||
381 | CONFIG_NETFILTER=y | ||
382 | # CONFIG_NETFILTER_DEBUG is not set | ||
383 | CONFIG_NETFILTER_ADVANCED=y | ||
384 | # CONFIG_BRIDGE_NETFILTER is not set | ||
385 | |||
386 | # | ||
387 | # Core Netfilter Configuration | ||
388 | # | ||
389 | # CONFIG_NETFILTER_NETLINK_QUEUE is not set | ||
390 | # CONFIG_NETFILTER_NETLINK_LOG is not set | ||
391 | # CONFIG_NF_CONNTRACK is not set | ||
392 | CONFIG_NETFILTER_XTABLES=y | ||
393 | # CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set | ||
394 | # CONFIG_NETFILTER_XT_TARGET_MARK is not set | ||
395 | # CONFIG_NETFILTER_XT_TARGET_NFLOG is not set | ||
396 | # CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set | ||
397 | # CONFIG_NETFILTER_XT_TARGET_RATEEST is not set | ||
398 | # CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set | ||
399 | # CONFIG_NETFILTER_XT_MATCH_COMMENT is not set | ||
400 | # CONFIG_NETFILTER_XT_MATCH_DCCP is not set | ||
401 | # CONFIG_NETFILTER_XT_MATCH_DSCP is not set | ||
402 | # CONFIG_NETFILTER_XT_MATCH_ESP is not set | ||
403 | # CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set | ||
404 | # CONFIG_NETFILTER_XT_MATCH_HL is not set | ||
405 | # CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set | ||
406 | # CONFIG_NETFILTER_XT_MATCH_LENGTH is not set | ||
407 | # CONFIG_NETFILTER_XT_MATCH_LIMIT is not set | ||
408 | # CONFIG_NETFILTER_XT_MATCH_MAC is not set | ||
409 | # CONFIG_NETFILTER_XT_MATCH_MARK is not set | ||
410 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y | ||
411 | # CONFIG_NETFILTER_XT_MATCH_OWNER is not set | ||
412 | # CONFIG_NETFILTER_XT_MATCH_POLICY is not set | ||
413 | # CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set | ||
414 | # CONFIG_NETFILTER_XT_MATCH_QUOTA is not set | ||
415 | # CONFIG_NETFILTER_XT_MATCH_RATEEST is not set | ||
416 | # CONFIG_NETFILTER_XT_MATCH_REALM is not set | ||
417 | # CONFIG_NETFILTER_XT_MATCH_RECENT is not set | ||
418 | # CONFIG_NETFILTER_XT_MATCH_SCTP is not set | ||
419 | # CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set | ||
420 | # CONFIG_NETFILTER_XT_MATCH_STRING is not set | ||
421 | # CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set | ||
422 | # CONFIG_NETFILTER_XT_MATCH_TIME is not set | ||
423 | # CONFIG_NETFILTER_XT_MATCH_U32 is not set | ||
424 | # CONFIG_IP_VS is not set | ||
425 | |||
426 | # | ||
427 | # IP: Netfilter Configuration | ||
428 | # | ||
429 | # CONFIG_NF_DEFRAG_IPV4 is not set | ||
430 | # CONFIG_IP_NF_QUEUE is not set | ||
431 | CONFIG_IP_NF_IPTABLES=y | ||
432 | # CONFIG_IP_NF_MATCH_ADDRTYPE is not set | ||
433 | # CONFIG_IP_NF_MATCH_AH is not set | ||
434 | # CONFIG_IP_NF_MATCH_ECN is not set | ||
435 | # CONFIG_IP_NF_MATCH_TTL is not set | ||
436 | CONFIG_IP_NF_FILTER=y | ||
437 | # CONFIG_IP_NF_TARGET_REJECT is not set | ||
438 | # CONFIG_IP_NF_TARGET_LOG is not set | ||
439 | # CONFIG_IP_NF_TARGET_ULOG is not set | ||
440 | # CONFIG_IP_NF_MANGLE is not set | ||
441 | # CONFIG_IP_NF_TARGET_TTL is not set | ||
442 | # CONFIG_IP_NF_RAW is not set | ||
443 | CONFIG_IP_NF_ARPTABLES=y | ||
444 | CONFIG_IP_NF_ARPFILTER=y | ||
445 | # CONFIG_IP_NF_ARP_MANGLE is not set | ||
446 | |||
447 | # | ||
448 | # IPv6: Netfilter Configuration | ||
449 | # | ||
450 | # CONFIG_IP6_NF_QUEUE is not set | ||
451 | CONFIG_IP6_NF_IPTABLES=y | ||
452 | # CONFIG_IP6_NF_MATCH_AH is not set | ||
453 | # CONFIG_IP6_NF_MATCH_EUI64 is not set | ||
454 | # CONFIG_IP6_NF_MATCH_FRAG is not set | ||
455 | # CONFIG_IP6_NF_MATCH_OPTS is not set | ||
456 | # CONFIG_IP6_NF_MATCH_HL is not set | ||
457 | # CONFIG_IP6_NF_MATCH_IPV6HEADER is not set | ||
458 | # CONFIG_IP6_NF_MATCH_MH is not set | ||
459 | # CONFIG_IP6_NF_MATCH_RT is not set | ||
460 | # CONFIG_IP6_NF_TARGET_HL is not set | ||
461 | # CONFIG_IP6_NF_TARGET_LOG is not set | ||
462 | CONFIG_IP6_NF_FILTER=y | ||
463 | # CONFIG_IP6_NF_TARGET_REJECT is not set | ||
464 | # CONFIG_IP6_NF_MANGLE is not set | ||
465 | # CONFIG_IP6_NF_RAW is not set | ||
466 | # CONFIG_IP_DCCP is not set | ||
467 | # CONFIG_IP_SCTP is not set | ||
468 | # CONFIG_TIPC is not set | ||
469 | # CONFIG_ATM is not set | ||
470 | CONFIG_STP=y | ||
471 | CONFIG_BRIDGE=y | ||
472 | # CONFIG_NET_DSA is not set | ||
473 | # CONFIG_VLAN_8021Q is not set | ||
474 | # CONFIG_DECNET is not set | ||
475 | CONFIG_LLC=y | ||
476 | # CONFIG_LLC2 is not set | ||
477 | # CONFIG_IPX is not set | ||
478 | # CONFIG_ATALK is not set | ||
479 | # CONFIG_X25 is not set | ||
480 | # CONFIG_LAPB is not set | ||
481 | # CONFIG_ECONET is not set | ||
482 | # CONFIG_WAN_ROUTER is not set | ||
483 | # CONFIG_PHONET is not set | ||
484 | # CONFIG_IEEE802154 is not set | ||
485 | CONFIG_NET_SCHED=y | ||
486 | |||
487 | # | ||
488 | # Queueing/Scheduling | ||
489 | # | ||
490 | # CONFIG_NET_SCH_CBQ is not set | ||
491 | # CONFIG_NET_SCH_HTB is not set | ||
492 | # CONFIG_NET_SCH_HFSC is not set | ||
493 | # CONFIG_NET_SCH_PRIO is not set | ||
494 | # CONFIG_NET_SCH_MULTIQ is not set | ||
495 | # CONFIG_NET_SCH_RED is not set | ||
496 | # CONFIG_NET_SCH_SFQ is not set | ||
497 | # CONFIG_NET_SCH_TEQL is not set | ||
498 | CONFIG_NET_SCH_TBF=y | ||
499 | # CONFIG_NET_SCH_GRED is not set | ||
500 | # CONFIG_NET_SCH_DSMARK is not set | ||
501 | # CONFIG_NET_SCH_NETEM is not set | ||
502 | # CONFIG_NET_SCH_DRR is not set | ||
503 | |||
504 | # | ||
505 | # Classification | ||
506 | # | ||
507 | # CONFIG_NET_CLS_BASIC is not set | ||
508 | # CONFIG_NET_CLS_TCINDEX is not set | ||
509 | # CONFIG_NET_CLS_ROUTE4 is not set | ||
510 | # CONFIG_NET_CLS_FW is not set | ||
511 | # CONFIG_NET_CLS_U32 is not set | ||
512 | # CONFIG_NET_CLS_RSVP is not set | ||
513 | # CONFIG_NET_CLS_RSVP6 is not set | ||
514 | # CONFIG_NET_CLS_FLOW is not set | ||
515 | # CONFIG_NET_EMATCH is not set | ||
516 | # CONFIG_NET_CLS_ACT is not set | ||
517 | CONFIG_NET_SCH_FIFO=y | ||
518 | # CONFIG_DCB is not set | ||
519 | |||
520 | # | ||
521 | # Network testing | ||
522 | # | ||
523 | # CONFIG_NET_PKTGEN is not set | ||
524 | # CONFIG_HAMRADIO is not set | ||
525 | # CONFIG_CAN is not set | ||
526 | # CONFIG_IRDA is not set | ||
527 | # CONFIG_BT is not set | ||
528 | # CONFIG_AF_RXRPC is not set | ||
529 | # CONFIG_WIRELESS is not set | ||
530 | # CONFIG_WIMAX is not set | ||
531 | # CONFIG_RFKILL is not set | ||
532 | # CONFIG_NET_9P is not set | ||
533 | |||
534 | # | ||
535 | # Device Drivers | ||
536 | # | ||
537 | |||
538 | # | ||
539 | # Generic Driver Options | ||
540 | # | ||
541 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
542 | CONFIG_STANDALONE=y | ||
543 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
544 | CONFIG_FW_LOADER=y | ||
545 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
546 | CONFIG_EXTRA_FIRMWARE="" | ||
547 | # CONFIG_DEBUG_DRIVER is not set | ||
548 | # CONFIG_DEBUG_DEVRES is not set | ||
549 | # CONFIG_SYS_HYPERVISOR is not set | ||
550 | # CONFIG_CONNECTOR is not set | ||
551 | CONFIG_MTD=y | ||
552 | # CONFIG_MTD_DEBUG is not set | ||
553 | # CONFIG_MTD_CONCAT is not set | ||
554 | CONFIG_MTD_PARTITIONS=y | ||
555 | # CONFIG_MTD_TESTS is not set | ||
556 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
557 | CONFIG_MTD_CMDLINE_PARTS=y | ||
558 | # CONFIG_MTD_AR7_PARTS is not set | ||
559 | |||
560 | # | ||
561 | # User Modules And Translation Layers | ||
562 | # | ||
563 | CONFIG_MTD_CHAR=y | ||
564 | CONFIG_MTD_BLKDEVS=y | ||
565 | CONFIG_MTD_BLOCK=y | ||
566 | # CONFIG_FTL is not set | ||
567 | # CONFIG_NFTL is not set | ||
568 | # CONFIG_INFTL is not set | ||
569 | # CONFIG_RFD_FTL is not set | ||
570 | # CONFIG_SSFDC is not set | ||
571 | # CONFIG_MTD_OOPS is not set | ||
572 | |||
573 | # | ||
574 | # RAM/ROM/Flash chip drivers | ||
575 | # | ||
576 | # CONFIG_MTD_CFI is not set | ||
577 | # CONFIG_MTD_JEDECPROBE is not set | ||
578 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
579 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
580 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
581 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
582 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
583 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
584 | CONFIG_MTD_CFI_I1=y | ||
585 | CONFIG_MTD_CFI_I2=y | ||
586 | # CONFIG_MTD_CFI_I4 is not set | ||
587 | # CONFIG_MTD_CFI_I8 is not set | ||
588 | # CONFIG_MTD_RAM is not set | ||
589 | # CONFIG_MTD_ROM is not set | ||
590 | # CONFIG_MTD_ABSENT is not set | ||
591 | |||
592 | # | ||
593 | # Mapping drivers for chip access | ||
594 | # | ||
595 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | ||
596 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
597 | # CONFIG_MTD_PLATRAM is not set | ||
598 | |||
599 | # | ||
600 | # Self-contained MTD device drivers | ||
601 | # | ||
602 | # CONFIG_MTD_PMC551 is not set | ||
603 | # CONFIG_MTD_SLRAM is not set | ||
604 | # CONFIG_MTD_PHRAM is not set | ||
605 | # CONFIG_MTD_MTDRAM is not set | ||
606 | # CONFIG_MTD_BLOCK2MTD is not set | ||
607 | |||
608 | # | ||
609 | # Disk-On-Chip Device Drivers | ||
610 | # | ||
611 | # CONFIG_MTD_DOC2000 is not set | ||
612 | # CONFIG_MTD_DOC2001 is not set | ||
613 | # CONFIG_MTD_DOC2001PLUS is not set | ||
614 | CONFIG_MTD_NAND=y | ||
615 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | ||
616 | # CONFIG_MTD_NAND_ECC_SMC is not set | ||
617 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set | ||
618 | CONFIG_MTD_NAND_IDS=y | ||
619 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
620 | # CONFIG_MTD_NAND_CAFE is not set | ||
621 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
622 | # CONFIG_MTD_NAND_PLATFORM is not set | ||
623 | # CONFIG_MTD_ALAUDA is not set | ||
624 | # CONFIG_MTD_ONENAND is not set | ||
625 | |||
626 | # | ||
627 | # LPDDR flash memory drivers | ||
628 | # | ||
629 | # CONFIG_MTD_LPDDR is not set | ||
630 | |||
631 | # | ||
632 | # UBI - Unsorted block images | ||
633 | # | ||
634 | # CONFIG_MTD_UBI is not set | ||
635 | # CONFIG_PARPORT is not set | ||
636 | CONFIG_BLK_DEV=y | ||
637 | # CONFIG_BLK_CPQ_DA is not set | ||
638 | # CONFIG_BLK_CPQ_CISS_DA is not set | ||
639 | # CONFIG_BLK_DEV_DAC960 is not set | ||
640 | # CONFIG_BLK_DEV_UMEM is not set | ||
641 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
642 | CONFIG_BLK_DEV_LOOP=y | ||
643 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
644 | # CONFIG_BLK_DEV_NBD is not set | ||
645 | # CONFIG_BLK_DEV_SX8 is not set | ||
646 | # CONFIG_BLK_DEV_UB is not set | ||
647 | CONFIG_BLK_DEV_RAM=y | ||
648 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
649 | CONFIG_BLK_DEV_RAM_SIZE=32768 | ||
650 | # CONFIG_BLK_DEV_XIP is not set | ||
651 | # CONFIG_CDROM_PKTCDVD is not set | ||
652 | # CONFIG_ATA_OVER_ETH is not set | ||
653 | # CONFIG_BLK_DEV_HD is not set | ||
654 | # CONFIG_MISC_DEVICES is not set | ||
655 | CONFIG_HAVE_IDE=y | ||
656 | # CONFIG_IDE is not set | ||
657 | |||
658 | # | ||
659 | # SCSI device support | ||
660 | # | ||
661 | # CONFIG_RAID_ATTRS is not set | ||
662 | CONFIG_SCSI=y | ||
663 | CONFIG_SCSI_DMA=y | ||
664 | # CONFIG_SCSI_TGT is not set | ||
665 | # CONFIG_SCSI_NETLINK is not set | ||
666 | # CONFIG_SCSI_PROC_FS is not set | ||
667 | |||
668 | # | ||
669 | # SCSI support type (disk, tape, CD-ROM) | ||
670 | # | ||
671 | CONFIG_BLK_DEV_SD=y | ||
672 | # CONFIG_CHR_DEV_ST is not set | ||
673 | # CONFIG_CHR_DEV_OSST is not set | ||
674 | # CONFIG_BLK_DEV_SR is not set | ||
675 | # CONFIG_CHR_DEV_SG is not set | ||
676 | # CONFIG_CHR_DEV_SCH is not set | ||
677 | # CONFIG_SCSI_MULTI_LUN is not set | ||
678 | # CONFIG_SCSI_CONSTANTS is not set | ||
679 | # CONFIG_SCSI_LOGGING is not set | ||
680 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
681 | CONFIG_SCSI_WAIT_SCAN=m | ||
682 | |||
683 | # | ||
684 | # SCSI Transports | ||
685 | # | ||
686 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
687 | # CONFIG_SCSI_FC_ATTRS is not set | ||
688 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
689 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
690 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
691 | # CONFIG_SCSI_LOWLEVEL is not set | ||
692 | # CONFIG_SCSI_DH is not set | ||
693 | # CONFIG_SCSI_OSD_INITIATOR is not set | ||
694 | CONFIG_ATA=y | ||
695 | # CONFIG_ATA_NONSTANDARD is not set | ||
696 | CONFIG_SATA_PMP=y | ||
697 | # CONFIG_SATA_AHCI is not set | ||
698 | # CONFIG_SATA_SIL24 is not set | ||
699 | CONFIG_ATA_SFF=y | ||
700 | # CONFIG_SATA_SVW is not set | ||
701 | # CONFIG_ATA_PIIX is not set | ||
702 | # CONFIG_SATA_MV is not set | ||
703 | # CONFIG_SATA_NV is not set | ||
704 | # CONFIG_PDC_ADMA is not set | ||
705 | # CONFIG_SATA_QSTOR is not set | ||
706 | # CONFIG_SATA_PROMISE is not set | ||
707 | # CONFIG_SATA_SX4 is not set | ||
708 | # CONFIG_SATA_SIL is not set | ||
709 | # CONFIG_SATA_SIS is not set | ||
710 | # CONFIG_SATA_ULI is not set | ||
711 | # CONFIG_SATA_VIA is not set | ||
712 | # CONFIG_SATA_VITESSE is not set | ||
713 | # CONFIG_SATA_INIC162X is not set | ||
714 | # CONFIG_PATA_ALI is not set | ||
715 | # CONFIG_PATA_AMD is not set | ||
716 | # CONFIG_PATA_ARTOP is not set | ||
717 | # CONFIG_PATA_ATIIXP is not set | ||
718 | # CONFIG_PATA_CMD640_PCI is not set | ||
719 | # CONFIG_PATA_CMD64X is not set | ||
720 | # CONFIG_PATA_CS5520 is not set | ||
721 | # CONFIG_PATA_CS5530 is not set | ||
722 | # CONFIG_PATA_CYPRESS is not set | ||
723 | # CONFIG_PATA_EFAR is not set | ||
724 | # CONFIG_ATA_GENERIC is not set | ||
725 | # CONFIG_PATA_HPT366 is not set | ||
726 | # CONFIG_PATA_HPT37X is not set | ||
727 | # CONFIG_PATA_HPT3X2N is not set | ||
728 | # CONFIG_PATA_HPT3X3 is not set | ||
729 | # CONFIG_PATA_IT821X is not set | ||
730 | # CONFIG_PATA_IT8213 is not set | ||
731 | # CONFIG_PATA_JMICRON is not set | ||
732 | # CONFIG_PATA_TRIFLEX is not set | ||
733 | # CONFIG_PATA_MARVELL is not set | ||
734 | # CONFIG_PATA_MPIIX is not set | ||
735 | # CONFIG_PATA_OLDPIIX is not set | ||
736 | # CONFIG_PATA_NETCELL is not set | ||
737 | # CONFIG_PATA_NINJA32 is not set | ||
738 | # CONFIG_PATA_NS87410 is not set | ||
739 | # CONFIG_PATA_NS87415 is not set | ||
740 | # CONFIG_PATA_OPTI is not set | ||
741 | # CONFIG_PATA_OPTIDMA is not set | ||
742 | # CONFIG_PATA_PDC_OLD is not set | ||
743 | # CONFIG_PATA_RADISYS is not set | ||
744 | # CONFIG_PATA_RZ1000 is not set | ||
745 | # CONFIG_PATA_SC1200 is not set | ||
746 | # CONFIG_PATA_SERVERWORKS is not set | ||
747 | # CONFIG_PATA_PDC2027X is not set | ||
748 | # CONFIG_PATA_SIL680 is not set | ||
749 | # CONFIG_PATA_SIS is not set | ||
750 | # CONFIG_PATA_VIA is not set | ||
751 | # CONFIG_PATA_WINBOND is not set | ||
752 | # CONFIG_PATA_PLATFORM is not set | ||
753 | # CONFIG_PATA_SCH is not set | ||
754 | # CONFIG_MD is not set | ||
755 | # CONFIG_FUSION is not set | ||
756 | |||
757 | # | ||
758 | # IEEE 1394 (FireWire) support | ||
759 | # | ||
760 | |||
761 | # | ||
762 | # You can enable one or both FireWire driver stacks. | ||
763 | # | ||
764 | |||
765 | # | ||
766 | # See the help texts for more information. | ||
767 | # | ||
768 | # CONFIG_FIREWIRE is not set | ||
769 | # CONFIG_IEEE1394 is not set | ||
770 | # CONFIG_I2O is not set | ||
771 | CONFIG_NETDEVICES=y | ||
772 | # CONFIG_DUMMY is not set | ||
773 | # CONFIG_BONDING is not set | ||
774 | # CONFIG_MACVLAN is not set | ||
775 | # CONFIG_EQUALIZER is not set | ||
776 | # CONFIG_TUN is not set | ||
777 | # CONFIG_VETH is not set | ||
778 | # CONFIG_ARCNET is not set | ||
779 | # CONFIG_PHYLIB is not set | ||
780 | CONFIG_NET_ETHERNET=y | ||
781 | CONFIG_MII=y | ||
782 | # CONFIG_AX88796 is not set | ||
783 | # CONFIG_HAPPYMEAL is not set | ||
784 | # CONFIG_SUNGEM is not set | ||
785 | # CONFIG_CASSINI is not set | ||
786 | # CONFIG_NET_VENDOR_3COM is not set | ||
787 | # CONFIG_SMC91X is not set | ||
788 | # CONFIG_DM9000 is not set | ||
789 | # CONFIG_ETHOC is not set | ||
790 | # CONFIG_DNET is not set | ||
791 | # CONFIG_NET_TULIP is not set | ||
792 | # CONFIG_HP100 is not set | ||
793 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | ||
794 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | ||
795 | # CONFIG_IBM_NEW_EMAC_TAH is not set | ||
796 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | ||
797 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
798 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
799 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
800 | # CONFIG_NET_PCI is not set | ||
801 | # CONFIG_B44 is not set | ||
802 | # CONFIG_KS8842 is not set | ||
803 | # CONFIG_ATL2 is not set | ||
804 | CONFIG_NETDEV_1000=y | ||
805 | # CONFIG_ACENIC is not set | ||
806 | # CONFIG_DL2K is not set | ||
807 | # CONFIG_E1000 is not set | ||
808 | # CONFIG_E1000E is not set | ||
809 | # CONFIG_IP1000 is not set | ||
810 | # CONFIG_IGB is not set | ||
811 | # CONFIG_IGBVF is not set | ||
812 | # CONFIG_NS83820 is not set | ||
813 | # CONFIG_HAMACHI is not set | ||
814 | # CONFIG_YELLOWFIN is not set | ||
815 | # CONFIG_R8169 is not set | ||
816 | # CONFIG_SIS190 is not set | ||
817 | # CONFIG_SKGE is not set | ||
818 | # CONFIG_SKY2 is not set | ||
819 | # CONFIG_VIA_VELOCITY is not set | ||
820 | # CONFIG_TIGON3 is not set | ||
821 | # CONFIG_BNX2 is not set | ||
822 | # CONFIG_CNIC is not set | ||
823 | # CONFIG_QLA3XXX is not set | ||
824 | # CONFIG_ATL1 is not set | ||
825 | # CONFIG_ATL1E is not set | ||
826 | # CONFIG_ATL1C is not set | ||
827 | # CONFIG_JME is not set | ||
828 | CONFIG_NETDEV_10000=y | ||
829 | # CONFIG_CHELSIO_T1 is not set | ||
830 | CONFIG_CHELSIO_T3_DEPENDS=y | ||
831 | # CONFIG_CHELSIO_T3 is not set | ||
832 | # CONFIG_ENIC is not set | ||
833 | # CONFIG_IXGBE is not set | ||
834 | # CONFIG_IXGB is not set | ||
835 | # CONFIG_S2IO is not set | ||
836 | # CONFIG_VXGE is not set | ||
837 | # CONFIG_MYRI10GE is not set | ||
838 | # CONFIG_NETXEN_NIC is not set | ||
839 | # CONFIG_NIU is not set | ||
840 | # CONFIG_MLX4_EN is not set | ||
841 | # CONFIG_MLX4_CORE is not set | ||
842 | # CONFIG_TEHUTI is not set | ||
843 | # CONFIG_BNX2X is not set | ||
844 | # CONFIG_QLGE is not set | ||
845 | # CONFIG_SFC is not set | ||
846 | # CONFIG_BE2NET is not set | ||
847 | # CONFIG_TR is not set | ||
848 | |||
849 | # | ||
850 | # Wireless LAN | ||
851 | # | ||
852 | # CONFIG_WLAN_PRE80211 is not set | ||
853 | # CONFIG_WLAN_80211 is not set | ||
854 | |||
855 | # | ||
856 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
857 | # | ||
858 | |||
859 | # | ||
860 | # USB Network Adapters | ||
861 | # | ||
862 | # CONFIG_USB_CATC is not set | ||
863 | # CONFIG_USB_KAWETH is not set | ||
864 | # CONFIG_USB_PEGASUS is not set | ||
865 | CONFIG_USB_RTL8150=y | ||
866 | # CONFIG_USB_USBNET is not set | ||
867 | # CONFIG_WAN is not set | ||
868 | # CONFIG_FDDI is not set | ||
869 | # CONFIG_HIPPI is not set | ||
870 | # CONFIG_PPP is not set | ||
871 | # CONFIG_SLIP is not set | ||
872 | # CONFIG_NET_FC is not set | ||
873 | # CONFIG_NETCONSOLE is not set | ||
874 | # CONFIG_NETPOLL is not set | ||
875 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
876 | # CONFIG_ISDN is not set | ||
877 | # CONFIG_PHONE is not set | ||
878 | |||
879 | # | ||
880 | # Input device support | ||
881 | # | ||
882 | CONFIG_INPUT=y | ||
883 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
884 | # CONFIG_INPUT_POLLDEV is not set | ||
885 | |||
886 | # | ||
887 | # Userland interfaces | ||
888 | # | ||
889 | # CONFIG_INPUT_MOUSEDEV is not set | ||
890 | # CONFIG_INPUT_JOYDEV is not set | ||
891 | CONFIG_INPUT_EVDEV=y | ||
892 | # CONFIG_INPUT_EVBUG is not set | ||
893 | |||
894 | # | ||
895 | # Input Device Drivers | ||
896 | # | ||
897 | # CONFIG_INPUT_KEYBOARD is not set | ||
898 | # CONFIG_INPUT_MOUSE is not set | ||
899 | # CONFIG_INPUT_JOYSTICK is not set | ||
900 | # CONFIG_INPUT_TABLET is not set | ||
901 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
902 | # CONFIG_INPUT_MISC is not set | ||
903 | |||
904 | # | ||
905 | # Hardware I/O ports | ||
906 | # | ||
907 | # CONFIG_SERIO is not set | ||
908 | # CONFIG_GAMEPORT is not set | ||
909 | |||
910 | # | ||
911 | # Character devices | ||
912 | # | ||
913 | # CONFIG_VT is not set | ||
914 | # CONFIG_DEVKMEM is not set | ||
915 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
916 | # CONFIG_NOZOMI is not set | ||
917 | |||
918 | # | ||
919 | # Serial drivers | ||
920 | # | ||
921 | # CONFIG_SERIAL_8250 is not set | ||
922 | |||
923 | # | ||
924 | # Non-8250 serial port support | ||
925 | # | ||
926 | # CONFIG_SERIAL_JSM is not set | ||
927 | CONFIG_UNIX98_PTYS=y | ||
928 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
929 | # CONFIG_LEGACY_PTYS is not set | ||
930 | # CONFIG_IPMI_HANDLER is not set | ||
931 | # CONFIG_HW_RANDOM is not set | ||
932 | # CONFIG_R3964 is not set | ||
933 | # CONFIG_APPLICOM is not set | ||
934 | # CONFIG_RAW_DRIVER is not set | ||
935 | # CONFIG_TCG_TPM is not set | ||
936 | CONFIG_DEVPORT=y | ||
937 | # CONFIG_I2C is not set | ||
938 | # CONFIG_SPI is not set | ||
939 | |||
940 | # | ||
941 | # PPS support | ||
942 | # | ||
943 | # CONFIG_PPS is not set | ||
944 | # CONFIG_W1 is not set | ||
945 | # CONFIG_POWER_SUPPLY is not set | ||
946 | # CONFIG_HWMON is not set | ||
947 | # CONFIG_THERMAL is not set | ||
948 | # CONFIG_THERMAL_HWMON is not set | ||
949 | # CONFIG_WATCHDOG is not set | ||
950 | CONFIG_SSB_POSSIBLE=y | ||
951 | |||
952 | # | ||
953 | # Sonics Silicon Backplane | ||
954 | # | ||
955 | # CONFIG_SSB is not set | ||
956 | |||
957 | # | ||
958 | # Multifunction device drivers | ||
959 | # | ||
960 | # CONFIG_MFD_CORE is not set | ||
961 | # CONFIG_MFD_SM501 is not set | ||
962 | # CONFIG_HTC_PASIC3 is not set | ||
963 | # CONFIG_MFD_TMIO is not set | ||
964 | # CONFIG_REGULATOR is not set | ||
965 | # CONFIG_MEDIA_SUPPORT is not set | ||
966 | |||
967 | # | ||
968 | # Graphics support | ||
969 | # | ||
970 | # CONFIG_DRM is not set | ||
971 | # CONFIG_VGASTATE is not set | ||
972 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
973 | # CONFIG_FB is not set | ||
974 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
975 | |||
976 | # | ||
977 | # Display device support | ||
978 | # | ||
979 | # CONFIG_DISPLAY_SUPPORT is not set | ||
980 | # CONFIG_SOUND is not set | ||
981 | CONFIG_HID_SUPPORT=y | ||
982 | CONFIG_HID=y | ||
983 | # CONFIG_HID_DEBUG is not set | ||
984 | # CONFIG_HIDRAW is not set | ||
985 | |||
986 | # | ||
987 | # USB Input Devices | ||
988 | # | ||
989 | CONFIG_USB_HID=y | ||
990 | # CONFIG_HID_PID is not set | ||
991 | CONFIG_USB_HIDDEV=y | ||
992 | |||
993 | # | ||
994 | # Special HID drivers | ||
995 | # | ||
996 | # CONFIG_HID_A4TECH is not set | ||
997 | # CONFIG_HID_APPLE is not set | ||
998 | # CONFIG_HID_BELKIN is not set | ||
999 | # CONFIG_HID_CHERRY is not set | ||
1000 | # CONFIG_HID_CHICONY is not set | ||
1001 | # CONFIG_HID_CYPRESS is not set | ||
1002 | # CONFIG_HID_DRAGONRISE is not set | ||
1003 | # CONFIG_HID_EZKEY is not set | ||
1004 | # CONFIG_HID_KYE is not set | ||
1005 | # CONFIG_HID_GYRATION is not set | ||
1006 | # CONFIG_HID_KENSINGTON is not set | ||
1007 | # CONFIG_HID_LOGITECH is not set | ||
1008 | # CONFIG_HID_MICROSOFT is not set | ||
1009 | # CONFIG_HID_MONTEREY is not set | ||
1010 | # CONFIG_HID_NTRIG is not set | ||
1011 | # CONFIG_HID_PANTHERLORD is not set | ||
1012 | # CONFIG_HID_PETALYNX is not set | ||
1013 | # CONFIG_HID_SAMSUNG is not set | ||
1014 | # CONFIG_HID_SONY is not set | ||
1015 | # CONFIG_HID_SUNPLUS is not set | ||
1016 | # CONFIG_HID_GREENASIA is not set | ||
1017 | # CONFIG_HID_SMARTJOYPLUS is not set | ||
1018 | # CONFIG_HID_TOPSEED is not set | ||
1019 | # CONFIG_HID_THRUSTMASTER is not set | ||
1020 | # CONFIG_HID_ZEROPLUS is not set | ||
1021 | CONFIG_USB_SUPPORT=y | ||
1022 | CONFIG_USB_ARCH_HAS_HCD=y | ||
1023 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
1024 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
1025 | CONFIG_USB=y | ||
1026 | # CONFIG_USB_DEBUG is not set | ||
1027 | CONFIG_USB_ANNOUNCE_NEW_DEVICES=y | ||
1028 | |||
1029 | # | ||
1030 | # Miscellaneous USB options | ||
1031 | # | ||
1032 | CONFIG_USB_DEVICEFS=y | ||
1033 | # CONFIG_USB_DEVICE_CLASS is not set | ||
1034 | # CONFIG_USB_DYNAMIC_MINORS is not set | ||
1035 | # CONFIG_USB_OTG is not set | ||
1036 | # CONFIG_USB_OTG_WHITELIST is not set | ||
1037 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1038 | # CONFIG_USB_MON is not set | ||
1039 | # CONFIG_USB_WUSB is not set | ||
1040 | # CONFIG_USB_WUSB_CBAF is not set | ||
1041 | |||
1042 | # | ||
1043 | # USB Host Controller Drivers | ||
1044 | # | ||
1045 | # CONFIG_USB_C67X00_HCD is not set | ||
1046 | # CONFIG_USB_XHCI_HCD is not set | ||
1047 | CONFIG_USB_EHCI_HCD=y | ||
1048 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | ||
1049 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | ||
1050 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1051 | # CONFIG_USB_ISP116X_HCD is not set | ||
1052 | # CONFIG_USB_ISP1760_HCD is not set | ||
1053 | CONFIG_USB_OHCI_HCD=y | ||
1054 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | ||
1055 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
1056 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
1057 | # CONFIG_USB_UHCI_HCD is not set | ||
1058 | # CONFIG_USB_SL811_HCD is not set | ||
1059 | # CONFIG_USB_R8A66597_HCD is not set | ||
1060 | # CONFIG_USB_WHCI_HCD is not set | ||
1061 | # CONFIG_USB_HWA_HCD is not set | ||
1062 | |||
1063 | # | ||
1064 | # USB Device Class drivers | ||
1065 | # | ||
1066 | # CONFIG_USB_ACM is not set | ||
1067 | # CONFIG_USB_PRINTER is not set | ||
1068 | # CONFIG_USB_WDM is not set | ||
1069 | # CONFIG_USB_TMC is not set | ||
1070 | |||
1071 | # | ||
1072 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may | ||
1073 | # | ||
1074 | |||
1075 | # | ||
1076 | # also be needed; see USB_STORAGE Help for more info | ||
1077 | # | ||
1078 | CONFIG_USB_STORAGE=y | ||
1079 | # CONFIG_USB_STORAGE_DEBUG is not set | ||
1080 | # CONFIG_USB_STORAGE_DATAFAB is not set | ||
1081 | # CONFIG_USB_STORAGE_FREECOM is not set | ||
1082 | # CONFIG_USB_STORAGE_ISD200 is not set | ||
1083 | # CONFIG_USB_STORAGE_USBAT is not set | ||
1084 | # CONFIG_USB_STORAGE_SDDR09 is not set | ||
1085 | # CONFIG_USB_STORAGE_SDDR55 is not set | ||
1086 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | ||
1087 | # CONFIG_USB_STORAGE_ALAUDA is not set | ||
1088 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
1089 | # CONFIG_USB_STORAGE_KARMA is not set | ||
1090 | # CONFIG_USB_STORAGE_CYPRESS_ATACB is not set | ||
1091 | # CONFIG_USB_LIBUSUAL is not set | ||
1092 | |||
1093 | # | ||
1094 | # USB Imaging devices | ||
1095 | # | ||
1096 | # CONFIG_USB_MDC800 is not set | ||
1097 | # CONFIG_USB_MICROTEK is not set | ||
1098 | |||
1099 | # | ||
1100 | # USB port drivers | ||
1101 | # | ||
1102 | CONFIG_USB_SERIAL=y | ||
1103 | CONFIG_USB_SERIAL_CONSOLE=y | ||
1104 | # CONFIG_USB_EZUSB is not set | ||
1105 | # CONFIG_USB_SERIAL_GENERIC is not set | ||
1106 | # CONFIG_USB_SERIAL_AIRCABLE is not set | ||
1107 | # CONFIG_USB_SERIAL_ARK3116 is not set | ||
1108 | # CONFIG_USB_SERIAL_BELKIN is not set | ||
1109 | # CONFIG_USB_SERIAL_CH341 is not set | ||
1110 | # CONFIG_USB_SERIAL_WHITEHEAT is not set | ||
1111 | # CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set | ||
1112 | CONFIG_USB_SERIAL_CP210X=y | ||
1113 | # CONFIG_USB_SERIAL_CYPRESS_M8 is not set | ||
1114 | # CONFIG_USB_SERIAL_EMPEG is not set | ||
1115 | # CONFIG_USB_SERIAL_FTDI_SIO is not set | ||
1116 | # CONFIG_USB_SERIAL_FUNSOFT is not set | ||
1117 | # CONFIG_USB_SERIAL_VISOR is not set | ||
1118 | # CONFIG_USB_SERIAL_IPAQ is not set | ||
1119 | # CONFIG_USB_SERIAL_IR is not set | ||
1120 | # CONFIG_USB_SERIAL_EDGEPORT is not set | ||
1121 | # CONFIG_USB_SERIAL_EDGEPORT_TI is not set | ||
1122 | # CONFIG_USB_SERIAL_GARMIN is not set | ||
1123 | # CONFIG_USB_SERIAL_IPW is not set | ||
1124 | # CONFIG_USB_SERIAL_IUU is not set | ||
1125 | # CONFIG_USB_SERIAL_KEYSPAN_PDA is not set | ||
1126 | # CONFIG_USB_SERIAL_KEYSPAN is not set | ||
1127 | # CONFIG_USB_SERIAL_KLSI is not set | ||
1128 | # CONFIG_USB_SERIAL_KOBIL_SCT is not set | ||
1129 | # CONFIG_USB_SERIAL_MCT_U232 is not set | ||
1130 | # CONFIG_USB_SERIAL_MOS7720 is not set | ||
1131 | # CONFIG_USB_SERIAL_MOS7840 is not set | ||
1132 | # CONFIG_USB_SERIAL_MOTOROLA is not set | ||
1133 | # CONFIG_USB_SERIAL_NAVMAN is not set | ||
1134 | # CONFIG_USB_SERIAL_PL2303 is not set | ||
1135 | # CONFIG_USB_SERIAL_OTI6858 is not set | ||
1136 | # CONFIG_USB_SERIAL_QUALCOMM is not set | ||
1137 | # CONFIG_USB_SERIAL_SPCP8X5 is not set | ||
1138 | # CONFIG_USB_SERIAL_HP4X is not set | ||
1139 | # CONFIG_USB_SERIAL_SAFE is not set | ||
1140 | # CONFIG_USB_SERIAL_SIEMENS_MPI is not set | ||
1141 | # CONFIG_USB_SERIAL_SIERRAWIRELESS is not set | ||
1142 | # CONFIG_USB_SERIAL_SYMBOL is not set | ||
1143 | # CONFIG_USB_SERIAL_TI is not set | ||
1144 | # CONFIG_USB_SERIAL_CYBERJACK is not set | ||
1145 | # CONFIG_USB_SERIAL_XIRCOM is not set | ||
1146 | # CONFIG_USB_SERIAL_OPTION is not set | ||
1147 | # CONFIG_USB_SERIAL_OMNINET is not set | ||
1148 | # CONFIG_USB_SERIAL_OPTICON is not set | ||
1149 | # CONFIG_USB_SERIAL_DEBUG is not set | ||
1150 | |||
1151 | # | ||
1152 | # USB Miscellaneous drivers | ||
1153 | # | ||
1154 | # CONFIG_USB_EMI62 is not set | ||
1155 | # CONFIG_USB_EMI26 is not set | ||
1156 | # CONFIG_USB_ADUTUX is not set | ||
1157 | # CONFIG_USB_SEVSEG is not set | ||
1158 | # CONFIG_USB_RIO500 is not set | ||
1159 | # CONFIG_USB_LEGOTOWER is not set | ||
1160 | # CONFIG_USB_LCD is not set | ||
1161 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1162 | # CONFIG_USB_LED is not set | ||
1163 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1164 | # CONFIG_USB_CYTHERM is not set | ||
1165 | # CONFIG_USB_IDMOUSE is not set | ||
1166 | # CONFIG_USB_FTDI_ELAN is not set | ||
1167 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1168 | # CONFIG_USB_SISUSBVGA is not set | ||
1169 | # CONFIG_USB_LD is not set | ||
1170 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1171 | # CONFIG_USB_IOWARRIOR is not set | ||
1172 | # CONFIG_USB_TEST is not set | ||
1173 | # CONFIG_USB_ISIGHTFW is not set | ||
1174 | # CONFIG_USB_VST is not set | ||
1175 | # CONFIG_USB_GADGET is not set | ||
1176 | |||
1177 | # | ||
1178 | # OTG and related infrastructure | ||
1179 | # | ||
1180 | # CONFIG_NOP_USB_XCEIV is not set | ||
1181 | # CONFIG_UWB is not set | ||
1182 | # CONFIG_MMC is not set | ||
1183 | # CONFIG_MEMSTICK is not set | ||
1184 | # CONFIG_NEW_LEDS is not set | ||
1185 | # CONFIG_ACCESSIBILITY is not set | ||
1186 | # CONFIG_INFINIBAND is not set | ||
1187 | CONFIG_RTC_LIB=y | ||
1188 | # CONFIG_RTC_CLASS is not set | ||
1189 | # CONFIG_DMADEVICES is not set | ||
1190 | # CONFIG_AUXDISPLAY is not set | ||
1191 | # CONFIG_UIO is not set | ||
1192 | |||
1193 | # | ||
1194 | # TI VLYNQ | ||
1195 | # | ||
1196 | # CONFIG_STAGING is not set | ||
1197 | |||
1198 | # | ||
1199 | # File systems | ||
1200 | # | ||
1201 | CONFIG_EXT2_FS=y | ||
1202 | # CONFIG_EXT2_FS_XATTR is not set | ||
1203 | # CONFIG_EXT2_FS_XIP is not set | ||
1204 | CONFIG_EXT3_FS=y | ||
1205 | # CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set | ||
1206 | # CONFIG_EXT3_FS_XATTR is not set | ||
1207 | # CONFIG_EXT4_FS is not set | ||
1208 | CONFIG_JBD=y | ||
1209 | # CONFIG_JBD_DEBUG is not set | ||
1210 | # CONFIG_REISERFS_FS is not set | ||
1211 | # CONFIG_JFS_FS is not set | ||
1212 | # CONFIG_FS_POSIX_ACL is not set | ||
1213 | # CONFIG_XFS_FS is not set | ||
1214 | # CONFIG_GFS2_FS is not set | ||
1215 | # CONFIG_OCFS2_FS is not set | ||
1216 | # CONFIG_BTRFS_FS is not set | ||
1217 | CONFIG_FILE_LOCKING=y | ||
1218 | CONFIG_FSNOTIFY=y | ||
1219 | # CONFIG_DNOTIFY is not set | ||
1220 | CONFIG_INOTIFY=y | ||
1221 | CONFIG_INOTIFY_USER=y | ||
1222 | # CONFIG_QUOTA is not set | ||
1223 | # CONFIG_AUTOFS_FS is not set | ||
1224 | # CONFIG_AUTOFS4_FS is not set | ||
1225 | CONFIG_FUSE_FS=y | ||
1226 | # CONFIG_CUSE is not set | ||
1227 | |||
1228 | # | ||
1229 | # Caches | ||
1230 | # | ||
1231 | # CONFIG_FSCACHE is not set | ||
1232 | |||
1233 | # | ||
1234 | # CD-ROM/DVD Filesystems | ||
1235 | # | ||
1236 | # CONFIG_ISO9660_FS is not set | ||
1237 | # CONFIG_UDF_FS is not set | ||
1238 | |||
1239 | # | ||
1240 | # DOS/FAT/NT Filesystems | ||
1241 | # | ||
1242 | # CONFIG_MSDOS_FS is not set | ||
1243 | # CONFIG_VFAT_FS is not set | ||
1244 | # CONFIG_NTFS_FS is not set | ||
1245 | |||
1246 | # | ||
1247 | # Pseudo filesystems | ||
1248 | # | ||
1249 | CONFIG_PROC_FS=y | ||
1250 | CONFIG_PROC_KCORE=y | ||
1251 | CONFIG_PROC_SYSCTL=y | ||
1252 | CONFIG_PROC_PAGE_MONITOR=y | ||
1253 | CONFIG_SYSFS=y | ||
1254 | CONFIG_TMPFS=y | ||
1255 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
1256 | # CONFIG_HUGETLB_PAGE is not set | ||
1257 | # CONFIG_CONFIGFS_FS is not set | ||
1258 | CONFIG_MISC_FILESYSTEMS=y | ||
1259 | # CONFIG_ADFS_FS is not set | ||
1260 | # CONFIG_AFFS_FS is not set | ||
1261 | # CONFIG_HFS_FS is not set | ||
1262 | # CONFIG_HFSPLUS_FS is not set | ||
1263 | # CONFIG_BEFS_FS is not set | ||
1264 | # CONFIG_BFS_FS is not set | ||
1265 | # CONFIG_EFS_FS is not set | ||
1266 | CONFIG_JFFS2_FS=y | ||
1267 | CONFIG_JFFS2_FS_DEBUG=0 | ||
1268 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1269 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set | ||
1270 | # CONFIG_JFFS2_SUMMARY is not set | ||
1271 | # CONFIG_JFFS2_FS_XATTR is not set | ||
1272 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | ||
1273 | CONFIG_JFFS2_ZLIB=y | ||
1274 | # CONFIG_JFFS2_LZO is not set | ||
1275 | CONFIG_JFFS2_RTIME=y | ||
1276 | # CONFIG_JFFS2_RUBIN is not set | ||
1277 | CONFIG_CRAMFS=y | ||
1278 | # CONFIG_SQUASHFS is not set | ||
1279 | # CONFIG_VXFS_FS is not set | ||
1280 | # CONFIG_MINIX_FS is not set | ||
1281 | # CONFIG_OMFS_FS is not set | ||
1282 | # CONFIG_HPFS_FS is not set | ||
1283 | # CONFIG_QNX4FS_FS is not set | ||
1284 | # CONFIG_ROMFS_FS is not set | ||
1285 | # CONFIG_SYSV_FS is not set | ||
1286 | # CONFIG_UFS_FS is not set | ||
1287 | # CONFIG_NILFS2_FS is not set | ||
1288 | CONFIG_NETWORK_FILESYSTEMS=y | ||
1289 | CONFIG_NFS_FS=y | ||
1290 | CONFIG_NFS_V3=y | ||
1291 | # CONFIG_NFS_V3_ACL is not set | ||
1292 | # CONFIG_NFS_V4 is not set | ||
1293 | CONFIG_ROOT_NFS=y | ||
1294 | # CONFIG_NFSD is not set | ||
1295 | CONFIG_LOCKD=y | ||
1296 | CONFIG_LOCKD_V4=y | ||
1297 | CONFIG_NFS_COMMON=y | ||
1298 | CONFIG_SUNRPC=y | ||
1299 | # CONFIG_RPCSEC_GSS_KRB5 is not set | ||
1300 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
1301 | # CONFIG_SMB_FS is not set | ||
1302 | # CONFIG_CIFS is not set | ||
1303 | # CONFIG_NCP_FS is not set | ||
1304 | # CONFIG_CODA_FS is not set | ||
1305 | # CONFIG_AFS_FS is not set | ||
1306 | |||
1307 | # | ||
1308 | # Partition Types | ||
1309 | # | ||
1310 | # CONFIG_PARTITION_ADVANCED is not set | ||
1311 | CONFIG_MSDOS_PARTITION=y | ||
1312 | CONFIG_NLS=y | ||
1313 | CONFIG_NLS_DEFAULT="iso8859-1" | ||
1314 | # CONFIG_NLS_CODEPAGE_437 is not set | ||
1315 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
1316 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
1317 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
1318 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
1319 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
1320 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
1321 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
1322 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
1323 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
1324 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
1325 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
1326 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
1327 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
1328 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
1329 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
1330 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
1331 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
1332 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
1333 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
1334 | # CONFIG_NLS_ISO8859_8 is not set | ||
1335 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
1336 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
1337 | # CONFIG_NLS_ASCII is not set | ||
1338 | # CONFIG_NLS_ISO8859_1 is not set | ||
1339 | # CONFIG_NLS_ISO8859_2 is not set | ||
1340 | # CONFIG_NLS_ISO8859_3 is not set | ||
1341 | # CONFIG_NLS_ISO8859_4 is not set | ||
1342 | # CONFIG_NLS_ISO8859_5 is not set | ||
1343 | # CONFIG_NLS_ISO8859_6 is not set | ||
1344 | # CONFIG_NLS_ISO8859_7 is not set | ||
1345 | # CONFIG_NLS_ISO8859_9 is not set | ||
1346 | # CONFIG_NLS_ISO8859_13 is not set | ||
1347 | # CONFIG_NLS_ISO8859_14 is not set | ||
1348 | # CONFIG_NLS_ISO8859_15 is not set | ||
1349 | # CONFIG_NLS_KOI8_R is not set | ||
1350 | # CONFIG_NLS_KOI8_U is not set | ||
1351 | # CONFIG_NLS_UTF8 is not set | ||
1352 | # CONFIG_DLM is not set | ||
1353 | |||
1354 | # | ||
1355 | # Kernel hacking | ||
1356 | # | ||
1357 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
1358 | CONFIG_PRINTK_TIME=y | ||
1359 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1360 | CONFIG_ENABLE_MUST_CHECK=y | ||
1361 | CONFIG_FRAME_WARN=1024 | ||
1362 | # CONFIG_MAGIC_SYSRQ is not set | ||
1363 | # CONFIG_UNUSED_SYMBOLS is not set | ||
1364 | CONFIG_DEBUG_FS=y | ||
1365 | # CONFIG_HEADERS_CHECK is not set | ||
1366 | CONFIG_DEBUG_KERNEL=y | ||
1367 | # CONFIG_DEBUG_SHIRQ is not set | ||
1368 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1369 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
1370 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
1371 | CONFIG_DETECT_HUNG_TASK=y | ||
1372 | # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set | ||
1373 | CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 | ||
1374 | # CONFIG_SCHED_DEBUG is not set | ||
1375 | # CONFIG_SCHEDSTATS is not set | ||
1376 | # CONFIG_TIMER_STATS is not set | ||
1377 | # CONFIG_DEBUG_OBJECTS is not set | ||
1378 | # CONFIG_DEBUG_PREEMPT is not set | ||
1379 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
1380 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1381 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1382 | # CONFIG_DEBUG_MUTEXES is not set | ||
1383 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
1384 | # CONFIG_PROVE_LOCKING is not set | ||
1385 | # CONFIG_LOCK_STAT is not set | ||
1386 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1387 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1388 | # CONFIG_DEBUG_KOBJECT is not set | ||
1389 | CONFIG_DEBUG_INFO=y | ||
1390 | # CONFIG_DEBUG_VM is not set | ||
1391 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1392 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1393 | # CONFIG_DEBUG_LIST is not set | ||
1394 | # CONFIG_DEBUG_SG is not set | ||
1395 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1396 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1397 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1398 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1399 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1400 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1401 | # CONFIG_FAULT_INJECTION is not set | ||
1402 | # CONFIG_PAGE_POISONING is not set | ||
1403 | CONFIG_TRACING_SUPPORT=y | ||
1404 | CONFIG_FTRACE=y | ||
1405 | # CONFIG_IRQSOFF_TRACER is not set | ||
1406 | # CONFIG_PREEMPT_TRACER is not set | ||
1407 | # CONFIG_SCHED_TRACER is not set | ||
1408 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | ||
1409 | # CONFIG_BOOT_TRACER is not set | ||
1410 | CONFIG_BRANCH_PROFILE_NONE=y | ||
1411 | # CONFIG_PROFILE_ANNOTATED_BRANCHES is not set | ||
1412 | # CONFIG_PROFILE_ALL_BRANCHES is not set | ||
1413 | # CONFIG_KMEMTRACE is not set | ||
1414 | # CONFIG_WORKQUEUE_TRACER is not set | ||
1415 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
1416 | # CONFIG_DYNAMIC_DEBUG is not set | ||
1417 | # CONFIG_SAMPLES is not set | ||
1418 | CONFIG_HAVE_ARCH_KGDB=y | ||
1419 | # CONFIG_KGDB is not set | ||
1420 | # CONFIG_KMEMCHECK is not set | ||
1421 | CONFIG_CMDLINE_BOOL=y | ||
1422 | CONFIG_CMDLINE="rw dhash_entries=1024 ihash_entries=1024 ip=10.0.1.3:10.0.1.1:10.0.1.1:255.255.255.0:zeus:eth0: root=/dev/nfs nfsroot=/nfsroot/cramfs,wsize=512,rsize=512,tcp nokgdb console=ttyUSB0,115200 memsize=252M" | ||
1423 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1424 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
1425 | # CONFIG_RUNTIME_DEBUG is not set | ||
1426 | |||
1427 | # | ||
1428 | # Security options | ||
1429 | # | ||
1430 | # CONFIG_KEYS is not set | ||
1431 | # CONFIG_SECURITY is not set | ||
1432 | # CONFIG_SECURITYFS is not set | ||
1433 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
1434 | CONFIG_CRYPTO=y | ||
1435 | |||
1436 | # | ||
1437 | # Crypto core or helper | ||
1438 | # | ||
1439 | # CONFIG_CRYPTO_FIPS is not set | ||
1440 | CONFIG_CRYPTO_ALGAPI=y | ||
1441 | CONFIG_CRYPTO_ALGAPI2=y | ||
1442 | CONFIG_CRYPTO_AEAD=y | ||
1443 | CONFIG_CRYPTO_AEAD2=y | ||
1444 | CONFIG_CRYPTO_BLKCIPHER=y | ||
1445 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
1446 | CONFIG_CRYPTO_HASH=y | ||
1447 | CONFIG_CRYPTO_HASH2=y | ||
1448 | CONFIG_CRYPTO_RNG2=y | ||
1449 | CONFIG_CRYPTO_PCOMP=y | ||
1450 | CONFIG_CRYPTO_MANAGER=y | ||
1451 | CONFIG_CRYPTO_MANAGER2=y | ||
1452 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1453 | # CONFIG_CRYPTO_NULL is not set | ||
1454 | CONFIG_CRYPTO_WORKQUEUE=y | ||
1455 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1456 | CONFIG_CRYPTO_AUTHENC=y | ||
1457 | # CONFIG_CRYPTO_TEST is not set | ||
1458 | |||
1459 | # | ||
1460 | # Authenticated Encryption with Associated Data | ||
1461 | # | ||
1462 | # CONFIG_CRYPTO_CCM is not set | ||
1463 | # CONFIG_CRYPTO_GCM is not set | ||
1464 | # CONFIG_CRYPTO_SEQIV is not set | ||
1465 | |||
1466 | # | ||
1467 | # Block modes | ||
1468 | # | ||
1469 | CONFIG_CRYPTO_CBC=y | ||
1470 | # CONFIG_CRYPTO_CTR is not set | ||
1471 | # CONFIG_CRYPTO_CTS is not set | ||
1472 | # CONFIG_CRYPTO_ECB is not set | ||
1473 | # CONFIG_CRYPTO_LRW is not set | ||
1474 | # CONFIG_CRYPTO_PCBC is not set | ||
1475 | # CONFIG_CRYPTO_XTS is not set | ||
1476 | |||
1477 | # | ||
1478 | # Hash modes | ||
1479 | # | ||
1480 | CONFIG_CRYPTO_HMAC=y | ||
1481 | # CONFIG_CRYPTO_XCBC is not set | ||
1482 | |||
1483 | # | ||
1484 | # Digest | ||
1485 | # | ||
1486 | # CONFIG_CRYPTO_CRC32C is not set | ||
1487 | # CONFIG_CRYPTO_MD4 is not set | ||
1488 | CONFIG_CRYPTO_MD5=y | ||
1489 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1490 | # CONFIG_CRYPTO_RMD128 is not set | ||
1491 | # CONFIG_CRYPTO_RMD160 is not set | ||
1492 | # CONFIG_CRYPTO_RMD256 is not set | ||
1493 | # CONFIG_CRYPTO_RMD320 is not set | ||
1494 | CONFIG_CRYPTO_SHA1=y | ||
1495 | # CONFIG_CRYPTO_SHA256 is not set | ||
1496 | # CONFIG_CRYPTO_SHA512 is not set | ||
1497 | # CONFIG_CRYPTO_TGR192 is not set | ||
1498 | # CONFIG_CRYPTO_WP512 is not set | ||
1499 | |||
1500 | # | ||
1501 | # Ciphers | ||
1502 | # | ||
1503 | # CONFIG_CRYPTO_AES is not set | ||
1504 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1505 | # CONFIG_CRYPTO_ARC4 is not set | ||
1506 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
1507 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1508 | # CONFIG_CRYPTO_CAST5 is not set | ||
1509 | # CONFIG_CRYPTO_CAST6 is not set | ||
1510 | CONFIG_CRYPTO_DES=y | ||
1511 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1512 | # CONFIG_CRYPTO_KHAZAD is not set | ||
1513 | # CONFIG_CRYPTO_SALSA20 is not set | ||
1514 | # CONFIG_CRYPTO_SEED is not set | ||
1515 | # CONFIG_CRYPTO_SERPENT is not set | ||
1516 | # CONFIG_CRYPTO_TEA is not set | ||
1517 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1518 | |||
1519 | # | ||
1520 | # Compression | ||
1521 | # | ||
1522 | CONFIG_CRYPTO_DEFLATE=y | ||
1523 | # CONFIG_CRYPTO_ZLIB is not set | ||
1524 | # CONFIG_CRYPTO_LZO is not set | ||
1525 | |||
1526 | # | ||
1527 | # Random Number Generation | ||
1528 | # | ||
1529 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
1530 | # CONFIG_CRYPTO_HW is not set | ||
1531 | # CONFIG_BINARY_PRINTF is not set | ||
1532 | |||
1533 | # | ||
1534 | # Library routines | ||
1535 | # | ||
1536 | CONFIG_BITREVERSE=y | ||
1537 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
1538 | # CONFIG_CRC_CCITT is not set | ||
1539 | # CONFIG_CRC16 is not set | ||
1540 | # CONFIG_CRC_T10DIF is not set | ||
1541 | # CONFIG_CRC_ITU_T is not set | ||
1542 | CONFIG_CRC32=y | ||
1543 | # CONFIG_CRC7 is not set | ||
1544 | # CONFIG_LIBCRC32C is not set | ||
1545 | CONFIG_ZLIB_INFLATE=y | ||
1546 | CONFIG_ZLIB_DEFLATE=y | ||
1547 | CONFIG_HAS_IOMEM=y | ||
1548 | CONFIG_HAS_IOPORT=y | ||
1549 | CONFIG_HAS_DMA=y | ||
1550 | CONFIG_NLATTR=y | ||
diff --git a/arch/mips/configs/rb532_defconfig b/arch/mips/configs/rb532_defconfig index f40c3a04739d..57a50483abdf 100644 --- a/arch/mips/configs/rb532_defconfig +++ b/arch/mips/configs/rb532_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -1204,7 +1203,7 @@ CONFIG_FRAME_WARN=1024 | |||
1204 | # CONFIG_HEADERS_CHECK is not set | 1203 | # CONFIG_HEADERS_CHECK is not set |
1205 | # CONFIG_DEBUG_KERNEL is not set | 1204 | # CONFIG_DEBUG_KERNEL is not set |
1206 | # CONFIG_SAMPLES is not set | 1205 | # CONFIG_SAMPLES is not set |
1207 | CONFIG_CMDLINE="" | 1206 | # CONFIG_CMDLINE_BOOL is not set |
1208 | 1207 | ||
1209 | # | 1208 | # |
1210 | # Security options | 1209 | # Security options |
diff --git a/arch/mips/configs/rbtx49xx_defconfig b/arch/mips/configs/rbtx49xx_defconfig index 6c6a19aebe1f..21c2022d46ee 100644 --- a/arch/mips/configs/rbtx49xx_defconfig +++ b/arch/mips/configs/rbtx49xx_defconfig | |||
@@ -10,7 +10,6 @@ CONFIG_MIPS=y | |||
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_AR7 is not set | 12 | # CONFIG_AR7 is not set |
13 | # CONFIG_BASLER_EXCITE is not set | ||
14 | # CONFIG_BCM47XX is not set | 13 | # CONFIG_BCM47XX is not set |
15 | # CONFIG_BCM63XX is not set | 14 | # CONFIG_BCM63XX is not set |
16 | # CONFIG_MIPS_COBALT is not set | 15 | # CONFIG_MIPS_COBALT is not set |
@@ -284,7 +283,6 @@ CONFIG_DEFAULT_AS=y | |||
284 | # CONFIG_DEFAULT_CFQ is not set | 283 | # CONFIG_DEFAULT_CFQ is not set |
285 | # CONFIG_DEFAULT_NOOP is not set | 284 | # CONFIG_DEFAULT_NOOP is not set |
286 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 285 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
287 | # CONFIG_PROBE_INITRD_HEADER is not set | ||
288 | # CONFIG_FREEZER is not set | 286 | # CONFIG_FREEZER is not set |
289 | 287 | ||
290 | # | 288 | # |
@@ -1063,7 +1061,7 @@ CONFIG_TRACING_SUPPORT=y | |||
1063 | # CONFIG_DYNAMIC_DEBUG is not set | 1061 | # CONFIG_DYNAMIC_DEBUG is not set |
1064 | # CONFIG_SAMPLES is not set | 1062 | # CONFIG_SAMPLES is not set |
1065 | CONFIG_HAVE_ARCH_KGDB=y | 1063 | CONFIG_HAVE_ARCH_KGDB=y |
1066 | CONFIG_CMDLINE="" | 1064 | # CONFIG_CMDLINE_BOOL is not set |
1067 | 1065 | ||
1068 | # | 1066 | # |
1069 | # Security options | 1067 | # Security options |
diff --git a/arch/mips/configs/rm200_defconfig b/arch/mips/configs/rm200_defconfig index e53b8d096cfc..790362890033 100644 --- a/arch/mips/configs/rm200_defconfig +++ b/arch/mips/configs/rm200_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -1694,7 +1693,7 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
1694 | # CONFIG_DEBUG_KERNEL is not set | 1693 | # CONFIG_DEBUG_KERNEL is not set |
1695 | CONFIG_LOG_BUF_SHIFT=14 | 1694 | CONFIG_LOG_BUF_SHIFT=14 |
1696 | CONFIG_CROSSCOMPILE=y | 1695 | CONFIG_CROSSCOMPILE=y |
1697 | CONFIG_CMDLINE="" | 1696 | # CONFIG_CMDLINE_BOOL is not set |
1698 | 1697 | ||
1699 | # | 1698 | # |
1700 | # Security options | 1699 | # Security options |
diff --git a/arch/mips/configs/sb1250-swarm_defconfig b/arch/mips/configs/sb1250-swarm_defconfig index 7f38c0b956f3..7f07bf02b838 100644 --- a/arch/mips/configs/sb1250-swarm_defconfig +++ b/arch/mips/configs/sb1250-swarm_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -961,7 +960,7 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
961 | # CONFIG_HEADERS_CHECK is not set | 960 | # CONFIG_HEADERS_CHECK is not set |
962 | # CONFIG_DEBUG_KERNEL is not set | 961 | # CONFIG_DEBUG_KERNEL is not set |
963 | # CONFIG_SAMPLES is not set | 962 | # CONFIG_SAMPLES is not set |
964 | CONFIG_CMDLINE="" | 963 | # CONFIG_CMDLINE_BOOL is not set |
965 | # CONFIG_SB1XXX_CORELIS is not set | 964 | # CONFIG_SB1XXX_CORELIS is not set |
966 | 965 | ||
967 | # | 966 | # |
diff --git a/arch/mips/configs/tb0219_defconfig b/arch/mips/configs/tb0219_defconfig index b5059881bc7e..c54d1128f9a3 100644 --- a/arch/mips/configs/tb0219_defconfig +++ b/arch/mips/configs/tb0219_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -892,7 +891,9 @@ CONFIG_FRAME_WARN=1024 | |||
892 | # CONFIG_HEADERS_CHECK is not set | 891 | # CONFIG_HEADERS_CHECK is not set |
893 | # CONFIG_DEBUG_KERNEL is not set | 892 | # CONFIG_DEBUG_KERNEL is not set |
894 | # CONFIG_SAMPLES is not set | 893 | # CONFIG_SAMPLES is not set |
894 | CONFIG_CMDLINE_BOOL=y | ||
895 | CONFIG_CMDLINE="cca=3 mem=64M console=ttyVR0,115200 ip=any root=/dev/nfs" | 895 | CONFIG_CMDLINE="cca=3 mem=64M console=ttyVR0,115200 ip=any root=/dev/nfs" |
896 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
896 | 897 | ||
897 | # | 898 | # |
898 | # Security options | 899 | # Security options |
diff --git a/arch/mips/configs/tb0226_defconfig b/arch/mips/configs/tb0226_defconfig index b06a716bf23f..e7c5cd32a2bd 100644 --- a/arch/mips/configs/tb0226_defconfig +++ b/arch/mips/configs/tb0226_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -895,7 +894,9 @@ CONFIG_FRAME_WARN=1024 | |||
895 | # CONFIG_HEADERS_CHECK is not set | 894 | # CONFIG_HEADERS_CHECK is not set |
896 | # CONFIG_DEBUG_KERNEL is not set | 895 | # CONFIG_DEBUG_KERNEL is not set |
897 | # CONFIG_SAMPLES is not set | 896 | # CONFIG_SAMPLES is not set |
897 | CONFIG_CMDLINE_BOOL=y | ||
898 | CONFIG_CMDLINE="cca=3 mem=32M console=ttyVR0,115200" | 898 | CONFIG_CMDLINE="cca=3 mem=32M console=ttyVR0,115200" |
899 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
899 | 900 | ||
900 | # | 901 | # |
901 | # Security options | 902 | # Security options |
diff --git a/arch/mips/configs/tb0287_defconfig b/arch/mips/configs/tb0287_defconfig index 46512cf7ce04..b50032ba4d01 100644 --- a/arch/mips/configs/tb0287_defconfig +++ b/arch/mips/configs/tb0287_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_BCM47XX is not set | 12 | # CONFIG_BCM47XX is not set |
14 | # CONFIG_MIPS_COBALT is not set | 13 | # CONFIG_MIPS_COBALT is not set |
15 | # CONFIG_MACH_DECSTATION is not set | 14 | # CONFIG_MACH_DECSTATION is not set |
@@ -1077,7 +1076,9 @@ CONFIG_FRAME_WARN=1024 | |||
1077 | # CONFIG_HEADERS_CHECK is not set | 1076 | # CONFIG_HEADERS_CHECK is not set |
1078 | # CONFIG_DEBUG_KERNEL is not set | 1077 | # CONFIG_DEBUG_KERNEL is not set |
1079 | # CONFIG_SAMPLES is not set | 1078 | # CONFIG_SAMPLES is not set |
1079 | CONFIG_CMDLINE_BOOL=y | ||
1080 | CONFIG_CMDLINE="cca=3 mem=64M console=ttyVR0,115200 ip=any root=/dev/nfs" | 1080 | CONFIG_CMDLINE="cca=3 mem=64M console=ttyVR0,115200 ip=any root=/dev/nfs" |
1081 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
1081 | 1082 | ||
1082 | # | 1083 | # |
1083 | # Security options | 1084 | # Security options |
diff --git a/arch/mips/configs/workpad_defconfig b/arch/mips/configs/workpad_defconfig index b437eb7f8672..c02ba08b69ab 100644 --- a/arch/mips/configs/workpad_defconfig +++ b/arch/mips/configs/workpad_defconfig | |||
@@ -9,7 +9,6 @@ CONFIG_MIPS=y | |||
9 | # Machine selection | 9 | # Machine selection |
10 | # | 10 | # |
11 | # CONFIG_MACH_ALCHEMY is not set | 11 | # CONFIG_MACH_ALCHEMY is not set |
12 | # CONFIG_BASLER_EXCITE is not set | ||
13 | # CONFIG_MIPS_COBALT is not set | 12 | # CONFIG_MIPS_COBALT is not set |
14 | # CONFIG_MACH_DECSTATION is not set | 13 | # CONFIG_MACH_DECSTATION is not set |
15 | # CONFIG_MACH_JAZZ is not set | 14 | # CONFIG_MACH_JAZZ is not set |
@@ -755,7 +754,9 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
755 | # CONFIG_HEADERS_CHECK is not set | 754 | # CONFIG_HEADERS_CHECK is not set |
756 | # CONFIG_DEBUG_KERNEL is not set | 755 | # CONFIG_DEBUG_KERNEL is not set |
757 | CONFIG_CROSSCOMPILE=y | 756 | CONFIG_CROSSCOMPILE=y |
757 | CONFIG_CMDLINE_BOOL=y | ||
758 | CONFIG_CMDLINE="console=ttyVR0,19200 ide0=0x170,0x376,49 mem=16M" | 758 | CONFIG_CMDLINE="console=ttyVR0,19200 ide0=0x170,0x376,49 mem=16M" |
759 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
759 | 760 | ||
760 | # | 761 | # |
761 | # Security options | 762 | # Security options |
diff --git a/arch/mips/configs/wrppmc_defconfig b/arch/mips/configs/wrppmc_defconfig index 06acc7482e4c..a35bc41389e5 100644 --- a/arch/mips/configs/wrppmc_defconfig +++ b/arch/mips/configs/wrppmc_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -887,7 +886,9 @@ CONFIG_ENABLE_MUST_CHECK=y | |||
887 | # CONFIG_DEBUG_KERNEL is not set | 886 | # CONFIG_DEBUG_KERNEL is not set |
888 | CONFIG_LOG_BUF_SHIFT=14 | 887 | CONFIG_LOG_BUF_SHIFT=14 |
889 | CONFIG_CROSSCOMPILE=y | 888 | CONFIG_CROSSCOMPILE=y |
889 | CONFIG_CMDLINE_BOOL=y | ||
890 | CONFIG_CMDLINE="console=ttyS0,115200n8" | 890 | CONFIG_CMDLINE="console=ttyS0,115200n8" |
891 | # CONFIG_CMDLINE_OVERRIDE is not set | ||
891 | 892 | ||
892 | # | 893 | # |
893 | # Security options | 894 | # Security options |
diff --git a/arch/mips/configs/yosemite_defconfig b/arch/mips/configs/yosemite_defconfig index 69feaf88b510..e3d68d651e7d 100644 --- a/arch/mips/configs/yosemite_defconfig +++ b/arch/mips/configs/yosemite_defconfig | |||
@@ -22,7 +22,6 @@ CONFIG_ZONE_DMA=y | |||
22 | # CONFIG_MIPS_DB1550 is not set | 22 | # CONFIG_MIPS_DB1550 is not set |
23 | # CONFIG_MIPS_DB1200 is not set | 23 | # CONFIG_MIPS_DB1200 is not set |
24 | # CONFIG_MIPS_MIRAGE is not set | 24 | # CONFIG_MIPS_MIRAGE is not set |
25 | # CONFIG_BASLER_EXCITE is not set | ||
26 | # CONFIG_MIPS_COBALT is not set | 25 | # CONFIG_MIPS_COBALT is not set |
27 | # CONFIG_MACH_DECSTATION is not set | 26 | # CONFIG_MACH_DECSTATION is not set |
28 | # CONFIG_MACH_JAZZ is not set | 27 | # CONFIG_MACH_JAZZ is not set |
@@ -824,7 +823,7 @@ CONFIG_DEBUG_MUTEXES=y | |||
824 | CONFIG_FORCED_INLINING=y | 823 | CONFIG_FORCED_INLINING=y |
825 | # CONFIG_RCU_TORTURE_TEST is not set | 824 | # CONFIG_RCU_TORTURE_TEST is not set |
826 | CONFIG_CROSSCOMPILE=y | 825 | CONFIG_CROSSCOMPILE=y |
827 | CONFIG_CMDLINE="" | 826 | # CONFIG_CMDLINE_BOOL is not set |
828 | # CONFIG_DEBUG_STACK_USAGE is not set | 827 | # CONFIG_DEBUG_STACK_USAGE is not set |
829 | # CONFIG_RUNTIME_DEBUG is not set | 828 | # CONFIG_RUNTIME_DEBUG is not set |
830 | 829 | ||
diff --git a/arch/mips/dec/kn01-berr.c b/arch/mips/dec/kn01-berr.c index b0dc6d53edd6..94d23b4a7dc3 100644 --- a/arch/mips/dec/kn01-berr.c +++ b/arch/mips/dec/kn01-berr.c | |||
@@ -46,7 +46,7 @@ | |||
46 | * There is no default value -- it has to be initialized. | 46 | * There is no default value -- it has to be initialized. |
47 | */ | 47 | */ |
48 | u16 cached_kn01_csr; | 48 | u16 cached_kn01_csr; |
49 | DEFINE_SPINLOCK(kn01_lock); | 49 | static DEFINE_RAW_SPINLOCK(kn01_lock); |
50 | 50 | ||
51 | 51 | ||
52 | static inline void dec_kn01_be_ack(void) | 52 | static inline void dec_kn01_be_ack(void) |
@@ -54,12 +54,12 @@ static inline void dec_kn01_be_ack(void) | |||
54 | volatile u16 *csr = (void *)CKSEG1ADDR(KN01_SLOT_BASE + KN01_CSR); | 54 | volatile u16 *csr = (void *)CKSEG1ADDR(KN01_SLOT_BASE + KN01_CSR); |
55 | unsigned long flags; | 55 | unsigned long flags; |
56 | 56 | ||
57 | spin_lock_irqsave(&kn01_lock, flags); | 57 | raw_spin_lock_irqsave(&kn01_lock, flags); |
58 | 58 | ||
59 | *csr = cached_kn01_csr | KN01_CSR_MEMERR; /* Clear bus IRQ. */ | 59 | *csr = cached_kn01_csr | KN01_CSR_MEMERR; /* Clear bus IRQ. */ |
60 | iob(); | 60 | iob(); |
61 | 61 | ||
62 | spin_unlock_irqrestore(&kn01_lock, flags); | 62 | raw_spin_unlock_irqrestore(&kn01_lock, flags); |
63 | } | 63 | } |
64 | 64 | ||
65 | static int dec_kn01_be_backend(struct pt_regs *regs, int is_fixup, int invoker) | 65 | static int dec_kn01_be_backend(struct pt_regs *regs, int is_fixup, int invoker) |
@@ -182,7 +182,7 @@ void __init dec_kn01_be_init(void) | |||
182 | volatile u16 *csr = (void *)CKSEG1ADDR(KN01_SLOT_BASE + KN01_CSR); | 182 | volatile u16 *csr = (void *)CKSEG1ADDR(KN01_SLOT_BASE + KN01_CSR); |
183 | unsigned long flags; | 183 | unsigned long flags; |
184 | 184 | ||
185 | spin_lock_irqsave(&kn01_lock, flags); | 185 | raw_spin_lock_irqsave(&kn01_lock, flags); |
186 | 186 | ||
187 | /* Preset write-only bits of the Control Register cache. */ | 187 | /* Preset write-only bits of the Control Register cache. */ |
188 | cached_kn01_csr = *csr; | 188 | cached_kn01_csr = *csr; |
@@ -194,7 +194,7 @@ void __init dec_kn01_be_init(void) | |||
194 | *csr = cached_kn01_csr; | 194 | *csr = cached_kn01_csr; |
195 | iob(); | 195 | iob(); |
196 | 196 | ||
197 | spin_unlock_irqrestore(&kn01_lock, flags); | 197 | raw_spin_unlock_irqrestore(&kn01_lock, flags); |
198 | 198 | ||
199 | /* Clear any leftover errors from the firmware. */ | 199 | /* Clear any leftover errors from the firmware. */ |
200 | dec_kn01_be_ack(); | 200 | dec_kn01_be_ack(); |
diff --git a/arch/mips/dec/prom/locore.S b/arch/mips/dec/prom/locore.S index d9acdcefee81..f72b5741025f 100644 --- a/arch/mips/dec/prom/locore.S +++ b/arch/mips/dec/prom/locore.S | |||
@@ -27,4 +27,3 @@ NESTED(genexcept_early, 0, sp) | |||
27 | jr k0 | 27 | jr k0 |
28 | rfe | 28 | rfe |
29 | END(genexcept_early) | 29 | END(genexcept_early) |
30 | |||
diff --git a/arch/mips/fw/arc/cmdline.c b/arch/mips/fw/arc/cmdline.c index 4ca4eef934a5..5c8603c85f20 100644 --- a/arch/mips/fw/arc/cmdline.c +++ b/arch/mips/fw/arc/cmdline.c | |||
@@ -16,11 +16,6 @@ | |||
16 | 16 | ||
17 | #undef DEBUG_CMDLINE | 17 | #undef DEBUG_CMDLINE |
18 | 18 | ||
19 | char * __init prom_getcmdline(void) | ||
20 | { | ||
21 | return arcs_cmdline; | ||
22 | } | ||
23 | |||
24 | static char *ignored[] = { | 19 | static char *ignored[] = { |
25 | "ConsoleIn=", | 20 | "ConsoleIn=", |
26 | "ConsoleOut=", | 21 | "ConsoleOut=", |
diff --git a/arch/mips/include/asm/abi.h b/arch/mips/include/asm/abi.h index 1dd74fbdc09b..9252d9b50e59 100644 --- a/arch/mips/include/asm/abi.h +++ b/arch/mips/include/asm/abi.h | |||
@@ -13,12 +13,14 @@ | |||
13 | #include <asm/siginfo.h> | 13 | #include <asm/siginfo.h> |
14 | 14 | ||
15 | struct mips_abi { | 15 | struct mips_abi { |
16 | int (* const setup_frame)(struct k_sigaction * ka, | 16 | int (* const setup_frame)(void *sig_return, struct k_sigaction *ka, |
17 | struct pt_regs *regs, int signr, | 17 | struct pt_regs *regs, int signr, |
18 | sigset_t *set); | 18 | sigset_t *set); |
19 | int (* const setup_rt_frame)(struct k_sigaction * ka, | 19 | const unsigned long signal_return_offset; |
20 | int (* const setup_rt_frame)(void *sig_return, struct k_sigaction *ka, | ||
20 | struct pt_regs *regs, int signr, | 21 | struct pt_regs *regs, int signr, |
21 | sigset_t *set, siginfo_t *info); | 22 | sigset_t *set, siginfo_t *info); |
23 | const unsigned long rt_signal_return_offset; | ||
22 | const unsigned long restart; | 24 | const unsigned long restart; |
23 | }; | 25 | }; |
24 | 26 | ||
diff --git a/arch/mips/include/asm/asm-offsets.h b/arch/mips/include/asm/asm-offsets.h new file mode 100644 index 000000000000..d370ee36a182 --- /dev/null +++ b/arch/mips/include/asm/asm-offsets.h | |||
@@ -0,0 +1 @@ | |||
#include <generated/asm-offsets.h> | |||
diff --git a/arch/mips/include/asm/atomic.h b/arch/mips/include/asm/atomic.h index dd75d673447e..519197ede089 100644 --- a/arch/mips/include/asm/atomic.h +++ b/arch/mips/include/asm/atomic.h | |||
@@ -137,7 +137,7 @@ static __inline__ int atomic_add_return(int i, atomic_t * v) | |||
137 | { | 137 | { |
138 | int result; | 138 | int result; |
139 | 139 | ||
140 | smp_llsc_mb(); | 140 | smp_mb__before_llsc(); |
141 | 141 | ||
142 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 142 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
143 | int temp; | 143 | int temp; |
@@ -189,7 +189,7 @@ static __inline__ int atomic_sub_return(int i, atomic_t * v) | |||
189 | { | 189 | { |
190 | int result; | 190 | int result; |
191 | 191 | ||
192 | smp_llsc_mb(); | 192 | smp_mb__before_llsc(); |
193 | 193 | ||
194 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 194 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
195 | int temp; | 195 | int temp; |
@@ -249,7 +249,7 @@ static __inline__ int atomic_sub_if_positive(int i, atomic_t * v) | |||
249 | { | 249 | { |
250 | int result; | 250 | int result; |
251 | 251 | ||
252 | smp_llsc_mb(); | 252 | smp_mb__before_llsc(); |
253 | 253 | ||
254 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 254 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
255 | int temp; | 255 | int temp; |
@@ -516,7 +516,7 @@ static __inline__ long atomic64_add_return(long i, atomic64_t * v) | |||
516 | { | 516 | { |
517 | long result; | 517 | long result; |
518 | 518 | ||
519 | smp_llsc_mb(); | 519 | smp_mb__before_llsc(); |
520 | 520 | ||
521 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 521 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
522 | long temp; | 522 | long temp; |
@@ -568,7 +568,7 @@ static __inline__ long atomic64_sub_return(long i, atomic64_t * v) | |||
568 | { | 568 | { |
569 | long result; | 569 | long result; |
570 | 570 | ||
571 | smp_llsc_mb(); | 571 | smp_mb__before_llsc(); |
572 | 572 | ||
573 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 573 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
574 | long temp; | 574 | long temp; |
@@ -628,7 +628,7 @@ static __inline__ long atomic64_sub_if_positive(long i, atomic64_t * v) | |||
628 | { | 628 | { |
629 | long result; | 629 | long result; |
630 | 630 | ||
631 | smp_llsc_mb(); | 631 | smp_mb__before_llsc(); |
632 | 632 | ||
633 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 633 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
634 | long temp; | 634 | long temp; |
@@ -788,9 +788,9 @@ static __inline__ int atomic64_add_unless(atomic64_t *v, long a, long u) | |||
788 | * atomic*_return operations are serializing but not the non-*_return | 788 | * atomic*_return operations are serializing but not the non-*_return |
789 | * versions. | 789 | * versions. |
790 | */ | 790 | */ |
791 | #define smp_mb__before_atomic_dec() smp_llsc_mb() | 791 | #define smp_mb__before_atomic_dec() smp_mb__before_llsc() |
792 | #define smp_mb__after_atomic_dec() smp_llsc_mb() | 792 | #define smp_mb__after_atomic_dec() smp_llsc_mb() |
793 | #define smp_mb__before_atomic_inc() smp_llsc_mb() | 793 | #define smp_mb__before_atomic_inc() smp_mb__before_llsc() |
794 | #define smp_mb__after_atomic_inc() smp_llsc_mb() | 794 | #define smp_mb__after_atomic_inc() smp_llsc_mb() |
795 | 795 | ||
796 | #include <asm-generic/atomic-long.h> | 796 | #include <asm-generic/atomic-long.h> |
diff --git a/arch/mips/include/asm/barrier.h b/arch/mips/include/asm/barrier.h index 8e9ac313ca3b..c0884f02d3a6 100644 --- a/arch/mips/include/asm/barrier.h +++ b/arch/mips/include/asm/barrier.h | |||
@@ -88,12 +88,20 @@ | |||
88 | : /* no output */ \ | 88 | : /* no output */ \ |
89 | : "m" (*(int *)CKSEG1) \ | 89 | : "m" (*(int *)CKSEG1) \ |
90 | : "memory") | 90 | : "memory") |
91 | 91 | #ifdef CONFIG_CPU_CAVIUM_OCTEON | |
92 | #define fast_wmb() __sync() | 92 | # define OCTEON_SYNCW_STR ".set push\n.set arch=octeon\nsyncw\nsyncw\n.set pop\n" |
93 | #define fast_rmb() __sync() | 93 | # define __syncw() __asm__ __volatile__(OCTEON_SYNCW_STR : : : "memory") |
94 | #define fast_mb() __sync() | 94 | |
95 | #ifdef CONFIG_SGI_IP28 | 95 | # define fast_wmb() __syncw() |
96 | #define fast_iob() \ | 96 | # define fast_rmb() barrier() |
97 | # define fast_mb() __sync() | ||
98 | # define fast_iob() do { } while (0) | ||
99 | #else /* ! CONFIG_CPU_CAVIUM_OCTEON */ | ||
100 | # define fast_wmb() __sync() | ||
101 | # define fast_rmb() __sync() | ||
102 | # define fast_mb() __sync() | ||
103 | # ifdef CONFIG_SGI_IP28 | ||
104 | # define fast_iob() \ | ||
97 | __asm__ __volatile__( \ | 105 | __asm__ __volatile__( \ |
98 | ".set push\n\t" \ | 106 | ".set push\n\t" \ |
99 | ".set noreorder\n\t" \ | 107 | ".set noreorder\n\t" \ |
@@ -104,13 +112,14 @@ | |||
104 | : /* no output */ \ | 112 | : /* no output */ \ |
105 | : "m" (*(int *)CKSEG1ADDR(0x1fa00004)) \ | 113 | : "m" (*(int *)CKSEG1ADDR(0x1fa00004)) \ |
106 | : "memory") | 114 | : "memory") |
107 | #else | 115 | # else |
108 | #define fast_iob() \ | 116 | # define fast_iob() \ |
109 | do { \ | 117 | do { \ |
110 | __sync(); \ | 118 | __sync(); \ |
111 | __fast_iob(); \ | 119 | __fast_iob(); \ |
112 | } while (0) | 120 | } while (0) |
113 | #endif | 121 | # endif |
122 | #endif /* CONFIG_CPU_CAVIUM_OCTEON */ | ||
114 | 123 | ||
115 | #ifdef CONFIG_CPU_HAS_WB | 124 | #ifdef CONFIG_CPU_HAS_WB |
116 | 125 | ||
@@ -131,25 +140,42 @@ | |||
131 | #endif /* !CONFIG_CPU_HAS_WB */ | 140 | #endif /* !CONFIG_CPU_HAS_WB */ |
132 | 141 | ||
133 | #if defined(CONFIG_WEAK_ORDERING) && defined(CONFIG_SMP) | 142 | #if defined(CONFIG_WEAK_ORDERING) && defined(CONFIG_SMP) |
134 | #define __WEAK_ORDERING_MB " sync \n" | 143 | # ifdef CONFIG_CPU_CAVIUM_OCTEON |
144 | # define smp_mb() __sync() | ||
145 | # define smp_rmb() barrier() | ||
146 | # define smp_wmb() __syncw() | ||
147 | # else | ||
148 | # define smp_mb() __asm__ __volatile__("sync" : : :"memory") | ||
149 | # define smp_rmb() __asm__ __volatile__("sync" : : :"memory") | ||
150 | # define smp_wmb() __asm__ __volatile__("sync" : : :"memory") | ||
151 | # endif | ||
135 | #else | 152 | #else |
136 | #define __WEAK_ORDERING_MB " \n" | 153 | #define smp_mb() barrier() |
154 | #define smp_rmb() barrier() | ||
155 | #define smp_wmb() barrier() | ||
137 | #endif | 156 | #endif |
157 | |||
138 | #if defined(CONFIG_WEAK_REORDERING_BEYOND_LLSC) && defined(CONFIG_SMP) | 158 | #if defined(CONFIG_WEAK_REORDERING_BEYOND_LLSC) && defined(CONFIG_SMP) |
139 | #define __WEAK_LLSC_MB " sync \n" | 159 | #define __WEAK_LLSC_MB " sync \n" |
140 | #else | 160 | #else |
141 | #define __WEAK_LLSC_MB " \n" | 161 | #define __WEAK_LLSC_MB " \n" |
142 | #endif | 162 | #endif |
143 | 163 | ||
144 | #define smp_mb() __asm__ __volatile__(__WEAK_ORDERING_MB : : :"memory") | ||
145 | #define smp_rmb() __asm__ __volatile__(__WEAK_ORDERING_MB : : :"memory") | ||
146 | #define smp_wmb() __asm__ __volatile__(__WEAK_ORDERING_MB : : :"memory") | ||
147 | |||
148 | #define set_mb(var, value) \ | 164 | #define set_mb(var, value) \ |
149 | do { var = value; smp_mb(); } while (0) | 165 | do { var = value; smp_mb(); } while (0) |
150 | 166 | ||
151 | #define smp_llsc_mb() __asm__ __volatile__(__WEAK_LLSC_MB : : :"memory") | 167 | #define smp_llsc_mb() __asm__ __volatile__(__WEAK_LLSC_MB : : :"memory") |
152 | #define smp_llsc_rmb() __asm__ __volatile__(__WEAK_LLSC_MB : : :"memory") | 168 | |
153 | #define smp_llsc_wmb() __asm__ __volatile__(__WEAK_LLSC_MB : : :"memory") | 169 | #ifdef CONFIG_CPU_CAVIUM_OCTEON |
170 | #define smp_mb__before_llsc() smp_wmb() | ||
171 | /* Cause previous writes to become visible on all CPUs as soon as possible */ | ||
172 | #define nudge_writes() __asm__ __volatile__(".set push\n\t" \ | ||
173 | ".set arch=octeon\n\t" \ | ||
174 | "syncw\n\t" \ | ||
175 | ".set pop" : : : "memory") | ||
176 | #else | ||
177 | #define smp_mb__before_llsc() smp_llsc_mb() | ||
178 | #define nudge_writes() mb() | ||
179 | #endif | ||
154 | 180 | ||
155 | #endif /* __ASM_BARRIER_H */ | 181 | #endif /* __ASM_BARRIER_H */ |
diff --git a/arch/mips/include/asm/bitops.h b/arch/mips/include/asm/bitops.h index 84a383806b2c..9255cfbee459 100644 --- a/arch/mips/include/asm/bitops.h +++ b/arch/mips/include/asm/bitops.h | |||
@@ -42,7 +42,7 @@ | |||
42 | /* | 42 | /* |
43 | * clear_bit() doesn't provide any barrier for the compiler. | 43 | * clear_bit() doesn't provide any barrier for the compiler. |
44 | */ | 44 | */ |
45 | #define smp_mb__before_clear_bit() smp_llsc_mb() | 45 | #define smp_mb__before_clear_bit() smp_mb__before_llsc() |
46 | #define smp_mb__after_clear_bit() smp_llsc_mb() | 46 | #define smp_mb__after_clear_bit() smp_llsc_mb() |
47 | 47 | ||
48 | /* | 48 | /* |
@@ -258,7 +258,7 @@ static inline int test_and_set_bit(unsigned long nr, | |||
258 | unsigned short bit = nr & SZLONG_MASK; | 258 | unsigned short bit = nr & SZLONG_MASK; |
259 | unsigned long res; | 259 | unsigned long res; |
260 | 260 | ||
261 | smp_llsc_mb(); | 261 | smp_mb__before_llsc(); |
262 | 262 | ||
263 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 263 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
264 | unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG); | 264 | unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG); |
@@ -395,7 +395,7 @@ static inline int test_and_clear_bit(unsigned long nr, | |||
395 | unsigned short bit = nr & SZLONG_MASK; | 395 | unsigned short bit = nr & SZLONG_MASK; |
396 | unsigned long res; | 396 | unsigned long res; |
397 | 397 | ||
398 | smp_llsc_mb(); | 398 | smp_mb__before_llsc(); |
399 | 399 | ||
400 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 400 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
401 | unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG); | 401 | unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG); |
@@ -485,7 +485,7 @@ static inline int test_and_change_bit(unsigned long nr, | |||
485 | unsigned short bit = nr & SZLONG_MASK; | 485 | unsigned short bit = nr & SZLONG_MASK; |
486 | unsigned long res; | 486 | unsigned long res; |
487 | 487 | ||
488 | smp_llsc_mb(); | 488 | smp_mb__before_llsc(); |
489 | 489 | ||
490 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 490 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
491 | unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG); | 491 | unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG); |
diff --git a/arch/mips/include/asm/bootinfo.h b/arch/mips/include/asm/bootinfo.h index f5dfaf6a1606..09eee09780f2 100644 --- a/arch/mips/include/asm/bootinfo.h +++ b/arch/mips/include/asm/bootinfo.h | |||
@@ -67,9 +67,9 @@ | |||
67 | #define MACH_LEMOTE_ML2F7 3 | 67 | #define MACH_LEMOTE_ML2F7 3 |
68 | #define MACH_LEMOTE_YL2F89 4 | 68 | #define MACH_LEMOTE_YL2F89 4 |
69 | #define MACH_DEXXON_GDIUM2F10 5 | 69 | #define MACH_DEXXON_GDIUM2F10 5 |
70 | #define MACH_LOONGSON_END 6 | 70 | #define MACH_LEMOTE_NAS 6 |
71 | 71 | #define MACH_LEMOTE_LL2F 7 | |
72 | #define CL_SIZE COMMAND_LINE_SIZE | 72 | #define MACH_LOONGSON_END 8 |
73 | 73 | ||
74 | extern char *system_type; | 74 | extern char *system_type; |
75 | const char *get_system_type(void); | 75 | const char *get_system_type(void); |
@@ -107,7 +107,7 @@ extern void free_init_pages(const char *what, | |||
107 | /* | 107 | /* |
108 | * Initial kernel command line, usually setup by prom_init() | 108 | * Initial kernel command line, usually setup by prom_init() |
109 | */ | 109 | */ |
110 | extern char arcs_cmdline[CL_SIZE]; | 110 | extern char arcs_cmdline[COMMAND_LINE_SIZE]; |
111 | 111 | ||
112 | /* | 112 | /* |
113 | * Registers a0, a1, a3 and a4 as passed to the kernel entry by firmware | 113 | * Registers a0, a1, a3 and a4 as passed to the kernel entry by firmware |
diff --git a/arch/mips/include/asm/bug.h b/arch/mips/include/asm/bug.h index 6cf29c26e873..540c98a810d1 100644 --- a/arch/mips/include/asm/bug.h +++ b/arch/mips/include/asm/bug.h | |||
@@ -11,9 +11,7 @@ | |||
11 | static inline void __noreturn BUG(void) | 11 | static inline void __noreturn BUG(void) |
12 | { | 12 | { |
13 | __asm__ __volatile__("break %0" : : "i" (BRK_BUG)); | 13 | __asm__ __volatile__("break %0" : : "i" (BRK_BUG)); |
14 | /* Fool GCC into thinking the function doesn't return. */ | 14 | unreachable(); |
15 | while (1) | ||
16 | ; | ||
17 | } | 15 | } |
18 | 16 | ||
19 | #define HAVE_ARCH_BUG | 17 | #define HAVE_ARCH_BUG |
diff --git a/arch/mips/include/asm/cacheflush.h b/arch/mips/include/asm/cacheflush.h index 03b1d69b142f..40bb9fde205f 100644 --- a/arch/mips/include/asm/cacheflush.h +++ b/arch/mips/include/asm/cacheflush.h | |||
@@ -38,6 +38,7 @@ extern void (*flush_cache_range)(struct vm_area_struct *vma, | |||
38 | extern void (*flush_cache_page)(struct vm_area_struct *vma, unsigned long page, unsigned long pfn); | 38 | extern void (*flush_cache_page)(struct vm_area_struct *vma, unsigned long page, unsigned long pfn); |
39 | extern void __flush_dcache_page(struct page *page); | 39 | extern void __flush_dcache_page(struct page *page); |
40 | 40 | ||
41 | #define ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE 1 | ||
41 | static inline void flush_dcache_page(struct page *page) | 42 | static inline void flush_dcache_page(struct page *page) |
42 | { | 43 | { |
43 | if (cpu_has_dc_aliases || !cpu_has_ic_fills_f_dc) | 44 | if (cpu_has_dc_aliases || !cpu_has_ic_fills_f_dc) |
diff --git a/arch/mips/include/asm/clock.h b/arch/mips/include/asm/clock.h new file mode 100644 index 000000000000..83894aa7932c --- /dev/null +++ b/arch/mips/include/asm/clock.h | |||
@@ -0,0 +1,64 @@ | |||
1 | #ifndef __ASM_MIPS_CLOCK_H | ||
2 | #define __ASM_MIPS_CLOCK_H | ||
3 | |||
4 | #include <linux/kref.h> | ||
5 | #include <linux/list.h> | ||
6 | #include <linux/seq_file.h> | ||
7 | #include <linux/clk.h> | ||
8 | |||
9 | extern void (*cpu_wait) (void); | ||
10 | |||
11 | struct clk; | ||
12 | |||
13 | struct clk_ops { | ||
14 | void (*init) (struct clk *clk); | ||
15 | void (*enable) (struct clk *clk); | ||
16 | void (*disable) (struct clk *clk); | ||
17 | void (*recalc) (struct clk *clk); | ||
18 | int (*set_rate) (struct clk *clk, unsigned long rate, int algo_id); | ||
19 | long (*round_rate) (struct clk *clk, unsigned long rate); | ||
20 | }; | ||
21 | |||
22 | struct clk { | ||
23 | struct list_head node; | ||
24 | const char *name; | ||
25 | int id; | ||
26 | struct module *owner; | ||
27 | |||
28 | struct clk *parent; | ||
29 | struct clk_ops *ops; | ||
30 | |||
31 | struct kref kref; | ||
32 | |||
33 | unsigned long rate; | ||
34 | unsigned long flags; | ||
35 | }; | ||
36 | |||
37 | #define CLK_ALWAYS_ENABLED (1 << 0) | ||
38 | #define CLK_RATE_PROPAGATES (1 << 1) | ||
39 | |||
40 | /* Should be defined by processor-specific code */ | ||
41 | void arch_init_clk_ops(struct clk_ops **, int type); | ||
42 | |||
43 | int clk_init(void); | ||
44 | |||
45 | int __clk_enable(struct clk *); | ||
46 | void __clk_disable(struct clk *); | ||
47 | |||
48 | void clk_recalc_rate(struct clk *); | ||
49 | |||
50 | int clk_register(struct clk *); | ||
51 | void clk_unregister(struct clk *); | ||
52 | |||
53 | /* the exported API, in addition to clk_set_rate */ | ||
54 | /** | ||
55 | * clk_set_rate_ex - set the clock rate for a clock source, with additional parameter | ||
56 | * @clk: clock source | ||
57 | * @rate: desired clock rate in Hz | ||
58 | * @algo_id: algorithm id to be passed down to ops->set_rate | ||
59 | * | ||
60 | * Returns success (0) or negative errno. | ||
61 | */ | ||
62 | int clk_set_rate_ex(struct clk *clk, unsigned long rate, int algo_id); | ||
63 | |||
64 | #endif /* __ASM_MIPS_CLOCK_H */ | ||
diff --git a/arch/mips/include/asm/cmpxchg.h b/arch/mips/include/asm/cmpxchg.h index 815a438a268d..2d28017e95d0 100644 --- a/arch/mips/include/asm/cmpxchg.h +++ b/arch/mips/include/asm/cmpxchg.h | |||
@@ -16,7 +16,7 @@ | |||
16 | ({ \ | 16 | ({ \ |
17 | __typeof(*(m)) __ret; \ | 17 | __typeof(*(m)) __ret; \ |
18 | \ | 18 | \ |
19 | if (kernel_uses_llsc && R10000_LLSC_WAR) { \ | 19 | if (kernel_uses_llsc && R10000_LLSC_WAR) { \ |
20 | __asm__ __volatile__( \ | 20 | __asm__ __volatile__( \ |
21 | " .set push \n" \ | 21 | " .set push \n" \ |
22 | " .set noat \n" \ | 22 | " .set noat \n" \ |
@@ -72,14 +72,14 @@ | |||
72 | */ | 72 | */ |
73 | extern void __cmpxchg_called_with_bad_pointer(void); | 73 | extern void __cmpxchg_called_with_bad_pointer(void); |
74 | 74 | ||
75 | #define __cmpxchg(ptr, old, new, barrier) \ | 75 | #define __cmpxchg(ptr, old, new, pre_barrier, post_barrier) \ |
76 | ({ \ | 76 | ({ \ |
77 | __typeof__(ptr) __ptr = (ptr); \ | 77 | __typeof__(ptr) __ptr = (ptr); \ |
78 | __typeof__(*(ptr)) __old = (old); \ | 78 | __typeof__(*(ptr)) __old = (old); \ |
79 | __typeof__(*(ptr)) __new = (new); \ | 79 | __typeof__(*(ptr)) __new = (new); \ |
80 | __typeof__(*(ptr)) __res = 0; \ | 80 | __typeof__(*(ptr)) __res = 0; \ |
81 | \ | 81 | \ |
82 | barrier; \ | 82 | pre_barrier; \ |
83 | \ | 83 | \ |
84 | switch (sizeof(*(__ptr))) { \ | 84 | switch (sizeof(*(__ptr))) { \ |
85 | case 4: \ | 85 | case 4: \ |
@@ -96,13 +96,13 @@ extern void __cmpxchg_called_with_bad_pointer(void); | |||
96 | break; \ | 96 | break; \ |
97 | } \ | 97 | } \ |
98 | \ | 98 | \ |
99 | barrier; \ | 99 | post_barrier; \ |
100 | \ | 100 | \ |
101 | __res; \ | 101 | __res; \ |
102 | }) | 102 | }) |
103 | 103 | ||
104 | #define cmpxchg(ptr, old, new) __cmpxchg(ptr, old, new, smp_llsc_mb()) | 104 | #define cmpxchg(ptr, old, new) __cmpxchg(ptr, old, new, smp_mb__before_llsc(), smp_llsc_mb()) |
105 | #define cmpxchg_local(ptr, old, new) __cmpxchg(ptr, old, new, ) | 105 | #define cmpxchg_local(ptr, old, new) __cmpxchg(ptr, old, new, , ) |
106 | 106 | ||
107 | #define cmpxchg64(ptr, o, n) \ | 107 | #define cmpxchg64(ptr, o, n) \ |
108 | ({ \ | 108 | ({ \ |
diff --git a/arch/mips/include/asm/compat.h b/arch/mips/include/asm/compat.h index f58aed354bfd..613f6912dfc1 100644 --- a/arch/mips/include/asm/compat.h +++ b/arch/mips/include/asm/compat.h | |||
@@ -8,7 +8,8 @@ | |||
8 | #include <asm/page.h> | 8 | #include <asm/page.h> |
9 | #include <asm/ptrace.h> | 9 | #include <asm/ptrace.h> |
10 | 10 | ||
11 | #define COMPAT_USER_HZ 100 | 11 | #define COMPAT_USER_HZ 100 |
12 | #define COMPAT_UTS_MACHINE "mips\0\0\0" | ||
12 | 13 | ||
13 | typedef u32 compat_size_t; | 14 | typedef u32 compat_size_t; |
14 | typedef s32 compat_ssize_t; | 15 | typedef s32 compat_ssize_t; |
diff --git a/arch/mips/include/asm/cop2.h b/arch/mips/include/asm/cop2.h new file mode 100644 index 000000000000..6b04c98b7fad --- /dev/null +++ b/arch/mips/include/asm/cop2.h | |||
@@ -0,0 +1,23 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 2009 Wind River Systems, | ||
7 | * written by Ralf Baechle <ralf@linux-mips.org> | ||
8 | */ | ||
9 | #ifndef __ASM_COP2_H | ||
10 | #define __ASM_COP2_H | ||
11 | |||
12 | enum cu2_ops { | ||
13 | CU2_EXCEPTION, | ||
14 | CU2_LWC2_OP, | ||
15 | CU2_LDC2_OP, | ||
16 | CU2_SWC2_OP, | ||
17 | CU2_SDC2_OP, | ||
18 | }; | ||
19 | |||
20 | extern int register_cu2_notifier(struct notifier_block *nb); | ||
21 | extern int cu2_notifier_call_chain(unsigned long val, void *v); | ||
22 | |||
23 | #endif /* __ASM_COP2_H */ | ||
diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-features.h index 1f4df647c384..ac73cede3a0a 100644 --- a/arch/mips/include/asm/cpu-features.h +++ b/arch/mips/include/asm/cpu-features.h | |||
@@ -95,6 +95,9 @@ | |||
95 | #ifndef cpu_has_smartmips | 95 | #ifndef cpu_has_smartmips |
96 | #define cpu_has_smartmips (cpu_data[0].ases & MIPS_ASE_SMARTMIPS) | 96 | #define cpu_has_smartmips (cpu_data[0].ases & MIPS_ASE_SMARTMIPS) |
97 | #endif | 97 | #endif |
98 | #ifndef kernel_uses_smartmips_rixi | ||
99 | #define kernel_uses_smartmips_rixi 0 | ||
100 | #endif | ||
98 | #ifndef cpu_has_vtag_icache | 101 | #ifndef cpu_has_vtag_icache |
99 | #define cpu_has_vtag_icache (cpu_data[0].icache.flags & MIPS_CACHE_VTAG) | 102 | #define cpu_has_vtag_icache (cpu_data[0].icache.flags & MIPS_CACHE_VTAG) |
100 | #endif | 103 | #endif |
@@ -191,6 +194,9 @@ | |||
191 | # ifndef cpu_has_64bit_addresses | 194 | # ifndef cpu_has_64bit_addresses |
192 | # define cpu_has_64bit_addresses 0 | 195 | # define cpu_has_64bit_addresses 0 |
193 | # endif | 196 | # endif |
197 | # ifndef cpu_vmbits | ||
198 | # define cpu_vmbits 31 | ||
199 | # endif | ||
194 | #endif | 200 | #endif |
195 | 201 | ||
196 | #ifdef CONFIG_64BIT | 202 | #ifdef CONFIG_64BIT |
@@ -209,6 +215,10 @@ | |||
209 | # ifndef cpu_has_64bit_addresses | 215 | # ifndef cpu_has_64bit_addresses |
210 | # define cpu_has_64bit_addresses 1 | 216 | # define cpu_has_64bit_addresses 1 |
211 | # endif | 217 | # endif |
218 | # ifndef cpu_vmbits | ||
219 | # define cpu_vmbits cpu_data[0].vmbits | ||
220 | # define __NEED_VMBITS_PROBE | ||
221 | # endif | ||
212 | #endif | 222 | #endif |
213 | 223 | ||
214 | #if defined(CONFIG_CPU_MIPSR2_IRQ_VI) && !defined(cpu_has_vint) | 224 | #if defined(CONFIG_CPU_MIPSR2_IRQ_VI) && !defined(cpu_has_vint) |
diff --git a/arch/mips/include/asm/cpu-info.h b/arch/mips/include/asm/cpu-info.h index 126044308dec..b39def3f6e03 100644 --- a/arch/mips/include/asm/cpu-info.h +++ b/arch/mips/include/asm/cpu-info.h | |||
@@ -58,6 +58,9 @@ struct cpuinfo_mips { | |||
58 | struct cache_desc tcache; /* Tertiary/split secondary cache */ | 58 | struct cache_desc tcache; /* Tertiary/split secondary cache */ |
59 | int srsets; /* Shadow register sets */ | 59 | int srsets; /* Shadow register sets */ |
60 | int core; /* physical core number */ | 60 | int core; /* physical core number */ |
61 | #ifdef CONFIG_64BIT | ||
62 | int vmbits; /* Virtual memory size in bits */ | ||
63 | #endif | ||
61 | #if defined(CONFIG_MIPS_MT_SMP) || defined(CONFIG_MIPS_MT_SMTC) | 64 | #if defined(CONFIG_MIPS_MT_SMP) || defined(CONFIG_MIPS_MT_SMTC) |
62 | /* | 65 | /* |
63 | * In the MIPS MT "SMTC" model, each TC is considered | 66 | * In the MIPS MT "SMTC" model, each TC is considered |
diff --git a/arch/mips/include/asm/cpu.h b/arch/mips/include/asm/cpu.h index 4b96d1a36056..a5acda416946 100644 --- a/arch/mips/include/asm/cpu.h +++ b/arch/mips/include/asm/cpu.h | |||
@@ -154,6 +154,8 @@ | |||
154 | #define PRID_REV_VR4181A 0x0070 /* Same as VR4122 */ | 154 | #define PRID_REV_VR4181A 0x0070 /* Same as VR4122 */ |
155 | #define PRID_REV_VR4130 0x0080 | 155 | #define PRID_REV_VR4130 0x0080 |
156 | #define PRID_REV_34K_V1_0_2 0x0022 | 156 | #define PRID_REV_34K_V1_0_2 0x0022 |
157 | #define PRID_REV_LOONGSON2E 0x0002 | ||
158 | #define PRID_REV_LOONGSON2F 0x0003 | ||
157 | 159 | ||
158 | /* | 160 | /* |
159 | * Older processors used to encode processor version and revision in two | 161 | * Older processors used to encode processor version and revision in two |
@@ -222,7 +224,7 @@ enum cpu_type_enum { | |||
222 | * MIPS64 class processors | 224 | * MIPS64 class processors |
223 | */ | 225 | */ |
224 | CPU_5KC, CPU_20KC, CPU_25KF, CPU_SB1, CPU_SB1A, CPU_LOONGSON2, | 226 | CPU_5KC, CPU_20KC, CPU_25KF, CPU_SB1, CPU_SB1A, CPU_LOONGSON2, |
225 | CPU_CAVIUM_OCTEON, | 227 | CPU_CAVIUM_OCTEON, CPU_CAVIUM_OCTEON_PLUS, |
226 | 228 | ||
227 | CPU_LAST | 229 | CPU_LAST |
228 | }; | 230 | }; |
diff --git a/arch/mips/include/asm/current.h b/arch/mips/include/asm/current.h index 559db66b9790..4c51401b5537 100644 --- a/arch/mips/include/asm/current.h +++ b/arch/mips/include/asm/current.h | |||
@@ -1,23 +1 @@ | |||
1 | /* | #include <asm-generic/current.h> | |
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 1998, 2002 Ralf Baechle | ||
7 | * Copyright (C) 1999 Silicon Graphics, Inc. | ||
8 | */ | ||
9 | #ifndef _ASM_CURRENT_H | ||
10 | #define _ASM_CURRENT_H | ||
11 | |||
12 | #include <linux/thread_info.h> | ||
13 | |||
14 | struct task_struct; | ||
15 | |||
16 | static inline struct task_struct * get_current(void) | ||
17 | { | ||
18 | return current_thread_info()->task; | ||
19 | } | ||
20 | |||
21 | #define current get_current() | ||
22 | |||
23 | #endif /* _ASM_CURRENT_H */ | ||
diff --git a/arch/mips/include/asm/dec/kn01.h b/arch/mips/include/asm/dec/kn01.h index 28fa717ac423..88d9ffd74258 100644 --- a/arch/mips/include/asm/dec/kn01.h +++ b/arch/mips/include/asm/dec/kn01.h | |||
@@ -80,7 +80,6 @@ | |||
80 | struct pt_regs; | 80 | struct pt_regs; |
81 | 81 | ||
82 | extern u16 cached_kn01_csr; | 82 | extern u16 cached_kn01_csr; |
83 | extern spinlock_t kn01_lock; | ||
84 | 83 | ||
85 | extern void dec_kn01_be_init(void); | 84 | extern void dec_kn01_be_init(void); |
86 | extern int dec_kn01_be_handler(struct pt_regs *regs, int is_fixup); | 85 | extern int dec_kn01_be_handler(struct pt_regs *regs, int is_fixup); |
diff --git a/arch/mips/include/asm/device.h b/arch/mips/include/asm/device.h index d8f9872b0e2d..06746c5e8099 100644 --- a/arch/mips/include/asm/device.h +++ b/arch/mips/include/asm/device.h | |||
@@ -4,4 +4,3 @@ | |||
4 | * This file is released under the GPLv2 | 4 | * This file is released under the GPLv2 |
5 | */ | 5 | */ |
6 | #include <asm-generic/device.h> | 6 | #include <asm-generic/device.h> |
7 | |||
diff --git a/arch/mips/include/asm/elf.h b/arch/mips/include/asm/elf.h index 7990694cda22..ea77a42c5f8c 100644 --- a/arch/mips/include/asm/elf.h +++ b/arch/mips/include/asm/elf.h | |||
@@ -310,6 +310,7 @@ do { \ | |||
310 | 310 | ||
311 | #endif /* CONFIG_64BIT */ | 311 | #endif /* CONFIG_64BIT */ |
312 | 312 | ||
313 | struct pt_regs; | ||
313 | struct task_struct; | 314 | struct task_struct; |
314 | 315 | ||
315 | extern void elf_dump_regs(elf_greg_t *, struct pt_regs *regs); | 316 | extern void elf_dump_regs(elf_greg_t *, struct pt_regs *regs); |
@@ -326,7 +327,6 @@ extern int dump_task_fpu(struct task_struct *, elf_fpregset_t *); | |||
326 | #define ELF_CORE_COPY_FPREGS(tsk, elf_fpregs) \ | 327 | #define ELF_CORE_COPY_FPREGS(tsk, elf_fpregs) \ |
327 | dump_task_fpu(tsk, elf_fpregs) | 328 | dump_task_fpu(tsk, elf_fpregs) |
328 | 329 | ||
329 | #define USE_ELF_CORE_DUMP | ||
330 | #define ELF_EXEC_PAGESIZE PAGE_SIZE | 330 | #define ELF_EXEC_PAGESIZE PAGE_SIZE |
331 | 331 | ||
332 | /* This yields a mask that user programs can use to figure out what | 332 | /* This yields a mask that user programs can use to figure out what |
@@ -335,14 +335,14 @@ extern int dump_task_fpu(struct task_struct *, elf_fpregset_t *); | |||
335 | 335 | ||
336 | #define ELF_HWCAP (0) | 336 | #define ELF_HWCAP (0) |
337 | 337 | ||
338 | /* This yields a string that ld.so will use to load implementation | 338 | /* |
339 | specific libraries for optimization. This is more specific in | 339 | * This yields a string that ld.so will use to load implementation |
340 | intent than poking at uname or /proc/cpuinfo. | 340 | * specific libraries for optimization. This is more specific in |
341 | 341 | * intent than poking at uname or /proc/cpuinfo. | |
342 | For the moment, we have only optimizations for the Intel generations, | 342 | */ |
343 | but that could change... */ | ||
344 | 343 | ||
345 | #define ELF_PLATFORM (NULL) | 344 | #define ELF_PLATFORM __elf_platform |
345 | extern const char *__elf_platform; | ||
346 | 346 | ||
347 | /* | 347 | /* |
348 | * See comments in asm-alpha/elf.h, this is the same thing | 348 | * See comments in asm-alpha/elf.h, this is the same thing |
@@ -368,4 +368,8 @@ extern int dump_task_fpu(struct task_struct *, elf_fpregset_t *); | |||
368 | #define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2) | 368 | #define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2) |
369 | #endif | 369 | #endif |
370 | 370 | ||
371 | #define ARCH_HAS_SETUP_ADDITIONAL_PAGES 1 | ||
372 | struct linux_binprm; | ||
373 | extern int arch_setup_additional_pages(struct linux_binprm *bprm, | ||
374 | int uses_interp); | ||
371 | #endif /* _ASM_ELF_H */ | 375 | #endif /* _ASM_ELF_H */ |
diff --git a/arch/mips/include/asm/fcntl.h b/arch/mips/include/asm/fcntl.h index 2a52333a062d..e482fe90fe88 100644 --- a/arch/mips/include/asm/fcntl.h +++ b/arch/mips/include/asm/fcntl.h | |||
@@ -10,7 +10,7 @@ | |||
10 | 10 | ||
11 | 11 | ||
12 | #define O_APPEND 0x0008 | 12 | #define O_APPEND 0x0008 |
13 | #define O_SYNC 0x0010 | 13 | #define O_DSYNC 0x0010 /* used to be O_SYNC, see below */ |
14 | #define O_NONBLOCK 0x0080 | 14 | #define O_NONBLOCK 0x0080 |
15 | #define O_CREAT 0x0100 /* not fcntl */ | 15 | #define O_CREAT 0x0100 /* not fcntl */ |
16 | #define O_TRUNC 0x0200 /* not fcntl */ | 16 | #define O_TRUNC 0x0200 /* not fcntl */ |
@@ -18,6 +18,21 @@ | |||
18 | #define O_NOCTTY 0x0800 /* not fcntl */ | 18 | #define O_NOCTTY 0x0800 /* not fcntl */ |
19 | #define FASYNC 0x1000 /* fcntl, for BSD compatibility */ | 19 | #define FASYNC 0x1000 /* fcntl, for BSD compatibility */ |
20 | #define O_LARGEFILE 0x2000 /* allow large file opens */ | 20 | #define O_LARGEFILE 0x2000 /* allow large file opens */ |
21 | /* | ||
22 | * Before Linux 2.6.33 only O_DSYNC semantics were implemented, but using | ||
23 | * the O_SYNC flag. We continue to use the existing numerical value | ||
24 | * for O_DSYNC semantics now, but using the correct symbolic name for it. | ||
25 | * This new value is used to request true Posix O_SYNC semantics. It is | ||
26 | * defined in this strange way to make sure applications compiled against | ||
27 | * new headers get at least O_DSYNC semantics on older kernels. | ||
28 | * | ||
29 | * This has the nice side-effect that we can simply test for O_DSYNC | ||
30 | * wherever we do not care if O_DSYNC or O_SYNC is used. | ||
31 | * | ||
32 | * Note: __O_SYNC must never be used directly. | ||
33 | */ | ||
34 | #define __O_SYNC 0x4000 | ||
35 | #define O_SYNC (__O_SYNC|O_DSYNC) | ||
21 | #define O_DIRECT 0x8000 /* direct disk access hint */ | 36 | #define O_DIRECT 0x8000 /* direct disk access hint */ |
22 | 37 | ||
23 | #define F_GETLK 14 | 38 | #define F_GETLK 14 |
diff --git a/arch/mips/include/asm/fpu.h b/arch/mips/include/asm/fpu.h index 8a3ef247659a..7fcef8ef3fab 100644 --- a/arch/mips/include/asm/fpu.h +++ b/arch/mips/include/asm/fpu.h | |||
@@ -28,15 +28,7 @@ | |||
28 | struct sigcontext; | 28 | struct sigcontext; |
29 | struct sigcontext32; | 29 | struct sigcontext32; |
30 | 30 | ||
31 | extern asmlinkage int (*save_fp_context)(struct sigcontext __user *sc); | ||
32 | extern asmlinkage int (*restore_fp_context)(struct sigcontext __user *sc); | ||
33 | |||
34 | extern asmlinkage int (*save_fp_context32)(struct sigcontext32 __user *sc); | ||
35 | extern asmlinkage int (*restore_fp_context32)(struct sigcontext32 __user *sc); | ||
36 | |||
37 | extern void fpu_emulator_init_fpu(void); | 31 | extern void fpu_emulator_init_fpu(void); |
38 | extern int fpu_emulator_save_context(struct sigcontext __user *sc); | ||
39 | extern int fpu_emulator_restore_context(struct sigcontext __user *sc); | ||
40 | extern void _init_fpu(void); | 32 | extern void _init_fpu(void); |
41 | extern void _save_fp(struct task_struct *); | 33 | extern void _save_fp(struct task_struct *); |
42 | extern void _restore_fp(struct task_struct *); | 34 | extern void _restore_fp(struct task_struct *); |
diff --git a/arch/mips/include/asm/fpu_emulator.h b/arch/mips/include/asm/fpu_emulator.h index e5189572956c..3b4092705567 100644 --- a/arch/mips/include/asm/fpu_emulator.h +++ b/arch/mips/include/asm/fpu_emulator.h | |||
@@ -25,17 +25,31 @@ | |||
25 | 25 | ||
26 | #include <asm/break.h> | 26 | #include <asm/break.h> |
27 | #include <asm/inst.h> | 27 | #include <asm/inst.h> |
28 | #include <asm/local.h> | ||
29 | |||
30 | #ifdef CONFIG_DEBUG_FS | ||
28 | 31 | ||
29 | struct mips_fpu_emulator_stats { | 32 | struct mips_fpu_emulator_stats { |
30 | unsigned int emulated; | 33 | local_t emulated; |
31 | unsigned int loads; | 34 | local_t loads; |
32 | unsigned int stores; | 35 | local_t stores; |
33 | unsigned int cp1ops; | 36 | local_t cp1ops; |
34 | unsigned int cp1xops; | 37 | local_t cp1xops; |
35 | unsigned int errors; | 38 | local_t errors; |
36 | }; | 39 | }; |
37 | 40 | ||
38 | extern struct mips_fpu_emulator_stats fpuemustats; | 41 | DECLARE_PER_CPU(struct mips_fpu_emulator_stats, fpuemustats); |
42 | |||
43 | #define MIPS_FPU_EMU_INC_STATS(M) \ | ||
44 | do { \ | ||
45 | preempt_disable(); \ | ||
46 | __local_inc(&__get_cpu_var(fpuemustats).M); \ | ||
47 | preempt_enable(); \ | ||
48 | } while (0) | ||
49 | |||
50 | #else | ||
51 | #define MIPS_FPU_EMU_INC_STATS(M) do { } while (0) | ||
52 | #endif /* CONFIG_DEBUG_FS */ | ||
39 | 53 | ||
40 | extern int mips_dsemul(struct pt_regs *regs, mips_instruction ir, | 54 | extern int mips_dsemul(struct pt_regs *regs, mips_instruction ir, |
41 | unsigned long cpc); | 55 | unsigned long cpc); |
diff --git a/arch/mips/include/asm/ftrace.h b/arch/mips/include/asm/ftrace.h index 40a8c178f10d..ce35c9af0c28 100644 --- a/arch/mips/include/asm/ftrace.h +++ b/arch/mips/include/asm/ftrace.h | |||
@@ -1 +1,90 @@ | |||
1 | /* empty */ | 1 | /* |
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive for | ||
4 | * more details. | ||
5 | * | ||
6 | * Copyright (C) 2009 DSLab, Lanzhou University, China | ||
7 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
8 | */ | ||
9 | |||
10 | #ifndef _ASM_MIPS_FTRACE_H | ||
11 | #define _ASM_MIPS_FTRACE_H | ||
12 | |||
13 | #ifdef CONFIG_FUNCTION_TRACER | ||
14 | |||
15 | #define MCOUNT_ADDR ((unsigned long)(_mcount)) | ||
16 | #define MCOUNT_INSN_SIZE 4 /* sizeof mcount call */ | ||
17 | |||
18 | #ifndef __ASSEMBLY__ | ||
19 | extern void _mcount(void); | ||
20 | #define mcount _mcount | ||
21 | |||
22 | #define safe_load(load, src, dst, error) \ | ||
23 | do { \ | ||
24 | asm volatile ( \ | ||
25 | "1: " load " %[" STR(dst) "], 0(%[" STR(src) "])\n"\ | ||
26 | " li %[" STR(error) "], 0\n" \ | ||
27 | "2:\n" \ | ||
28 | \ | ||
29 | ".section .fixup, \"ax\"\n" \ | ||
30 | "3: li %[" STR(error) "], 1\n" \ | ||
31 | " j 2b\n" \ | ||
32 | ".previous\n" \ | ||
33 | \ | ||
34 | ".section\t__ex_table,\"a\"\n\t" \ | ||
35 | STR(PTR) "\t1b, 3b\n\t" \ | ||
36 | ".previous\n" \ | ||
37 | \ | ||
38 | : [dst] "=&r" (dst), [error] "=r" (error)\ | ||
39 | : [src] "r" (src) \ | ||
40 | : "memory" \ | ||
41 | ); \ | ||
42 | } while (0) | ||
43 | |||
44 | #define safe_store(store, src, dst, error) \ | ||
45 | do { \ | ||
46 | asm volatile ( \ | ||
47 | "1: " store " %[" STR(src) "], 0(%[" STR(dst) "])\n"\ | ||
48 | " li %[" STR(error) "], 0\n" \ | ||
49 | "2:\n" \ | ||
50 | \ | ||
51 | ".section .fixup, \"ax\"\n" \ | ||
52 | "3: li %[" STR(error) "], 1\n" \ | ||
53 | " j 2b\n" \ | ||
54 | ".previous\n" \ | ||
55 | \ | ||
56 | ".section\t__ex_table,\"a\"\n\t"\ | ||
57 | STR(PTR) "\t1b, 3b\n\t" \ | ||
58 | ".previous\n" \ | ||
59 | \ | ||
60 | : [error] "=r" (error) \ | ||
61 | : [dst] "r" (dst), [src] "r" (src)\ | ||
62 | : "memory" \ | ||
63 | ); \ | ||
64 | } while (0) | ||
65 | |||
66 | #define safe_load_code(dst, src, error) \ | ||
67 | safe_load(STR(lw), src, dst, error) | ||
68 | #define safe_store_code(src, dst, error) \ | ||
69 | safe_store(STR(sw), src, dst, error) | ||
70 | |||
71 | #define safe_load_stack(dst, src, error) \ | ||
72 | safe_load(STR(PTR_L), src, dst, error) | ||
73 | |||
74 | #define safe_store_stack(src, dst, error) \ | ||
75 | safe_store(STR(PTR_S), src, dst, error) | ||
76 | |||
77 | |||
78 | #ifdef CONFIG_DYNAMIC_FTRACE | ||
79 | static inline unsigned long ftrace_call_adjust(unsigned long addr) | ||
80 | { | ||
81 | return addr; | ||
82 | } | ||
83 | |||
84 | struct dyn_arch_ftrace { | ||
85 | }; | ||
86 | |||
87 | #endif /* CONFIG_DYNAMIC_FTRACE */ | ||
88 | #endif /* __ASSEMBLY__ */ | ||
89 | #endif /* CONFIG_FUNCTION_TRACER */ | ||
90 | #endif /* _ASM_MIPS_FTRACE_H */ | ||
diff --git a/arch/mips/include/asm/i8259.h b/arch/mips/include/asm/i8259.h index 8572a2d90484..c7e278447c0a 100644 --- a/arch/mips/include/asm/i8259.h +++ b/arch/mips/include/asm/i8259.h | |||
@@ -35,7 +35,7 @@ | |||
35 | #define SLAVE_ICW4_DEFAULT 0x01 | 35 | #define SLAVE_ICW4_DEFAULT 0x01 |
36 | #define PIC_ICW4_AEOI 2 | 36 | #define PIC_ICW4_AEOI 2 |
37 | 37 | ||
38 | extern spinlock_t i8259A_lock; | 38 | extern raw_spinlock_t i8259A_lock; |
39 | 39 | ||
40 | extern int i8259A_irq_pending(unsigned int irq); | 40 | extern int i8259A_irq_pending(unsigned int irq); |
41 | extern void make_8259A_irq(unsigned int irq); | 41 | extern void make_8259A_irq(unsigned int irq); |
@@ -51,7 +51,7 @@ static inline int i8259_irq(void) | |||
51 | { | 51 | { |
52 | int irq; | 52 | int irq; |
53 | 53 | ||
54 | spin_lock(&i8259A_lock); | 54 | raw_spin_lock(&i8259A_lock); |
55 | 55 | ||
56 | /* Perform an interrupt acknowledge cycle on controller 1. */ | 56 | /* Perform an interrupt acknowledge cycle on controller 1. */ |
57 | outb(0x0C, PIC_MASTER_CMD); /* prepare for poll */ | 57 | outb(0x0C, PIC_MASTER_CMD); /* prepare for poll */ |
@@ -78,7 +78,7 @@ static inline int i8259_irq(void) | |||
78 | irq = -1; | 78 | irq = -1; |
79 | } | 79 | } |
80 | 80 | ||
81 | spin_unlock(&i8259A_lock); | 81 | raw_spin_unlock(&i8259A_lock); |
82 | 82 | ||
83 | return likely(irq >= 0) ? irq + I8259A_IRQ_BASE : irq; | 83 | return likely(irq >= 0) ? irq + I8259A_IRQ_BASE : irq; |
84 | } | 84 | } |
diff --git a/arch/mips/include/asm/io.h b/arch/mips/include/asm/io.h index 436878e4e063..c98bf514ec7d 100644 --- a/arch/mips/include/asm/io.h +++ b/arch/mips/include/asm/io.h | |||
@@ -447,6 +447,24 @@ __BUILDIO(q, u64) | |||
447 | #define readl_relaxed readl | 447 | #define readl_relaxed readl |
448 | #define readq_relaxed readq | 448 | #define readq_relaxed readq |
449 | 449 | ||
450 | #define readb_be(addr) \ | ||
451 | __raw_readb((__force unsigned *)(addr)) | ||
452 | #define readw_be(addr) \ | ||
453 | be16_to_cpu(__raw_readw((__force unsigned *)(addr))) | ||
454 | #define readl_be(addr) \ | ||
455 | be32_to_cpu(__raw_readl((__force unsigned *)(addr))) | ||
456 | #define readq_be(addr) \ | ||
457 | be64_to_cpu(__raw_readq((__force unsigned *)(addr))) | ||
458 | |||
459 | #define writeb_be(val, addr) \ | ||
460 | __raw_writeb((val), (__force unsigned *)(addr)) | ||
461 | #define writew_be(val, addr) \ | ||
462 | __raw_writew(cpu_to_be16((val)), (__force unsigned *)(addr)) | ||
463 | #define writel_be(val, addr) \ | ||
464 | __raw_writel(cpu_to_be32((val)), (__force unsigned *)(addr)) | ||
465 | #define writeq_be(val, addr) \ | ||
466 | __raw_writeq(cpu_to_be64((val)), (__force unsigned *)(addr)) | ||
467 | |||
450 | /* | 468 | /* |
451 | * Some code tests for these symbols | 469 | * Some code tests for these symbols |
452 | */ | 470 | */ |
diff --git a/arch/mips/include/asm/irq.h b/arch/mips/include/asm/irq.h index 09b08d05ff72..dea4aed6478f 100644 --- a/arch/mips/include/asm/irq.h +++ b/arch/mips/include/asm/irq.h | |||
@@ -113,36 +113,11 @@ do { \ | |||
113 | 113 | ||
114 | #endif | 114 | #endif |
115 | 115 | ||
116 | /* | 116 | extern void do_IRQ(unsigned int irq); |
117 | * do_IRQ handles all normal device IRQ's (the special | ||
118 | * SMP cross-CPU interrupts have their own specific | ||
119 | * handlers). | ||
120 | * | ||
121 | * Ideally there should be away to get this into kernel/irq/handle.c to | ||
122 | * avoid the overhead of a call for just a tiny function ... | ||
123 | */ | ||
124 | #define do_IRQ(irq) \ | ||
125 | do { \ | ||
126 | irq_enter(); \ | ||
127 | __DO_IRQ_SMTC_HOOK(irq); \ | ||
128 | generic_handle_irq(irq); \ | ||
129 | irq_exit(); \ | ||
130 | } while (0) | ||
131 | 117 | ||
132 | #ifdef CONFIG_MIPS_MT_SMTC_IRQAFF | 118 | #ifdef CONFIG_MIPS_MT_SMTC_IRQAFF |
133 | /* | ||
134 | * To avoid inefficient and in some cases pathological re-checking of | ||
135 | * IRQ affinity, we have this variant that skips the affinity check. | ||
136 | */ | ||
137 | |||
138 | 119 | ||
139 | #define do_IRQ_no_affinity(irq) \ | 120 | extern void do_IRQ_no_affinity(unsigned int irq); |
140 | do { \ | ||
141 | irq_enter(); \ | ||
142 | __NO_AFFINITY_IRQ_SMTC_HOOK(irq); \ | ||
143 | generic_handle_irq(irq); \ | ||
144 | irq_exit(); \ | ||
145 | } while (0) | ||
146 | 121 | ||
147 | #endif /* CONFIG_MIPS_MT_SMTC_IRQAFF */ | 122 | #endif /* CONFIG_MIPS_MT_SMTC_IRQAFF */ |
148 | 123 | ||
@@ -160,6 +135,7 @@ extern void free_irqno(unsigned int irq); | |||
160 | #define CP0_LEGACY_COMPARE_IRQ 7 | 135 | #define CP0_LEGACY_COMPARE_IRQ 7 |
161 | 136 | ||
162 | extern int cp0_compare_irq; | 137 | extern int cp0_compare_irq; |
138 | extern int cp0_compare_irq_shift; | ||
163 | extern int cp0_perfcount_irq; | 139 | extern int cp0_perfcount_irq; |
164 | 140 | ||
165 | #endif /* _ASM_IRQ_H */ | 141 | #endif /* _ASM_IRQ_H */ |
diff --git a/arch/mips/include/asm/local.h b/arch/mips/include/asm/local.h index 361f4f16c30c..bdcdef02d147 100644 --- a/arch/mips/include/asm/local.h +++ b/arch/mips/include/asm/local.h | |||
@@ -193,29 +193,4 @@ static __inline__ long local_sub_return(long i, local_t * l) | |||
193 | #define __local_add(i, l) ((l)->a.counter+=(i)) | 193 | #define __local_add(i, l) ((l)->a.counter+=(i)) |
194 | #define __local_sub(i, l) ((l)->a.counter-=(i)) | 194 | #define __local_sub(i, l) ((l)->a.counter-=(i)) |
195 | 195 | ||
196 | /* Need to disable preemption for the cpu local counters otherwise we could | ||
197 | still access a variable of a previous CPU in a non atomic way. */ | ||
198 | #define cpu_local_wrap_v(l) \ | ||
199 | ({ local_t res__; \ | ||
200 | preempt_disable(); \ | ||
201 | res__ = (l); \ | ||
202 | preempt_enable(); \ | ||
203 | res__; }) | ||
204 | #define cpu_local_wrap(l) \ | ||
205 | ({ preempt_disable(); \ | ||
206 | l; \ | ||
207 | preempt_enable(); }) \ | ||
208 | |||
209 | #define cpu_local_read(l) cpu_local_wrap_v(local_read(&__get_cpu_var(l))) | ||
210 | #define cpu_local_set(l, i) cpu_local_wrap(local_set(&__get_cpu_var(l), (i))) | ||
211 | #define cpu_local_inc(l) cpu_local_wrap(local_inc(&__get_cpu_var(l))) | ||
212 | #define cpu_local_dec(l) cpu_local_wrap(local_dec(&__get_cpu_var(l))) | ||
213 | #define cpu_local_add(i, l) cpu_local_wrap(local_add((i), &__get_cpu_var(l))) | ||
214 | #define cpu_local_sub(i, l) cpu_local_wrap(local_sub((i), &__get_cpu_var(l))) | ||
215 | |||
216 | #define __cpu_local_inc(l) cpu_local_inc(l) | ||
217 | #define __cpu_local_dec(l) cpu_local_dec(l) | ||
218 | #define __cpu_local_add(i, l) cpu_local_add((i), (l)) | ||
219 | #define __cpu_local_sub(i, l) cpu_local_sub((i), (l)) | ||
220 | |||
221 | #endif /* _ARCH_MIPS_LOCAL_H */ | 196 | #endif /* _ARCH_MIPS_LOCAL_H */ |
diff --git a/arch/mips/include/asm/mach-ar7/ar7.h b/arch/mips/include/asm/mach-ar7/ar7.h index 21cbbc706448..f1cf38943497 100644 --- a/arch/mips/include/asm/mach-ar7/ar7.h +++ b/arch/mips/include/asm/mach-ar7/ar7.h | |||
@@ -105,26 +105,9 @@ static inline u8 ar7_chip_rev(void) | |||
105 | return (readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x14)) >> 16) & 0xff; | 105 | return (readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x14)) >> 16) & 0xff; |
106 | } | 106 | } |
107 | 107 | ||
108 | static inline int ar7_cpu_freq(void) | 108 | struct clk { |
109 | { | 109 | unsigned int rate; |
110 | return ar7_cpu_clock; | 110 | }; |
111 | } | ||
112 | |||
113 | static inline int ar7_bus_freq(void) | ||
114 | { | ||
115 | return ar7_bus_clock; | ||
116 | } | ||
117 | |||
118 | static inline int ar7_vbus_freq(void) | ||
119 | { | ||
120 | return ar7_bus_clock / 2; | ||
121 | } | ||
122 | #define ar7_cpmac_freq ar7_vbus_freq | ||
123 | |||
124 | static inline int ar7_dsp_freq(void) | ||
125 | { | ||
126 | return ar7_dsp_clock; | ||
127 | } | ||
128 | 111 | ||
129 | static inline int ar7_has_high_cpmac(void) | 112 | static inline int ar7_has_high_cpmac(void) |
130 | { | 113 | { |
diff --git a/arch/mips/include/asm/mach-ar7/gpio.h b/arch/mips/include/asm/mach-ar7/gpio.h index cbe9c4f126df..73f9b162c970 100644 --- a/arch/mips/include/asm/mach-ar7/gpio.h +++ b/arch/mips/include/asm/mach-ar7/gpio.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2007 Florian Fainelli <florian@openwrt.org> | 2 | * Copyright (C) 2007-2009 Florian Fainelli <florian@openwrt.org> |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify | 4 | * This program is free software; you can redistribute it and/or modify |
5 | * it under the terms of the GNU General Public License as published by | 5 | * it under the terms of the GNU General Public License as published by |
@@ -22,88 +22,18 @@ | |||
22 | #include <asm/mach-ar7/ar7.h> | 22 | #include <asm/mach-ar7/ar7.h> |
23 | 23 | ||
24 | #define AR7_GPIO_MAX 32 | 24 | #define AR7_GPIO_MAX 32 |
25 | #define NR_BUILTIN_GPIO AR7_GPIO_MAX | ||
25 | 26 | ||
26 | extern int gpio_request(unsigned gpio, const char *label); | 27 | #define gpio_to_irq(gpio) NULL |
27 | extern void gpio_free(unsigned gpio); | ||
28 | 28 | ||
29 | /* Common GPIO layer */ | 29 | #define gpio_get_value __gpio_get_value |
30 | static inline int gpio_get_value(unsigned gpio) | 30 | #define gpio_set_value __gpio_set_value |
31 | { | ||
32 | void __iomem *gpio_in = | ||
33 | (void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_INPUT); | ||
34 | 31 | ||
35 | return readl(gpio_in) & (1 << gpio); | 32 | #define gpio_cansleep __gpio_cansleep |
36 | } | ||
37 | |||
38 | static inline void gpio_set_value(unsigned gpio, int value) | ||
39 | { | ||
40 | void __iomem *gpio_out = | ||
41 | (void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_OUTPUT); | ||
42 | unsigned tmp; | ||
43 | |||
44 | tmp = readl(gpio_out) & ~(1 << gpio); | ||
45 | if (value) | ||
46 | tmp |= 1 << gpio; | ||
47 | writel(tmp, gpio_out); | ||
48 | } | ||
49 | |||
50 | static inline int gpio_direction_input(unsigned gpio) | ||
51 | { | ||
52 | void __iomem *gpio_dir = | ||
53 | (void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_DIR); | ||
54 | |||
55 | if (gpio >= AR7_GPIO_MAX) | ||
56 | return -EINVAL; | ||
57 | |||
58 | writel(readl(gpio_dir) | (1 << gpio), gpio_dir); | ||
59 | |||
60 | return 0; | ||
61 | } | ||
62 | |||
63 | static inline int gpio_direction_output(unsigned gpio, int value) | ||
64 | { | ||
65 | void __iomem *gpio_dir = | ||
66 | (void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_DIR); | ||
67 | |||
68 | if (gpio >= AR7_GPIO_MAX) | ||
69 | return -EINVAL; | ||
70 | |||
71 | gpio_set_value(gpio, value); | ||
72 | writel(readl(gpio_dir) & ~(1 << gpio), gpio_dir); | ||
73 | |||
74 | return 0; | ||
75 | } | ||
76 | |||
77 | static inline int gpio_to_irq(unsigned gpio) | ||
78 | { | ||
79 | return -EINVAL; | ||
80 | } | ||
81 | |||
82 | static inline int irq_to_gpio(unsigned irq) | ||
83 | { | ||
84 | return -EINVAL; | ||
85 | } | ||
86 | 33 | ||
87 | /* Board specific GPIO functions */ | 34 | /* Board specific GPIO functions */ |
88 | static inline int ar7_gpio_enable(unsigned gpio) | 35 | int ar7_gpio_enable(unsigned gpio); |
89 | { | 36 | int ar7_gpio_disable(unsigned gpio); |
90 | void __iomem *gpio_en = | ||
91 | (void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_ENABLE); | ||
92 | |||
93 | writel(readl(gpio_en) | (1 << gpio), gpio_en); | ||
94 | |||
95 | return 0; | ||
96 | } | ||
97 | |||
98 | static inline int ar7_gpio_disable(unsigned gpio) | ||
99 | { | ||
100 | void __iomem *gpio_en = | ||
101 | (void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_ENABLE); | ||
102 | |||
103 | writel(readl(gpio_en) & ~(1 << gpio), gpio_en); | ||
104 | |||
105 | return 0; | ||
106 | } | ||
107 | 37 | ||
108 | #include <asm-generic/gpio.h> | 38 | #include <asm-generic/gpio.h> |
109 | 39 | ||
diff --git a/arch/mips/include/asm/mach-au1x00/au1000.h b/arch/mips/include/asm/mach-au1x00/au1000.h index 854e95f1b07c..ae07423e6e82 100644 --- a/arch/mips/include/asm/mach-au1x00/au1000.h +++ b/arch/mips/include/asm/mach-au1x00/au1000.h | |||
@@ -130,6 +130,56 @@ static inline int au1xxx_cpu_needs_config_od(void) | |||
130 | return 0; | 130 | return 0; |
131 | } | 131 | } |
132 | 132 | ||
133 | #define ALCHEMY_CPU_UNKNOWN -1 | ||
134 | #define ALCHEMY_CPU_AU1000 0 | ||
135 | #define ALCHEMY_CPU_AU1500 1 | ||
136 | #define ALCHEMY_CPU_AU1100 2 | ||
137 | #define ALCHEMY_CPU_AU1550 3 | ||
138 | #define ALCHEMY_CPU_AU1200 4 | ||
139 | |||
140 | static inline int alchemy_get_cputype(void) | ||
141 | { | ||
142 | switch (read_c0_prid() & 0xffff0000) { | ||
143 | case 0x00030000: | ||
144 | return ALCHEMY_CPU_AU1000; | ||
145 | break; | ||
146 | case 0x01030000: | ||
147 | return ALCHEMY_CPU_AU1500; | ||
148 | break; | ||
149 | case 0x02030000: | ||
150 | return ALCHEMY_CPU_AU1100; | ||
151 | break; | ||
152 | case 0x03030000: | ||
153 | return ALCHEMY_CPU_AU1550; | ||
154 | break; | ||
155 | case 0x04030000: | ||
156 | case 0x05030000: | ||
157 | return ALCHEMY_CPU_AU1200; | ||
158 | break; | ||
159 | } | ||
160 | |||
161 | return ALCHEMY_CPU_UNKNOWN; | ||
162 | } | ||
163 | |||
164 | static inline void alchemy_uart_putchar(u32 uart_phys, u8 c) | ||
165 | { | ||
166 | void __iomem *base = (void __iomem *)KSEG1ADDR(uart_phys); | ||
167 | int timeout, i; | ||
168 | |||
169 | /* check LSR TX_EMPTY bit */ | ||
170 | timeout = 0xffffff; | ||
171 | do { | ||
172 | if (__raw_readl(base + 0x1c) & 0x20) | ||
173 | break; | ||
174 | /* slow down */ | ||
175 | for (i = 10000; i; i--) | ||
176 | asm volatile ("nop"); | ||
177 | } while (--timeout); | ||
178 | |||
179 | __raw_writel(c, base + 0x04); /* tx */ | ||
180 | wmb(); | ||
181 | } | ||
182 | |||
133 | /* arch/mips/au1000/common/clocks.c */ | 183 | /* arch/mips/au1000/common/clocks.c */ |
134 | extern void set_au1x00_speed(unsigned int new_freq); | 184 | extern void set_au1x00_speed(unsigned int new_freq); |
135 | extern unsigned int get_au1x00_speed(void); | 185 | extern unsigned int get_au1x00_speed(void); |
@@ -143,20 +193,332 @@ void au_sleep(void); | |||
143 | void save_au1xxx_intctl(void); | 193 | void save_au1xxx_intctl(void); |
144 | void restore_au1xxx_intctl(void); | 194 | void restore_au1xxx_intctl(void); |
145 | 195 | ||
146 | /* | 196 | |
147 | * Every board describes its IRQ mapping with this table. | 197 | /* SOC Interrupt numbers */ |
148 | */ | 198 | |
149 | struct au1xxx_irqmap { | 199 | #define AU1000_INTC0_INT_BASE (MIPS_CPU_IRQ_BASE + 8) |
150 | int im_irq; | 200 | #define AU1000_INTC0_INT_LAST (AU1000_INTC0_INT_BASE + 31) |
151 | int im_type; | 201 | #define AU1000_INTC1_INT_BASE (AU1000_INTC0_INT_LAST + 1) |
152 | int im_request; | 202 | #define AU1000_INTC1_INT_LAST (AU1000_INTC1_INT_BASE + 31) |
203 | #define AU1000_MAX_INTR AU1000_INTC1_INT_LAST | ||
204 | |||
205 | enum soc_au1000_ints { | ||
206 | AU1000_FIRST_INT = AU1000_INTC0_INT_BASE, | ||
207 | AU1000_UART0_INT = AU1000_FIRST_INT, | ||
208 | AU1000_UART1_INT, | ||
209 | AU1000_UART2_INT, | ||
210 | AU1000_UART3_INT, | ||
211 | AU1000_SSI0_INT, | ||
212 | AU1000_SSI1_INT, | ||
213 | AU1000_DMA_INT_BASE, | ||
214 | |||
215 | AU1000_TOY_INT = AU1000_FIRST_INT + 14, | ||
216 | AU1000_TOY_MATCH0_INT, | ||
217 | AU1000_TOY_MATCH1_INT, | ||
218 | AU1000_TOY_MATCH2_INT, | ||
219 | AU1000_RTC_INT, | ||
220 | AU1000_RTC_MATCH0_INT, | ||
221 | AU1000_RTC_MATCH1_INT, | ||
222 | AU1000_RTC_MATCH2_INT, | ||
223 | AU1000_IRDA_TX_INT, | ||
224 | AU1000_IRDA_RX_INT, | ||
225 | AU1000_USB_DEV_REQ_INT, | ||
226 | AU1000_USB_DEV_SUS_INT, | ||
227 | AU1000_USB_HOST_INT, | ||
228 | AU1000_ACSYNC_INT, | ||
229 | AU1000_MAC0_DMA_INT, | ||
230 | AU1000_MAC1_DMA_INT, | ||
231 | AU1000_I2S_UO_INT, | ||
232 | AU1000_AC97C_INT, | ||
233 | AU1000_GPIO0_INT, | ||
234 | AU1000_GPIO1_INT, | ||
235 | AU1000_GPIO2_INT, | ||
236 | AU1000_GPIO3_INT, | ||
237 | AU1000_GPIO4_INT, | ||
238 | AU1000_GPIO5_INT, | ||
239 | AU1000_GPIO6_INT, | ||
240 | AU1000_GPIO7_INT, | ||
241 | AU1000_GPIO8_INT, | ||
242 | AU1000_GPIO9_INT, | ||
243 | AU1000_GPIO10_INT, | ||
244 | AU1000_GPIO11_INT, | ||
245 | AU1000_GPIO12_INT, | ||
246 | AU1000_GPIO13_INT, | ||
247 | AU1000_GPIO14_INT, | ||
248 | AU1000_GPIO15_INT, | ||
249 | AU1000_GPIO16_INT, | ||
250 | AU1000_GPIO17_INT, | ||
251 | AU1000_GPIO18_INT, | ||
252 | AU1000_GPIO19_INT, | ||
253 | AU1000_GPIO20_INT, | ||
254 | AU1000_GPIO21_INT, | ||
255 | AU1000_GPIO22_INT, | ||
256 | AU1000_GPIO23_INT, | ||
257 | AU1000_GPIO24_INT, | ||
258 | AU1000_GPIO25_INT, | ||
259 | AU1000_GPIO26_INT, | ||
260 | AU1000_GPIO27_INT, | ||
261 | AU1000_GPIO28_INT, | ||
262 | AU1000_GPIO29_INT, | ||
263 | AU1000_GPIO30_INT, | ||
264 | AU1000_GPIO31_INT, | ||
153 | }; | 265 | }; |
154 | 266 | ||
155 | /* core calls this function to let boards initialize other IRQ sources */ | 267 | enum soc_au1100_ints { |
156 | void board_init_irq(void); | 268 | AU1100_FIRST_INT = AU1000_INTC0_INT_BASE, |
269 | AU1100_UART0_INT = AU1100_FIRST_INT, | ||
270 | AU1100_UART1_INT, | ||
271 | AU1100_SD_INT, | ||
272 | AU1100_UART3_INT, | ||
273 | AU1100_SSI0_INT, | ||
274 | AU1100_SSI1_INT, | ||
275 | AU1100_DMA_INT_BASE, | ||
276 | |||
277 | AU1100_TOY_INT = AU1100_FIRST_INT + 14, | ||
278 | AU1100_TOY_MATCH0_INT, | ||
279 | AU1100_TOY_MATCH1_INT, | ||
280 | AU1100_TOY_MATCH2_INT, | ||
281 | AU1100_RTC_INT, | ||
282 | AU1100_RTC_MATCH0_INT, | ||
283 | AU1100_RTC_MATCH1_INT, | ||
284 | AU1100_RTC_MATCH2_INT, | ||
285 | AU1100_IRDA_TX_INT, | ||
286 | AU1100_IRDA_RX_INT, | ||
287 | AU1100_USB_DEV_REQ_INT, | ||
288 | AU1100_USB_DEV_SUS_INT, | ||
289 | AU1100_USB_HOST_INT, | ||
290 | AU1100_ACSYNC_INT, | ||
291 | AU1100_MAC0_DMA_INT, | ||
292 | AU1100_GPIO208_215_INT, | ||
293 | AU1100_LCD_INT, | ||
294 | AU1100_AC97C_INT, | ||
295 | AU1100_GPIO0_INT, | ||
296 | AU1100_GPIO1_INT, | ||
297 | AU1100_GPIO2_INT, | ||
298 | AU1100_GPIO3_INT, | ||
299 | AU1100_GPIO4_INT, | ||
300 | AU1100_GPIO5_INT, | ||
301 | AU1100_GPIO6_INT, | ||
302 | AU1100_GPIO7_INT, | ||
303 | AU1100_GPIO8_INT, | ||
304 | AU1100_GPIO9_INT, | ||
305 | AU1100_GPIO10_INT, | ||
306 | AU1100_GPIO11_INT, | ||
307 | AU1100_GPIO12_INT, | ||
308 | AU1100_GPIO13_INT, | ||
309 | AU1100_GPIO14_INT, | ||
310 | AU1100_GPIO15_INT, | ||
311 | AU1100_GPIO16_INT, | ||
312 | AU1100_GPIO17_INT, | ||
313 | AU1100_GPIO18_INT, | ||
314 | AU1100_GPIO19_INT, | ||
315 | AU1100_GPIO20_INT, | ||
316 | AU1100_GPIO21_INT, | ||
317 | AU1100_GPIO22_INT, | ||
318 | AU1100_GPIO23_INT, | ||
319 | AU1100_GPIO24_INT, | ||
320 | AU1100_GPIO25_INT, | ||
321 | AU1100_GPIO26_INT, | ||
322 | AU1100_GPIO27_INT, | ||
323 | AU1100_GPIO28_INT, | ||
324 | AU1100_GPIO29_INT, | ||
325 | AU1100_GPIO30_INT, | ||
326 | AU1100_GPIO31_INT, | ||
327 | }; | ||
157 | 328 | ||
158 | /* boards call this to register additional (GPIO) interrupts */ | 329 | enum soc_au1500_ints { |
159 | void au1xxx_setup_irqmap(struct au1xxx_irqmap *map, int count); | 330 | AU1500_FIRST_INT = AU1000_INTC0_INT_BASE, |
331 | AU1500_UART0_INT = AU1500_FIRST_INT, | ||
332 | AU1500_PCI_INTA, | ||
333 | AU1500_PCI_INTB, | ||
334 | AU1500_UART3_INT, | ||
335 | AU1500_PCI_INTC, | ||
336 | AU1500_PCI_INTD, | ||
337 | AU1500_DMA_INT_BASE, | ||
338 | |||
339 | AU1500_TOY_INT = AU1500_FIRST_INT + 14, | ||
340 | AU1500_TOY_MATCH0_INT, | ||
341 | AU1500_TOY_MATCH1_INT, | ||
342 | AU1500_TOY_MATCH2_INT, | ||
343 | AU1500_RTC_INT, | ||
344 | AU1500_RTC_MATCH0_INT, | ||
345 | AU1500_RTC_MATCH1_INT, | ||
346 | AU1500_RTC_MATCH2_INT, | ||
347 | AU1500_PCI_ERR_INT, | ||
348 | AU1500_RESERVED_INT, | ||
349 | AU1500_USB_DEV_REQ_INT, | ||
350 | AU1500_USB_DEV_SUS_INT, | ||
351 | AU1500_USB_HOST_INT, | ||
352 | AU1500_ACSYNC_INT, | ||
353 | AU1500_MAC0_DMA_INT, | ||
354 | AU1500_MAC1_DMA_INT, | ||
355 | AU1500_AC97C_INT = AU1500_FIRST_INT + 31, | ||
356 | AU1500_GPIO0_INT, | ||
357 | AU1500_GPIO1_INT, | ||
358 | AU1500_GPIO2_INT, | ||
359 | AU1500_GPIO3_INT, | ||
360 | AU1500_GPIO4_INT, | ||
361 | AU1500_GPIO5_INT, | ||
362 | AU1500_GPIO6_INT, | ||
363 | AU1500_GPIO7_INT, | ||
364 | AU1500_GPIO8_INT, | ||
365 | AU1500_GPIO9_INT, | ||
366 | AU1500_GPIO10_INT, | ||
367 | AU1500_GPIO11_INT, | ||
368 | AU1500_GPIO12_INT, | ||
369 | AU1500_GPIO13_INT, | ||
370 | AU1500_GPIO14_INT, | ||
371 | AU1500_GPIO15_INT, | ||
372 | AU1500_GPIO200_INT, | ||
373 | AU1500_GPIO201_INT, | ||
374 | AU1500_GPIO202_INT, | ||
375 | AU1500_GPIO203_INT, | ||
376 | AU1500_GPIO20_INT, | ||
377 | AU1500_GPIO204_INT, | ||
378 | AU1500_GPIO205_INT, | ||
379 | AU1500_GPIO23_INT, | ||
380 | AU1500_GPIO24_INT, | ||
381 | AU1500_GPIO25_INT, | ||
382 | AU1500_GPIO26_INT, | ||
383 | AU1500_GPIO27_INT, | ||
384 | AU1500_GPIO28_INT, | ||
385 | AU1500_GPIO206_INT, | ||
386 | AU1500_GPIO207_INT, | ||
387 | AU1500_GPIO208_215_INT, | ||
388 | }; | ||
389 | |||
390 | enum soc_au1550_ints { | ||
391 | AU1550_FIRST_INT = AU1000_INTC0_INT_BASE, | ||
392 | AU1550_UART0_INT = AU1550_FIRST_INT, | ||
393 | AU1550_PCI_INTA, | ||
394 | AU1550_PCI_INTB, | ||
395 | AU1550_DDMA_INT, | ||
396 | AU1550_CRYPTO_INT, | ||
397 | AU1550_PCI_INTC, | ||
398 | AU1550_PCI_INTD, | ||
399 | AU1550_PCI_RST_INT, | ||
400 | AU1550_UART1_INT, | ||
401 | AU1550_UART3_INT, | ||
402 | AU1550_PSC0_INT, | ||
403 | AU1550_PSC1_INT, | ||
404 | AU1550_PSC2_INT, | ||
405 | AU1550_PSC3_INT, | ||
406 | AU1550_TOY_INT, | ||
407 | AU1550_TOY_MATCH0_INT, | ||
408 | AU1550_TOY_MATCH1_INT, | ||
409 | AU1550_TOY_MATCH2_INT, | ||
410 | AU1550_RTC_INT, | ||
411 | AU1550_RTC_MATCH0_INT, | ||
412 | AU1550_RTC_MATCH1_INT, | ||
413 | AU1550_RTC_MATCH2_INT, | ||
414 | |||
415 | AU1550_NAND_INT = AU1550_FIRST_INT + 23, | ||
416 | AU1550_USB_DEV_REQ_INT, | ||
417 | AU1550_USB_DEV_SUS_INT, | ||
418 | AU1550_USB_HOST_INT, | ||
419 | AU1550_MAC0_DMA_INT, | ||
420 | AU1550_MAC1_DMA_INT, | ||
421 | AU1550_GPIO0_INT = AU1550_FIRST_INT + 32, | ||
422 | AU1550_GPIO1_INT, | ||
423 | AU1550_GPIO2_INT, | ||
424 | AU1550_GPIO3_INT, | ||
425 | AU1550_GPIO4_INT, | ||
426 | AU1550_GPIO5_INT, | ||
427 | AU1550_GPIO6_INT, | ||
428 | AU1550_GPIO7_INT, | ||
429 | AU1550_GPIO8_INT, | ||
430 | AU1550_GPIO9_INT, | ||
431 | AU1550_GPIO10_INT, | ||
432 | AU1550_GPIO11_INT, | ||
433 | AU1550_GPIO12_INT, | ||
434 | AU1550_GPIO13_INT, | ||
435 | AU1550_GPIO14_INT, | ||
436 | AU1550_GPIO15_INT, | ||
437 | AU1550_GPIO200_INT, | ||
438 | AU1550_GPIO201_205_INT, /* Logical or of GPIO201:205 */ | ||
439 | AU1550_GPIO16_INT, | ||
440 | AU1550_GPIO17_INT, | ||
441 | AU1550_GPIO20_INT, | ||
442 | AU1550_GPIO21_INT, | ||
443 | AU1550_GPIO22_INT, | ||
444 | AU1550_GPIO23_INT, | ||
445 | AU1550_GPIO24_INT, | ||
446 | AU1550_GPIO25_INT, | ||
447 | AU1550_GPIO26_INT, | ||
448 | AU1550_GPIO27_INT, | ||
449 | AU1550_GPIO28_INT, | ||
450 | AU1550_GPIO206_INT, | ||
451 | AU1550_GPIO207_INT, | ||
452 | AU1550_GPIO208_215_INT, /* Logical or of GPIO208:215 */ | ||
453 | }; | ||
454 | |||
455 | enum soc_au1200_ints { | ||
456 | AU1200_FIRST_INT = AU1000_INTC0_INT_BASE, | ||
457 | AU1200_UART0_INT = AU1200_FIRST_INT, | ||
458 | AU1200_SWT_INT, | ||
459 | AU1200_SD_INT, | ||
460 | AU1200_DDMA_INT, | ||
461 | AU1200_MAE_BE_INT, | ||
462 | AU1200_GPIO200_INT, | ||
463 | AU1200_GPIO201_INT, | ||
464 | AU1200_GPIO202_INT, | ||
465 | AU1200_UART1_INT, | ||
466 | AU1200_MAE_FE_INT, | ||
467 | AU1200_PSC0_INT, | ||
468 | AU1200_PSC1_INT, | ||
469 | AU1200_AES_INT, | ||
470 | AU1200_CAMERA_INT, | ||
471 | AU1200_TOY_INT, | ||
472 | AU1200_TOY_MATCH0_INT, | ||
473 | AU1200_TOY_MATCH1_INT, | ||
474 | AU1200_TOY_MATCH2_INT, | ||
475 | AU1200_RTC_INT, | ||
476 | AU1200_RTC_MATCH0_INT, | ||
477 | AU1200_RTC_MATCH1_INT, | ||
478 | AU1200_RTC_MATCH2_INT, | ||
479 | AU1200_GPIO203_INT, | ||
480 | AU1200_NAND_INT, | ||
481 | AU1200_GPIO204_INT, | ||
482 | AU1200_GPIO205_INT, | ||
483 | AU1200_GPIO206_INT, | ||
484 | AU1200_GPIO207_INT, | ||
485 | AU1200_GPIO208_215_INT, /* Logical OR of 208:215 */ | ||
486 | AU1200_USB_INT, | ||
487 | AU1200_LCD_INT, | ||
488 | AU1200_MAE_BOTH_INT, | ||
489 | AU1200_GPIO0_INT, | ||
490 | AU1200_GPIO1_INT, | ||
491 | AU1200_GPIO2_INT, | ||
492 | AU1200_GPIO3_INT, | ||
493 | AU1200_GPIO4_INT, | ||
494 | AU1200_GPIO5_INT, | ||
495 | AU1200_GPIO6_INT, | ||
496 | AU1200_GPIO7_INT, | ||
497 | AU1200_GPIO8_INT, | ||
498 | AU1200_GPIO9_INT, | ||
499 | AU1200_GPIO10_INT, | ||
500 | AU1200_GPIO11_INT, | ||
501 | AU1200_GPIO12_INT, | ||
502 | AU1200_GPIO13_INT, | ||
503 | AU1200_GPIO14_INT, | ||
504 | AU1200_GPIO15_INT, | ||
505 | AU1200_GPIO16_INT, | ||
506 | AU1200_GPIO17_INT, | ||
507 | AU1200_GPIO18_INT, | ||
508 | AU1200_GPIO19_INT, | ||
509 | AU1200_GPIO20_INT, | ||
510 | AU1200_GPIO21_INT, | ||
511 | AU1200_GPIO22_INT, | ||
512 | AU1200_GPIO23_INT, | ||
513 | AU1200_GPIO24_INT, | ||
514 | AU1200_GPIO25_INT, | ||
515 | AU1200_GPIO26_INT, | ||
516 | AU1200_GPIO27_INT, | ||
517 | AU1200_GPIO28_INT, | ||
518 | AU1200_GPIO29_INT, | ||
519 | AU1200_GPIO30_INT, | ||
520 | AU1200_GPIO31_INT, | ||
521 | }; | ||
160 | 522 | ||
161 | #endif /* !defined (_LANGUAGE_ASSEMBLY) */ | 523 | #endif /* !defined (_LANGUAGE_ASSEMBLY) */ |
162 | 524 | ||
@@ -549,78 +911,16 @@ void au1xxx_setup_irqmap(struct au1xxx_irqmap *map, int count); | |||
549 | 911 | ||
550 | #define IC1_TESTBIT 0xB1800080 | 912 | #define IC1_TESTBIT 0xB1800080 |
551 | 913 | ||
552 | /* Interrupt Numbers */ | 914 | |
553 | /* Au1000 */ | 915 | /* Au1000 */ |
554 | #ifdef CONFIG_SOC_AU1000 | 916 | #ifdef CONFIG_SOC_AU1000 |
555 | enum soc_au1000_ints { | ||
556 | AU1000_FIRST_INT = MIPS_CPU_IRQ_BASE + 8, | ||
557 | AU1000_UART0_INT = AU1000_FIRST_INT, | ||
558 | AU1000_UART1_INT, /* au1000 */ | ||
559 | AU1000_UART2_INT, /* au1000 */ | ||
560 | AU1000_UART3_INT, | ||
561 | AU1000_SSI0_INT, /* au1000 */ | ||
562 | AU1000_SSI1_INT, /* au1000 */ | ||
563 | AU1000_DMA_INT_BASE, | ||
564 | |||
565 | AU1000_TOY_INT = AU1000_FIRST_INT + 14, | ||
566 | AU1000_TOY_MATCH0_INT, | ||
567 | AU1000_TOY_MATCH1_INT, | ||
568 | AU1000_TOY_MATCH2_INT, | ||
569 | AU1000_RTC_INT, | ||
570 | AU1000_RTC_MATCH0_INT, | ||
571 | AU1000_RTC_MATCH1_INT, | ||
572 | AU1000_RTC_MATCH2_INT, | ||
573 | AU1000_IRDA_TX_INT, /* au1000 */ | ||
574 | AU1000_IRDA_RX_INT, /* au1000 */ | ||
575 | AU1000_USB_DEV_REQ_INT, | ||
576 | AU1000_USB_DEV_SUS_INT, | ||
577 | AU1000_USB_HOST_INT, | ||
578 | AU1000_ACSYNC_INT, | ||
579 | AU1000_MAC0_DMA_INT, | ||
580 | AU1000_MAC1_DMA_INT, | ||
581 | AU1000_I2S_UO_INT, /* au1000 */ | ||
582 | AU1000_AC97C_INT, | ||
583 | AU1000_GPIO_0, | ||
584 | AU1000_GPIO_1, | ||
585 | AU1000_GPIO_2, | ||
586 | AU1000_GPIO_3, | ||
587 | AU1000_GPIO_4, | ||
588 | AU1000_GPIO_5, | ||
589 | AU1000_GPIO_6, | ||
590 | AU1000_GPIO_7, | ||
591 | AU1000_GPIO_8, | ||
592 | AU1000_GPIO_9, | ||
593 | AU1000_GPIO_10, | ||
594 | AU1000_GPIO_11, | ||
595 | AU1000_GPIO_12, | ||
596 | AU1000_GPIO_13, | ||
597 | AU1000_GPIO_14, | ||
598 | AU1000_GPIO_15, | ||
599 | AU1000_GPIO_16, | ||
600 | AU1000_GPIO_17, | ||
601 | AU1000_GPIO_18, | ||
602 | AU1000_GPIO_19, | ||
603 | AU1000_GPIO_20, | ||
604 | AU1000_GPIO_21, | ||
605 | AU1000_GPIO_22, | ||
606 | AU1000_GPIO_23, | ||
607 | AU1000_GPIO_24, | ||
608 | AU1000_GPIO_25, | ||
609 | AU1000_GPIO_26, | ||
610 | AU1000_GPIO_27, | ||
611 | AU1000_GPIO_28, | ||
612 | AU1000_GPIO_29, | ||
613 | AU1000_GPIO_30, | ||
614 | AU1000_GPIO_31, | ||
615 | }; | ||
616 | 917 | ||
617 | #define UART0_ADDR 0xB1100000 | 918 | #define UART0_ADDR 0xB1100000 |
618 | #define UART1_ADDR 0xB1200000 | ||
619 | #define UART2_ADDR 0xB1300000 | ||
620 | #define UART3_ADDR 0xB1400000 | 919 | #define UART3_ADDR 0xB1400000 |
621 | 920 | ||
622 | #define USB_OHCI_BASE 0x10100000 /* phys addr for ioremap */ | 921 | #define USB_OHCI_BASE 0x10100000 /* phys addr for ioremap */ |
623 | #define USB_HOST_CONFIG 0xB017FFFC | 922 | #define USB_HOST_CONFIG 0xB017FFFC |
923 | #define FOR_PLATFORM_C_USB_HOST_INT AU1000_USB_HOST_INT | ||
624 | 924 | ||
625 | #define AU1000_ETH0_BASE 0xB0500000 | 925 | #define AU1000_ETH0_BASE 0xB0500000 |
626 | #define AU1000_ETH1_BASE 0xB0510000 | 926 | #define AU1000_ETH1_BASE 0xB0510000 |
@@ -631,78 +931,13 @@ enum soc_au1000_ints { | |||
631 | 931 | ||
632 | /* Au1500 */ | 932 | /* Au1500 */ |
633 | #ifdef CONFIG_SOC_AU1500 | 933 | #ifdef CONFIG_SOC_AU1500 |
634 | enum soc_au1500_ints { | ||
635 | AU1500_FIRST_INT = MIPS_CPU_IRQ_BASE + 8, | ||
636 | AU1500_UART0_INT = AU1500_FIRST_INT, | ||
637 | AU1000_PCI_INTA, /* au1500 */ | ||
638 | AU1000_PCI_INTB, /* au1500 */ | ||
639 | AU1500_UART3_INT, | ||
640 | AU1000_PCI_INTC, /* au1500 */ | ||
641 | AU1000_PCI_INTD, /* au1500 */ | ||
642 | AU1000_DMA_INT_BASE, | ||
643 | |||
644 | AU1000_TOY_INT = AU1500_FIRST_INT + 14, | ||
645 | AU1000_TOY_MATCH0_INT, | ||
646 | AU1000_TOY_MATCH1_INT, | ||
647 | AU1000_TOY_MATCH2_INT, | ||
648 | AU1000_RTC_INT, | ||
649 | AU1000_RTC_MATCH0_INT, | ||
650 | AU1000_RTC_MATCH1_INT, | ||
651 | AU1000_RTC_MATCH2_INT, | ||
652 | AU1500_PCI_ERR_INT, | ||
653 | AU1500_RESERVED_INT, | ||
654 | AU1000_USB_DEV_REQ_INT, | ||
655 | AU1000_USB_DEV_SUS_INT, | ||
656 | AU1000_USB_HOST_INT, | ||
657 | AU1000_ACSYNC_INT, | ||
658 | AU1500_MAC0_DMA_INT, | ||
659 | AU1500_MAC1_DMA_INT, | ||
660 | AU1000_AC97C_INT = AU1500_FIRST_INT + 31, | ||
661 | AU1000_GPIO_0, | ||
662 | AU1000_GPIO_1, | ||
663 | AU1000_GPIO_2, | ||
664 | AU1000_GPIO_3, | ||
665 | AU1000_GPIO_4, | ||
666 | AU1000_GPIO_5, | ||
667 | AU1000_GPIO_6, | ||
668 | AU1000_GPIO_7, | ||
669 | AU1000_GPIO_8, | ||
670 | AU1000_GPIO_9, | ||
671 | AU1000_GPIO_10, | ||
672 | AU1000_GPIO_11, | ||
673 | AU1000_GPIO_12, | ||
674 | AU1000_GPIO_13, | ||
675 | AU1000_GPIO_14, | ||
676 | AU1000_GPIO_15, | ||
677 | AU1500_GPIO_200, | ||
678 | AU1500_GPIO_201, | ||
679 | AU1500_GPIO_202, | ||
680 | AU1500_GPIO_203, | ||
681 | AU1500_GPIO_20, | ||
682 | AU1500_GPIO_204, | ||
683 | AU1500_GPIO_205, | ||
684 | AU1500_GPIO_23, | ||
685 | AU1500_GPIO_24, | ||
686 | AU1500_GPIO_25, | ||
687 | AU1500_GPIO_26, | ||
688 | AU1500_GPIO_27, | ||
689 | AU1500_GPIO_28, | ||
690 | AU1500_GPIO_206, | ||
691 | AU1500_GPIO_207, | ||
692 | AU1500_GPIO_208_215, | ||
693 | }; | ||
694 | |||
695 | /* shortcuts */ | ||
696 | #define INTA AU1000_PCI_INTA | ||
697 | #define INTB AU1000_PCI_INTB | ||
698 | #define INTC AU1000_PCI_INTC | ||
699 | #define INTD AU1000_PCI_INTD | ||
700 | 934 | ||
701 | #define UART0_ADDR 0xB1100000 | 935 | #define UART0_ADDR 0xB1100000 |
702 | #define UART3_ADDR 0xB1400000 | 936 | #define UART3_ADDR 0xB1400000 |
703 | 937 | ||
704 | #define USB_OHCI_BASE 0x10100000 /* phys addr for ioremap */ | 938 | #define USB_OHCI_BASE 0x10100000 /* phys addr for ioremap */ |
705 | #define USB_HOST_CONFIG 0xB017fffc | 939 | #define USB_HOST_CONFIG 0xB017fffc |
940 | #define FOR_PLATFORM_C_USB_HOST_INT AU1500_USB_HOST_INT | ||
706 | 941 | ||
707 | #define AU1500_ETH0_BASE 0xB1500000 | 942 | #define AU1500_ETH0_BASE 0xB1500000 |
708 | #define AU1500_ETH1_BASE 0xB1510000 | 943 | #define AU1500_ETH1_BASE 0xB1510000 |
@@ -713,74 +948,13 @@ enum soc_au1500_ints { | |||
713 | 948 | ||
714 | /* Au1100 */ | 949 | /* Au1100 */ |
715 | #ifdef CONFIG_SOC_AU1100 | 950 | #ifdef CONFIG_SOC_AU1100 |
716 | enum soc_au1100_ints { | ||
717 | AU1100_FIRST_INT = MIPS_CPU_IRQ_BASE + 8, | ||
718 | AU1100_UART0_INT = AU1100_FIRST_INT, | ||
719 | AU1100_UART1_INT, | ||
720 | AU1100_SD_INT, | ||
721 | AU1100_UART3_INT, | ||
722 | AU1000_SSI0_INT, | ||
723 | AU1000_SSI1_INT, | ||
724 | AU1000_DMA_INT_BASE, | ||
725 | |||
726 | AU1000_TOY_INT = AU1100_FIRST_INT + 14, | ||
727 | AU1000_TOY_MATCH0_INT, | ||
728 | AU1000_TOY_MATCH1_INT, | ||
729 | AU1000_TOY_MATCH2_INT, | ||
730 | AU1000_RTC_INT, | ||
731 | AU1000_RTC_MATCH0_INT, | ||
732 | AU1000_RTC_MATCH1_INT, | ||
733 | AU1000_RTC_MATCH2_INT, | ||
734 | AU1000_IRDA_TX_INT, | ||
735 | AU1000_IRDA_RX_INT, | ||
736 | AU1000_USB_DEV_REQ_INT, | ||
737 | AU1000_USB_DEV_SUS_INT, | ||
738 | AU1000_USB_HOST_INT, | ||
739 | AU1000_ACSYNC_INT, | ||
740 | AU1100_MAC0_DMA_INT, | ||
741 | AU1100_GPIO_208_215, | ||
742 | AU1100_LCD_INT, | ||
743 | AU1000_AC97C_INT, | ||
744 | AU1000_GPIO_0, | ||
745 | AU1000_GPIO_1, | ||
746 | AU1000_GPIO_2, | ||
747 | AU1000_GPIO_3, | ||
748 | AU1000_GPIO_4, | ||
749 | AU1000_GPIO_5, | ||
750 | AU1000_GPIO_6, | ||
751 | AU1000_GPIO_7, | ||
752 | AU1000_GPIO_8, | ||
753 | AU1000_GPIO_9, | ||
754 | AU1000_GPIO_10, | ||
755 | AU1000_GPIO_11, | ||
756 | AU1000_GPIO_12, | ||
757 | AU1000_GPIO_13, | ||
758 | AU1000_GPIO_14, | ||
759 | AU1000_GPIO_15, | ||
760 | AU1000_GPIO_16, | ||
761 | AU1000_GPIO_17, | ||
762 | AU1000_GPIO_18, | ||
763 | AU1000_GPIO_19, | ||
764 | AU1000_GPIO_20, | ||
765 | AU1000_GPIO_21, | ||
766 | AU1000_GPIO_22, | ||
767 | AU1000_GPIO_23, | ||
768 | AU1000_GPIO_24, | ||
769 | AU1000_GPIO_25, | ||
770 | AU1000_GPIO_26, | ||
771 | AU1000_GPIO_27, | ||
772 | AU1000_GPIO_28, | ||
773 | AU1000_GPIO_29, | ||
774 | AU1000_GPIO_30, | ||
775 | AU1000_GPIO_31, | ||
776 | }; | ||
777 | 951 | ||
778 | #define UART0_ADDR 0xB1100000 | 952 | #define UART0_ADDR 0xB1100000 |
779 | #define UART1_ADDR 0xB1200000 | ||
780 | #define UART3_ADDR 0xB1400000 | 953 | #define UART3_ADDR 0xB1400000 |
781 | 954 | ||
782 | #define USB_OHCI_BASE 0x10100000 /* phys addr for ioremap */ | 955 | #define USB_OHCI_BASE 0x10100000 /* phys addr for ioremap */ |
783 | #define USB_HOST_CONFIG 0xB017FFFC | 956 | #define USB_HOST_CONFIG 0xB017FFFC |
957 | #define FOR_PLATFORM_C_USB_HOST_INT AU1100_USB_HOST_INT | ||
784 | 958 | ||
785 | #define AU1100_ETH0_BASE 0xB0500000 | 959 | #define AU1100_ETH0_BASE 0xB0500000 |
786 | #define AU1100_MAC0_ENABLE 0xB0520000 | 960 | #define AU1100_MAC0_ENABLE 0xB0520000 |
@@ -788,87 +962,12 @@ enum soc_au1100_ints { | |||
788 | #endif /* CONFIG_SOC_AU1100 */ | 962 | #endif /* CONFIG_SOC_AU1100 */ |
789 | 963 | ||
790 | #ifdef CONFIG_SOC_AU1550 | 964 | #ifdef CONFIG_SOC_AU1550 |
791 | enum soc_au1550_ints { | ||
792 | AU1550_FIRST_INT = MIPS_CPU_IRQ_BASE + 8, | ||
793 | AU1550_UART0_INT = AU1550_FIRST_INT, | ||
794 | AU1550_PCI_INTA, | ||
795 | AU1550_PCI_INTB, | ||
796 | AU1550_DDMA_INT, | ||
797 | AU1550_CRYPTO_INT, | ||
798 | AU1550_PCI_INTC, | ||
799 | AU1550_PCI_INTD, | ||
800 | AU1550_PCI_RST_INT, | ||
801 | AU1550_UART1_INT, | ||
802 | AU1550_UART3_INT, | ||
803 | AU1550_PSC0_INT, | ||
804 | AU1550_PSC1_INT, | ||
805 | AU1550_PSC2_INT, | ||
806 | AU1550_PSC3_INT, | ||
807 | AU1000_TOY_INT, | ||
808 | AU1000_TOY_MATCH0_INT, | ||
809 | AU1000_TOY_MATCH1_INT, | ||
810 | AU1000_TOY_MATCH2_INT, | ||
811 | AU1000_RTC_INT, | ||
812 | AU1000_RTC_MATCH0_INT, | ||
813 | AU1000_RTC_MATCH1_INT, | ||
814 | AU1000_RTC_MATCH2_INT, | ||
815 | |||
816 | AU1550_NAND_INT = AU1550_FIRST_INT + 23, | ||
817 | AU1550_USB_DEV_REQ_INT, | ||
818 | AU1000_USB_DEV_REQ_INT = AU1550_USB_DEV_REQ_INT, | ||
819 | AU1550_USB_DEV_SUS_INT, | ||
820 | AU1000_USB_DEV_SUS_INT = AU1550_USB_DEV_SUS_INT, | ||
821 | AU1550_USB_HOST_INT, | ||
822 | AU1000_USB_HOST_INT = AU1550_USB_HOST_INT, | ||
823 | AU1550_MAC0_DMA_INT, | ||
824 | AU1550_MAC1_DMA_INT, | ||
825 | AU1000_GPIO_0 = AU1550_FIRST_INT + 32, | ||
826 | AU1000_GPIO_1, | ||
827 | AU1000_GPIO_2, | ||
828 | AU1000_GPIO_3, | ||
829 | AU1000_GPIO_4, | ||
830 | AU1000_GPIO_5, | ||
831 | AU1000_GPIO_6, | ||
832 | AU1000_GPIO_7, | ||
833 | AU1000_GPIO_8, | ||
834 | AU1000_GPIO_9, | ||
835 | AU1000_GPIO_10, | ||
836 | AU1000_GPIO_11, | ||
837 | AU1000_GPIO_12, | ||
838 | AU1000_GPIO_13, | ||
839 | AU1000_GPIO_14, | ||
840 | AU1000_GPIO_15, | ||
841 | AU1550_GPIO_200, | ||
842 | AU1500_GPIO_201_205, /* Logical or of GPIO201:205 */ | ||
843 | AU1500_GPIO_16, | ||
844 | AU1500_GPIO_17, | ||
845 | AU1500_GPIO_20, | ||
846 | AU1500_GPIO_21, | ||
847 | AU1500_GPIO_22, | ||
848 | AU1500_GPIO_23, | ||
849 | AU1500_GPIO_24, | ||
850 | AU1500_GPIO_25, | ||
851 | AU1500_GPIO_26, | ||
852 | AU1500_GPIO_27, | ||
853 | AU1500_GPIO_28, | ||
854 | AU1500_GPIO_206, | ||
855 | AU1500_GPIO_207, | ||
856 | AU1500_GPIO_208_218, /* Logical or of GPIO208:218 */ | ||
857 | }; | ||
858 | |||
859 | /* shortcuts */ | ||
860 | #define INTA AU1550_PCI_INTA | ||
861 | #define INTB AU1550_PCI_INTB | ||
862 | #define INTC AU1550_PCI_INTC | ||
863 | #define INTD AU1550_PCI_INTD | ||
864 | |||
865 | #define UART0_ADDR 0xB1100000 | 965 | #define UART0_ADDR 0xB1100000 |
866 | #define UART1_ADDR 0xB1200000 | ||
867 | #define UART3_ADDR 0xB1400000 | ||
868 | 966 | ||
869 | #define USB_OHCI_BASE 0x14020000 /* phys addr for ioremap */ | 967 | #define USB_OHCI_BASE 0x14020000 /* phys addr for ioremap */ |
870 | #define USB_OHCI_LEN 0x00060000 | 968 | #define USB_OHCI_LEN 0x00060000 |
871 | #define USB_HOST_CONFIG 0xB4027ffc | 969 | #define USB_HOST_CONFIG 0xB4027ffc |
970 | #define FOR_PLATFORM_C_USB_HOST_INT AU1550_USB_HOST_INT | ||
872 | 971 | ||
873 | #define AU1550_ETH0_BASE 0xB0500000 | 972 | #define AU1550_ETH0_BASE 0xB0500000 |
874 | #define AU1550_ETH1_BASE 0xB0510000 | 973 | #define AU1550_ETH1_BASE 0xB0510000 |
@@ -877,78 +976,10 @@ enum soc_au1550_ints { | |||
877 | #define NUM_ETH_INTERFACES 2 | 976 | #define NUM_ETH_INTERFACES 2 |
878 | #endif /* CONFIG_SOC_AU1550 */ | 977 | #endif /* CONFIG_SOC_AU1550 */ |
879 | 978 | ||
979 | |||
880 | #ifdef CONFIG_SOC_AU1200 | 980 | #ifdef CONFIG_SOC_AU1200 |
881 | enum soc_au1200_ints { | ||
882 | AU1200_FIRST_INT = MIPS_CPU_IRQ_BASE + 8, | ||
883 | AU1200_UART0_INT = AU1200_FIRST_INT, | ||
884 | AU1200_SWT_INT, | ||
885 | AU1200_SD_INT, | ||
886 | AU1200_DDMA_INT, | ||
887 | AU1200_MAE_BE_INT, | ||
888 | AU1200_GPIO_200, | ||
889 | AU1200_GPIO_201, | ||
890 | AU1200_GPIO_202, | ||
891 | AU1200_UART1_INT, | ||
892 | AU1200_MAE_FE_INT, | ||
893 | AU1200_PSC0_INT, | ||
894 | AU1200_PSC1_INT, | ||
895 | AU1200_AES_INT, | ||
896 | AU1200_CAMERA_INT, | ||
897 | AU1000_TOY_INT, | ||
898 | AU1000_TOY_MATCH0_INT, | ||
899 | AU1000_TOY_MATCH1_INT, | ||
900 | AU1000_TOY_MATCH2_INT, | ||
901 | AU1000_RTC_INT, | ||
902 | AU1000_RTC_MATCH0_INT, | ||
903 | AU1000_RTC_MATCH1_INT, | ||
904 | AU1000_RTC_MATCH2_INT, | ||
905 | AU1200_GPIO_203, | ||
906 | AU1200_NAND_INT, | ||
907 | AU1200_GPIO_204, | ||
908 | AU1200_GPIO_205, | ||
909 | AU1200_GPIO_206, | ||
910 | AU1200_GPIO_207, | ||
911 | AU1200_GPIO_208_215, /* Logical OR of 208:215 */ | ||
912 | AU1200_USB_INT, | ||
913 | AU1000_USB_HOST_INT = AU1200_USB_INT, | ||
914 | AU1200_LCD_INT, | ||
915 | AU1200_MAE_BOTH_INT, | ||
916 | AU1000_GPIO_0, | ||
917 | AU1000_GPIO_1, | ||
918 | AU1000_GPIO_2, | ||
919 | AU1000_GPIO_3, | ||
920 | AU1000_GPIO_4, | ||
921 | AU1000_GPIO_5, | ||
922 | AU1000_GPIO_6, | ||
923 | AU1000_GPIO_7, | ||
924 | AU1000_GPIO_8, | ||
925 | AU1000_GPIO_9, | ||
926 | AU1000_GPIO_10, | ||
927 | AU1000_GPIO_11, | ||
928 | AU1000_GPIO_12, | ||
929 | AU1000_GPIO_13, | ||
930 | AU1000_GPIO_14, | ||
931 | AU1000_GPIO_15, | ||
932 | AU1000_GPIO_16, | ||
933 | AU1000_GPIO_17, | ||
934 | AU1000_GPIO_18, | ||
935 | AU1000_GPIO_19, | ||
936 | AU1000_GPIO_20, | ||
937 | AU1000_GPIO_21, | ||
938 | AU1000_GPIO_22, | ||
939 | AU1000_GPIO_23, | ||
940 | AU1000_GPIO_24, | ||
941 | AU1000_GPIO_25, | ||
942 | AU1000_GPIO_26, | ||
943 | AU1000_GPIO_27, | ||
944 | AU1000_GPIO_28, | ||
945 | AU1000_GPIO_29, | ||
946 | AU1000_GPIO_30, | ||
947 | AU1000_GPIO_31, | ||
948 | }; | ||
949 | 981 | ||
950 | #define UART0_ADDR 0xB1100000 | 982 | #define UART0_ADDR 0xB1100000 |
951 | #define UART1_ADDR 0xB1200000 | ||
952 | 983 | ||
953 | #define USB_UOC_BASE 0x14020020 | 984 | #define USB_UOC_BASE 0x14020020 |
954 | #define USB_UOC_LEN 0x20 | 985 | #define USB_UOC_LEN 0x20 |
@@ -974,15 +1005,9 @@ enum soc_au1200_ints { | |||
974 | #define USBMSRMCFG_RDCOMB 30 | 1005 | #define USBMSRMCFG_RDCOMB 30 |
975 | #define USBMSRMCFG_PFEN 31 | 1006 | #define USBMSRMCFG_PFEN 31 |
976 | 1007 | ||
977 | #endif /* CONFIG_SOC_AU1200 */ | 1008 | #define FOR_PLATFORM_C_USB_HOST_INT AU1200_USB_INT |
978 | |||
979 | #define AU1000_INTC0_INT_BASE (MIPS_CPU_IRQ_BASE + 8) | ||
980 | #define AU1000_INTC0_INT_LAST (AU1000_INTC0_INT_BASE + 31) | ||
981 | #define AU1000_INTC1_INT_BASE (AU1000_INTC0_INT_BASE + 32) | ||
982 | #define AU1000_INTC1_INT_LAST (AU1000_INTC1_INT_BASE + 31) | ||
983 | 1009 | ||
984 | #define AU1000_MAX_INTR AU1000_INTC1_INT_LAST | 1010 | #endif /* CONFIG_SOC_AU1200 */ |
985 | #define INTX 0xFF /* not valid */ | ||
986 | 1011 | ||
987 | /* Programmable Counters 0 and 1 */ | 1012 | /* Programmable Counters 0 and 1 */ |
988 | #define SYS_BASE 0xB1900000 | 1013 | #define SYS_BASE 0xB1900000 |
@@ -1231,14 +1256,6 @@ enum soc_au1200_ints { | |||
1231 | #define MAC_RX_BUFF3_STATUS 0x30 | 1256 | #define MAC_RX_BUFF3_STATUS 0x30 |
1232 | #define MAC_RX_BUFF3_ADDR 0x34 | 1257 | #define MAC_RX_BUFF3_ADDR 0x34 |
1233 | 1258 | ||
1234 | /* UARTS 0-3 */ | ||
1235 | #define UART_BASE UART0_ADDR | ||
1236 | #ifdef CONFIG_SOC_AU1200 | ||
1237 | #define UART_DEBUG_BASE UART1_ADDR | ||
1238 | #else | ||
1239 | #define UART_DEBUG_BASE UART3_ADDR | ||
1240 | #endif | ||
1241 | |||
1242 | #define UART_RX 0 /* Receive buffer */ | 1259 | #define UART_RX 0 /* Receive buffer */ |
1243 | #define UART_TX 4 /* Transmit buffer */ | 1260 | #define UART_TX 4 /* Transmit buffer */ |
1244 | #define UART_IER 8 /* Interrupt Enable Register */ | 1261 | #define UART_IER 8 /* Interrupt Enable Register */ |
@@ -1251,84 +1268,6 @@ enum soc_au1200_ints { | |||
1251 | #define UART_CLK 0x28 /* Baud Rate Clock Divider */ | 1268 | #define UART_CLK 0x28 /* Baud Rate Clock Divider */ |
1252 | #define UART_MOD_CNTRL 0x100 /* Module Control */ | 1269 | #define UART_MOD_CNTRL 0x100 /* Module Control */ |
1253 | 1270 | ||
1254 | #define UART_FCR_ENABLE_FIFO 0x01 /* Enable the FIFO */ | ||
1255 | #define UART_FCR_CLEAR_RCVR 0x02 /* Clear the RCVR FIFO */ | ||
1256 | #define UART_FCR_CLEAR_XMIT 0x04 /* Clear the XMIT FIFO */ | ||
1257 | #define UART_FCR_DMA_SELECT 0x08 /* For DMA applications */ | ||
1258 | #define UART_FCR_TRIGGER_MASK 0xF0 /* Mask for the FIFO trigger range */ | ||
1259 | #define UART_FCR_R_TRIGGER_1 0x00 /* Mask for receive trigger set at 1 */ | ||
1260 | #define UART_FCR_R_TRIGGER_4 0x40 /* Mask for receive trigger set at 4 */ | ||
1261 | #define UART_FCR_R_TRIGGER_8 0x80 /* Mask for receive trigger set at 8 */ | ||
1262 | #define UART_FCR_R_TRIGGER_14 0xA0 /* Mask for receive trigger set at 14 */ | ||
1263 | #define UART_FCR_T_TRIGGER_0 0x00 /* Mask for transmit trigger set at 0 */ | ||
1264 | #define UART_FCR_T_TRIGGER_4 0x10 /* Mask for transmit trigger set at 4 */ | ||
1265 | #define UART_FCR_T_TRIGGER_8 0x20 /* Mask for transmit trigger set at 8 */ | ||
1266 | #define UART_FCR_T_TRIGGER_12 0x30 /* Mask for transmit trigger set at 12 */ | ||
1267 | |||
1268 | /* | ||
1269 | * These are the definitions for the Line Control Register | ||
1270 | */ | ||
1271 | #define UART_LCR_SBC 0x40 /* Set break control */ | ||
1272 | #define UART_LCR_SPAR 0x20 /* Stick parity (?) */ | ||
1273 | #define UART_LCR_EPAR 0x10 /* Even parity select */ | ||
1274 | #define UART_LCR_PARITY 0x08 /* Parity Enable */ | ||
1275 | #define UART_LCR_STOP 0x04 /* Stop bits: 0=1 stop bit, 1= 2 stop bits */ | ||
1276 | #define UART_LCR_WLEN5 0x00 /* Wordlength: 5 bits */ | ||
1277 | #define UART_LCR_WLEN6 0x01 /* Wordlength: 6 bits */ | ||
1278 | #define UART_LCR_WLEN7 0x02 /* Wordlength: 7 bits */ | ||
1279 | #define UART_LCR_WLEN8 0x03 /* Wordlength: 8 bits */ | ||
1280 | |||
1281 | /* | ||
1282 | * These are the definitions for the Line Status Register | ||
1283 | */ | ||
1284 | #define UART_LSR_TEMT 0x40 /* Transmitter empty */ | ||
1285 | #define UART_LSR_THRE 0x20 /* Transmit-hold-register empty */ | ||
1286 | #define UART_LSR_BI 0x10 /* Break interrupt indicator */ | ||
1287 | #define UART_LSR_FE 0x08 /* Frame error indicator */ | ||
1288 | #define UART_LSR_PE 0x04 /* Parity error indicator */ | ||
1289 | #define UART_LSR_OE 0x02 /* Overrun error indicator */ | ||
1290 | #define UART_LSR_DR 0x01 /* Receiver data ready */ | ||
1291 | |||
1292 | /* | ||
1293 | * These are the definitions for the Interrupt Identification Register | ||
1294 | */ | ||
1295 | #define UART_IIR_NO_INT 0x01 /* No interrupts pending */ | ||
1296 | #define UART_IIR_ID 0x06 /* Mask for the interrupt ID */ | ||
1297 | #define UART_IIR_MSI 0x00 /* Modem status interrupt */ | ||
1298 | #define UART_IIR_THRI 0x02 /* Transmitter holding register empty */ | ||
1299 | #define UART_IIR_RDI 0x04 /* Receiver data interrupt */ | ||
1300 | #define UART_IIR_RLSI 0x06 /* Receiver line status interrupt */ | ||
1301 | |||
1302 | /* | ||
1303 | * These are the definitions for the Interrupt Enable Register | ||
1304 | */ | ||
1305 | #define UART_IER_MSI 0x08 /* Enable Modem status interrupt */ | ||
1306 | #define UART_IER_RLSI 0x04 /* Enable receiver line status interrupt */ | ||
1307 | #define UART_IER_THRI 0x02 /* Enable Transmitter holding register int. */ | ||
1308 | #define UART_IER_RDI 0x01 /* Enable receiver data interrupt */ | ||
1309 | |||
1310 | /* | ||
1311 | * These are the definitions for the Modem Control Register | ||
1312 | */ | ||
1313 | #define UART_MCR_LOOP 0x10 /* Enable loopback test mode */ | ||
1314 | #define UART_MCR_OUT2 0x08 /* Out2 complement */ | ||
1315 | #define UART_MCR_OUT1 0x04 /* Out1 complement */ | ||
1316 | #define UART_MCR_RTS 0x02 /* RTS complement */ | ||
1317 | #define UART_MCR_DTR 0x01 /* DTR complement */ | ||
1318 | |||
1319 | /* | ||
1320 | * These are the definitions for the Modem Status Register | ||
1321 | */ | ||
1322 | #define UART_MSR_DCD 0x80 /* Data Carrier Detect */ | ||
1323 | #define UART_MSR_RI 0x40 /* Ring Indicator */ | ||
1324 | #define UART_MSR_DSR 0x20 /* Data Set Ready */ | ||
1325 | #define UART_MSR_CTS 0x10 /* Clear to Send */ | ||
1326 | #define UART_MSR_DDCD 0x08 /* Delta DCD */ | ||
1327 | #define UART_MSR_TERI 0x04 /* Trailing edge ring indicator */ | ||
1328 | #define UART_MSR_DDSR 0x02 /* Delta DSR */ | ||
1329 | #define UART_MSR_DCTS 0x01 /* Delta CTS */ | ||
1330 | #define UART_MSR_ANY_DELTA 0x0F /* Any of the delta bits! */ | ||
1331 | |||
1332 | /* SSIO */ | 1271 | /* SSIO */ |
1333 | #define SSI0_STATUS 0xB1600000 | 1272 | #define SSI0_STATUS 0xB1600000 |
1334 | # define SSI_STATUS_BF (1 << 4) | 1273 | # define SSI_STATUS_BF (1 << 4) |
@@ -1720,7 +1659,7 @@ enum soc_au1200_ints { | |||
1720 | #define IOPORT_RESOURCE_START 0x00001000 /* skip legacy probing */ | 1659 | #define IOPORT_RESOURCE_START 0x00001000 /* skip legacy probing */ |
1721 | #define IOPORT_RESOURCE_END 0xffffffff | 1660 | #define IOPORT_RESOURCE_END 0xffffffff |
1722 | #define IOMEM_RESOURCE_START 0x10000000 | 1661 | #define IOMEM_RESOURCE_START 0x10000000 |
1723 | #define IOMEM_RESOURCE_END 0xffffffff | 1662 | #define IOMEM_RESOURCE_END 0xfffffffffULL |
1724 | 1663 | ||
1725 | #else /* Au1000 and Au1100 and Au1200 */ | 1664 | #else /* Au1000 and Au1100 and Au1200 */ |
1726 | 1665 | ||
@@ -1728,7 +1667,7 @@ enum soc_au1200_ints { | |||
1728 | #define IOPORT_RESOURCE_START 0x10000000 | 1667 | #define IOPORT_RESOURCE_START 0x10000000 |
1729 | #define IOPORT_RESOURCE_END 0xffffffff | 1668 | #define IOPORT_RESOURCE_END 0xffffffff |
1730 | #define IOMEM_RESOURCE_START 0x10000000 | 1669 | #define IOMEM_RESOURCE_START 0x10000000 |
1731 | #define IOMEM_RESOURCE_END 0xffffffff | 1670 | #define IOMEM_RESOURCE_END 0xfffffffffULL |
1732 | 1671 | ||
1733 | #define PCI_IO_START 0 | 1672 | #define PCI_IO_START 0 |
1734 | #define PCI_IO_END 0 | 1673 | #define PCI_IO_END 0 |
@@ -1739,53 +1678,4 @@ enum soc_au1200_ints { | |||
1739 | 1678 | ||
1740 | #endif | 1679 | #endif |
1741 | 1680 | ||
1742 | #ifndef _LANGUAGE_ASSEMBLY | ||
1743 | typedef volatile struct { | ||
1744 | /* 0x0000 */ u32 toytrim; | ||
1745 | /* 0x0004 */ u32 toywrite; | ||
1746 | /* 0x0008 */ u32 toymatch0; | ||
1747 | /* 0x000C */ u32 toymatch1; | ||
1748 | /* 0x0010 */ u32 toymatch2; | ||
1749 | /* 0x0014 */ u32 cntrctrl; | ||
1750 | /* 0x0018 */ u32 scratch0; | ||
1751 | /* 0x001C */ u32 scratch1; | ||
1752 | /* 0x0020 */ u32 freqctrl0; | ||
1753 | /* 0x0024 */ u32 freqctrl1; | ||
1754 | /* 0x0028 */ u32 clksrc; | ||
1755 | /* 0x002C */ u32 pinfunc; | ||
1756 | /* 0x0030 */ u32 reserved0; | ||
1757 | /* 0x0034 */ u32 wakemsk; | ||
1758 | /* 0x0038 */ u32 endian; | ||
1759 | /* 0x003C */ u32 powerctrl; | ||
1760 | /* 0x0040 */ u32 toyread; | ||
1761 | /* 0x0044 */ u32 rtctrim; | ||
1762 | /* 0x0048 */ u32 rtcwrite; | ||
1763 | /* 0x004C */ u32 rtcmatch0; | ||
1764 | /* 0x0050 */ u32 rtcmatch1; | ||
1765 | /* 0x0054 */ u32 rtcmatch2; | ||
1766 | /* 0x0058 */ u32 rtcread; | ||
1767 | /* 0x005C */ u32 wakesrc; | ||
1768 | /* 0x0060 */ u32 cpupll; | ||
1769 | /* 0x0064 */ u32 auxpll; | ||
1770 | /* 0x0068 */ u32 reserved1; | ||
1771 | /* 0x006C */ u32 reserved2; | ||
1772 | /* 0x0070 */ u32 reserved3; | ||
1773 | /* 0x0074 */ u32 reserved4; | ||
1774 | /* 0x0078 */ u32 slppwr; | ||
1775 | /* 0x007C */ u32 sleep; | ||
1776 | /* 0x0080 */ u32 reserved5[32]; | ||
1777 | /* 0x0100 */ u32 trioutrd; | ||
1778 | #define trioutclr trioutrd | ||
1779 | /* 0x0104 */ u32 reserved6; | ||
1780 | /* 0x0108 */ u32 outputrd; | ||
1781 | #define outputset outputrd | ||
1782 | /* 0x010C */ u32 outputclr; | ||
1783 | /* 0x0110 */ u32 pinstaterd; | ||
1784 | #define pininputen pinstaterd | ||
1785 | } AU1X00_SYS; | ||
1786 | |||
1787 | static AU1X00_SYS * const sys = (AU1X00_SYS *)SYS_BASE; | ||
1788 | |||
1789 | #endif | ||
1790 | |||
1791 | #endif | 1681 | #endif |
diff --git a/arch/mips/include/asm/mach-au1x00/au1100_mmc.h b/arch/mips/include/asm/mach-au1x00/au1100_mmc.h index c35e20918490..94000a3b6f0b 100644 --- a/arch/mips/include/asm/mach-au1x00/au1100_mmc.h +++ b/arch/mips/include/asm/mach-au1x00/au1100_mmc.h | |||
@@ -46,6 +46,7 @@ struct au1xmmc_platform_data { | |||
46 | int(*card_readonly)(void *mmc_host); | 46 | int(*card_readonly)(void *mmc_host); |
47 | void(*set_power)(void *mmc_host, int state); | 47 | void(*set_power)(void *mmc_host, int state); |
48 | struct led_classdev *led; | 48 | struct led_classdev *led; |
49 | unsigned long mask_host_caps; | ||
49 | }; | 50 | }; |
50 | 51 | ||
51 | #define SD0_BASE 0xB0600000 | 52 | #define SD0_BASE 0xB0600000 |
@@ -205,4 +206,3 @@ struct au1xmmc_platform_data { | |||
205 | 206 | ||
206 | 207 | ||
207 | #endif /* __ASM_AU1100_MMC_H */ | 208 | #endif /* __ASM_AU1100_MMC_H */ |
208 | |||
diff --git a/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h b/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h index 06f68f43800a..8c6b1105ce0b 100644 --- a/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h +++ b/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h | |||
@@ -305,6 +305,7 @@ typedef struct dbdma_chan_config { | |||
305 | dbdev_tab_t *chan_dest; | 305 | dbdev_tab_t *chan_dest; |
306 | au1x_dma_chan_t *chan_ptr; | 306 | au1x_dma_chan_t *chan_ptr; |
307 | au1x_ddma_desc_t *chan_desc_base; | 307 | au1x_ddma_desc_t *chan_desc_base; |
308 | u32 cdb_membase; /* kmalloc base of above */ | ||
308 | au1x_ddma_desc_t *get_ptr, *put_ptr, *cur_ptr; | 309 | au1x_ddma_desc_t *get_ptr, *put_ptr, *cur_ptr; |
309 | void *chan_callparam; | 310 | void *chan_callparam; |
310 | void (*chan_callback)(int, void *); | 311 | void (*chan_callback)(int, void *); |
@@ -338,8 +339,8 @@ u32 au1xxx_dbdma_set_devwidth(u32 chanid, int bits); | |||
338 | u32 au1xxx_dbdma_ring_alloc(u32 chanid, int entries); | 339 | u32 au1xxx_dbdma_ring_alloc(u32 chanid, int entries); |
339 | 340 | ||
340 | /* Put buffers on source/destination descriptors. */ | 341 | /* Put buffers on source/destination descriptors. */ |
341 | u32 _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags); | 342 | u32 au1xxx_dbdma_put_source(u32 chanid, dma_addr_t buf, int nbytes, u32 flags); |
342 | u32 _au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes, u32 flags); | 343 | u32 au1xxx_dbdma_put_dest(u32 chanid, dma_addr_t buf, int nbytes, u32 flags); |
343 | 344 | ||
344 | /* Get a buffer from the destination descriptor. */ | 345 | /* Get a buffer from the destination descriptor. */ |
345 | u32 au1xxx_dbdma_get_dest(u32 chanid, void **buf, int *nbytes); | 346 | u32 au1xxx_dbdma_get_dest(u32 chanid, void **buf, int *nbytes); |
@@ -362,25 +363,6 @@ void au1xxx_dbdma_suspend(void); | |||
362 | void au1xxx_dbdma_resume(void); | 363 | void au1xxx_dbdma_resume(void); |
363 | #endif | 364 | #endif |
364 | 365 | ||
365 | |||
366 | /* | ||
367 | * Some compatibilty macros -- needed to make changes to API | ||
368 | * without breaking existing drivers. | ||
369 | */ | ||
370 | #define au1xxx_dbdma_put_source(chanid, buf, nbytes) \ | ||
371 | _au1xxx_dbdma_put_source(chanid, buf, nbytes, DDMA_FLAGS_IE) | ||
372 | #define au1xxx_dbdma_put_source_flags(chanid, buf, nbytes, flags) \ | ||
373 | _au1xxx_dbdma_put_source(chanid, buf, nbytes, flags) | ||
374 | #define put_source_flags(chanid, buf, nbytes, flags) \ | ||
375 | au1xxx_dbdma_put_source_flags(chanid, buf, nbytes, flags) | ||
376 | |||
377 | #define au1xxx_dbdma_put_dest(chanid, buf, nbytes) \ | ||
378 | _au1xxx_dbdma_put_dest(chanid, buf, nbytes, DDMA_FLAGS_IE) | ||
379 | #define au1xxx_dbdma_put_dest_flags(chanid, buf, nbytes, flags) \ | ||
380 | _au1xxx_dbdma_put_dest(chanid, buf, nbytes, flags) | ||
381 | #define put_dest_flags(chanid, buf, nbytes, flags) \ | ||
382 | au1xxx_dbdma_put_dest_flags(chanid, buf, nbytes, flags) | ||
383 | |||
384 | /* | 366 | /* |
385 | * Flags for the put_source/put_dest functions. | 367 | * Flags for the put_source/put_dest functions. |
386 | */ | 368 | */ |
diff --git a/arch/mips/include/asm/mach-au1x00/au1xxx_eth.h b/arch/mips/include/asm/mach-au1x00/au1xxx_eth.h new file mode 100644 index 000000000000..bae9b758fcde --- /dev/null +++ b/arch/mips/include/asm/mach-au1x00/au1xxx_eth.h | |||
@@ -0,0 +1,17 @@ | |||
1 | #ifndef __AU1X00_ETH_DATA_H | ||
2 | #define __AU1X00_ETH_DATA_H | ||
3 | |||
4 | /* Platform specific PHY configuration passed to the MAC driver */ | ||
5 | struct au1000_eth_platform_data { | ||
6 | int phy_static_config; | ||
7 | int phy_search_highest_addr; | ||
8 | int phy1_search_mac0; | ||
9 | int phy_addr; | ||
10 | int phy_busid; | ||
11 | int phy_irq; | ||
12 | }; | ||
13 | |||
14 | void __init au1xxx_override_eth_cfg(unsigned port, | ||
15 | struct au1000_eth_platform_data *eth_data); | ||
16 | |||
17 | #endif /* __AU1X00_ETH_DATA_H */ | ||
diff --git a/arch/mips/include/asm/mach-au1x00/gpio-au1000.h b/arch/mips/include/asm/mach-au1x00/gpio-au1000.h index 91595fa89034..62d2f136d941 100644 --- a/arch/mips/include/asm/mach-au1x00/gpio-au1000.h +++ b/arch/mips/include/asm/mach-au1x00/gpio-au1000.h | |||
@@ -35,15 +35,13 @@ static inline int au1000_gpio2_to_irq(int gpio) | |||
35 | return -ENXIO; | 35 | return -ENXIO; |
36 | } | 36 | } |
37 | 37 | ||
38 | #ifdef CONFIG_SOC_AU1000 | ||
39 | static inline int au1000_irq_to_gpio(int irq) | 38 | static inline int au1000_irq_to_gpio(int irq) |
40 | { | 39 | { |
41 | if ((irq >= AU1000_GPIO_0) && (irq <= AU1000_GPIO_31)) | 40 | if ((irq >= AU1000_GPIO0_INT) && (irq <= AU1000_GPIO31_INT)) |
42 | return ALCHEMY_GPIO1_BASE + (irq - AU1000_GPIO_0) + 0; | 41 | return ALCHEMY_GPIO1_BASE + (irq - AU1000_GPIO0_INT) + 0; |
43 | 42 | ||
44 | return -ENXIO; | 43 | return -ENXIO; |
45 | } | 44 | } |
46 | #endif | ||
47 | 45 | ||
48 | static inline int au1500_gpio1_to_irq(int gpio) | 46 | static inline int au1500_gpio1_to_irq(int gpio) |
49 | { | 47 | { |
@@ -71,27 +69,25 @@ static inline int au1500_gpio2_to_irq(int gpio) | |||
71 | return -ENXIO; | 69 | return -ENXIO; |
72 | } | 70 | } |
73 | 71 | ||
74 | #ifdef CONFIG_SOC_AU1500 | ||
75 | static inline int au1500_irq_to_gpio(int irq) | 72 | static inline int au1500_irq_to_gpio(int irq) |
76 | { | 73 | { |
77 | switch (irq) { | 74 | switch (irq) { |
78 | case AU1000_GPIO_0 ... AU1000_GPIO_15: | 75 | case AU1500_GPIO0_INT ... AU1500_GPIO15_INT: |
79 | case AU1500_GPIO_20: | 76 | case AU1500_GPIO20_INT: |
80 | case AU1500_GPIO_23 ... AU1500_GPIO_28: | 77 | case AU1500_GPIO23_INT ... AU1500_GPIO28_INT: |
81 | return ALCHEMY_GPIO1_BASE + (irq - AU1000_GPIO_0) + 0; | 78 | return ALCHEMY_GPIO1_BASE + (irq - AU1500_GPIO0_INT) + 0; |
82 | case AU1500_GPIO_200 ... AU1500_GPIO_203: | 79 | case AU1500_GPIO200_INT ... AU1500_GPIO203_INT: |
83 | return ALCHEMY_GPIO2_BASE + (irq - AU1500_GPIO_200) + 0; | 80 | return ALCHEMY_GPIO2_BASE + (irq - AU1500_GPIO200_INT) + 0; |
84 | case AU1500_GPIO_204 ... AU1500_GPIO_205: | 81 | case AU1500_GPIO204_INT ... AU1500_GPIO205_INT: |
85 | return ALCHEMY_GPIO2_BASE + (irq - AU1500_GPIO_204) + 4; | 82 | return ALCHEMY_GPIO2_BASE + (irq - AU1500_GPIO204_INT) + 4; |
86 | case AU1500_GPIO_206 ... AU1500_GPIO_207: | 83 | case AU1500_GPIO206_INT ... AU1500_GPIO207_INT: |
87 | return ALCHEMY_GPIO2_BASE + (irq - AU1500_GPIO_206) + 6; | 84 | return ALCHEMY_GPIO2_BASE + (irq - AU1500_GPIO206_INT) + 6; |
88 | case AU1500_GPIO_208_215: | 85 | case AU1500_GPIO208_215_INT: |
89 | return ALCHEMY_GPIO2_BASE + 8; | 86 | return ALCHEMY_GPIO2_BASE + 8; |
90 | } | 87 | } |
91 | 88 | ||
92 | return -ENXIO; | 89 | return -ENXIO; |
93 | } | 90 | } |
94 | #endif | ||
95 | 91 | ||
96 | static inline int au1100_gpio1_to_irq(int gpio) | 92 | static inline int au1100_gpio1_to_irq(int gpio) |
97 | { | 93 | { |
@@ -108,19 +104,17 @@ static inline int au1100_gpio2_to_irq(int gpio) | |||
108 | return -ENXIO; | 104 | return -ENXIO; |
109 | } | 105 | } |
110 | 106 | ||
111 | #ifdef CONFIG_SOC_AU1100 | ||
112 | static inline int au1100_irq_to_gpio(int irq) | 107 | static inline int au1100_irq_to_gpio(int irq) |
113 | { | 108 | { |
114 | switch (irq) { | 109 | switch (irq) { |
115 | case AU1000_GPIO_0 ... AU1000_GPIO_31: | 110 | case AU1100_GPIO0_INT ... AU1100_GPIO31_INT: |
116 | return ALCHEMY_GPIO1_BASE + (irq - AU1000_GPIO_0) + 0; | 111 | return ALCHEMY_GPIO1_BASE + (irq - AU1100_GPIO0_INT) + 0; |
117 | case AU1100_GPIO_208_215: | 112 | case AU1100_GPIO208_215_INT: |
118 | return ALCHEMY_GPIO2_BASE + 8; | 113 | return ALCHEMY_GPIO2_BASE + 8; |
119 | } | 114 | } |
120 | 115 | ||
121 | return -ENXIO; | 116 | return -ENXIO; |
122 | } | 117 | } |
123 | #endif | ||
124 | 118 | ||
125 | static inline int au1550_gpio1_to_irq(int gpio) | 119 | static inline int au1550_gpio1_to_irq(int gpio) |
126 | { | 120 | { |
@@ -149,24 +143,22 @@ static inline int au1550_gpio2_to_irq(int gpio) | |||
149 | return -ENXIO; | 143 | return -ENXIO; |
150 | } | 144 | } |
151 | 145 | ||
152 | #ifdef CONFIG_SOC_AU1550 | ||
153 | static inline int au1550_irq_to_gpio(int irq) | 146 | static inline int au1550_irq_to_gpio(int irq) |
154 | { | 147 | { |
155 | switch (irq) { | 148 | switch (irq) { |
156 | case AU1000_GPIO_0 ... AU1000_GPIO_15: | 149 | case AU1550_GPIO0_INT ... AU1550_GPIO15_INT: |
157 | return ALCHEMY_GPIO1_BASE + (irq - AU1000_GPIO_0) + 0; | 150 | return ALCHEMY_GPIO1_BASE + (irq - AU1550_GPIO0_INT) + 0; |
158 | case AU1550_GPIO_200: | 151 | case AU1550_GPIO200_INT: |
159 | case AU1500_GPIO_201_205: | 152 | case AU1550_GPIO201_205_INT: |
160 | return ALCHEMY_GPIO2_BASE + (irq - AU1550_GPIO_200) + 0; | 153 | return ALCHEMY_GPIO2_BASE + (irq - AU1550_GPIO200_INT) + 0; |
161 | case AU1500_GPIO_16 ... AU1500_GPIO_28: | 154 | case AU1550_GPIO16_INT ... AU1550_GPIO28_INT: |
162 | return ALCHEMY_GPIO1_BASE + (irq - AU1500_GPIO_16) + 16; | 155 | return ALCHEMY_GPIO1_BASE + (irq - AU1550_GPIO16_INT) + 16; |
163 | case AU1500_GPIO_206 ... AU1500_GPIO_208_218: | 156 | case AU1550_GPIO206_INT ... AU1550_GPIO208_215_INT: |
164 | return ALCHEMY_GPIO2_BASE + (irq - AU1500_GPIO_206) + 6; | 157 | return ALCHEMY_GPIO2_BASE + (irq - AU1550_GPIO206_INT) + 6; |
165 | } | 158 | } |
166 | 159 | ||
167 | return -ENXIO; | 160 | return -ENXIO; |
168 | } | 161 | } |
169 | #endif | ||
170 | 162 | ||
171 | static inline int au1200_gpio1_to_irq(int gpio) | 163 | static inline int au1200_gpio1_to_irq(int gpio) |
172 | { | 164 | { |
@@ -187,23 +179,21 @@ static inline int au1200_gpio2_to_irq(int gpio) | |||
187 | return -ENXIO; | 179 | return -ENXIO; |
188 | } | 180 | } |
189 | 181 | ||
190 | #ifdef CONFIG_SOC_AU1200 | ||
191 | static inline int au1200_irq_to_gpio(int irq) | 182 | static inline int au1200_irq_to_gpio(int irq) |
192 | { | 183 | { |
193 | switch (irq) { | 184 | switch (irq) { |
194 | case AU1000_GPIO_0 ... AU1000_GPIO_31: | 185 | case AU1200_GPIO0_INT ... AU1200_GPIO31_INT: |
195 | return ALCHEMY_GPIO1_BASE + (irq - AU1000_GPIO_0) + 0; | 186 | return ALCHEMY_GPIO1_BASE + (irq - AU1200_GPIO0_INT) + 0; |
196 | case AU1200_GPIO_200 ... AU1200_GPIO_202: | 187 | case AU1200_GPIO200_INT ... AU1200_GPIO202_INT: |
197 | return ALCHEMY_GPIO2_BASE + (irq - AU1200_GPIO_200) + 0; | 188 | return ALCHEMY_GPIO2_BASE + (irq - AU1200_GPIO200_INT) + 0; |
198 | case AU1200_GPIO_203: | 189 | case AU1200_GPIO203_INT: |
199 | return ALCHEMY_GPIO2_BASE + 3; | 190 | return ALCHEMY_GPIO2_BASE + 3; |
200 | case AU1200_GPIO_204 ... AU1200_GPIO_208_215: | 191 | case AU1200_GPIO204_INT ... AU1200_GPIO208_215_INT: |
201 | return ALCHEMY_GPIO2_BASE + (irq - AU1200_GPIO_204) + 4; | 192 | return ALCHEMY_GPIO2_BASE + (irq - AU1200_GPIO204_INT) + 4; |
202 | } | 193 | } |
203 | 194 | ||
204 | return -ENXIO; | 195 | return -ENXIO; |
205 | } | 196 | } |
206 | #endif | ||
207 | 197 | ||
208 | /* | 198 | /* |
209 | * GPIO1 block macros for common linux gpio functions. | 199 | * GPIO1 block macros for common linux gpio functions. |
@@ -246,19 +236,19 @@ static inline int alchemy_gpio1_is_valid(int gpio) | |||
246 | 236 | ||
247 | static inline int alchemy_gpio1_to_irq(int gpio) | 237 | static inline int alchemy_gpio1_to_irq(int gpio) |
248 | { | 238 | { |
249 | #if defined(CONFIG_SOC_AU1000) | 239 | switch (alchemy_get_cputype()) { |
250 | return au1000_gpio1_to_irq(gpio); | 240 | case ALCHEMY_CPU_AU1000: |
251 | #elif defined(CONFIG_SOC_AU1100) | 241 | return au1000_gpio1_to_irq(gpio); |
252 | return au1100_gpio1_to_irq(gpio); | 242 | case ALCHEMY_CPU_AU1100: |
253 | #elif defined(CONFIG_SOC_AU1500) | 243 | return au1100_gpio1_to_irq(gpio); |
254 | return au1500_gpio1_to_irq(gpio); | 244 | case ALCHEMY_CPU_AU1500: |
255 | #elif defined(CONFIG_SOC_AU1550) | 245 | return au1500_gpio1_to_irq(gpio); |
256 | return au1550_gpio1_to_irq(gpio); | 246 | case ALCHEMY_CPU_AU1550: |
257 | #elif defined(CONFIG_SOC_AU1200) | 247 | return au1550_gpio1_to_irq(gpio); |
258 | return au1200_gpio1_to_irq(gpio); | 248 | case ALCHEMY_CPU_AU1200: |
259 | #else | 249 | return au1200_gpio1_to_irq(gpio); |
250 | } | ||
260 | return -ENXIO; | 251 | return -ENXIO; |
261 | #endif | ||
262 | } | 252 | } |
263 | 253 | ||
264 | /* | 254 | /* |
@@ -316,19 +306,19 @@ static inline int alchemy_gpio2_is_valid(int gpio) | |||
316 | 306 | ||
317 | static inline int alchemy_gpio2_to_irq(int gpio) | 307 | static inline int alchemy_gpio2_to_irq(int gpio) |
318 | { | 308 | { |
319 | #if defined(CONFIG_SOC_AU1000) | 309 | switch (alchemy_get_cputype()) { |
320 | return au1000_gpio2_to_irq(gpio); | 310 | case ALCHEMY_CPU_AU1000: |
321 | #elif defined(CONFIG_SOC_AU1100) | 311 | return au1000_gpio2_to_irq(gpio); |
322 | return au1100_gpio2_to_irq(gpio); | 312 | case ALCHEMY_CPU_AU1100: |
323 | #elif defined(CONFIG_SOC_AU1500) | 313 | return au1100_gpio2_to_irq(gpio); |
324 | return au1500_gpio2_to_irq(gpio); | 314 | case ALCHEMY_CPU_AU1500: |
325 | #elif defined(CONFIG_SOC_AU1550) | 315 | return au1500_gpio2_to_irq(gpio); |
326 | return au1550_gpio2_to_irq(gpio); | 316 | case ALCHEMY_CPU_AU1550: |
327 | #elif defined(CONFIG_SOC_AU1200) | 317 | return au1550_gpio2_to_irq(gpio); |
328 | return au1200_gpio2_to_irq(gpio); | 318 | case ALCHEMY_CPU_AU1200: |
329 | #else | 319 | return au1200_gpio2_to_irq(gpio); |
320 | } | ||
330 | return -ENXIO; | 321 | return -ENXIO; |
331 | #endif | ||
332 | } | 322 | } |
333 | 323 | ||
334 | /**********************************************************************/ | 324 | /**********************************************************************/ |
@@ -384,10 +374,13 @@ static inline void alchemy_gpio2_enable_int(int gpio2) | |||
384 | 374 | ||
385 | gpio2 -= ALCHEMY_GPIO2_BASE; | 375 | gpio2 -= ALCHEMY_GPIO2_BASE; |
386 | 376 | ||
387 | #if defined(CONFIG_SOC_AU1100) || defined(CONFIG_SOC_AU1500) | ||
388 | /* Au1100/Au1500 have GPIO208-215 enable bits at 0..7 */ | 377 | /* Au1100/Au1500 have GPIO208-215 enable bits at 0..7 */ |
389 | gpio2 -= 8; | 378 | switch (alchemy_get_cputype()) { |
390 | #endif | 379 | case ALCHEMY_CPU_AU1100: |
380 | case ALCHEMY_CPU_AU1500: | ||
381 | gpio2 -= 8; | ||
382 | } | ||
383 | |||
391 | local_irq_save(flags); | 384 | local_irq_save(flags); |
392 | __alchemy_gpio2_mod_int(gpio2, 1); | 385 | __alchemy_gpio2_mod_int(gpio2, 1); |
393 | local_irq_restore(flags); | 386 | local_irq_restore(flags); |
@@ -405,10 +398,13 @@ static inline void alchemy_gpio2_disable_int(int gpio2) | |||
405 | 398 | ||
406 | gpio2 -= ALCHEMY_GPIO2_BASE; | 399 | gpio2 -= ALCHEMY_GPIO2_BASE; |
407 | 400 | ||
408 | #if defined(CONFIG_SOC_AU1100) || defined(CONFIG_SOC_AU1500) | ||
409 | /* Au1100/Au1500 have GPIO208-215 enable bits at 0..7 */ | 401 | /* Au1100/Au1500 have GPIO208-215 enable bits at 0..7 */ |
410 | gpio2 -= 8; | 402 | switch (alchemy_get_cputype()) { |
411 | #endif | 403 | case ALCHEMY_CPU_AU1100: |
404 | case ALCHEMY_CPU_AU1500: | ||
405 | gpio2 -= 8; | ||
406 | } | ||
407 | |||
412 | local_irq_save(flags); | 408 | local_irq_save(flags); |
413 | __alchemy_gpio2_mod_int(gpio2, 0); | 409 | __alchemy_gpio2_mod_int(gpio2, 0); |
414 | local_irq_restore(flags); | 410 | local_irq_restore(flags); |
@@ -494,19 +490,19 @@ static inline int alchemy_gpio_to_irq(int gpio) | |||
494 | 490 | ||
495 | static inline int alchemy_irq_to_gpio(int irq) | 491 | static inline int alchemy_irq_to_gpio(int irq) |
496 | { | 492 | { |
497 | #if defined(CONFIG_SOC_AU1000) | 493 | switch (alchemy_get_cputype()) { |
498 | return au1000_irq_to_gpio(irq); | 494 | case ALCHEMY_CPU_AU1000: |
499 | #elif defined(CONFIG_SOC_AU1100) | 495 | return au1000_irq_to_gpio(irq); |
500 | return au1100_irq_to_gpio(irq); | 496 | case ALCHEMY_CPU_AU1100: |
501 | #elif defined(CONFIG_SOC_AU1500) | 497 | return au1100_irq_to_gpio(irq); |
502 | return au1500_irq_to_gpio(irq); | 498 | case ALCHEMY_CPU_AU1500: |
503 | #elif defined(CONFIG_SOC_AU1550) | 499 | return au1500_irq_to_gpio(irq); |
504 | return au1550_irq_to_gpio(irq); | 500 | case ALCHEMY_CPU_AU1550: |
505 | #elif defined(CONFIG_SOC_AU1200) | 501 | return au1550_irq_to_gpio(irq); |
506 | return au1200_irq_to_gpio(irq); | 502 | case ALCHEMY_CPU_AU1200: |
507 | #else | 503 | return au1200_irq_to_gpio(irq); |
504 | } | ||
508 | return -ENXIO; | 505 | return -ENXIO; |
509 | #endif | ||
510 | } | 506 | } |
511 | 507 | ||
512 | /**********************************************************************/ | 508 | /**********************************************************************/ |
diff --git a/arch/mips/include/asm/mach-au1x00/gpio.h b/arch/mips/include/asm/mach-au1x00/gpio.h index f9b7d41c659a..c3f60cdc3203 100644 --- a/arch/mips/include/asm/mach-au1x00/gpio.h +++ b/arch/mips/include/asm/mach-au1x00/gpio.h | |||
@@ -1,7 +1,7 @@ | |||
1 | #ifndef _ALCHEMY_GPIO_H_ | 1 | #ifndef _ALCHEMY_GPIO_H_ |
2 | #define _ALCHEMY_GPIO_H_ | 2 | #define _ALCHEMY_GPIO_H_ |
3 | 3 | ||
4 | #if defined(CONFIG_ALCHEMY_GPIO_AU1000) | 4 | #if defined(CONFIG_ALCHEMY_GPIOINT_AU1000) |
5 | 5 | ||
6 | #include <asm/mach-au1x00/gpio-au1000.h> | 6 | #include <asm/mach-au1x00/gpio-au1000.h> |
7 | 7 | ||
diff --git a/arch/mips/include/asm/mach-au1x00/ioremap.h b/arch/mips/include/asm/mach-au1x00/ioremap.h index 364cea2dc71f..75a94ad3ac91 100644 --- a/arch/mips/include/asm/mach-au1x00/ioremap.h +++ b/arch/mips/include/asm/mach-au1x00/ioremap.h | |||
@@ -11,7 +11,7 @@ | |||
11 | 11 | ||
12 | #include <linux/types.h> | 12 | #include <linux/types.h> |
13 | 13 | ||
14 | #ifdef CONFIG_64BIT_PHYS_ADDR | 14 | #if defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_PCI) |
15 | extern phys_t __fixup_bigphys_addr(phys_t, phys_t); | 15 | extern phys_t __fixup_bigphys_addr(phys_t, phys_t); |
16 | #else | 16 | #else |
17 | static inline phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size) | 17 | static inline phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size) |
diff --git a/arch/mips/include/asm/mach-au1x00/prom.h b/arch/mips/include/asm/mach-au1x00/prom.h index e38715577c51..4c0e09cf1735 100644 --- a/arch/mips/include/asm/mach-au1x00/prom.h +++ b/arch/mips/include/asm/mach-au1x00/prom.h | |||
@@ -6,7 +6,6 @@ extern char **prom_argv; | |||
6 | extern char **prom_envp; | 6 | extern char **prom_envp; |
7 | 7 | ||
8 | extern void prom_init_cmdline(void); | 8 | extern void prom_init_cmdline(void); |
9 | extern char *prom_getcmdline(void); | ||
10 | extern char *prom_getenv(char *envname); | 9 | extern char *prom_getenv(char *envname); |
11 | extern int prom_get_ethernet_addr(char *ethernet_addr); | 10 | extern int prom_get_ethernet_addr(char *ethernet_addr); |
12 | 11 | ||
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h index b12c4aca2cc9..96a2391ad85b 100644 --- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h | |||
@@ -85,6 +85,7 @@ enum bcm63xx_regs_set { | |||
85 | RSET_TIMER, | 85 | RSET_TIMER, |
86 | RSET_WDT, | 86 | RSET_WDT, |
87 | RSET_UART0, | 87 | RSET_UART0, |
88 | RSET_UART1, | ||
88 | RSET_GPIO, | 89 | RSET_GPIO, |
89 | RSET_SPI, | 90 | RSET_SPI, |
90 | RSET_UDC0, | 91 | RSET_UDC0, |
@@ -123,6 +124,7 @@ enum bcm63xx_regs_set { | |||
123 | #define BCM_6338_TIMER_BASE (0xfffe0200) | 124 | #define BCM_6338_TIMER_BASE (0xfffe0200) |
124 | #define BCM_6338_WDT_BASE (0xfffe021c) | 125 | #define BCM_6338_WDT_BASE (0xfffe021c) |
125 | #define BCM_6338_UART0_BASE (0xfffe0300) | 126 | #define BCM_6338_UART0_BASE (0xfffe0300) |
127 | #define BCM_6338_UART1_BASE (0xdeadbeef) | ||
126 | #define BCM_6338_GPIO_BASE (0xfffe0400) | 128 | #define BCM_6338_GPIO_BASE (0xfffe0400) |
127 | #define BCM_6338_SPI_BASE (0xfffe0c00) | 129 | #define BCM_6338_SPI_BASE (0xfffe0c00) |
128 | #define BCM_6338_UDC0_BASE (0xdeadbeef) | 130 | #define BCM_6338_UDC0_BASE (0xdeadbeef) |
@@ -153,6 +155,7 @@ enum bcm63xx_regs_set { | |||
153 | #define BCM_6345_TIMER_BASE (0xfffe0200) | 155 | #define BCM_6345_TIMER_BASE (0xfffe0200) |
154 | #define BCM_6345_WDT_BASE (0xfffe021c) | 156 | #define BCM_6345_WDT_BASE (0xfffe021c) |
155 | #define BCM_6345_UART0_BASE (0xfffe0300) | 157 | #define BCM_6345_UART0_BASE (0xfffe0300) |
158 | #define BCM_6345_UART1_BASE (0xdeadbeef) | ||
156 | #define BCM_6345_GPIO_BASE (0xfffe0400) | 159 | #define BCM_6345_GPIO_BASE (0xfffe0400) |
157 | #define BCM_6345_SPI_BASE (0xdeadbeef) | 160 | #define BCM_6345_SPI_BASE (0xdeadbeef) |
158 | #define BCM_6345_UDC0_BASE (0xdeadbeef) | 161 | #define BCM_6345_UDC0_BASE (0xdeadbeef) |
@@ -182,6 +185,7 @@ enum bcm63xx_regs_set { | |||
182 | #define BCM_6348_TIMER_BASE (0xfffe0200) | 185 | #define BCM_6348_TIMER_BASE (0xfffe0200) |
183 | #define BCM_6348_WDT_BASE (0xfffe021c) | 186 | #define BCM_6348_WDT_BASE (0xfffe021c) |
184 | #define BCM_6348_UART0_BASE (0xfffe0300) | 187 | #define BCM_6348_UART0_BASE (0xfffe0300) |
188 | #define BCM_6348_UART1_BASE (0xdeadbeef) | ||
185 | #define BCM_6348_GPIO_BASE (0xfffe0400) | 189 | #define BCM_6348_GPIO_BASE (0xfffe0400) |
186 | #define BCM_6348_SPI_BASE (0xfffe0c00) | 190 | #define BCM_6348_SPI_BASE (0xfffe0c00) |
187 | #define BCM_6348_UDC0_BASE (0xfffe1000) | 191 | #define BCM_6348_UDC0_BASE (0xfffe1000) |
@@ -208,6 +212,7 @@ enum bcm63xx_regs_set { | |||
208 | #define BCM_6358_TIMER_BASE (0xfffe0040) | 212 | #define BCM_6358_TIMER_BASE (0xfffe0040) |
209 | #define BCM_6358_WDT_BASE (0xfffe005c) | 213 | #define BCM_6358_WDT_BASE (0xfffe005c) |
210 | #define BCM_6358_UART0_BASE (0xfffe0100) | 214 | #define BCM_6358_UART0_BASE (0xfffe0100) |
215 | #define BCM_6358_UART1_BASE (0xfffe0120) | ||
211 | #define BCM_6358_GPIO_BASE (0xfffe0080) | 216 | #define BCM_6358_GPIO_BASE (0xfffe0080) |
212 | #define BCM_6358_SPI_BASE (0xdeadbeef) | 217 | #define BCM_6358_SPI_BASE (0xdeadbeef) |
213 | #define BCM_6358_UDC0_BASE (0xfffe0800) | 218 | #define BCM_6358_UDC0_BASE (0xfffe0800) |
@@ -246,6 +251,8 @@ static inline unsigned long bcm63xx_regset_address(enum bcm63xx_regs_set set) | |||
246 | return BCM_6338_WDT_BASE; | 251 | return BCM_6338_WDT_BASE; |
247 | case RSET_UART0: | 252 | case RSET_UART0: |
248 | return BCM_6338_UART0_BASE; | 253 | return BCM_6338_UART0_BASE; |
254 | case RSET_UART1: | ||
255 | return BCM_6338_UART1_BASE; | ||
249 | case RSET_GPIO: | 256 | case RSET_GPIO: |
250 | return BCM_6338_GPIO_BASE; | 257 | return BCM_6338_GPIO_BASE; |
251 | case RSET_SPI: | 258 | case RSET_SPI: |
@@ -292,6 +299,8 @@ static inline unsigned long bcm63xx_regset_address(enum bcm63xx_regs_set set) | |||
292 | return BCM_6345_WDT_BASE; | 299 | return BCM_6345_WDT_BASE; |
293 | case RSET_UART0: | 300 | case RSET_UART0: |
294 | return BCM_6345_UART0_BASE; | 301 | return BCM_6345_UART0_BASE; |
302 | case RSET_UART1: | ||
303 | return BCM_6345_UART1_BASE; | ||
295 | case RSET_GPIO: | 304 | case RSET_GPIO: |
296 | return BCM_6345_GPIO_BASE; | 305 | return BCM_6345_GPIO_BASE; |
297 | case RSET_SPI: | 306 | case RSET_SPI: |
@@ -338,6 +347,8 @@ static inline unsigned long bcm63xx_regset_address(enum bcm63xx_regs_set set) | |||
338 | return BCM_6348_WDT_BASE; | 347 | return BCM_6348_WDT_BASE; |
339 | case RSET_UART0: | 348 | case RSET_UART0: |
340 | return BCM_6348_UART0_BASE; | 349 | return BCM_6348_UART0_BASE; |
350 | case RSET_UART1: | ||
351 | return BCM_6348_UART1_BASE; | ||
341 | case RSET_GPIO: | 352 | case RSET_GPIO: |
342 | return BCM_6348_GPIO_BASE; | 353 | return BCM_6348_GPIO_BASE; |
343 | case RSET_SPI: | 354 | case RSET_SPI: |
@@ -384,6 +395,8 @@ static inline unsigned long bcm63xx_regset_address(enum bcm63xx_regs_set set) | |||
384 | return BCM_6358_WDT_BASE; | 395 | return BCM_6358_WDT_BASE; |
385 | case RSET_UART0: | 396 | case RSET_UART0: |
386 | return BCM_6358_UART0_BASE; | 397 | return BCM_6358_UART0_BASE; |
398 | case RSET_UART1: | ||
399 | return BCM_6358_UART1_BASE; | ||
387 | case RSET_GPIO: | 400 | case RSET_GPIO: |
388 | return BCM_6358_GPIO_BASE; | 401 | return BCM_6358_GPIO_BASE; |
389 | case RSET_SPI: | 402 | case RSET_SPI: |
@@ -429,6 +442,7 @@ static inline unsigned long bcm63xx_regset_address(enum bcm63xx_regs_set set) | |||
429 | enum bcm63xx_irq { | 442 | enum bcm63xx_irq { |
430 | IRQ_TIMER = 0, | 443 | IRQ_TIMER = 0, |
431 | IRQ_UART0, | 444 | IRQ_UART0, |
445 | IRQ_UART1, | ||
432 | IRQ_DSL, | 446 | IRQ_DSL, |
433 | IRQ_ENET0, | 447 | IRQ_ENET0, |
434 | IRQ_ENET1, | 448 | IRQ_ENET1, |
@@ -510,6 +524,7 @@ enum bcm63xx_irq { | |||
510 | */ | 524 | */ |
511 | #define BCM_6358_TIMER_IRQ (IRQ_INTERNAL_BASE + 0) | 525 | #define BCM_6358_TIMER_IRQ (IRQ_INTERNAL_BASE + 0) |
512 | #define BCM_6358_UART0_IRQ (IRQ_INTERNAL_BASE + 2) | 526 | #define BCM_6358_UART0_IRQ (IRQ_INTERNAL_BASE + 2) |
527 | #define BCM_6358_UART1_IRQ (IRQ_INTERNAL_BASE + 3) | ||
513 | #define BCM_6358_OHCI0_IRQ (IRQ_INTERNAL_BASE + 5) | 528 | #define BCM_6358_OHCI0_IRQ (IRQ_INTERNAL_BASE + 5) |
514 | #define BCM_6358_ENET1_IRQ (IRQ_INTERNAL_BASE + 6) | 529 | #define BCM_6358_ENET1_IRQ (IRQ_INTERNAL_BASE + 6) |
515 | #define BCM_6358_ENET0_IRQ (IRQ_INTERNAL_BASE + 8) | 530 | #define BCM_6358_ENET0_IRQ (IRQ_INTERNAL_BASE + 8) |
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_uart.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_uart.h new file mode 100644 index 000000000000..23c705baf171 --- /dev/null +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_uart.h | |||
@@ -0,0 +1,6 @@ | |||
1 | #ifndef BCM63XX_DEV_UART_H_ | ||
2 | #define BCM63XX_DEV_UART_H_ | ||
3 | |||
4 | int bcm63xx_uart_register(unsigned int id); | ||
5 | |||
6 | #endif /* BCM63XX_DEV_UART_H_ */ | ||
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h index 76a0b7216af5..43d4da0b1e9f 100644 --- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h | |||
@@ -10,6 +10,10 @@ static inline unsigned long bcm63xx_gpio_count(void) | |||
10 | switch (bcm63xx_get_cpu_id()) { | 10 | switch (bcm63xx_get_cpu_id()) { |
11 | case BCM6358_CPU_ID: | 11 | case BCM6358_CPU_ID: |
12 | return 40; | 12 | return 40; |
13 | case BCM6338_CPU_ID: | ||
14 | return 8; | ||
15 | case BCM6345_CPU_ID: | ||
16 | return 16; | ||
13 | case BCM6348_CPU_ID: | 17 | case BCM6348_CPU_ID: |
14 | default: | 18 | default: |
15 | return 37; | 19 | return 37; |
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h index ed4ccec87dd4..85fd27509aac 100644 --- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h | |||
@@ -770,4 +770,3 @@ | |||
770 | #define DMIPSPLLCFG_N2_MASK (0x7 << DMIPSPLLCFG_N2_SHIFT) | 770 | #define DMIPSPLLCFG_N2_MASK (0x7 << DMIPSPLLCFG_N2_SHIFT) |
771 | 771 | ||
772 | #endif /* BCM63XX_REGS_H_ */ | 772 | #endif /* BCM63XX_REGS_H_ */ |
773 | |||
diff --git a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h index 6479090a4106..474daaa53497 100644 --- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h +++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h | |||
@@ -45,6 +45,8 @@ struct board_info { | |||
45 | unsigned int has_ohci0:1; | 45 | unsigned int has_ohci0:1; |
46 | unsigned int has_ehci0:1; | 46 | unsigned int has_ehci0:1; |
47 | unsigned int has_dsp:1; | 47 | unsigned int has_dsp:1; |
48 | unsigned int has_uart0:1; | ||
49 | unsigned int has_uart1:1; | ||
48 | 50 | ||
49 | /* ethernet config */ | 51 | /* ethernet config */ |
50 | struct bcm63xx_enet_platform_data enet0; | 52 | struct bcm63xx_enet_platform_data enet0; |
diff --git a/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h b/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h index 71742bac940d..f453c01d0672 100644 --- a/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h +++ b/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h | |||
@@ -24,7 +24,7 @@ | |||
24 | #define cpu_has_smartmips 0 | 24 | #define cpu_has_smartmips 0 |
25 | #define cpu_has_vtag_icache 0 | 25 | #define cpu_has_vtag_icache 0 |
26 | 26 | ||
27 | #if !defined(BCMCPU_RUNTIME_DETECT) && (defined(CONFIG_BCMCPU_IS_6348) || defined(CONFIG_CPU_IS_6338) || defined(CONFIG_CPU_IS_BCM6345)) | 27 | #if !defined(BCMCPU_RUNTIME_DETECT) && (defined(CONFIG_BCM63XX_CPU_6348) || defined(CONFIG_BCM63XX_CPU_6345) || defined(CONFIG_BCM63XX_CPU_6338)) |
28 | #define cpu_has_dc_aliases 0 | 28 | #define cpu_has_dc_aliases 0 |
29 | #endif | 29 | #endif |
30 | 30 | ||
diff --git a/arch/mips/include/asm/mach-cavium-octeon/cpu-feature-overrides.h b/arch/mips/include/asm/mach-cavium-octeon/cpu-feature-overrides.h index 425e708d4fb9..bbf054042395 100644 --- a/arch/mips/include/asm/mach-cavium-octeon/cpu-feature-overrides.h +++ b/arch/mips/include/asm/mach-cavium-octeon/cpu-feature-overrides.h | |||
@@ -58,6 +58,9 @@ | |||
58 | #define cpu_has_vint 0 | 58 | #define cpu_has_vint 0 |
59 | #define cpu_has_veic 0 | 59 | #define cpu_has_veic 0 |
60 | #define cpu_hwrena_impl_bits 0xc0000000 | 60 | #define cpu_hwrena_impl_bits 0xc0000000 |
61 | |||
62 | #define kernel_uses_smartmips_rixi (cpu_data[0].cputype == CPU_CAVIUM_OCTEON_PLUS) | ||
63 | |||
61 | #define ARCH_HAS_READ_CURRENT_TIMER 1 | 64 | #define ARCH_HAS_READ_CURRENT_TIMER 1 |
62 | #define ARCH_HAS_IRQ_PER_CPU 1 | 65 | #define ARCH_HAS_IRQ_PER_CPU 1 |
63 | #define ARCH_HAS_SPINLOCK_PREFETCH 1 | 66 | #define ARCH_HAS_SPINLOCK_PREFETCH 1 |
diff --git a/arch/mips/include/asm/mach-db1x00/bcsr.h b/arch/mips/include/asm/mach-db1x00/bcsr.h new file mode 100644 index 000000000000..618d2de02ed3 --- /dev/null +++ b/arch/mips/include/asm/mach-db1x00/bcsr.h | |||
@@ -0,0 +1,238 @@ | |||
1 | /* | ||
2 | * bcsr.h -- Db1xxx/Pb1xxx Devboard CPLD registers ("BCSR") abstraction. | ||
3 | * | ||
4 | * All Alchemy development boards (except, of course, the weird PB1000) | ||
5 | * have a few registers in a CPLD with standardised layout; they mostly | ||
6 | * only differ in base address and bit meanings in the RESETS and BOARD | ||
7 | * registers. | ||
8 | * | ||
9 | * All data taken from the official AMD board documentation sheets. | ||
10 | */ | ||
11 | |||
12 | #ifndef _DB1XXX_BCSR_H_ | ||
13 | #define _DB1XXX_BCSR_H_ | ||
14 | |||
15 | |||
16 | /* BCSR base addresses on various boards. BCSR base 2 refers to the | ||
17 | * physical address of the first HEXLEDS register, which is usually | ||
18 | * a variable offset from the WHOAMI register. | ||
19 | */ | ||
20 | |||
21 | /* DB1000, DB1100, DB1500, PB1100, PB1500 */ | ||
22 | #define DB1000_BCSR_PHYS_ADDR 0x0E000000 | ||
23 | #define DB1000_BCSR_HEXLED_OFS 0x01000000 | ||
24 | |||
25 | #define DB1550_BCSR_PHYS_ADDR 0x0F000000 | ||
26 | #define DB1550_BCSR_HEXLED_OFS 0x00400000 | ||
27 | |||
28 | #define PB1550_BCSR_PHYS_ADDR 0x0F000000 | ||
29 | #define PB1550_BCSR_HEXLED_OFS 0x00800000 | ||
30 | |||
31 | #define DB1200_BCSR_PHYS_ADDR 0x19800000 | ||
32 | #define DB1200_BCSR_HEXLED_OFS 0x00400000 | ||
33 | |||
34 | #define PB1200_BCSR_PHYS_ADDR 0x0D800000 | ||
35 | #define PB1200_BCSR_HEXLED_OFS 0x00400000 | ||
36 | |||
37 | |||
38 | enum bcsr_id { | ||
39 | /* BCSR base 1 */ | ||
40 | BCSR_WHOAMI = 0, | ||
41 | BCSR_STATUS, | ||
42 | BCSR_SWITCHES, | ||
43 | BCSR_RESETS, | ||
44 | BCSR_PCMCIA, | ||
45 | BCSR_BOARD, | ||
46 | BCSR_LEDS, | ||
47 | BCSR_SYSTEM, | ||
48 | /* Au1200/1300 based boards */ | ||
49 | BCSR_INTCLR, | ||
50 | BCSR_INTSET, | ||
51 | BCSR_MASKCLR, | ||
52 | BCSR_MASKSET, | ||
53 | BCSR_SIGSTAT, | ||
54 | BCSR_INTSTAT, | ||
55 | |||
56 | /* BCSR base 2 */ | ||
57 | BCSR_HEXLEDS, | ||
58 | BCSR_RSVD1, | ||
59 | BCSR_HEXCLEAR, | ||
60 | |||
61 | BCSR_CNT, | ||
62 | }; | ||
63 | |||
64 | /* register offsets, valid for all Db1xxx/Pb1xxx boards */ | ||
65 | #define BCSR_REG_WHOAMI 0x00 | ||
66 | #define BCSR_REG_STATUS 0x04 | ||
67 | #define BCSR_REG_SWITCHES 0x08 | ||
68 | #define BCSR_REG_RESETS 0x0c | ||
69 | #define BCSR_REG_PCMCIA 0x10 | ||
70 | #define BCSR_REG_BOARD 0x14 | ||
71 | #define BCSR_REG_LEDS 0x18 | ||
72 | #define BCSR_REG_SYSTEM 0x1c | ||
73 | /* Au1200/Au1300 based boards: CPLD IRQ muxer */ | ||
74 | #define BCSR_REG_INTCLR 0x20 | ||
75 | #define BCSR_REG_INTSET 0x24 | ||
76 | #define BCSR_REG_MASKCLR 0x28 | ||
77 | #define BCSR_REG_MASKSET 0x2c | ||
78 | #define BCSR_REG_SIGSTAT 0x30 | ||
79 | #define BCSR_REG_INTSTAT 0x34 | ||
80 | |||
81 | /* hexled control, offset from BCSR base 2 */ | ||
82 | #define BCSR_REG_HEXLEDS 0x00 | ||
83 | #define BCSR_REG_HEXCLEAR 0x08 | ||
84 | |||
85 | /* | ||
86 | * Register Bits and Pieces. | ||
87 | */ | ||
88 | #define BCSR_WHOAMI_DCID(x) ((x) & 0xf) | ||
89 | #define BCSR_WHOAMI_CPLD(x) (((x) >> 4) & 0xf) | ||
90 | #define BCSR_WHOAMI_BOARD(x) (((x) >> 8) & 0xf) | ||
91 | |||
92 | /* register "WHOAMI" bits 11:8 identify the board */ | ||
93 | enum bcsr_whoami_boards { | ||
94 | BCSR_WHOAMI_PB1500 = 1, | ||
95 | BCSR_WHOAMI_PB1500R2, | ||
96 | BCSR_WHOAMI_PB1100, | ||
97 | BCSR_WHOAMI_DB1000, | ||
98 | BCSR_WHOAMI_DB1100, | ||
99 | BCSR_WHOAMI_DB1500, | ||
100 | BCSR_WHOAMI_DB1550, | ||
101 | BCSR_WHOAMI_PB1550_DDR, | ||
102 | BCSR_WHOAMI_PB1550 = BCSR_WHOAMI_PB1550_DDR, | ||
103 | BCSR_WHOAMI_PB1550_SDR, | ||
104 | BCSR_WHOAMI_PB1200_DDR1, | ||
105 | BCSR_WHOAMI_PB1200 = BCSR_WHOAMI_PB1200_DDR1, | ||
106 | BCSR_WHOAMI_PB1200_DDR2, | ||
107 | BCSR_WHOAMI_DB1200, | ||
108 | }; | ||
109 | |||
110 | /* STATUS reg. Unless otherwise noted, they're valid on all boards. | ||
111 | * PB1200 = DB1200. | ||
112 | */ | ||
113 | #define BCSR_STATUS_PC0VS 0x0003 | ||
114 | #define BCSR_STATUS_PC1VS 0x000C | ||
115 | #define BCSR_STATUS_PC0FI 0x0010 | ||
116 | #define BCSR_STATUS_PC1FI 0x0020 | ||
117 | #define BCSR_STATUS_PB1550_SWAPBOOT 0x0040 | ||
118 | #define BCSR_STATUS_SRAMWIDTH 0x0080 | ||
119 | #define BCSR_STATUS_FLASHBUSY 0x0100 | ||
120 | #define BCSR_STATUS_ROMBUSY 0x0400 | ||
121 | #define BCSR_STATUS_SD0WP 0x0400 /* DB1200 */ | ||
122 | #define BCSR_STATUS_SD1WP 0x0800 | ||
123 | #define BCSR_STATUS_USBOTGID 0x0800 /* PB/DB1550 */ | ||
124 | #define BCSR_STATUS_DB1000_SWAPBOOT 0x2000 | ||
125 | #define BCSR_STATUS_DB1200_SWAPBOOT 0x0040 /* DB1200 */ | ||
126 | #define BCSR_STATUS_IDECBLID 0x0200 /* DB1200 */ | ||
127 | #define BCSR_STATUS_DB1200_U0RXD 0x1000 /* DB1200 */ | ||
128 | #define BCSR_STATUS_DB1200_U1RXD 0x2000 /* DB1200 */ | ||
129 | #define BCSR_STATUS_FLASHDEN 0xC000 | ||
130 | #define BCSR_STATUS_DB1550_U0RXD 0x1000 /* DB1550 */ | ||
131 | #define BCSR_STATUS_DB1550_U3RXD 0x2000 /* DB1550 */ | ||
132 | #define BCSR_STATUS_PB1550_U0RXD 0x1000 /* PB1550 */ | ||
133 | #define BCSR_STATUS_PB1550_U1RXD 0x2000 /* PB1550 */ | ||
134 | #define BCSR_STATUS_PB1550_U3RXD 0x8000 /* PB1550 */ | ||
135 | |||
136 | |||
137 | /* DB/PB1000,1100,1500,1550 */ | ||
138 | #define BCSR_RESETS_PHY0 0x0001 | ||
139 | #define BCSR_RESETS_PHY1 0x0002 | ||
140 | #define BCSR_RESETS_DC 0x0004 | ||
141 | #define BCSR_RESETS_FIR_SEL 0x2000 | ||
142 | #define BCSR_RESETS_IRDA_MODE_MASK 0xC000 | ||
143 | #define BCSR_RESETS_IRDA_MODE_FULL 0x0000 | ||
144 | #define BCSR_RESETS_PB1550_WSCFSM 0x2000 | ||
145 | #define BCSR_RESETS_IRDA_MODE_OFF 0x4000 | ||
146 | #define BCSR_RESETS_IRDA_MODE_2_3 0x8000 | ||
147 | #define BCSR_RESETS_IRDA_MODE_1_3 0xC000 | ||
148 | #define BCSR_RESETS_DMAREQ 0x8000 /* PB1550 */ | ||
149 | |||
150 | #define BCSR_BOARD_PCIM66EN 0x0001 | ||
151 | #define BCSR_BOARD_SD0PWR 0x0040 | ||
152 | #define BCSR_BOARD_SD1PWR 0x0080 | ||
153 | #define BCSR_BOARD_PCIM33 0x0100 | ||
154 | #define BCSR_BOARD_PCIEXTARB 0x0200 | ||
155 | #define BCSR_BOARD_GPIO200RST 0x0400 | ||
156 | #define BCSR_BOARD_PCICLKOUT 0x0800 | ||
157 | #define BCSR_BOARD_PCICFG 0x1000 | ||
158 | #define BCSR_BOARD_SPISEL 0x4000 /* PB/DB1550 */ | ||
159 | #define BCSR_BOARD_SD0WP 0x4000 /* DB1100 */ | ||
160 | #define BCSR_BOARD_SD1WP 0x8000 /* DB1100 */ | ||
161 | |||
162 | |||
163 | /* DB/PB1200 */ | ||
164 | #define BCSR_RESETS_ETH 0x0001 | ||
165 | #define BCSR_RESETS_CAMERA 0x0002 | ||
166 | #define BCSR_RESETS_DC 0x0004 | ||
167 | #define BCSR_RESETS_IDE 0x0008 | ||
168 | #define BCSR_RESETS_TV 0x0010 /* DB1200 */ | ||
169 | /* Not resets but in the same register */ | ||
170 | #define BCSR_RESETS_PWMR1MUX 0x0800 /* DB1200 */ | ||
171 | #define BCSR_RESETS_PB1200_WSCFSM 0x0800 /* PB1200 */ | ||
172 | #define BCSR_RESETS_PSC0MUX 0x1000 | ||
173 | #define BCSR_RESETS_PSC1MUX 0x2000 | ||
174 | #define BCSR_RESETS_SPISEL 0x4000 | ||
175 | #define BCSR_RESETS_SD1MUX 0x8000 /* PB1200 */ | ||
176 | |||
177 | #define BCSR_BOARD_LCDVEE 0x0001 | ||
178 | #define BCSR_BOARD_LCDVDD 0x0002 | ||
179 | #define BCSR_BOARD_LCDBL 0x0004 | ||
180 | #define BCSR_BOARD_CAMSNAP 0x0010 | ||
181 | #define BCSR_BOARD_CAMPWR 0x0020 | ||
182 | #define BCSR_BOARD_SD0PWR 0x0040 | ||
183 | |||
184 | |||
185 | #define BCSR_SWITCHES_DIP 0x00FF | ||
186 | #define BCSR_SWITCHES_DIP_1 0x0080 | ||
187 | #define BCSR_SWITCHES_DIP_2 0x0040 | ||
188 | #define BCSR_SWITCHES_DIP_3 0x0020 | ||
189 | #define BCSR_SWITCHES_DIP_4 0x0010 | ||
190 | #define BCSR_SWITCHES_DIP_5 0x0008 | ||
191 | #define BCSR_SWITCHES_DIP_6 0x0004 | ||
192 | #define BCSR_SWITCHES_DIP_7 0x0002 | ||
193 | #define BCSR_SWITCHES_DIP_8 0x0001 | ||
194 | #define BCSR_SWITCHES_ROTARY 0x0F00 | ||
195 | |||
196 | |||
197 | #define BCSR_PCMCIA_PC0VPP 0x0003 | ||
198 | #define BCSR_PCMCIA_PC0VCC 0x000C | ||
199 | #define BCSR_PCMCIA_PC0DRVEN 0x0010 | ||
200 | #define BCSR_PCMCIA_PC0RST 0x0080 | ||
201 | #define BCSR_PCMCIA_PC1VPP 0x0300 | ||
202 | #define BCSR_PCMCIA_PC1VCC 0x0C00 | ||
203 | #define BCSR_PCMCIA_PC1DRVEN 0x1000 | ||
204 | #define BCSR_PCMCIA_PC1RST 0x8000 | ||
205 | |||
206 | |||
207 | #define BCSR_LEDS_DECIMALS 0x0003 | ||
208 | #define BCSR_LEDS_LED0 0x0100 | ||
209 | #define BCSR_LEDS_LED1 0x0200 | ||
210 | #define BCSR_LEDS_LED2 0x0400 | ||
211 | #define BCSR_LEDS_LED3 0x0800 | ||
212 | |||
213 | |||
214 | #define BCSR_SYSTEM_RESET 0x8000 /* clear to reset */ | ||
215 | #define BCSR_SYSTEM_PWROFF 0x4000 /* set to power off */ | ||
216 | #define BCSR_SYSTEM_VDDI 0x001F /* PB1xxx boards */ | ||
217 | |||
218 | |||
219 | |||
220 | |||
221 | /* initialize BCSR for a board. Provide the PHYSICAL addresses of both | ||
222 | * BCSR spaces. | ||
223 | */ | ||
224 | void __init bcsr_init(unsigned long bcsr1_phys, unsigned long bcsr2_phys); | ||
225 | |||
226 | /* read a board register */ | ||
227 | unsigned short bcsr_read(enum bcsr_id reg); | ||
228 | |||
229 | /* write to a board register */ | ||
230 | void bcsr_write(enum bcsr_id reg, unsigned short val); | ||
231 | |||
232 | /* modify a register. clear bits set in 'clr', set bits set in 'set' */ | ||
233 | void bcsr_mod(enum bcsr_id reg, unsigned short clr, unsigned short set); | ||
234 | |||
235 | /* install CPLD IRQ demuxer (DB1200/PB1200) */ | ||
236 | void __init bcsr_init_irq(int csc_start, int csc_end, int hook_irq); | ||
237 | |||
238 | #endif | ||
diff --git a/arch/mips/include/asm/mach-db1x00/db1200.h b/arch/mips/include/asm/mach-db1x00/db1200.h index 27f26102b1bb..3404248f5094 100644 --- a/arch/mips/include/asm/mach-db1x00/db1200.h +++ b/arch/mips/include/asm/mach-db1x00/db1200.h | |||
@@ -25,133 +25,9 @@ | |||
25 | #define __ASM_DB1200_H | 25 | #define __ASM_DB1200_H |
26 | 26 | ||
27 | #include <linux/types.h> | 27 | #include <linux/types.h> |
28 | #include <asm/mach-au1x00/au1000.h> | ||
28 | #include <asm/mach-au1x00/au1xxx_psc.h> | 29 | #include <asm/mach-au1x00/au1xxx_psc.h> |
29 | 30 | ||
30 | #define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX | ||
31 | #define DBDMA_AC97_RX_CHAN DSCR_CMD0_PSC1_RX | ||
32 | #define DBDMA_I2S_TX_CHAN DSCR_CMD0_PSC1_TX | ||
33 | #define DBDMA_I2S_RX_CHAN DSCR_CMD0_PSC1_RX | ||
34 | |||
35 | /* | ||
36 | * SPI and SMB are muxed on the DBAu1200 board. | ||
37 | * Refer to board documentation. | ||
38 | */ | ||
39 | #define SPI_PSC_BASE PSC0_BASE_ADDR | ||
40 | #define SMBUS_PSC_BASE PSC0_BASE_ADDR | ||
41 | /* | ||
42 | * AC'97 and I2S are muxed on the DBAu1200 board. | ||
43 | * Refer to board documentation. | ||
44 | */ | ||
45 | #define AC97_PSC_BASE PSC1_BASE_ADDR | ||
46 | #define I2S_PSC_BASE PSC1_BASE_ADDR | ||
47 | |||
48 | #define BCSR_KSEG1_ADDR 0xB9800000 | ||
49 | |||
50 | typedef volatile struct | ||
51 | { | ||
52 | /*00*/ u16 whoami; | ||
53 | u16 reserved0; | ||
54 | /*04*/ u16 status; | ||
55 | u16 reserved1; | ||
56 | /*08*/ u16 switches; | ||
57 | u16 reserved2; | ||
58 | /*0C*/ u16 resets; | ||
59 | u16 reserved3; | ||
60 | |||
61 | /*10*/ u16 pcmcia; | ||
62 | u16 reserved4; | ||
63 | /*14*/ u16 board; | ||
64 | u16 reserved5; | ||
65 | /*18*/ u16 disk_leds; | ||
66 | u16 reserved6; | ||
67 | /*1C*/ u16 system; | ||
68 | u16 reserved7; | ||
69 | |||
70 | /*20*/ u16 intclr; | ||
71 | u16 reserved8; | ||
72 | /*24*/ u16 intset; | ||
73 | u16 reserved9; | ||
74 | /*28*/ u16 intclr_mask; | ||
75 | u16 reserved10; | ||
76 | /*2C*/ u16 intset_mask; | ||
77 | u16 reserved11; | ||
78 | |||
79 | /*30*/ u16 sig_status; | ||
80 | u16 reserved12; | ||
81 | /*34*/ u16 int_status; | ||
82 | u16 reserved13; | ||
83 | /*38*/ u16 reserved14; | ||
84 | u16 reserved15; | ||
85 | /*3C*/ u16 reserved16; | ||
86 | u16 reserved17; | ||
87 | |||
88 | } BCSR; | ||
89 | |||
90 | static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; | ||
91 | |||
92 | /* | ||
93 | * Register bit definitions for the BCSRs | ||
94 | */ | ||
95 | #define BCSR_WHOAMI_DCID 0x000F | ||
96 | #define BCSR_WHOAMI_CPLD 0x00F0 | ||
97 | #define BCSR_WHOAMI_BOARD 0x0F00 | ||
98 | |||
99 | #define BCSR_STATUS_PCMCIA0VS 0x0003 | ||
100 | #define BCSR_STATUS_PCMCIA1VS 0x000C | ||
101 | #define BCSR_STATUS_SWAPBOOT 0x0040 | ||
102 | #define BCSR_STATUS_FLASHBUSY 0x0100 | ||
103 | #define BCSR_STATUS_IDECBLID 0x0200 | ||
104 | #define BCSR_STATUS_SD0WP 0x0400 | ||
105 | #define BCSR_STATUS_U0RXD 0x1000 | ||
106 | #define BCSR_STATUS_U1RXD 0x2000 | ||
107 | |||
108 | #define BCSR_SWITCHES_OCTAL 0x00FF | ||
109 | #define BCSR_SWITCHES_DIP_1 0x0080 | ||
110 | #define BCSR_SWITCHES_DIP_2 0x0040 | ||
111 | #define BCSR_SWITCHES_DIP_3 0x0020 | ||
112 | #define BCSR_SWITCHES_DIP_4 0x0010 | ||
113 | #define BCSR_SWITCHES_DIP_5 0x0008 | ||
114 | #define BCSR_SWITCHES_DIP_6 0x0004 | ||
115 | #define BCSR_SWITCHES_DIP_7 0x0002 | ||
116 | #define BCSR_SWITCHES_DIP_8 0x0001 | ||
117 | #define BCSR_SWITCHES_ROTARY 0x0F00 | ||
118 | |||
119 | #define BCSR_RESETS_ETH 0x0001 | ||
120 | #define BCSR_RESETS_CAMERA 0x0002 | ||
121 | #define BCSR_RESETS_DC 0x0004 | ||
122 | #define BCSR_RESETS_IDE 0x0008 | ||
123 | #define BCSR_RESETS_TV 0x0010 | ||
124 | /* Not resets but in the same register */ | ||
125 | #define BCSR_RESETS_PWMR1MUX 0x0800 | ||
126 | #define BCSR_RESETS_PCS0MUX 0x1000 | ||
127 | #define BCSR_RESETS_PCS1MUX 0x2000 | ||
128 | #define BCSR_RESETS_SPISEL 0x4000 | ||
129 | |||
130 | #define BCSR_PCMCIA_PC0VPP 0x0003 | ||
131 | #define BCSR_PCMCIA_PC0VCC 0x000C | ||
132 | #define BCSR_PCMCIA_PC0DRVEN 0x0010 | ||
133 | #define BCSR_PCMCIA_PC0RST 0x0080 | ||
134 | #define BCSR_PCMCIA_PC1VPP 0x0300 | ||
135 | #define BCSR_PCMCIA_PC1VCC 0x0C00 | ||
136 | #define BCSR_PCMCIA_PC1DRVEN 0x1000 | ||
137 | #define BCSR_PCMCIA_PC1RST 0x8000 | ||
138 | |||
139 | #define BCSR_BOARD_LCDVEE 0x0001 | ||
140 | #define BCSR_BOARD_LCDVDD 0x0002 | ||
141 | #define BCSR_BOARD_LCDBL 0x0004 | ||
142 | #define BCSR_BOARD_CAMSNAP 0x0010 | ||
143 | #define BCSR_BOARD_CAMPWR 0x0020 | ||
144 | #define BCSR_BOARD_SD0PWR 0x0040 | ||
145 | |||
146 | #define BCSR_LEDS_DECIMALS 0x0003 | ||
147 | #define BCSR_LEDS_LED0 0x0100 | ||
148 | #define BCSR_LEDS_LED1 0x0200 | ||
149 | #define BCSR_LEDS_LED2 0x0400 | ||
150 | #define BCSR_LEDS_LED3 0x0800 | ||
151 | |||
152 | #define BCSR_SYSTEM_POWEROFF 0x4000 | ||
153 | #define BCSR_SYSTEM_RESET 0x8000 | ||
154 | |||
155 | /* Bit positions for the different interrupt sources */ | 31 | /* Bit positions for the different interrupt sources */ |
156 | #define BCSR_INT_IDE 0x0001 | 32 | #define BCSR_INT_IDE 0x0001 |
157 | #define BCSR_INT_ETH 0x0002 | 33 | #define BCSR_INT_ETH 0x0002 |
@@ -168,17 +44,15 @@ static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; | |||
168 | #define BCSR_INT_SD0INSERT 0x1000 | 44 | #define BCSR_INT_SD0INSERT 0x1000 |
169 | #define BCSR_INT_SD0EJECT 0x2000 | 45 | #define BCSR_INT_SD0EJECT 0x2000 |
170 | 46 | ||
171 | #define SMC91C111_PHYS_ADDR 0x19000300 | ||
172 | #define SMC91C111_INT DB1200_ETH_INT | ||
173 | |||
174 | #define IDE_PHYS_ADDR 0x18800000 | 47 | #define IDE_PHYS_ADDR 0x18800000 |
175 | #define IDE_REG_SHIFT 5 | 48 | #define IDE_REG_SHIFT 5 |
176 | #define IDE_PHYS_LEN (16 << IDE_REG_SHIFT) | ||
177 | #define IDE_INT DB1200_IDE_INT | ||
178 | #define IDE_DDMA_REQ DSCR_CMD0_DMA_REQ1 | 49 | #define IDE_DDMA_REQ DSCR_CMD0_DMA_REQ1 |
179 | #define IDE_RQSIZE 128 | 50 | #define IDE_RQSIZE 128 |
180 | 51 | ||
181 | #define NAND_PHYS_ADDR 0x20000000 | 52 | #define DB1200_IDE_PHYS_ADDR IDE_PHYS_ADDR |
53 | #define DB1200_IDE_PHYS_LEN (16 << IDE_REG_SHIFT) | ||
54 | #define DB1200_ETH_PHYS_ADDR 0x19000300 | ||
55 | #define DB1200_NAND_PHYS_ADDR 0x20000000 | ||
182 | 56 | ||
183 | /* | 57 | /* |
184 | * External Interrupts for DBAu1200 as of 8/6/2004. | 58 | * External Interrupts for DBAu1200 as of 8/6/2004. |
@@ -188,7 +62,7 @@ static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; | |||
188 | * Example: IDE bis pos is = 64 - 64 | 62 | * Example: IDE bis pos is = 64 - 64 |
189 | * ETH bit pos is = 65 - 64 | 63 | * ETH bit pos is = 65 - 64 |
190 | */ | 64 | */ |
191 | enum external_pb1200_ints { | 65 | enum external_db1200_ints { |
192 | DB1200_INT_BEGIN = AU1000_MAX_INTR + 1, | 66 | DB1200_INT_BEGIN = AU1000_MAX_INTR + 1, |
193 | 67 | ||
194 | DB1200_IDE_INT = DB1200_INT_BEGIN, | 68 | DB1200_IDE_INT = DB1200_INT_BEGIN, |
@@ -209,22 +83,4 @@ enum external_pb1200_ints { | |||
209 | DB1200_INT_END = DB1200_INT_BEGIN + 15, | 83 | DB1200_INT_END = DB1200_INT_BEGIN + 15, |
210 | }; | 84 | }; |
211 | 85 | ||
212 | |||
213 | /* | ||
214 | * DBAu1200 specific PCMCIA defines for drivers/pcmcia/au1000_db1x00.c | ||
215 | */ | ||
216 | #define PCMCIA_MAX_SOCK 1 | ||
217 | #define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK + 1) | ||
218 | |||
219 | /* VPP/VCC */ | ||
220 | #define SET_VCC_VPP(VCC, VPP, SLOT) \ | ||
221 | ((((VCC) << 2) | ((VPP) << 0)) << ((SLOT) * 8)) | ||
222 | |||
223 | #define BOARD_PC0_INT DB1200_PC0_INT | ||
224 | #define BOARD_PC1_INT DB1200_PC1_INT | ||
225 | #define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1 << (8 + (2 * SOCKET))) | ||
226 | |||
227 | /* NAND chip select */ | ||
228 | #define NAND_CS 1 | ||
229 | |||
230 | #endif /* __ASM_DB1200_H */ | 86 | #endif /* __ASM_DB1200_H */ |
diff --git a/arch/mips/include/asm/mach-db1x00/db1x00.h b/arch/mips/include/asm/mach-db1x00/db1x00.h index 1a515b8c870f..a919dac525a1 100644 --- a/arch/mips/include/asm/mach-db1x00/db1x00.h +++ b/arch/mips/include/asm/mach-db1x00/db1x00.h | |||
@@ -41,111 +41,11 @@ | |||
41 | #define SMBUS_PSC_BASE PSC2_BASE_ADDR | 41 | #define SMBUS_PSC_BASE PSC2_BASE_ADDR |
42 | #define I2S_PSC_BASE PSC3_BASE_ADDR | 42 | #define I2S_PSC_BASE PSC3_BASE_ADDR |
43 | 43 | ||
44 | #define BCSR_KSEG1_ADDR 0xAF000000 | ||
45 | #define NAND_PHYS_ADDR 0x20000000 | 44 | #define NAND_PHYS_ADDR 0x20000000 |
46 | 45 | ||
47 | #else | ||
48 | #define BCSR_KSEG1_ADDR 0xAE000000 | ||
49 | #endif | 46 | #endif |
50 | 47 | ||
51 | /* | 48 | /* |
52 | * Overlay data structure of the DBAu1x00 board registers. | ||
53 | * Registers are located at physical 0E0000xx, KSEG1 0xAE0000xx. | ||
54 | */ | ||
55 | typedef volatile struct | ||
56 | { | ||
57 | /*00*/ unsigned short whoami; | ||
58 | unsigned short reserved0; | ||
59 | /*04*/ unsigned short status; | ||
60 | unsigned short reserved1; | ||
61 | /*08*/ unsigned short switches; | ||
62 | unsigned short reserved2; | ||
63 | /*0C*/ unsigned short resets; | ||
64 | unsigned short reserved3; | ||
65 | /*10*/ unsigned short pcmcia; | ||
66 | unsigned short reserved4; | ||
67 | /*14*/ unsigned short specific; | ||
68 | unsigned short reserved5; | ||
69 | /*18*/ unsigned short leds; | ||
70 | unsigned short reserved6; | ||
71 | /*1C*/ unsigned short swreset; | ||
72 | unsigned short reserved7; | ||
73 | |||
74 | } BCSR; | ||
75 | |||
76 | |||
77 | /* | ||
78 | * Register/mask bit definitions for the BCSRs | ||
79 | */ | ||
80 | #define BCSR_WHOAMI_DCID 0x000F | ||
81 | #define BCSR_WHOAMI_CPLD 0x00F0 | ||
82 | #define BCSR_WHOAMI_BOARD 0x0F00 | ||
83 | |||
84 | #define BCSR_STATUS_PC0VS 0x0003 | ||
85 | #define BCSR_STATUS_PC1VS 0x000C | ||
86 | #define BCSR_STATUS_PC0FI 0x0010 | ||
87 | #define BCSR_STATUS_PC1FI 0x0020 | ||
88 | #define BCSR_STATUS_FLASHBUSY 0x0100 | ||
89 | #define BCSR_STATUS_ROMBUSY 0x0400 | ||
90 | #define BCSR_STATUS_SWAPBOOT 0x2000 | ||
91 | #define BCSR_STATUS_FLASHDEN 0xC000 | ||
92 | |||
93 | #define BCSR_SWITCHES_DIP 0x00FF | ||
94 | #define BCSR_SWITCHES_DIP_1 0x0080 | ||
95 | #define BCSR_SWITCHES_DIP_2 0x0040 | ||
96 | #define BCSR_SWITCHES_DIP_3 0x0020 | ||
97 | #define BCSR_SWITCHES_DIP_4 0x0010 | ||
98 | #define BCSR_SWITCHES_DIP_5 0x0008 | ||
99 | #define BCSR_SWITCHES_DIP_6 0x0004 | ||
100 | #define BCSR_SWITCHES_DIP_7 0x0002 | ||
101 | #define BCSR_SWITCHES_DIP_8 0x0001 | ||
102 | #define BCSR_SWITCHES_ROTARY 0x0F00 | ||
103 | |||
104 | #define BCSR_RESETS_PHY0 0x0001 | ||
105 | #define BCSR_RESETS_PHY1 0x0002 | ||
106 | #define BCSR_RESETS_DC 0x0004 | ||
107 | #define BCSR_RESETS_FIR_SEL 0x2000 | ||
108 | #define BCSR_RESETS_IRDA_MODE_MASK 0xC000 | ||
109 | #define BCSR_RESETS_IRDA_MODE_FULL 0x0000 | ||
110 | #define BCSR_RESETS_IRDA_MODE_OFF 0x4000 | ||
111 | #define BCSR_RESETS_IRDA_MODE_2_3 0x8000 | ||
112 | #define BCSR_RESETS_IRDA_MODE_1_3 0xC000 | ||
113 | |||
114 | #define BCSR_PCMCIA_PC0VPP 0x0003 | ||
115 | #define BCSR_PCMCIA_PC0VCC 0x000C | ||
116 | #define BCSR_PCMCIA_PC0DRVEN 0x0010 | ||
117 | #define BCSR_PCMCIA_PC0RST 0x0080 | ||
118 | #define BCSR_PCMCIA_PC1VPP 0x0300 | ||
119 | #define BCSR_PCMCIA_PC1VCC 0x0C00 | ||
120 | #define BCSR_PCMCIA_PC1DRVEN 0x1000 | ||
121 | #define BCSR_PCMCIA_PC1RST 0x8000 | ||
122 | |||
123 | #define BCSR_BOARD_PCIM66EN 0x0001 | ||
124 | #define BCSR_BOARD_SD0_PWR 0x0040 | ||
125 | #define BCSR_BOARD_SD1_PWR 0x0080 | ||
126 | #define BCSR_BOARD_PCIM33 0x0100 | ||
127 | #define BCSR_BOARD_GPIO200RST 0x0400 | ||
128 | #define BCSR_BOARD_PCICFG 0x1000 | ||
129 | #define BCSR_BOARD_SD0_WP 0x4000 | ||
130 | #define BCSR_BOARD_SD1_WP 0x8000 | ||
131 | |||
132 | #define BCSR_LEDS_DECIMALS 0x0003 | ||
133 | #define BCSR_LEDS_LED0 0x0100 | ||
134 | #define BCSR_LEDS_LED1 0x0200 | ||
135 | #define BCSR_LEDS_LED2 0x0400 | ||
136 | #define BCSR_LEDS_LED3 0x0800 | ||
137 | |||
138 | #define BCSR_SWRESET_RESET 0x0080 | ||
139 | |||
140 | /* PCMCIA DBAu1x00 specific defines */ | ||
141 | #define PCMCIA_MAX_SOCK 1 | ||
142 | #define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK + 1) | ||
143 | |||
144 | /* VPP/VCC */ | ||
145 | #define SET_VCC_VPP(VCC, VPP, SLOT)\ | ||
146 | ((((VCC) << 2) | ((VPP) << 0)) << ((SLOT) * 8)) | ||
147 | |||
148 | /* | ||
149 | * NAND defines | 49 | * NAND defines |
150 | * | 50 | * |
151 | * Timing values as described in databook, * ns value stripped of the | 51 | * Timing values as described in databook, * ns value stripped of the |
diff --git a/arch/mips/include/asm/mach-excite/cpu-feature-overrides.h b/arch/mips/include/asm/mach-excite/cpu-feature-overrides.h deleted file mode 100644 index 107104c3cd12..000000000000 --- a/arch/mips/include/asm/mach-excite/cpu-feature-overrides.h +++ /dev/null | |||
@@ -1,48 +0,0 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 2004 Thomas Koeller <thomas.koeller@baslerweb.com> | ||
7 | * Copyright (C) 2007 Ralf Baechle (ralf@linux-mips.org) | ||
8 | */ | ||
9 | #ifndef __ASM_MACH_EXCITE_CPU_FEATURE_OVERRIDES_H | ||
10 | #define __ASM_MACH_EXCITE_CPU_FEATURE_OVERRIDES_H | ||
11 | |||
12 | /* | ||
13 | * Basler eXcite has an RM9122 processor. | ||
14 | */ | ||
15 | #define cpu_has_watch 1 | ||
16 | #define cpu_has_mips16 0 | ||
17 | #define cpu_has_divec 0 | ||
18 | #define cpu_has_vce 0 | ||
19 | #define cpu_has_cache_cdex_p 0 | ||
20 | #define cpu_has_cache_cdex_s 0 | ||
21 | #define cpu_has_prefetch 1 | ||
22 | #define cpu_has_mcheck 0 | ||
23 | #define cpu_has_ejtag 0 | ||
24 | |||
25 | #define cpu_has_llsc 1 | ||
26 | #define cpu_has_vtag_icache 0 | ||
27 | #define cpu_has_dc_aliases 0 | ||
28 | #define cpu_has_ic_fills_f_dc 0 | ||
29 | #define cpu_has_dsp 0 | ||
30 | #define cpu_icache_snoops_remote_store 0 | ||
31 | #define cpu_has_mipsmt 0 | ||
32 | #define cpu_has_userlocal 0 | ||
33 | |||
34 | #define cpu_has_nofpuex 0 | ||
35 | #define cpu_has_64bits 1 | ||
36 | |||
37 | #define cpu_has_mips32r1 0 | ||
38 | #define cpu_has_mips32r2 0 | ||
39 | #define cpu_has_mips64r1 0 | ||
40 | #define cpu_has_mips64r2 0 | ||
41 | |||
42 | #define cpu_has_inclusive_pcaches 0 | ||
43 | |||
44 | #define cpu_dcache_line_size() 32 | ||
45 | #define cpu_icache_line_size() 32 | ||
46 | #define cpu_scache_line_size() 32 | ||
47 | |||
48 | #endif /* __ASM_MACH_EXCITE_CPU_FEATURE_OVERRIDES_H */ | ||
diff --git a/arch/mips/include/asm/mach-excite/excite.h b/arch/mips/include/asm/mach-excite/excite.h deleted file mode 100644 index 4c29ba44992c..000000000000 --- a/arch/mips/include/asm/mach-excite/excite.h +++ /dev/null | |||
@@ -1,154 +0,0 @@ | |||
1 | #ifndef __EXCITE_H__ | ||
2 | #define __EXCITE_H__ | ||
3 | |||
4 | #include <linux/init.h> | ||
5 | #include <asm/addrspace.h> | ||
6 | #include <asm/types.h> | ||
7 | |||
8 | #define EXCITE_CPU_EXT_CLOCK 100000000 | ||
9 | |||
10 | #if !defined(__ASSEMBLY__) | ||
11 | void __init excite_kgdb_init(void); | ||
12 | void excite_procfs_init(void); | ||
13 | extern unsigned long memsize; | ||
14 | extern char modetty[]; | ||
15 | extern u32 unit_id; | ||
16 | #endif | ||
17 | |||
18 | /* Base name for XICAP devices */ | ||
19 | #define XICAP_NAME "xicap_gpi" | ||
20 | |||
21 | /* OCD register offsets */ | ||
22 | #define LKB0 0x0038 | ||
23 | #define LKB5 0x0128 | ||
24 | #define LKM5 0x012C | ||
25 | #define LKB7 0x0138 | ||
26 | #define LKM7 0x013c | ||
27 | #define LKB8 0x0140 | ||
28 | #define LKM8 0x0144 | ||
29 | #define LKB9 0x0148 | ||
30 | #define LKM9 0x014c | ||
31 | #define LKB10 0x0150 | ||
32 | #define LKM10 0x0154 | ||
33 | #define LKB11 0x0158 | ||
34 | #define LKM11 0x015c | ||
35 | #define LKB12 0x0160 | ||
36 | #define LKM12 0x0164 | ||
37 | #define LKB13 0x0168 | ||
38 | #define LKM13 0x016c | ||
39 | #define LDP0 0x0200 | ||
40 | #define LDP1 0x0210 | ||
41 | #define LDP2 0x0220 | ||
42 | #define LDP3 0x0230 | ||
43 | #define INTPIN0 0x0A40 | ||
44 | #define INTPIN1 0x0A44 | ||
45 | #define INTPIN2 0x0A48 | ||
46 | #define INTPIN3 0x0A4C | ||
47 | #define INTPIN4 0x0A50 | ||
48 | #define INTPIN5 0x0A54 | ||
49 | #define INTPIN6 0x0A58 | ||
50 | #define INTPIN7 0x0A5C | ||
51 | |||
52 | |||
53 | |||
54 | |||
55 | /* TITAN register offsets */ | ||
56 | #define CPRR 0x0004 | ||
57 | #define CPDSR 0x0008 | ||
58 | #define CPTC0R 0x000c | ||
59 | #define CPTC1R 0x0010 | ||
60 | #define CPCFG0 0x0020 | ||
61 | #define CPCFG1 0x0024 | ||
62 | #define CPDST0A 0x0028 | ||
63 | #define CPDST0B 0x002c | ||
64 | #define CPDST1A 0x0030 | ||
65 | #define CPDST1B 0x0034 | ||
66 | #define CPXDSTA 0x0038 | ||
67 | #define CPXDSTB 0x003c | ||
68 | #define CPXCISRA 0x0048 | ||
69 | #define CPXCISRB 0x004c | ||
70 | #define CPGIG0ER 0x0050 | ||
71 | #define CPGIG1ER 0x0054 | ||
72 | #define CPGRWL 0x0068 | ||
73 | #define CPURSLMT 0x00f8 | ||
74 | #define UACFG 0x0200 | ||
75 | #define UAINTS 0x0204 | ||
76 | #define SDRXFCIE 0x4828 | ||
77 | #define SDTXFCIE 0x4928 | ||
78 | #define INTP0Status0 0x1B00 | ||
79 | #define INTP0Mask0 0x1B04 | ||
80 | #define INTP0Set0 0x1B08 | ||
81 | #define INTP0Clear0 0x1B0C | ||
82 | #define GXCFG 0x5000 | ||
83 | #define GXDMADRPFX 0x5018 | ||
84 | #define GXDMA_DESCADR 0x501c | ||
85 | #define GXCH0TDESSTRT 0x5054 | ||
86 | |||
87 | /* IRQ definitions */ | ||
88 | #define NMICONFIG 0xac0 | ||
89 | #define TITAN_MSGINT 0xc4 | ||
90 | #define TITAN_IRQ ((TITAN_MSGINT / 0x20) + 2) | ||
91 | #define FPGA0_MSGINT 0x5a | ||
92 | #define FPGA0_IRQ ((FPGA0_MSGINT / 0x20) + 2) | ||
93 | #define FPGA1_MSGINT 0x7b | ||
94 | #define FPGA1_IRQ ((FPGA1_MSGINT / 0x20) + 2) | ||
95 | #define PHY_MSGINT 0x9c | ||
96 | #define PHY_IRQ ((PHY_MSGINT / 0x20) + 2) | ||
97 | |||
98 | #if defined(CONFIG_BASLER_EXCITE_PROTOTYPE) | ||
99 | /* Pre-release units used interrupt pin #9 */ | ||
100 | #define USB_IRQ 11 | ||
101 | #else | ||
102 | /* Re-designed units use interrupt pin #1 */ | ||
103 | #define USB_MSGINT 0x39 | ||
104 | #define USB_IRQ ((USB_MSGINT / 0x20) + 2) | ||
105 | #endif | ||
106 | #define TIMER_IRQ 12 | ||
107 | |||
108 | |||
109 | /* Device address ranges */ | ||
110 | #define EXCITE_OFFS_OCD 0x1fffc000 | ||
111 | #define EXCITE_SIZE_OCD (16 * 1024) | ||
112 | #define EXCITE_PHYS_OCD CPHYSADDR(EXCITE_OFFS_OCD) | ||
113 | #define EXCITE_ADDR_OCD CKSEG1ADDR(EXCITE_OFFS_OCD) | ||
114 | |||
115 | #define EXCITE_OFFS_SCRAM 0x1fffa000 | ||
116 | #define EXCITE_SIZE_SCRAM (8 << 10) | ||
117 | #define EXCITE_PHYS_SCRAM CPHYSADDR(EXCITE_OFFS_SCRAM) | ||
118 | #define EXCITE_ADDR_SCRAM CKSEG1ADDR(EXCITE_OFFS_SCRAM) | ||
119 | |||
120 | #define EXCITE_OFFS_PCI_IO 0x1fff8000 | ||
121 | #define EXCITE_SIZE_PCI_IO (8 << 10) | ||
122 | #define EXCITE_PHYS_PCI_IO CPHYSADDR(EXCITE_OFFS_PCI_IO) | ||
123 | #define EXCITE_ADDR_PCI_IO CKSEG1ADDR(EXCITE_OFFS_PCI_IO) | ||
124 | |||
125 | #define EXCITE_OFFS_TITAN 0x1fff0000 | ||
126 | #define EXCITE_SIZE_TITAN (32 << 10) | ||
127 | #define EXCITE_PHYS_TITAN CPHYSADDR(EXCITE_OFFS_TITAN) | ||
128 | #define EXCITE_ADDR_TITAN CKSEG1ADDR(EXCITE_OFFS_TITAN) | ||
129 | |||
130 | #define EXCITE_OFFS_PCI_MEM 0x1ffe0000 | ||
131 | #define EXCITE_SIZE_PCI_MEM (64 << 10) | ||
132 | #define EXCITE_PHYS_PCI_MEM CPHYSADDR(EXCITE_OFFS_PCI_MEM) | ||
133 | #define EXCITE_ADDR_PCI_MEM CKSEG1ADDR(EXCITE_OFFS_PCI_MEM) | ||
134 | |||
135 | #define EXCITE_OFFS_FPGA 0x1ffdc000 | ||
136 | #define EXCITE_SIZE_FPGA (16 << 10) | ||
137 | #define EXCITE_PHYS_FPGA CPHYSADDR(EXCITE_OFFS_FPGA) | ||
138 | #define EXCITE_ADDR_FPGA CKSEG1ADDR(EXCITE_OFFS_FPGA) | ||
139 | |||
140 | #define EXCITE_OFFS_NAND 0x1ffd8000 | ||
141 | #define EXCITE_SIZE_NAND (16 << 10) | ||
142 | #define EXCITE_PHYS_NAND CPHYSADDR(EXCITE_OFFS_NAND) | ||
143 | #define EXCITE_ADDR_NAND CKSEG1ADDR(EXCITE_OFFS_NAND) | ||
144 | |||
145 | #define EXCITE_OFFS_BOOTROM 0x1f000000 | ||
146 | #define EXCITE_SIZE_BOOTROM (8 << 20) | ||
147 | #define EXCITE_PHYS_BOOTROM CPHYSADDR(EXCITE_OFFS_BOOTROM) | ||
148 | #define EXCITE_ADDR_BOOTROM CKSEG1ADDR(EXCITE_OFFS_BOOTROM) | ||
149 | |||
150 | /* FPGA address offsets */ | ||
151 | #define EXCITE_FPGA_DPR 0x0104 /* dual-ported ram */ | ||
152 | #define EXCITE_FPGA_SYSCTL 0x0200 /* system control register block */ | ||
153 | |||
154 | #endif /* __EXCITE_H__ */ | ||
diff --git a/arch/mips/include/asm/mach-excite/excite_fpga.h b/arch/mips/include/asm/mach-excite/excite_fpga.h deleted file mode 100644 index 0a1ef69bece7..000000000000 --- a/arch/mips/include/asm/mach-excite/excite_fpga.h +++ /dev/null | |||
@@ -1,80 +0,0 @@ | |||
1 | #ifndef EXCITE_FPGA_H_INCLUDED | ||
2 | #define EXCITE_FPGA_H_INCLUDED | ||
3 | |||
4 | |||
5 | /** | ||
6 | * Address alignment of the individual FPGA bytes. | ||
7 | * The address arrangement of the individual bytes of the FPGA is two | ||
8 | * byte aligned at the embedded MK2 platform. | ||
9 | */ | ||
10 | #ifdef EXCITE_CCI_FPGA_MK2 | ||
11 | typedef unsigned char excite_cci_fpga_align_t __attribute__ ((aligned(2))); | ||
12 | #else | ||
13 | typedef unsigned char excite_cci_fpga_align_t; | ||
14 | #endif | ||
15 | |||
16 | |||
17 | /** | ||
18 | * Size of Dual Ported RAM. | ||
19 | */ | ||
20 | #define EXCITE_DPR_SIZE 263 | ||
21 | |||
22 | |||
23 | /** | ||
24 | * Size of Reserved Status Fields in Dual Ported RAM. | ||
25 | */ | ||
26 | #define EXCITE_DPR_STATUS_SIZE 7 | ||
27 | |||
28 | |||
29 | |||
30 | /** | ||
31 | * FPGA. | ||
32 | * Hardware register layout of the FPGA interface. The FPGA must accessed | ||
33 | * byte wise solely. | ||
34 | * @see EXCITE_CCI_DPR_MK2 | ||
35 | */ | ||
36 | typedef struct excite_fpga { | ||
37 | |||
38 | /** | ||
39 | * Dual Ported RAM. | ||
40 | */ | ||
41 | excite_cci_fpga_align_t dpr[EXCITE_DPR_SIZE]; | ||
42 | |||
43 | /** | ||
44 | * Status. | ||
45 | */ | ||
46 | excite_cci_fpga_align_t status[EXCITE_DPR_STATUS_SIZE]; | ||
47 | |||
48 | #ifdef EXCITE_CCI_FPGA_MK2 | ||
49 | /** | ||
50 | * RM9000 Interrupt. | ||
51 | * Write access initiates interrupt at the RM9000 (MIPS) processor of the eXcite. | ||
52 | */ | ||
53 | excite_cci_fpga_align_t rm9k_int; | ||
54 | #else | ||
55 | /** | ||
56 | * MK2 Interrupt. | ||
57 | * Write access initiates interrupt at the ARM processor of the MK2. | ||
58 | */ | ||
59 | excite_cci_fpga_align_t mk2_int; | ||
60 | |||
61 | excite_cci_fpga_align_t gap[0x1000-0x10f]; | ||
62 | |||
63 | /** | ||
64 | * IRQ Source/Acknowledge. | ||
65 | */ | ||
66 | excite_cci_fpga_align_t rm9k_irq_src; | ||
67 | |||
68 | /** | ||
69 | * IRQ Mask. | ||
70 | * Set bits enable the related interrupt. | ||
71 | */ | ||
72 | excite_cci_fpga_align_t rm9k_irq_mask; | ||
73 | #endif | ||
74 | |||
75 | |||
76 | } excite_fpga; | ||
77 | |||
78 | |||
79 | |||
80 | #endif /* ndef EXCITE_FPGA_H_INCLUDED */ | ||
diff --git a/arch/mips/include/asm/mach-excite/excite_nandflash.h b/arch/mips/include/asm/mach-excite/excite_nandflash.h deleted file mode 100644 index c4cf6140622e..000000000000 --- a/arch/mips/include/asm/mach-excite/excite_nandflash.h +++ /dev/null | |||
@@ -1,7 +0,0 @@ | |||
1 | #ifndef __EXCITE_NANDFLASH_H__ | ||
2 | #define __EXCITE_NANDFLASH_H__ | ||
3 | |||
4 | /* Resource names */ | ||
5 | #define EXCITE_NANDFLASH_RESOURCE_REGS "excite_nandflash_regs" | ||
6 | |||
7 | #endif /* __EXCITE_NANDFLASH_H__ */ | ||
diff --git a/arch/mips/include/asm/mach-excite/rm9k_eth.h b/arch/mips/include/asm/mach-excite/rm9k_eth.h deleted file mode 100644 index 94705a46f72e..000000000000 --- a/arch/mips/include/asm/mach-excite/rm9k_eth.h +++ /dev/null | |||
@@ -1,23 +0,0 @@ | |||
1 | #if !defined(__RM9K_ETH_H__) | ||
2 | #define __RM9K_ETH_H__ | ||
3 | |||
4 | #define RM9K_GE_NAME "rm9k_ge" | ||
5 | |||
6 | /* Resource names */ | ||
7 | #define RM9K_GE_RESOURCE_MAC "rm9k_ge_mac" | ||
8 | #define RM9K_GE_RESOURCE_MSTAT "rm9k_ge_mstat" | ||
9 | #define RM9K_GE_RESOURCE_PKTPROC "rm9k_ge_pktproc" | ||
10 | #define RM9K_GE_RESOURCE_XDMA "rm9k_ge_xdma" | ||
11 | #define RM9K_GE_RESOURCE_FIFO_RX "rm9k_ge_fifo_rx" | ||
12 | #define RM9K_GE_RESOURCE_FIFO_TX "rm9k_ge_fifo_tx" | ||
13 | #define RM9K_GE_RESOURCE_FIFOMEM_RX "rm9k_ge_fifo_memory_rx" | ||
14 | #define RM9K_GE_RESOURCE_FIFOMEM_TX "rm9k_ge_fifo_memory_tx" | ||
15 | #define RM9K_GE_RESOURCE_PHY "rm9k_ge_phy" | ||
16 | #define RM9K_GE_RESOURCE_DMADESC_RX "rm9k_ge_dmadesc_rx" | ||
17 | #define RM9K_GE_RESOURCE_DMADESC_TX "rm9k_ge_dmadesc_tx" | ||
18 | #define RM9K_GE_RESOURCE_IRQ_MAIN "rm9k_ge_irq_main" | ||
19 | #define RM9K_GE_RESOURCE_IRQ_PHY "rm9k_ge_irq_phy" | ||
20 | #define RM9K_GE_RESOURCE_GPI_SLICE "rm9k_ge_gpi_slice" | ||
21 | #define RM9K_GE_RESOURCE_MDIO_CHANNEL "rm9k_ge_mdio_channel" | ||
22 | |||
23 | #endif /* !defined(__RM9K_ETH_H__) */ | ||
diff --git a/arch/mips/include/asm/mach-excite/rm9k_wdt.h b/arch/mips/include/asm/mach-excite/rm9k_wdt.h deleted file mode 100644 index 3fa3c08d2da7..000000000000 --- a/arch/mips/include/asm/mach-excite/rm9k_wdt.h +++ /dev/null | |||
@@ -1,12 +0,0 @@ | |||
1 | #ifndef __RM9K_WDT_H__ | ||
2 | #define __RM9K_WDT_H__ | ||
3 | |||
4 | /* Device name */ | ||
5 | #define WDT_NAME "wdt_gpi" | ||
6 | |||
7 | /* Resource names */ | ||
8 | #define WDT_RESOURCE_REGS "excite_watchdog_regs" | ||
9 | #define WDT_RESOURCE_IRQ "excite_watchdog_irq" | ||
10 | #define WDT_RESOURCE_COUNTER "excite_watchdog_counter" | ||
11 | |||
12 | #endif /* __RM9K_WDT_H__ */ | ||
diff --git a/arch/mips/include/asm/mach-excite/rm9k_xicap.h b/arch/mips/include/asm/mach-excite/rm9k_xicap.h deleted file mode 100644 index 009577734a8d..000000000000 --- a/arch/mips/include/asm/mach-excite/rm9k_xicap.h +++ /dev/null | |||
@@ -1,16 +0,0 @@ | |||
1 | #ifndef __EXCITE_XICAP_H__ | ||
2 | #define __EXCITE_XICAP_H__ | ||
3 | |||
4 | |||
5 | /* Resource names */ | ||
6 | #define XICAP_RESOURCE_FIFO_RX "xicap_fifo_rx" | ||
7 | #define XICAP_RESOURCE_FIFO_TX "xicap_fifo_tx" | ||
8 | #define XICAP_RESOURCE_XDMA "xicap_xdma" | ||
9 | #define XICAP_RESOURCE_DMADESC "xicap_dmadesc" | ||
10 | #define XICAP_RESOURCE_PKTPROC "xicap_pktproc" | ||
11 | #define XICAP_RESOURCE_IRQ "xicap_irq" | ||
12 | #define XICAP_RESOURCE_GPI_SLICE "xicap_gpi_slice" | ||
13 | #define XICAP_RESOURCE_FIFO_BLK "xicap_fifo_blocks" | ||
14 | #define XICAP_RESOURCE_PKT_STREAM "xicap_pkt_stream" | ||
15 | |||
16 | #endif /* __EXCITE_XICAP_H__ */ | ||
diff --git a/arch/mips/include/asm/mach-ip27/topology.h b/arch/mips/include/asm/mach-ip27/topology.h index 09a59bcc1b07..1b1a7d1632b9 100644 --- a/arch/mips/include/asm/mach-ip27/topology.h +++ b/arch/mips/include/asm/mach-ip27/topology.h | |||
@@ -24,7 +24,9 @@ extern struct cpuinfo_ip27 sn_cpu_info[NR_CPUS]; | |||
24 | 24 | ||
25 | #define cpu_to_node(cpu) (sn_cpu_info[(cpu)].p_nodeid) | 25 | #define cpu_to_node(cpu) (sn_cpu_info[(cpu)].p_nodeid) |
26 | #define parent_node(node) (node) | 26 | #define parent_node(node) (node) |
27 | #define cpumask_of_node(node) (&hub_data(node)->h_cpus) | 27 | #define cpumask_of_node(node) ((node) == -1 ? \ |
28 | cpu_all_mask : \ | ||
29 | &hub_data(node)->h_cpus) | ||
28 | struct pci_bus; | 30 | struct pci_bus; |
29 | extern int pcibus_to_node(struct pci_bus *); | 31 | extern int pcibus_to_node(struct pci_bus *); |
30 | 32 | ||
diff --git a/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h b/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h index 9947e57c91de..16210cedd929 100644 --- a/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h +++ b/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h | |||
@@ -3,7 +3,7 @@ | |||
3 | * License. See the file "COPYING" in the main directory of this archive | 3 | * License. See the file "COPYING" in the main directory of this archive |
4 | * for more details. | 4 | * for more details. |
5 | * | 5 | * |
6 | * Copyright (C) 2009 Wu Zhangjin <wuzj@lemote.com> | 6 | * Copyright (C) 2009 Wu Zhangjin <wuzhangjin@gmail.com> |
7 | * Copyright (C) 2009 Philippe Vachon <philippe@cowpig.ca> | 7 | * Copyright (C) 2009 Philippe Vachon <philippe@cowpig.ca> |
8 | * Copyright (C) 2009 Zhang Le <r0bertz@gentoo.org> | 8 | * Copyright (C) 2009 Zhang Le <r0bertz@gentoo.org> |
9 | * | 9 | * |
diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536.h new file mode 100644 index 000000000000..021f77ca59ec --- /dev/null +++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536.h | |||
@@ -0,0 +1,305 @@ | |||
1 | /* | ||
2 | * The header file of cs5536 sourth bridge. | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote, Inc. | ||
5 | * Author : jlliu <liujl@lemote.com> | ||
6 | */ | ||
7 | |||
8 | #ifndef _CS5536_H | ||
9 | #define _CS5536_H | ||
10 | |||
11 | #include <linux/types.h> | ||
12 | |||
13 | extern void _rdmsr(u32 msr, u32 *hi, u32 *lo); | ||
14 | extern void _wrmsr(u32 msr, u32 hi, u32 lo); | ||
15 | |||
16 | /* | ||
17 | * MSR module base | ||
18 | */ | ||
19 | #define CS5536_SB_MSR_BASE (0x00000000) | ||
20 | #define CS5536_GLIU_MSR_BASE (0x10000000) | ||
21 | #define CS5536_ILLEGAL_MSR_BASE (0x20000000) | ||
22 | #define CS5536_USB_MSR_BASE (0x40000000) | ||
23 | #define CS5536_IDE_MSR_BASE (0x60000000) | ||
24 | #define CS5536_DIVIL_MSR_BASE (0x80000000) | ||
25 | #define CS5536_ACC_MSR_BASE (0xa0000000) | ||
26 | #define CS5536_UNUSED_MSR_BASE (0xc0000000) | ||
27 | #define CS5536_GLCP_MSR_BASE (0xe0000000) | ||
28 | |||
29 | #define SB_MSR_REG(offset) (CS5536_SB_MSR_BASE | (offset)) | ||
30 | #define GLIU_MSR_REG(offset) (CS5536_GLIU_MSR_BASE | (offset)) | ||
31 | #define ILLEGAL_MSR_REG(offset) (CS5536_ILLEGAL_MSR_BASE | (offset)) | ||
32 | #define USB_MSR_REG(offset) (CS5536_USB_MSR_BASE | (offset)) | ||
33 | #define IDE_MSR_REG(offset) (CS5536_IDE_MSR_BASE | (offset)) | ||
34 | #define DIVIL_MSR_REG(offset) (CS5536_DIVIL_MSR_BASE | (offset)) | ||
35 | #define ACC_MSR_REG(offset) (CS5536_ACC_MSR_BASE | (offset)) | ||
36 | #define UNUSED_MSR_REG(offset) (CS5536_UNUSED_MSR_BASE | (offset)) | ||
37 | #define GLCP_MSR_REG(offset) (CS5536_GLCP_MSR_BASE | (offset)) | ||
38 | |||
39 | /* | ||
40 | * BAR SPACE OF VIRTUAL PCI : | ||
41 | * range for pci probe use, length is the actual size. | ||
42 | */ | ||
43 | /* IO space for all DIVIL modules */ | ||
44 | #define CS5536_IRQ_RANGE 0xffffffe0 /* USERD FOR PCI PROBE */ | ||
45 | #define CS5536_IRQ_LENGTH 0x20 /* THE REGS ACTUAL LENGTH */ | ||
46 | #define CS5536_SMB_RANGE 0xfffffff8 | ||
47 | #define CS5536_SMB_LENGTH 0x08 | ||
48 | #define CS5536_GPIO_RANGE 0xffffff00 | ||
49 | #define CS5536_GPIO_LENGTH 0x100 | ||
50 | #define CS5536_MFGPT_RANGE 0xffffffc0 | ||
51 | #define CS5536_MFGPT_LENGTH 0x40 | ||
52 | #define CS5536_ACPI_RANGE 0xffffffe0 | ||
53 | #define CS5536_ACPI_LENGTH 0x20 | ||
54 | #define CS5536_PMS_RANGE 0xffffff80 | ||
55 | #define CS5536_PMS_LENGTH 0x80 | ||
56 | /* IO space for IDE */ | ||
57 | #define CS5536_IDE_RANGE 0xfffffff0 | ||
58 | #define CS5536_IDE_LENGTH 0x10 | ||
59 | /* IO space for ACC */ | ||
60 | #define CS5536_ACC_RANGE 0xffffff80 | ||
61 | #define CS5536_ACC_LENGTH 0x80 | ||
62 | /* MEM space for ALL USB modules */ | ||
63 | #define CS5536_OHCI_RANGE 0xfffff000 | ||
64 | #define CS5536_OHCI_LENGTH 0x1000 | ||
65 | #define CS5536_EHCI_RANGE 0xfffff000 | ||
66 | #define CS5536_EHCI_LENGTH 0x1000 | ||
67 | |||
68 | /* | ||
69 | * PCI MSR ACCESS | ||
70 | */ | ||
71 | #define PCI_MSR_CTRL 0xF0 | ||
72 | #define PCI_MSR_ADDR 0xF4 | ||
73 | #define PCI_MSR_DATA_LO 0xF8 | ||
74 | #define PCI_MSR_DATA_HI 0xFC | ||
75 | |||
76 | /**************** MSR *****************************/ | ||
77 | |||
78 | /* | ||
79 | * GLIU STANDARD MSR | ||
80 | */ | ||
81 | #define GLIU_CAP 0x00 | ||
82 | #define GLIU_CONFIG 0x01 | ||
83 | #define GLIU_SMI 0x02 | ||
84 | #define GLIU_ERROR 0x03 | ||
85 | #define GLIU_PM 0x04 | ||
86 | #define GLIU_DIAG 0x05 | ||
87 | |||
88 | /* | ||
89 | * GLIU SPEC. MSR | ||
90 | */ | ||
91 | #define GLIU_P2D_BM0 0x20 | ||
92 | #define GLIU_P2D_BM1 0x21 | ||
93 | #define GLIU_P2D_BM2 0x22 | ||
94 | #define GLIU_P2D_BMK0 0x23 | ||
95 | #define GLIU_P2D_BMK1 0x24 | ||
96 | #define GLIU_P2D_BM3 0x25 | ||
97 | #define GLIU_P2D_BM4 0x26 | ||
98 | #define GLIU_COH 0x80 | ||
99 | #define GLIU_PAE 0x81 | ||
100 | #define GLIU_ARB 0x82 | ||
101 | #define GLIU_ASMI 0x83 | ||
102 | #define GLIU_AERR 0x84 | ||
103 | #define GLIU_DEBUG 0x85 | ||
104 | #define GLIU_PHY_CAP 0x86 | ||
105 | #define GLIU_NOUT_RESP 0x87 | ||
106 | #define GLIU_NOUT_WDATA 0x88 | ||
107 | #define GLIU_WHOAMI 0x8B | ||
108 | #define GLIU_SLV_DIS 0x8C | ||
109 | #define GLIU_IOD_BM0 0xE0 | ||
110 | #define GLIU_IOD_BM1 0xE1 | ||
111 | #define GLIU_IOD_BM2 0xE2 | ||
112 | #define GLIU_IOD_BM3 0xE3 | ||
113 | #define GLIU_IOD_BM4 0xE4 | ||
114 | #define GLIU_IOD_BM5 0xE5 | ||
115 | #define GLIU_IOD_BM6 0xE6 | ||
116 | #define GLIU_IOD_BM7 0xE7 | ||
117 | #define GLIU_IOD_BM8 0xE8 | ||
118 | #define GLIU_IOD_BM9 0xE9 | ||
119 | #define GLIU_IOD_SC0 0xEA | ||
120 | #define GLIU_IOD_SC1 0xEB | ||
121 | #define GLIU_IOD_SC2 0xEC | ||
122 | #define GLIU_IOD_SC3 0xED | ||
123 | #define GLIU_IOD_SC4 0xEE | ||
124 | #define GLIU_IOD_SC5 0xEF | ||
125 | #define GLIU_IOD_SC6 0xF0 | ||
126 | #define GLIU_IOD_SC7 0xF1 | ||
127 | |||
128 | /* | ||
129 | * SB STANDARD | ||
130 | */ | ||
131 | #define SB_CAP 0x00 | ||
132 | #define SB_CONFIG 0x01 | ||
133 | #define SB_SMI 0x02 | ||
134 | #define SB_ERROR 0x03 | ||
135 | #define SB_MAR_ERR_EN 0x00000001 | ||
136 | #define SB_TAR_ERR_EN 0x00000002 | ||
137 | #define SB_RSVD_BIT1 0x00000004 | ||
138 | #define SB_EXCEP_ERR_EN 0x00000008 | ||
139 | #define SB_SYSE_ERR_EN 0x00000010 | ||
140 | #define SB_PARE_ERR_EN 0x00000020 | ||
141 | #define SB_TAS_ERR_EN 0x00000040 | ||
142 | #define SB_MAR_ERR_FLAG 0x00010000 | ||
143 | #define SB_TAR_ERR_FLAG 0x00020000 | ||
144 | #define SB_RSVD_BIT2 0x00040000 | ||
145 | #define SB_EXCEP_ERR_FLAG 0x00080000 | ||
146 | #define SB_SYSE_ERR_FLAG 0x00100000 | ||
147 | #define SB_PARE_ERR_FLAG 0x00200000 | ||
148 | #define SB_TAS_ERR_FLAG 0x00400000 | ||
149 | #define SB_PM 0x04 | ||
150 | #define SB_DIAG 0x05 | ||
151 | |||
152 | /* | ||
153 | * SB SPEC. | ||
154 | */ | ||
155 | #define SB_CTRL 0x10 | ||
156 | #define SB_R0 0x20 | ||
157 | #define SB_R1 0x21 | ||
158 | #define SB_R2 0x22 | ||
159 | #define SB_R3 0x23 | ||
160 | #define SB_R4 0x24 | ||
161 | #define SB_R5 0x25 | ||
162 | #define SB_R6 0x26 | ||
163 | #define SB_R7 0x27 | ||
164 | #define SB_R8 0x28 | ||
165 | #define SB_R9 0x29 | ||
166 | #define SB_R10 0x2A | ||
167 | #define SB_R11 0x2B | ||
168 | #define SB_R12 0x2C | ||
169 | #define SB_R13 0x2D | ||
170 | #define SB_R14 0x2E | ||
171 | #define SB_R15 0x2F | ||
172 | |||
173 | /* | ||
174 | * GLCP STANDARD | ||
175 | */ | ||
176 | #define GLCP_CAP 0x00 | ||
177 | #define GLCP_CONFIG 0x01 | ||
178 | #define GLCP_SMI 0x02 | ||
179 | #define GLCP_ERROR 0x03 | ||
180 | #define GLCP_PM 0x04 | ||
181 | #define GLCP_DIAG 0x05 | ||
182 | |||
183 | /* | ||
184 | * GLCP SPEC. | ||
185 | */ | ||
186 | #define GLCP_CLK_DIS_DELAY 0x08 | ||
187 | #define GLCP_PM_CLK_DISABLE 0x09 | ||
188 | #define GLCP_GLB_PM 0x0B | ||
189 | #define GLCP_DBG_OUT 0x0C | ||
190 | #define GLCP_RSVD1 0x0D | ||
191 | #define GLCP_SOFT_COM 0x0E | ||
192 | #define SOFT_BAR_SMB_FLAG 0x00000001 | ||
193 | #define SOFT_BAR_GPIO_FLAG 0x00000002 | ||
194 | #define SOFT_BAR_MFGPT_FLAG 0x00000004 | ||
195 | #define SOFT_BAR_IRQ_FLAG 0x00000008 | ||
196 | #define SOFT_BAR_PMS_FLAG 0x00000010 | ||
197 | #define SOFT_BAR_ACPI_FLAG 0x00000020 | ||
198 | #define SOFT_BAR_IDE_FLAG 0x00000400 | ||
199 | #define SOFT_BAR_ACC_FLAG 0x00000800 | ||
200 | #define SOFT_BAR_OHCI_FLAG 0x00001000 | ||
201 | #define SOFT_BAR_EHCI_FLAG 0x00002000 | ||
202 | #define GLCP_RSVD2 0x0F | ||
203 | #define GLCP_CLK_OFF 0x10 | ||
204 | #define GLCP_CLK_ACTIVE 0x11 | ||
205 | #define GLCP_CLK_DISABLE 0x12 | ||
206 | #define GLCP_CLK4ACK 0x13 | ||
207 | #define GLCP_SYS_RST 0x14 | ||
208 | #define GLCP_RSVD3 0x15 | ||
209 | #define GLCP_DBG_CLK_CTRL 0x16 | ||
210 | #define GLCP_CHIP_REV_ID 0x17 | ||
211 | |||
212 | /* PIC */ | ||
213 | #define PIC_YSEL_LOW 0x20 | ||
214 | #define PIC_YSEL_LOW_USB_SHIFT 8 | ||
215 | #define PIC_YSEL_LOW_ACC_SHIFT 16 | ||
216 | #define PIC_YSEL_LOW_FLASH_SHIFT 24 | ||
217 | #define PIC_YSEL_HIGH 0x21 | ||
218 | #define PIC_ZSEL_LOW 0x22 | ||
219 | #define PIC_ZSEL_HIGH 0x23 | ||
220 | #define PIC_IRQM_PRIM 0x24 | ||
221 | #define PIC_IRQM_LPC 0x25 | ||
222 | #define PIC_XIRR_STS_LOW 0x26 | ||
223 | #define PIC_XIRR_STS_HIGH 0x27 | ||
224 | #define PCI_SHDW 0x34 | ||
225 | |||
226 | /* | ||
227 | * DIVIL STANDARD | ||
228 | */ | ||
229 | #define DIVIL_CAP 0x00 | ||
230 | #define DIVIL_CONFIG 0x01 | ||
231 | #define DIVIL_SMI 0x02 | ||
232 | #define DIVIL_ERROR 0x03 | ||
233 | #define DIVIL_PM 0x04 | ||
234 | #define DIVIL_DIAG 0x05 | ||
235 | |||
236 | /* | ||
237 | * DIVIL SPEC. | ||
238 | */ | ||
239 | #define DIVIL_LBAR_IRQ 0x08 | ||
240 | #define DIVIL_LBAR_KEL 0x09 | ||
241 | #define DIVIL_LBAR_SMB 0x0B | ||
242 | #define DIVIL_LBAR_GPIO 0x0C | ||
243 | #define DIVIL_LBAR_MFGPT 0x0D | ||
244 | #define DIVIL_LBAR_ACPI 0x0E | ||
245 | #define DIVIL_LBAR_PMS 0x0F | ||
246 | #define DIVIL_LEG_IO 0x14 | ||
247 | #define DIVIL_BALL_OPTS 0x15 | ||
248 | #define DIVIL_SOFT_IRQ 0x16 | ||
249 | #define DIVIL_SOFT_RESET 0x17 | ||
250 | |||
251 | /* MFGPT */ | ||
252 | #define MFGPT_IRQ 0x28 | ||
253 | |||
254 | /* | ||
255 | * IDE STANDARD | ||
256 | */ | ||
257 | #define IDE_CAP 0x00 | ||
258 | #define IDE_CONFIG 0x01 | ||
259 | #define IDE_SMI 0x02 | ||
260 | #define IDE_ERROR 0x03 | ||
261 | #define IDE_PM 0x04 | ||
262 | #define IDE_DIAG 0x05 | ||
263 | |||
264 | /* | ||
265 | * IDE SPEC. | ||
266 | */ | ||
267 | #define IDE_IO_BAR 0x08 | ||
268 | #define IDE_CFG 0x10 | ||
269 | #define IDE_DTC 0x12 | ||
270 | #define IDE_CAST 0x13 | ||
271 | #define IDE_ETC 0x14 | ||
272 | #define IDE_INTERNAL_PM 0x15 | ||
273 | |||
274 | /* | ||
275 | * ACC STANDARD | ||
276 | */ | ||
277 | #define ACC_CAP 0x00 | ||
278 | #define ACC_CONFIG 0x01 | ||
279 | #define ACC_SMI 0x02 | ||
280 | #define ACC_ERROR 0x03 | ||
281 | #define ACC_PM 0x04 | ||
282 | #define ACC_DIAG 0x05 | ||
283 | |||
284 | /* | ||
285 | * USB STANDARD | ||
286 | */ | ||
287 | #define USB_CAP 0x00 | ||
288 | #define USB_CONFIG 0x01 | ||
289 | #define USB_SMI 0x02 | ||
290 | #define USB_ERROR 0x03 | ||
291 | #define USB_PM 0x04 | ||
292 | #define USB_DIAG 0x05 | ||
293 | |||
294 | /* | ||
295 | * USB SPEC. | ||
296 | */ | ||
297 | #define USB_OHCI 0x08 | ||
298 | #define USB_EHCI 0x09 | ||
299 | |||
300 | /****************** NATIVE ***************************/ | ||
301 | /* GPIO : I/O SPACE; REG : 32BITS */ | ||
302 | #define GPIOL_OUT_VAL 0x00 | ||
303 | #define GPIOL_OUT_EN 0x04 | ||
304 | |||
305 | #endif /* _CS5536_H */ | ||
diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_mfgpt.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_mfgpt.h new file mode 100644 index 000000000000..4b493d6772c2 --- /dev/null +++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_mfgpt.h | |||
@@ -0,0 +1,35 @@ | |||
1 | /* | ||
2 | * cs5536 mfgpt header file | ||
3 | */ | ||
4 | |||
5 | #ifndef _CS5536_MFGPT_H | ||
6 | #define _CS5536_MFGPT_H | ||
7 | |||
8 | #include <cs5536/cs5536.h> | ||
9 | #include <cs5536/cs5536_pci.h> | ||
10 | |||
11 | #ifdef CONFIG_CS5536_MFGPT | ||
12 | extern void setup_mfgpt0_timer(void); | ||
13 | extern void disable_mfgpt0_counter(void); | ||
14 | extern void enable_mfgpt0_counter(void); | ||
15 | #else | ||
16 | static inline void __maybe_unused setup_mfgpt0_timer(void) | ||
17 | { | ||
18 | } | ||
19 | static inline void __maybe_unused disable_mfgpt0_counter(void) | ||
20 | { | ||
21 | } | ||
22 | static inline void __maybe_unused enable_mfgpt0_counter(void) | ||
23 | { | ||
24 | } | ||
25 | #endif | ||
26 | |||
27 | #define MFGPT_TICK_RATE 14318000 | ||
28 | #define COMPARE ((MFGPT_TICK_RATE + HZ/2) / HZ) | ||
29 | |||
30 | #define MFGPT_BASE mfgpt_base | ||
31 | #define MFGPT0_CMP2 (MFGPT_BASE + 2) | ||
32 | #define MFGPT0_CNT (MFGPT_BASE + 4) | ||
33 | #define MFGPT0_SETUP (MFGPT_BASE + 6) | ||
34 | |||
35 | #endif /*!_CS5536_MFGPT_H */ | ||
diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_pci.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_pci.h new file mode 100644 index 000000000000..0dca9c89ee7c --- /dev/null +++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_pci.h | |||
@@ -0,0 +1,153 @@ | |||
1 | /* | ||
2 | * the definition file of cs5536 Virtual Support Module(VSM). | ||
3 | * pci configuration space can be accessed through the VSM, so | ||
4 | * there is no need of the MSR read/write now, except the spec. | ||
5 | * MSR registers which are not implemented yet. | ||
6 | * | ||
7 | * Copyright (C) 2007 Lemote Inc. | ||
8 | * Author : jlliu, liujl@lemote.com | ||
9 | */ | ||
10 | |||
11 | #ifndef _CS5536_PCI_H | ||
12 | #define _CS5536_PCI_H | ||
13 | |||
14 | #include <linux/types.h> | ||
15 | #include <linux/pci_regs.h> | ||
16 | |||
17 | extern void cs5536_pci_conf_write4(int function, int reg, u32 value); | ||
18 | extern u32 cs5536_pci_conf_read4(int function, int reg); | ||
19 | |||
20 | #define CS5536_ACC_INTR 9 | ||
21 | #define CS5536_IDE_INTR 14 | ||
22 | #define CS5536_USB_INTR 11 | ||
23 | #define CS5536_MFGPT_INTR 5 | ||
24 | #define CS5536_UART1_INTR 4 | ||
25 | #define CS5536_UART2_INTR 3 | ||
26 | |||
27 | /************** PCI BUS DEVICE FUNCTION ***************/ | ||
28 | |||
29 | /* | ||
30 | * PCI bus device function | ||
31 | */ | ||
32 | #define PCI_BUS_CS5536 0 | ||
33 | #define PCI_IDSEL_CS5536 14 | ||
34 | |||
35 | /********** STANDARD PCI-2.2 EXPANSION ****************/ | ||
36 | |||
37 | /* | ||
38 | * PCI configuration space | ||
39 | * we have to virtualize the PCI configure space head, so we should | ||
40 | * define the necessary IDs and some others. | ||
41 | */ | ||
42 | |||
43 | /* CONFIG of PCI VENDOR ID*/ | ||
44 | #define CFG_PCI_VENDOR_ID(mod_dev_id, sys_vendor_id) \ | ||
45 | (((mod_dev_id) << 16) | (sys_vendor_id)) | ||
46 | |||
47 | /* VENDOR ID */ | ||
48 | #define CS5536_VENDOR_ID 0x1022 | ||
49 | |||
50 | /* DEVICE ID */ | ||
51 | #define CS5536_ISA_DEVICE_ID 0x2090 | ||
52 | #define CS5536_IDE_DEVICE_ID 0x209a | ||
53 | #define CS5536_ACC_DEVICE_ID 0x2093 | ||
54 | #define CS5536_OHCI_DEVICE_ID 0x2094 | ||
55 | #define CS5536_EHCI_DEVICE_ID 0x2095 | ||
56 | |||
57 | /* CLASS CODE : CLASS SUB-CLASS INTERFACE */ | ||
58 | #define CS5536_ISA_CLASS_CODE 0x060100 | ||
59 | #define CS5536_IDE_CLASS_CODE 0x010180 | ||
60 | #define CS5536_ACC_CLASS_CODE 0x040100 | ||
61 | #define CS5536_OHCI_CLASS_CODE 0x0C0310 | ||
62 | #define CS5536_EHCI_CLASS_CODE 0x0C0320 | ||
63 | |||
64 | /* BHLC : BIST HEADER-TYPE LATENCY-TIMER CACHE-LINE-SIZE */ | ||
65 | |||
66 | #define CFG_PCI_CACHE_LINE_SIZE(header_type, latency_timer) \ | ||
67 | ((PCI_NONE_BIST << 24) | ((header_type) << 16) \ | ||
68 | | ((latency_timer) << 8) | PCI_NORMAL_CACHE_LINE_SIZE); | ||
69 | |||
70 | #define PCI_NONE_BIST 0x00 /* RO not implemented yet. */ | ||
71 | #define PCI_BRIDGE_HEADER_TYPE 0x80 /* RO */ | ||
72 | #define PCI_NORMAL_HEADER_TYPE 0x00 | ||
73 | #define PCI_NORMAL_LATENCY_TIMER 0x00 | ||
74 | #define PCI_NORMAL_CACHE_LINE_SIZE 0x08 /* RW */ | ||
75 | |||
76 | /* BAR */ | ||
77 | #define PCI_BAR0_REG 0x10 | ||
78 | #define PCI_BAR1_REG 0x14 | ||
79 | #define PCI_BAR2_REG 0x18 | ||
80 | #define PCI_BAR3_REG 0x1c | ||
81 | #define PCI_BAR4_REG 0x20 | ||
82 | #define PCI_BAR5_REG 0x24 | ||
83 | #define PCI_BAR_COUNT 6 | ||
84 | #define PCI_BAR_RANGE_MASK 0xFFFFFFFF | ||
85 | |||
86 | /* CARDBUS CIS POINTER */ | ||
87 | #define PCI_CARDBUS_CIS_POINTER 0x00000000 | ||
88 | |||
89 | /* SUBSYSTEM VENDOR ID */ | ||
90 | #define CS5536_SUB_VENDOR_ID CS5536_VENDOR_ID | ||
91 | |||
92 | /* SUBSYSTEM ID */ | ||
93 | #define CS5536_ISA_SUB_ID CS5536_ISA_DEVICE_ID | ||
94 | #define CS5536_IDE_SUB_ID CS5536_IDE_DEVICE_ID | ||
95 | #define CS5536_ACC_SUB_ID CS5536_ACC_DEVICE_ID | ||
96 | #define CS5536_OHCI_SUB_ID CS5536_OHCI_DEVICE_ID | ||
97 | #define CS5536_EHCI_SUB_ID CS5536_EHCI_DEVICE_ID | ||
98 | |||
99 | /* EXPANSION ROM BAR */ | ||
100 | #define PCI_EXPANSION_ROM_BAR 0x00000000 | ||
101 | |||
102 | /* CAPABILITIES POINTER */ | ||
103 | #define PCI_CAPLIST_POINTER 0x00000000 | ||
104 | #define PCI_CAPLIST_USB_POINTER 0x40 | ||
105 | /* INTERRUPT */ | ||
106 | |||
107 | #define CFG_PCI_INTERRUPT_LINE(pin, mod_intr) \ | ||
108 | ((PCI_MAX_LATENCY << 24) | (PCI_MIN_GRANT << 16) | \ | ||
109 | ((pin) << 8) | (mod_intr)) | ||
110 | |||
111 | #define PCI_MAX_LATENCY 0x40 | ||
112 | #define PCI_MIN_GRANT 0x00 | ||
113 | #define PCI_DEFAULT_PIN 0x01 | ||
114 | |||
115 | /*********** EXPANSION PCI REG ************************/ | ||
116 | |||
117 | /* | ||
118 | * ISA EXPANSION | ||
119 | */ | ||
120 | #define PCI_UART1_INT_REG 0x50 | ||
121 | #define PCI_UART2_INT_REG 0x54 | ||
122 | #define PCI_ISA_FIXUP_REG 0x58 | ||
123 | |||
124 | /* | ||
125 | * IDE EXPANSION | ||
126 | */ | ||
127 | #define PCI_IDE_CFG_REG 0x40 | ||
128 | #define CS5536_IDE_FLASH_SIGNATURE 0xDEADBEEF | ||
129 | #define PCI_IDE_DTC_REG 0x48 | ||
130 | #define PCI_IDE_CAST_REG 0x4C | ||
131 | #define PCI_IDE_ETC_REG 0x50 | ||
132 | #define PCI_IDE_PM_REG 0x54 | ||
133 | #define PCI_IDE_INT_REG 0x60 | ||
134 | |||
135 | /* | ||
136 | * ACC EXPANSION | ||
137 | */ | ||
138 | #define PCI_ACC_INT_REG 0x50 | ||
139 | |||
140 | /* | ||
141 | * OHCI EXPANSION : INTTERUPT IS IMPLEMENTED BY THE OHCI | ||
142 | */ | ||
143 | #define PCI_OHCI_PM_REG 0x40 | ||
144 | #define PCI_OHCI_INT_REG 0x50 | ||
145 | |||
146 | /* | ||
147 | * EHCI EXPANSION | ||
148 | */ | ||
149 | #define PCI_EHCI_LEGSMIEN_REG 0x50 | ||
150 | #define PCI_EHCI_LEGSMISTS_REG 0x54 | ||
151 | #define PCI_EHCI_FLADJ_REG 0x60 | ||
152 | |||
153 | #endif /* _CS5536_PCI_H_ */ | ||
diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_vsm.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_vsm.h new file mode 100644 index 000000000000..21c4ecedebe7 --- /dev/null +++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_vsm.h | |||
@@ -0,0 +1,31 @@ | |||
1 | /* | ||
2 | * the read/write interfaces for Virtual Support Module(VSM) | ||
3 | * | ||
4 | * Copyright (C) 2009 Lemote, Inc. | ||
5 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
6 | */ | ||
7 | |||
8 | #ifndef _CS5536_VSM_H | ||
9 | #define _CS5536_VSM_H | ||
10 | |||
11 | #include <linux/types.h> | ||
12 | |||
13 | typedef void (*cs5536_pci_vsm_write)(int reg, u32 value); | ||
14 | typedef u32 (*cs5536_pci_vsm_read)(int reg); | ||
15 | |||
16 | #define DECLARE_CS5536_MODULE(name) \ | ||
17 | extern void pci_##name##_write_reg(int reg, u32 value); \ | ||
18 | extern u32 pci_##name##_read_reg(int reg); | ||
19 | |||
20 | /* ide module */ | ||
21 | DECLARE_CS5536_MODULE(ide) | ||
22 | /* acc module */ | ||
23 | DECLARE_CS5536_MODULE(acc) | ||
24 | /* ohci module */ | ||
25 | DECLARE_CS5536_MODULE(ohci) | ||
26 | /* isa module */ | ||
27 | DECLARE_CS5536_MODULE(isa) | ||
28 | /* ehci module */ | ||
29 | DECLARE_CS5536_MODULE(ehci) | ||
30 | |||
31 | #endif /* _CS5536_VSM_H */ | ||
diff --git a/arch/mips/include/asm/mach-loongson/dma-coherence.h b/arch/mips/include/asm/mach-loongson/dma-coherence.h index 71a6851ba833..981c75f91a7d 100644 --- a/arch/mips/include/asm/mach-loongson/dma-coherence.h +++ b/arch/mips/include/asm/mach-loongson/dma-coherence.h | |||
@@ -28,7 +28,11 @@ static inline dma_addr_t plat_map_dma_mem_page(struct device *dev, | |||
28 | static inline unsigned long plat_dma_addr_to_phys(struct device *dev, | 28 | static inline unsigned long plat_dma_addr_to_phys(struct device *dev, |
29 | dma_addr_t dma_addr) | 29 | dma_addr_t dma_addr) |
30 | { | 30 | { |
31 | #if defined(CONFIG_CPU_LOONGSON2F) && defined(CONFIG_64BIT) | ||
32 | return (dma_addr > 0x8fffffff) ? dma_addr : (dma_addr & 0x0fffffff); | ||
33 | #else | ||
31 | return dma_addr & 0x7fffffff; | 34 | return dma_addr & 0x7fffffff; |
35 | #endif | ||
32 | } | 36 | } |
33 | 37 | ||
34 | static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr, | 38 | static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr, |
diff --git a/arch/mips/include/asm/mach-loongson/loongson.h b/arch/mips/include/asm/mach-loongson/loongson.h index da70bcf2304e..fcdbe3a4ce1f 100644 --- a/arch/mips/include/asm/mach-loongson/loongson.h +++ b/arch/mips/include/asm/mach-loongson/loongson.h | |||
@@ -1,12 +1,11 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2009 Lemote, Inc. & Institute of Computing Technology | 2 | * Copyright (C) 2009 Lemote, Inc. |
3 | * Author: Wu Zhangjin <wuzj@lemote.com> | 3 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms of the GNU General Public License as published by the | 6 | * under the terms of the GNU General Public License as published by the |
7 | * Free Software Foundation; either version 2 of the License, or (at your | 7 | * Free Software Foundation; either version 2 of the License, or (at your |
8 | * option) any later version. | 8 | * option) any later version. |
9 | * | ||
10 | */ | 9 | */ |
11 | 10 | ||
12 | #ifndef __ASM_MACH_LOONGSON_LOONGSON_H | 11 | #ifndef __ASM_MACH_LOONGSON_LOONGSON_H |
@@ -15,9 +14,6 @@ | |||
15 | #include <linux/io.h> | 14 | #include <linux/io.h> |
16 | #include <linux/init.h> | 15 | #include <linux/init.h> |
17 | 16 | ||
18 | /* there is an internal bonito64-compatiable northbridge in loongson2e/2f */ | ||
19 | #include <asm/mips-boards/bonito64.h> | ||
20 | |||
21 | /* loongson internal northbridge initialization */ | 17 | /* loongson internal northbridge initialization */ |
22 | extern void bonito_irq_init(void); | 18 | extern void bonito_irq_init(void); |
23 | 19 | ||
@@ -26,13 +22,25 @@ extern void mach_prepare_reboot(void); | |||
26 | extern void mach_prepare_shutdown(void); | 22 | extern void mach_prepare_shutdown(void); |
27 | 23 | ||
28 | /* environment arguments from bootloader */ | 24 | /* environment arguments from bootloader */ |
29 | extern unsigned long bus_clock, cpu_clock_freq; | 25 | extern unsigned long cpu_clock_freq; |
30 | extern unsigned long memsize, highmemsize; | 26 | extern unsigned long memsize, highmemsize; |
31 | 27 | ||
32 | /* loongson-specific command line, env and memory initialization */ | 28 | /* loongson-specific command line, env and memory initialization */ |
33 | extern void __init prom_init_memory(void); | 29 | extern void __init prom_init_memory(void); |
34 | extern void __init prom_init_cmdline(void); | 30 | extern void __init prom_init_cmdline(void); |
31 | extern void __init prom_init_machtype(void); | ||
35 | extern void __init prom_init_env(void); | 32 | extern void __init prom_init_env(void); |
33 | #ifdef CONFIG_LOONGSON_UART_BASE | ||
34 | extern unsigned long _loongson_uart_base, loongson_uart_base; | ||
35 | extern void prom_init_loongson_uart_base(void); | ||
36 | #endif | ||
37 | |||
38 | static inline void prom_init_uart_base(void) | ||
39 | { | ||
40 | #ifdef CONFIG_LOONGSON_UART_BASE | ||
41 | prom_init_loongson_uart_base(); | ||
42 | #endif | ||
43 | } | ||
36 | 44 | ||
37 | /* irq operation functions */ | 45 | /* irq operation functions */ |
38 | extern void bonito_irqdispatch(void); | 46 | extern void bonito_irqdispatch(void); |
@@ -40,25 +48,276 @@ extern void __init bonito_irq_init(void); | |||
40 | extern void __init set_irq_trigger_mode(void); | 48 | extern void __init set_irq_trigger_mode(void); |
41 | extern void __init mach_init_irq(void); | 49 | extern void __init mach_init_irq(void); |
42 | extern void mach_irq_dispatch(unsigned int pending); | 50 | extern void mach_irq_dispatch(unsigned int pending); |
51 | extern int mach_i8259_irq(void); | ||
52 | |||
53 | /* We need this in some places... */ | ||
54 | #define delay() ({ \ | ||
55 | int x; \ | ||
56 | for (x = 0; x < 100000; x++) \ | ||
57 | __asm__ __volatile__(""); \ | ||
58 | }) | ||
59 | |||
60 | #define LOONGSON_REG(x) \ | ||
61 | (*(volatile u32 *)((char *)CKSEG1ADDR(LOONGSON_REG_BASE) + (x))) | ||
62 | |||
63 | #define LOONGSON_IRQ_BASE 32 | ||
64 | #define LOONGSON2_PERFCNT_IRQ (MIPS_CPU_IRQ_BASE + 6) /* cpu perf counter */ | ||
65 | |||
66 | #define LOONGSON_FLASH_BASE 0x1c000000 | ||
67 | #define LOONGSON_FLASH_SIZE 0x02000000 /* 32M */ | ||
68 | #define LOONGSON_FLASH_TOP (LOONGSON_FLASH_BASE+LOONGSON_FLASH_SIZE-1) | ||
69 | |||
70 | #define LOONGSON_LIO0_BASE 0x1e000000 | ||
71 | #define LOONGSON_LIO0_SIZE 0x01C00000 /* 28M */ | ||
72 | #define LOONGSON_LIO0_TOP (LOONGSON_LIO0_BASE+LOONGSON_LIO0_SIZE-1) | ||
73 | |||
74 | #define LOONGSON_BOOT_BASE 0x1fc00000 | ||
75 | #define LOONGSON_BOOT_SIZE 0x00100000 /* 1M */ | ||
76 | #define LOONGSON_BOOT_TOP (LOONGSON_BOOT_BASE+LOONGSON_BOOT_SIZE-1) | ||
77 | #define LOONGSON_REG_BASE 0x1fe00000 | ||
78 | #define LOONGSON_REG_SIZE 0x00100000 /* 256Bytes + 256Bytes + ??? */ | ||
79 | #define LOONGSON_REG_TOP (LOONGSON_REG_BASE+LOONGSON_REG_SIZE-1) | ||
80 | |||
81 | #define LOONGSON_LIO1_BASE 0x1ff00000 | ||
82 | #define LOONGSON_LIO1_SIZE 0x00100000 /* 1M */ | ||
83 | #define LOONGSON_LIO1_TOP (LOONGSON_LIO1_BASE+LOONGSON_LIO1_SIZE-1) | ||
84 | |||
85 | #define LOONGSON_PCILO0_BASE 0x10000000 | ||
86 | #define LOONGSON_PCILO1_BASE 0x14000000 | ||
87 | #define LOONGSON_PCILO2_BASE 0x18000000 | ||
88 | #define LOONGSON_PCILO_BASE LOONGSON_PCILO0_BASE | ||
89 | #define LOONGSON_PCILO_SIZE 0x0c000000 /* 64M * 3 */ | ||
90 | #define LOONGSON_PCILO_TOP (LOONGSON_PCILO0_BASE+LOONGSON_PCILO_SIZE-1) | ||
91 | |||
92 | #define LOONGSON_PCICFG_BASE 0x1fe80000 | ||
93 | #define LOONGSON_PCICFG_SIZE 0x00000800 /* 2K */ | ||
94 | #define LOONGSON_PCICFG_TOP (LOONGSON_PCICFG_BASE+LOONGSON_PCICFG_SIZE-1) | ||
95 | #define LOONGSON_PCIIO_BASE 0x1fd00000 | ||
96 | #define LOONGSON_PCIIO_SIZE 0x00100000 /* 1M */ | ||
97 | #define LOONGSON_PCIIO_TOP (LOONGSON_PCIIO_BASE+LOONGSON_PCIIO_SIZE-1) | ||
98 | |||
99 | /* Loongson Register Bases */ | ||
100 | |||
101 | #define LOONGSON_PCICONFIGBASE 0x00 | ||
102 | #define LOONGSON_REGBASE 0x100 | ||
43 | 103 | ||
44 | /* PCI Configuration Registers */ | 104 | /* PCI Configuration Registers */ |
45 | #define LOONGSON_PCI_ISR4C BONITO_PCI_REG(0x4c) | 105 | |
106 | #define LOONGSON_PCI_REG(x) LOONGSON_REG(LOONGSON_PCICONFIGBASE + (x)) | ||
107 | #define LOONGSON_PCIDID LOONGSON_PCI_REG(0x00) | ||
108 | #define LOONGSON_PCICMD LOONGSON_PCI_REG(0x04) | ||
109 | #define LOONGSON_PCICLASS LOONGSON_PCI_REG(0x08) | ||
110 | #define LOONGSON_PCILTIMER LOONGSON_PCI_REG(0x0c) | ||
111 | #define LOONGSON_PCIBASE0 LOONGSON_PCI_REG(0x10) | ||
112 | #define LOONGSON_PCIBASE1 LOONGSON_PCI_REG(0x14) | ||
113 | #define LOONGSON_PCIBASE2 LOONGSON_PCI_REG(0x18) | ||
114 | #define LOONGSON_PCIBASE3 LOONGSON_PCI_REG(0x1c) | ||
115 | #define LOONGSON_PCIBASE4 LOONGSON_PCI_REG(0x20) | ||
116 | #define LOONGSON_PCIEXPRBASE LOONGSON_PCI_REG(0x30) | ||
117 | #define LOONGSON_PCIINT LOONGSON_PCI_REG(0x3c) | ||
118 | |||
119 | #define LOONGSON_PCI_ISR4C LOONGSON_PCI_REG(0x4c) | ||
120 | |||
121 | #define LOONGSON_PCICMD_PERR_CLR 0x80000000 | ||
122 | #define LOONGSON_PCICMD_SERR_CLR 0x40000000 | ||
123 | #define LOONGSON_PCICMD_MABORT_CLR 0x20000000 | ||
124 | #define LOONGSON_PCICMD_MTABORT_CLR 0x10000000 | ||
125 | #define LOONGSON_PCICMD_TABORT_CLR 0x08000000 | ||
126 | #define LOONGSON_PCICMD_MPERR_CLR 0x01000000 | ||
127 | #define LOONGSON_PCICMD_PERRRESPEN 0x00000040 | ||
128 | #define LOONGSON_PCICMD_ASTEPEN 0x00000080 | ||
129 | #define LOONGSON_PCICMD_SERREN 0x00000100 | ||
130 | #define LOONGSON_PCILTIMER_BUSLATENCY 0x0000ff00 | ||
131 | #define LOONGSON_PCILTIMER_BUSLATENCY_SHIFT 8 | ||
132 | |||
133 | /* Loongson h/w Configuration */ | ||
134 | |||
135 | #define LOONGSON_GENCFG_OFFSET 0x4 | ||
136 | #define LOONGSON_GENCFG LOONGSON_REG(LOONGSON_REGBASE + LOONGSON_GENCFG_OFFSET) | ||
137 | |||
138 | #define LOONGSON_GENCFG_DEBUGMODE 0x00000001 | ||
139 | #define LOONGSON_GENCFG_SNOOPEN 0x00000002 | ||
140 | #define LOONGSON_GENCFG_CPUSELFRESET 0x00000004 | ||
141 | |||
142 | #define LOONGSON_GENCFG_FORCE_IRQA 0x00000008 | ||
143 | #define LOONGSON_GENCFG_IRQA_ISOUT 0x00000010 | ||
144 | #define LOONGSON_GENCFG_IRQA_FROM_INT1 0x00000020 | ||
145 | #define LOONGSON_GENCFG_BYTESWAP 0x00000040 | ||
146 | |||
147 | #define LOONGSON_GENCFG_UNCACHED 0x00000080 | ||
148 | #define LOONGSON_GENCFG_PREFETCHEN 0x00000100 | ||
149 | #define LOONGSON_GENCFG_WBEHINDEN 0x00000200 | ||
150 | #define LOONGSON_GENCFG_CACHEALG 0x00000c00 | ||
151 | #define LOONGSON_GENCFG_CACHEALG_SHIFT 10 | ||
152 | #define LOONGSON_GENCFG_PCIQUEUE 0x00001000 | ||
153 | #define LOONGSON_GENCFG_CACHESTOP 0x00002000 | ||
154 | #define LOONGSON_GENCFG_MSTRBYTESWAP 0x00004000 | ||
155 | #define LOONGSON_GENCFG_BUSERREN 0x00008000 | ||
156 | #define LOONGSON_GENCFG_NORETRYTIMEOUT 0x00010000 | ||
157 | #define LOONGSON_GENCFG_SHORTCOPYTIMEOUT 0x00020000 | ||
158 | |||
159 | /* PCI address map control */ | ||
160 | |||
161 | #define LOONGSON_PCIMAP LOONGSON_REG(LOONGSON_REGBASE + 0x10) | ||
162 | #define LOONGSON_PCIMEMBASECFG LOONGSON_REG(LOONGSON_REGBASE + 0x14) | ||
163 | #define LOONGSON_PCIMAP_CFG LOONGSON_REG(LOONGSON_REGBASE + 0x18) | ||
164 | |||
165 | /* GPIO Regs - r/w */ | ||
166 | |||
167 | #define LOONGSON_GPIODATA LOONGSON_REG(LOONGSON_REGBASE + 0x1c) | ||
168 | #define LOONGSON_GPIOIE LOONGSON_REG(LOONGSON_REGBASE + 0x20) | ||
169 | |||
170 | /* ICU Configuration Regs - r/w */ | ||
171 | |||
172 | #define LOONGSON_INTEDGE LOONGSON_REG(LOONGSON_REGBASE + 0x24) | ||
173 | #define LOONGSON_INTSTEER LOONGSON_REG(LOONGSON_REGBASE + 0x28) | ||
174 | #define LOONGSON_INTPOL LOONGSON_REG(LOONGSON_REGBASE + 0x2c) | ||
175 | |||
176 | /* ICU Enable Regs - IntEn & IntISR are r/o. */ | ||
177 | |||
178 | #define LOONGSON_INTENSET LOONGSON_REG(LOONGSON_REGBASE + 0x30) | ||
179 | #define LOONGSON_INTENCLR LOONGSON_REG(LOONGSON_REGBASE + 0x34) | ||
180 | #define LOONGSON_INTEN LOONGSON_REG(LOONGSON_REGBASE + 0x38) | ||
181 | #define LOONGSON_INTISR LOONGSON_REG(LOONGSON_REGBASE + 0x3c) | ||
182 | |||
183 | /* ICU */ | ||
184 | #define LOONGSON_ICU_MBOXES 0x0000000f | ||
185 | #define LOONGSON_ICU_MBOXES_SHIFT 0 | ||
186 | #define LOONGSON_ICU_DMARDY 0x00000010 | ||
187 | #define LOONGSON_ICU_DMAEMPTY 0x00000020 | ||
188 | #define LOONGSON_ICU_COPYRDY 0x00000040 | ||
189 | #define LOONGSON_ICU_COPYEMPTY 0x00000080 | ||
190 | #define LOONGSON_ICU_COPYERR 0x00000100 | ||
191 | #define LOONGSON_ICU_PCIIRQ 0x00000200 | ||
192 | #define LOONGSON_ICU_MASTERERR 0x00000400 | ||
193 | #define LOONGSON_ICU_SYSTEMERR 0x00000800 | ||
194 | #define LOONGSON_ICU_DRAMPERR 0x00001000 | ||
195 | #define LOONGSON_ICU_RETRYERR 0x00002000 | ||
196 | #define LOONGSON_ICU_GPIOS 0x01ff0000 | ||
197 | #define LOONGSON_ICU_GPIOS_SHIFT 16 | ||
198 | #define LOONGSON_ICU_GPINS 0x7e000000 | ||
199 | #define LOONGSON_ICU_GPINS_SHIFT 25 | ||
200 | #define LOONGSON_ICU_MBOX(N) (1<<(LOONGSON_ICU_MBOXES_SHIFT+(N))) | ||
201 | #define LOONGSON_ICU_GPIO(N) (1<<(LOONGSON_ICU_GPIOS_SHIFT+(N))) | ||
202 | #define LOONGSON_ICU_GPIN(N) (1<<(LOONGSON_ICU_GPINS_SHIFT+(N))) | ||
203 | |||
204 | /* PCI prefetch window base & mask */ | ||
205 | |||
206 | #define LOONGSON_MEM_WIN_BASE_L LOONGSON_REG(LOONGSON_REGBASE + 0x40) | ||
207 | #define LOONGSON_MEM_WIN_BASE_H LOONGSON_REG(LOONGSON_REGBASE + 0x44) | ||
208 | #define LOONGSON_MEM_WIN_MASK_L LOONGSON_REG(LOONGSON_REGBASE + 0x48) | ||
209 | #define LOONGSON_MEM_WIN_MASK_H LOONGSON_REG(LOONGSON_REGBASE + 0x4c) | ||
46 | 210 | ||
47 | /* PCI_Hit*_Sel_* */ | 211 | /* PCI_Hit*_Sel_* */ |
48 | 212 | ||
49 | #define LOONGSON_PCI_HIT0_SEL_L BONITO(BONITO_REGBASE + 0x50) | 213 | #define LOONGSON_PCI_HIT0_SEL_L LOONGSON_REG(LOONGSON_REGBASE + 0x50) |
50 | #define LOONGSON_PCI_HIT0_SEL_H BONITO(BONITO_REGBASE + 0x54) | 214 | #define LOONGSON_PCI_HIT0_SEL_H LOONGSON_REG(LOONGSON_REGBASE + 0x54) |
51 | #define LOONGSON_PCI_HIT1_SEL_L BONITO(BONITO_REGBASE + 0x58) | 215 | #define LOONGSON_PCI_HIT1_SEL_L LOONGSON_REG(LOONGSON_REGBASE + 0x58) |
52 | #define LOONGSON_PCI_HIT1_SEL_H BONITO(BONITO_REGBASE + 0x5c) | 216 | #define LOONGSON_PCI_HIT1_SEL_H LOONGSON_REG(LOONGSON_REGBASE + 0x5c) |
53 | #define LOONGSON_PCI_HIT2_SEL_L BONITO(BONITO_REGBASE + 0x60) | 217 | #define LOONGSON_PCI_HIT2_SEL_L LOONGSON_REG(LOONGSON_REGBASE + 0x60) |
54 | #define LOONGSON_PCI_HIT2_SEL_H BONITO(BONITO_REGBASE + 0x64) | 218 | #define LOONGSON_PCI_HIT2_SEL_H LOONGSON_REG(LOONGSON_REGBASE + 0x64) |
55 | 219 | ||
56 | /* PXArb Config & Status */ | 220 | /* PXArb Config & Status */ |
57 | 221 | ||
58 | #define LOONGSON_PXARB_CFG BONITO(BONITO_REGBASE + 0x68) | 222 | #define LOONGSON_PXARB_CFG LOONGSON_REG(LOONGSON_REGBASE + 0x68) |
59 | #define LOONGSON_PXARB_STATUS BONITO(BONITO_REGBASE + 0x6c) | 223 | #define LOONGSON_PXARB_STATUS LOONGSON_REG(LOONGSON_REGBASE + 0x6c) |
224 | |||
225 | /* pcimap */ | ||
226 | |||
227 | #define LOONGSON_PCIMAP_PCIMAP_LO0 0x0000003f | ||
228 | #define LOONGSON_PCIMAP_PCIMAP_LO0_SHIFT 0 | ||
229 | #define LOONGSON_PCIMAP_PCIMAP_LO1 0x00000fc0 | ||
230 | #define LOONGSON_PCIMAP_PCIMAP_LO1_SHIFT 6 | ||
231 | #define LOONGSON_PCIMAP_PCIMAP_LO2 0x0003f000 | ||
232 | #define LOONGSON_PCIMAP_PCIMAP_LO2_SHIFT 12 | ||
233 | #define LOONGSON_PCIMAP_PCIMAP_2 0x00040000 | ||
234 | #define LOONGSON_PCIMAP_WIN(WIN, ADDR) \ | ||
235 | ((((ADDR)>>26) & LOONGSON_PCIMAP_PCIMAP_LO0) << ((WIN)*6)) | ||
236 | |||
237 | #ifdef CONFIG_CPU_SUPPORTS_CPUFREQ | ||
238 | #include <linux/cpufreq.h> | ||
239 | extern void loongson2_cpu_wait(void); | ||
240 | extern struct cpufreq_frequency_table loongson2_clockmod_table[]; | ||
241 | |||
242 | /* Chip Config */ | ||
243 | #define LOONGSON_CHIPCFG0 LOONGSON_REG(LOONGSON_REGBASE + 0x80) | ||
244 | #endif | ||
245 | |||
246 | /* | ||
247 | * address windows configuration module | ||
248 | * | ||
249 | * loongson2e do not have this module | ||
250 | */ | ||
251 | #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG | ||
252 | |||
253 | /* address window config module base address */ | ||
254 | #define LOONGSON_ADDRWINCFG_BASE 0x3ff00000ul | ||
255 | #define LOONGSON_ADDRWINCFG_SIZE 0x180 | ||
256 | |||
257 | extern unsigned long _loongson_addrwincfg_base; | ||
258 | #define LOONGSON_ADDRWINCFG(offset) \ | ||
259 | (*(volatile u64 *)(_loongson_addrwincfg_base + (offset))) | ||
260 | |||
261 | #define CPU_WIN0_BASE LOONGSON_ADDRWINCFG(0x00) | ||
262 | #define CPU_WIN1_BASE LOONGSON_ADDRWINCFG(0x08) | ||
263 | #define CPU_WIN2_BASE LOONGSON_ADDRWINCFG(0x10) | ||
264 | #define CPU_WIN3_BASE LOONGSON_ADDRWINCFG(0x18) | ||
265 | |||
266 | #define CPU_WIN0_MASK LOONGSON_ADDRWINCFG(0x20) | ||
267 | #define CPU_WIN1_MASK LOONGSON_ADDRWINCFG(0x28) | ||
268 | #define CPU_WIN2_MASK LOONGSON_ADDRWINCFG(0x30) | ||
269 | #define CPU_WIN3_MASK LOONGSON_ADDRWINCFG(0x38) | ||
270 | |||
271 | #define CPU_WIN0_MMAP LOONGSON_ADDRWINCFG(0x40) | ||
272 | #define CPU_WIN1_MMAP LOONGSON_ADDRWINCFG(0x48) | ||
273 | #define CPU_WIN2_MMAP LOONGSON_ADDRWINCFG(0x50) | ||
274 | #define CPU_WIN3_MMAP LOONGSON_ADDRWINCFG(0x58) | ||
275 | |||
276 | #define PCIDMA_WIN0_BASE LOONGSON_ADDRWINCFG(0x60) | ||
277 | #define PCIDMA_WIN1_BASE LOONGSON_ADDRWINCFG(0x68) | ||
278 | #define PCIDMA_WIN2_BASE LOONGSON_ADDRWINCFG(0x70) | ||
279 | #define PCIDMA_WIN3_BASE LOONGSON_ADDRWINCFG(0x78) | ||
280 | |||
281 | #define PCIDMA_WIN0_MASK LOONGSON_ADDRWINCFG(0x80) | ||
282 | #define PCIDMA_WIN1_MASK LOONGSON_ADDRWINCFG(0x88) | ||
283 | #define PCIDMA_WIN2_MASK LOONGSON_ADDRWINCFG(0x90) | ||
284 | #define PCIDMA_WIN3_MASK LOONGSON_ADDRWINCFG(0x98) | ||
285 | |||
286 | #define PCIDMA_WIN0_MMAP LOONGSON_ADDRWINCFG(0xa0) | ||
287 | #define PCIDMA_WIN1_MMAP LOONGSON_ADDRWINCFG(0xa8) | ||
288 | #define PCIDMA_WIN2_MMAP LOONGSON_ADDRWINCFG(0xb0) | ||
289 | #define PCIDMA_WIN3_MMAP LOONGSON_ADDRWINCFG(0xb8) | ||
290 | |||
291 | #define ADDRWIN_WIN0 0 | ||
292 | #define ADDRWIN_WIN1 1 | ||
293 | #define ADDRWIN_WIN2 2 | ||
294 | #define ADDRWIN_WIN3 3 | ||
295 | |||
296 | #define ADDRWIN_MAP_DST_DDR 0 | ||
297 | #define ADDRWIN_MAP_DST_PCI 1 | ||
298 | #define ADDRWIN_MAP_DST_LIO 1 | ||
299 | |||
300 | /* | ||
301 | * s: CPU, PCIDMA | ||
302 | * d: DDR, PCI, LIO | ||
303 | * win: 0, 1, 2, 3 | ||
304 | * src: map source | ||
305 | * dst: map destination | ||
306 | * size: ~mask + 1 | ||
307 | */ | ||
308 | #define LOONGSON_ADDRWIN_CFG(s, d, w, src, dst, size) do {\ | ||
309 | s##_WIN##w##_BASE = (src); \ | ||
310 | s##_WIN##w##_MMAP = (dst) | ADDRWIN_MAP_DST_##d; \ | ||
311 | s##_WIN##w##_MASK = ~(size-1); \ | ||
312 | } while (0) | ||
313 | |||
314 | #define LOONGSON_ADDRWIN_CPUTOPCI(win, src, dst, size) \ | ||
315 | LOONGSON_ADDRWIN_CFG(CPU, PCI, win, src, dst, size) | ||
316 | #define LOONGSON_ADDRWIN_CPUTODDR(win, src, dst, size) \ | ||
317 | LOONGSON_ADDRWIN_CFG(CPU, DDR, win, src, dst, size) | ||
318 | #define LOONGSON_ADDRWIN_PCITODDR(win, src, dst, size) \ | ||
319 | LOONGSON_ADDRWIN_CFG(PCIDMA, DDR, win, src, dst, size) | ||
60 | 320 | ||
61 | /* loongson2-specific perf counter IRQ */ | 321 | #endif /* ! CONFIG_CPU_SUPPORTS_ADDRWINCFG */ |
62 | #define LOONGSON2_PERFCNT_IRQ (MIPS_CPU_IRQ_BASE + 6) | ||
63 | 322 | ||
64 | #endif /* __ASM_MACH_LOONGSON_LOONGSON_H */ | 323 | #endif /* __ASM_MACH_LOONGSON_LOONGSON_H */ |
diff --git a/arch/mips/include/asm/mach-loongson/machine.h b/arch/mips/include/asm/mach-loongson/machine.h index 206ea2067916..43213388c174 100644 --- a/arch/mips/include/asm/mach-loongson/machine.h +++ b/arch/mips/include/asm/mach-loongson/machine.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2009 Lemote, Inc. & Institute of Computing Technology | 2 | * Copyright (C) 2009 Lemote, Inc. |
3 | * Author: Wu Zhangjin <wuzj@lemote.com> | 3 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms of the GNU General Public License as published by the | 6 | * under the terms of the GNU General Public License as published by the |
@@ -13,10 +13,15 @@ | |||
13 | 13 | ||
14 | #ifdef CONFIG_LEMOTE_FULOONG2E | 14 | #ifdef CONFIG_LEMOTE_FULOONG2E |
15 | 15 | ||
16 | #define LOONGSON_UART_BASE (BONITO_PCIIO_BASE + 0x3f8) | ||
17 | |||
18 | #define LOONGSON_MACHTYPE MACH_LEMOTE_FL2E | 16 | #define LOONGSON_MACHTYPE MACH_LEMOTE_FL2E |
19 | 17 | ||
20 | #endif | 18 | #endif |
21 | 19 | ||
20 | /* use fuloong2f as the default machine of LEMOTE_MACH2F */ | ||
21 | #ifdef CONFIG_LEMOTE_MACH2F | ||
22 | |||
23 | #define LOONGSON_MACHTYPE MACH_LEMOTE_FL2F | ||
24 | |||
25 | #endif | ||
26 | |||
22 | #endif /* __ASM_MACH_LOONGSON_MACHINE_H */ | 27 | #endif /* __ASM_MACH_LOONGSON_MACHINE_H */ |
diff --git a/arch/mips/include/asm/mach-loongson/mem.h b/arch/mips/include/asm/mach-loongson/mem.h index bd7b3cba7e35..3b23ee8647d6 100644 --- a/arch/mips/include/asm/mach-loongson/mem.h +++ b/arch/mips/include/asm/mach-loongson/mem.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2009 Lemote, Inc. & Institute of Computing Technology | 2 | * Copyright (C) 2009 Lemote, Inc. |
3 | * Author: Wu Zhangjin <wuzj@lemote.com> | 3 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms of the GNU General Public License as published by the | 6 | * under the terms of the GNU General Public License as published by the |
@@ -12,19 +12,30 @@ | |||
12 | #define __ASM_MACH_LOONGSON_MEM_H | 12 | #define __ASM_MACH_LOONGSON_MEM_H |
13 | 13 | ||
14 | /* | 14 | /* |
15 | * On Lemote Loongson 2e | 15 | * high memory space |
16 | * | 16 | * |
17 | * the high memory space starts from 512M. | 17 | * in loongson2e, starts from 512M |
18 | * the peripheral registers reside between 0x1000:0000 and 0x2000:0000. | 18 | * in loongson2f, starts from 2G 256M |
19 | */ | 19 | */ |
20 | #ifdef CONFIG_CPU_LOONGSON2E | ||
21 | #define LOONGSON_HIGHMEM_START 0x20000000 | ||
22 | #else | ||
23 | #define LOONGSON_HIGHMEM_START 0x90000000 | ||
24 | #endif | ||
20 | 25 | ||
21 | #ifdef CONFIG_LEMOTE_FULOONG2E | 26 | /* |
22 | 27 | * the peripheral registers(MMIO): | |
23 | #define LOONGSON_HIGHMEM_START 0x20000000 | 28 | * |
29 | * On the Lemote Loongson 2e system, reside between 0x1000:0000 and 0x2000:0000. | ||
30 | * On the Lemote Loongson 2f system, reside between 0x1000:0000 and 0x8000:0000. | ||
31 | */ | ||
24 | 32 | ||
25 | #define LOONGSON_MMIO_MEM_START 0x10000000 | 33 | #define LOONGSON_MMIO_MEM_START 0x10000000 |
26 | #define LOONGSON_MMIO_MEM_END 0x20000000 | ||
27 | 34 | ||
35 | #ifdef CONFIG_CPU_LOONGSON2E | ||
36 | #define LOONGSON_MMIO_MEM_END 0x20000000 | ||
37 | #else | ||
38 | #define LOONGSON_MMIO_MEM_END 0x80000000 | ||
28 | #endif | 39 | #endif |
29 | 40 | ||
30 | #endif /* __ASM_MACH_LOONGSON_MEM_H */ | 41 | #endif /* __ASM_MACH_LOONGSON_MEM_H */ |
diff --git a/arch/mips/include/asm/mach-loongson/pci.h b/arch/mips/include/asm/mach-loongson/pci.h index f1663ca81da0..bc99dab4ef63 100644 --- a/arch/mips/include/asm/mach-loongson/pci.h +++ b/arch/mips/include/asm/mach-loongson/pci.h | |||
@@ -1,37 +1,50 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) 2008 Zhang Le <r0bertz@gentoo.org> | 2 | * Copyright (c) 2008 Zhang Le <r0bertz@gentoo.org> |
3 | * Copyright (c) 2009 Wu Zhangjin <wuzhangjin@gmail.com> | ||
3 | * | 4 | * |
4 | * This program is free software; you can redistribute it | 5 | * This program is free software; you can redistribute it |
5 | * and/or modify it under the terms of the GNU General | 6 | * and/or modify it under the terms of the GNU General |
6 | * Public License as published by the Free Software | 7 | * Public License as published by the Free Software |
7 | * Foundation; either version 2 of the License, or (at your | 8 | * Foundation; either version 2 of the License, or (at your |
8 | * option) any later version. | 9 | * option) any later version. |
9 | * | ||
10 | * This program is distributed in the hope that it will be | ||
11 | * useful, but WITHOUT ANY WARRANTY; without even the implied | ||
12 | * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR | ||
13 | * PURPOSE. See the GNU General Public License for more | ||
14 | * details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public | ||
17 | * License along with this program; if not, write to the Free | ||
18 | * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA | ||
19 | * 02139, USA. | ||
20 | */ | 10 | */ |
21 | 11 | ||
22 | #ifndef __ASM_MACH_LOONGSON_PCI_H_ | 12 | #ifndef __ASM_MACH_LOONGSON_PCI_H_ |
23 | #define __ASM_MACH_LOONGSON_PCI_H_ | 13 | #define __ASM_MACH_LOONGSON_PCI_H_ |
24 | 14 | ||
25 | extern struct pci_ops bonito64_pci_ops; | 15 | extern struct pci_ops loongson_pci_ops; |
16 | |||
17 | /* this is an offset from mips_io_port_base */ | ||
18 | #define LOONGSON_PCI_IO_START 0x00004000UL | ||
19 | |||
20 | #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG | ||
21 | |||
22 | /* | ||
23 | * we use address window2 to map cpu address space to pci space | ||
24 | * window2: cpu [1G, 2G] -> pci [1G, 2G] | ||
25 | * why not use window 0 & 1? because they are used by cpu when booting. | ||
26 | * window0: cpu [0, 256M] -> ddr [0, 256M] | ||
27 | * window1: cpu [256M, 512M] -> pci [256M, 512M] | ||
28 | */ | ||
29 | |||
30 | /* the smallest LOONGSON_CPU_MEM_SRC can be 512M */ | ||
31 | #define LOONGSON_CPU_MEM_SRC 0x40000000ul /* 1G */ | ||
32 | #define LOONGSON_PCI_MEM_DST LOONGSON_CPU_MEM_SRC | ||
33 | |||
34 | #define LOONGSON_PCI_MEM_START LOONGSON_PCI_MEM_DST | ||
35 | #define LOONGSON_PCI_MEM_END (0x80000000ul-1) /* 2G */ | ||
36 | |||
37 | #define MMAP_CPUTOPCI_SIZE (LOONGSON_PCI_MEM_END - \ | ||
38 | LOONGSON_PCI_MEM_START + 1) | ||
26 | 39 | ||
27 | #ifdef CONFIG_LEMOTE_FULOONG2E | 40 | #else /* loongson2f/32bit & loongson2e */ |
28 | 41 | ||
29 | /* this pci memory space is mapped by pcimap in pci.c */ | 42 | /* this pci memory space is mapped by pcimap in pci.c */ |
30 | #define LOONGSON_PCI_MEM_START BONITO_PCILO1_BASE | 43 | #define LOONGSON_PCI_MEM_START LOONGSON_PCILO1_BASE |
31 | #define LOONGSON_PCI_MEM_END (BONITO_PCILO1_BASE + 0x04000000 * 2) | 44 | #define LOONGSON_PCI_MEM_END (LOONGSON_PCILO1_BASE + 0x04000000 * 2) |
32 | /* this is an offset from mips_io_port_base */ | 45 | /* this is an offset from mips_io_port_base */ |
33 | #define LOONGSON_PCI_IO_START 0x00004000UL | 46 | #define LOONGSON_PCI_IO_START 0x00004000UL |
34 | 47 | ||
35 | #endif | 48 | #endif /* !CONFIG_CPU_SUPPORTS_ADDRWINCFG */ |
36 | 49 | ||
37 | #endif /* !__ASM_MACH_LOONGSON_PCI_H_ */ | 50 | #endif /* !__ASM_MACH_LOONGSON_PCI_H_ */ |
diff --git a/arch/mips/include/asm/mach-pb1x00/pb1100.h b/arch/mips/include/asm/mach-pb1x00/pb1100.h deleted file mode 100644 index b1a60f1cbd02..000000000000 --- a/arch/mips/include/asm/mach-pb1x00/pb1100.h +++ /dev/null | |||
@@ -1,85 +0,0 @@ | |||
1 | /* | ||
2 | * Alchemy Semi Pb1100 Referrence Board | ||
3 | * | ||
4 | * Copyright 2001, 2008 MontaVista Software Inc. | ||
5 | * Author: MontaVista Software, Inc. <source@mvista.com> | ||
6 | * | ||
7 | * ######################################################################## | ||
8 | * | ||
9 | * This program is free software; you can distribute it and/or modify it | ||
10 | * under the terms of the GNU General Public License (Version 2) as | ||
11 | * published by the Free Software Foundation. | ||
12 | * | ||
13 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
14 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
15 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
16 | * for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License along | ||
19 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
20 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
21 | * | ||
22 | * ######################################################################## | ||
23 | * | ||
24 | * | ||
25 | */ | ||
26 | #ifndef __ASM_PB1100_H | ||
27 | #define __ASM_PB1100_H | ||
28 | |||
29 | #define PB1100_IDENT 0xAE000000 | ||
30 | #define BOARD_STATUS_REG 0xAE000004 | ||
31 | # define PB1100_ROM_SEL (1 << 15) | ||
32 | # define PB1100_ROM_SIZ (1 << 14) | ||
33 | # define PB1100_SWAP_BOOT (1 << 13) | ||
34 | # define PB1100_FLASH_WP (1 << 12) | ||
35 | # define PB1100_ROM_H_STS (1 << 11) | ||
36 | # define PB1100_ROM_L_STS (1 << 10) | ||
37 | # define PB1100_FLASH_H_STS (1 << 9) | ||
38 | # define PB1100_FLASH_L_STS (1 << 8) | ||
39 | # define PB1100_SRAM_SIZ (1 << 7) | ||
40 | # define PB1100_TSC_BUSY (1 << 6) | ||
41 | # define PB1100_PCMCIA_VS_MASK (3 << 4) | ||
42 | # define PB1100_RS232_CD (1 << 3) | ||
43 | # define PB1100_RS232_CTS (1 << 2) | ||
44 | # define PB1100_RS232_DSR (1 << 1) | ||
45 | # define PB1100_RS232_RI (1 << 0) | ||
46 | |||
47 | #define PB1100_IRDA_RS232 0xAE00000C | ||
48 | # define PB1100_IRDA_FULL (0 << 14) /* full power */ | ||
49 | # define PB1100_IRDA_SHUTDOWN (1 << 14) | ||
50 | # define PB1100_IRDA_TT (2 << 14) /* 2/3 power */ | ||
51 | # define PB1100_IRDA_OT (3 << 14) /* 1/3 power */ | ||
52 | # define PB1100_IRDA_FIR (1 << 13) | ||
53 | |||
54 | #define PCMCIA_BOARD_REG 0xAE000010 | ||
55 | # define PB1100_SD_WP1_RO (1 << 15) /* read only */ | ||
56 | # define PB1100_SD_WP0_RO (1 << 14) /* read only */ | ||
57 | # define PB1100_SD_PWR1 (1 << 11) /* applies power to SD1 */ | ||
58 | # define PB1100_SD_PWR0 (1 << 10) /* applies power to SD0 */ | ||
59 | # define PB1100_SEL_SD_CONN1 (1 << 9) | ||
60 | # define PB1100_SEL_SD_CONN0 (1 << 8) | ||
61 | # define PC_DEASSERT_RST (1 << 7) | ||
62 | # define PC_DRV_EN (1 << 4) | ||
63 | |||
64 | #define PB1100_G_CONTROL 0xAE000014 /* graphics control */ | ||
65 | |||
66 | #define PB1100_RST_VDDI 0xAE00001C | ||
67 | # define PB1100_SOFT_RESET (1 << 15) /* clear to reset the board */ | ||
68 | # define PB1100_VDDI_MASK 0x1F | ||
69 | |||
70 | #define PB1100_LEDS 0xAE000018 | ||
71 | |||
72 | /* | ||
73 | * 11:8 is 4 discreet LEDs. Clearing a bit illuminates the LED. | ||
74 | * 7:0 is the LED Display's decimal points. | ||
75 | */ | ||
76 | #define PB1100_HEX_LED 0xAE000018 | ||
77 | |||
78 | /* PCMCIA Pb1100 specific defines */ | ||
79 | #define PCMCIA_MAX_SOCK 0 | ||
80 | #define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK + 1) | ||
81 | |||
82 | /* VPP/VCC */ | ||
83 | #define SET_VCC_VPP(VCC, VPP) (((VCC) << 2) | ((VPP) << 0)) | ||
84 | |||
85 | #endif /* __ASM_PB1100_H */ | ||
diff --git a/arch/mips/include/asm/mach-pb1x00/pb1200.h b/arch/mips/include/asm/mach-pb1x00/pb1200.h index c8618df88cb5..962eb55dc880 100644 --- a/arch/mips/include/asm/mach-pb1x00/pb1200.h +++ b/arch/mips/include/asm/mach-pb1x00/pb1200.h | |||
@@ -25,6 +25,7 @@ | |||
25 | #define __ASM_PB1200_H | 25 | #define __ASM_PB1200_H |
26 | 26 | ||
27 | #include <linux/types.h> | 27 | #include <linux/types.h> |
28 | #include <asm/mach-au1x00/au1000.h> | ||
28 | #include <asm/mach-au1x00/au1xxx_psc.h> | 29 | #include <asm/mach-au1x00/au1xxx_psc.h> |
29 | 30 | ||
30 | #define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX | 31 | #define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX |
@@ -43,113 +44,8 @@ | |||
43 | * Refer to board documentation. | 44 | * Refer to board documentation. |
44 | */ | 45 | */ |
45 | #define AC97_PSC_BASE PSC1_BASE_ADDR | 46 | #define AC97_PSC_BASE PSC1_BASE_ADDR |
46 | #define I2S_PSC_BASE PSC1_BASE_ADDR | 47 | #define I2S_PSC_BASE PSC1_BASE_ADDR |
47 | 48 | ||
48 | #define BCSR_KSEG1_ADDR 0xAD800000 | ||
49 | |||
50 | typedef volatile struct | ||
51 | { | ||
52 | /*00*/ u16 whoami; | ||
53 | u16 reserved0; | ||
54 | /*04*/ u16 status; | ||
55 | u16 reserved1; | ||
56 | /*08*/ u16 switches; | ||
57 | u16 reserved2; | ||
58 | /*0C*/ u16 resets; | ||
59 | u16 reserved3; | ||
60 | |||
61 | /*10*/ u16 pcmcia; | ||
62 | u16 reserved4; | ||
63 | /*14*/ u16 board; | ||
64 | u16 reserved5; | ||
65 | /*18*/ u16 disk_leds; | ||
66 | u16 reserved6; | ||
67 | /*1C*/ u16 system; | ||
68 | u16 reserved7; | ||
69 | |||
70 | /*20*/ u16 intclr; | ||
71 | u16 reserved8; | ||
72 | /*24*/ u16 intset; | ||
73 | u16 reserved9; | ||
74 | /*28*/ u16 intclr_mask; | ||
75 | u16 reserved10; | ||
76 | /*2C*/ u16 intset_mask; | ||
77 | u16 reserved11; | ||
78 | |||
79 | /*30*/ u16 sig_status; | ||
80 | u16 reserved12; | ||
81 | /*34*/ u16 int_status; | ||
82 | u16 reserved13; | ||
83 | /*38*/ u16 reserved14; | ||
84 | u16 reserved15; | ||
85 | /*3C*/ u16 reserved16; | ||
86 | u16 reserved17; | ||
87 | |||
88 | } BCSR; | ||
89 | |||
90 | static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; | ||
91 | |||
92 | /* | ||
93 | * Register bit definitions for the BCSRs | ||
94 | */ | ||
95 | #define BCSR_WHOAMI_DCID 0x000F | ||
96 | #define BCSR_WHOAMI_CPLD 0x00F0 | ||
97 | #define BCSR_WHOAMI_BOARD 0x0F00 | ||
98 | |||
99 | #define BCSR_STATUS_PCMCIA0VS 0x0003 | ||
100 | #define BCSR_STATUS_PCMCIA1VS 0x000C | ||
101 | #define BCSR_STATUS_SWAPBOOT 0x0040 | ||
102 | #define BCSR_STATUS_FLASHBUSY 0x0100 | ||
103 | #define BCSR_STATUS_IDECBLID 0x0200 | ||
104 | #define BCSR_STATUS_SD0WP 0x0400 | ||
105 | #define BCSR_STATUS_SD1WP 0x0800 | ||
106 | #define BCSR_STATUS_U0RXD 0x1000 | ||
107 | #define BCSR_STATUS_U1RXD 0x2000 | ||
108 | |||
109 | #define BCSR_SWITCHES_OCTAL 0x00FF | ||
110 | #define BCSR_SWITCHES_DIP_1 0x0080 | ||
111 | #define BCSR_SWITCHES_DIP_2 0x0040 | ||
112 | #define BCSR_SWITCHES_DIP_3 0x0020 | ||
113 | #define BCSR_SWITCHES_DIP_4 0x0010 | ||
114 | #define BCSR_SWITCHES_DIP_5 0x0008 | ||
115 | #define BCSR_SWITCHES_DIP_6 0x0004 | ||
116 | #define BCSR_SWITCHES_DIP_7 0x0002 | ||
117 | #define BCSR_SWITCHES_DIP_8 0x0001 | ||
118 | #define BCSR_SWITCHES_ROTARY 0x0F00 | ||
119 | |||
120 | #define BCSR_RESETS_ETH 0x0001 | ||
121 | #define BCSR_RESETS_CAMERA 0x0002 | ||
122 | #define BCSR_RESETS_DC 0x0004 | ||
123 | #define BCSR_RESETS_IDE 0x0008 | ||
124 | /* not resets but in the same register */ | ||
125 | #define BCSR_RESETS_WSCFSM 0x0800 | ||
126 | #define BCSR_RESETS_PCS0MUX 0x1000 | ||
127 | #define BCSR_RESETS_PCS1MUX 0x2000 | ||
128 | #define BCSR_RESETS_SPISEL 0x4000 | ||
129 | #define BCSR_RESETS_SD1MUX 0x8000 | ||
130 | |||
131 | #define BCSR_PCMCIA_PC0VPP 0x0003 | ||
132 | #define BCSR_PCMCIA_PC0VCC 0x000C | ||
133 | #define BCSR_PCMCIA_PC0DRVEN 0x0010 | ||
134 | #define BCSR_PCMCIA_PC0RST 0x0080 | ||
135 | #define BCSR_PCMCIA_PC1VPP 0x0300 | ||
136 | #define BCSR_PCMCIA_PC1VCC 0x0C00 | ||
137 | #define BCSR_PCMCIA_PC1DRVEN 0x1000 | ||
138 | #define BCSR_PCMCIA_PC1RST 0x8000 | ||
139 | |||
140 | #define BCSR_BOARD_LCDVEE 0x0001 | ||
141 | #define BCSR_BOARD_LCDVDD 0x0002 | ||
142 | #define BCSR_BOARD_LCDBL 0x0004 | ||
143 | #define BCSR_BOARD_CAMSNAP 0x0010 | ||
144 | #define BCSR_BOARD_CAMPWR 0x0020 | ||
145 | #define BCSR_BOARD_SD0PWR 0x0040 | ||
146 | #define BCSR_BOARD_SD1PWR 0x0080 | ||
147 | |||
148 | #define BCSR_LEDS_DECIMALS 0x00FF | ||
149 | #define BCSR_LEDS_LED0 0x0100 | ||
150 | #define BCSR_LEDS_LED1 0x0200 | ||
151 | #define BCSR_LEDS_LED2 0x0400 | ||
152 | #define BCSR_LEDS_LED3 0x0800 | ||
153 | 49 | ||
154 | #define BCSR_SYSTEM_VDDI 0x001F | 50 | #define BCSR_SYSTEM_VDDI 0x001F |
155 | #define BCSR_SYSTEM_POWEROFF 0x4000 | 51 | #define BCSR_SYSTEM_POWEROFF 0x4000 |
@@ -239,20 +135,6 @@ enum external_pb1200_ints { | |||
239 | PB1200_INT_END = PB1200_INT_BEGIN + 15 | 135 | PB1200_INT_END = PB1200_INT_BEGIN + 15 |
240 | }; | 136 | }; |
241 | 137 | ||
242 | /* | ||
243 | * Pb1200 specific PCMCIA defines for drivers/pcmcia/au1000_db1x00.c | ||
244 | */ | ||
245 | #define PCMCIA_MAX_SOCK 1 | ||
246 | #define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK + 1) | ||
247 | |||
248 | /* VPP/VCC */ | ||
249 | #define SET_VCC_VPP(VCC, VPP, SLOT) \ | ||
250 | ((((VCC) << 2) | ((VPP) << 0)) << ((SLOT) * 8)) | ||
251 | |||
252 | #define BOARD_PC0_INT PB1200_PC0_INT | ||
253 | #define BOARD_PC1_INT PB1200_PC1_INT | ||
254 | #define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1 << (8 + (2 * SOCKET))) | ||
255 | |||
256 | /* NAND chip select */ | 138 | /* NAND chip select */ |
257 | #define NAND_CS 1 | 139 | #define NAND_CS 1 |
258 | 140 | ||
diff --git a/arch/mips/include/asm/mach-pb1x00/pb1500.h b/arch/mips/include/asm/mach-pb1x00/pb1500.h deleted file mode 100644 index da51a2eb7b82..000000000000 --- a/arch/mips/include/asm/mach-pb1x00/pb1500.h +++ /dev/null | |||
@@ -1,49 +0,0 @@ | |||
1 | /* | ||
2 | * Alchemy Semi Pb1500 Referrence Board | ||
3 | * | ||
4 | * Copyright 2001, 2008 MontaVista Software Inc. | ||
5 | * Author: MontaVista Software, Inc. <source@mvista.com> | ||
6 | * | ||
7 | * ######################################################################## | ||
8 | * | ||
9 | * This program is free software; you can distribute it and/or modify it | ||
10 | * under the terms of the GNU General Public License (Version 2) as | ||
11 | * published by the Free Software Foundation. | ||
12 | * | ||
13 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
14 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
15 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
16 | * for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License along | ||
19 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
20 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
21 | * | ||
22 | * ######################################################################## | ||
23 | * | ||
24 | * | ||
25 | */ | ||
26 | #ifndef __ASM_PB1500_H | ||
27 | #define __ASM_PB1500_H | ||
28 | |||
29 | #define IDENT_BOARD_REG 0xAE000000 | ||
30 | #define BOARD_STATUS_REG 0xAE000004 | ||
31 | #define PCI_BOARD_REG 0xAE000010 | ||
32 | #define PCMCIA_BOARD_REG 0xAE000010 | ||
33 | # define PC_DEASSERT_RST 0x80 | ||
34 | # define PC_DRV_EN 0x10 | ||
35 | #define PB1500_G_CONTROL 0xAE000014 | ||
36 | #define PB1500_RST_VDDI 0xAE00001C | ||
37 | #define PB1500_LEDS 0xAE000018 | ||
38 | |||
39 | #define PB1500_HEX_LED 0xAF000004 | ||
40 | #define PB1500_HEX_LED_BLANK 0xAF000008 | ||
41 | |||
42 | /* PCMCIA Pb1500 specific defines */ | ||
43 | #define PCMCIA_MAX_SOCK 0 | ||
44 | #define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK + 1) | ||
45 | |||
46 | /* VPP/VCC */ | ||
47 | #define SET_VCC_VPP(VCC, VPP) (((VCC) << 2) | ((VPP) << 0)) | ||
48 | |||
49 | #endif /* __ASM_PB1500_H */ | ||
diff --git a/arch/mips/include/asm/mach-pb1x00/pb1550.h b/arch/mips/include/asm/mach-pb1x00/pb1550.h index 6704a11497db..58796410bd6e 100644 --- a/arch/mips/include/asm/mach-pb1x00/pb1550.h +++ b/arch/mips/include/asm/mach-pb1x00/pb1550.h | |||
@@ -40,102 +40,6 @@ | |||
40 | #define SMBUS_PSC_BASE PSC2_BASE_ADDR | 40 | #define SMBUS_PSC_BASE PSC2_BASE_ADDR |
41 | #define I2S_PSC_BASE PSC3_BASE_ADDR | 41 | #define I2S_PSC_BASE PSC3_BASE_ADDR |
42 | 42 | ||
43 | #define BCSR_PHYS_ADDR 0xAF000000 | ||
44 | |||
45 | typedef volatile struct | ||
46 | { | ||
47 | /*00*/ u16 whoami; | ||
48 | u16 reserved0; | ||
49 | /*04*/ u16 status; | ||
50 | u16 reserved1; | ||
51 | /*08*/ u16 switches; | ||
52 | u16 reserved2; | ||
53 | /*0C*/ u16 resets; | ||
54 | u16 reserved3; | ||
55 | /*10*/ u16 pcmcia; | ||
56 | u16 reserved4; | ||
57 | /*14*/ u16 pci; | ||
58 | u16 reserved5; | ||
59 | /*18*/ u16 leds; | ||
60 | u16 reserved6; | ||
61 | /*1C*/ u16 system; | ||
62 | u16 reserved7; | ||
63 | |||
64 | } BCSR; | ||
65 | |||
66 | static BCSR * const bcsr = (BCSR *)BCSR_PHYS_ADDR; | ||
67 | |||
68 | /* | ||
69 | * Register bit definitions for the BCSRs | ||
70 | */ | ||
71 | #define BCSR_WHOAMI_DCID 0x000F | ||
72 | #define BCSR_WHOAMI_CPLD 0x00F0 | ||
73 | #define BCSR_WHOAMI_BOARD 0x0F00 | ||
74 | |||
75 | #define BCSR_STATUS_PCMCIA0VS 0x0003 | ||
76 | #define BCSR_STATUS_PCMCIA1VS 0x000C | ||
77 | #define BCSR_STATUS_PCMCIA0FI 0x0010 | ||
78 | #define BCSR_STATUS_PCMCIA1FI 0x0020 | ||
79 | #define BCSR_STATUS_SWAPBOOT 0x0040 | ||
80 | #define BCSR_STATUS_SRAMWIDTH 0x0080 | ||
81 | #define BCSR_STATUS_FLASHBUSY 0x0100 | ||
82 | #define BCSR_STATUS_ROMBUSY 0x0200 | ||
83 | #define BCSR_STATUS_USBOTGID 0x0800 | ||
84 | #define BCSR_STATUS_U0RXD 0x1000 | ||
85 | #define BCSR_STATUS_U1RXD 0x2000 | ||
86 | #define BCSR_STATUS_U3RXD 0x8000 | ||
87 | |||
88 | #define BCSR_SWITCHES_OCTAL 0x00FF | ||
89 | #define BCSR_SWITCHES_DIP_1 0x0080 | ||
90 | #define BCSR_SWITCHES_DIP_2 0x0040 | ||
91 | #define BCSR_SWITCHES_DIP_3 0x0020 | ||
92 | #define BCSR_SWITCHES_DIP_4 0x0010 | ||
93 | #define BCSR_SWITCHES_DIP_5 0x0008 | ||
94 | #define BCSR_SWITCHES_DIP_6 0x0004 | ||
95 | #define BCSR_SWITCHES_DIP_7 0x0002 | ||
96 | #define BCSR_SWITCHES_DIP_8 0x0001 | ||
97 | #define BCSR_SWITCHES_ROTARY 0x0F00 | ||
98 | |||
99 | #define BCSR_RESETS_PHY0 0x0001 | ||
100 | #define BCSR_RESETS_PHY1 0x0002 | ||
101 | #define BCSR_RESETS_DC 0x0004 | ||
102 | #define BCSR_RESETS_WSC 0x2000 | ||
103 | #define BCSR_RESETS_SPISEL 0x4000 | ||
104 | #define BCSR_RESETS_DMAREQ 0x8000 | ||
105 | |||
106 | #define BCSR_PCMCIA_PC0VPP 0x0003 | ||
107 | #define BCSR_PCMCIA_PC0VCC 0x000C | ||
108 | #define BCSR_PCMCIA_PC0DRVEN 0x0010 | ||
109 | #define BCSR_PCMCIA_PC0RST 0x0080 | ||
110 | #define BCSR_PCMCIA_PC1VPP 0x0300 | ||
111 | #define BCSR_PCMCIA_PC1VCC 0x0C00 | ||
112 | #define BCSR_PCMCIA_PC1DRVEN 0x1000 | ||
113 | #define BCSR_PCMCIA_PC1RST 0x8000 | ||
114 | |||
115 | #define BCSR_PCI_M66EN 0x0001 | ||
116 | #define BCSR_PCI_M33 0x0100 | ||
117 | #define BCSR_PCI_EXTERNARB 0x0200 | ||
118 | #define BCSR_PCI_GPIO200RST 0x0400 | ||
119 | #define BCSR_PCI_CLKOUT 0x0800 | ||
120 | #define BCSR_PCI_CFGHOST 0x1000 | ||
121 | |||
122 | #define BCSR_LEDS_DECIMALS 0x00FF | ||
123 | #define BCSR_LEDS_LED0 0x0100 | ||
124 | #define BCSR_LEDS_LED1 0x0200 | ||
125 | #define BCSR_LEDS_LED2 0x0400 | ||
126 | #define BCSR_LEDS_LED3 0x0800 | ||
127 | |||
128 | #define BCSR_SYSTEM_VDDI 0x001F | ||
129 | #define BCSR_SYSTEM_POWEROFF 0x4000 | ||
130 | #define BCSR_SYSTEM_RESET 0x8000 | ||
131 | |||
132 | #define PCMCIA_MAX_SOCK 1 | ||
133 | #define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK + 1) | ||
134 | |||
135 | /* VPP/VCC */ | ||
136 | #define SET_VCC_VPP(VCC, VPP, SLOT) \ | ||
137 | ((((VCC) << 2) | ((VPP) << 0)) << ((SLOT) * 8)) | ||
138 | |||
139 | #if defined(CONFIG_MTD_PB1550_BOOT) && defined(CONFIG_MTD_PB1550_USER) | 43 | #if defined(CONFIG_MTD_PB1550_BOOT) && defined(CONFIG_MTD_PB1550_USER) |
140 | #define PB1550_BOTH_BANKS | 44 | #define PB1550_BOTH_BANKS |
141 | #elif defined(CONFIG_MTD_PB1550_BOOT) && !defined(CONFIG_MTD_PB1550_USER) | 45 | #elif defined(CONFIG_MTD_PB1550_BOOT) && !defined(CONFIG_MTD_PB1550_USER) |
diff --git a/arch/mips/include/asm/mach-pnx833x/gpio.h b/arch/mips/include/asm/mach-pnx833x/gpio.h index 8de0eb9c98a3..ed3a88da70f6 100644 --- a/arch/mips/include/asm/mach-pnx833x/gpio.h +++ b/arch/mips/include/asm/mach-pnx833x/gpio.h | |||
@@ -24,7 +24,7 @@ | |||
24 | 24 | ||
25 | /* BIG FAT WARNING: races danger! | 25 | /* BIG FAT WARNING: races danger! |
26 | No protections exist here. Current users are only early init code, | 26 | No protections exist here. Current users are only early init code, |
27 | when locking is not needed because no cuncurency yet exists there, | 27 | when locking is not needed because no concurrency yet exists there, |
28 | and GPIO IRQ dispatcher, which does locking. | 28 | and GPIO IRQ dispatcher, which does locking. |
29 | However, if many uses will ever happen, proper locking will be needed | 29 | However, if many uses will ever happen, proper locking will be needed |
30 | - including locking between different uses | 30 | - including locking between different uses |
diff --git a/arch/mips/include/asm/mach-pnx833x/irq-mapping.h b/arch/mips/include/asm/mach-pnx833x/irq-mapping.h index 657f089b1724..6d70264557b2 100644 --- a/arch/mips/include/asm/mach-pnx833x/irq-mapping.h +++ b/arch/mips/include/asm/mach-pnx833x/irq-mapping.h | |||
@@ -123,4 +123,3 @@ | |||
123 | #define PNX833X_GPIO_15_INT (PNX833X_GPIO_IRQ_BASE + 15) | 123 | #define PNX833X_GPIO_15_INT (PNX833X_GPIO_IRQ_BASE + 15) |
124 | 124 | ||
125 | #endif | 125 | #endif |
126 | |||
diff --git a/arch/mips/include/asm/mach-powertv/asic.h b/arch/mips/include/asm/mach-powertv/asic.h new file mode 100644 index 000000000000..bcad43a93ebf --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/asic.h | |||
@@ -0,0 +1,107 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | */ | ||
18 | |||
19 | #ifndef _ASM_MACH_POWERTV_ASIC_H | ||
20 | #define _ASM_MACH_POWERTV_ASIC_H | ||
21 | |||
22 | #include <linux/ioport.h> | ||
23 | #include <asm/mach-powertv/asic_regs.h> | ||
24 | |||
25 | #define DVR_CAPABLE (1<<0) | ||
26 | #define PCIE_CAPABLE (1<<1) | ||
27 | #define FFS_CAPABLE (1<<2) | ||
28 | #define DISPLAY_CAPABLE (1<<3) | ||
29 | |||
30 | /* Platform Family types | ||
31 | * For compitability, the new value must be added in the end */ | ||
32 | enum family_type { | ||
33 | FAMILY_8500, | ||
34 | FAMILY_8500RNG, | ||
35 | FAMILY_4500, | ||
36 | FAMILY_1500, | ||
37 | FAMILY_8600, | ||
38 | FAMILY_4600, | ||
39 | FAMILY_4600VZA, | ||
40 | FAMILY_8600VZB, | ||
41 | FAMILY_1500VZE, | ||
42 | FAMILY_1500VZF, | ||
43 | FAMILIES | ||
44 | }; | ||
45 | |||
46 | /* Register maps for each ASIC */ | ||
47 | extern const struct register_map calliope_register_map; | ||
48 | extern const struct register_map cronus_register_map; | ||
49 | extern const struct register_map zeus_register_map; | ||
50 | |||
51 | extern struct resource dvr_cronus_resources[]; | ||
52 | extern struct resource dvr_zeus_resources[]; | ||
53 | extern struct resource non_dvr_calliope_resources[]; | ||
54 | extern struct resource non_dvr_cronus_resources[]; | ||
55 | extern struct resource non_dvr_cronuslite_resources[]; | ||
56 | extern struct resource non_dvr_vz_calliope_resources[]; | ||
57 | extern struct resource non_dvr_vze_calliope_resources[]; | ||
58 | extern struct resource non_dvr_vzf_calliope_resources[]; | ||
59 | extern struct resource non_dvr_zeus_resources[]; | ||
60 | |||
61 | extern void powertv_platform_init(void); | ||
62 | extern void platform_alloc_bootmem(void); | ||
63 | extern enum asic_type platform_get_asic(void); | ||
64 | extern enum family_type platform_get_family(void); | ||
65 | extern int platform_supports_dvr(void); | ||
66 | extern int platform_supports_ffs(void); | ||
67 | extern int platform_supports_pcie(void); | ||
68 | extern int platform_supports_display(void); | ||
69 | extern void configure_platform(void); | ||
70 | extern void platform_configure_usb_ehci(void); | ||
71 | extern void platform_unconfigure_usb_ehci(void); | ||
72 | extern void platform_configure_usb_ohci(void); | ||
73 | extern void platform_unconfigure_usb_ohci(void); | ||
74 | |||
75 | /* Platform Resources */ | ||
76 | #define ASIC_RESOURCE_GET_EXISTS 1 | ||
77 | extern struct resource *asic_resource_get(const char *name); | ||
78 | extern void platform_release_memory(void *baddr, int size); | ||
79 | |||
80 | /* Reboot Cause */ | ||
81 | extern void set_reboot_cause(char code, unsigned int data, unsigned int data2); | ||
82 | extern void set_locked_reboot_cause(char code, unsigned int data, | ||
83 | unsigned int data2); | ||
84 | |||
85 | enum sys_reboot_type { | ||
86 | sys_unknown_reboot = 0x00, /* Unknown reboot cause */ | ||
87 | sys_davic_change = 0x01, /* Reboot due to change in DAVIC | ||
88 | * mode */ | ||
89 | sys_user_reboot = 0x02, /* Reboot initiated by user */ | ||
90 | sys_system_reboot = 0x03, /* Reboot initiated by OS */ | ||
91 | sys_trap_reboot = 0x04, /* Reboot due to a CPU trap */ | ||
92 | sys_silent_reboot = 0x05, /* Silent reboot */ | ||
93 | sys_boot_ldr_reboot = 0x06, /* Bootloader reboot */ | ||
94 | sys_power_up_reboot = 0x07, /* Power on bootup. Older | ||
95 | * drivers may report as | ||
96 | * userReboot. */ | ||
97 | sys_code_change = 0x08, /* Reboot to take code change. | ||
98 | * Older drivers may report as | ||
99 | * userReboot. */ | ||
100 | sys_hardware_reset = 0x09, /* HW watchdog or front-panel | ||
101 | * reset button reset. Older | ||
102 | * drivers may report as | ||
103 | * userReboot. */ | ||
104 | sys_watchdogInterrupt = 0x0A /* Pre-watchdog interrupt */ | ||
105 | }; | ||
106 | |||
107 | #endif /* _ASM_MACH_POWERTV_ASIC_H */ | ||
diff --git a/arch/mips/include/asm/mach-powertv/asic_reg_map.h b/arch/mips/include/asm/mach-powertv/asic_reg_map.h new file mode 100644 index 000000000000..6f26cb09828e --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/asic_reg_map.h | |||
@@ -0,0 +1,90 @@ | |||
1 | /* | ||
2 | * asic_reg_map.h | ||
3 | * | ||
4 | * A macro-enclosed list of the elements for the register_map structure for | ||
5 | * use in defining and manipulating the structure. | ||
6 | * | ||
7 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License as published by | ||
11 | * the Free Software Foundation; either version 2 of the License, or | ||
12 | * (at your option) any later version. | ||
13 | * | ||
14 | * This program is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public License | ||
20 | * along with this program; if not, write to the Free Software | ||
21 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | */ | ||
23 | |||
24 | REGISTER_MAP_ELEMENT(eic_slow0_strt_add) | ||
25 | REGISTER_MAP_ELEMENT(eic_cfg_bits) | ||
26 | REGISTER_MAP_ELEMENT(eic_ready_status) | ||
27 | REGISTER_MAP_ELEMENT(chipver3) | ||
28 | REGISTER_MAP_ELEMENT(chipver2) | ||
29 | REGISTER_MAP_ELEMENT(chipver1) | ||
30 | REGISTER_MAP_ELEMENT(chipver0) | ||
31 | REGISTER_MAP_ELEMENT(uart1_intstat) | ||
32 | REGISTER_MAP_ELEMENT(uart1_inten) | ||
33 | REGISTER_MAP_ELEMENT(uart1_config1) | ||
34 | REGISTER_MAP_ELEMENT(uart1_config2) | ||
35 | REGISTER_MAP_ELEMENT(uart1_divisorhi) | ||
36 | REGISTER_MAP_ELEMENT(uart1_divisorlo) | ||
37 | REGISTER_MAP_ELEMENT(uart1_data) | ||
38 | REGISTER_MAP_ELEMENT(uart1_status) | ||
39 | REGISTER_MAP_ELEMENT(int_stat_3) | ||
40 | REGISTER_MAP_ELEMENT(int_stat_2) | ||
41 | REGISTER_MAP_ELEMENT(int_stat_1) | ||
42 | REGISTER_MAP_ELEMENT(int_stat_0) | ||
43 | REGISTER_MAP_ELEMENT(int_config) | ||
44 | REGISTER_MAP_ELEMENT(int_int_scan) | ||
45 | REGISTER_MAP_ELEMENT(ien_int_3) | ||
46 | REGISTER_MAP_ELEMENT(ien_int_2) | ||
47 | REGISTER_MAP_ELEMENT(ien_int_1) | ||
48 | REGISTER_MAP_ELEMENT(ien_int_0) | ||
49 | REGISTER_MAP_ELEMENT(int_level_3_3) | ||
50 | REGISTER_MAP_ELEMENT(int_level_3_2) | ||
51 | REGISTER_MAP_ELEMENT(int_level_3_1) | ||
52 | REGISTER_MAP_ELEMENT(int_level_3_0) | ||
53 | REGISTER_MAP_ELEMENT(int_level_2_3) | ||
54 | REGISTER_MAP_ELEMENT(int_level_2_2) | ||
55 | REGISTER_MAP_ELEMENT(int_level_2_1) | ||
56 | REGISTER_MAP_ELEMENT(int_level_2_0) | ||
57 | REGISTER_MAP_ELEMENT(int_level_1_3) | ||
58 | REGISTER_MAP_ELEMENT(int_level_1_2) | ||
59 | REGISTER_MAP_ELEMENT(int_level_1_1) | ||
60 | REGISTER_MAP_ELEMENT(int_level_1_0) | ||
61 | REGISTER_MAP_ELEMENT(int_level_0_3) | ||
62 | REGISTER_MAP_ELEMENT(int_level_0_2) | ||
63 | REGISTER_MAP_ELEMENT(int_level_0_1) | ||
64 | REGISTER_MAP_ELEMENT(int_level_0_0) | ||
65 | REGISTER_MAP_ELEMENT(int_docsis_en) | ||
66 | REGISTER_MAP_ELEMENT(mips_pll_setup) | ||
67 | REGISTER_MAP_ELEMENT(usb_fs) | ||
68 | REGISTER_MAP_ELEMENT(test_bus) | ||
69 | REGISTER_MAP_ELEMENT(crt_spare) | ||
70 | REGISTER_MAP_ELEMENT(usb2_ohci_int_mask) | ||
71 | REGISTER_MAP_ELEMENT(usb2_strap) | ||
72 | REGISTER_MAP_ELEMENT(ehci_hcapbase) | ||
73 | REGISTER_MAP_ELEMENT(ohci_hc_revision) | ||
74 | REGISTER_MAP_ELEMENT(bcm1_bs_lmi_steer) | ||
75 | REGISTER_MAP_ELEMENT(usb2_control) | ||
76 | REGISTER_MAP_ELEMENT(usb2_stbus_obc) | ||
77 | REGISTER_MAP_ELEMENT(usb2_stbus_mess_size) | ||
78 | REGISTER_MAP_ELEMENT(usb2_stbus_chunk_size) | ||
79 | REGISTER_MAP_ELEMENT(pcie_regs) | ||
80 | REGISTER_MAP_ELEMENT(tim_ch) | ||
81 | REGISTER_MAP_ELEMENT(tim_cl) | ||
82 | REGISTER_MAP_ELEMENT(gpio_dout) | ||
83 | REGISTER_MAP_ELEMENT(gpio_din) | ||
84 | REGISTER_MAP_ELEMENT(gpio_dir) | ||
85 | REGISTER_MAP_ELEMENT(watchdog) | ||
86 | REGISTER_MAP_ELEMENT(front_panel) | ||
87 | REGISTER_MAP_ELEMENT(misc_clk_ctl1) | ||
88 | REGISTER_MAP_ELEMENT(misc_clk_ctl2) | ||
89 | REGISTER_MAP_ELEMENT(crt_ext_ctl) | ||
90 | REGISTER_MAP_ELEMENT(register_maps) | ||
diff --git a/arch/mips/include/asm/mach-powertv/asic_regs.h b/arch/mips/include/asm/mach-powertv/asic_regs.h new file mode 100644 index 000000000000..1e11236c6dbc --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/asic_regs.h | |||
@@ -0,0 +1,122 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | */ | ||
18 | |||
19 | #ifndef __ASM_MACH_POWERTV_ASIC_H_ | ||
20 | #define __ASM_MACH_POWERTV_ASIC_H_ | ||
21 | #include <linux/io.h> | ||
22 | |||
23 | /* ASIC types */ | ||
24 | enum asic_type { | ||
25 | ASIC_UNKNOWN, | ||
26 | ASIC_ZEUS, | ||
27 | ASIC_CALLIOPE, | ||
28 | ASIC_CRONUS, | ||
29 | ASIC_CRONUSLITE, | ||
30 | ASICS | ||
31 | }; | ||
32 | |||
33 | /* hardcoded values read from Chip Version registers */ | ||
34 | #define CRONUS_10 0x0B4C1C20 | ||
35 | #define CRONUS_11 0x0B4C1C21 | ||
36 | #define CRONUSLITE_10 0x0B4C1C40 | ||
37 | |||
38 | #define NAND_FLASH_BASE 0x03000000 | ||
39 | #define CALLIOPE_IO_BASE 0x08000000 | ||
40 | #define CRONUS_IO_BASE 0x09000000 | ||
41 | #define ZEUS_IO_BASE 0x09000000 | ||
42 | |||
43 | #define ASIC_IO_SIZE 0x01000000 | ||
44 | |||
45 | /* Definitions for backward compatibility */ | ||
46 | #define UART1_INTSTAT uart1_intstat | ||
47 | #define UART1_INTEN uart1_inten | ||
48 | #define UART1_CONFIG1 uart1_config1 | ||
49 | #define UART1_CONFIG2 uart1_config2 | ||
50 | #define UART1_DIVISORHI uart1_divisorhi | ||
51 | #define UART1_DIVISORLO uart1_divisorlo | ||
52 | #define UART1_DATA uart1_data | ||
53 | #define UART1_STATUS uart1_status | ||
54 | |||
55 | /* ASIC register enumeration */ | ||
56 | union register_map_entry { | ||
57 | unsigned long phys; | ||
58 | u32 *virt; | ||
59 | }; | ||
60 | |||
61 | #define REGISTER_MAP_ELEMENT(x) union register_map_entry x; | ||
62 | struct register_map { | ||
63 | #include <asm/mach-powertv/asic_reg_map.h> | ||
64 | }; | ||
65 | #undef REGISTER_MAP_ELEMENT | ||
66 | |||
67 | /** | ||
68 | * register_map_offset_phys - add an offset to the physical address | ||
69 | * @map: Pointer to the &struct register_map | ||
70 | * @offset: Value to add | ||
71 | * | ||
72 | * Only adds the base to non-zero physical addresses | ||
73 | */ | ||
74 | static inline void register_map_offset_phys(struct register_map *map, | ||
75 | unsigned long offset) | ||
76 | { | ||
77 | #define REGISTER_MAP_ELEMENT(x) do { \ | ||
78 | if (map->x.phys != 0) \ | ||
79 | map->x.phys += offset; \ | ||
80 | } while (false); | ||
81 | |||
82 | #include <asm/mach-powertv/asic_reg_map.h> | ||
83 | #undef REGISTER_MAP_ELEMENT | ||
84 | } | ||
85 | |||
86 | /** | ||
87 | * register_map_virtualize - Convert ®ister_map to virtual addresses | ||
88 | * @map: Pointer to ®ister_map to virtualize | ||
89 | */ | ||
90 | static inline void register_map_virtualize(struct register_map *map) | ||
91 | { | ||
92 | #define REGISTER_MAP_ELEMENT(x) do { \ | ||
93 | map->x.virt = (!map->x.phys) ? NULL : \ | ||
94 | UNCAC_ADDR(phys_to_virt(map->x.phys)); \ | ||
95 | } while (false); | ||
96 | |||
97 | #include <asm/mach-powertv/asic_reg_map.h> | ||
98 | #undef REGISTER_MAP_ELEMENT | ||
99 | } | ||
100 | |||
101 | extern struct register_map _asic_register_map; | ||
102 | |||
103 | /* | ||
104 | * Macros to interface to registers through their ioremapped address | ||
105 | * asic_reg_phys_addr Returns the physical address of the given register | ||
106 | * asic_reg_addr Returns the iomapped virtual address of the given | ||
107 | * register. | ||
108 | */ | ||
109 | #define asic_reg_addr(x) (_asic_register_map.x.virt) | ||
110 | #define asic_reg_phys_addr(x) (virt_to_phys((void *) CAC_ADDR( \ | ||
111 | (unsigned long) asic_reg_addr(x)))) | ||
112 | |||
113 | /* | ||
114 | * The asic_reg macro is gone. It should be replaced by either asic_read or | ||
115 | * asic_write, as appropriate. | ||
116 | */ | ||
117 | |||
118 | #define asic_read(x) readl(asic_reg_addr(x)) | ||
119 | #define asic_write(v, x) writel(v, asic_reg_addr(x)) | ||
120 | |||
121 | extern void asic_irq_init(void); | ||
122 | #endif | ||
diff --git a/arch/mips/include/asm/mach-powertv/dma-coherence.h b/arch/mips/include/asm/mach-powertv/dma-coherence.h new file mode 100644 index 000000000000..5b8d5ebeb838 --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/dma-coherence.h | |||
@@ -0,0 +1,119 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Version from mach-generic modified to support PowerTV port | ||
7 | * Portions Copyright (C) 2009 Cisco Systems, Inc. | ||
8 | * Copyright (C) 2006 Ralf Baechle <ralf@linux-mips.org> | ||
9 | * | ||
10 | */ | ||
11 | |||
12 | #ifndef __ASM_MACH_POWERTV_DMA_COHERENCE_H | ||
13 | #define __ASM_MACH_POWERTV_DMA_COHERENCE_H | ||
14 | |||
15 | #include <linux/sched.h> | ||
16 | #include <linux/version.h> | ||
17 | #include <linux/device.h> | ||
18 | #include <asm/mach-powertv/asic.h> | ||
19 | |||
20 | static inline bool is_kseg2(void *addr) | ||
21 | { | ||
22 | return (unsigned long)addr >= KSEG2; | ||
23 | } | ||
24 | |||
25 | static inline unsigned long virt_to_phys_from_pte(void *addr) | ||
26 | { | ||
27 | pgd_t *pgd; | ||
28 | pud_t *pud; | ||
29 | pmd_t *pmd; | ||
30 | pte_t *ptep, pte; | ||
31 | |||
32 | unsigned long virt_addr = (unsigned long)addr; | ||
33 | unsigned long phys_addr = 0UL; | ||
34 | |||
35 | /* get the page global directory. */ | ||
36 | pgd = pgd_offset_k(virt_addr); | ||
37 | |||
38 | if (!pgd_none(*pgd)) { | ||
39 | /* get the page upper directory */ | ||
40 | pud = pud_offset(pgd, virt_addr); | ||
41 | if (!pud_none(*pud)) { | ||
42 | /* get the page middle directory */ | ||
43 | pmd = pmd_offset(pud, virt_addr); | ||
44 | if (!pmd_none(*pmd)) { | ||
45 | /* get a pointer to the page table entry */ | ||
46 | ptep = pte_offset(pmd, virt_addr); | ||
47 | pte = *ptep; | ||
48 | /* check for a valid page */ | ||
49 | if (pte_present(pte)) { | ||
50 | /* get the physical address the page is | ||
51 | * refering to */ | ||
52 | phys_addr = (unsigned long) | ||
53 | page_to_phys(pte_page(pte)); | ||
54 | /* add the offset within the page */ | ||
55 | phys_addr |= (virt_addr & ~PAGE_MASK); | ||
56 | } | ||
57 | } | ||
58 | } | ||
59 | } | ||
60 | |||
61 | return phys_addr; | ||
62 | } | ||
63 | |||
64 | static inline dma_addr_t plat_map_dma_mem(struct device *dev, void *addr, | ||
65 | size_t size) | ||
66 | { | ||
67 | if (is_kseg2(addr)) | ||
68 | return phys_to_bus(virt_to_phys_from_pte(addr)); | ||
69 | else | ||
70 | return phys_to_bus(virt_to_phys(addr)); | ||
71 | } | ||
72 | |||
73 | static inline dma_addr_t plat_map_dma_mem_page(struct device *dev, | ||
74 | struct page *page) | ||
75 | { | ||
76 | return phys_to_bus(page_to_phys(page)); | ||
77 | } | ||
78 | |||
79 | static inline unsigned long plat_dma_addr_to_phys(struct device *dev, | ||
80 | dma_addr_t dma_addr) | ||
81 | { | ||
82 | return bus_to_phys(dma_addr); | ||
83 | } | ||
84 | |||
85 | static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr, | ||
86 | size_t size, enum dma_data_direction direction) | ||
87 | { | ||
88 | } | ||
89 | |||
90 | static inline int plat_dma_supported(struct device *dev, u64 mask) | ||
91 | { | ||
92 | /* | ||
93 | * we fall back to GFP_DMA when the mask isn't all 1s, | ||
94 | * so we can't guarantee allocations that must be | ||
95 | * within a tighter range than GFP_DMA.. | ||
96 | */ | ||
97 | if (mask < DMA_BIT_MASK(24)) | ||
98 | return 0; | ||
99 | |||
100 | return 1; | ||
101 | } | ||
102 | |||
103 | static inline void plat_extra_sync_for_device(struct device *dev) | ||
104 | { | ||
105 | return; | ||
106 | } | ||
107 | |||
108 | static inline int plat_dma_mapping_error(struct device *dev, | ||
109 | dma_addr_t dma_addr) | ||
110 | { | ||
111 | return 0; | ||
112 | } | ||
113 | |||
114 | static inline int plat_device_is_coherent(struct device *dev) | ||
115 | { | ||
116 | return 0; | ||
117 | } | ||
118 | |||
119 | #endif /* __ASM_MACH_POWERTV_DMA_COHERENCE_H */ | ||
diff --git a/arch/mips/include/asm/mach-powertv/interrupts.h b/arch/mips/include/asm/mach-powertv/interrupts.h new file mode 100644 index 000000000000..4fd652ceb52a --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/interrupts.h | |||
@@ -0,0 +1,253 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | */ | ||
18 | |||
19 | #ifndef _ASM_MACH_POWERTV_INTERRUPTS_H_ | ||
20 | #define _ASM_MACH_POWERTV_INTERRUPTS_H_ | ||
21 | |||
22 | /* | ||
23 | * Defines for all of the interrupt lines | ||
24 | */ | ||
25 | |||
26 | /* Definitions for backward compatibility */ | ||
27 | #define kIrq_Uart1 irq_uart1 | ||
28 | |||
29 | #define ibase 0 | ||
30 | |||
31 | /*------------- Register: int_stat_3 */ | ||
32 | /* 126 unused (bit 31) */ | ||
33 | #define irq_asc2video (ibase+126) /* ASC 2 Video Interrupt */ | ||
34 | #define irq_asc1video (ibase+125) /* ASC 1 Video Interrupt */ | ||
35 | #define irq_comms_block_wd (ibase+124) /* ASC 1 Video Interrupt */ | ||
36 | #define irq_fdma_mailbox (ibase+123) /* FDMA Mailbox Output */ | ||
37 | #define irq_fdma_gp (ibase+122) /* FDMA GP Output */ | ||
38 | #define irq_mips_pic (ibase+121) /* MIPS Performance Counter | ||
39 | * Interrupt */ | ||
40 | #define irq_mips_timer (ibase+120) /* MIPS Timer Interrupt */ | ||
41 | #define irq_memory_protect (ibase+119) /* Memory Protection Interrupt | ||
42 | * -- Ored by glue logic inside | ||
43 | * SPARC ILC (see | ||
44 | * INT_MEM_PROT_STAT, below, | ||
45 | * for individual interrupts) | ||
46 | */ | ||
47 | /* 118 unused (bit 22) */ | ||
48 | #define irq_sbag (ibase+117) /* SBAG Interrupt -- Ored by | ||
49 | * glue logic inside SPARC ILC | ||
50 | * (see INT_SBAG_STAT, below, | ||
51 | * for individual interrupts) */ | ||
52 | #define irq_qam_b_fec (ibase+116) /* QAM B FEC Interrupt */ | ||
53 | #define irq_qam_a_fec (ibase+115) /* QAM A FEC Interrupt */ | ||
54 | /* 114 unused (bit 18) */ | ||
55 | #define irq_mailbox (ibase+113) /* Mailbox Debug Interrupt -- | ||
56 | * Ored by glue logic inside | ||
57 | * SPARC ILC (see | ||
58 | * INT_MAILBOX_STAT, below, for | ||
59 | * individual interrupts) */ | ||
60 | #define irq_fuse_stat1 (ibase+112) /* Fuse Status 1 */ | ||
61 | #define irq_fuse_stat2 (ibase+111) /* Fuse Status 2 */ | ||
62 | #define irq_fuse_stat3 (ibase+110) /* Blitter Interrupt / Fuse | ||
63 | * Status 3 */ | ||
64 | #define irq_blitter (ibase+110) /* Blitter Interrupt / Fuse | ||
65 | * Status 3 */ | ||
66 | #define irq_avc1_pp0 (ibase+109) /* AVC Decoder #1 PP0 | ||
67 | * Interrupt */ | ||
68 | #define irq_avc1_pp1 (ibase+108) /* AVC Decoder #1 PP1 | ||
69 | * Interrupt */ | ||
70 | #define irq_avc1_mbe (ibase+107) /* AVC Decoder #1 MBE | ||
71 | * Interrupt */ | ||
72 | #define irq_avc2_pp0 (ibase+106) /* AVC Decoder #2 PP0 | ||
73 | * Interrupt */ | ||
74 | #define irq_avc2_pp1 (ibase+105) /* AVC Decoder #2 PP1 | ||
75 | * Interrupt */ | ||
76 | #define irq_avc2_mbe (ibase+104) /* AVC Decoder #2 MBE | ||
77 | * Interrupt */ | ||
78 | #define irq_zbug_spi (ibase+103) /* Zbug SPI Slave Interrupt */ | ||
79 | #define irq_qam_mod2 (ibase+102) /* QAM Modulator 2 DMA | ||
80 | * Interrupt */ | ||
81 | #define irq_ir_rx (ibase+101) /* IR RX 2 Interrupt */ | ||
82 | #define irq_aud_dsp2 (ibase+100) /* Audio DSP #2 Interrupt */ | ||
83 | #define irq_aud_dsp1 (ibase+99) /* Audio DSP #1 Interrupt */ | ||
84 | #define irq_docsis (ibase+98) /* DOCSIS Debug Interrupt */ | ||
85 | #define irq_sd_dvp1 (ibase+97) /* SD DVP #1 Interrupt */ | ||
86 | #define irq_sd_dvp2 (ibase+96) /* SD DVP #2 Interrupt */ | ||
87 | /*------------- Register: int_stat_2 */ | ||
88 | #define irq_hd_dvp (ibase+95) /* HD DVP Interrupt */ | ||
89 | #define kIrq_Prewatchdog (ibase+94) /* watchdog Pre-Interrupt */ | ||
90 | #define irq_timer2 (ibase+93) /* Programmable Timer | ||
91 | * Interrupt 2 */ | ||
92 | #define irq_1394 (ibase+92) /* 1394 Firewire Interrupt */ | ||
93 | #define irq_usbohci (ibase+91) /* USB 2.0 OHCI Interrupt */ | ||
94 | #define irq_usbehci (ibase+90) /* USB 2.0 EHCI Interrupt */ | ||
95 | #define irq_pciexp (ibase+89) /* PCI Express 0 Interrupt */ | ||
96 | #define irq_pciexp0 (ibase+89) /* PCI Express 0 Interrupt */ | ||
97 | #define irq_afe1 (ibase+88) /* AFE 1 Interrupt */ | ||
98 | #define irq_sata (ibase+87) /* SATA 1 Interrupt */ | ||
99 | #define irq_sata1 (ibase+87) /* SATA 1 Interrupt */ | ||
100 | #define irq_dtcp (ibase+86) /* DTCP Interrupt */ | ||
101 | #define irq_pciexp1 (ibase+85) /* PCI Express 1 Interrupt */ | ||
102 | /* 84 unused (bit 20) */ | ||
103 | /* 83 unused (bit 19) */ | ||
104 | /* 82 unused (bit 18) */ | ||
105 | #define irq_sata2 (ibase+81) /* SATA2 Interrupt */ | ||
106 | #define irq_uart2 (ibase+80) /* UART2 Interrupt */ | ||
107 | #define irq_legacy_usb (ibase+79) /* Legacy USB Host ISR (1.1 | ||
108 | * Host module) */ | ||
109 | #define irq_pod (ibase+78) /* POD Interrupt */ | ||
110 | #define irq_slave_usb (ibase+77) /* Slave USB */ | ||
111 | #define irq_denc1 (ibase+76) /* DENC #1 VTG Interrupt */ | ||
112 | #define irq_vbi_vtg (ibase+75) /* VBI VTG Interrupt */ | ||
113 | #define irq_afe2 (ibase+74) /* AFE 2 Interrupt */ | ||
114 | #define irq_denc2 (ibase+73) /* DENC #2 VTG Interrupt */ | ||
115 | #define irq_asc2 (ibase+72) /* ASC #2 Interrupt */ | ||
116 | #define irq_asc1 (ibase+71) /* ASC #1 Interrupt */ | ||
117 | #define irq_mod_dma (ibase+70) /* Modulator DMA Interrupt */ | ||
118 | #define irq_byte_eng1 (ibase+69) /* Byte Engine Interrupt [1] */ | ||
119 | #define irq_byte_eng0 (ibase+68) /* Byte Engine Interrupt [0] */ | ||
120 | /* 67 unused (bit 03) */ | ||
121 | /* 66 unused (bit 02) */ | ||
122 | /* 65 unused (bit 01) */ | ||
123 | /* 64 unused (bit 00) */ | ||
124 | /*------------- Register: int_stat_1 */ | ||
125 | /* 63 unused (bit 31) */ | ||
126 | /* 62 unused (bit 30) */ | ||
127 | /* 61 unused (bit 29) */ | ||
128 | /* 60 unused (bit 28) */ | ||
129 | /* 59 unused (bit 27) */ | ||
130 | /* 58 unused (bit 26) */ | ||
131 | /* 57 unused (bit 25) */ | ||
132 | /* 56 unused (bit 24) */ | ||
133 | #define irq_buf_dma_mem2mem (ibase+55) /* BufDMA Memory to Memory | ||
134 | * Interrupt */ | ||
135 | #define irq_buf_dma_usbtransmit (ibase+54) /* BufDMA USB Transmit | ||
136 | * Interrupt */ | ||
137 | #define irq_buf_dma_qpskpodtransmit (ibase+53) /* BufDMA QPSK/POD Tramsit | ||
138 | * Interrupt */ | ||
139 | #define irq_buf_dma_transmit_error (ibase+52) /* BufDMA Transmit Error | ||
140 | * Interrupt */ | ||
141 | #define irq_buf_dma_usbrecv (ibase+51) /* BufDMA USB Receive | ||
142 | * Interrupt */ | ||
143 | #define irq_buf_dma_qpskpodrecv (ibase+50) /* BufDMA QPSK/POD Receive | ||
144 | * Interrupt */ | ||
145 | #define irq_buf_dma_recv_error (ibase+49) /* BufDMA Receive Error | ||
146 | * Interrupt */ | ||
147 | #define irq_qamdma_transmit_play (ibase+48) /* QAMDMA Transmit/Play | ||
148 | * Interrupt */ | ||
149 | #define irq_qamdma_transmit_error (ibase+47) /* QAMDMA Transmit Error | ||
150 | * Interrupt */ | ||
151 | #define irq_qamdma_recv2high (ibase+46) /* QAMDMA Receive 2 High | ||
152 | * (Chans 63-32) */ | ||
153 | #define irq_qamdma_recv2low (ibase+45) /* QAMDMA Receive 2 Low | ||
154 | * (Chans 31-0) */ | ||
155 | #define irq_qamdma_recv1high (ibase+44) /* QAMDMA Receive 1 High | ||
156 | * (Chans 63-32) */ | ||
157 | #define irq_qamdma_recv1low (ibase+43) /* QAMDMA Receive 1 Low | ||
158 | * (Chans 31-0) */ | ||
159 | #define irq_qamdma_recv_error (ibase+42) /* QAMDMA Receive Error | ||
160 | * Interrupt */ | ||
161 | #define irq_mpegsplice (ibase+41) /* MPEG Splice Interrupt */ | ||
162 | #define irq_deinterlace_rdy (ibase+40) /* Deinterlacer Frame Ready | ||
163 | * Interrupt */ | ||
164 | #define irq_ext_in0 (ibase+39) /* External Interrupt irq_in0 */ | ||
165 | #define irq_gpio3 (ibase+38) /* GP I/O IRQ 3 - From GP I/O | ||
166 | * Module */ | ||
167 | #define irq_gpio2 (ibase+37) /* GP I/O IRQ 2 - From GP I/O | ||
168 | * Module (ABE_intN) */ | ||
169 | #define irq_pcrcmplt1 (ibase+36) /* PCR Capture Complete or | ||
170 | * Discontinuity 1 */ | ||
171 | #define irq_pcrcmplt2 (ibase+35) /* PCR Capture Complete or | ||
172 | * Discontinuity 2 */ | ||
173 | #define irq_parse_peierr (ibase+34) /* PID Parser Error Detect | ||
174 | * (PEI) */ | ||
175 | #define irq_parse_cont_err (ibase+33) /* PID Parser continuity error | ||
176 | * detect */ | ||
177 | #define irq_ds1framer (ibase+32) /* DS1 Framer Interrupt */ | ||
178 | /*------------- Register: int_stat_0 */ | ||
179 | #define irq_gpio1 (ibase+31) /* GP I/O IRQ 1 - From GP I/O | ||
180 | * Module */ | ||
181 | #define irq_gpio0 (ibase+30) /* GP I/O IRQ 0 - From GP I/O | ||
182 | * Module */ | ||
183 | #define irq_qpsk_out_aloha (ibase+29) /* QPSK Output Slotted Aloha | ||
184 | * (chan 3) Transmission | ||
185 | * Completed OK */ | ||
186 | #define irq_qpsk_out_tdma (ibase+28) /* QPSK Output TDMA (chan 2) | ||
187 | * Transmission Completed OK */ | ||
188 | #define irq_qpsk_out_reserve (ibase+27) /* QPSK Output Reservation | ||
189 | * (chan 1) Transmission | ||
190 | * Completed OK */ | ||
191 | #define irq_qpsk_out_aloha_err (ibase+26) /* QPSK Output Slotted Aloha | ||
192 | * (chan 3)Transmission | ||
193 | * completed with Errors. */ | ||
194 | #define irq_qpsk_out_tdma_err (ibase+25) /* QPSK Output TDMA (chan 2) | ||
195 | * Transmission completed with | ||
196 | * Errors. */ | ||
197 | #define irq_qpsk_out_rsrv_err (ibase+24) /* QPSK Output Reservation | ||
198 | * (chan 1) Transmission | ||
199 | * completed with Errors */ | ||
200 | #define irq_aloha_fail (ibase+23) /* Unsuccessful Resend of Aloha | ||
201 | * for N times. Aloha retry | ||
202 | * timeout for channel 3. */ | ||
203 | #define irq_timer1 (ibase+22) /* Programmable Timer | ||
204 | * Interrupt */ | ||
205 | #define irq_keyboard (ibase+21) /* Keyboard Module Interrupt */ | ||
206 | #define irq_i2c (ibase+20) /* I2C Module Interrupt */ | ||
207 | #define irq_spi (ibase+19) /* SPI Module Interrupt */ | ||
208 | #define irq_irblaster (ibase+18) /* IR Blaster Interrupt */ | ||
209 | #define irq_splice_detect (ibase+17) /* PID Key Change Interrupt or | ||
210 | * Splice Detect Interrupt */ | ||
211 | #define irq_se_micro (ibase+16) /* Secure Micro I/F Module | ||
212 | * Interrupt */ | ||
213 | #define irq_uart1 (ibase+15) /* UART Interrupt */ | ||
214 | #define irq_irrecv (ibase+14) /* IR Receiver Interrupt */ | ||
215 | #define irq_host_int1 (ibase+13) /* Host-to-Host Interrupt 1 */ | ||
216 | #define irq_host_int0 (ibase+12) /* Host-to-Host Interrupt 0 */ | ||
217 | #define irq_qpsk_hecerr (ibase+11) /* QPSK HEC Error Interrupt */ | ||
218 | #define irq_qpsk_crcerr (ibase+10) /* QPSK AAL-5 CRC Error | ||
219 | * Interrupt */ | ||
220 | /* 9 unused (bit 09) */ | ||
221 | /* 8 unused (bit 08) */ | ||
222 | #define irq_psicrcerr (ibase+7) /* QAM PSI CRC Error | ||
223 | * Interrupt */ | ||
224 | #define irq_psilength_err (ibase+6) /* QAM PSI Length Error | ||
225 | * Interrupt */ | ||
226 | #define irq_esfforward (ibase+5) /* ESF Interrupt Mark From | ||
227 | * Forward Path Reference - | ||
228 | * every 3ms when forward Mbits | ||
229 | * and forward slot control | ||
230 | * bytes are updated. */ | ||
231 | #define irq_esfreverse (ibase+4) /* ESF Interrupt Mark from | ||
232 | * Reverse Path Reference - | ||
233 | * delayed from forward mark by | ||
234 | * the ranging delay plus a | ||
235 | * fixed amount. When reverse | ||
236 | * Mbits and reverse slot | ||
237 | * control bytes are updated. | ||
238 | * Occurs every 3ms for 3.0M and | ||
239 | * 1.554 M upstream rates and | ||
240 | * every 6 ms for 256K upstream | ||
241 | * rate. */ | ||
242 | #define irq_aloha_timeout (ibase+3) /* Slotted-Aloha timeout on | ||
243 | * Channel 1. */ | ||
244 | #define irq_reservation (ibase+2) /* Partial (or Incremental) | ||
245 | * Reservation Message Completed | ||
246 | * or Slotted aloha verify for | ||
247 | * channel 1. */ | ||
248 | #define irq_aloha3 (ibase+1) /* Slotted-Aloha Message Verify | ||
249 | * Interrupt or Reservation | ||
250 | * increment completed for | ||
251 | * channel 3. */ | ||
252 | #define irq_mpeg_d (ibase+0) /* MPEG Decoder Interrupt */ | ||
253 | #endif /* _ASM_MACH_POWERTV_INTERRUPTS_H_ */ | ||
diff --git a/arch/mips/include/asm/mach-powertv/ioremap.h b/arch/mips/include/asm/mach-powertv/ioremap.h new file mode 100644 index 000000000000..e6276d5146e8 --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/ioremap.h | |||
@@ -0,0 +1,90 @@ | |||
1 | /* | ||
2 | * This program is free software; you can redistribute it and/or | ||
3 | * modify it under the terms of the GNU General Public License | ||
4 | * as published by the Free Software Foundation; either version | ||
5 | * 2 of the License, or (at your option) any later version. | ||
6 | * | ||
7 | * Portions Copyright (C) Cisco Systems, Inc. | ||
8 | */ | ||
9 | #ifndef __ASM_MACH_POWERTV_IOREMAP_H | ||
10 | #define __ASM_MACH_POWERTV_IOREMAP_H | ||
11 | |||
12 | #include <linux/types.h> | ||
13 | |||
14 | #define LOW_MEM_BOUNDARY_PHYS 0x20000000 | ||
15 | #define LOW_MEM_BOUNDARY_MASK (~(LOW_MEM_BOUNDARY_PHYS - 1)) | ||
16 | |||
17 | /* | ||
18 | * The bus addresses are different than the physical addresses that | ||
19 | * the processor sees by an offset. This offset varies by ASIC | ||
20 | * version. Define a variable to hold the offset and some macros to | ||
21 | * make the conversion simpler. */ | ||
22 | extern unsigned long phys_to_bus_offset; | ||
23 | |||
24 | #ifdef CONFIG_HIGHMEM | ||
25 | #define MEM_GAP_PHYS 0x60000000 | ||
26 | /* | ||
27 | * TODO: We will use the hard code for conversion between physical and | ||
28 | * bus until the bootloader releases their device tree to us. | ||
29 | */ | ||
30 | #define phys_to_bus(x) (((x) < LOW_MEM_BOUNDARY_PHYS) ? \ | ||
31 | ((x) + phys_to_bus_offset) : (x)) | ||
32 | #define bus_to_phys(x) (((x) < MEM_GAP_PHYS_ADDR) ? \ | ||
33 | ((x) - phys_to_bus_offset) : (x)) | ||
34 | #else | ||
35 | #define phys_to_bus(x) ((x) + phys_to_bus_offset) | ||
36 | #define bus_to_phys(x) ((x) - phys_to_bus_offset) | ||
37 | #endif | ||
38 | |||
39 | /* | ||
40 | * Determine whether the address we are given is for an ASIC device | ||
41 | * Params: addr Address to check | ||
42 | * Returns: Zero if the address is not for ASIC devices, non-zero | ||
43 | * if it is. | ||
44 | */ | ||
45 | static inline int asic_is_device_addr(phys_t addr) | ||
46 | { | ||
47 | return !((phys_t)addr & (phys_t) LOW_MEM_BOUNDARY_MASK); | ||
48 | } | ||
49 | |||
50 | /* | ||
51 | * Determine whether the address we are given is external RAM mappable | ||
52 | * into KSEG1. | ||
53 | * Params: addr Address to check | ||
54 | * Returns: Zero if the address is not for external RAM and | ||
55 | */ | ||
56 | static inline int asic_is_lowmem_ram_addr(phys_t addr) | ||
57 | { | ||
58 | /* | ||
59 | * The RAM always starts at the following address in the processor's | ||
60 | * physical address space | ||
61 | */ | ||
62 | static const phys_t phys_ram_base = 0x10000000; | ||
63 | phys_t bus_ram_base; | ||
64 | |||
65 | bus_ram_base = phys_to_bus_offset + phys_ram_base; | ||
66 | |||
67 | return addr >= bus_ram_base && | ||
68 | addr < (bus_ram_base + (LOW_MEM_BOUNDARY_PHYS - phys_ram_base)); | ||
69 | } | ||
70 | |||
71 | /* | ||
72 | * Allow physical addresses to be fixed up to help peripherals located | ||
73 | * outside the low 32-bit range -- generic pass-through version. | ||
74 | */ | ||
75 | static inline phys_t fixup_bigphys_addr(phys_t phys_addr, phys_t size) | ||
76 | { | ||
77 | return phys_addr; | ||
78 | } | ||
79 | |||
80 | static inline void __iomem *plat_ioremap(phys_t offset, unsigned long size, | ||
81 | unsigned long flags) | ||
82 | { | ||
83 | return NULL; | ||
84 | } | ||
85 | |||
86 | static inline int plat_iounmap(const volatile void __iomem *addr) | ||
87 | { | ||
88 | return 0; | ||
89 | } | ||
90 | #endif /* __ASM_MACH_POWERTV_IOREMAP_H */ | ||
diff --git a/arch/mips/include/asm/mach-powertv/irq.h b/arch/mips/include/asm/mach-powertv/irq.h new file mode 100644 index 000000000000..4bd5d0c61a91 --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/irq.h | |||
@@ -0,0 +1,25 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | */ | ||
18 | |||
19 | #ifndef _ASM_MACH_POWERTV_IRQ_H | ||
20 | #define _ASM_MACH_POWERTV_IRQ_H | ||
21 | #include <asm/mach-powertv/interrupts.h> | ||
22 | |||
23 | #define MIPS_CPU_IRQ_BASE ibase | ||
24 | #define NR_IRQS 127 | ||
25 | #endif | ||
diff --git a/arch/mips/include/asm/mach-powertv/powertv-clock.h b/arch/mips/include/asm/mach-powertv/powertv-clock.h new file mode 100644 index 000000000000..6f3e9a0fcf8c --- /dev/null +++ b/arch/mips/include/asm/mach-powertv/powertv-clock.h | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | */ | ||
18 | /* | ||
19 | * Local definitions for the powertv PCI code | ||
20 | */ | ||
21 | |||
22 | #ifndef _POWERTV_PCI_POWERTV_PCI_H_ | ||
23 | #define _POWERTV_PCI_POWERTV_PCI_H_ | ||
24 | extern int asic_pcie_map_irq(const struct pci_dev *dev, u8 slot, u8 pin); | ||
25 | extern int asic_pcie_init(void); | ||
26 | extern int asic_pcie_init(void); | ||
27 | |||
28 | extern int log_level; | ||
29 | #endif | ||
diff --git a/arch/mips/include/asm/mach-excite/war.h b/arch/mips/include/asm/mach-powertv/war.h index 1f82180c1598..7ac05ecc512b 100644 --- a/arch/mips/include/asm/mach-excite/war.h +++ b/arch/mips/include/asm/mach-powertv/war.h | |||
@@ -3,10 +3,13 @@ | |||
3 | * License. See the file "COPYING" in the main directory of this archive | 3 | * License. See the file "COPYING" in the main directory of this archive |
4 | * for more details. | 4 | * for more details. |
5 | * | 5 | * |
6 | * This version for the PowerTV platform copied from the Malta version. | ||
7 | * | ||
6 | * Copyright (C) 2002, 2004, 2007 by Ralf Baechle <ralf@linux-mips.org> | 8 | * Copyright (C) 2002, 2004, 2007 by Ralf Baechle <ralf@linux-mips.org> |
9 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
7 | */ | 10 | */ |
8 | #ifndef __ASM_MIPS_MACH_EXCITE_WAR_H | 11 | #ifndef __ASM_MACH_POWERTV_WAR_H |
9 | #define __ASM_MIPS_MACH_EXCITE_WAR_H | 12 | #define __ASM_MACH_POWERTV_WAR_H |
10 | 13 | ||
11 | #define R4600_V1_INDEX_ICACHEOP_WAR 0 | 14 | #define R4600_V1_INDEX_ICACHEOP_WAR 0 |
12 | #define R4600_V1_HIT_CACHEOP_WAR 0 | 15 | #define R4600_V1_HIT_CACHEOP_WAR 0 |
@@ -14,12 +17,12 @@ | |||
14 | #define R5432_CP0_INTERRUPT_WAR 0 | 17 | #define R5432_CP0_INTERRUPT_WAR 0 |
15 | #define BCM1250_M3_WAR 0 | 18 | #define BCM1250_M3_WAR 0 |
16 | #define SIBYTE_1956_WAR 0 | 19 | #define SIBYTE_1956_WAR 0 |
17 | #define MIPS4K_ICACHE_REFILL_WAR 0 | 20 | #define MIPS4K_ICACHE_REFILL_WAR 1 |
18 | #define MIPS_CACHE_SYNC_WAR 0 | 21 | #define MIPS_CACHE_SYNC_WAR 1 |
19 | #define TX49XX_ICACHE_INDEX_INV_WAR 0 | 22 | #define TX49XX_ICACHE_INDEX_INV_WAR 0 |
20 | #define RM9000_CDEX_SMP_WAR 1 | 23 | #define RM9000_CDEX_SMP_WAR 0 |
21 | #define ICACHE_REFILLS_WORKAROUND_WAR 1 | 24 | #define ICACHE_REFILLS_WORKAROUND_WAR 1 |
22 | #define R10000_LLSC_WAR 0 | 25 | #define R10000_LLSC_WAR 0 |
23 | #define MIPS34K_MISSED_ITLB_WAR 0 | 26 | #define MIPS34K_MISSED_ITLB_WAR 0 |
24 | 27 | ||
25 | #endif /* __ASM_MIPS_MACH_EXCITE_WAR_H */ | 28 | #endif /* __ASM_MACH_POWERTV_WAR_H */ |
diff --git a/arch/mips/include/asm/mach-sibyte/war.h b/arch/mips/include/asm/mach-sibyte/war.h index 7950ef4f032c..743385d7b5f2 100644 --- a/arch/mips/include/asm/mach-sibyte/war.h +++ b/arch/mips/include/asm/mach-sibyte/war.h | |||
@@ -16,7 +16,11 @@ | |||
16 | #if defined(CONFIG_SB1_PASS_1_WORKAROUNDS) || \ | 16 | #if defined(CONFIG_SB1_PASS_1_WORKAROUNDS) || \ |
17 | defined(CONFIG_SB1_PASS_2_WORKAROUNDS) | 17 | defined(CONFIG_SB1_PASS_2_WORKAROUNDS) |
18 | 18 | ||
19 | #define BCM1250_M3_WAR 1 | 19 | #ifndef __ASSEMBLY__ |
20 | extern int sb1250_m3_workaround_needed(void); | ||
21 | #endif | ||
22 | |||
23 | #define BCM1250_M3_WAR sb1250_m3_workaround_needed() | ||
20 | #define SIBYTE_1956_WAR 1 | 24 | #define SIBYTE_1956_WAR 1 |
21 | 25 | ||
22 | #else | 26 | #else |
diff --git a/arch/mips/include/asm/mips-boards/bonito64.h b/arch/mips/include/asm/mips-boards/bonito64.h index a576ce044c3c..d14e2adc4be5 100644 --- a/arch/mips/include/asm/mips-boards/bonito64.h +++ b/arch/mips/include/asm/mips-boards/bonito64.h | |||
@@ -26,11 +26,6 @@ | |||
26 | /* offsets from base register */ | 26 | /* offsets from base register */ |
27 | #define BONITO(x) (x) | 27 | #define BONITO(x) (x) |
28 | 28 | ||
29 | #elif defined(CONFIG_LEMOTE_FULOONG2E) | ||
30 | |||
31 | #define BONITO(x) (*(volatile u32 *)((char *)CKSEG1ADDR(BONITO_REG_BASE) + (x))) | ||
32 | #define BONITO_IRQ_BASE 32 | ||
33 | |||
34 | #else | 29 | #else |
35 | 30 | ||
36 | /* | 31 | /* |
diff --git a/arch/mips/include/asm/mipsregs.h b/arch/mips/include/asm/mipsregs.h index a581d60cbcc2..c6e3c93ce7c7 100644 --- a/arch/mips/include/asm/mipsregs.h +++ b/arch/mips/include/asm/mipsregs.h | |||
@@ -135,6 +135,12 @@ | |||
135 | #define FPU_CSR_COND7 0x80000000 /* $fcc7 */ | 135 | #define FPU_CSR_COND7 0x80000000 /* $fcc7 */ |
136 | 136 | ||
137 | /* | 137 | /* |
138 | * Bits 18 - 20 of the FPU Status Register will be read as 0, | ||
139 | * and should be written as zero. | ||
140 | */ | ||
141 | #define FPU_CSR_RSVD 0x001c0000 | ||
142 | |||
143 | /* | ||
138 | * X the exception cause indicator | 144 | * X the exception cause indicator |
139 | * E the exception enable | 145 | * E the exception enable |
140 | * S the sticky/flag bit | 146 | * S the sticky/flag bit |
@@ -161,7 +167,8 @@ | |||
161 | #define FPU_CSR_UDF_S 0x00000008 | 167 | #define FPU_CSR_UDF_S 0x00000008 |
162 | #define FPU_CSR_INE_S 0x00000004 | 168 | #define FPU_CSR_INE_S 0x00000004 |
163 | 169 | ||
164 | /* rounding mode */ | 170 | /* Bits 0 and 1 of FPU Status Register specify the rounding mode */ |
171 | #define FPU_CSR_RM 0x00000003 | ||
165 | #define FPU_CSR_RN 0x0 /* nearest */ | 172 | #define FPU_CSR_RN 0x0 /* nearest */ |
166 | #define FPU_CSR_RZ 0x1 /* towards zero */ | 173 | #define FPU_CSR_RZ 0x1 /* towards zero */ |
167 | #define FPU_CSR_RU 0x2 /* towards +Infinity */ | 174 | #define FPU_CSR_RU 0x2 /* towards +Infinity */ |
@@ -251,6 +258,14 @@ | |||
251 | #define PL_256M 28 | 258 | #define PL_256M 28 |
252 | 259 | ||
253 | /* | 260 | /* |
261 | * PageGrain bits | ||
262 | */ | ||
263 | #define PG_RIE (_ULCAST_(1) << 31) | ||
264 | #define PG_XIE (_ULCAST_(1) << 30) | ||
265 | #define PG_ELPA (_ULCAST_(1) << 29) | ||
266 | #define PG_ESP (_ULCAST_(1) << 28) | ||
267 | |||
268 | /* | ||
254 | * R4x00 interrupt enable / cause bits | 269 | * R4x00 interrupt enable / cause bits |
255 | */ | 270 | */ |
256 | #define IE_SW0 (_ULCAST_(1) << 8) | 271 | #define IE_SW0 (_ULCAST_(1) << 8) |
@@ -406,6 +421,16 @@ | |||
406 | #define ST0_XX 0x80000000 /* MIPS IV naming */ | 421 | #define ST0_XX 0x80000000 /* MIPS IV naming */ |
407 | 422 | ||
408 | /* | 423 | /* |
424 | * Bitfields and bit numbers in the coprocessor 0 IntCtl register. (MIPSR2) | ||
425 | * | ||
426 | * Refer to your MIPS R4xx0 manual, chapter 5 for explanation. | ||
427 | */ | ||
428 | #define INTCTLB_IPPCI 26 | ||
429 | #define INTCTLF_IPPCI (_ULCAST_(7) << INTCTLB_IPPCI) | ||
430 | #define INTCTLB_IPTI 29 | ||
431 | #define INTCTLF_IPTI (_ULCAST_(7) << INTCTLB_IPTI) | ||
432 | |||
433 | /* | ||
409 | * Bitfields and bit numbers in the coprocessor 0 cause register. | 434 | * Bitfields and bit numbers in the coprocessor 0 cause register. |
410 | * | 435 | * |
411 | * Refer to your MIPS R4xx0 manual, chapter 5 for explanation. | 436 | * Refer to your MIPS R4xx0 manual, chapter 5 for explanation. |
@@ -434,6 +459,8 @@ | |||
434 | #define CAUSEF_IV (_ULCAST_(1) << 23) | 459 | #define CAUSEF_IV (_ULCAST_(1) << 23) |
435 | #define CAUSEB_CE 28 | 460 | #define CAUSEB_CE 28 |
436 | #define CAUSEF_CE (_ULCAST_(3) << 28) | 461 | #define CAUSEF_CE (_ULCAST_(3) << 28) |
462 | #define CAUSEB_TI 30 | ||
463 | #define CAUSEF_TI (_ULCAST_(1) << 30) | ||
437 | #define CAUSEB_BD 31 | 464 | #define CAUSEB_BD 31 |
438 | #define CAUSEF_BD (_ULCAST_(1) << 31) | 465 | #define CAUSEF_BD (_ULCAST_(1) << 31) |
439 | 466 | ||
@@ -564,6 +591,10 @@ | |||
564 | #define MIPS_CONF3_DSP (_ULCAST_(1) << 10) | 591 | #define MIPS_CONF3_DSP (_ULCAST_(1) << 10) |
565 | #define MIPS_CONF3_ULRI (_ULCAST_(1) << 13) | 592 | #define MIPS_CONF3_ULRI (_ULCAST_(1) << 13) |
566 | 593 | ||
594 | #define MIPS_CONF4_MMUSIZEEXT (_ULCAST_(255) << 0) | ||
595 | #define MIPS_CONF4_MMUEXTDEF (_ULCAST_(3) << 14) | ||
596 | #define MIPS_CONF4_MMUEXTDEF_MMUSIZEEXT (_ULCAST_(1) << 14) | ||
597 | |||
567 | #define MIPS_CONF7_WII (_ULCAST_(1) << 31) | 598 | #define MIPS_CONF7_WII (_ULCAST_(1) << 31) |
568 | 599 | ||
569 | #define MIPS_CONF7_RPS (_ULCAST_(1) << 2) | 600 | #define MIPS_CONF7_RPS (_ULCAST_(1) << 2) |
@@ -814,6 +845,9 @@ do { \ | |||
814 | #define read_c0_pagemask() __read_32bit_c0_register($5, 0) | 845 | #define read_c0_pagemask() __read_32bit_c0_register($5, 0) |
815 | #define write_c0_pagemask(val) __write_32bit_c0_register($5, 0, val) | 846 | #define write_c0_pagemask(val) __write_32bit_c0_register($5, 0, val) |
816 | 847 | ||
848 | #define read_c0_pagegrain() __read_32bit_c0_register($5, 1) | ||
849 | #define write_c0_pagegrain(val) __write_32bit_c0_register($5, 1, val) | ||
850 | |||
817 | #define read_c0_wired() __read_32bit_c0_register($6, 0) | 851 | #define read_c0_wired() __read_32bit_c0_register($6, 0) |
818 | #define write_c0_wired(val) __write_32bit_c0_register($6, 0, val) | 852 | #define write_c0_wired(val) __write_32bit_c0_register($6, 0, val) |
819 | 853 | ||
diff --git a/arch/mips/include/asm/mmu.h b/arch/mips/include/asm/mmu.h index 4063edd79623..c436138945a8 100644 --- a/arch/mips/include/asm/mmu.h +++ b/arch/mips/include/asm/mmu.h | |||
@@ -1,6 +1,9 @@ | |||
1 | #ifndef __ASM_MMU_H | 1 | #ifndef __ASM_MMU_H |
2 | #define __ASM_MMU_H | 2 | #define __ASM_MMU_H |
3 | 3 | ||
4 | typedef unsigned long mm_context_t[NR_CPUS]; | 4 | typedef struct { |
5 | unsigned long asid[NR_CPUS]; | ||
6 | void *vdso; | ||
7 | } mm_context_t; | ||
5 | 8 | ||
6 | #endif /* __ASM_MMU_H */ | 9 | #endif /* __ASM_MMU_H */ |
diff --git a/arch/mips/include/asm/mmu_context.h b/arch/mips/include/asm/mmu_context.h index 6083db586500..d9592733a7ba 100644 --- a/arch/mips/include/asm/mmu_context.h +++ b/arch/mips/include/asm/mmu_context.h | |||
@@ -24,6 +24,33 @@ | |||
24 | #endif /* SMTC */ | 24 | #endif /* SMTC */ |
25 | #include <asm-generic/mm_hooks.h> | 25 | #include <asm-generic/mm_hooks.h> |
26 | 26 | ||
27 | #ifdef CONFIG_MIPS_PGD_C0_CONTEXT | ||
28 | |||
29 | #define TLBMISS_HANDLER_SETUP_PGD(pgd) \ | ||
30 | tlbmiss_handler_setup_pgd((unsigned long)(pgd)) | ||
31 | |||
32 | static inline void tlbmiss_handler_setup_pgd(unsigned long pgd) | ||
33 | { | ||
34 | /* Check for swapper_pg_dir and convert to physical address. */ | ||
35 | if ((pgd & CKSEG3) == CKSEG0) | ||
36 | pgd = CPHYSADDR(pgd); | ||
37 | write_c0_context(pgd << 11); | ||
38 | } | ||
39 | |||
40 | #define TLBMISS_HANDLER_SETUP() \ | ||
41 | do { \ | ||
42 | TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir); \ | ||
43 | write_c0_xcontext((unsigned long) smp_processor_id() << 51); \ | ||
44 | } while (0) | ||
45 | |||
46 | |||
47 | static inline unsigned long get_current_pgd(void) | ||
48 | { | ||
49 | return PHYS_TO_XKSEG_CACHED((read_c0_context() >> 11) & ~0xfffUL); | ||
50 | } | ||
51 | |||
52 | #else /* CONFIG_MIPS_PGD_C0_CONTEXT: using pgd_current*/ | ||
53 | |||
27 | /* | 54 | /* |
28 | * For the fast tlb miss handlers, we keep a per cpu array of pointers | 55 | * For the fast tlb miss handlers, we keep a per cpu array of pointers |
29 | * to the current pgd for each processor. Also, the proc. id is stuffed | 56 | * to the current pgd for each processor. Also, the proc. id is stuffed |
@@ -46,7 +73,7 @@ extern unsigned long pgd_current[]; | |||
46 | back_to_back_c0_hazard(); \ | 73 | back_to_back_c0_hazard(); \ |
47 | TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir) | 74 | TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir) |
48 | #endif | 75 | #endif |
49 | 76 | #endif /* CONFIG_MIPS_PGD_C0_CONTEXT*/ | |
50 | #if defined(CONFIG_CPU_R3000) || defined(CONFIG_CPU_TX39XX) | 77 | #if defined(CONFIG_CPU_R3000) || defined(CONFIG_CPU_TX39XX) |
51 | 78 | ||
52 | #define ASID_INC 0x40 | 79 | #define ASID_INC 0x40 |
@@ -77,7 +104,7 @@ extern unsigned long smtc_asid_mask; | |||
77 | 104 | ||
78 | #endif | 105 | #endif |
79 | 106 | ||
80 | #define cpu_context(cpu, mm) ((mm)->context[cpu]) | 107 | #define cpu_context(cpu, mm) ((mm)->context.asid[cpu]) |
81 | #define cpu_asid(cpu, mm) (cpu_context((cpu), (mm)) & ASID_MASK) | 108 | #define cpu_asid(cpu, mm) (cpu_context((cpu), (mm)) & ASID_MASK) |
82 | #define asid_cache(cpu) (cpu_data[cpu].asid_cache) | 109 | #define asid_cache(cpu) (cpu_data[cpu].asid_cache) |
83 | 110 | ||
diff --git a/arch/mips/include/asm/msc01_ic.h b/arch/mips/include/asm/msc01_ic.h index 7989b9ffc1d2..d92406ae2841 100644 --- a/arch/mips/include/asm/msc01_ic.h +++ b/arch/mips/include/asm/msc01_ic.h | |||
@@ -145,4 +145,3 @@ extern void __init init_msc_irqs(unsigned long icubase, unsigned int base, msc_i | |||
145 | extern void ll_msc_irq(void); | 145 | extern void ll_msc_irq(void); |
146 | 146 | ||
147 | #endif /* __ASM_MIPS_BOARDS_MSC01_IC_H */ | 147 | #endif /* __ASM_MIPS_BOARDS_MSC01_IC_H */ |
148 | |||
diff --git a/arch/mips/include/asm/nile4.h b/arch/mips/include/asm/nile4.h index c3ca959aa4d9..af0e51a9f68a 100644 --- a/arch/mips/include/asm/nile4.h +++ b/arch/mips/include/asm/nile4.h | |||
@@ -307,4 +307,3 @@ extern u8 nile4_i8259_iack(void); | |||
307 | extern void nile4_dump_irq_status(void); /* Debug */ | 307 | extern void nile4_dump_irq_status(void); /* Debug */ |
308 | 308 | ||
309 | #endif | 309 | #endif |
310 | |||
diff --git a/arch/mips/include/asm/octeon/cvmx-agl-defs.h b/arch/mips/include/asm/octeon/cvmx-agl-defs.h new file mode 100644 index 000000000000..ec94b9ab7be1 --- /dev/null +++ b/arch/mips/include/asm/octeon/cvmx-agl-defs.h | |||
@@ -0,0 +1,1194 @@ | |||
1 | /***********************license start*************** | ||
2 | * Author: Cavium Networks | ||
3 | * | ||
4 | * Contact: support@caviumnetworks.com | ||
5 | * This file is part of the OCTEON SDK | ||
6 | * | ||
7 | * Copyright (c) 2003-2008 Cavium Networks | ||
8 | * | ||
9 | * This file is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License, Version 2, as | ||
11 | * published by the Free Software Foundation. | ||
12 | * | ||
13 | * This file is distributed in the hope that it will be useful, but | ||
14 | * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty | ||
15 | * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or | ||
16 | * NONINFRINGEMENT. See the GNU General Public License for more | ||
17 | * details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public License | ||
20 | * along with this file; if not, write to the Free Software | ||
21 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | * or visit http://www.gnu.org/licenses/. | ||
23 | * | ||
24 | * This file may also be available under a different license from Cavium. | ||
25 | * Contact Cavium Networks for more information | ||
26 | ***********************license end**************************************/ | ||
27 | |||
28 | #ifndef __CVMX_AGL_DEFS_H__ | ||
29 | #define __CVMX_AGL_DEFS_H__ | ||
30 | |||
31 | #define CVMX_AGL_GMX_BAD_REG \ | ||
32 | CVMX_ADD_IO_SEG(0x00011800E0000518ull) | ||
33 | #define CVMX_AGL_GMX_BIST \ | ||
34 | CVMX_ADD_IO_SEG(0x00011800E0000400ull) | ||
35 | #define CVMX_AGL_GMX_DRV_CTL \ | ||
36 | CVMX_ADD_IO_SEG(0x00011800E00007F0ull) | ||
37 | #define CVMX_AGL_GMX_INF_MODE \ | ||
38 | CVMX_ADD_IO_SEG(0x00011800E00007F8ull) | ||
39 | #define CVMX_AGL_GMX_PRTX_CFG(offset) \ | ||
40 | CVMX_ADD_IO_SEG(0x00011800E0000010ull + (((offset) & 1) * 2048)) | ||
41 | #define CVMX_AGL_GMX_RXX_ADR_CAM0(offset) \ | ||
42 | CVMX_ADD_IO_SEG(0x00011800E0000180ull + (((offset) & 1) * 2048)) | ||
43 | #define CVMX_AGL_GMX_RXX_ADR_CAM1(offset) \ | ||
44 | CVMX_ADD_IO_SEG(0x00011800E0000188ull + (((offset) & 1) * 2048)) | ||
45 | #define CVMX_AGL_GMX_RXX_ADR_CAM2(offset) \ | ||
46 | CVMX_ADD_IO_SEG(0x00011800E0000190ull + (((offset) & 1) * 2048)) | ||
47 | #define CVMX_AGL_GMX_RXX_ADR_CAM3(offset) \ | ||
48 | CVMX_ADD_IO_SEG(0x00011800E0000198ull + (((offset) & 1) * 2048)) | ||
49 | #define CVMX_AGL_GMX_RXX_ADR_CAM4(offset) \ | ||
50 | CVMX_ADD_IO_SEG(0x00011800E00001A0ull + (((offset) & 1) * 2048)) | ||
51 | #define CVMX_AGL_GMX_RXX_ADR_CAM5(offset) \ | ||
52 | CVMX_ADD_IO_SEG(0x00011800E00001A8ull + (((offset) & 1) * 2048)) | ||
53 | #define CVMX_AGL_GMX_RXX_ADR_CAM_EN(offset) \ | ||
54 | CVMX_ADD_IO_SEG(0x00011800E0000108ull + (((offset) & 1) * 2048)) | ||
55 | #define CVMX_AGL_GMX_RXX_ADR_CTL(offset) \ | ||
56 | CVMX_ADD_IO_SEG(0x00011800E0000100ull + (((offset) & 1) * 2048)) | ||
57 | #define CVMX_AGL_GMX_RXX_DECISION(offset) \ | ||
58 | CVMX_ADD_IO_SEG(0x00011800E0000040ull + (((offset) & 1) * 2048)) | ||
59 | #define CVMX_AGL_GMX_RXX_FRM_CHK(offset) \ | ||
60 | CVMX_ADD_IO_SEG(0x00011800E0000020ull + (((offset) & 1) * 2048)) | ||
61 | #define CVMX_AGL_GMX_RXX_FRM_CTL(offset) \ | ||
62 | CVMX_ADD_IO_SEG(0x00011800E0000018ull + (((offset) & 1) * 2048)) | ||
63 | #define CVMX_AGL_GMX_RXX_FRM_MAX(offset) \ | ||
64 | CVMX_ADD_IO_SEG(0x00011800E0000030ull + (((offset) & 1) * 2048)) | ||
65 | #define CVMX_AGL_GMX_RXX_FRM_MIN(offset) \ | ||
66 | CVMX_ADD_IO_SEG(0x00011800E0000028ull + (((offset) & 1) * 2048)) | ||
67 | #define CVMX_AGL_GMX_RXX_IFG(offset) \ | ||
68 | CVMX_ADD_IO_SEG(0x00011800E0000058ull + (((offset) & 1) * 2048)) | ||
69 | #define CVMX_AGL_GMX_RXX_INT_EN(offset) \ | ||
70 | CVMX_ADD_IO_SEG(0x00011800E0000008ull + (((offset) & 1) * 2048)) | ||
71 | #define CVMX_AGL_GMX_RXX_INT_REG(offset) \ | ||
72 | CVMX_ADD_IO_SEG(0x00011800E0000000ull + (((offset) & 1) * 2048)) | ||
73 | #define CVMX_AGL_GMX_RXX_JABBER(offset) \ | ||
74 | CVMX_ADD_IO_SEG(0x00011800E0000038ull + (((offset) & 1) * 2048)) | ||
75 | #define CVMX_AGL_GMX_RXX_PAUSE_DROP_TIME(offset) \ | ||
76 | CVMX_ADD_IO_SEG(0x00011800E0000068ull + (((offset) & 1) * 2048)) | ||
77 | #define CVMX_AGL_GMX_RXX_STATS_CTL(offset) \ | ||
78 | CVMX_ADD_IO_SEG(0x00011800E0000050ull + (((offset) & 1) * 2048)) | ||
79 | #define CVMX_AGL_GMX_RXX_STATS_OCTS(offset) \ | ||
80 | CVMX_ADD_IO_SEG(0x00011800E0000088ull + (((offset) & 1) * 2048)) | ||
81 | #define CVMX_AGL_GMX_RXX_STATS_OCTS_CTL(offset) \ | ||
82 | CVMX_ADD_IO_SEG(0x00011800E0000098ull + (((offset) & 1) * 2048)) | ||
83 | #define CVMX_AGL_GMX_RXX_STATS_OCTS_DMAC(offset) \ | ||
84 | CVMX_ADD_IO_SEG(0x00011800E00000A8ull + (((offset) & 1) * 2048)) | ||
85 | #define CVMX_AGL_GMX_RXX_STATS_OCTS_DRP(offset) \ | ||
86 | CVMX_ADD_IO_SEG(0x00011800E00000B8ull + (((offset) & 1) * 2048)) | ||
87 | #define CVMX_AGL_GMX_RXX_STATS_PKTS(offset) \ | ||
88 | CVMX_ADD_IO_SEG(0x00011800E0000080ull + (((offset) & 1) * 2048)) | ||
89 | #define CVMX_AGL_GMX_RXX_STATS_PKTS_BAD(offset) \ | ||
90 | CVMX_ADD_IO_SEG(0x00011800E00000C0ull + (((offset) & 1) * 2048)) | ||
91 | #define CVMX_AGL_GMX_RXX_STATS_PKTS_CTL(offset) \ | ||
92 | CVMX_ADD_IO_SEG(0x00011800E0000090ull + (((offset) & 1) * 2048)) | ||
93 | #define CVMX_AGL_GMX_RXX_STATS_PKTS_DMAC(offset) \ | ||
94 | CVMX_ADD_IO_SEG(0x00011800E00000A0ull + (((offset) & 1) * 2048)) | ||
95 | #define CVMX_AGL_GMX_RXX_STATS_PKTS_DRP(offset) \ | ||
96 | CVMX_ADD_IO_SEG(0x00011800E00000B0ull + (((offset) & 1) * 2048)) | ||
97 | #define CVMX_AGL_GMX_RXX_UDD_SKP(offset) \ | ||
98 | CVMX_ADD_IO_SEG(0x00011800E0000048ull + (((offset) & 1) * 2048)) | ||
99 | #define CVMX_AGL_GMX_RX_BP_DROPX(offset) \ | ||
100 | CVMX_ADD_IO_SEG(0x00011800E0000420ull + (((offset) & 1) * 8)) | ||
101 | #define CVMX_AGL_GMX_RX_BP_OFFX(offset) \ | ||
102 | CVMX_ADD_IO_SEG(0x00011800E0000460ull + (((offset) & 1) * 8)) | ||
103 | #define CVMX_AGL_GMX_RX_BP_ONX(offset) \ | ||
104 | CVMX_ADD_IO_SEG(0x00011800E0000440ull + (((offset) & 1) * 8)) | ||
105 | #define CVMX_AGL_GMX_RX_PRT_INFO \ | ||
106 | CVMX_ADD_IO_SEG(0x00011800E00004E8ull) | ||
107 | #define CVMX_AGL_GMX_RX_TX_STATUS \ | ||
108 | CVMX_ADD_IO_SEG(0x00011800E00007E8ull) | ||
109 | #define CVMX_AGL_GMX_SMACX(offset) \ | ||
110 | CVMX_ADD_IO_SEG(0x00011800E0000230ull + (((offset) & 1) * 2048)) | ||
111 | #define CVMX_AGL_GMX_STAT_BP \ | ||
112 | CVMX_ADD_IO_SEG(0x00011800E0000520ull) | ||
113 | #define CVMX_AGL_GMX_TXX_APPEND(offset) \ | ||
114 | CVMX_ADD_IO_SEG(0x00011800E0000218ull + (((offset) & 1) * 2048)) | ||
115 | #define CVMX_AGL_GMX_TXX_CTL(offset) \ | ||
116 | CVMX_ADD_IO_SEG(0x00011800E0000270ull + (((offset) & 1) * 2048)) | ||
117 | #define CVMX_AGL_GMX_TXX_MIN_PKT(offset) \ | ||
118 | CVMX_ADD_IO_SEG(0x00011800E0000240ull + (((offset) & 1) * 2048)) | ||
119 | #define CVMX_AGL_GMX_TXX_PAUSE_PKT_INTERVAL(offset) \ | ||
120 | CVMX_ADD_IO_SEG(0x00011800E0000248ull + (((offset) & 1) * 2048)) | ||
121 | #define CVMX_AGL_GMX_TXX_PAUSE_PKT_TIME(offset) \ | ||
122 | CVMX_ADD_IO_SEG(0x00011800E0000238ull + (((offset) & 1) * 2048)) | ||
123 | #define CVMX_AGL_GMX_TXX_PAUSE_TOGO(offset) \ | ||
124 | CVMX_ADD_IO_SEG(0x00011800E0000258ull + (((offset) & 1) * 2048)) | ||
125 | #define CVMX_AGL_GMX_TXX_PAUSE_ZERO(offset) \ | ||
126 | CVMX_ADD_IO_SEG(0x00011800E0000260ull + (((offset) & 1) * 2048)) | ||
127 | #define CVMX_AGL_GMX_TXX_SOFT_PAUSE(offset) \ | ||
128 | CVMX_ADD_IO_SEG(0x00011800E0000250ull + (((offset) & 1) * 2048)) | ||
129 | #define CVMX_AGL_GMX_TXX_STAT0(offset) \ | ||
130 | CVMX_ADD_IO_SEG(0x00011800E0000280ull + (((offset) & 1) * 2048)) | ||
131 | #define CVMX_AGL_GMX_TXX_STAT1(offset) \ | ||
132 | CVMX_ADD_IO_SEG(0x00011800E0000288ull + (((offset) & 1) * 2048)) | ||
133 | #define CVMX_AGL_GMX_TXX_STAT2(offset) \ | ||
134 | CVMX_ADD_IO_SEG(0x00011800E0000290ull + (((offset) & 1) * 2048)) | ||
135 | #define CVMX_AGL_GMX_TXX_STAT3(offset) \ | ||
136 | CVMX_ADD_IO_SEG(0x00011800E0000298ull + (((offset) & 1) * 2048)) | ||
137 | #define CVMX_AGL_GMX_TXX_STAT4(offset) \ | ||
138 | CVMX_ADD_IO_SEG(0x00011800E00002A0ull + (((offset) & 1) * 2048)) | ||
139 | #define CVMX_AGL_GMX_TXX_STAT5(offset) \ | ||
140 | CVMX_ADD_IO_SEG(0x00011800E00002A8ull + (((offset) & 1) * 2048)) | ||
141 | #define CVMX_AGL_GMX_TXX_STAT6(offset) \ | ||
142 | CVMX_ADD_IO_SEG(0x00011800E00002B0ull + (((offset) & 1) * 2048)) | ||
143 | #define CVMX_AGL_GMX_TXX_STAT7(offset) \ | ||
144 | CVMX_ADD_IO_SEG(0x00011800E00002B8ull + (((offset) & 1) * 2048)) | ||
145 | #define CVMX_AGL_GMX_TXX_STAT8(offset) \ | ||
146 | CVMX_ADD_IO_SEG(0x00011800E00002C0ull + (((offset) & 1) * 2048)) | ||
147 | #define CVMX_AGL_GMX_TXX_STAT9(offset) \ | ||
148 | CVMX_ADD_IO_SEG(0x00011800E00002C8ull + (((offset) & 1) * 2048)) | ||
149 | #define CVMX_AGL_GMX_TXX_STATS_CTL(offset) \ | ||
150 | CVMX_ADD_IO_SEG(0x00011800E0000268ull + (((offset) & 1) * 2048)) | ||
151 | #define CVMX_AGL_GMX_TXX_THRESH(offset) \ | ||
152 | CVMX_ADD_IO_SEG(0x00011800E0000210ull + (((offset) & 1) * 2048)) | ||
153 | #define CVMX_AGL_GMX_TX_BP \ | ||
154 | CVMX_ADD_IO_SEG(0x00011800E00004D0ull) | ||
155 | #define CVMX_AGL_GMX_TX_COL_ATTEMPT \ | ||
156 | CVMX_ADD_IO_SEG(0x00011800E0000498ull) | ||
157 | #define CVMX_AGL_GMX_TX_IFG \ | ||
158 | CVMX_ADD_IO_SEG(0x00011800E0000488ull) | ||
159 | #define CVMX_AGL_GMX_TX_INT_EN \ | ||
160 | CVMX_ADD_IO_SEG(0x00011800E0000508ull) | ||
161 | #define CVMX_AGL_GMX_TX_INT_REG \ | ||
162 | CVMX_ADD_IO_SEG(0x00011800E0000500ull) | ||
163 | #define CVMX_AGL_GMX_TX_JAM \ | ||
164 | CVMX_ADD_IO_SEG(0x00011800E0000490ull) | ||
165 | #define CVMX_AGL_GMX_TX_LFSR \ | ||
166 | CVMX_ADD_IO_SEG(0x00011800E00004F8ull) | ||
167 | #define CVMX_AGL_GMX_TX_OVR_BP \ | ||
168 | CVMX_ADD_IO_SEG(0x00011800E00004C8ull) | ||
169 | #define CVMX_AGL_GMX_TX_PAUSE_PKT_DMAC \ | ||
170 | CVMX_ADD_IO_SEG(0x00011800E00004A0ull) | ||
171 | #define CVMX_AGL_GMX_TX_PAUSE_PKT_TYPE \ | ||
172 | CVMX_ADD_IO_SEG(0x00011800E00004A8ull) | ||
173 | |||
174 | union cvmx_agl_gmx_bad_reg { | ||
175 | uint64_t u64; | ||
176 | struct cvmx_agl_gmx_bad_reg_s { | ||
177 | uint64_t reserved_38_63:26; | ||
178 | uint64_t txpsh1:1; | ||
179 | uint64_t txpop1:1; | ||
180 | uint64_t ovrflw1:1; | ||
181 | uint64_t txpsh:1; | ||
182 | uint64_t txpop:1; | ||
183 | uint64_t ovrflw:1; | ||
184 | uint64_t reserved_27_31:5; | ||
185 | uint64_t statovr:1; | ||
186 | uint64_t reserved_23_25:3; | ||
187 | uint64_t loststat:1; | ||
188 | uint64_t reserved_4_21:18; | ||
189 | uint64_t out_ovr:2; | ||
190 | uint64_t reserved_0_1:2; | ||
191 | } s; | ||
192 | struct cvmx_agl_gmx_bad_reg_s cn52xx; | ||
193 | struct cvmx_agl_gmx_bad_reg_s cn52xxp1; | ||
194 | struct cvmx_agl_gmx_bad_reg_cn56xx { | ||
195 | uint64_t reserved_35_63:29; | ||
196 | uint64_t txpsh:1; | ||
197 | uint64_t txpop:1; | ||
198 | uint64_t ovrflw:1; | ||
199 | uint64_t reserved_27_31:5; | ||
200 | uint64_t statovr:1; | ||
201 | uint64_t reserved_23_25:3; | ||
202 | uint64_t loststat:1; | ||
203 | uint64_t reserved_3_21:19; | ||
204 | uint64_t out_ovr:1; | ||
205 | uint64_t reserved_0_1:2; | ||
206 | } cn56xx; | ||
207 | struct cvmx_agl_gmx_bad_reg_cn56xx cn56xxp1; | ||
208 | }; | ||
209 | |||
210 | union cvmx_agl_gmx_bist { | ||
211 | uint64_t u64; | ||
212 | struct cvmx_agl_gmx_bist_s { | ||
213 | uint64_t reserved_10_63:54; | ||
214 | uint64_t status:10; | ||
215 | } s; | ||
216 | struct cvmx_agl_gmx_bist_s cn52xx; | ||
217 | struct cvmx_agl_gmx_bist_s cn52xxp1; | ||
218 | struct cvmx_agl_gmx_bist_s cn56xx; | ||
219 | struct cvmx_agl_gmx_bist_s cn56xxp1; | ||
220 | }; | ||
221 | |||
222 | union cvmx_agl_gmx_drv_ctl { | ||
223 | uint64_t u64; | ||
224 | struct cvmx_agl_gmx_drv_ctl_s { | ||
225 | uint64_t reserved_49_63:15; | ||
226 | uint64_t byp_en1:1; | ||
227 | uint64_t reserved_45_47:3; | ||
228 | uint64_t pctl1:5; | ||
229 | uint64_t reserved_37_39:3; | ||
230 | uint64_t nctl1:5; | ||
231 | uint64_t reserved_17_31:15; | ||
232 | uint64_t byp_en:1; | ||
233 | uint64_t reserved_13_15:3; | ||
234 | uint64_t pctl:5; | ||
235 | uint64_t reserved_5_7:3; | ||
236 | uint64_t nctl:5; | ||
237 | } s; | ||
238 | struct cvmx_agl_gmx_drv_ctl_s cn52xx; | ||
239 | struct cvmx_agl_gmx_drv_ctl_s cn52xxp1; | ||
240 | struct cvmx_agl_gmx_drv_ctl_cn56xx { | ||
241 | uint64_t reserved_17_63:47; | ||
242 | uint64_t byp_en:1; | ||
243 | uint64_t reserved_13_15:3; | ||
244 | uint64_t pctl:5; | ||
245 | uint64_t reserved_5_7:3; | ||
246 | uint64_t nctl:5; | ||
247 | } cn56xx; | ||
248 | struct cvmx_agl_gmx_drv_ctl_cn56xx cn56xxp1; | ||
249 | }; | ||
250 | |||
251 | union cvmx_agl_gmx_inf_mode { | ||
252 | uint64_t u64; | ||
253 | struct cvmx_agl_gmx_inf_mode_s { | ||
254 | uint64_t reserved_2_63:62; | ||
255 | uint64_t en:1; | ||
256 | uint64_t reserved_0_0:1; | ||
257 | } s; | ||
258 | struct cvmx_agl_gmx_inf_mode_s cn52xx; | ||
259 | struct cvmx_agl_gmx_inf_mode_s cn52xxp1; | ||
260 | struct cvmx_agl_gmx_inf_mode_s cn56xx; | ||
261 | struct cvmx_agl_gmx_inf_mode_s cn56xxp1; | ||
262 | }; | ||
263 | |||
264 | union cvmx_agl_gmx_prtx_cfg { | ||
265 | uint64_t u64; | ||
266 | struct cvmx_agl_gmx_prtx_cfg_s { | ||
267 | uint64_t reserved_6_63:58; | ||
268 | uint64_t tx_en:1; | ||
269 | uint64_t rx_en:1; | ||
270 | uint64_t slottime:1; | ||
271 | uint64_t duplex:1; | ||
272 | uint64_t speed:1; | ||
273 | uint64_t en:1; | ||
274 | } s; | ||
275 | struct cvmx_agl_gmx_prtx_cfg_s cn52xx; | ||
276 | struct cvmx_agl_gmx_prtx_cfg_s cn52xxp1; | ||
277 | struct cvmx_agl_gmx_prtx_cfg_s cn56xx; | ||
278 | struct cvmx_agl_gmx_prtx_cfg_s cn56xxp1; | ||
279 | }; | ||
280 | |||
281 | union cvmx_agl_gmx_rxx_adr_cam0 { | ||
282 | uint64_t u64; | ||
283 | struct cvmx_agl_gmx_rxx_adr_cam0_s { | ||
284 | uint64_t adr:64; | ||
285 | } s; | ||
286 | struct cvmx_agl_gmx_rxx_adr_cam0_s cn52xx; | ||
287 | struct cvmx_agl_gmx_rxx_adr_cam0_s cn52xxp1; | ||
288 | struct cvmx_agl_gmx_rxx_adr_cam0_s cn56xx; | ||
289 | struct cvmx_agl_gmx_rxx_adr_cam0_s cn56xxp1; | ||
290 | }; | ||
291 | |||
292 | union cvmx_agl_gmx_rxx_adr_cam1 { | ||
293 | uint64_t u64; | ||
294 | struct cvmx_agl_gmx_rxx_adr_cam1_s { | ||
295 | uint64_t adr:64; | ||
296 | } s; | ||
297 | struct cvmx_agl_gmx_rxx_adr_cam1_s cn52xx; | ||
298 | struct cvmx_agl_gmx_rxx_adr_cam1_s cn52xxp1; | ||
299 | struct cvmx_agl_gmx_rxx_adr_cam1_s cn56xx; | ||
300 | struct cvmx_agl_gmx_rxx_adr_cam1_s cn56xxp1; | ||
301 | }; | ||
302 | |||
303 | union cvmx_agl_gmx_rxx_adr_cam2 { | ||
304 | uint64_t u64; | ||
305 | struct cvmx_agl_gmx_rxx_adr_cam2_s { | ||
306 | uint64_t adr:64; | ||
307 | } s; | ||
308 | struct cvmx_agl_gmx_rxx_adr_cam2_s cn52xx; | ||
309 | struct cvmx_agl_gmx_rxx_adr_cam2_s cn52xxp1; | ||
310 | struct cvmx_agl_gmx_rxx_adr_cam2_s cn56xx; | ||
311 | struct cvmx_agl_gmx_rxx_adr_cam2_s cn56xxp1; | ||
312 | }; | ||
313 | |||
314 | union cvmx_agl_gmx_rxx_adr_cam3 { | ||
315 | uint64_t u64; | ||
316 | struct cvmx_agl_gmx_rxx_adr_cam3_s { | ||
317 | uint64_t adr:64; | ||
318 | } s; | ||
319 | struct cvmx_agl_gmx_rxx_adr_cam3_s cn52xx; | ||
320 | struct cvmx_agl_gmx_rxx_adr_cam3_s cn52xxp1; | ||
321 | struct cvmx_agl_gmx_rxx_adr_cam3_s cn56xx; | ||
322 | struct cvmx_agl_gmx_rxx_adr_cam3_s cn56xxp1; | ||
323 | }; | ||
324 | |||
325 | union cvmx_agl_gmx_rxx_adr_cam4 { | ||
326 | uint64_t u64; | ||
327 | struct cvmx_agl_gmx_rxx_adr_cam4_s { | ||
328 | uint64_t adr:64; | ||
329 | } s; | ||
330 | struct cvmx_agl_gmx_rxx_adr_cam4_s cn52xx; | ||
331 | struct cvmx_agl_gmx_rxx_adr_cam4_s cn52xxp1; | ||
332 | struct cvmx_agl_gmx_rxx_adr_cam4_s cn56xx; | ||
333 | struct cvmx_agl_gmx_rxx_adr_cam4_s cn56xxp1; | ||
334 | }; | ||
335 | |||
336 | union cvmx_agl_gmx_rxx_adr_cam5 { | ||
337 | uint64_t u64; | ||
338 | struct cvmx_agl_gmx_rxx_adr_cam5_s { | ||
339 | uint64_t adr:64; | ||
340 | } s; | ||
341 | struct cvmx_agl_gmx_rxx_adr_cam5_s cn52xx; | ||
342 | struct cvmx_agl_gmx_rxx_adr_cam5_s cn52xxp1; | ||
343 | struct cvmx_agl_gmx_rxx_adr_cam5_s cn56xx; | ||
344 | struct cvmx_agl_gmx_rxx_adr_cam5_s cn56xxp1; | ||
345 | }; | ||
346 | |||
347 | union cvmx_agl_gmx_rxx_adr_cam_en { | ||
348 | uint64_t u64; | ||
349 | struct cvmx_agl_gmx_rxx_adr_cam_en_s { | ||
350 | uint64_t reserved_8_63:56; | ||
351 | uint64_t en:8; | ||
352 | } s; | ||
353 | struct cvmx_agl_gmx_rxx_adr_cam_en_s cn52xx; | ||
354 | struct cvmx_agl_gmx_rxx_adr_cam_en_s cn52xxp1; | ||
355 | struct cvmx_agl_gmx_rxx_adr_cam_en_s cn56xx; | ||
356 | struct cvmx_agl_gmx_rxx_adr_cam_en_s cn56xxp1; | ||
357 | }; | ||
358 | |||
359 | union cvmx_agl_gmx_rxx_adr_ctl { | ||
360 | uint64_t u64; | ||
361 | struct cvmx_agl_gmx_rxx_adr_ctl_s { | ||
362 | uint64_t reserved_4_63:60; | ||
363 | uint64_t cam_mode:1; | ||
364 | uint64_t mcst:2; | ||
365 | uint64_t bcst:1; | ||
366 | } s; | ||
367 | struct cvmx_agl_gmx_rxx_adr_ctl_s cn52xx; | ||
368 | struct cvmx_agl_gmx_rxx_adr_ctl_s cn52xxp1; | ||
369 | struct cvmx_agl_gmx_rxx_adr_ctl_s cn56xx; | ||
370 | struct cvmx_agl_gmx_rxx_adr_ctl_s cn56xxp1; | ||
371 | }; | ||
372 | |||
373 | union cvmx_agl_gmx_rxx_decision { | ||
374 | uint64_t u64; | ||
375 | struct cvmx_agl_gmx_rxx_decision_s { | ||
376 | uint64_t reserved_5_63:59; | ||
377 | uint64_t cnt:5; | ||
378 | } s; | ||
379 | struct cvmx_agl_gmx_rxx_decision_s cn52xx; | ||
380 | struct cvmx_agl_gmx_rxx_decision_s cn52xxp1; | ||
381 | struct cvmx_agl_gmx_rxx_decision_s cn56xx; | ||
382 | struct cvmx_agl_gmx_rxx_decision_s cn56xxp1; | ||
383 | }; | ||
384 | |||
385 | union cvmx_agl_gmx_rxx_frm_chk { | ||
386 | uint64_t u64; | ||
387 | struct cvmx_agl_gmx_rxx_frm_chk_s { | ||
388 | uint64_t reserved_9_63:55; | ||
389 | uint64_t skperr:1; | ||
390 | uint64_t rcverr:1; | ||
391 | uint64_t lenerr:1; | ||
392 | uint64_t alnerr:1; | ||
393 | uint64_t fcserr:1; | ||
394 | uint64_t jabber:1; | ||
395 | uint64_t maxerr:1; | ||
396 | uint64_t reserved_1_1:1; | ||
397 | uint64_t minerr:1; | ||
398 | } s; | ||
399 | struct cvmx_agl_gmx_rxx_frm_chk_s cn52xx; | ||
400 | struct cvmx_agl_gmx_rxx_frm_chk_s cn52xxp1; | ||
401 | struct cvmx_agl_gmx_rxx_frm_chk_s cn56xx; | ||
402 | struct cvmx_agl_gmx_rxx_frm_chk_s cn56xxp1; | ||
403 | }; | ||
404 | |||
405 | union cvmx_agl_gmx_rxx_frm_ctl { | ||
406 | uint64_t u64; | ||
407 | struct cvmx_agl_gmx_rxx_frm_ctl_s { | ||
408 | uint64_t reserved_10_63:54; | ||
409 | uint64_t pre_align:1; | ||
410 | uint64_t pad_len:1; | ||
411 | uint64_t vlan_len:1; | ||
412 | uint64_t pre_free:1; | ||
413 | uint64_t ctl_smac:1; | ||
414 | uint64_t ctl_mcst:1; | ||
415 | uint64_t ctl_bck:1; | ||
416 | uint64_t ctl_drp:1; | ||
417 | uint64_t pre_strp:1; | ||
418 | uint64_t pre_chk:1; | ||
419 | } s; | ||
420 | struct cvmx_agl_gmx_rxx_frm_ctl_s cn52xx; | ||
421 | struct cvmx_agl_gmx_rxx_frm_ctl_s cn52xxp1; | ||
422 | struct cvmx_agl_gmx_rxx_frm_ctl_s cn56xx; | ||
423 | struct cvmx_agl_gmx_rxx_frm_ctl_s cn56xxp1; | ||
424 | }; | ||
425 | |||
426 | union cvmx_agl_gmx_rxx_frm_max { | ||
427 | uint64_t u64; | ||
428 | struct cvmx_agl_gmx_rxx_frm_max_s { | ||
429 | uint64_t reserved_16_63:48; | ||
430 | uint64_t len:16; | ||
431 | } s; | ||
432 | struct cvmx_agl_gmx_rxx_frm_max_s cn52xx; | ||
433 | struct cvmx_agl_gmx_rxx_frm_max_s cn52xxp1; | ||
434 | struct cvmx_agl_gmx_rxx_frm_max_s cn56xx; | ||
435 | struct cvmx_agl_gmx_rxx_frm_max_s cn56xxp1; | ||
436 | }; | ||
437 | |||
438 | union cvmx_agl_gmx_rxx_frm_min { | ||
439 | uint64_t u64; | ||
440 | struct cvmx_agl_gmx_rxx_frm_min_s { | ||
441 | uint64_t reserved_16_63:48; | ||
442 | uint64_t len:16; | ||
443 | } s; | ||
444 | struct cvmx_agl_gmx_rxx_frm_min_s cn52xx; | ||
445 | struct cvmx_agl_gmx_rxx_frm_min_s cn52xxp1; | ||
446 | struct cvmx_agl_gmx_rxx_frm_min_s cn56xx; | ||
447 | struct cvmx_agl_gmx_rxx_frm_min_s cn56xxp1; | ||
448 | }; | ||
449 | |||
450 | union cvmx_agl_gmx_rxx_ifg { | ||
451 | uint64_t u64; | ||
452 | struct cvmx_agl_gmx_rxx_ifg_s { | ||
453 | uint64_t reserved_4_63:60; | ||
454 | uint64_t ifg:4; | ||
455 | } s; | ||
456 | struct cvmx_agl_gmx_rxx_ifg_s cn52xx; | ||
457 | struct cvmx_agl_gmx_rxx_ifg_s cn52xxp1; | ||
458 | struct cvmx_agl_gmx_rxx_ifg_s cn56xx; | ||
459 | struct cvmx_agl_gmx_rxx_ifg_s cn56xxp1; | ||
460 | }; | ||
461 | |||
462 | union cvmx_agl_gmx_rxx_int_en { | ||
463 | uint64_t u64; | ||
464 | struct cvmx_agl_gmx_rxx_int_en_s { | ||
465 | uint64_t reserved_20_63:44; | ||
466 | uint64_t pause_drp:1; | ||
467 | uint64_t reserved_16_18:3; | ||
468 | uint64_t ifgerr:1; | ||
469 | uint64_t coldet:1; | ||
470 | uint64_t falerr:1; | ||
471 | uint64_t rsverr:1; | ||
472 | uint64_t pcterr:1; | ||
473 | uint64_t ovrerr:1; | ||
474 | uint64_t reserved_9_9:1; | ||
475 | uint64_t skperr:1; | ||
476 | uint64_t rcverr:1; | ||
477 | uint64_t lenerr:1; | ||
478 | uint64_t alnerr:1; | ||
479 | uint64_t fcserr:1; | ||
480 | uint64_t jabber:1; | ||
481 | uint64_t maxerr:1; | ||
482 | uint64_t reserved_1_1:1; | ||
483 | uint64_t minerr:1; | ||
484 | } s; | ||
485 | struct cvmx_agl_gmx_rxx_int_en_s cn52xx; | ||
486 | struct cvmx_agl_gmx_rxx_int_en_s cn52xxp1; | ||
487 | struct cvmx_agl_gmx_rxx_int_en_s cn56xx; | ||
488 | struct cvmx_agl_gmx_rxx_int_en_s cn56xxp1; | ||
489 | }; | ||
490 | |||
491 | union cvmx_agl_gmx_rxx_int_reg { | ||
492 | uint64_t u64; | ||
493 | struct cvmx_agl_gmx_rxx_int_reg_s { | ||
494 | uint64_t reserved_20_63:44; | ||
495 | uint64_t pause_drp:1; | ||
496 | uint64_t reserved_16_18:3; | ||
497 | uint64_t ifgerr:1; | ||
498 | uint64_t coldet:1; | ||
499 | uint64_t falerr:1; | ||
500 | uint64_t rsverr:1; | ||
501 | uint64_t pcterr:1; | ||
502 | uint64_t ovrerr:1; | ||
503 | uint64_t reserved_9_9:1; | ||
504 | uint64_t skperr:1; | ||
505 | uint64_t rcverr:1; | ||
506 | uint64_t lenerr:1; | ||
507 | uint64_t alnerr:1; | ||
508 | uint64_t fcserr:1; | ||
509 | uint64_t jabber:1; | ||
510 | uint64_t maxerr:1; | ||
511 | uint64_t reserved_1_1:1; | ||
512 | uint64_t minerr:1; | ||
513 | } s; | ||
514 | struct cvmx_agl_gmx_rxx_int_reg_s cn52xx; | ||
515 | struct cvmx_agl_gmx_rxx_int_reg_s cn52xxp1; | ||
516 | struct cvmx_agl_gmx_rxx_int_reg_s cn56xx; | ||
517 | struct cvmx_agl_gmx_rxx_int_reg_s cn56xxp1; | ||
518 | }; | ||
519 | |||
520 | union cvmx_agl_gmx_rxx_jabber { | ||
521 | uint64_t u64; | ||
522 | struct cvmx_agl_gmx_rxx_jabber_s { | ||
523 | uint64_t reserved_16_63:48; | ||
524 | uint64_t cnt:16; | ||
525 | } s; | ||
526 | struct cvmx_agl_gmx_rxx_jabber_s cn52xx; | ||
527 | struct cvmx_agl_gmx_rxx_jabber_s cn52xxp1; | ||
528 | struct cvmx_agl_gmx_rxx_jabber_s cn56xx; | ||
529 | struct cvmx_agl_gmx_rxx_jabber_s cn56xxp1; | ||
530 | }; | ||
531 | |||
532 | union cvmx_agl_gmx_rxx_pause_drop_time { | ||
533 | uint64_t u64; | ||
534 | struct cvmx_agl_gmx_rxx_pause_drop_time_s { | ||
535 | uint64_t reserved_16_63:48; | ||
536 | uint64_t status:16; | ||
537 | } s; | ||
538 | struct cvmx_agl_gmx_rxx_pause_drop_time_s cn52xx; | ||
539 | struct cvmx_agl_gmx_rxx_pause_drop_time_s cn52xxp1; | ||
540 | struct cvmx_agl_gmx_rxx_pause_drop_time_s cn56xx; | ||
541 | struct cvmx_agl_gmx_rxx_pause_drop_time_s cn56xxp1; | ||
542 | }; | ||
543 | |||
544 | union cvmx_agl_gmx_rxx_stats_ctl { | ||
545 | uint64_t u64; | ||
546 | struct cvmx_agl_gmx_rxx_stats_ctl_s { | ||
547 | uint64_t reserved_1_63:63; | ||
548 | uint64_t rd_clr:1; | ||
549 | } s; | ||
550 | struct cvmx_agl_gmx_rxx_stats_ctl_s cn52xx; | ||
551 | struct cvmx_agl_gmx_rxx_stats_ctl_s cn52xxp1; | ||
552 | struct cvmx_agl_gmx_rxx_stats_ctl_s cn56xx; | ||
553 | struct cvmx_agl_gmx_rxx_stats_ctl_s cn56xxp1; | ||
554 | }; | ||
555 | |||
556 | union cvmx_agl_gmx_rxx_stats_octs { | ||
557 | uint64_t u64; | ||
558 | struct cvmx_agl_gmx_rxx_stats_octs_s { | ||
559 | uint64_t reserved_48_63:16; | ||
560 | uint64_t cnt:48; | ||
561 | } s; | ||
562 | struct cvmx_agl_gmx_rxx_stats_octs_s cn52xx; | ||
563 | struct cvmx_agl_gmx_rxx_stats_octs_s cn52xxp1; | ||
564 | struct cvmx_agl_gmx_rxx_stats_octs_s cn56xx; | ||
565 | struct cvmx_agl_gmx_rxx_stats_octs_s cn56xxp1; | ||
566 | }; | ||
567 | |||
568 | union cvmx_agl_gmx_rxx_stats_octs_ctl { | ||
569 | uint64_t u64; | ||
570 | struct cvmx_agl_gmx_rxx_stats_octs_ctl_s { | ||
571 | uint64_t reserved_48_63:16; | ||
572 | uint64_t cnt:48; | ||
573 | } s; | ||
574 | struct cvmx_agl_gmx_rxx_stats_octs_ctl_s cn52xx; | ||
575 | struct cvmx_agl_gmx_rxx_stats_octs_ctl_s cn52xxp1; | ||
576 | struct cvmx_agl_gmx_rxx_stats_octs_ctl_s cn56xx; | ||
577 | struct cvmx_agl_gmx_rxx_stats_octs_ctl_s cn56xxp1; | ||
578 | }; | ||
579 | |||
580 | union cvmx_agl_gmx_rxx_stats_octs_dmac { | ||
581 | uint64_t u64; | ||
582 | struct cvmx_agl_gmx_rxx_stats_octs_dmac_s { | ||
583 | uint64_t reserved_48_63:16; | ||
584 | uint64_t cnt:48; | ||
585 | } s; | ||
586 | struct cvmx_agl_gmx_rxx_stats_octs_dmac_s cn52xx; | ||
587 | struct cvmx_agl_gmx_rxx_stats_octs_dmac_s cn52xxp1; | ||
588 | struct cvmx_agl_gmx_rxx_stats_octs_dmac_s cn56xx; | ||
589 | struct cvmx_agl_gmx_rxx_stats_octs_dmac_s cn56xxp1; | ||
590 | }; | ||
591 | |||
592 | union cvmx_agl_gmx_rxx_stats_octs_drp { | ||
593 | uint64_t u64; | ||
594 | struct cvmx_agl_gmx_rxx_stats_octs_drp_s { | ||
595 | uint64_t reserved_48_63:16; | ||
596 | uint64_t cnt:48; | ||
597 | } s; | ||
598 | struct cvmx_agl_gmx_rxx_stats_octs_drp_s cn52xx; | ||
599 | struct cvmx_agl_gmx_rxx_stats_octs_drp_s cn52xxp1; | ||
600 | struct cvmx_agl_gmx_rxx_stats_octs_drp_s cn56xx; | ||
601 | struct cvmx_agl_gmx_rxx_stats_octs_drp_s cn56xxp1; | ||
602 | }; | ||
603 | |||
604 | union cvmx_agl_gmx_rxx_stats_pkts { | ||
605 | uint64_t u64; | ||
606 | struct cvmx_agl_gmx_rxx_stats_pkts_s { | ||
607 | uint64_t reserved_32_63:32; | ||
608 | uint64_t cnt:32; | ||
609 | } s; | ||
610 | struct cvmx_agl_gmx_rxx_stats_pkts_s cn52xx; | ||
611 | struct cvmx_agl_gmx_rxx_stats_pkts_s cn52xxp1; | ||
612 | struct cvmx_agl_gmx_rxx_stats_pkts_s cn56xx; | ||
613 | struct cvmx_agl_gmx_rxx_stats_pkts_s cn56xxp1; | ||
614 | }; | ||
615 | |||
616 | union cvmx_agl_gmx_rxx_stats_pkts_bad { | ||
617 | uint64_t u64; | ||
618 | struct cvmx_agl_gmx_rxx_stats_pkts_bad_s { | ||
619 | uint64_t reserved_32_63:32; | ||
620 | uint64_t cnt:32; | ||
621 | } s; | ||
622 | struct cvmx_agl_gmx_rxx_stats_pkts_bad_s cn52xx; | ||
623 | struct cvmx_agl_gmx_rxx_stats_pkts_bad_s cn52xxp1; | ||
624 | struct cvmx_agl_gmx_rxx_stats_pkts_bad_s cn56xx; | ||
625 | struct cvmx_agl_gmx_rxx_stats_pkts_bad_s cn56xxp1; | ||
626 | }; | ||
627 | |||
628 | union cvmx_agl_gmx_rxx_stats_pkts_ctl { | ||
629 | uint64_t u64; | ||
630 | struct cvmx_agl_gmx_rxx_stats_pkts_ctl_s { | ||
631 | uint64_t reserved_32_63:32; | ||
632 | uint64_t cnt:32; | ||
633 | } s; | ||
634 | struct cvmx_agl_gmx_rxx_stats_pkts_ctl_s cn52xx; | ||
635 | struct cvmx_agl_gmx_rxx_stats_pkts_ctl_s cn52xxp1; | ||
636 | struct cvmx_agl_gmx_rxx_stats_pkts_ctl_s cn56xx; | ||
637 | struct cvmx_agl_gmx_rxx_stats_pkts_ctl_s cn56xxp1; | ||
638 | }; | ||
639 | |||
640 | union cvmx_agl_gmx_rxx_stats_pkts_dmac { | ||
641 | uint64_t u64; | ||
642 | struct cvmx_agl_gmx_rxx_stats_pkts_dmac_s { | ||
643 | uint64_t reserved_32_63:32; | ||
644 | uint64_t cnt:32; | ||
645 | } s; | ||
646 | struct cvmx_agl_gmx_rxx_stats_pkts_dmac_s cn52xx; | ||
647 | struct cvmx_agl_gmx_rxx_stats_pkts_dmac_s cn52xxp1; | ||
648 | struct cvmx_agl_gmx_rxx_stats_pkts_dmac_s cn56xx; | ||
649 | struct cvmx_agl_gmx_rxx_stats_pkts_dmac_s cn56xxp1; | ||
650 | }; | ||
651 | |||
652 | union cvmx_agl_gmx_rxx_stats_pkts_drp { | ||
653 | uint64_t u64; | ||
654 | struct cvmx_agl_gmx_rxx_stats_pkts_drp_s { | ||
655 | uint64_t reserved_32_63:32; | ||
656 | uint64_t cnt:32; | ||
657 | } s; | ||
658 | struct cvmx_agl_gmx_rxx_stats_pkts_drp_s cn52xx; | ||
659 | struct cvmx_agl_gmx_rxx_stats_pkts_drp_s cn52xxp1; | ||
660 | struct cvmx_agl_gmx_rxx_stats_pkts_drp_s cn56xx; | ||
661 | struct cvmx_agl_gmx_rxx_stats_pkts_drp_s cn56xxp1; | ||
662 | }; | ||
663 | |||
664 | union cvmx_agl_gmx_rxx_udd_skp { | ||
665 | uint64_t u64; | ||
666 | struct cvmx_agl_gmx_rxx_udd_skp_s { | ||
667 | uint64_t reserved_9_63:55; | ||
668 | uint64_t fcssel:1; | ||
669 | uint64_t reserved_7_7:1; | ||
670 | uint64_t len:7; | ||
671 | } s; | ||
672 | struct cvmx_agl_gmx_rxx_udd_skp_s cn52xx; | ||
673 | struct cvmx_agl_gmx_rxx_udd_skp_s cn52xxp1; | ||
674 | struct cvmx_agl_gmx_rxx_udd_skp_s cn56xx; | ||
675 | struct cvmx_agl_gmx_rxx_udd_skp_s cn56xxp1; | ||
676 | }; | ||
677 | |||
678 | union cvmx_agl_gmx_rx_bp_dropx { | ||
679 | uint64_t u64; | ||
680 | struct cvmx_agl_gmx_rx_bp_dropx_s { | ||
681 | uint64_t reserved_6_63:58; | ||
682 | uint64_t mark:6; | ||
683 | } s; | ||
684 | struct cvmx_agl_gmx_rx_bp_dropx_s cn52xx; | ||
685 | struct cvmx_agl_gmx_rx_bp_dropx_s cn52xxp1; | ||
686 | struct cvmx_agl_gmx_rx_bp_dropx_s cn56xx; | ||
687 | struct cvmx_agl_gmx_rx_bp_dropx_s cn56xxp1; | ||
688 | }; | ||
689 | |||
690 | union cvmx_agl_gmx_rx_bp_offx { | ||
691 | uint64_t u64; | ||
692 | struct cvmx_agl_gmx_rx_bp_offx_s { | ||
693 | uint64_t reserved_6_63:58; | ||
694 | uint64_t mark:6; | ||
695 | } s; | ||
696 | struct cvmx_agl_gmx_rx_bp_offx_s cn52xx; | ||
697 | struct cvmx_agl_gmx_rx_bp_offx_s cn52xxp1; | ||
698 | struct cvmx_agl_gmx_rx_bp_offx_s cn56xx; | ||
699 | struct cvmx_agl_gmx_rx_bp_offx_s cn56xxp1; | ||
700 | }; | ||
701 | |||
702 | union cvmx_agl_gmx_rx_bp_onx { | ||
703 | uint64_t u64; | ||
704 | struct cvmx_agl_gmx_rx_bp_onx_s { | ||
705 | uint64_t reserved_9_63:55; | ||
706 | uint64_t mark:9; | ||
707 | } s; | ||
708 | struct cvmx_agl_gmx_rx_bp_onx_s cn52xx; | ||
709 | struct cvmx_agl_gmx_rx_bp_onx_s cn52xxp1; | ||
710 | struct cvmx_agl_gmx_rx_bp_onx_s cn56xx; | ||
711 | struct cvmx_agl_gmx_rx_bp_onx_s cn56xxp1; | ||
712 | }; | ||
713 | |||
714 | union cvmx_agl_gmx_rx_prt_info { | ||
715 | uint64_t u64; | ||
716 | struct cvmx_agl_gmx_rx_prt_info_s { | ||
717 | uint64_t reserved_18_63:46; | ||
718 | uint64_t drop:2; | ||
719 | uint64_t reserved_2_15:14; | ||
720 | uint64_t commit:2; | ||
721 | } s; | ||
722 | struct cvmx_agl_gmx_rx_prt_info_s cn52xx; | ||
723 | struct cvmx_agl_gmx_rx_prt_info_s cn52xxp1; | ||
724 | struct cvmx_agl_gmx_rx_prt_info_cn56xx { | ||
725 | uint64_t reserved_17_63:47; | ||
726 | uint64_t drop:1; | ||
727 | uint64_t reserved_1_15:15; | ||
728 | uint64_t commit:1; | ||
729 | } cn56xx; | ||
730 | struct cvmx_agl_gmx_rx_prt_info_cn56xx cn56xxp1; | ||
731 | }; | ||
732 | |||
733 | union cvmx_agl_gmx_rx_tx_status { | ||
734 | uint64_t u64; | ||
735 | struct cvmx_agl_gmx_rx_tx_status_s { | ||
736 | uint64_t reserved_6_63:58; | ||
737 | uint64_t tx:2; | ||
738 | uint64_t reserved_2_3:2; | ||
739 | uint64_t rx:2; | ||
740 | } s; | ||
741 | struct cvmx_agl_gmx_rx_tx_status_s cn52xx; | ||
742 | struct cvmx_agl_gmx_rx_tx_status_s cn52xxp1; | ||
743 | struct cvmx_agl_gmx_rx_tx_status_cn56xx { | ||
744 | uint64_t reserved_5_63:59; | ||
745 | uint64_t tx:1; | ||
746 | uint64_t reserved_1_3:3; | ||
747 | uint64_t rx:1; | ||
748 | } cn56xx; | ||
749 | struct cvmx_agl_gmx_rx_tx_status_cn56xx cn56xxp1; | ||
750 | }; | ||
751 | |||
752 | union cvmx_agl_gmx_smacx { | ||
753 | uint64_t u64; | ||
754 | struct cvmx_agl_gmx_smacx_s { | ||
755 | uint64_t reserved_48_63:16; | ||
756 | uint64_t smac:48; | ||
757 | } s; | ||
758 | struct cvmx_agl_gmx_smacx_s cn52xx; | ||
759 | struct cvmx_agl_gmx_smacx_s cn52xxp1; | ||
760 | struct cvmx_agl_gmx_smacx_s cn56xx; | ||
761 | struct cvmx_agl_gmx_smacx_s cn56xxp1; | ||
762 | }; | ||
763 | |||
764 | union cvmx_agl_gmx_stat_bp { | ||
765 | uint64_t u64; | ||
766 | struct cvmx_agl_gmx_stat_bp_s { | ||
767 | uint64_t reserved_17_63:47; | ||
768 | uint64_t bp:1; | ||
769 | uint64_t cnt:16; | ||
770 | } s; | ||
771 | struct cvmx_agl_gmx_stat_bp_s cn52xx; | ||
772 | struct cvmx_agl_gmx_stat_bp_s cn52xxp1; | ||
773 | struct cvmx_agl_gmx_stat_bp_s cn56xx; | ||
774 | struct cvmx_agl_gmx_stat_bp_s cn56xxp1; | ||
775 | }; | ||
776 | |||
777 | union cvmx_agl_gmx_txx_append { | ||
778 | uint64_t u64; | ||
779 | struct cvmx_agl_gmx_txx_append_s { | ||
780 | uint64_t reserved_4_63:60; | ||
781 | uint64_t force_fcs:1; | ||
782 | uint64_t fcs:1; | ||
783 | uint64_t pad:1; | ||
784 | uint64_t preamble:1; | ||
785 | } s; | ||
786 | struct cvmx_agl_gmx_txx_append_s cn52xx; | ||
787 | struct cvmx_agl_gmx_txx_append_s cn52xxp1; | ||
788 | struct cvmx_agl_gmx_txx_append_s cn56xx; | ||
789 | struct cvmx_agl_gmx_txx_append_s cn56xxp1; | ||
790 | }; | ||
791 | |||
792 | union cvmx_agl_gmx_txx_ctl { | ||
793 | uint64_t u64; | ||
794 | struct cvmx_agl_gmx_txx_ctl_s { | ||
795 | uint64_t reserved_2_63:62; | ||
796 | uint64_t xsdef_en:1; | ||
797 | uint64_t xscol_en:1; | ||
798 | } s; | ||
799 | struct cvmx_agl_gmx_txx_ctl_s cn52xx; | ||
800 | struct cvmx_agl_gmx_txx_ctl_s cn52xxp1; | ||
801 | struct cvmx_agl_gmx_txx_ctl_s cn56xx; | ||
802 | struct cvmx_agl_gmx_txx_ctl_s cn56xxp1; | ||
803 | }; | ||
804 | |||
805 | union cvmx_agl_gmx_txx_min_pkt { | ||
806 | uint64_t u64; | ||
807 | struct cvmx_agl_gmx_txx_min_pkt_s { | ||
808 | uint64_t reserved_8_63:56; | ||
809 | uint64_t min_size:8; | ||
810 | } s; | ||
811 | struct cvmx_agl_gmx_txx_min_pkt_s cn52xx; | ||
812 | struct cvmx_agl_gmx_txx_min_pkt_s cn52xxp1; | ||
813 | struct cvmx_agl_gmx_txx_min_pkt_s cn56xx; | ||
814 | struct cvmx_agl_gmx_txx_min_pkt_s cn56xxp1; | ||
815 | }; | ||
816 | |||
817 | union cvmx_agl_gmx_txx_pause_pkt_interval { | ||
818 | uint64_t u64; | ||
819 | struct cvmx_agl_gmx_txx_pause_pkt_interval_s { | ||
820 | uint64_t reserved_16_63:48; | ||
821 | uint64_t interval:16; | ||
822 | } s; | ||
823 | struct cvmx_agl_gmx_txx_pause_pkt_interval_s cn52xx; | ||
824 | struct cvmx_agl_gmx_txx_pause_pkt_interval_s cn52xxp1; | ||
825 | struct cvmx_agl_gmx_txx_pause_pkt_interval_s cn56xx; | ||
826 | struct cvmx_agl_gmx_txx_pause_pkt_interval_s cn56xxp1; | ||
827 | }; | ||
828 | |||
829 | union cvmx_agl_gmx_txx_pause_pkt_time { | ||
830 | uint64_t u64; | ||
831 | struct cvmx_agl_gmx_txx_pause_pkt_time_s { | ||
832 | uint64_t reserved_16_63:48; | ||
833 | uint64_t time:16; | ||
834 | } s; | ||
835 | struct cvmx_agl_gmx_txx_pause_pkt_time_s cn52xx; | ||
836 | struct cvmx_agl_gmx_txx_pause_pkt_time_s cn52xxp1; | ||
837 | struct cvmx_agl_gmx_txx_pause_pkt_time_s cn56xx; | ||
838 | struct cvmx_agl_gmx_txx_pause_pkt_time_s cn56xxp1; | ||
839 | }; | ||
840 | |||
841 | union cvmx_agl_gmx_txx_pause_togo { | ||
842 | uint64_t u64; | ||
843 | struct cvmx_agl_gmx_txx_pause_togo_s { | ||
844 | uint64_t reserved_16_63:48; | ||
845 | uint64_t time:16; | ||
846 | } s; | ||
847 | struct cvmx_agl_gmx_txx_pause_togo_s cn52xx; | ||
848 | struct cvmx_agl_gmx_txx_pause_togo_s cn52xxp1; | ||
849 | struct cvmx_agl_gmx_txx_pause_togo_s cn56xx; | ||
850 | struct cvmx_agl_gmx_txx_pause_togo_s cn56xxp1; | ||
851 | }; | ||
852 | |||
853 | union cvmx_agl_gmx_txx_pause_zero { | ||
854 | uint64_t u64; | ||
855 | struct cvmx_agl_gmx_txx_pause_zero_s { | ||
856 | uint64_t reserved_1_63:63; | ||
857 | uint64_t send:1; | ||
858 | } s; | ||
859 | struct cvmx_agl_gmx_txx_pause_zero_s cn52xx; | ||
860 | struct cvmx_agl_gmx_txx_pause_zero_s cn52xxp1; | ||
861 | struct cvmx_agl_gmx_txx_pause_zero_s cn56xx; | ||
862 | struct cvmx_agl_gmx_txx_pause_zero_s cn56xxp1; | ||
863 | }; | ||
864 | |||
865 | union cvmx_agl_gmx_txx_soft_pause { | ||
866 | uint64_t u64; | ||
867 | struct cvmx_agl_gmx_txx_soft_pause_s { | ||
868 | uint64_t reserved_16_63:48; | ||
869 | uint64_t time:16; | ||
870 | } s; | ||
871 | struct cvmx_agl_gmx_txx_soft_pause_s cn52xx; | ||
872 | struct cvmx_agl_gmx_txx_soft_pause_s cn52xxp1; | ||
873 | struct cvmx_agl_gmx_txx_soft_pause_s cn56xx; | ||
874 | struct cvmx_agl_gmx_txx_soft_pause_s cn56xxp1; | ||
875 | }; | ||
876 | |||
877 | union cvmx_agl_gmx_txx_stat0 { | ||
878 | uint64_t u64; | ||
879 | struct cvmx_agl_gmx_txx_stat0_s { | ||
880 | uint64_t xsdef:32; | ||
881 | uint64_t xscol:32; | ||
882 | } s; | ||
883 | struct cvmx_agl_gmx_txx_stat0_s cn52xx; | ||
884 | struct cvmx_agl_gmx_txx_stat0_s cn52xxp1; | ||
885 | struct cvmx_agl_gmx_txx_stat0_s cn56xx; | ||
886 | struct cvmx_agl_gmx_txx_stat0_s cn56xxp1; | ||
887 | }; | ||
888 | |||
889 | union cvmx_agl_gmx_txx_stat1 { | ||
890 | uint64_t u64; | ||
891 | struct cvmx_agl_gmx_txx_stat1_s { | ||
892 | uint64_t scol:32; | ||
893 | uint64_t mcol:32; | ||
894 | } s; | ||
895 | struct cvmx_agl_gmx_txx_stat1_s cn52xx; | ||
896 | struct cvmx_agl_gmx_txx_stat1_s cn52xxp1; | ||
897 | struct cvmx_agl_gmx_txx_stat1_s cn56xx; | ||
898 | struct cvmx_agl_gmx_txx_stat1_s cn56xxp1; | ||
899 | }; | ||
900 | |||
901 | union cvmx_agl_gmx_txx_stat2 { | ||
902 | uint64_t u64; | ||
903 | struct cvmx_agl_gmx_txx_stat2_s { | ||
904 | uint64_t reserved_48_63:16; | ||
905 | uint64_t octs:48; | ||
906 | } s; | ||
907 | struct cvmx_agl_gmx_txx_stat2_s cn52xx; | ||
908 | struct cvmx_agl_gmx_txx_stat2_s cn52xxp1; | ||
909 | struct cvmx_agl_gmx_txx_stat2_s cn56xx; | ||
910 | struct cvmx_agl_gmx_txx_stat2_s cn56xxp1; | ||
911 | }; | ||
912 | |||
913 | union cvmx_agl_gmx_txx_stat3 { | ||
914 | uint64_t u64; | ||
915 | struct cvmx_agl_gmx_txx_stat3_s { | ||
916 | uint64_t reserved_32_63:32; | ||
917 | uint64_t pkts:32; | ||
918 | } s; | ||
919 | struct cvmx_agl_gmx_txx_stat3_s cn52xx; | ||
920 | struct cvmx_agl_gmx_txx_stat3_s cn52xxp1; | ||
921 | struct cvmx_agl_gmx_txx_stat3_s cn56xx; | ||
922 | struct cvmx_agl_gmx_txx_stat3_s cn56xxp1; | ||
923 | }; | ||
924 | |||
925 | union cvmx_agl_gmx_txx_stat4 { | ||
926 | uint64_t u64; | ||
927 | struct cvmx_agl_gmx_txx_stat4_s { | ||
928 | uint64_t hist1:32; | ||
929 | uint64_t hist0:32; | ||
930 | } s; | ||
931 | struct cvmx_agl_gmx_txx_stat4_s cn52xx; | ||
932 | struct cvmx_agl_gmx_txx_stat4_s cn52xxp1; | ||
933 | struct cvmx_agl_gmx_txx_stat4_s cn56xx; | ||
934 | struct cvmx_agl_gmx_txx_stat4_s cn56xxp1; | ||
935 | }; | ||
936 | |||
937 | union cvmx_agl_gmx_txx_stat5 { | ||
938 | uint64_t u64; | ||
939 | struct cvmx_agl_gmx_txx_stat5_s { | ||
940 | uint64_t hist3:32; | ||
941 | uint64_t hist2:32; | ||
942 | } s; | ||
943 | struct cvmx_agl_gmx_txx_stat5_s cn52xx; | ||
944 | struct cvmx_agl_gmx_txx_stat5_s cn52xxp1; | ||
945 | struct cvmx_agl_gmx_txx_stat5_s cn56xx; | ||
946 | struct cvmx_agl_gmx_txx_stat5_s cn56xxp1; | ||
947 | }; | ||
948 | |||
949 | union cvmx_agl_gmx_txx_stat6 { | ||
950 | uint64_t u64; | ||
951 | struct cvmx_agl_gmx_txx_stat6_s { | ||
952 | uint64_t hist5:32; | ||
953 | uint64_t hist4:32; | ||
954 | } s; | ||
955 | struct cvmx_agl_gmx_txx_stat6_s cn52xx; | ||
956 | struct cvmx_agl_gmx_txx_stat6_s cn52xxp1; | ||
957 | struct cvmx_agl_gmx_txx_stat6_s cn56xx; | ||
958 | struct cvmx_agl_gmx_txx_stat6_s cn56xxp1; | ||
959 | }; | ||
960 | |||
961 | union cvmx_agl_gmx_txx_stat7 { | ||
962 | uint64_t u64; | ||
963 | struct cvmx_agl_gmx_txx_stat7_s { | ||
964 | uint64_t hist7:32; | ||
965 | uint64_t hist6:32; | ||
966 | } s; | ||
967 | struct cvmx_agl_gmx_txx_stat7_s cn52xx; | ||
968 | struct cvmx_agl_gmx_txx_stat7_s cn52xxp1; | ||
969 | struct cvmx_agl_gmx_txx_stat7_s cn56xx; | ||
970 | struct cvmx_agl_gmx_txx_stat7_s cn56xxp1; | ||
971 | }; | ||
972 | |||
973 | union cvmx_agl_gmx_txx_stat8 { | ||
974 | uint64_t u64; | ||
975 | struct cvmx_agl_gmx_txx_stat8_s { | ||
976 | uint64_t mcst:32; | ||
977 | uint64_t bcst:32; | ||
978 | } s; | ||
979 | struct cvmx_agl_gmx_txx_stat8_s cn52xx; | ||
980 | struct cvmx_agl_gmx_txx_stat8_s cn52xxp1; | ||
981 | struct cvmx_agl_gmx_txx_stat8_s cn56xx; | ||
982 | struct cvmx_agl_gmx_txx_stat8_s cn56xxp1; | ||
983 | }; | ||
984 | |||
985 | union cvmx_agl_gmx_txx_stat9 { | ||
986 | uint64_t u64; | ||
987 | struct cvmx_agl_gmx_txx_stat9_s { | ||
988 | uint64_t undflw:32; | ||
989 | uint64_t ctl:32; | ||
990 | } s; | ||
991 | struct cvmx_agl_gmx_txx_stat9_s cn52xx; | ||
992 | struct cvmx_agl_gmx_txx_stat9_s cn52xxp1; | ||
993 | struct cvmx_agl_gmx_txx_stat9_s cn56xx; | ||
994 | struct cvmx_agl_gmx_txx_stat9_s cn56xxp1; | ||
995 | }; | ||
996 | |||
997 | union cvmx_agl_gmx_txx_stats_ctl { | ||
998 | uint64_t u64; | ||
999 | struct cvmx_agl_gmx_txx_stats_ctl_s { | ||
1000 | uint64_t reserved_1_63:63; | ||
1001 | uint64_t rd_clr:1; | ||
1002 | } s; | ||
1003 | struct cvmx_agl_gmx_txx_stats_ctl_s cn52xx; | ||
1004 | struct cvmx_agl_gmx_txx_stats_ctl_s cn52xxp1; | ||
1005 | struct cvmx_agl_gmx_txx_stats_ctl_s cn56xx; | ||
1006 | struct cvmx_agl_gmx_txx_stats_ctl_s cn56xxp1; | ||
1007 | }; | ||
1008 | |||
1009 | union cvmx_agl_gmx_txx_thresh { | ||
1010 | uint64_t u64; | ||
1011 | struct cvmx_agl_gmx_txx_thresh_s { | ||
1012 | uint64_t reserved_6_63:58; | ||
1013 | uint64_t cnt:6; | ||
1014 | } s; | ||
1015 | struct cvmx_agl_gmx_txx_thresh_s cn52xx; | ||
1016 | struct cvmx_agl_gmx_txx_thresh_s cn52xxp1; | ||
1017 | struct cvmx_agl_gmx_txx_thresh_s cn56xx; | ||
1018 | struct cvmx_agl_gmx_txx_thresh_s cn56xxp1; | ||
1019 | }; | ||
1020 | |||
1021 | union cvmx_agl_gmx_tx_bp { | ||
1022 | uint64_t u64; | ||
1023 | struct cvmx_agl_gmx_tx_bp_s { | ||
1024 | uint64_t reserved_2_63:62; | ||
1025 | uint64_t bp:2; | ||
1026 | } s; | ||
1027 | struct cvmx_agl_gmx_tx_bp_s cn52xx; | ||
1028 | struct cvmx_agl_gmx_tx_bp_s cn52xxp1; | ||
1029 | struct cvmx_agl_gmx_tx_bp_cn56xx { | ||
1030 | uint64_t reserved_1_63:63; | ||
1031 | uint64_t bp:1; | ||
1032 | } cn56xx; | ||
1033 | struct cvmx_agl_gmx_tx_bp_cn56xx cn56xxp1; | ||
1034 | }; | ||
1035 | |||
1036 | union cvmx_agl_gmx_tx_col_attempt { | ||
1037 | uint64_t u64; | ||
1038 | struct cvmx_agl_gmx_tx_col_attempt_s { | ||
1039 | uint64_t reserved_5_63:59; | ||
1040 | uint64_t limit:5; | ||
1041 | } s; | ||
1042 | struct cvmx_agl_gmx_tx_col_attempt_s cn52xx; | ||
1043 | struct cvmx_agl_gmx_tx_col_attempt_s cn52xxp1; | ||
1044 | struct cvmx_agl_gmx_tx_col_attempt_s cn56xx; | ||
1045 | struct cvmx_agl_gmx_tx_col_attempt_s cn56xxp1; | ||
1046 | }; | ||
1047 | |||
1048 | union cvmx_agl_gmx_tx_ifg { | ||
1049 | uint64_t u64; | ||
1050 | struct cvmx_agl_gmx_tx_ifg_s { | ||
1051 | uint64_t reserved_8_63:56; | ||
1052 | uint64_t ifg2:4; | ||
1053 | uint64_t ifg1:4; | ||
1054 | } s; | ||
1055 | struct cvmx_agl_gmx_tx_ifg_s cn52xx; | ||
1056 | struct cvmx_agl_gmx_tx_ifg_s cn52xxp1; | ||
1057 | struct cvmx_agl_gmx_tx_ifg_s cn56xx; | ||
1058 | struct cvmx_agl_gmx_tx_ifg_s cn56xxp1; | ||
1059 | }; | ||
1060 | |||
1061 | union cvmx_agl_gmx_tx_int_en { | ||
1062 | uint64_t u64; | ||
1063 | struct cvmx_agl_gmx_tx_int_en_s { | ||
1064 | uint64_t reserved_18_63:46; | ||
1065 | uint64_t late_col:2; | ||
1066 | uint64_t reserved_14_15:2; | ||
1067 | uint64_t xsdef:2; | ||
1068 | uint64_t reserved_10_11:2; | ||
1069 | uint64_t xscol:2; | ||
1070 | uint64_t reserved_4_7:4; | ||
1071 | uint64_t undflw:2; | ||
1072 | uint64_t reserved_1_1:1; | ||
1073 | uint64_t pko_nxa:1; | ||
1074 | } s; | ||
1075 | struct cvmx_agl_gmx_tx_int_en_s cn52xx; | ||
1076 | struct cvmx_agl_gmx_tx_int_en_s cn52xxp1; | ||
1077 | struct cvmx_agl_gmx_tx_int_en_cn56xx { | ||
1078 | uint64_t reserved_17_63:47; | ||
1079 | uint64_t late_col:1; | ||
1080 | uint64_t reserved_13_15:3; | ||
1081 | uint64_t xsdef:1; | ||
1082 | uint64_t reserved_9_11:3; | ||
1083 | uint64_t xscol:1; | ||
1084 | uint64_t reserved_3_7:5; | ||
1085 | uint64_t undflw:1; | ||
1086 | uint64_t reserved_1_1:1; | ||
1087 | uint64_t pko_nxa:1; | ||
1088 | } cn56xx; | ||
1089 | struct cvmx_agl_gmx_tx_int_en_cn56xx cn56xxp1; | ||
1090 | }; | ||
1091 | |||
1092 | union cvmx_agl_gmx_tx_int_reg { | ||
1093 | uint64_t u64; | ||
1094 | struct cvmx_agl_gmx_tx_int_reg_s { | ||
1095 | uint64_t reserved_18_63:46; | ||
1096 | uint64_t late_col:2; | ||
1097 | uint64_t reserved_14_15:2; | ||
1098 | uint64_t xsdef:2; | ||
1099 | uint64_t reserved_10_11:2; | ||
1100 | uint64_t xscol:2; | ||
1101 | uint64_t reserved_4_7:4; | ||
1102 | uint64_t undflw:2; | ||
1103 | uint64_t reserved_1_1:1; | ||
1104 | uint64_t pko_nxa:1; | ||
1105 | } s; | ||
1106 | struct cvmx_agl_gmx_tx_int_reg_s cn52xx; | ||
1107 | struct cvmx_agl_gmx_tx_int_reg_s cn52xxp1; | ||
1108 | struct cvmx_agl_gmx_tx_int_reg_cn56xx { | ||
1109 | uint64_t reserved_17_63:47; | ||
1110 | uint64_t late_col:1; | ||
1111 | uint64_t reserved_13_15:3; | ||
1112 | uint64_t xsdef:1; | ||
1113 | uint64_t reserved_9_11:3; | ||
1114 | uint64_t xscol:1; | ||
1115 | uint64_t reserved_3_7:5; | ||
1116 | uint64_t undflw:1; | ||
1117 | uint64_t reserved_1_1:1; | ||
1118 | uint64_t pko_nxa:1; | ||
1119 | } cn56xx; | ||
1120 | struct cvmx_agl_gmx_tx_int_reg_cn56xx cn56xxp1; | ||
1121 | }; | ||
1122 | |||
1123 | union cvmx_agl_gmx_tx_jam { | ||
1124 | uint64_t u64; | ||
1125 | struct cvmx_agl_gmx_tx_jam_s { | ||
1126 | uint64_t reserved_8_63:56; | ||
1127 | uint64_t jam:8; | ||
1128 | } s; | ||
1129 | struct cvmx_agl_gmx_tx_jam_s cn52xx; | ||
1130 | struct cvmx_agl_gmx_tx_jam_s cn52xxp1; | ||
1131 | struct cvmx_agl_gmx_tx_jam_s cn56xx; | ||
1132 | struct cvmx_agl_gmx_tx_jam_s cn56xxp1; | ||
1133 | }; | ||
1134 | |||
1135 | union cvmx_agl_gmx_tx_lfsr { | ||
1136 | uint64_t u64; | ||
1137 | struct cvmx_agl_gmx_tx_lfsr_s { | ||
1138 | uint64_t reserved_16_63:48; | ||
1139 | uint64_t lfsr:16; | ||
1140 | } s; | ||
1141 | struct cvmx_agl_gmx_tx_lfsr_s cn52xx; | ||
1142 | struct cvmx_agl_gmx_tx_lfsr_s cn52xxp1; | ||
1143 | struct cvmx_agl_gmx_tx_lfsr_s cn56xx; | ||
1144 | struct cvmx_agl_gmx_tx_lfsr_s cn56xxp1; | ||
1145 | }; | ||
1146 | |||
1147 | union cvmx_agl_gmx_tx_ovr_bp { | ||
1148 | uint64_t u64; | ||
1149 | struct cvmx_agl_gmx_tx_ovr_bp_s { | ||
1150 | uint64_t reserved_10_63:54; | ||
1151 | uint64_t en:2; | ||
1152 | uint64_t reserved_6_7:2; | ||
1153 | uint64_t bp:2; | ||
1154 | uint64_t reserved_2_3:2; | ||
1155 | uint64_t ign_full:2; | ||
1156 | } s; | ||
1157 | struct cvmx_agl_gmx_tx_ovr_bp_s cn52xx; | ||
1158 | struct cvmx_agl_gmx_tx_ovr_bp_s cn52xxp1; | ||
1159 | struct cvmx_agl_gmx_tx_ovr_bp_cn56xx { | ||
1160 | uint64_t reserved_9_63:55; | ||
1161 | uint64_t en:1; | ||
1162 | uint64_t reserved_5_7:3; | ||
1163 | uint64_t bp:1; | ||
1164 | uint64_t reserved_1_3:3; | ||
1165 | uint64_t ign_full:1; | ||
1166 | } cn56xx; | ||
1167 | struct cvmx_agl_gmx_tx_ovr_bp_cn56xx cn56xxp1; | ||
1168 | }; | ||
1169 | |||
1170 | union cvmx_agl_gmx_tx_pause_pkt_dmac { | ||
1171 | uint64_t u64; | ||
1172 | struct cvmx_agl_gmx_tx_pause_pkt_dmac_s { | ||
1173 | uint64_t reserved_48_63:16; | ||
1174 | uint64_t dmac:48; | ||
1175 | } s; | ||
1176 | struct cvmx_agl_gmx_tx_pause_pkt_dmac_s cn52xx; | ||
1177 | struct cvmx_agl_gmx_tx_pause_pkt_dmac_s cn52xxp1; | ||
1178 | struct cvmx_agl_gmx_tx_pause_pkt_dmac_s cn56xx; | ||
1179 | struct cvmx_agl_gmx_tx_pause_pkt_dmac_s cn56xxp1; | ||
1180 | }; | ||
1181 | |||
1182 | union cvmx_agl_gmx_tx_pause_pkt_type { | ||
1183 | uint64_t u64; | ||
1184 | struct cvmx_agl_gmx_tx_pause_pkt_type_s { | ||
1185 | uint64_t reserved_16_63:48; | ||
1186 | uint64_t type:16; | ||
1187 | } s; | ||
1188 | struct cvmx_agl_gmx_tx_pause_pkt_type_s cn52xx; | ||
1189 | struct cvmx_agl_gmx_tx_pause_pkt_type_s cn52xxp1; | ||
1190 | struct cvmx_agl_gmx_tx_pause_pkt_type_s cn56xx; | ||
1191 | struct cvmx_agl_gmx_tx_pause_pkt_type_s cn56xxp1; | ||
1192 | }; | ||
1193 | |||
1194 | #endif | ||
diff --git a/arch/mips/include/asm/octeon/cvmx-mixx-defs.h b/arch/mips/include/asm/octeon/cvmx-mixx-defs.h new file mode 100644 index 000000000000..dab6dca492f9 --- /dev/null +++ b/arch/mips/include/asm/octeon/cvmx-mixx-defs.h | |||
@@ -0,0 +1,248 @@ | |||
1 | /***********************license start*************** | ||
2 | * Author: Cavium Networks | ||
3 | * | ||
4 | * Contact: support@caviumnetworks.com | ||
5 | * This file is part of the OCTEON SDK | ||
6 | * | ||
7 | * Copyright (c) 2003-2008 Cavium Networks | ||
8 | * | ||
9 | * This file is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License, Version 2, as | ||
11 | * published by the Free Software Foundation. | ||
12 | * | ||
13 | * This file is distributed in the hope that it will be useful, but | ||
14 | * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty | ||
15 | * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or | ||
16 | * NONINFRINGEMENT. See the GNU General Public License for more | ||
17 | * details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public License | ||
20 | * along with this file; if not, write to the Free Software | ||
21 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | * or visit http://www.gnu.org/licenses/. | ||
23 | * | ||
24 | * This file may also be available under a different license from Cavium. | ||
25 | * Contact Cavium Networks for more information | ||
26 | ***********************license end**************************************/ | ||
27 | |||
28 | #ifndef __CVMX_MIXX_DEFS_H__ | ||
29 | #define __CVMX_MIXX_DEFS_H__ | ||
30 | |||
31 | #define CVMX_MIXX_BIST(offset) \ | ||
32 | CVMX_ADD_IO_SEG(0x0001070000100078ull + (((offset) & 1) * 2048)) | ||
33 | #define CVMX_MIXX_CTL(offset) \ | ||
34 | CVMX_ADD_IO_SEG(0x0001070000100020ull + (((offset) & 1) * 2048)) | ||
35 | #define CVMX_MIXX_INTENA(offset) \ | ||
36 | CVMX_ADD_IO_SEG(0x0001070000100050ull + (((offset) & 1) * 2048)) | ||
37 | #define CVMX_MIXX_IRCNT(offset) \ | ||
38 | CVMX_ADD_IO_SEG(0x0001070000100030ull + (((offset) & 1) * 2048)) | ||
39 | #define CVMX_MIXX_IRHWM(offset) \ | ||
40 | CVMX_ADD_IO_SEG(0x0001070000100028ull + (((offset) & 1) * 2048)) | ||
41 | #define CVMX_MIXX_IRING1(offset) \ | ||
42 | CVMX_ADD_IO_SEG(0x0001070000100010ull + (((offset) & 1) * 2048)) | ||
43 | #define CVMX_MIXX_IRING2(offset) \ | ||
44 | CVMX_ADD_IO_SEG(0x0001070000100018ull + (((offset) & 1) * 2048)) | ||
45 | #define CVMX_MIXX_ISR(offset) \ | ||
46 | CVMX_ADD_IO_SEG(0x0001070000100048ull + (((offset) & 1) * 2048)) | ||
47 | #define CVMX_MIXX_ORCNT(offset) \ | ||
48 | CVMX_ADD_IO_SEG(0x0001070000100040ull + (((offset) & 1) * 2048)) | ||
49 | #define CVMX_MIXX_ORHWM(offset) \ | ||
50 | CVMX_ADD_IO_SEG(0x0001070000100038ull + (((offset) & 1) * 2048)) | ||
51 | #define CVMX_MIXX_ORING1(offset) \ | ||
52 | CVMX_ADD_IO_SEG(0x0001070000100000ull + (((offset) & 1) * 2048)) | ||
53 | #define CVMX_MIXX_ORING2(offset) \ | ||
54 | CVMX_ADD_IO_SEG(0x0001070000100008ull + (((offset) & 1) * 2048)) | ||
55 | #define CVMX_MIXX_REMCNT(offset) \ | ||
56 | CVMX_ADD_IO_SEG(0x0001070000100058ull + (((offset) & 1) * 2048)) | ||
57 | |||
58 | union cvmx_mixx_bist { | ||
59 | uint64_t u64; | ||
60 | struct cvmx_mixx_bist_s { | ||
61 | uint64_t reserved_4_63:60; | ||
62 | uint64_t mrqdat:1; | ||
63 | uint64_t ipfdat:1; | ||
64 | uint64_t irfdat:1; | ||
65 | uint64_t orfdat:1; | ||
66 | } s; | ||
67 | struct cvmx_mixx_bist_s cn52xx; | ||
68 | struct cvmx_mixx_bist_s cn52xxp1; | ||
69 | struct cvmx_mixx_bist_s cn56xx; | ||
70 | struct cvmx_mixx_bist_s cn56xxp1; | ||
71 | }; | ||
72 | |||
73 | union cvmx_mixx_ctl { | ||
74 | uint64_t u64; | ||
75 | struct cvmx_mixx_ctl_s { | ||
76 | uint64_t reserved_8_63:56; | ||
77 | uint64_t crc_strip:1; | ||
78 | uint64_t busy:1; | ||
79 | uint64_t en:1; | ||
80 | uint64_t reset:1; | ||
81 | uint64_t lendian:1; | ||
82 | uint64_t nbtarb:1; | ||
83 | uint64_t mrq_hwm:2; | ||
84 | } s; | ||
85 | struct cvmx_mixx_ctl_s cn52xx; | ||
86 | struct cvmx_mixx_ctl_s cn52xxp1; | ||
87 | struct cvmx_mixx_ctl_s cn56xx; | ||
88 | struct cvmx_mixx_ctl_s cn56xxp1; | ||
89 | }; | ||
90 | |||
91 | union cvmx_mixx_intena { | ||
92 | uint64_t u64; | ||
93 | struct cvmx_mixx_intena_s { | ||
94 | uint64_t reserved_7_63:57; | ||
95 | uint64_t orunena:1; | ||
96 | uint64_t irunena:1; | ||
97 | uint64_t data_drpena:1; | ||
98 | uint64_t ithena:1; | ||
99 | uint64_t othena:1; | ||
100 | uint64_t ivfena:1; | ||
101 | uint64_t ovfena:1; | ||
102 | } s; | ||
103 | struct cvmx_mixx_intena_s cn52xx; | ||
104 | struct cvmx_mixx_intena_s cn52xxp1; | ||
105 | struct cvmx_mixx_intena_s cn56xx; | ||
106 | struct cvmx_mixx_intena_s cn56xxp1; | ||
107 | }; | ||
108 | |||
109 | union cvmx_mixx_ircnt { | ||
110 | uint64_t u64; | ||
111 | struct cvmx_mixx_ircnt_s { | ||
112 | uint64_t reserved_20_63:44; | ||
113 | uint64_t ircnt:20; | ||
114 | } s; | ||
115 | struct cvmx_mixx_ircnt_s cn52xx; | ||
116 | struct cvmx_mixx_ircnt_s cn52xxp1; | ||
117 | struct cvmx_mixx_ircnt_s cn56xx; | ||
118 | struct cvmx_mixx_ircnt_s cn56xxp1; | ||
119 | }; | ||
120 | |||
121 | union cvmx_mixx_irhwm { | ||
122 | uint64_t u64; | ||
123 | struct cvmx_mixx_irhwm_s { | ||
124 | uint64_t reserved_40_63:24; | ||
125 | uint64_t ibplwm:20; | ||
126 | uint64_t irhwm:20; | ||
127 | } s; | ||
128 | struct cvmx_mixx_irhwm_s cn52xx; | ||
129 | struct cvmx_mixx_irhwm_s cn52xxp1; | ||
130 | struct cvmx_mixx_irhwm_s cn56xx; | ||
131 | struct cvmx_mixx_irhwm_s cn56xxp1; | ||
132 | }; | ||
133 | |||
134 | union cvmx_mixx_iring1 { | ||
135 | uint64_t u64; | ||
136 | struct cvmx_mixx_iring1_s { | ||
137 | uint64_t reserved_60_63:4; | ||
138 | uint64_t isize:20; | ||
139 | uint64_t reserved_36_39:4; | ||
140 | uint64_t ibase:33; | ||
141 | uint64_t reserved_0_2:3; | ||
142 | } s; | ||
143 | struct cvmx_mixx_iring1_s cn52xx; | ||
144 | struct cvmx_mixx_iring1_s cn52xxp1; | ||
145 | struct cvmx_mixx_iring1_s cn56xx; | ||
146 | struct cvmx_mixx_iring1_s cn56xxp1; | ||
147 | }; | ||
148 | |||
149 | union cvmx_mixx_iring2 { | ||
150 | uint64_t u64; | ||
151 | struct cvmx_mixx_iring2_s { | ||
152 | uint64_t reserved_52_63:12; | ||
153 | uint64_t itlptr:20; | ||
154 | uint64_t reserved_20_31:12; | ||
155 | uint64_t idbell:20; | ||
156 | } s; | ||
157 | struct cvmx_mixx_iring2_s cn52xx; | ||
158 | struct cvmx_mixx_iring2_s cn52xxp1; | ||
159 | struct cvmx_mixx_iring2_s cn56xx; | ||
160 | struct cvmx_mixx_iring2_s cn56xxp1; | ||
161 | }; | ||
162 | |||
163 | union cvmx_mixx_isr { | ||
164 | uint64_t u64; | ||
165 | struct cvmx_mixx_isr_s { | ||
166 | uint64_t reserved_7_63:57; | ||
167 | uint64_t orun:1; | ||
168 | uint64_t irun:1; | ||
169 | uint64_t data_drp:1; | ||
170 | uint64_t irthresh:1; | ||
171 | uint64_t orthresh:1; | ||
172 | uint64_t idblovf:1; | ||
173 | uint64_t odblovf:1; | ||
174 | } s; | ||
175 | struct cvmx_mixx_isr_s cn52xx; | ||
176 | struct cvmx_mixx_isr_s cn52xxp1; | ||
177 | struct cvmx_mixx_isr_s cn56xx; | ||
178 | struct cvmx_mixx_isr_s cn56xxp1; | ||
179 | }; | ||
180 | |||
181 | union cvmx_mixx_orcnt { | ||
182 | uint64_t u64; | ||
183 | struct cvmx_mixx_orcnt_s { | ||
184 | uint64_t reserved_20_63:44; | ||
185 | uint64_t orcnt:20; | ||
186 | } s; | ||
187 | struct cvmx_mixx_orcnt_s cn52xx; | ||
188 | struct cvmx_mixx_orcnt_s cn52xxp1; | ||
189 | struct cvmx_mixx_orcnt_s cn56xx; | ||
190 | struct cvmx_mixx_orcnt_s cn56xxp1; | ||
191 | }; | ||
192 | |||
193 | union cvmx_mixx_orhwm { | ||
194 | uint64_t u64; | ||
195 | struct cvmx_mixx_orhwm_s { | ||
196 | uint64_t reserved_20_63:44; | ||
197 | uint64_t orhwm:20; | ||
198 | } s; | ||
199 | struct cvmx_mixx_orhwm_s cn52xx; | ||
200 | struct cvmx_mixx_orhwm_s cn52xxp1; | ||
201 | struct cvmx_mixx_orhwm_s cn56xx; | ||
202 | struct cvmx_mixx_orhwm_s cn56xxp1; | ||
203 | }; | ||
204 | |||
205 | union cvmx_mixx_oring1 { | ||
206 | uint64_t u64; | ||
207 | struct cvmx_mixx_oring1_s { | ||
208 | uint64_t reserved_60_63:4; | ||
209 | uint64_t osize:20; | ||
210 | uint64_t reserved_36_39:4; | ||
211 | uint64_t obase:33; | ||
212 | uint64_t reserved_0_2:3; | ||
213 | } s; | ||
214 | struct cvmx_mixx_oring1_s cn52xx; | ||
215 | struct cvmx_mixx_oring1_s cn52xxp1; | ||
216 | struct cvmx_mixx_oring1_s cn56xx; | ||
217 | struct cvmx_mixx_oring1_s cn56xxp1; | ||
218 | }; | ||
219 | |||
220 | union cvmx_mixx_oring2 { | ||
221 | uint64_t u64; | ||
222 | struct cvmx_mixx_oring2_s { | ||
223 | uint64_t reserved_52_63:12; | ||
224 | uint64_t otlptr:20; | ||
225 | uint64_t reserved_20_31:12; | ||
226 | uint64_t odbell:20; | ||
227 | } s; | ||
228 | struct cvmx_mixx_oring2_s cn52xx; | ||
229 | struct cvmx_mixx_oring2_s cn52xxp1; | ||
230 | struct cvmx_mixx_oring2_s cn56xx; | ||
231 | struct cvmx_mixx_oring2_s cn56xxp1; | ||
232 | }; | ||
233 | |||
234 | union cvmx_mixx_remcnt { | ||
235 | uint64_t u64; | ||
236 | struct cvmx_mixx_remcnt_s { | ||
237 | uint64_t reserved_52_63:12; | ||
238 | uint64_t iremcnt:20; | ||
239 | uint64_t reserved_20_31:12; | ||
240 | uint64_t oremcnt:20; | ||
241 | } s; | ||
242 | struct cvmx_mixx_remcnt_s cn52xx; | ||
243 | struct cvmx_mixx_remcnt_s cn52xxp1; | ||
244 | struct cvmx_mixx_remcnt_s cn56xx; | ||
245 | struct cvmx_mixx_remcnt_s cn56xxp1; | ||
246 | }; | ||
247 | |||
248 | #endif | ||
diff --git a/arch/mips/include/asm/octeon/cvmx-smix-defs.h b/arch/mips/include/asm/octeon/cvmx-smix-defs.h new file mode 100644 index 000000000000..9ae45fcbe3e3 --- /dev/null +++ b/arch/mips/include/asm/octeon/cvmx-smix-defs.h | |||
@@ -0,0 +1,178 @@ | |||
1 | /***********************license start*************** | ||
2 | * Author: Cavium Networks | ||
3 | * | ||
4 | * Contact: support@caviumnetworks.com | ||
5 | * This file is part of the OCTEON SDK | ||
6 | * | ||
7 | * Copyright (c) 2003-2008 Cavium Networks | ||
8 | * | ||
9 | * This file is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License, Version 2, as | ||
11 | * published by the Free Software Foundation. | ||
12 | * | ||
13 | * This file is distributed in the hope that it will be useful, but | ||
14 | * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty | ||
15 | * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or | ||
16 | * NONINFRINGEMENT. See the GNU General Public License for more | ||
17 | * details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public License | ||
20 | * along with this file; if not, write to the Free Software | ||
21 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | * or visit http://www.gnu.org/licenses/. | ||
23 | * | ||
24 | * This file may also be available under a different license from Cavium. | ||
25 | * Contact Cavium Networks for more information | ||
26 | ***********************license end**************************************/ | ||
27 | |||
28 | #ifndef __CVMX_SMIX_DEFS_H__ | ||
29 | #define __CVMX_SMIX_DEFS_H__ | ||
30 | |||
31 | #define CVMX_SMIX_CLK(offset) \ | ||
32 | CVMX_ADD_IO_SEG(0x0001180000001818ull + (((offset) & 1) * 256)) | ||
33 | #define CVMX_SMIX_CMD(offset) \ | ||
34 | CVMX_ADD_IO_SEG(0x0001180000001800ull + (((offset) & 1) * 256)) | ||
35 | #define CVMX_SMIX_EN(offset) \ | ||
36 | CVMX_ADD_IO_SEG(0x0001180000001820ull + (((offset) & 1) * 256)) | ||
37 | #define CVMX_SMIX_RD_DAT(offset) \ | ||
38 | CVMX_ADD_IO_SEG(0x0001180000001810ull + (((offset) & 1) * 256)) | ||
39 | #define CVMX_SMIX_WR_DAT(offset) \ | ||
40 | CVMX_ADD_IO_SEG(0x0001180000001808ull + (((offset) & 1) * 256)) | ||
41 | |||
42 | union cvmx_smix_clk { | ||
43 | uint64_t u64; | ||
44 | struct cvmx_smix_clk_s { | ||
45 | uint64_t reserved_25_63:39; | ||
46 | uint64_t mode:1; | ||
47 | uint64_t reserved_21_23:3; | ||
48 | uint64_t sample_hi:5; | ||
49 | uint64_t sample_mode:1; | ||
50 | uint64_t reserved_14_14:1; | ||
51 | uint64_t clk_idle:1; | ||
52 | uint64_t preamble:1; | ||
53 | uint64_t sample:4; | ||
54 | uint64_t phase:8; | ||
55 | } s; | ||
56 | struct cvmx_smix_clk_cn30xx { | ||
57 | uint64_t reserved_21_63:43; | ||
58 | uint64_t sample_hi:5; | ||
59 | uint64_t reserved_14_15:2; | ||
60 | uint64_t clk_idle:1; | ||
61 | uint64_t preamble:1; | ||
62 | uint64_t sample:4; | ||
63 | uint64_t phase:8; | ||
64 | } cn30xx; | ||
65 | struct cvmx_smix_clk_cn30xx cn31xx; | ||
66 | struct cvmx_smix_clk_cn30xx cn38xx; | ||
67 | struct cvmx_smix_clk_cn30xx cn38xxp2; | ||
68 | struct cvmx_smix_clk_cn50xx { | ||
69 | uint64_t reserved_25_63:39; | ||
70 | uint64_t mode:1; | ||
71 | uint64_t reserved_21_23:3; | ||
72 | uint64_t sample_hi:5; | ||
73 | uint64_t reserved_14_15:2; | ||
74 | uint64_t clk_idle:1; | ||
75 | uint64_t preamble:1; | ||
76 | uint64_t sample:4; | ||
77 | uint64_t phase:8; | ||
78 | } cn50xx; | ||
79 | struct cvmx_smix_clk_s cn52xx; | ||
80 | struct cvmx_smix_clk_cn50xx cn52xxp1; | ||
81 | struct cvmx_smix_clk_s cn56xx; | ||
82 | struct cvmx_smix_clk_cn50xx cn56xxp1; | ||
83 | struct cvmx_smix_clk_cn30xx cn58xx; | ||
84 | struct cvmx_smix_clk_cn30xx cn58xxp1; | ||
85 | }; | ||
86 | |||
87 | union cvmx_smix_cmd { | ||
88 | uint64_t u64; | ||
89 | struct cvmx_smix_cmd_s { | ||
90 | uint64_t reserved_18_63:46; | ||
91 | uint64_t phy_op:2; | ||
92 | uint64_t reserved_13_15:3; | ||
93 | uint64_t phy_adr:5; | ||
94 | uint64_t reserved_5_7:3; | ||
95 | uint64_t reg_adr:5; | ||
96 | } s; | ||
97 | struct cvmx_smix_cmd_cn30xx { | ||
98 | uint64_t reserved_17_63:47; | ||
99 | uint64_t phy_op:1; | ||
100 | uint64_t reserved_13_15:3; | ||
101 | uint64_t phy_adr:5; | ||
102 | uint64_t reserved_5_7:3; | ||
103 | uint64_t reg_adr:5; | ||
104 | } cn30xx; | ||
105 | struct cvmx_smix_cmd_cn30xx cn31xx; | ||
106 | struct cvmx_smix_cmd_cn30xx cn38xx; | ||
107 | struct cvmx_smix_cmd_cn30xx cn38xxp2; | ||
108 | struct cvmx_smix_cmd_s cn50xx; | ||
109 | struct cvmx_smix_cmd_s cn52xx; | ||
110 | struct cvmx_smix_cmd_s cn52xxp1; | ||
111 | struct cvmx_smix_cmd_s cn56xx; | ||
112 | struct cvmx_smix_cmd_s cn56xxp1; | ||
113 | struct cvmx_smix_cmd_cn30xx cn58xx; | ||
114 | struct cvmx_smix_cmd_cn30xx cn58xxp1; | ||
115 | }; | ||
116 | |||
117 | union cvmx_smix_en { | ||
118 | uint64_t u64; | ||
119 | struct cvmx_smix_en_s { | ||
120 | uint64_t reserved_1_63:63; | ||
121 | uint64_t en:1; | ||
122 | } s; | ||
123 | struct cvmx_smix_en_s cn30xx; | ||
124 | struct cvmx_smix_en_s cn31xx; | ||
125 | struct cvmx_smix_en_s cn38xx; | ||
126 | struct cvmx_smix_en_s cn38xxp2; | ||
127 | struct cvmx_smix_en_s cn50xx; | ||
128 | struct cvmx_smix_en_s cn52xx; | ||
129 | struct cvmx_smix_en_s cn52xxp1; | ||
130 | struct cvmx_smix_en_s cn56xx; | ||
131 | struct cvmx_smix_en_s cn56xxp1; | ||
132 | struct cvmx_smix_en_s cn58xx; | ||
133 | struct cvmx_smix_en_s cn58xxp1; | ||
134 | }; | ||
135 | |||
136 | union cvmx_smix_rd_dat { | ||
137 | uint64_t u64; | ||
138 | struct cvmx_smix_rd_dat_s { | ||
139 | uint64_t reserved_18_63:46; | ||
140 | uint64_t pending:1; | ||
141 | uint64_t val:1; | ||
142 | uint64_t dat:16; | ||
143 | } s; | ||
144 | struct cvmx_smix_rd_dat_s cn30xx; | ||
145 | struct cvmx_smix_rd_dat_s cn31xx; | ||
146 | struct cvmx_smix_rd_dat_s cn38xx; | ||
147 | struct cvmx_smix_rd_dat_s cn38xxp2; | ||
148 | struct cvmx_smix_rd_dat_s cn50xx; | ||
149 | struct cvmx_smix_rd_dat_s cn52xx; | ||
150 | struct cvmx_smix_rd_dat_s cn52xxp1; | ||
151 | struct cvmx_smix_rd_dat_s cn56xx; | ||
152 | struct cvmx_smix_rd_dat_s cn56xxp1; | ||
153 | struct cvmx_smix_rd_dat_s cn58xx; | ||
154 | struct cvmx_smix_rd_dat_s cn58xxp1; | ||
155 | }; | ||
156 | |||
157 | union cvmx_smix_wr_dat { | ||
158 | uint64_t u64; | ||
159 | struct cvmx_smix_wr_dat_s { | ||
160 | uint64_t reserved_18_63:46; | ||
161 | uint64_t pending:1; | ||
162 | uint64_t val:1; | ||
163 | uint64_t dat:16; | ||
164 | } s; | ||
165 | struct cvmx_smix_wr_dat_s cn30xx; | ||
166 | struct cvmx_smix_wr_dat_s cn31xx; | ||
167 | struct cvmx_smix_wr_dat_s cn38xx; | ||
168 | struct cvmx_smix_wr_dat_s cn38xxp2; | ||
169 | struct cvmx_smix_wr_dat_s cn50xx; | ||
170 | struct cvmx_smix_wr_dat_s cn52xx; | ||
171 | struct cvmx_smix_wr_dat_s cn52xxp1; | ||
172 | struct cvmx_smix_wr_dat_s cn56xx; | ||
173 | struct cvmx_smix_wr_dat_s cn56xxp1; | ||
174 | struct cvmx_smix_wr_dat_s cn58xx; | ||
175 | struct cvmx_smix_wr_dat_s cn58xxp1; | ||
176 | }; | ||
177 | |||
178 | #endif | ||
diff --git a/arch/mips/include/asm/octeon/octeon-feature.h b/arch/mips/include/asm/octeon/octeon-feature.h index ef24a7b4ea57..cba6fbed9f43 100644 --- a/arch/mips/include/asm/octeon/octeon-feature.h +++ b/arch/mips/include/asm/octeon/octeon-feature.h | |||
@@ -99,6 +99,8 @@ static inline int octeon_has_feature(enum octeon_feature feature) | |||
99 | return !cvmx_fuse_read(90); | 99 | return !cvmx_fuse_read(90); |
100 | 100 | ||
101 | case OCTEON_FEATURE_PCIE: | 101 | case OCTEON_FEATURE_PCIE: |
102 | case OCTEON_FEATURE_MGMT_PORT: | ||
103 | case OCTEON_FEATURE_RAID: | ||
102 | return OCTEON_IS_MODEL(OCTEON_CN56XX) | 104 | return OCTEON_IS_MODEL(OCTEON_CN56XX) |
103 | || OCTEON_IS_MODEL(OCTEON_CN52XX); | 105 | || OCTEON_IS_MODEL(OCTEON_CN52XX); |
104 | 106 | ||
@@ -110,12 +112,6 @@ static inline int octeon_has_feature(enum octeon_feature feature) | |||
110 | case OCTEON_FEATURE_TRA: | 112 | case OCTEON_FEATURE_TRA: |
111 | return !(OCTEON_IS_MODEL(OCTEON_CN30XX) | 113 | return !(OCTEON_IS_MODEL(OCTEON_CN30XX) |
112 | || OCTEON_IS_MODEL(OCTEON_CN50XX)); | 114 | || OCTEON_IS_MODEL(OCTEON_CN50XX)); |
113 | case OCTEON_FEATURE_MGMT_PORT: | ||
114 | return OCTEON_IS_MODEL(OCTEON_CN56XX) | ||
115 | || OCTEON_IS_MODEL(OCTEON_CN52XX); | ||
116 | case OCTEON_FEATURE_RAID: | ||
117 | return OCTEON_IS_MODEL(OCTEON_CN56XX) | ||
118 | || OCTEON_IS_MODEL(OCTEON_CN52XX); | ||
119 | case OCTEON_FEATURE_USB: | 115 | case OCTEON_FEATURE_USB: |
120 | return !(OCTEON_IS_MODEL(OCTEON_CN38XX) | 116 | return !(OCTEON_IS_MODEL(OCTEON_CN38XX) |
121 | || OCTEON_IS_MODEL(OCTEON_CN58XX)); | 117 | || OCTEON_IS_MODEL(OCTEON_CN58XX)); |
diff --git a/arch/mips/include/asm/octeon/octeon.h b/arch/mips/include/asm/octeon/octeon.h index cac9b1a206fc..ca6214b5ccb9 100644 --- a/arch/mips/include/asm/octeon/octeon.h +++ b/arch/mips/include/asm/octeon/octeon.h | |||
@@ -47,6 +47,7 @@ struct octeon_cop2_state; | |||
47 | extern unsigned long octeon_crypto_enable(struct octeon_cop2_state *state); | 47 | extern unsigned long octeon_crypto_enable(struct octeon_cop2_state *state); |
48 | extern void octeon_crypto_disable(struct octeon_cop2_state *state, | 48 | extern void octeon_crypto_disable(struct octeon_cop2_state *state, |
49 | unsigned long flags); | 49 | unsigned long flags); |
50 | extern asmlinkage void octeon_cop2_restore(struct octeon_cop2_state *task); | ||
50 | 51 | ||
51 | extern void octeon_init_cvmcount(void); | 52 | extern void octeon_init_cvmcount(void); |
52 | 53 | ||
@@ -212,6 +213,11 @@ struct octeon_cf_data { | |||
212 | int dma_engine; /* -1 for no DMA */ | 213 | int dma_engine; /* -1 for no DMA */ |
213 | }; | 214 | }; |
214 | 215 | ||
216 | struct octeon_i2c_data { | ||
217 | unsigned int sys_freq; | ||
218 | unsigned int i2c_freq; | ||
219 | }; | ||
220 | |||
215 | extern void octeon_write_lcd(const char *s); | 221 | extern void octeon_write_lcd(const char *s); |
216 | extern void octeon_check_cpu_bist(void); | 222 | extern void octeon_check_cpu_bist(void); |
217 | extern int octeon_get_boot_debug_flag(void); | 223 | extern int octeon_get_boot_debug_flag(void); |
diff --git a/arch/mips/include/asm/page.h b/arch/mips/include/asm/page.h index f266295cce51..a16beafcea91 100644 --- a/arch/mips/include/asm/page.h +++ b/arch/mips/include/asm/page.h | |||
@@ -107,18 +107,6 @@ typedef struct { unsigned long pte; } pte_t; | |||
107 | typedef struct page *pgtable_t; | 107 | typedef struct page *pgtable_t; |
108 | 108 | ||
109 | /* | 109 | /* |
110 | * For 3-level pagetables we defines these ourselves, for 2-level the | ||
111 | * definitions are supplied by <asm-generic/pgtable-nopmd.h>. | ||
112 | */ | ||
113 | #ifdef CONFIG_64BIT | ||
114 | |||
115 | typedef struct { unsigned long pmd; } pmd_t; | ||
116 | #define pmd_val(x) ((x).pmd) | ||
117 | #define __pmd(x) ((pmd_t) { (x) } ) | ||
118 | |||
119 | #endif | ||
120 | |||
121 | /* | ||
122 | * Right now we don't support 4-level pagetables, so all pud-related | 110 | * Right now we don't support 4-level pagetables, so all pud-related |
123 | * definitions come from <asm-generic/pgtable-nopud.h>. | 111 | * definitions come from <asm-generic/pgtable-nopud.h>. |
124 | */ | 112 | */ |
@@ -200,8 +188,10 @@ typedef struct { unsigned long pgprot; } pgprot_t; | |||
200 | #define VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \ | 188 | #define VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \ |
201 | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC) | 189 | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC) |
202 | 190 | ||
203 | #define UNCAC_ADDR(addr) ((addr) - PAGE_OFFSET + UNCAC_BASE) | 191 | #define UNCAC_ADDR(addr) ((addr) - PAGE_OFFSET + UNCAC_BASE + \ |
204 | #define CAC_ADDR(addr) ((addr) - UNCAC_BASE + PAGE_OFFSET) | 192 | PHYS_OFFSET) |
193 | #define CAC_ADDR(addr) ((addr) - UNCAC_BASE + PAGE_OFFSET - \ | ||
194 | PHYS_OFFSET) | ||
205 | 195 | ||
206 | #include <asm-generic/memory_model.h> | 196 | #include <asm-generic/memory_model.h> |
207 | #include <asm-generic/getorder.h> | 197 | #include <asm-generic/getorder.h> |
diff --git a/arch/mips/include/asm/param.h b/arch/mips/include/asm/param.h index 1d9bb8c5ab24..da3920fce9ad 100644 --- a/arch/mips/include/asm/param.h +++ b/arch/mips/include/asm/param.h | |||
@@ -9,23 +9,8 @@ | |||
9 | #ifndef _ASM_PARAM_H | 9 | #ifndef _ASM_PARAM_H |
10 | #define _ASM_PARAM_H | 10 | #define _ASM_PARAM_H |
11 | 11 | ||
12 | #ifdef __KERNEL__ | ||
13 | |||
14 | # define HZ CONFIG_HZ /* Internal kernel timer frequency */ | ||
15 | # define USER_HZ 100 /* .. some user interfaces are in "ticks" */ | ||
16 | # define CLOCKS_PER_SEC (USER_HZ) /* like times() */ | ||
17 | #endif | ||
18 | |||
19 | #ifndef HZ | ||
20 | #define HZ 100 | ||
21 | #endif | ||
22 | |||
23 | #define EXEC_PAGESIZE 65536 | 12 | #define EXEC_PAGESIZE 65536 |
24 | 13 | ||
25 | #ifndef NOGROUP | 14 | #include <asm-generic/param.h> |
26 | #define NOGROUP (-1) | ||
27 | #endif | ||
28 | |||
29 | #define MAXHOSTNAMELEN 64 /* max length of hostname */ | ||
30 | 15 | ||
31 | #endif /* _ASM_PARAM_H */ | 16 | #endif /* _ASM_PARAM_H */ |
diff --git a/arch/mips/include/asm/parport.h b/arch/mips/include/asm/parport.h index f52656826cce..cf252af64590 100644 --- a/arch/mips/include/asm/parport.h +++ b/arch/mips/include/asm/parport.h | |||
@@ -1,15 +1 @@ | |||
1 | /* | #include <asm-generic/parport.h> | |
2 | * Copyright (C) 1999, 2000 Tim Waugh <tim@cyberelk.demon.co.uk> | ||
3 | * | ||
4 | * This file should only be included by drivers/parport/parport_pc.c. | ||
5 | */ | ||
6 | #ifndef _ASM_PARPORT_H | ||
7 | #define _ASM_PARPORT_H | ||
8 | |||
9 | static int __devinit parport_pc_find_isa_ports(int autoirq, int autodma); | ||
10 | static int __devinit parport_pc_find_nonpci_ports(int autoirq, int autodma) | ||
11 | { | ||
12 | return parport_pc_find_isa_ports(autoirq, autodma); | ||
13 | } | ||
14 | |||
15 | #endif /* _ASM_PARPORT_H */ | ||
diff --git a/arch/mips/include/asm/pci.h b/arch/mips/include/asm/pci.h index 5ebf82572ec0..3beea1479b43 100644 --- a/arch/mips/include/asm/pci.h +++ b/arch/mips/include/asm/pci.h | |||
@@ -102,28 +102,6 @@ struct pci_dev; | |||
102 | */ | 102 | */ |
103 | extern unsigned int PCI_DMA_BUS_IS_PHYS; | 103 | extern unsigned int PCI_DMA_BUS_IS_PHYS; |
104 | 104 | ||
105 | #ifdef CONFIG_DMA_NEED_PCI_MAP_STATE | ||
106 | |||
107 | /* pci_unmap_{single,page} is not a nop, thus... */ | ||
108 | #define DECLARE_PCI_UNMAP_ADDR(ADDR_NAME) dma_addr_t ADDR_NAME; | ||
109 | #define DECLARE_PCI_UNMAP_LEN(LEN_NAME) __u32 LEN_NAME; | ||
110 | #define pci_unmap_addr(PTR, ADDR_NAME) ((PTR)->ADDR_NAME) | ||
111 | #define pci_unmap_addr_set(PTR, ADDR_NAME, VAL) (((PTR)->ADDR_NAME) = (VAL)) | ||
112 | #define pci_unmap_len(PTR, LEN_NAME) ((PTR)->LEN_NAME) | ||
113 | #define pci_unmap_len_set(PTR, LEN_NAME, VAL) (((PTR)->LEN_NAME) = (VAL)) | ||
114 | |||
115 | #else /* CONFIG_DMA_NEED_PCI_MAP_STATE */ | ||
116 | |||
117 | /* pci_unmap_{page,single} is a nop so... */ | ||
118 | #define DECLARE_PCI_UNMAP_ADDR(ADDR_NAME) | ||
119 | #define DECLARE_PCI_UNMAP_LEN(LEN_NAME) | ||
120 | #define pci_unmap_addr(PTR, ADDR_NAME) (0) | ||
121 | #define pci_unmap_addr_set(PTR, ADDR_NAME, VAL) do { } while (0) | ||
122 | #define pci_unmap_len(PTR, LEN_NAME) (0) | ||
123 | #define pci_unmap_len_set(PTR, LEN_NAME, VAL) do { } while (0) | ||
124 | |||
125 | #endif /* CONFIG_DMA_NEED_PCI_MAP_STATE */ | ||
126 | |||
127 | #ifdef CONFIG_PCI | 105 | #ifdef CONFIG_PCI |
128 | static inline void pci_dma_burst_advice(struct pci_dev *pdev, | 106 | static inline void pci_dma_burst_advice(struct pci_dev *pdev, |
129 | enum pci_dma_burst_strategy *strat, | 107 | enum pci_dma_burst_strategy *strat, |
diff --git a/arch/mips/include/asm/pgalloc.h b/arch/mips/include/asm/pgalloc.h index 3738f4b48cbd..881d18b4e298 100644 --- a/arch/mips/include/asm/pgalloc.h +++ b/arch/mips/include/asm/pgalloc.h | |||
@@ -31,7 +31,7 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, | |||
31 | */ | 31 | */ |
32 | extern void pmd_init(unsigned long page, unsigned long pagetable); | 32 | extern void pmd_init(unsigned long page, unsigned long pagetable); |
33 | 33 | ||
34 | #ifdef CONFIG_64BIT | 34 | #ifndef __PAGETABLE_PMD_FOLDED |
35 | 35 | ||
36 | static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) | 36 | static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) |
37 | { | 37 | { |
@@ -104,7 +104,7 @@ do { \ | |||
104 | tlb_remove_page((tlb), pte); \ | 104 | tlb_remove_page((tlb), pte); \ |
105 | } while (0) | 105 | } while (0) |
106 | 106 | ||
107 | #ifdef CONFIG_64BIT | 107 | #ifndef __PAGETABLE_PMD_FOLDED |
108 | 108 | ||
109 | static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) | 109 | static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) |
110 | { | 110 | { |
diff --git a/arch/mips/include/asm/pgtable-32.h b/arch/mips/include/asm/pgtable-32.h index 55813d6150c7..ae90412556d0 100644 --- a/arch/mips/include/asm/pgtable-32.h +++ b/arch/mips/include/asm/pgtable-32.h | |||
@@ -127,8 +127,8 @@ pfn_pte(unsigned long pfn, pgprot_t prot) | |||
127 | #define pte_pfn(x) ((unsigned long)((x).pte >> (PAGE_SHIFT + 2))) | 127 | #define pte_pfn(x) ((unsigned long)((x).pte >> (PAGE_SHIFT + 2))) |
128 | #define pfn_pte(pfn, prot) __pte(((pfn) << (PAGE_SHIFT + 2)) | pgprot_val(prot)) | 128 | #define pfn_pte(pfn, prot) __pte(((pfn) << (PAGE_SHIFT + 2)) | pgprot_val(prot)) |
129 | #else | 129 | #else |
130 | #define pte_pfn(x) ((unsigned long)((x).pte >> PAGE_SHIFT)) | 130 | #define pte_pfn(x) ((unsigned long)((x).pte >> _PFN_SHIFT)) |
131 | #define pfn_pte(pfn, prot) __pte(((unsigned long long)(pfn) << PAGE_SHIFT) | pgprot_val(prot)) | 131 | #define pfn_pte(pfn, prot) __pte(((unsigned long long)(pfn) << _PFN_SHIFT) | pgprot_val(prot)) |
132 | #endif | 132 | #endif |
133 | #endif /* defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_CPU_MIPS32) */ | 133 | #endif /* defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_CPU_MIPS32) */ |
134 | 134 | ||
diff --git a/arch/mips/include/asm/pgtable-64.h b/arch/mips/include/asm/pgtable-64.h index 9cd508993956..1be4b0fa30da 100644 --- a/arch/mips/include/asm/pgtable-64.h +++ b/arch/mips/include/asm/pgtable-64.h | |||
@@ -16,7 +16,11 @@ | |||
16 | #include <asm/cachectl.h> | 16 | #include <asm/cachectl.h> |
17 | #include <asm/fixmap.h> | 17 | #include <asm/fixmap.h> |
18 | 18 | ||
19 | #ifdef CONFIG_PAGE_SIZE_64KB | ||
20 | #include <asm-generic/pgtable-nopmd.h> | ||
21 | #else | ||
19 | #include <asm-generic/pgtable-nopud.h> | 22 | #include <asm-generic/pgtable-nopud.h> |
23 | #endif | ||
20 | 24 | ||
21 | /* | 25 | /* |
22 | * Each address space has 2 4K pages as its page directory, giving 1024 | 26 | * Each address space has 2 4K pages as its page directory, giving 1024 |
@@ -37,13 +41,20 @@ | |||
37 | * fault address - VMALLOC_START. | 41 | * fault address - VMALLOC_START. |
38 | */ | 42 | */ |
39 | 43 | ||
44 | |||
45 | /* PGDIR_SHIFT determines what a third-level page table entry can map */ | ||
46 | #ifdef __PAGETABLE_PMD_FOLDED | ||
47 | #define PGDIR_SHIFT (PAGE_SHIFT + PAGE_SHIFT + PTE_ORDER - 3) | ||
48 | #else | ||
49 | |||
40 | /* PMD_SHIFT determines the size of the area a second-level page table can map */ | 50 | /* PMD_SHIFT determines the size of the area a second-level page table can map */ |
41 | #define PMD_SHIFT (PAGE_SHIFT + (PAGE_SHIFT + PTE_ORDER - 3)) | 51 | #define PMD_SHIFT (PAGE_SHIFT + (PAGE_SHIFT + PTE_ORDER - 3)) |
42 | #define PMD_SIZE (1UL << PMD_SHIFT) | 52 | #define PMD_SIZE (1UL << PMD_SHIFT) |
43 | #define PMD_MASK (~(PMD_SIZE-1)) | 53 | #define PMD_MASK (~(PMD_SIZE-1)) |
44 | 54 | ||
45 | /* PGDIR_SHIFT determines what a third-level page table entry can map */ | 55 | |
46 | #define PGDIR_SHIFT (PMD_SHIFT + (PAGE_SHIFT + PMD_ORDER - 3)) | 56 | #define PGDIR_SHIFT (PMD_SHIFT + (PAGE_SHIFT + PMD_ORDER - 3)) |
57 | #endif | ||
47 | #define PGDIR_SIZE (1UL << PGDIR_SHIFT) | 58 | #define PGDIR_SIZE (1UL << PGDIR_SHIFT) |
48 | #define PGDIR_MASK (~(PGDIR_SIZE-1)) | 59 | #define PGDIR_MASK (~(PGDIR_SIZE-1)) |
49 | 60 | ||
@@ -92,12 +103,14 @@ | |||
92 | #ifdef CONFIG_PAGE_SIZE_64KB | 103 | #ifdef CONFIG_PAGE_SIZE_64KB |
93 | #define PGD_ORDER 0 | 104 | #define PGD_ORDER 0 |
94 | #define PUD_ORDER aieeee_attempt_to_allocate_pud | 105 | #define PUD_ORDER aieeee_attempt_to_allocate_pud |
95 | #define PMD_ORDER 0 | 106 | #define PMD_ORDER aieeee_attempt_to_allocate_pmd |
96 | #define PTE_ORDER 0 | 107 | #define PTE_ORDER 0 |
97 | #endif | 108 | #endif |
98 | 109 | ||
99 | #define PTRS_PER_PGD ((PAGE_SIZE << PGD_ORDER) / sizeof(pgd_t)) | 110 | #define PTRS_PER_PGD ((PAGE_SIZE << PGD_ORDER) / sizeof(pgd_t)) |
111 | #ifndef __PAGETABLE_PMD_FOLDED | ||
100 | #define PTRS_PER_PMD ((PAGE_SIZE << PMD_ORDER) / sizeof(pmd_t)) | 112 | #define PTRS_PER_PMD ((PAGE_SIZE << PMD_ORDER) / sizeof(pmd_t)) |
113 | #endif | ||
101 | #define PTRS_PER_PTE ((PAGE_SIZE << PTE_ORDER) / sizeof(pte_t)) | 114 | #define PTRS_PER_PTE ((PAGE_SIZE << PTE_ORDER) / sizeof(pte_t)) |
102 | 115 | ||
103 | #if PGDIR_SIZE >= TASK_SIZE | 116 | #if PGDIR_SIZE >= TASK_SIZE |
@@ -107,10 +120,17 @@ | |||
107 | #endif | 120 | #endif |
108 | #define FIRST_USER_ADDRESS 0UL | 121 | #define FIRST_USER_ADDRESS 0UL |
109 | 122 | ||
110 | #define VMALLOC_START MAP_BASE | 123 | /* |
124 | * TLB refill handlers also map the vmalloc area into xuseg. Avoid | ||
125 | * the first couple of pages so NULL pointer dereferences will still | ||
126 | * reliably trap. | ||
127 | */ | ||
128 | #define VMALLOC_START (MAP_BASE + (2 * PAGE_SIZE)) | ||
111 | #define VMALLOC_END \ | 129 | #define VMALLOC_END \ |
112 | (VMALLOC_START + \ | 130 | (MAP_BASE + \ |
113 | PTRS_PER_PGD * PTRS_PER_PMD * PTRS_PER_PTE * PAGE_SIZE - (1UL << 32)) | 131 | min(PTRS_PER_PGD * PTRS_PER_PMD * PTRS_PER_PTE * PAGE_SIZE, \ |
132 | (1UL << cpu_vmbits)) - (1UL << 32)) | ||
133 | |||
114 | #if defined(CONFIG_MODULES) && defined(KBUILD_64BIT_SYM32) && \ | 134 | #if defined(CONFIG_MODULES) && defined(KBUILD_64BIT_SYM32) && \ |
115 | VMALLOC_START != CKSSEG | 135 | VMALLOC_START != CKSSEG |
116 | /* Load modules into 32bit-compatible segment. */ | 136 | /* Load modules into 32bit-compatible segment. */ |
@@ -120,15 +140,30 @@ | |||
120 | 140 | ||
121 | #define pte_ERROR(e) \ | 141 | #define pte_ERROR(e) \ |
122 | printk("%s:%d: bad pte %016lx.\n", __FILE__, __LINE__, pte_val(e)) | 142 | printk("%s:%d: bad pte %016lx.\n", __FILE__, __LINE__, pte_val(e)) |
143 | #ifndef __PAGETABLE_PMD_FOLDED | ||
123 | #define pmd_ERROR(e) \ | 144 | #define pmd_ERROR(e) \ |
124 | printk("%s:%d: bad pmd %016lx.\n", __FILE__, __LINE__, pmd_val(e)) | 145 | printk("%s:%d: bad pmd %016lx.\n", __FILE__, __LINE__, pmd_val(e)) |
146 | #endif | ||
125 | #define pgd_ERROR(e) \ | 147 | #define pgd_ERROR(e) \ |
126 | printk("%s:%d: bad pgd %016lx.\n", __FILE__, __LINE__, pgd_val(e)) | 148 | printk("%s:%d: bad pgd %016lx.\n", __FILE__, __LINE__, pgd_val(e)) |
127 | 149 | ||
128 | extern pte_t invalid_pte_table[PTRS_PER_PTE]; | 150 | extern pte_t invalid_pte_table[PTRS_PER_PTE]; |
129 | extern pte_t empty_bad_page_table[PTRS_PER_PTE]; | 151 | extern pte_t empty_bad_page_table[PTRS_PER_PTE]; |
152 | |||
153 | |||
154 | #ifndef __PAGETABLE_PMD_FOLDED | ||
155 | /* | ||
156 | * For 3-level pagetables we defines these ourselves, for 2-level the | ||
157 | * definitions are supplied by <asm-generic/pgtable-nopmd.h>. | ||
158 | */ | ||
159 | typedef struct { unsigned long pmd; } pmd_t; | ||
160 | #define pmd_val(x) ((x).pmd) | ||
161 | #define __pmd(x) ((pmd_t) { (x) } ) | ||
162 | |||
163 | |||
130 | extern pmd_t invalid_pmd_table[PTRS_PER_PMD]; | 164 | extern pmd_t invalid_pmd_table[PTRS_PER_PMD]; |
131 | extern pmd_t empty_bad_pmd_table[PTRS_PER_PMD]; | 165 | extern pmd_t empty_bad_pmd_table[PTRS_PER_PMD]; |
166 | #endif | ||
132 | 167 | ||
133 | /* | 168 | /* |
134 | * Empty pgd/pmd entries point to the invalid_pte_table. | 169 | * Empty pgd/pmd entries point to the invalid_pte_table. |
@@ -149,6 +184,7 @@ static inline void pmd_clear(pmd_t *pmdp) | |||
149 | { | 184 | { |
150 | pmd_val(*pmdp) = ((unsigned long) invalid_pte_table); | 185 | pmd_val(*pmdp) = ((unsigned long) invalid_pte_table); |
151 | } | 186 | } |
187 | #ifndef __PAGETABLE_PMD_FOLDED | ||
152 | 188 | ||
153 | /* | 189 | /* |
154 | * Empty pud entries point to the invalid_pmd_table. | 190 | * Empty pud entries point to the invalid_pmd_table. |
@@ -172,6 +208,7 @@ static inline void pud_clear(pud_t *pudp) | |||
172 | { | 208 | { |
173 | pud_val(*pudp) = ((unsigned long) invalid_pmd_table); | 209 | pud_val(*pudp) = ((unsigned long) invalid_pmd_table); |
174 | } | 210 | } |
211 | #endif | ||
175 | 212 | ||
176 | #define pte_page(x) pfn_to_page(pte_pfn(x)) | 213 | #define pte_page(x) pfn_to_page(pte_pfn(x)) |
177 | 214 | ||
@@ -179,8 +216,8 @@ static inline void pud_clear(pud_t *pudp) | |||
179 | #define pte_pfn(x) ((unsigned long)((x).pte >> (PAGE_SHIFT + 2))) | 216 | #define pte_pfn(x) ((unsigned long)((x).pte >> (PAGE_SHIFT + 2))) |
180 | #define pfn_pte(pfn, prot) __pte(((pfn) << (PAGE_SHIFT + 2)) | pgprot_val(prot)) | 217 | #define pfn_pte(pfn, prot) __pte(((pfn) << (PAGE_SHIFT + 2)) | pgprot_val(prot)) |
181 | #else | 218 | #else |
182 | #define pte_pfn(x) ((unsigned long)((x).pte >> PAGE_SHIFT)) | 219 | #define pte_pfn(x) ((unsigned long)((x).pte >> _PFN_SHIFT)) |
183 | #define pfn_pte(pfn, prot) __pte(((pfn) << PAGE_SHIFT) | pgprot_val(prot)) | 220 | #define pfn_pte(pfn, prot) __pte(((pfn) << _PFN_SHIFT) | pgprot_val(prot)) |
184 | #endif | 221 | #endif |
185 | 222 | ||
186 | #define __pgd_offset(address) pgd_index(address) | 223 | #define __pgd_offset(address) pgd_index(address) |
@@ -196,6 +233,7 @@ static inline void pud_clear(pud_t *pudp) | |||
196 | /* to find an entry in a page-table-directory */ | 233 | /* to find an entry in a page-table-directory */ |
197 | #define pgd_offset(mm, addr) ((mm)->pgd + pgd_index(addr)) | 234 | #define pgd_offset(mm, addr) ((mm)->pgd + pgd_index(addr)) |
198 | 235 | ||
236 | #ifndef __PAGETABLE_PMD_FOLDED | ||
199 | static inline unsigned long pud_page_vaddr(pud_t pud) | 237 | static inline unsigned long pud_page_vaddr(pud_t pud) |
200 | { | 238 | { |
201 | return pud_val(pud); | 239 | return pud_val(pud); |
@@ -208,6 +246,7 @@ static inline pmd_t *pmd_offset(pud_t * pud, unsigned long address) | |||
208 | { | 246 | { |
209 | return (pmd_t *) pud_page_vaddr(*pud) + pmd_index(address); | 247 | return (pmd_t *) pud_page_vaddr(*pud) + pmd_index(address); |
210 | } | 248 | } |
249 | #endif | ||
211 | 250 | ||
212 | /* Find an entry in the third-level page table.. */ | 251 | /* Find an entry in the third-level page table.. */ |
213 | #define __pte_offset(address) \ | 252 | #define __pte_offset(address) \ |
diff --git a/arch/mips/include/asm/pgtable-bits.h b/arch/mips/include/asm/pgtable-bits.h index 1073e6df8621..e9fe7e97ce4c 100644 --- a/arch/mips/include/asm/pgtable-bits.h +++ b/arch/mips/include/asm/pgtable-bits.h | |||
@@ -50,7 +50,7 @@ | |||
50 | #define _CACHE_SHIFT 3 | 50 | #define _CACHE_SHIFT 3 |
51 | #define _CACHE_MASK (7<<3) | 51 | #define _CACHE_MASK (7<<3) |
52 | 52 | ||
53 | #else | 53 | #elif defined(CONFIG_CPU_R3000) || defined(CONFIG_CPU_TX39XX) |
54 | 54 | ||
55 | #define _PAGE_PRESENT (1<<0) /* implemented in software */ | 55 | #define _PAGE_PRESENT (1<<0) /* implemented in software */ |
56 | #define _PAGE_READ (1<<1) /* implemented in software */ | 56 | #define _PAGE_READ (1<<1) /* implemented in software */ |
@@ -59,8 +59,6 @@ | |||
59 | #define _PAGE_MODIFIED (1<<4) /* implemented in software */ | 59 | #define _PAGE_MODIFIED (1<<4) /* implemented in software */ |
60 | #define _PAGE_FILE (1<<4) /* set:pagecache unset:swap */ | 60 | #define _PAGE_FILE (1<<4) /* set:pagecache unset:swap */ |
61 | 61 | ||
62 | #if defined(CONFIG_CPU_R3000) || defined(CONFIG_CPU_TX39XX) | ||
63 | |||
64 | #define _PAGE_GLOBAL (1<<8) | 62 | #define _PAGE_GLOBAL (1<<8) |
65 | #define _PAGE_VALID (1<<9) | 63 | #define _PAGE_VALID (1<<9) |
66 | #define _PAGE_SILENT_READ (1<<9) /* synonym */ | 64 | #define _PAGE_SILENT_READ (1<<9) /* synonym */ |
@@ -69,21 +67,113 @@ | |||
69 | #define _CACHE_UNCACHED (1<<11) | 67 | #define _CACHE_UNCACHED (1<<11) |
70 | #define _CACHE_MASK (1<<11) | 68 | #define _CACHE_MASK (1<<11) |
71 | 69 | ||
70 | #else /* 'Normal' r4K case */ | ||
71 | /* | ||
72 | * When using the RI/XI bit support, we have 13 bits of flags below | ||
73 | * the physical address. The RI/XI bits are placed such that a SRL 5 | ||
74 | * can strip off the software bits, then a ROTR 2 can move the RI/XI | ||
75 | * into bits [63:62]. This also limits physical address to 56 bits, | ||
76 | * which is more than we need right now. | ||
77 | */ | ||
78 | |||
79 | /* implemented in software */ | ||
80 | #define _PAGE_PRESENT_SHIFT (0) | ||
81 | #define _PAGE_PRESENT (1 << _PAGE_PRESENT_SHIFT) | ||
82 | /* implemented in software, should be unused if kernel_uses_smartmips_rixi. */ | ||
83 | #define _PAGE_READ_SHIFT (kernel_uses_smartmips_rixi ? _PAGE_PRESENT_SHIFT : _PAGE_PRESENT_SHIFT + 1) | ||
84 | #define _PAGE_READ ({if (kernel_uses_smartmips_rixi) BUG(); 1 << _PAGE_READ_SHIFT; }) | ||
85 | /* implemented in software */ | ||
86 | #define _PAGE_WRITE_SHIFT (_PAGE_READ_SHIFT + 1) | ||
87 | #define _PAGE_WRITE (1 << _PAGE_WRITE_SHIFT) | ||
88 | /* implemented in software */ | ||
89 | #define _PAGE_ACCESSED_SHIFT (_PAGE_WRITE_SHIFT + 1) | ||
90 | #define _PAGE_ACCESSED (1 << _PAGE_ACCESSED_SHIFT) | ||
91 | /* implemented in software */ | ||
92 | #define _PAGE_MODIFIED_SHIFT (_PAGE_ACCESSED_SHIFT + 1) | ||
93 | #define _PAGE_MODIFIED (1 << _PAGE_MODIFIED_SHIFT) | ||
94 | /* set:pagecache unset:swap */ | ||
95 | #define _PAGE_FILE (_PAGE_MODIFIED) | ||
96 | |||
97 | #ifdef CONFIG_HUGETLB_PAGE | ||
98 | /* huge tlb page */ | ||
99 | #define _PAGE_HUGE_SHIFT (_PAGE_MODIFIED_SHIFT + 1) | ||
100 | #define _PAGE_HUGE (1 << _PAGE_HUGE_SHIFT) | ||
72 | #else | 101 | #else |
102 | #define _PAGE_HUGE_SHIFT (_PAGE_MODIFIED_SHIFT) | ||
103 | #define _PAGE_HUGE ({BUG(); 1; }) /* Dummy value */ | ||
104 | #endif | ||
73 | 105 | ||
74 | #define _PAGE_R4KBUG (1<<5) /* workaround for r4k bug */ | 106 | /* Page cannot be executed */ |
75 | #define _PAGE_HUGE (1<<5) /* huge tlb page */ | 107 | #define _PAGE_NO_EXEC_SHIFT (kernel_uses_smartmips_rixi ? _PAGE_HUGE_SHIFT + 1 : _PAGE_HUGE_SHIFT) |
76 | #define _PAGE_GLOBAL (1<<6) | 108 | #define _PAGE_NO_EXEC ({if (!kernel_uses_smartmips_rixi) BUG(); 1 << _PAGE_NO_EXEC_SHIFT; }) |
77 | #define _PAGE_VALID (1<<7) | 109 | |
78 | #define _PAGE_SILENT_READ (1<<7) /* synonym */ | 110 | /* Page cannot be read */ |
79 | #define _PAGE_DIRTY (1<<8) /* The MIPS dirty bit */ | 111 | #define _PAGE_NO_READ_SHIFT (kernel_uses_smartmips_rixi ? _PAGE_NO_EXEC_SHIFT + 1 : _PAGE_NO_EXEC_SHIFT) |
80 | #define _PAGE_SILENT_WRITE (1<<8) | 112 | #define _PAGE_NO_READ ({if (!kernel_uses_smartmips_rixi) BUG(); 1 << _PAGE_NO_READ_SHIFT; }) |
81 | #define _CACHE_SHIFT 9 | 113 | |
82 | #define _CACHE_MASK (7<<9) | 114 | #define _PAGE_GLOBAL_SHIFT (_PAGE_NO_READ_SHIFT + 1) |
115 | #define _PAGE_GLOBAL (1 << _PAGE_GLOBAL_SHIFT) | ||
116 | |||
117 | #define _PAGE_VALID_SHIFT (_PAGE_GLOBAL_SHIFT + 1) | ||
118 | #define _PAGE_VALID (1 << _PAGE_VALID_SHIFT) | ||
119 | /* synonym */ | ||
120 | #define _PAGE_SILENT_READ (_PAGE_VALID) | ||
121 | |||
122 | /* The MIPS dirty bit */ | ||
123 | #define _PAGE_DIRTY_SHIFT (_PAGE_VALID_SHIFT + 1) | ||
124 | #define _PAGE_DIRTY (1 << _PAGE_DIRTY_SHIFT) | ||
125 | #define _PAGE_SILENT_WRITE (_PAGE_DIRTY) | ||
126 | |||
127 | #define _CACHE_SHIFT (_PAGE_DIRTY_SHIFT + 1) | ||
128 | #define _CACHE_MASK (7 << _CACHE_SHIFT) | ||
129 | |||
130 | #define _PFN_SHIFT (PAGE_SHIFT - 12 + _CACHE_SHIFT + 3) | ||
83 | 131 | ||
84 | #endif | ||
85 | #endif /* defined(CONFIG_64BIT_PHYS_ADDR && defined(CONFIG_CPU_MIPS32) */ | 132 | #endif /* defined(CONFIG_64BIT_PHYS_ADDR && defined(CONFIG_CPU_MIPS32) */ |
86 | 133 | ||
134 | #ifndef _PFN_SHIFT | ||
135 | #define _PFN_SHIFT PAGE_SHIFT | ||
136 | #endif | ||
137 | #define _PFN_MASK (~((1 << (_PFN_SHIFT)) - 1)) | ||
138 | |||
139 | #ifndef _PAGE_NO_READ | ||
140 | #define _PAGE_NO_READ ({BUG(); 0; }) | ||
141 | #define _PAGE_NO_READ_SHIFT ({BUG(); 0; }) | ||
142 | #endif | ||
143 | #ifndef _PAGE_NO_EXEC | ||
144 | #define _PAGE_NO_EXEC ({BUG(); 0; }) | ||
145 | #endif | ||
146 | #ifndef _PAGE_GLOBAL_SHIFT | ||
147 | #define _PAGE_GLOBAL_SHIFT ilog2(_PAGE_GLOBAL) | ||
148 | #endif | ||
149 | |||
150 | |||
151 | #ifndef __ASSEMBLY__ | ||
152 | /* | ||
153 | * pte_to_entrylo converts a page table entry (PTE) into a Mips | ||
154 | * entrylo0/1 value. | ||
155 | */ | ||
156 | static inline uint64_t pte_to_entrylo(unsigned long pte_val) | ||
157 | { | ||
158 | if (kernel_uses_smartmips_rixi) { | ||
159 | int sa; | ||
160 | #ifdef CONFIG_32BIT | ||
161 | sa = 31 - _PAGE_NO_READ_SHIFT; | ||
162 | #else | ||
163 | sa = 63 - _PAGE_NO_READ_SHIFT; | ||
164 | #endif | ||
165 | /* | ||
166 | * C has no way to express that this is a DSRL | ||
167 | * _PAGE_NO_EXEC_SHIFT followed by a ROTR 2. Luckily | ||
168 | * in the fast path this is done in assembly | ||
169 | */ | ||
170 | return (pte_val >> _PAGE_GLOBAL_SHIFT) | | ||
171 | ((pte_val & (_PAGE_NO_EXEC | _PAGE_NO_READ)) << sa); | ||
172 | } | ||
173 | |||
174 | return pte_val >> _PAGE_GLOBAL_SHIFT; | ||
175 | } | ||
176 | #endif | ||
87 | 177 | ||
88 | /* | 178 | /* |
89 | * Cache attributes | 179 | * Cache attributes |
@@ -130,9 +220,9 @@ | |||
130 | 220 | ||
131 | #endif | 221 | #endif |
132 | 222 | ||
133 | #define __READABLE (_PAGE_READ | _PAGE_SILENT_READ | _PAGE_ACCESSED) | 223 | #define __READABLE (_PAGE_SILENT_READ | _PAGE_ACCESSED | (kernel_uses_smartmips_rixi ? 0 : _PAGE_READ)) |
134 | #define __WRITEABLE (_PAGE_WRITE | _PAGE_SILENT_WRITE | _PAGE_MODIFIED) | 224 | #define __WRITEABLE (_PAGE_WRITE | _PAGE_SILENT_WRITE | _PAGE_MODIFIED) |
135 | 225 | ||
136 | #define _PAGE_CHG_MASK (PAGE_MASK | _PAGE_ACCESSED | _PAGE_MODIFIED | _CACHE_MASK) | 226 | #define _PAGE_CHG_MASK (_PFN_MASK | _PAGE_ACCESSED | _PAGE_MODIFIED | _CACHE_MASK) |
137 | 227 | ||
138 | #endif /* _ASM_PGTABLE_BITS_H */ | 228 | #endif /* _ASM_PGTABLE_BITS_H */ |
diff --git a/arch/mips/include/asm/pgtable.h b/arch/mips/include/asm/pgtable.h index d6eb6134abec..7e40f3778179 100644 --- a/arch/mips/include/asm/pgtable.h +++ b/arch/mips/include/asm/pgtable.h | |||
@@ -22,23 +22,24 @@ struct mm_struct; | |||
22 | struct vm_area_struct; | 22 | struct vm_area_struct; |
23 | 23 | ||
24 | #define PAGE_NONE __pgprot(_PAGE_PRESENT | _CACHE_CACHABLE_NONCOHERENT) | 24 | #define PAGE_NONE __pgprot(_PAGE_PRESENT | _CACHE_CACHABLE_NONCOHERENT) |
25 | #define PAGE_SHARED __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_WRITE | \ | 25 | #define PAGE_SHARED __pgprot(_PAGE_PRESENT | _PAGE_WRITE | (kernel_uses_smartmips_rixi ? 0 : _PAGE_READ) | \ |
26 | _page_cachable_default) | 26 | _page_cachable_default) |
27 | #define PAGE_COPY __pgprot(_PAGE_PRESENT | _PAGE_READ | \ | 27 | #define PAGE_COPY __pgprot(_PAGE_PRESENT | (kernel_uses_smartmips_rixi ? 0 : _PAGE_READ) | \ |
28 | _page_cachable_default) | 28 | (kernel_uses_smartmips_rixi ? _PAGE_NO_EXEC : 0) | _page_cachable_default) |
29 | #define PAGE_READONLY __pgprot(_PAGE_PRESENT | _PAGE_READ | \ | 29 | #define PAGE_READONLY __pgprot(_PAGE_PRESENT | (kernel_uses_smartmips_rixi ? 0 : _PAGE_READ) | \ |
30 | _page_cachable_default) | 30 | _page_cachable_default) |
31 | #define PAGE_KERNEL __pgprot(_PAGE_PRESENT | __READABLE | __WRITEABLE | \ | 31 | #define PAGE_KERNEL __pgprot(_PAGE_PRESENT | __READABLE | __WRITEABLE | \ |
32 | _PAGE_GLOBAL | _page_cachable_default) | 32 | _PAGE_GLOBAL | _page_cachable_default) |
33 | #define PAGE_USERIO __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_WRITE | \ | 33 | #define PAGE_USERIO __pgprot(_PAGE_PRESENT | (kernel_uses_smartmips_rixi ? 0 : _PAGE_READ) | _PAGE_WRITE | \ |
34 | _page_cachable_default) | 34 | _page_cachable_default) |
35 | #define PAGE_KERNEL_UNCACHED __pgprot(_PAGE_PRESENT | __READABLE | \ | 35 | #define PAGE_KERNEL_UNCACHED __pgprot(_PAGE_PRESENT | __READABLE | \ |
36 | __WRITEABLE | _PAGE_GLOBAL | _CACHE_UNCACHED) | 36 | __WRITEABLE | _PAGE_GLOBAL | _CACHE_UNCACHED) |
37 | 37 | ||
38 | /* | 38 | /* |
39 | * MIPS can't do page protection for execute, and considers that the same like | 39 | * If _PAGE_NO_EXEC is not defined, we can't do page protection for |
40 | * read. Also, write permissions imply read permissions. This is the closest | 40 | * execute, and consider it to be the same as read. Also, write |
41 | * we can get by reasonable means.. | 41 | * permissions imply read permissions. This is the closest we can get |
42 | * by reasonable means.. | ||
42 | */ | 43 | */ |
43 | 44 | ||
44 | /* | 45 | /* |
@@ -177,7 +178,7 @@ static inline void pte_clear(struct mm_struct *mm, unsigned long addr, pte_t *pt | |||
177 | */ | 178 | */ |
178 | #define set_pmd(pmdptr, pmdval) do { *(pmdptr) = (pmdval); } while(0) | 179 | #define set_pmd(pmdptr, pmdval) do { *(pmdptr) = (pmdval); } while(0) |
179 | 180 | ||
180 | #ifdef CONFIG_64BIT | 181 | #ifndef __PAGETABLE_PMD_FOLDED |
181 | /* | 182 | /* |
182 | * (puds are folded into pgds so this doesn't get actually called, | 183 | * (puds are folded into pgds so this doesn't get actually called, |
183 | * but the define is needed for a generic inline function.) | 184 | * but the define is needed for a generic inline function.) |
@@ -298,8 +299,13 @@ static inline pte_t pte_mkdirty(pte_t pte) | |||
298 | static inline pte_t pte_mkyoung(pte_t pte) | 299 | static inline pte_t pte_mkyoung(pte_t pte) |
299 | { | 300 | { |
300 | pte_val(pte) |= _PAGE_ACCESSED; | 301 | pte_val(pte) |= _PAGE_ACCESSED; |
301 | if (pte_val(pte) & _PAGE_READ) | 302 | if (kernel_uses_smartmips_rixi) { |
302 | pte_val(pte) |= _PAGE_SILENT_READ; | 303 | if (!(pte_val(pte) & _PAGE_NO_READ)) |
304 | pte_val(pte) |= _PAGE_SILENT_READ; | ||
305 | } else { | ||
306 | if (pte_val(pte) & _PAGE_READ) | ||
307 | pte_val(pte) |= _PAGE_SILENT_READ; | ||
308 | } | ||
303 | return pte; | 309 | return pte; |
304 | } | 310 | } |
305 | 311 | ||
@@ -362,8 +368,9 @@ extern void __update_cache(struct vm_area_struct *vma, unsigned long address, | |||
362 | pte_t pte); | 368 | pte_t pte); |
363 | 369 | ||
364 | static inline void update_mmu_cache(struct vm_area_struct *vma, | 370 | static inline void update_mmu_cache(struct vm_area_struct *vma, |
365 | unsigned long address, pte_t pte) | 371 | unsigned long address, pte_t *ptep) |
366 | { | 372 | { |
373 | pte_t pte = *ptep; | ||
367 | __update_tlb(vma, address, pte); | 374 | __update_tlb(vma, address, pte); |
368 | __update_cache(vma, address, pte); | 375 | __update_cache(vma, address, pte); |
369 | } | 376 | } |
@@ -390,6 +397,19 @@ static inline int io_remap_pfn_range(struct vm_area_struct *vma, | |||
390 | #include <asm-generic/pgtable.h> | 397 | #include <asm-generic/pgtable.h> |
391 | 398 | ||
392 | /* | 399 | /* |
400 | * uncached accelerated TLB map for video memory access | ||
401 | */ | ||
402 | #ifdef CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED | ||
403 | #define __HAVE_PHYS_MEM_ACCESS_PROT | ||
404 | |||
405 | struct file; | ||
406 | pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn, | ||
407 | unsigned long size, pgprot_t vma_prot); | ||
408 | int phys_mem_access_prot_allowed(struct file *file, unsigned long pfn, | ||
409 | unsigned long size, pgprot_t *vma_prot); | ||
410 | #endif | ||
411 | |||
412 | /* | ||
393 | * We provide our own get_unmapped area to cope with the virtual aliasing | 413 | * We provide our own get_unmapped area to cope with the virtual aliasing |
394 | * constraints placed on us by the cache architecture. | 414 | * constraints placed on us by the cache architecture. |
395 | */ | 415 | */ |
diff --git a/arch/mips/include/asm/pmc-sierra/msp71xx/msp_prom.h b/arch/mips/include/asm/pmc-sierra/msp71xx/msp_prom.h index 14ca7dc382a8..54ef1a96d7ce 100644 --- a/arch/mips/include/asm/pmc-sierra/msp71xx/msp_prom.h +++ b/arch/mips/include/asm/pmc-sierra/msp71xx/msp_prom.h | |||
@@ -118,7 +118,6 @@ | |||
118 | #define ZSP_DUET 'D' /* one DUET zsp engine */ | 118 | #define ZSP_DUET 'D' /* one DUET zsp engine */ |
119 | #define ZSP_TRIAD 'T' /* two TRIAD zsp engines */ | 119 | #define ZSP_TRIAD 'T' /* two TRIAD zsp engines */ |
120 | 120 | ||
121 | extern char *prom_getcmdline(void); | ||
122 | extern char *prom_getenv(char *name); | 121 | extern char *prom_getenv(char *name); |
123 | extern void prom_init_cmdline(void); | 122 | extern void prom_init_cmdline(void); |
124 | extern void prom_meminit(void); | 123 | extern void prom_meminit(void); |
diff --git a/arch/mips/include/asm/processor.h b/arch/mips/include/asm/processor.h index 087a8884ef06..ab387910009a 100644 --- a/arch/mips/include/asm/processor.h +++ b/arch/mips/include/asm/processor.h | |||
@@ -33,13 +33,19 @@ extern void (*cpu_wait)(void); | |||
33 | 33 | ||
34 | extern unsigned int vced_count, vcei_count; | 34 | extern unsigned int vced_count, vcei_count; |
35 | 35 | ||
36 | /* | ||
37 | * A special page (the vdso) is mapped into all processes at the very | ||
38 | * top of the virtual memory space. | ||
39 | */ | ||
40 | #define SPECIAL_PAGES_SIZE PAGE_SIZE | ||
41 | |||
36 | #ifdef CONFIG_32BIT | 42 | #ifdef CONFIG_32BIT |
37 | /* | 43 | /* |
38 | * User space process size: 2GB. This is hardcoded into a few places, | 44 | * User space process size: 2GB. This is hardcoded into a few places, |
39 | * so don't change it unless you know what you are doing. | 45 | * so don't change it unless you know what you are doing. |
40 | */ | 46 | */ |
41 | #define TASK_SIZE 0x7fff8000UL | 47 | #define TASK_SIZE 0x7fff8000UL |
42 | #define STACK_TOP TASK_SIZE | 48 | #define STACK_TOP ((TASK_SIZE & PAGE_MASK) - SPECIAL_PAGES_SIZE) |
43 | 49 | ||
44 | /* | 50 | /* |
45 | * This decides where the kernel will search for a free chunk of vm | 51 | * This decides where the kernel will search for a free chunk of vm |
@@ -59,7 +65,8 @@ extern unsigned int vced_count, vcei_count; | |||
59 | #define TASK_SIZE32 0x7fff8000UL | 65 | #define TASK_SIZE32 0x7fff8000UL |
60 | #define TASK_SIZE 0x10000000000UL | 66 | #define TASK_SIZE 0x10000000000UL |
61 | #define STACK_TOP \ | 67 | #define STACK_TOP \ |
62 | (test_thread_flag(TIF_32BIT_ADDR) ? TASK_SIZE32 : TASK_SIZE) | 68 | (((test_thread_flag(TIF_32BIT_ADDR) ? \ |
69 | TASK_SIZE32 : TASK_SIZE) & PAGE_MASK) - SPECIAL_PAGES_SIZE) | ||
63 | 70 | ||
64 | /* | 71 | /* |
65 | * This decides where the kernel will search for a free chunk of vm | 72 | * This decides where the kernel will search for a free chunk of vm |
diff --git a/arch/mips/include/asm/ptrace.h b/arch/mips/include/asm/ptrace.h index ce47118e52b7..cdc6a46efd98 100644 --- a/arch/mips/include/asm/ptrace.h +++ b/arch/mips/include/asm/ptrace.h | |||
@@ -142,9 +142,9 @@ extern int ptrace_set_watch_regs(struct task_struct *child, | |||
142 | 142 | ||
143 | extern asmlinkage void do_syscall_trace(struct pt_regs *regs, int entryexit); | 143 | extern asmlinkage void do_syscall_trace(struct pt_regs *regs, int entryexit); |
144 | 144 | ||
145 | extern NORET_TYPE void die(const char *, const struct pt_regs *) ATTRIB_NORET; | 145 | extern NORET_TYPE void die(const char *, struct pt_regs *) ATTRIB_NORET; |
146 | 146 | ||
147 | static inline void die_if_kernel(const char *str, const struct pt_regs *regs) | 147 | static inline void die_if_kernel(const char *str, struct pt_regs *regs) |
148 | { | 148 | { |
149 | if (unlikely(!user_mode(regs))) | 149 | if (unlikely(!user_mode(regs))) |
150 | die(str, regs); | 150 | die(str, regs); |
diff --git a/arch/mips/include/asm/serial.h b/arch/mips/include/asm/serial.h index c07ebd8eb9e7..a0cb0caff152 100644 --- a/arch/mips/include/asm/serial.h +++ b/arch/mips/include/asm/serial.h | |||
@@ -1,22 +1 @@ | |||
1 | /* | #include <asm-generic/serial.h> | |
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 1999 by Ralf Baechle | ||
7 | * Copyright (C) 1999, 2000 Silicon Graphics, Inc. | ||
8 | */ | ||
9 | #ifndef _ASM_SERIAL_H | ||
10 | #define _ASM_SERIAL_H | ||
11 | |||
12 | |||
13 | /* | ||
14 | * This assumes you have a 1.8432 MHz clock for your UART. | ||
15 | * | ||
16 | * It'd be nice if someone built a serial card with a 24.576 MHz | ||
17 | * clock, since the 16550A is capable of handling a top speed of 1.5 | ||
18 | * megabits/second; but this requires the faster clock. | ||
19 | */ | ||
20 | #define BASE_BAUD (1843200 / 16) | ||
21 | |||
22 | #endif /* _ASM_SERIAL_H */ | ||
diff --git a/arch/mips/include/asm/sgi/ioc.h b/arch/mips/include/asm/sgi/ioc.h index 343ed15f8dc4..57a971904cfe 100644 --- a/arch/mips/include/asm/sgi/ioc.h +++ b/arch/mips/include/asm/sgi/ioc.h | |||
@@ -164,7 +164,7 @@ struct sgioc_regs { | |||
164 | u32 _unused5; | 164 | u32 _unused5; |
165 | u8 _write[3]; | 165 | u8 _write[3]; |
166 | volatile u8 write; | 166 | volatile u8 write; |
167 | #define SGIOC_WRITE_NTHRESH 0x01 /* use 4.5db threshhold */ | 167 | #define SGIOC_WRITE_NTHRESH 0x01 /* use 4.5db threshold */ |
168 | #define SGIOC_WRITE_TPSPEED 0x02 /* use 100ohm TP speed */ | 168 | #define SGIOC_WRITE_TPSPEED 0x02 /* use 100ohm TP speed */ |
169 | #define SGIOC_WRITE_EPSEL 0x04 /* force cable mode: 1=AUI 0=TP */ | 169 | #define SGIOC_WRITE_EPSEL 0x04 /* force cable mode: 1=AUI 0=TP */ |
170 | #define SGIOC_WRITE_EASEL 0x08 /* 1=autoselect 0=manual cable selection */ | 170 | #define SGIOC_WRITE_EASEL 0x08 /* 1=autoselect 0=manual cable selection */ |
diff --git a/arch/mips/include/asm/sgialib.h b/arch/mips/include/asm/sgialib.h index bfce5c786f1c..2a2f1bddc276 100644 --- a/arch/mips/include/asm/sgialib.h +++ b/arch/mips/include/asm/sgialib.h | |||
@@ -33,14 +33,6 @@ extern int prom_flags; | |||
33 | extern void prom_putchar(char c); | 33 | extern void prom_putchar(char c); |
34 | extern char prom_getchar(void); | 34 | extern char prom_getchar(void); |
35 | 35 | ||
36 | /* Memory descriptor management. */ | ||
37 | #define PROM_MAX_PMEMBLOCKS 32 | ||
38 | struct prom_pmemblock { | ||
39 | LONG base; /* Within KSEG0 or XKPHYS. */ | ||
40 | ULONG size; /* In bytes. */ | ||
41 | ULONG type; /* free or prom memory */ | ||
42 | }; | ||
43 | |||
44 | /* Get next memory descriptor after CURR, returns first descriptor | 36 | /* Get next memory descriptor after CURR, returns first descriptor |
45 | * in chain is CURR is NULL. | 37 | * in chain is CURR is NULL. |
46 | */ | 38 | */ |
@@ -51,7 +43,6 @@ extern struct linux_mdesc *prom_getmdesc(struct linux_mdesc *curr); | |||
51 | * array. | 43 | * array. |
52 | */ | 44 | */ |
53 | extern void prom_meminit(void); | 45 | extern void prom_meminit(void); |
54 | extern void prom_fixup_mem_map(unsigned long start_mem, unsigned long end_mem); | ||
55 | 46 | ||
56 | /* PROM device tree library routines. */ | 47 | /* PROM device tree library routines. */ |
57 | #define PROM_NULL_COMPONENT ((pcomponent *) 0) | 48 | #define PROM_NULL_COMPONENT ((pcomponent *) 0) |
@@ -62,20 +53,6 @@ extern pcomponent *ArcGetPeer(pcomponent *this); | |||
62 | /* Get child component of THIS. */ | 53 | /* Get child component of THIS. */ |
63 | extern pcomponent *ArcGetChild(pcomponent *this); | 54 | extern pcomponent *ArcGetChild(pcomponent *this); |
64 | 55 | ||
65 | /* Get parent component of CHILD. */ | ||
66 | extern pcomponent *prom_getparent(pcomponent *child); | ||
67 | |||
68 | /* Copy component opaque data of component THIS into BUFFER | ||
69 | * if component THIS has opaque data. Returns success or | ||
70 | * failure status. | ||
71 | */ | ||
72 | extern long prom_getcdata(void *buffer, pcomponent *this); | ||
73 | |||
74 | /* Other misc. component routines. */ | ||
75 | extern pcomponent *prom_childadd(pcomponent *this, pcomponent *tmp, void *data); | ||
76 | extern long prom_delcomponent(pcomponent *this); | ||
77 | extern pcomponent *prom_componentbypath(char *path); | ||
78 | |||
79 | /* This is called at prom_init time to identify the | 56 | /* This is called at prom_init time to identify the |
80 | * ARC architecture we are running on | 57 | * ARC architecture we are running on |
81 | */ | 58 | */ |
@@ -85,39 +62,16 @@ extern void prom_identify_arch(void); | |||
85 | extern PCHAR ArcGetEnvironmentVariable(PCHAR name); | 62 | extern PCHAR ArcGetEnvironmentVariable(PCHAR name); |
86 | extern LONG ArcSetEnvironmentVariable(PCHAR name, PCHAR value); | 63 | extern LONG ArcSetEnvironmentVariable(PCHAR name, PCHAR value); |
87 | 64 | ||
88 | /* ARCS command line acquisition and parsing. */ | 65 | /* ARCS command line parsing. */ |
89 | extern char *prom_getcmdline(void); | ||
90 | extern void prom_init_cmdline(void); | 66 | extern void prom_init_cmdline(void); |
91 | 67 | ||
92 | /* Acquiring info about the current time, etc. */ | ||
93 | extern struct linux_tinfo *prom_gettinfo(void); | ||
94 | extern unsigned long prom_getrtime(void); | ||
95 | |||
96 | /* File operations. */ | 68 | /* File operations. */ |
97 | extern long prom_getvdirent(unsigned long fd, struct linux_vdirent *ent, unsigned long num, unsigned long *cnt); | ||
98 | extern long prom_open(char *name, enum linux_omode md, unsigned long *fd); | ||
99 | extern long prom_close(unsigned long fd); | ||
100 | extern LONG ArcRead(ULONG fd, PVOID buf, ULONG num, PULONG cnt); | 69 | extern LONG ArcRead(ULONG fd, PVOID buf, ULONG num, PULONG cnt); |
101 | extern long prom_getrstatus(unsigned long fd); | ||
102 | extern LONG ArcWrite(ULONG fd, PVOID buf, ULONG num, PULONG cnt); | 70 | extern LONG ArcWrite(ULONG fd, PVOID buf, ULONG num, PULONG cnt); |
103 | extern long prom_seek(unsigned long fd, struct linux_bigint *off, enum linux_seekmode sm); | ||
104 | extern long prom_mount(char *name, enum linux_mountops op); | ||
105 | extern long prom_getfinfo(unsigned long fd, struct linux_finfo *buf); | ||
106 | extern long prom_setfinfo(unsigned long fd, unsigned long flags, unsigned long msk); | ||
107 | |||
108 | /* Running stand-along programs. */ | ||
109 | extern long prom_load(char *name, unsigned long end, unsigned long *pc, unsigned long *eaddr); | ||
110 | extern long prom_invoke(unsigned long pc, unsigned long sp, long argc, char **argv, char **envp); | ||
111 | extern long prom_exec(char *name, long argc, char **argv, char **envp); | ||
112 | 71 | ||
113 | /* Misc. routines. */ | 72 | /* Misc. routines. */ |
114 | extern VOID prom_halt(VOID) __attribute__((noreturn)); | ||
115 | extern VOID prom_powerdown(VOID) __attribute__((noreturn)); | ||
116 | extern VOID prom_restart(VOID) __attribute__((noreturn)); | ||
117 | extern VOID ArcReboot(VOID) __attribute__((noreturn)); | 73 | extern VOID ArcReboot(VOID) __attribute__((noreturn)); |
118 | extern VOID ArcEnterInteractiveMode(VOID) __attribute__((noreturn)); | 74 | extern VOID ArcEnterInteractiveMode(VOID) __attribute__((noreturn)); |
119 | extern long prom_cfgsave(VOID); | ||
120 | extern struct linux_sysid *prom_getsysid(VOID); | ||
121 | extern VOID ArcFlushAllCaches(VOID); | 75 | extern VOID ArcFlushAllCaches(VOID); |
122 | extern DISPLAY_STATUS *ArcGetDisplayStatus(ULONG FileID); | 76 | extern DISPLAY_STATUS *ArcGetDisplayStatus(ULONG FileID); |
123 | 77 | ||
diff --git a/arch/mips/include/asm/sibyte/bigsur.h b/arch/mips/include/asm/sibyte/bigsur.h index ebefe797fc1d..2d1a26d3436a 100644 --- a/arch/mips/include/asm/sibyte/bigsur.h +++ b/arch/mips/include/asm/sibyte/bigsur.h | |||
@@ -46,4 +46,3 @@ | |||
46 | #endif | 46 | #endif |
47 | 47 | ||
48 | #endif /* __ASM_SIBYTE_BIGSUR_H */ | 48 | #endif /* __ASM_SIBYTE_BIGSUR_H */ |
49 | |||
diff --git a/arch/mips/include/asm/sibyte/sb1250_ldt.h b/arch/mips/include/asm/sibyte/sb1250_ldt.h index 081e8b1c4ad0..1e76cf137995 100644 --- a/arch/mips/include/asm/sibyte/sb1250_ldt.h +++ b/arch/mips/include/asm/sibyte/sb1250_ldt.h | |||
@@ -420,4 +420,3 @@ | |||
420 | #endif /* 1250 PASS2 || 112x PASS1 */ | 420 | #endif /* 1250 PASS2 || 112x PASS1 */ |
421 | 421 | ||
422 | #endif | 422 | #endif |
423 | |||
diff --git a/arch/mips/include/asm/sibyte/sb1250_mac.h b/arch/mips/include/asm/sibyte/sb1250_mac.h index b6faf08ca81d..591b9061fd8e 100644 --- a/arch/mips/include/asm/sibyte/sb1250_mac.h +++ b/arch/mips/include/asm/sibyte/sb1250_mac.h | |||
@@ -212,7 +212,7 @@ | |||
212 | #define G_MAC_TXD_WEIGHT1(x) _SB_GETVALUE(x, S_MAC_TXD_WEIGHT1, M_MAC_TXD_WEIGHT1) | 212 | #define G_MAC_TXD_WEIGHT1(x) _SB_GETVALUE(x, S_MAC_TXD_WEIGHT1, M_MAC_TXD_WEIGHT1) |
213 | 213 | ||
214 | /* | 214 | /* |
215 | * MAC Fifo Threshhold registers (Table 9-14) | 215 | * MAC Fifo Threshold registers (Table 9-14) |
216 | * Register: MAC_THRSH_CFG_0 | 216 | * Register: MAC_THRSH_CFG_0 |
217 | * Register: MAC_THRSH_CFG_1 | 217 | * Register: MAC_THRSH_CFG_1 |
218 | * Register: MAC_THRSH_CFG_2 | 218 | * Register: MAC_THRSH_CFG_2 |
diff --git a/arch/mips/include/asm/sn/klkernvars.h b/arch/mips/include/asm/sn/klkernvars.h index 5de4c5e8ab30..6af25ba41ade 100644 --- a/arch/mips/include/asm/sn/klkernvars.h +++ b/arch/mips/include/asm/sn/klkernvars.h | |||
@@ -26,4 +26,3 @@ typedef struct kern_vars_s { | |||
26 | #endif /* !__ASSEMBLY__ */ | 26 | #endif /* !__ASSEMBLY__ */ |
27 | 27 | ||
28 | #endif /* __ASM_SN_KLKERNVARS_H */ | 28 | #endif /* __ASM_SN_KLKERNVARS_H */ |
29 | |||
diff --git a/arch/mips/include/asm/sn/sn0/hubio.h b/arch/mips/include/asm/sn/sn0/hubio.h index d0c29d4de084..31c76c021bb6 100644 --- a/arch/mips/include/asm/sn/sn0/hubio.h +++ b/arch/mips/include/asm/sn/sn0/hubio.h | |||
@@ -825,7 +825,7 @@ typedef union iprb_u { | |||
825 | struct { | 825 | struct { |
826 | u64 rsvd1: 15, | 826 | u64 rsvd1: 15, |
827 | error: 1, /* Widget rcvd wr resp pkt w/ error */ | 827 | error: 1, /* Widget rcvd wr resp pkt w/ error */ |
828 | ovflow: 5, /* Over flow count. perf measurement */ | 828 | ovflow: 5, /* Overflow count. perf measurement */ |
829 | fire_and_forget: 1, /* Launch Write without response */ | 829 | fire_and_forget: 1, /* Launch Write without response */ |
830 | mode: 2, /* Widget operation Mode */ | 830 | mode: 2, /* Widget operation Mode */ |
831 | rsvd2: 2, | 831 | rsvd2: 2, |
diff --git a/arch/mips/include/asm/socket.h b/arch/mips/include/asm/socket.h index ae05accd9fe4..9de5190f2487 100644 --- a/arch/mips/include/asm/socket.h +++ b/arch/mips/include/asm/socket.h | |||
@@ -80,6 +80,8 @@ To add: #define SO_REUSEPORT 0x0200 /* Allow local address and port reuse. */ | |||
80 | #define SO_TIMESTAMPING 37 | 80 | #define SO_TIMESTAMPING 37 |
81 | #define SCM_TIMESTAMPING SO_TIMESTAMPING | 81 | #define SCM_TIMESTAMPING SO_TIMESTAMPING |
82 | 82 | ||
83 | #define SO_RXQ_OVFL 40 | ||
84 | |||
83 | #ifdef __KERNEL__ | 85 | #ifdef __KERNEL__ |
84 | 86 | ||
85 | /** sock_type - Socket types | 87 | /** sock_type - Socket types |
diff --git a/arch/mips/include/asm/sparsemem.h b/arch/mips/include/asm/sparsemem.h index 795ac6c23203..7165333ad043 100644 --- a/arch/mips/include/asm/sparsemem.h +++ b/arch/mips/include/asm/sparsemem.h | |||
@@ -11,4 +11,3 @@ | |||
11 | 11 | ||
12 | #endif /* CONFIG_SPARSEMEM */ | 12 | #endif /* CONFIG_SPARSEMEM */ |
13 | #endif /* _MIPS_SPARSEMEM_H */ | 13 | #endif /* _MIPS_SPARSEMEM_H */ |
14 | |||
diff --git a/arch/mips/include/asm/spinlock.h b/arch/mips/include/asm/spinlock.h index 5b60a09a0f08..396e402fbe2c 100644 --- a/arch/mips/include/asm/spinlock.h +++ b/arch/mips/include/asm/spinlock.h | |||
@@ -34,55 +34,55 @@ | |||
34 | * becomes equal to the the initial value of the tail. | 34 | * becomes equal to the the initial value of the tail. |
35 | */ | 35 | */ |
36 | 36 | ||
37 | static inline int __raw_spin_is_locked(raw_spinlock_t *lock) | 37 | static inline int arch_spin_is_locked(arch_spinlock_t *lock) |
38 | { | 38 | { |
39 | unsigned int counters = ACCESS_ONCE(lock->lock); | 39 | u32 counters = ACCESS_ONCE(lock->lock); |
40 | 40 | ||
41 | return ((counters >> 14) ^ counters) & 0x1fff; | 41 | return ((counters >> 16) ^ counters) & 0xffff; |
42 | } | 42 | } |
43 | 43 | ||
44 | #define __raw_spin_lock_flags(lock, flags) __raw_spin_lock(lock) | 44 | #define arch_spin_lock_flags(lock, flags) arch_spin_lock(lock) |
45 | #define __raw_spin_unlock_wait(x) \ | 45 | #define arch_spin_unlock_wait(x) \ |
46 | while (__raw_spin_is_locked(x)) { cpu_relax(); } | 46 | while (arch_spin_is_locked(x)) { cpu_relax(); } |
47 | 47 | ||
48 | static inline int __raw_spin_is_contended(raw_spinlock_t *lock) | 48 | static inline int arch_spin_is_contended(arch_spinlock_t *lock) |
49 | { | 49 | { |
50 | unsigned int counters = ACCESS_ONCE(lock->lock); | 50 | u32 counters = ACCESS_ONCE(lock->lock); |
51 | 51 | ||
52 | return (((counters >> 14) - counters) & 0x1fff) > 1; | 52 | return (((counters >> 16) - counters) & 0xffff) > 1; |
53 | } | 53 | } |
54 | #define __raw_spin_is_contended __raw_spin_is_contended | 54 | #define arch_spin_is_contended arch_spin_is_contended |
55 | 55 | ||
56 | static inline void __raw_spin_lock(raw_spinlock_t *lock) | 56 | static inline void arch_spin_lock(arch_spinlock_t *lock) |
57 | { | 57 | { |
58 | int my_ticket; | 58 | int my_ticket; |
59 | int tmp; | 59 | int tmp; |
60 | int inc = 0x10000; | ||
60 | 61 | ||
61 | if (R10000_LLSC_WAR) { | 62 | if (R10000_LLSC_WAR) { |
62 | __asm__ __volatile__ ( | 63 | __asm__ __volatile__ ( |
63 | " .set push # __raw_spin_lock \n" | 64 | " .set push # arch_spin_lock \n" |
64 | " .set noreorder \n" | 65 | " .set noreorder \n" |
65 | " \n" | 66 | " \n" |
66 | "1: ll %[ticket], %[ticket_ptr] \n" | 67 | "1: ll %[ticket], %[ticket_ptr] \n" |
67 | " addiu %[my_ticket], %[ticket], 0x4000 \n" | 68 | " addu %[my_ticket], %[ticket], %[inc] \n" |
68 | " sc %[my_ticket], %[ticket_ptr] \n" | 69 | " sc %[my_ticket], %[ticket_ptr] \n" |
69 | " beqzl %[my_ticket], 1b \n" | 70 | " beqzl %[my_ticket], 1b \n" |
70 | " nop \n" | 71 | " nop \n" |
71 | " srl %[my_ticket], %[ticket], 14 \n" | 72 | " srl %[my_ticket], %[ticket], 16 \n" |
72 | " andi %[my_ticket], %[my_ticket], 0x1fff \n" | 73 | " andi %[ticket], %[ticket], 0xffff \n" |
73 | " andi %[ticket], %[ticket], 0x1fff \n" | 74 | " andi %[my_ticket], %[my_ticket], 0xffff \n" |
74 | " bne %[ticket], %[my_ticket], 4f \n" | 75 | " bne %[ticket], %[my_ticket], 4f \n" |
75 | " subu %[ticket], %[my_ticket], %[ticket] \n" | 76 | " subu %[ticket], %[my_ticket], %[ticket] \n" |
76 | "2: \n" | 77 | "2: \n" |
77 | " .subsection 2 \n" | 78 | " .subsection 2 \n" |
78 | "4: andi %[ticket], %[ticket], 0x1fff \n" | 79 | "4: andi %[ticket], %[ticket], 0xffff \n" |
79 | " sll %[ticket], 5 \n" | 80 | " sll %[ticket], 5 \n" |
80 | " \n" | 81 | " \n" |
81 | "6: bnez %[ticket], 6b \n" | 82 | "6: bnez %[ticket], 6b \n" |
82 | " subu %[ticket], 1 \n" | 83 | " subu %[ticket], 1 \n" |
83 | " \n" | 84 | " \n" |
84 | " lw %[ticket], %[ticket_ptr] \n" | 85 | " lhu %[ticket], %[serving_now_ptr] \n" |
85 | " andi %[ticket], %[ticket], 0x1fff \n" | ||
86 | " beq %[ticket], %[my_ticket], 2b \n" | 86 | " beq %[ticket], %[my_ticket], 2b \n" |
87 | " subu %[ticket], %[my_ticket], %[ticket] \n" | 87 | " subu %[ticket], %[my_ticket], %[ticket] \n" |
88 | " b 4b \n" | 88 | " b 4b \n" |
@@ -90,36 +90,33 @@ static inline void __raw_spin_lock(raw_spinlock_t *lock) | |||
90 | " .previous \n" | 90 | " .previous \n" |
91 | " .set pop \n" | 91 | " .set pop \n" |
92 | : [ticket_ptr] "+m" (lock->lock), | 92 | : [ticket_ptr] "+m" (lock->lock), |
93 | [serving_now_ptr] "+m" (lock->h.serving_now), | ||
93 | [ticket] "=&r" (tmp), | 94 | [ticket] "=&r" (tmp), |
94 | [my_ticket] "=&r" (my_ticket)); | 95 | [my_ticket] "=&r" (my_ticket) |
96 | : [inc] "r" (inc)); | ||
95 | } else { | 97 | } else { |
96 | __asm__ __volatile__ ( | 98 | __asm__ __volatile__ ( |
97 | " .set push # __raw_spin_lock \n" | 99 | " .set push # arch_spin_lock \n" |
98 | " .set noreorder \n" | 100 | " .set noreorder \n" |
99 | " \n" | 101 | " \n" |
100 | " ll %[ticket], %[ticket_ptr] \n" | 102 | "1: ll %[ticket], %[ticket_ptr] \n" |
101 | "1: addiu %[my_ticket], %[ticket], 0x4000 \n" | 103 | " addu %[my_ticket], %[ticket], %[inc] \n" |
102 | " sc %[my_ticket], %[ticket_ptr] \n" | 104 | " sc %[my_ticket], %[ticket_ptr] \n" |
103 | " beqz %[my_ticket], 3f \n" | 105 | " beqz %[my_ticket], 1b \n" |
104 | " nop \n" | 106 | " srl %[my_ticket], %[ticket], 16 \n" |
105 | " srl %[my_ticket], %[ticket], 14 \n" | 107 | " andi %[ticket], %[ticket], 0xffff \n" |
106 | " andi %[my_ticket], %[my_ticket], 0x1fff \n" | 108 | " andi %[my_ticket], %[my_ticket], 0xffff \n" |
107 | " andi %[ticket], %[ticket], 0x1fff \n" | ||
108 | " bne %[ticket], %[my_ticket], 4f \n" | 109 | " bne %[ticket], %[my_ticket], 4f \n" |
109 | " subu %[ticket], %[my_ticket], %[ticket] \n" | 110 | " subu %[ticket], %[my_ticket], %[ticket] \n" |
110 | "2: \n" | 111 | "2: \n" |
111 | " .subsection 2 \n" | 112 | " .subsection 2 \n" |
112 | "3: b 1b \n" | ||
113 | " ll %[ticket], %[ticket_ptr] \n" | ||
114 | " \n" | ||
115 | "4: andi %[ticket], %[ticket], 0x1fff \n" | 113 | "4: andi %[ticket], %[ticket], 0x1fff \n" |
116 | " sll %[ticket], 5 \n" | 114 | " sll %[ticket], 5 \n" |
117 | " \n" | 115 | " \n" |
118 | "6: bnez %[ticket], 6b \n" | 116 | "6: bnez %[ticket], 6b \n" |
119 | " subu %[ticket], 1 \n" | 117 | " subu %[ticket], 1 \n" |
120 | " \n" | 118 | " \n" |
121 | " lw %[ticket], %[ticket_ptr] \n" | 119 | " lhu %[ticket], %[serving_now_ptr] \n" |
122 | " andi %[ticket], %[ticket], 0x1fff \n" | ||
123 | " beq %[ticket], %[my_ticket], 2b \n" | 120 | " beq %[ticket], %[my_ticket], 2b \n" |
124 | " subu %[ticket], %[my_ticket], %[ticket] \n" | 121 | " subu %[ticket], %[my_ticket], %[ticket] \n" |
125 | " b 4b \n" | 122 | " b 4b \n" |
@@ -127,68 +124,39 @@ static inline void __raw_spin_lock(raw_spinlock_t *lock) | |||
127 | " .previous \n" | 124 | " .previous \n" |
128 | " .set pop \n" | 125 | " .set pop \n" |
129 | : [ticket_ptr] "+m" (lock->lock), | 126 | : [ticket_ptr] "+m" (lock->lock), |
127 | [serving_now_ptr] "+m" (lock->h.serving_now), | ||
130 | [ticket] "=&r" (tmp), | 128 | [ticket] "=&r" (tmp), |
131 | [my_ticket] "=&r" (my_ticket)); | 129 | [my_ticket] "=&r" (my_ticket) |
130 | : [inc] "r" (inc)); | ||
132 | } | 131 | } |
133 | 132 | ||
134 | smp_llsc_mb(); | 133 | smp_llsc_mb(); |
135 | } | 134 | } |
136 | 135 | ||
137 | static inline void __raw_spin_unlock(raw_spinlock_t *lock) | 136 | static inline void arch_spin_unlock(arch_spinlock_t *lock) |
138 | { | 137 | { |
139 | int tmp; | 138 | unsigned int serving_now = lock->h.serving_now + 1; |
140 | 139 | wmb(); | |
141 | smp_llsc_mb(); | 140 | lock->h.serving_now = (u16)serving_now; |
142 | 141 | nudge_writes(); | |
143 | if (R10000_LLSC_WAR) { | ||
144 | __asm__ __volatile__ ( | ||
145 | " # __raw_spin_unlock \n" | ||
146 | "1: ll %[ticket], %[ticket_ptr] \n" | ||
147 | " addiu %[ticket], %[ticket], 1 \n" | ||
148 | " ori %[ticket], %[ticket], 0x2000 \n" | ||
149 | " xori %[ticket], %[ticket], 0x2000 \n" | ||
150 | " sc %[ticket], %[ticket_ptr] \n" | ||
151 | " beqzl %[ticket], 1b \n" | ||
152 | : [ticket_ptr] "+m" (lock->lock), | ||
153 | [ticket] "=&r" (tmp)); | ||
154 | } else { | ||
155 | __asm__ __volatile__ ( | ||
156 | " .set push # __raw_spin_unlock \n" | ||
157 | " .set noreorder \n" | ||
158 | " \n" | ||
159 | " ll %[ticket], %[ticket_ptr] \n" | ||
160 | "1: addiu %[ticket], %[ticket], 1 \n" | ||
161 | " ori %[ticket], %[ticket], 0x2000 \n" | ||
162 | " xori %[ticket], %[ticket], 0x2000 \n" | ||
163 | " sc %[ticket], %[ticket_ptr] \n" | ||
164 | " beqz %[ticket], 2f \n" | ||
165 | " nop \n" | ||
166 | " \n" | ||
167 | " .subsection 2 \n" | ||
168 | "2: b 1b \n" | ||
169 | " ll %[ticket], %[ticket_ptr] \n" | ||
170 | " .previous \n" | ||
171 | " .set pop \n" | ||
172 | : [ticket_ptr] "+m" (lock->lock), | ||
173 | [ticket] "=&r" (tmp)); | ||
174 | } | ||
175 | } | 142 | } |
176 | 143 | ||
177 | static inline unsigned int __raw_spin_trylock(raw_spinlock_t *lock) | 144 | static inline unsigned int arch_spin_trylock(arch_spinlock_t *lock) |
178 | { | 145 | { |
179 | int tmp, tmp2, tmp3; | 146 | int tmp, tmp2, tmp3; |
147 | int inc = 0x10000; | ||
180 | 148 | ||
181 | if (R10000_LLSC_WAR) { | 149 | if (R10000_LLSC_WAR) { |
182 | __asm__ __volatile__ ( | 150 | __asm__ __volatile__ ( |
183 | " .set push # __raw_spin_trylock \n" | 151 | " .set push # arch_spin_trylock \n" |
184 | " .set noreorder \n" | 152 | " .set noreorder \n" |
185 | " \n" | 153 | " \n" |
186 | "1: ll %[ticket], %[ticket_ptr] \n" | 154 | "1: ll %[ticket], %[ticket_ptr] \n" |
187 | " srl %[my_ticket], %[ticket], 14 \n" | 155 | " srl %[my_ticket], %[ticket], 16 \n" |
188 | " andi %[my_ticket], %[my_ticket], 0x1fff \n" | 156 | " andi %[my_ticket], %[my_ticket], 0xffff \n" |
189 | " andi %[now_serving], %[ticket], 0x1fff \n" | 157 | " andi %[now_serving], %[ticket], 0xffff \n" |
190 | " bne %[my_ticket], %[now_serving], 3f \n" | 158 | " bne %[my_ticket], %[now_serving], 3f \n" |
191 | " addiu %[ticket], %[ticket], 0x4000 \n" | 159 | " addu %[ticket], %[ticket], %[inc] \n" |
192 | " sc %[ticket], %[ticket_ptr] \n" | 160 | " sc %[ticket], %[ticket_ptr] \n" |
193 | " beqzl %[ticket], 1b \n" | 161 | " beqzl %[ticket], 1b \n" |
194 | " li %[ticket], 1 \n" | 162 | " li %[ticket], 1 \n" |
@@ -201,33 +169,33 @@ static inline unsigned int __raw_spin_trylock(raw_spinlock_t *lock) | |||
201 | : [ticket_ptr] "+m" (lock->lock), | 169 | : [ticket_ptr] "+m" (lock->lock), |
202 | [ticket] "=&r" (tmp), | 170 | [ticket] "=&r" (tmp), |
203 | [my_ticket] "=&r" (tmp2), | 171 | [my_ticket] "=&r" (tmp2), |
204 | [now_serving] "=&r" (tmp3)); | 172 | [now_serving] "=&r" (tmp3) |
173 | : [inc] "r" (inc)); | ||
205 | } else { | 174 | } else { |
206 | __asm__ __volatile__ ( | 175 | __asm__ __volatile__ ( |
207 | " .set push # __raw_spin_trylock \n" | 176 | " .set push # arch_spin_trylock \n" |
208 | " .set noreorder \n" | 177 | " .set noreorder \n" |
209 | " \n" | 178 | " \n" |
210 | " ll %[ticket], %[ticket_ptr] \n" | 179 | "1: ll %[ticket], %[ticket_ptr] \n" |
211 | "1: srl %[my_ticket], %[ticket], 14 \n" | 180 | " srl %[my_ticket], %[ticket], 16 \n" |
212 | " andi %[my_ticket], %[my_ticket], 0x1fff \n" | 181 | " andi %[my_ticket], %[my_ticket], 0xffff \n" |
213 | " andi %[now_serving], %[ticket], 0x1fff \n" | 182 | " andi %[now_serving], %[ticket], 0xffff \n" |
214 | " bne %[my_ticket], %[now_serving], 3f \n" | 183 | " bne %[my_ticket], %[now_serving], 3f \n" |
215 | " addiu %[ticket], %[ticket], 0x4000 \n" | 184 | " addu %[ticket], %[ticket], %[inc] \n" |
216 | " sc %[ticket], %[ticket_ptr] \n" | 185 | " sc %[ticket], %[ticket_ptr] \n" |
217 | " beqz %[ticket], 4f \n" | 186 | " beqz %[ticket], 1b \n" |
218 | " li %[ticket], 1 \n" | 187 | " li %[ticket], 1 \n" |
219 | "2: \n" | 188 | "2: \n" |
220 | " .subsection 2 \n" | 189 | " .subsection 2 \n" |
221 | "3: b 2b \n" | 190 | "3: b 2b \n" |
222 | " li %[ticket], 0 \n" | 191 | " li %[ticket], 0 \n" |
223 | "4: b 1b \n" | ||
224 | " ll %[ticket], %[ticket_ptr] \n" | ||
225 | " .previous \n" | 192 | " .previous \n" |
226 | " .set pop \n" | 193 | " .set pop \n" |
227 | : [ticket_ptr] "+m" (lock->lock), | 194 | : [ticket_ptr] "+m" (lock->lock), |
228 | [ticket] "=&r" (tmp), | 195 | [ticket] "=&r" (tmp), |
229 | [my_ticket] "=&r" (tmp2), | 196 | [my_ticket] "=&r" (tmp2), |
230 | [now_serving] "=&r" (tmp3)); | 197 | [now_serving] "=&r" (tmp3) |
198 | : [inc] "r" (inc)); | ||
231 | } | 199 | } |
232 | 200 | ||
233 | smp_llsc_mb(); | 201 | smp_llsc_mb(); |
@@ -248,21 +216,21 @@ static inline unsigned int __raw_spin_trylock(raw_spinlock_t *lock) | |||
248 | * read_can_lock - would read_trylock() succeed? | 216 | * read_can_lock - would read_trylock() succeed? |
249 | * @lock: the rwlock in question. | 217 | * @lock: the rwlock in question. |
250 | */ | 218 | */ |
251 | #define __raw_read_can_lock(rw) ((rw)->lock >= 0) | 219 | #define arch_read_can_lock(rw) ((rw)->lock >= 0) |
252 | 220 | ||
253 | /* | 221 | /* |
254 | * write_can_lock - would write_trylock() succeed? | 222 | * write_can_lock - would write_trylock() succeed? |
255 | * @lock: the rwlock in question. | 223 | * @lock: the rwlock in question. |
256 | */ | 224 | */ |
257 | #define __raw_write_can_lock(rw) (!(rw)->lock) | 225 | #define arch_write_can_lock(rw) (!(rw)->lock) |
258 | 226 | ||
259 | static inline void __raw_read_lock(raw_rwlock_t *rw) | 227 | static inline void arch_read_lock(arch_rwlock_t *rw) |
260 | { | 228 | { |
261 | unsigned int tmp; | 229 | unsigned int tmp; |
262 | 230 | ||
263 | if (R10000_LLSC_WAR) { | 231 | if (R10000_LLSC_WAR) { |
264 | __asm__ __volatile__( | 232 | __asm__ __volatile__( |
265 | " .set noreorder # __raw_read_lock \n" | 233 | " .set noreorder # arch_read_lock \n" |
266 | "1: ll %1, %2 \n" | 234 | "1: ll %1, %2 \n" |
267 | " bltz %1, 1b \n" | 235 | " bltz %1, 1b \n" |
268 | " addu %1, 1 \n" | 236 | " addu %1, 1 \n" |
@@ -275,7 +243,7 @@ static inline void __raw_read_lock(raw_rwlock_t *rw) | |||
275 | : "memory"); | 243 | : "memory"); |
276 | } else { | 244 | } else { |
277 | __asm__ __volatile__( | 245 | __asm__ __volatile__( |
278 | " .set noreorder # __raw_read_lock \n" | 246 | " .set noreorder # arch_read_lock \n" |
279 | "1: ll %1, %2 \n" | 247 | "1: ll %1, %2 \n" |
280 | " bltz %1, 2f \n" | 248 | " bltz %1, 2f \n" |
281 | " addu %1, 1 \n" | 249 | " addu %1, 1 \n" |
@@ -301,15 +269,15 @@ static inline void __raw_read_lock(raw_rwlock_t *rw) | |||
301 | /* Note the use of sub, not subu which will make the kernel die with an | 269 | /* Note the use of sub, not subu which will make the kernel die with an |
302 | overflow exception if we ever try to unlock an rwlock that is already | 270 | overflow exception if we ever try to unlock an rwlock that is already |
303 | unlocked or is being held by a writer. */ | 271 | unlocked or is being held by a writer. */ |
304 | static inline void __raw_read_unlock(raw_rwlock_t *rw) | 272 | static inline void arch_read_unlock(arch_rwlock_t *rw) |
305 | { | 273 | { |
306 | unsigned int tmp; | 274 | unsigned int tmp; |
307 | 275 | ||
308 | smp_llsc_mb(); | 276 | smp_mb__before_llsc(); |
309 | 277 | ||
310 | if (R10000_LLSC_WAR) { | 278 | if (R10000_LLSC_WAR) { |
311 | __asm__ __volatile__( | 279 | __asm__ __volatile__( |
312 | "1: ll %1, %2 # __raw_read_unlock \n" | 280 | "1: ll %1, %2 # arch_read_unlock \n" |
313 | " sub %1, 1 \n" | 281 | " sub %1, 1 \n" |
314 | " sc %1, %0 \n" | 282 | " sc %1, %0 \n" |
315 | " beqzl %1, 1b \n" | 283 | " beqzl %1, 1b \n" |
@@ -318,7 +286,7 @@ static inline void __raw_read_unlock(raw_rwlock_t *rw) | |||
318 | : "memory"); | 286 | : "memory"); |
319 | } else { | 287 | } else { |
320 | __asm__ __volatile__( | 288 | __asm__ __volatile__( |
321 | " .set noreorder # __raw_read_unlock \n" | 289 | " .set noreorder # arch_read_unlock \n" |
322 | "1: ll %1, %2 \n" | 290 | "1: ll %1, %2 \n" |
323 | " sub %1, 1 \n" | 291 | " sub %1, 1 \n" |
324 | " sc %1, %0 \n" | 292 | " sc %1, %0 \n" |
@@ -335,13 +303,13 @@ static inline void __raw_read_unlock(raw_rwlock_t *rw) | |||
335 | } | 303 | } |
336 | } | 304 | } |
337 | 305 | ||
338 | static inline void __raw_write_lock(raw_rwlock_t *rw) | 306 | static inline void arch_write_lock(arch_rwlock_t *rw) |
339 | { | 307 | { |
340 | unsigned int tmp; | 308 | unsigned int tmp; |
341 | 309 | ||
342 | if (R10000_LLSC_WAR) { | 310 | if (R10000_LLSC_WAR) { |
343 | __asm__ __volatile__( | 311 | __asm__ __volatile__( |
344 | " .set noreorder # __raw_write_lock \n" | 312 | " .set noreorder # arch_write_lock \n" |
345 | "1: ll %1, %2 \n" | 313 | "1: ll %1, %2 \n" |
346 | " bnez %1, 1b \n" | 314 | " bnez %1, 1b \n" |
347 | " lui %1, 0x8000 \n" | 315 | " lui %1, 0x8000 \n" |
@@ -354,7 +322,7 @@ static inline void __raw_write_lock(raw_rwlock_t *rw) | |||
354 | : "memory"); | 322 | : "memory"); |
355 | } else { | 323 | } else { |
356 | __asm__ __volatile__( | 324 | __asm__ __volatile__( |
357 | " .set noreorder # __raw_write_lock \n" | 325 | " .set noreorder # arch_write_lock \n" |
358 | "1: ll %1, %2 \n" | 326 | "1: ll %1, %2 \n" |
359 | " bnez %1, 2f \n" | 327 | " bnez %1, 2f \n" |
360 | " lui %1, 0x8000 \n" | 328 | " lui %1, 0x8000 \n" |
@@ -377,26 +345,26 @@ static inline void __raw_write_lock(raw_rwlock_t *rw) | |||
377 | smp_llsc_mb(); | 345 | smp_llsc_mb(); |
378 | } | 346 | } |
379 | 347 | ||
380 | static inline void __raw_write_unlock(raw_rwlock_t *rw) | 348 | static inline void arch_write_unlock(arch_rwlock_t *rw) |
381 | { | 349 | { |
382 | smp_mb(); | 350 | smp_mb(); |
383 | 351 | ||
384 | __asm__ __volatile__( | 352 | __asm__ __volatile__( |
385 | " # __raw_write_unlock \n" | 353 | " # arch_write_unlock \n" |
386 | " sw $0, %0 \n" | 354 | " sw $0, %0 \n" |
387 | : "=m" (rw->lock) | 355 | : "=m" (rw->lock) |
388 | : "m" (rw->lock) | 356 | : "m" (rw->lock) |
389 | : "memory"); | 357 | : "memory"); |
390 | } | 358 | } |
391 | 359 | ||
392 | static inline int __raw_read_trylock(raw_rwlock_t *rw) | 360 | static inline int arch_read_trylock(arch_rwlock_t *rw) |
393 | { | 361 | { |
394 | unsigned int tmp; | 362 | unsigned int tmp; |
395 | int ret; | 363 | int ret; |
396 | 364 | ||
397 | if (R10000_LLSC_WAR) { | 365 | if (R10000_LLSC_WAR) { |
398 | __asm__ __volatile__( | 366 | __asm__ __volatile__( |
399 | " .set noreorder # __raw_read_trylock \n" | 367 | " .set noreorder # arch_read_trylock \n" |
400 | " li %2, 0 \n" | 368 | " li %2, 0 \n" |
401 | "1: ll %1, %3 \n" | 369 | "1: ll %1, %3 \n" |
402 | " bltz %1, 2f \n" | 370 | " bltz %1, 2f \n" |
@@ -413,7 +381,7 @@ static inline int __raw_read_trylock(raw_rwlock_t *rw) | |||
413 | : "memory"); | 381 | : "memory"); |
414 | } else { | 382 | } else { |
415 | __asm__ __volatile__( | 383 | __asm__ __volatile__( |
416 | " .set noreorder # __raw_read_trylock \n" | 384 | " .set noreorder # arch_read_trylock \n" |
417 | " li %2, 0 \n" | 385 | " li %2, 0 \n" |
418 | "1: ll %1, %3 \n" | 386 | "1: ll %1, %3 \n" |
419 | " bltz %1, 2f \n" | 387 | " bltz %1, 2f \n" |
@@ -433,14 +401,14 @@ static inline int __raw_read_trylock(raw_rwlock_t *rw) | |||
433 | return ret; | 401 | return ret; |
434 | } | 402 | } |
435 | 403 | ||
436 | static inline int __raw_write_trylock(raw_rwlock_t *rw) | 404 | static inline int arch_write_trylock(arch_rwlock_t *rw) |
437 | { | 405 | { |
438 | unsigned int tmp; | 406 | unsigned int tmp; |
439 | int ret; | 407 | int ret; |
440 | 408 | ||
441 | if (R10000_LLSC_WAR) { | 409 | if (R10000_LLSC_WAR) { |
442 | __asm__ __volatile__( | 410 | __asm__ __volatile__( |
443 | " .set noreorder # __raw_write_trylock \n" | 411 | " .set noreorder # arch_write_trylock \n" |
444 | " li %2, 0 \n" | 412 | " li %2, 0 \n" |
445 | "1: ll %1, %3 \n" | 413 | "1: ll %1, %3 \n" |
446 | " bnez %1, 2f \n" | 414 | " bnez %1, 2f \n" |
@@ -457,7 +425,7 @@ static inline int __raw_write_trylock(raw_rwlock_t *rw) | |||
457 | : "memory"); | 425 | : "memory"); |
458 | } else { | 426 | } else { |
459 | __asm__ __volatile__( | 427 | __asm__ __volatile__( |
460 | " .set noreorder # __raw_write_trylock \n" | 428 | " .set noreorder # arch_write_trylock \n" |
461 | " li %2, 0 \n" | 429 | " li %2, 0 \n" |
462 | "1: ll %1, %3 \n" | 430 | "1: ll %1, %3 \n" |
463 | " bnez %1, 2f \n" | 431 | " bnez %1, 2f \n" |
@@ -480,11 +448,11 @@ static inline int __raw_write_trylock(raw_rwlock_t *rw) | |||
480 | return ret; | 448 | return ret; |
481 | } | 449 | } |
482 | 450 | ||
483 | #define __raw_read_lock_flags(lock, flags) __raw_read_lock(lock) | 451 | #define arch_read_lock_flags(lock, flags) arch_read_lock(lock) |
484 | #define __raw_write_lock_flags(lock, flags) __raw_write_lock(lock) | 452 | #define arch_write_lock_flags(lock, flags) arch_write_lock(lock) |
485 | 453 | ||
486 | #define _raw_spin_relax(lock) cpu_relax() | 454 | #define arch_spin_relax(lock) cpu_relax() |
487 | #define _raw_read_relax(lock) cpu_relax() | 455 | #define arch_read_relax(lock) cpu_relax() |
488 | #define _raw_write_relax(lock) cpu_relax() | 456 | #define arch_write_relax(lock) cpu_relax() |
489 | 457 | ||
490 | #endif /* _ASM_SPINLOCK_H */ | 458 | #endif /* _ASM_SPINLOCK_H */ |
diff --git a/arch/mips/include/asm/spinlock_types.h b/arch/mips/include/asm/spinlock_types.h index adeedaa116c1..c52f36013a9d 100644 --- a/arch/mips/include/asm/spinlock_types.h +++ b/arch/mips/include/asm/spinlock_types.h | |||
@@ -5,21 +5,33 @@ | |||
5 | # error "please don't include this file directly" | 5 | # error "please don't include this file directly" |
6 | #endif | 6 | #endif |
7 | 7 | ||
8 | typedef struct { | 8 | #include <linux/types.h> |
9 | |||
10 | #include <asm/byteorder.h> | ||
11 | |||
12 | typedef union { | ||
9 | /* | 13 | /* |
10 | * bits 0..13: serving_now | 14 | * bits 0..15 : serving_now |
11 | * bits 14 : junk data | 15 | * bits 16..31 : ticket |
12 | * bits 15..28: ticket | ||
13 | */ | 16 | */ |
14 | unsigned int lock; | 17 | u32 lock; |
15 | } raw_spinlock_t; | 18 | struct { |
19 | #ifdef __BIG_ENDIAN | ||
20 | u16 ticket; | ||
21 | u16 serving_now; | ||
22 | #else | ||
23 | u16 serving_now; | ||
24 | u16 ticket; | ||
25 | #endif | ||
26 | } h; | ||
27 | } arch_spinlock_t; | ||
16 | 28 | ||
17 | #define __RAW_SPIN_LOCK_UNLOCKED { 0 } | 29 | #define __ARCH_SPIN_LOCK_UNLOCKED { .lock = 0 } |
18 | 30 | ||
19 | typedef struct { | 31 | typedef struct { |
20 | volatile unsigned int lock; | 32 | volatile unsigned int lock; |
21 | } raw_rwlock_t; | 33 | } arch_rwlock_t; |
22 | 34 | ||
23 | #define __RAW_RW_LOCK_UNLOCKED { 0 } | 35 | #define __ARCH_RW_LOCK_UNLOCKED { 0 } |
24 | 36 | ||
25 | #endif | 37 | #endif |
diff --git a/arch/mips/include/asm/stackframe.h b/arch/mips/include/asm/stackframe.h index db0fa7b5aeaf..58730c5ce4bf 100644 --- a/arch/mips/include/asm/stackframe.h +++ b/arch/mips/include/asm/stackframe.h | |||
@@ -51,9 +51,6 @@ | |||
51 | LONG_S v1, PT_ACX(sp) | 51 | LONG_S v1, PT_ACX(sp) |
52 | #else | 52 | #else |
53 | mfhi v1 | 53 | mfhi v1 |
54 | LONG_S v1, PT_HI(sp) | ||
55 | mflo v1 | ||
56 | LONG_S v1, PT_LO(sp) | ||
57 | #endif | 54 | #endif |
58 | #ifdef CONFIG_32BIT | 55 | #ifdef CONFIG_32BIT |
59 | LONG_S $8, PT_R8(sp) | 56 | LONG_S $8, PT_R8(sp) |
@@ -62,10 +59,17 @@ | |||
62 | LONG_S $10, PT_R10(sp) | 59 | LONG_S $10, PT_R10(sp) |
63 | LONG_S $11, PT_R11(sp) | 60 | LONG_S $11, PT_R11(sp) |
64 | LONG_S $12, PT_R12(sp) | 61 | LONG_S $12, PT_R12(sp) |
62 | #ifndef CONFIG_CPU_HAS_SMARTMIPS | ||
63 | LONG_S v1, PT_HI(sp) | ||
64 | mflo v1 | ||
65 | #endif | ||
65 | LONG_S $13, PT_R13(sp) | 66 | LONG_S $13, PT_R13(sp) |
66 | LONG_S $14, PT_R14(sp) | 67 | LONG_S $14, PT_R14(sp) |
67 | LONG_S $15, PT_R15(sp) | 68 | LONG_S $15, PT_R15(sp) |
68 | LONG_S $24, PT_R24(sp) | 69 | LONG_S $24, PT_R24(sp) |
70 | #ifndef CONFIG_CPU_HAS_SMARTMIPS | ||
71 | LONG_S v1, PT_LO(sp) | ||
72 | #endif | ||
69 | .endm | 73 | .endm |
70 | 74 | ||
71 | .macro SAVE_STATIC | 75 | .macro SAVE_STATIC |
@@ -83,15 +87,19 @@ | |||
83 | #ifdef CONFIG_SMP | 87 | #ifdef CONFIG_SMP |
84 | #ifdef CONFIG_MIPS_MT_SMTC | 88 | #ifdef CONFIG_MIPS_MT_SMTC |
85 | #define PTEBASE_SHIFT 19 /* TCBIND */ | 89 | #define PTEBASE_SHIFT 19 /* TCBIND */ |
90 | #define CPU_ID_REG CP0_TCBIND | ||
91 | #define CPU_ID_MFC0 mfc0 | ||
92 | #elif defined(CONFIG_MIPS_PGD_C0_CONTEXT) | ||
93 | #define PTEBASE_SHIFT 48 /* XCONTEXT */ | ||
94 | #define CPU_ID_REG CP0_XCONTEXT | ||
95 | #define CPU_ID_MFC0 MFC0 | ||
86 | #else | 96 | #else |
87 | #define PTEBASE_SHIFT 23 /* CONTEXT */ | 97 | #define PTEBASE_SHIFT 23 /* CONTEXT */ |
98 | #define CPU_ID_REG CP0_CONTEXT | ||
99 | #define CPU_ID_MFC0 MFC0 | ||
88 | #endif | 100 | #endif |
89 | .macro get_saved_sp /* SMP variation */ | 101 | .macro get_saved_sp /* SMP variation */ |
90 | #ifdef CONFIG_MIPS_MT_SMTC | 102 | CPU_ID_MFC0 k0, CPU_ID_REG |
91 | mfc0 k0, CP0_TCBIND | ||
92 | #else | ||
93 | MFC0 k0, CP0_CONTEXT | ||
94 | #endif | ||
95 | #if defined(CONFIG_32BIT) || defined(KBUILD_64BIT_SYM32) | 103 | #if defined(CONFIG_32BIT) || defined(KBUILD_64BIT_SYM32) |
96 | lui k1, %hi(kernelsp) | 104 | lui k1, %hi(kernelsp) |
97 | #else | 105 | #else |
@@ -107,16 +115,31 @@ | |||
107 | .endm | 115 | .endm |
108 | 116 | ||
109 | .macro set_saved_sp stackp temp temp2 | 117 | .macro set_saved_sp stackp temp temp2 |
110 | #ifdef CONFIG_MIPS_MT_SMTC | 118 | CPU_ID_MFC0 \temp, CPU_ID_REG |
111 | mfc0 \temp, CP0_TCBIND | ||
112 | #else | ||
113 | MFC0 \temp, CP0_CONTEXT | ||
114 | #endif | ||
115 | LONG_SRL \temp, PTEBASE_SHIFT | 119 | LONG_SRL \temp, PTEBASE_SHIFT |
116 | LONG_S \stackp, kernelsp(\temp) | 120 | LONG_S \stackp, kernelsp(\temp) |
117 | .endm | 121 | .endm |
118 | #else | 122 | #else |
119 | .macro get_saved_sp /* Uniprocessor variation */ | 123 | .macro get_saved_sp /* Uniprocessor variation */ |
124 | #ifdef CONFIG_CPU_JUMP_WORKAROUNDS | ||
125 | /* | ||
126 | * Clear BTB (branch target buffer), forbid RAS (return address | ||
127 | * stack) to workaround the Out-of-order Issue in Loongson2F | ||
128 | * via its diagnostic register. | ||
129 | */ | ||
130 | move k0, ra | ||
131 | jal 1f | ||
132 | nop | ||
133 | 1: jal 1f | ||
134 | nop | ||
135 | 1: jal 1f | ||
136 | nop | ||
137 | 1: jal 1f | ||
138 | nop | ||
139 | 1: move ra, k0 | ||
140 | li k0, 3 | ||
141 | mtc0 k0, $22 | ||
142 | #endif /* CONFIG_CPU_LOONGSON2F */ | ||
120 | #if defined(CONFIG_32BIT) || defined(KBUILD_64BIT_SYM32) | 143 | #if defined(CONFIG_32BIT) || defined(KBUILD_64BIT_SYM32) |
121 | lui k1, %hi(kernelsp) | 144 | lui k1, %hi(kernelsp) |
122 | #else | 145 | #else |
@@ -166,7 +189,6 @@ | |||
166 | LONG_S $0, PT_R0(sp) | 189 | LONG_S $0, PT_R0(sp) |
167 | mfc0 v1, CP0_STATUS | 190 | mfc0 v1, CP0_STATUS |
168 | LONG_S $2, PT_R2(sp) | 191 | LONG_S $2, PT_R2(sp) |
169 | LONG_S v1, PT_STATUS(sp) | ||
170 | #ifdef CONFIG_MIPS_MT_SMTC | 192 | #ifdef CONFIG_MIPS_MT_SMTC |
171 | /* | 193 | /* |
172 | * Ideally, these instructions would be shuffled in | 194 | * Ideally, these instructions would be shuffled in |
@@ -178,20 +200,21 @@ | |||
178 | LONG_S v1, PT_TCSTATUS(sp) | 200 | LONG_S v1, PT_TCSTATUS(sp) |
179 | #endif /* CONFIG_MIPS_MT_SMTC */ | 201 | #endif /* CONFIG_MIPS_MT_SMTC */ |
180 | LONG_S $4, PT_R4(sp) | 202 | LONG_S $4, PT_R4(sp) |
181 | mfc0 v1, CP0_CAUSE | ||
182 | LONG_S $5, PT_R5(sp) | 203 | LONG_S $5, PT_R5(sp) |
183 | LONG_S v1, PT_CAUSE(sp) | 204 | LONG_S v1, PT_STATUS(sp) |
205 | mfc0 v1, CP0_CAUSE | ||
184 | LONG_S $6, PT_R6(sp) | 206 | LONG_S $6, PT_R6(sp) |
185 | MFC0 v1, CP0_EPC | ||
186 | LONG_S $7, PT_R7(sp) | 207 | LONG_S $7, PT_R7(sp) |
208 | LONG_S v1, PT_CAUSE(sp) | ||
209 | MFC0 v1, CP0_EPC | ||
187 | #ifdef CONFIG_64BIT | 210 | #ifdef CONFIG_64BIT |
188 | LONG_S $8, PT_R8(sp) | 211 | LONG_S $8, PT_R8(sp) |
189 | LONG_S $9, PT_R9(sp) | 212 | LONG_S $9, PT_R9(sp) |
190 | #endif | 213 | #endif |
191 | LONG_S v1, PT_EPC(sp) | ||
192 | LONG_S $25, PT_R25(sp) | 214 | LONG_S $25, PT_R25(sp) |
193 | LONG_S $28, PT_R28(sp) | 215 | LONG_S $28, PT_R28(sp) |
194 | LONG_S $31, PT_R31(sp) | 216 | LONG_S $31, PT_R31(sp) |
217 | LONG_S v1, PT_EPC(sp) | ||
195 | ori $28, sp, _THREAD_MASK | 218 | ori $28, sp, _THREAD_MASK |
196 | xori $28, _THREAD_MASK | 219 | xori $28, _THREAD_MASK |
197 | #ifdef CONFIG_CPU_CAVIUM_OCTEON | 220 | #ifdef CONFIG_CPU_CAVIUM_OCTEON |
diff --git a/arch/mips/include/asm/system.h b/arch/mips/include/asm/system.h index 83b5509e09e8..bb937ccfba1e 100644 --- a/arch/mips/include/asm/system.h +++ b/arch/mips/include/asm/system.h | |||
@@ -95,6 +95,8 @@ static inline unsigned long __xchg_u32(volatile int * m, unsigned int val) | |||
95 | { | 95 | { |
96 | __u32 retval; | 96 | __u32 retval; |
97 | 97 | ||
98 | smp_mb__before_llsc(); | ||
99 | |||
98 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 100 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
99 | unsigned long dummy; | 101 | unsigned long dummy; |
100 | 102 | ||
@@ -147,6 +149,8 @@ static inline __u64 __xchg_u64(volatile __u64 * m, __u64 val) | |||
147 | { | 149 | { |
148 | __u64 retval; | 150 | __u64 retval; |
149 | 151 | ||
152 | smp_mb__before_llsc(); | ||
153 | |||
150 | if (kernel_uses_llsc && R10000_LLSC_WAR) { | 154 | if (kernel_uses_llsc && R10000_LLSC_WAR) { |
151 | unsigned long dummy; | 155 | unsigned long dummy; |
152 | 156 | ||
diff --git a/arch/mips/include/asm/time.h b/arch/mips/include/asm/time.h index df6a430de5eb..c7f1bfef1574 100644 --- a/arch/mips/include/asm/time.h +++ b/arch/mips/include/asm/time.h | |||
@@ -84,8 +84,16 @@ static inline int init_mips_clocksource(void) | |||
84 | #endif | 84 | #endif |
85 | } | 85 | } |
86 | 86 | ||
87 | extern void clocksource_set_clock(struct clocksource *cs, unsigned int clock); | 87 | static inline void clocksource_set_clock(struct clocksource *cs, |
88 | extern void clockevent_set_clock(struct clock_event_device *cd, | 88 | unsigned int clock) |
89 | unsigned int clock); | 89 | { |
90 | clocksource_calc_mult_shift(cs, clock, 4); | ||
91 | } | ||
92 | |||
93 | static inline void clockevent_set_clock(struct clock_event_device *cd, | ||
94 | unsigned int clock) | ||
95 | { | ||
96 | clockevents_calc_mult_shift(cd, clock, 4); | ||
97 | } | ||
90 | 98 | ||
91 | #endif /* _ASM_TIME_H */ | 99 | #endif /* _ASM_TIME_H */ |
diff --git a/arch/mips/include/asm/txx9/generic.h b/arch/mips/include/asm/txx9/generic.h index 827dc22be2ea..64887d3c7ec3 100644 --- a/arch/mips/include/asm/txx9/generic.h +++ b/arch/mips/include/asm/txx9/generic.h | |||
@@ -42,7 +42,6 @@ struct txx9_board_vec { | |||
42 | }; | 42 | }; |
43 | extern struct txx9_board_vec *txx9_board_vec; | 43 | extern struct txx9_board_vec *txx9_board_vec; |
44 | extern int (*txx9_irq_dispatch)(int pending); | 44 | extern int (*txx9_irq_dispatch)(int pending); |
45 | char *prom_getcmdline(void); | ||
46 | const char *prom_getenv(const char *name); | 45 | const char *prom_getenv(const char *name); |
47 | void txx9_wdt_init(unsigned long base); | 46 | void txx9_wdt_init(unsigned long base); |
48 | void txx9_wdt_now(unsigned long base); | 47 | void txx9_wdt_now(unsigned long base); |
diff --git a/arch/mips/mm/uasm.h b/arch/mips/include/asm/uasm.h index c6d1e3dd82d4..697e40c06497 100644 --- a/arch/mips/mm/uasm.h +++ b/arch/mips/include/asm/uasm.h | |||
@@ -34,6 +34,11 @@ uasm_i##op(u32 **buf, unsigned int a, signed int b, unsigned int c) | |||
34 | void __cpuinit \ | 34 | void __cpuinit \ |
35 | uasm_i##op(u32 **buf, unsigned int a, unsigned int b, signed int c) | 35 | uasm_i##op(u32 **buf, unsigned int a, unsigned int b, signed int c) |
36 | 36 | ||
37 | #define Ip_u2u1msbu3(op) \ | ||
38 | void __cpuinit \ | ||
39 | uasm_i##op(u32 **buf, unsigned int a, unsigned int b, unsigned int c, \ | ||
40 | unsigned int d) | ||
41 | |||
37 | #define Ip_u1u2(op) \ | 42 | #define Ip_u1u2(op) \ |
38 | void __cpuinit uasm_i##op(u32 **buf, unsigned int a, unsigned int b) | 43 | void __cpuinit uasm_i##op(u32 **buf, unsigned int a, unsigned int b) |
39 | 44 | ||
@@ -65,6 +70,7 @@ Ip_u2u1u3(_dsll32); | |||
65 | Ip_u2u1u3(_dsra); | 70 | Ip_u2u1u3(_dsra); |
66 | Ip_u2u1u3(_dsrl); | 71 | Ip_u2u1u3(_dsrl); |
67 | Ip_u2u1u3(_dsrl32); | 72 | Ip_u2u1u3(_dsrl32); |
73 | Ip_u2u1u3(_drotr); | ||
68 | Ip_u3u1u2(_dsubu); | 74 | Ip_u3u1u2(_dsubu); |
69 | Ip_0(_eret); | 75 | Ip_0(_eret); |
70 | Ip_u1(_j); | 76 | Ip_u1(_j); |
@@ -78,6 +84,7 @@ Ip_u2s3u1(_lw); | |||
78 | Ip_u1u2u3(_mfc0); | 84 | Ip_u1u2u3(_mfc0); |
79 | Ip_u1u2u3(_mtc0); | 85 | Ip_u1u2u3(_mtc0); |
80 | Ip_u2u1u3(_ori); | 86 | Ip_u2u1u3(_ori); |
87 | Ip_u3u1u2(_or); | ||
81 | Ip_u2s3u1(_pref); | 88 | Ip_u2s3u1(_pref); |
82 | Ip_0(_rfe); | 89 | Ip_0(_rfe); |
83 | Ip_u2s3u1(_sc); | 90 | Ip_u2s3u1(_sc); |
@@ -86,13 +93,17 @@ Ip_u2s3u1(_sd); | |||
86 | Ip_u2u1u3(_sll); | 93 | Ip_u2u1u3(_sll); |
87 | Ip_u2u1u3(_sra); | 94 | Ip_u2u1u3(_sra); |
88 | Ip_u2u1u3(_srl); | 95 | Ip_u2u1u3(_srl); |
96 | Ip_u2u1u3(_rotr); | ||
89 | Ip_u3u1u2(_subu); | 97 | Ip_u3u1u2(_subu); |
90 | Ip_u2s3u1(_sw); | 98 | Ip_u2s3u1(_sw); |
91 | Ip_0(_tlbp); | 99 | Ip_0(_tlbp); |
100 | Ip_0(_tlbr); | ||
92 | Ip_0(_tlbwi); | 101 | Ip_0(_tlbwi); |
93 | Ip_0(_tlbwr); | 102 | Ip_0(_tlbwr); |
94 | Ip_u3u1u2(_xor); | 103 | Ip_u3u1u2(_xor); |
95 | Ip_u2u1u3(_xori); | 104 | Ip_u2u1u3(_xori); |
105 | Ip_u2u1msbu3(_dins); | ||
106 | Ip_u1(_syscall); | ||
96 | 107 | ||
97 | /* Handle labels. */ | 108 | /* Handle labels. */ |
98 | struct uasm_label { | 109 | struct uasm_label { |
@@ -122,6 +133,7 @@ static inline void __cpuinit uasm_l##lb(struct uasm_label **lab, u32 *addr) \ | |||
122 | # define UASM_i_SLL(buf, rs, rt, sh) uasm_i_dsll(buf, rs, rt, sh) | 133 | # define UASM_i_SLL(buf, rs, rt, sh) uasm_i_dsll(buf, rs, rt, sh) |
123 | # define UASM_i_SRA(buf, rs, rt, sh) uasm_i_dsra(buf, rs, rt, sh) | 134 | # define UASM_i_SRA(buf, rs, rt, sh) uasm_i_dsra(buf, rs, rt, sh) |
124 | # define UASM_i_SRL(buf, rs, rt, sh) uasm_i_dsrl(buf, rs, rt, sh) | 135 | # define UASM_i_SRL(buf, rs, rt, sh) uasm_i_dsrl(buf, rs, rt, sh) |
136 | # define UASM_i_ROTR(buf, rs, rt, sh) uasm_i_drotr(buf, rs, rt, sh) | ||
125 | # define UASM_i_MFC0(buf, rt, rd...) uasm_i_dmfc0(buf, rt, rd) | 137 | # define UASM_i_MFC0(buf, rt, rd...) uasm_i_dmfc0(buf, rt, rd) |
126 | # define UASM_i_MTC0(buf, rt, rd...) uasm_i_dmtc0(buf, rt, rd) | 138 | # define UASM_i_MTC0(buf, rt, rd...) uasm_i_dmtc0(buf, rt, rd) |
127 | # define UASM_i_ADDIU(buf, rs, rt, val) uasm_i_daddiu(buf, rs, rt, val) | 139 | # define UASM_i_ADDIU(buf, rs, rt, val) uasm_i_daddiu(buf, rs, rt, val) |
@@ -135,6 +147,7 @@ static inline void __cpuinit uasm_l##lb(struct uasm_label **lab, u32 *addr) \ | |||
135 | # define UASM_i_SLL(buf, rs, rt, sh) uasm_i_sll(buf, rs, rt, sh) | 147 | # define UASM_i_SLL(buf, rs, rt, sh) uasm_i_sll(buf, rs, rt, sh) |
136 | # define UASM_i_SRA(buf, rs, rt, sh) uasm_i_sra(buf, rs, rt, sh) | 148 | # define UASM_i_SRA(buf, rs, rt, sh) uasm_i_sra(buf, rs, rt, sh) |
137 | # define UASM_i_SRL(buf, rs, rt, sh) uasm_i_srl(buf, rs, rt, sh) | 149 | # define UASM_i_SRL(buf, rs, rt, sh) uasm_i_srl(buf, rs, rt, sh) |
150 | # define UASM_i_ROTR(buf, rs, rt, sh) uasm_i_rotr(buf, rs, rt, sh) | ||
138 | # define UASM_i_MFC0(buf, rt, rd...) uasm_i_mfc0(buf, rt, rd) | 151 | # define UASM_i_MFC0(buf, rt, rd...) uasm_i_mfc0(buf, rt, rd) |
139 | # define UASM_i_MTC0(buf, rt, rd...) uasm_i_mtc0(buf, rt, rd) | 152 | # define UASM_i_MTC0(buf, rt, rd...) uasm_i_mtc0(buf, rt, rd) |
140 | # define UASM_i_ADDIU(buf, rs, rt, val) uasm_i_addiu(buf, rs, rt, val) | 153 | # define UASM_i_ADDIU(buf, rs, rt, val) uasm_i_addiu(buf, rs, rt, val) |
@@ -154,6 +167,24 @@ static inline void __cpuinit uasm_l##lb(struct uasm_label **lab, u32 *addr) \ | |||
154 | #define uasm_i_ssnop(buf) uasm_i_sll(buf, 0, 0, 1) | 167 | #define uasm_i_ssnop(buf) uasm_i_sll(buf, 0, 0, 1) |
155 | #define uasm_i_ehb(buf) uasm_i_sll(buf, 0, 0, 3) | 168 | #define uasm_i_ehb(buf) uasm_i_sll(buf, 0, 0, 3) |
156 | 169 | ||
170 | static inline void uasm_i_dsrl_safe(u32 **p, unsigned int a1, | ||
171 | unsigned int a2, unsigned int a3) | ||
172 | { | ||
173 | if (a3 < 32) | ||
174 | uasm_i_dsrl(p, a1, a2, a3); | ||
175 | else | ||
176 | uasm_i_dsrl32(p, a1, a2, a3 - 32); | ||
177 | } | ||
178 | |||
179 | static inline void uasm_i_dsll_safe(u32 **p, unsigned int a1, | ||
180 | unsigned int a2, unsigned int a3) | ||
181 | { | ||
182 | if (a3 < 32) | ||
183 | uasm_i_dsll(p, a1, a2, a3); | ||
184 | else | ||
185 | uasm_i_dsll32(p, a1, a2, a3 - 32); | ||
186 | } | ||
187 | |||
157 | /* Handle relocations. */ | 188 | /* Handle relocations. */ |
158 | struct uasm_reloc { | 189 | struct uasm_reloc { |
159 | u32 *addr; | 190 | u32 *addr; |
diff --git a/arch/mips/include/asm/ucontext.h b/arch/mips/include/asm/ucontext.h index 8a4b20e88b81..9bc07b9f30fb 100644 --- a/arch/mips/include/asm/ucontext.h +++ b/arch/mips/include/asm/ucontext.h | |||
@@ -1,21 +1 @@ | |||
1 | /* | #include <asm-generic/ucontext.h> | |
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Low level exception handling | ||
7 | * | ||
8 | * Copyright (C) 1998, 1999 by Ralf Baechle | ||
9 | */ | ||
10 | #ifndef _ASM_UCONTEXT_H | ||
11 | #define _ASM_UCONTEXT_H | ||
12 | |||
13 | struct ucontext { | ||
14 | unsigned long uc_flags; | ||
15 | struct ucontext *uc_link; | ||
16 | stack_t uc_stack; | ||
17 | struct sigcontext uc_mcontext; | ||
18 | sigset_t uc_sigmask; /* mask last for extensibility */ | ||
19 | }; | ||
20 | |||
21 | #endif /* _ASM_UCONTEXT_H */ | ||
diff --git a/arch/mips/include/asm/unistd.h b/arch/mips/include/asm/unistd.h index 8c9dfa9e9018..1b5a6648eb86 100644 --- a/arch/mips/include/asm/unistd.h +++ b/arch/mips/include/asm/unistd.h | |||
@@ -355,16 +355,17 @@ | |||
355 | #define __NR_rt_tgsigqueueinfo (__NR_Linux + 332) | 355 | #define __NR_rt_tgsigqueueinfo (__NR_Linux + 332) |
356 | #define __NR_perf_event_open (__NR_Linux + 333) | 356 | #define __NR_perf_event_open (__NR_Linux + 333) |
357 | #define __NR_accept4 (__NR_Linux + 334) | 357 | #define __NR_accept4 (__NR_Linux + 334) |
358 | #define __NR_recvmmsg (__NR_Linux + 335) | ||
358 | 359 | ||
359 | /* | 360 | /* |
360 | * Offset of the last Linux o32 flavoured syscall | 361 | * Offset of the last Linux o32 flavoured syscall |
361 | */ | 362 | */ |
362 | #define __NR_Linux_syscalls 334 | 363 | #define __NR_Linux_syscalls 335 |
363 | 364 | ||
364 | #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ | 365 | #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ |
365 | 366 | ||
366 | #define __NR_O32_Linux 4000 | 367 | #define __NR_O32_Linux 4000 |
367 | #define __NR_O32_Linux_syscalls 334 | 368 | #define __NR_O32_Linux_syscalls 335 |
368 | 369 | ||
369 | #if _MIPS_SIM == _MIPS_SIM_ABI64 | 370 | #if _MIPS_SIM == _MIPS_SIM_ABI64 |
370 | 371 | ||
@@ -666,16 +667,17 @@ | |||
666 | #define __NR_rt_tgsigqueueinfo (__NR_Linux + 291) | 667 | #define __NR_rt_tgsigqueueinfo (__NR_Linux + 291) |
667 | #define __NR_perf_event_open (__NR_Linux + 292) | 668 | #define __NR_perf_event_open (__NR_Linux + 292) |
668 | #define __NR_accept4 (__NR_Linux + 293) | 669 | #define __NR_accept4 (__NR_Linux + 293) |
670 | #define __NR_recvmmsg (__NR_Linux + 294) | ||
669 | 671 | ||
670 | /* | 672 | /* |
671 | * Offset of the last Linux 64-bit flavoured syscall | 673 | * Offset of the last Linux 64-bit flavoured syscall |
672 | */ | 674 | */ |
673 | #define __NR_Linux_syscalls 293 | 675 | #define __NR_Linux_syscalls 294 |
674 | 676 | ||
675 | #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ | 677 | #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ |
676 | 678 | ||
677 | #define __NR_64_Linux 5000 | 679 | #define __NR_64_Linux 5000 |
678 | #define __NR_64_Linux_syscalls 293 | 680 | #define __NR_64_Linux_syscalls 294 |
679 | 681 | ||
680 | #if _MIPS_SIM == _MIPS_SIM_NABI32 | 682 | #if _MIPS_SIM == _MIPS_SIM_NABI32 |
681 | 683 | ||
@@ -981,16 +983,17 @@ | |||
981 | #define __NR_rt_tgsigqueueinfo (__NR_Linux + 295) | 983 | #define __NR_rt_tgsigqueueinfo (__NR_Linux + 295) |
982 | #define __NR_perf_event_open (__NR_Linux + 296) | 984 | #define __NR_perf_event_open (__NR_Linux + 296) |
983 | #define __NR_accept4 (__NR_Linux + 297) | 985 | #define __NR_accept4 (__NR_Linux + 297) |
986 | #define __NR_recvmmsg (__NR_Linux + 298) | ||
984 | 987 | ||
985 | /* | 988 | /* |
986 | * Offset of the last N32 flavoured syscall | 989 | * Offset of the last N32 flavoured syscall |
987 | */ | 990 | */ |
988 | #define __NR_Linux_syscalls 297 | 991 | #define __NR_Linux_syscalls 298 |
989 | 992 | ||
990 | #endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */ | 993 | #endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */ |
991 | 994 | ||
992 | #define __NR_N32_Linux 6000 | 995 | #define __NR_N32_Linux 6000 |
993 | #define __NR_N32_Linux_syscalls 297 | 996 | #define __NR_N32_Linux_syscalls 298 |
994 | 997 | ||
995 | #ifdef __KERNEL__ | 998 | #ifdef __KERNEL__ |
996 | 999 | ||
@@ -1001,6 +1004,7 @@ | |||
1001 | #define __ARCH_WANT_OLD_READDIR | 1004 | #define __ARCH_WANT_OLD_READDIR |
1002 | #define __ARCH_WANT_SYS_ALARM | 1005 | #define __ARCH_WANT_SYS_ALARM |
1003 | #define __ARCH_WANT_SYS_GETHOSTNAME | 1006 | #define __ARCH_WANT_SYS_GETHOSTNAME |
1007 | #define __ARCH_WANT_SYS_IPC | ||
1004 | #define __ARCH_WANT_SYS_PAUSE | 1008 | #define __ARCH_WANT_SYS_PAUSE |
1005 | #define __ARCH_WANT_SYS_SGETMASK | 1009 | #define __ARCH_WANT_SYS_SGETMASK |
1006 | #define __ARCH_WANT_SYS_UTIME | 1010 | #define __ARCH_WANT_SYS_UTIME |
@@ -1010,6 +1014,7 @@ | |||
1010 | #define __ARCH_WANT_SYS_LLSEEK | 1014 | #define __ARCH_WANT_SYS_LLSEEK |
1011 | #define __ARCH_WANT_SYS_NICE | 1015 | #define __ARCH_WANT_SYS_NICE |
1012 | #define __ARCH_WANT_SYS_OLD_GETRLIMIT | 1016 | #define __ARCH_WANT_SYS_OLD_GETRLIMIT |
1017 | #define __ARCH_WANT_SYS_OLD_UNAME | ||
1013 | #define __ARCH_WANT_SYS_OLDUMOUNT | 1018 | #define __ARCH_WANT_SYS_OLDUMOUNT |
1014 | #define __ARCH_WANT_SYS_SIGPENDING | 1019 | #define __ARCH_WANT_SYS_SIGPENDING |
1015 | #define __ARCH_WANT_SYS_SIGPROCMASK | 1020 | #define __ARCH_WANT_SYS_SIGPROCMASK |
diff --git a/arch/mips/include/asm/vdso.h b/arch/mips/include/asm/vdso.h new file mode 100644 index 000000000000..cca56aa40ff4 --- /dev/null +++ b/arch/mips/include/asm/vdso.h | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 2009 Cavium Networks | ||
7 | */ | ||
8 | |||
9 | #ifndef __ASM_VDSO_H | ||
10 | #define __ASM_VDSO_H | ||
11 | |||
12 | #include <linux/types.h> | ||
13 | |||
14 | |||
15 | #ifdef CONFIG_32BIT | ||
16 | struct mips_vdso { | ||
17 | u32 signal_trampoline[2]; | ||
18 | u32 rt_signal_trampoline[2]; | ||
19 | }; | ||
20 | #else /* !CONFIG_32BIT */ | ||
21 | struct mips_vdso { | ||
22 | u32 o32_signal_trampoline[2]; | ||
23 | u32 o32_rt_signal_trampoline[2]; | ||
24 | u32 rt_signal_trampoline[2]; | ||
25 | u32 n32_rt_signal_trampoline[2]; | ||
26 | }; | ||
27 | #endif /* CONFIG_32BIT */ | ||
28 | |||
29 | #endif /* __ASM_VDSO_H */ | ||
diff --git a/arch/mips/jazz/irq.c b/arch/mips/jazz/irq.c index 7bd32d04c2cc..ee18028efe92 100644 --- a/arch/mips/jazz/irq.c +++ b/arch/mips/jazz/irq.c | |||
@@ -20,17 +20,17 @@ | |||
20 | #include <asm/jazz.h> | 20 | #include <asm/jazz.h> |
21 | #include <asm/pgtable.h> | 21 | #include <asm/pgtable.h> |
22 | 22 | ||
23 | static DEFINE_SPINLOCK(r4030_lock); | 23 | static DEFINE_RAW_SPINLOCK(r4030_lock); |
24 | 24 | ||
25 | static void enable_r4030_irq(unsigned int irq) | 25 | static void enable_r4030_irq(unsigned int irq) |
26 | { | 26 | { |
27 | unsigned int mask = 1 << (irq - JAZZ_IRQ_START); | 27 | unsigned int mask = 1 << (irq - JAZZ_IRQ_START); |
28 | unsigned long flags; | 28 | unsigned long flags; |
29 | 29 | ||
30 | spin_lock_irqsave(&r4030_lock, flags); | 30 | raw_spin_lock_irqsave(&r4030_lock, flags); |
31 | mask |= r4030_read_reg16(JAZZ_IO_IRQ_ENABLE); | 31 | mask |= r4030_read_reg16(JAZZ_IO_IRQ_ENABLE); |
32 | r4030_write_reg16(JAZZ_IO_IRQ_ENABLE, mask); | 32 | r4030_write_reg16(JAZZ_IO_IRQ_ENABLE, mask); |
33 | spin_unlock_irqrestore(&r4030_lock, flags); | 33 | raw_spin_unlock_irqrestore(&r4030_lock, flags); |
34 | } | 34 | } |
35 | 35 | ||
36 | void disable_r4030_irq(unsigned int irq) | 36 | void disable_r4030_irq(unsigned int irq) |
@@ -38,10 +38,10 @@ void disable_r4030_irq(unsigned int irq) | |||
38 | unsigned int mask = ~(1 << (irq - JAZZ_IRQ_START)); | 38 | unsigned int mask = ~(1 << (irq - JAZZ_IRQ_START)); |
39 | unsigned long flags; | 39 | unsigned long flags; |
40 | 40 | ||
41 | spin_lock_irqsave(&r4030_lock, flags); | 41 | raw_spin_lock_irqsave(&r4030_lock, flags); |
42 | mask &= r4030_read_reg16(JAZZ_IO_IRQ_ENABLE); | 42 | mask &= r4030_read_reg16(JAZZ_IO_IRQ_ENABLE); |
43 | r4030_write_reg16(JAZZ_IO_IRQ_ENABLE, mask); | 43 | r4030_write_reg16(JAZZ_IO_IRQ_ENABLE, mask); |
44 | spin_unlock_irqrestore(&r4030_lock, flags); | 44 | raw_spin_unlock_irqrestore(&r4030_lock, flags); |
45 | } | 45 | } |
46 | 46 | ||
47 | static struct irq_chip r4030_irq_type = { | 47 | static struct irq_chip r4030_irq_type = { |
diff --git a/arch/mips/jazz/jazzdma.c b/arch/mips/jazz/jazzdma.c index 0d64d0f46418..9ce9f64cb76f 100644 --- a/arch/mips/jazz/jazzdma.c +++ b/arch/mips/jazz/jazzdma.c | |||
@@ -14,6 +14,7 @@ | |||
14 | #include <linux/mm.h> | 14 | #include <linux/mm.h> |
15 | #include <linux/bootmem.h> | 15 | #include <linux/bootmem.h> |
16 | #include <linux/spinlock.h> | 16 | #include <linux/spinlock.h> |
17 | #include <linux/gfp.h> | ||
17 | #include <asm/mipsregs.h> | 18 | #include <asm/mipsregs.h> |
18 | #include <asm/jazz.h> | 19 | #include <asm/jazz.h> |
19 | #include <asm/io.h> | 20 | #include <asm/io.h> |
diff --git a/arch/mips/jazz/setup.c b/arch/mips/jazz/setup.c index 7043f6b9ff3c..0d0f054a02f4 100644 --- a/arch/mips/jazz/setup.c +++ b/arch/mips/jazz/setup.c | |||
@@ -76,15 +76,9 @@ void __init plat_mem_setup(void) | |||
76 | 76 | ||
77 | #ifdef CONFIG_VT | 77 | #ifdef CONFIG_VT |
78 | screen_info = (struct screen_info) { | 78 | screen_info = (struct screen_info) { |
79 | 0, 0, /* orig-x, orig-y */ | 79 | .orig_video_cols = 160, |
80 | 0, /* unused */ | 80 | .orig_video_lines = 64, |
81 | 0, /* orig_video_page */ | 81 | .orig_video_points = 16, |
82 | 0, /* orig_video_mode */ | ||
83 | 160, /* orig_video_cols */ | ||
84 | 0, 0, 0, /* unused, ega_bx, unused */ | ||
85 | 64, /* orig_video_lines */ | ||
86 | 0, /* orig_video_isVGA */ | ||
87 | 16 /* orig_video_points */ | ||
88 | }; | 82 | }; |
89 | #endif | 83 | #endif |
90 | 84 | ||
diff --git a/arch/mips/kernel/Makefile b/arch/mips/kernel/Makefile index eecd2a9f155c..7a6ac501cbb5 100644 --- a/arch/mips/kernel/Makefile +++ b/arch/mips/kernel/Makefile | |||
@@ -2,13 +2,16 @@ | |||
2 | # Makefile for the Linux/MIPS kernel. | 2 | # Makefile for the Linux/MIPS kernel. |
3 | # | 3 | # |
4 | 4 | ||
5 | CPPFLAGS_vmlinux.lds := $(KBUILD_CFLAGS) | ||
6 | |||
7 | extra-y := head.o init_task.o vmlinux.lds | 5 | extra-y := head.o init_task.o vmlinux.lds |
8 | 6 | ||
9 | obj-y += cpu-probe.o branch.o entry.o genex.o irq.o process.o \ | 7 | obj-y += cpu-probe.o branch.o entry.o genex.o irq.o process.o \ |
10 | ptrace.o reset.o setup.o signal.o syscall.o \ | 8 | ptrace.o reset.o setup.o signal.o syscall.o \ |
11 | time.o topology.o traps.o unaligned.o watch.o | 9 | time.o topology.o traps.o unaligned.o watch.o vdso.o |
10 | |||
11 | ifdef CONFIG_FUNCTION_TRACER | ||
12 | CFLAGS_REMOVE_ftrace.o = -pg | ||
13 | CFLAGS_REMOVE_early_printk.o = -pg | ||
14 | endif | ||
12 | 15 | ||
13 | obj-$(CONFIG_CEVT_BCM1480) += cevt-bcm1480.o | 16 | obj-$(CONFIG_CEVT_BCM1480) += cevt-bcm1480.o |
14 | obj-$(CONFIG_CEVT_R4K_LIB) += cevt-r4k.o | 17 | obj-$(CONFIG_CEVT_R4K_LIB) += cevt-r4k.o |
@@ -19,6 +22,7 @@ obj-$(CONFIG_CEVT_SB1250) += cevt-sb1250.o | |||
19 | obj-$(CONFIG_CEVT_TXX9) += cevt-txx9.o | 22 | obj-$(CONFIG_CEVT_TXX9) += cevt-txx9.o |
20 | obj-$(CONFIG_CSRC_BCM1480) += csrc-bcm1480.o | 23 | obj-$(CONFIG_CSRC_BCM1480) += csrc-bcm1480.o |
21 | obj-$(CONFIG_CSRC_IOASIC) += csrc-ioasic.o | 24 | obj-$(CONFIG_CSRC_IOASIC) += csrc-ioasic.o |
25 | obj-$(CONFIG_CSRC_POWERTV) += csrc-powertv.o | ||
22 | obj-$(CONFIG_CSRC_R4K_LIB) += csrc-r4k.o | 26 | obj-$(CONFIG_CSRC_R4K_LIB) += csrc-r4k.o |
23 | obj-$(CONFIG_CSRC_SB1250) += csrc-sb1250.o | 27 | obj-$(CONFIG_CSRC_SB1250) += csrc-sb1250.o |
24 | obj-$(CONFIG_SYNC_R4K) += sync-r4k.o | 28 | obj-$(CONFIG_SYNC_R4K) += sync-r4k.o |
@@ -26,6 +30,8 @@ obj-$(CONFIG_SYNC_R4K) += sync-r4k.o | |||
26 | obj-$(CONFIG_STACKTRACE) += stacktrace.o | 30 | obj-$(CONFIG_STACKTRACE) += stacktrace.o |
27 | obj-$(CONFIG_MODULES) += mips_ksyms.o module.o | 31 | obj-$(CONFIG_MODULES) += mips_ksyms.o module.o |
28 | 32 | ||
33 | obj-$(CONFIG_FUNCTION_TRACER) += mcount.o ftrace.o | ||
34 | |||
29 | obj-$(CONFIG_CPU_LOONGSON2) += r4k_fpu.o r4k_switch.o | 35 | obj-$(CONFIG_CPU_LOONGSON2) += r4k_fpu.o r4k_switch.o |
30 | obj-$(CONFIG_CPU_MIPS32) += r4k_fpu.o r4k_switch.o | 36 | obj-$(CONFIG_CPU_MIPS32) += r4k_fpu.o r4k_switch.o |
31 | obj-$(CONFIG_CPU_MIPS64) += r4k_fpu.o r4k_switch.o | 37 | obj-$(CONFIG_CPU_MIPS64) += r4k_fpu.o r4k_switch.o |
@@ -87,9 +93,14 @@ obj-$(CONFIG_GPIO_TXX9) += gpio_txx9.o | |||
87 | 93 | ||
88 | obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o | 94 | obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o |
89 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o | 95 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o |
96 | obj-$(CONFIG_SPINLOCK_TEST) += spinlock_test.o | ||
90 | 97 | ||
91 | CFLAGS_cpu-bugs64.o = $(shell if $(CC) $(KBUILD_CFLAGS) -Wa,-mdaddi -c -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-DHAVE_AS_SET_DADDI"; fi) | 98 | CFLAGS_cpu-bugs64.o = $(shell if $(CC) $(KBUILD_CFLAGS) -Wa,-mdaddi -c -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-DHAVE_AS_SET_DADDI"; fi) |
92 | 99 | ||
93 | obj-$(CONFIG_HAVE_STD_PC_SERIAL_PORT) += 8250-platform.o | 100 | obj-$(CONFIG_HAVE_STD_PC_SERIAL_PORT) += 8250-platform.o |
94 | 101 | ||
102 | obj-$(CONFIG_MIPS_CPUFREQ) += cpufreq/ | ||
103 | |||
95 | EXTRA_CFLAGS += -Werror | 104 | EXTRA_CFLAGS += -Werror |
105 | |||
106 | CPPFLAGS_vmlinux.lds := $(KBUILD_CFLAGS) | ||
diff --git a/arch/mips/kernel/asm-offsets.c b/arch/mips/kernel/asm-offsets.c index 2c1e1d02338b..ca6c83218caa 100644 --- a/arch/mips/kernel/asm-offsets.c +++ b/arch/mips/kernel/asm-offsets.c | |||
@@ -188,11 +188,15 @@ void output_mm_defines(void) | |||
188 | DEFINE(_PTE_T_SIZE, sizeof(pte_t)); | 188 | DEFINE(_PTE_T_SIZE, sizeof(pte_t)); |
189 | BLANK(); | 189 | BLANK(); |
190 | DEFINE(_PGD_T_LOG2, PGD_T_LOG2); | 190 | DEFINE(_PGD_T_LOG2, PGD_T_LOG2); |
191 | #ifndef __PAGETABLE_PMD_FOLDED | ||
191 | DEFINE(_PMD_T_LOG2, PMD_T_LOG2); | 192 | DEFINE(_PMD_T_LOG2, PMD_T_LOG2); |
193 | #endif | ||
192 | DEFINE(_PTE_T_LOG2, PTE_T_LOG2); | 194 | DEFINE(_PTE_T_LOG2, PTE_T_LOG2); |
193 | BLANK(); | 195 | BLANK(); |
194 | DEFINE(_PGD_ORDER, PGD_ORDER); | 196 | DEFINE(_PGD_ORDER, PGD_ORDER); |
197 | #ifndef __PAGETABLE_PMD_FOLDED | ||
195 | DEFINE(_PMD_ORDER, PMD_ORDER); | 198 | DEFINE(_PMD_ORDER, PMD_ORDER); |
199 | #endif | ||
196 | DEFINE(_PTE_ORDER, PTE_ORDER); | 200 | DEFINE(_PTE_ORDER, PTE_ORDER); |
197 | BLANK(); | 201 | BLANK(); |
198 | DEFINE(_PMD_SHIFT, PMD_SHIFT); | 202 | DEFINE(_PMD_SHIFT, PMD_SHIFT); |
diff --git a/arch/mips/kernel/cevt-gt641xx.c b/arch/mips/kernel/cevt-gt641xx.c index f5d265eb6eae..392ef3756c56 100644 --- a/arch/mips/kernel/cevt-gt641xx.c +++ b/arch/mips/kernel/cevt-gt641xx.c | |||
@@ -25,7 +25,7 @@ | |||
25 | #include <asm/gt64120.h> | 25 | #include <asm/gt64120.h> |
26 | #include <asm/time.h> | 26 | #include <asm/time.h> |
27 | 27 | ||
28 | static DEFINE_SPINLOCK(gt641xx_timer_lock); | 28 | static DEFINE_RAW_SPINLOCK(gt641xx_timer_lock); |
29 | static unsigned int gt641xx_base_clock; | 29 | static unsigned int gt641xx_base_clock; |
30 | 30 | ||
31 | void gt641xx_set_base_clock(unsigned int clock) | 31 | void gt641xx_set_base_clock(unsigned int clock) |
@@ -49,7 +49,7 @@ static int gt641xx_timer0_set_next_event(unsigned long delta, | |||
49 | { | 49 | { |
50 | u32 ctrl; | 50 | u32 ctrl; |
51 | 51 | ||
52 | spin_lock(>641xx_timer_lock); | 52 | raw_spin_lock(>641xx_timer_lock); |
53 | 53 | ||
54 | ctrl = GT_READ(GT_TC_CONTROL_OFS); | 54 | ctrl = GT_READ(GT_TC_CONTROL_OFS); |
55 | ctrl &= ~(GT_TC_CONTROL_ENTC0_MSK | GT_TC_CONTROL_SELTC0_MSK); | 55 | ctrl &= ~(GT_TC_CONTROL_ENTC0_MSK | GT_TC_CONTROL_SELTC0_MSK); |
@@ -58,7 +58,7 @@ static int gt641xx_timer0_set_next_event(unsigned long delta, | |||
58 | GT_WRITE(GT_TC0_OFS, delta); | 58 | GT_WRITE(GT_TC0_OFS, delta); |
59 | GT_WRITE(GT_TC_CONTROL_OFS, ctrl); | 59 | GT_WRITE(GT_TC_CONTROL_OFS, ctrl); |
60 | 60 | ||
61 | spin_unlock(>641xx_timer_lock); | 61 | raw_spin_unlock(>641xx_timer_lock); |
62 | 62 | ||
63 | return 0; | 63 | return 0; |
64 | } | 64 | } |
@@ -68,7 +68,7 @@ static void gt641xx_timer0_set_mode(enum clock_event_mode mode, | |||
68 | { | 68 | { |
69 | u32 ctrl; | 69 | u32 ctrl; |
70 | 70 | ||
71 | spin_lock(>641xx_timer_lock); | 71 | raw_spin_lock(>641xx_timer_lock); |
72 | 72 | ||
73 | ctrl = GT_READ(GT_TC_CONTROL_OFS); | 73 | ctrl = GT_READ(GT_TC_CONTROL_OFS); |
74 | ctrl &= ~(GT_TC_CONTROL_ENTC0_MSK | GT_TC_CONTROL_SELTC0_MSK); | 74 | ctrl &= ~(GT_TC_CONTROL_ENTC0_MSK | GT_TC_CONTROL_SELTC0_MSK); |
@@ -86,7 +86,7 @@ static void gt641xx_timer0_set_mode(enum clock_event_mode mode, | |||
86 | 86 | ||
87 | GT_WRITE(GT_TC_CONTROL_OFS, ctrl); | 87 | GT_WRITE(GT_TC_CONTROL_OFS, ctrl); |
88 | 88 | ||
89 | spin_unlock(>641xx_timer_lock); | 89 | raw_spin_unlock(>641xx_timer_lock); |
90 | } | 90 | } |
91 | 91 | ||
92 | static void gt641xx_timer0_event_handler(struct clock_event_device *dev) | 92 | static void gt641xx_timer0_event_handler(struct clock_event_device *dev) |
diff --git a/arch/mips/kernel/cevt-r4k.c b/arch/mips/kernel/cevt-r4k.c index b469ad05d520..0b2450ceb13f 100644 --- a/arch/mips/kernel/cevt-r4k.c +++ b/arch/mips/kernel/cevt-r4k.c | |||
@@ -97,7 +97,7 @@ void mips_event_handler(struct clock_event_device *dev) | |||
97 | */ | 97 | */ |
98 | static int c0_compare_int_pending(void) | 98 | static int c0_compare_int_pending(void) |
99 | { | 99 | { |
100 | return (read_c0_cause() >> cp0_compare_irq) & 0x100; | 100 | return (read_c0_cause() >> cp0_compare_irq_shift) & (1ul << CAUSEB_IP); |
101 | } | 101 | } |
102 | 102 | ||
103 | /* | 103 | /* |
diff --git a/arch/mips/kernel/cpu-probe.c b/arch/mips/kernel/cpu-probe.c index 7a51866068a4..be5bb16be4e0 100644 --- a/arch/mips/kernel/cpu-probe.c +++ b/arch/mips/kernel/cpu-probe.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/ptrace.h> | 16 | #include <linux/ptrace.h> |
17 | #include <linux/smp.h> | 17 | #include <linux/smp.h> |
18 | #include <linux/stddef.h> | 18 | #include <linux/stddef.h> |
19 | #include <linux/module.h> | ||
19 | 20 | ||
20 | #include <asm/bugs.h> | 21 | #include <asm/bugs.h> |
21 | #include <asm/cpu.h> | 22 | #include <asm/cpu.h> |
@@ -32,6 +33,7 @@ | |||
32 | * the CPU very much. | 33 | * the CPU very much. |
33 | */ | 34 | */ |
34 | void (*cpu_wait)(void); | 35 | void (*cpu_wait)(void); |
36 | EXPORT_SYMBOL(cpu_wait); | ||
35 | 37 | ||
36 | static void r3081_wait(void) | 38 | static void r3081_wait(void) |
37 | { | 39 | { |
@@ -160,6 +162,7 @@ void __init check_wait(void) | |||
160 | case CPU_BCM6348: | 162 | case CPU_BCM6348: |
161 | case CPU_BCM6358: | 163 | case CPU_BCM6358: |
162 | case CPU_CAVIUM_OCTEON: | 164 | case CPU_CAVIUM_OCTEON: |
165 | case CPU_CAVIUM_OCTEON_PLUS: | ||
163 | cpu_wait = r4k_wait; | 166 | cpu_wait = r4k_wait; |
164 | break; | 167 | break; |
165 | 168 | ||
@@ -282,6 +285,15 @@ static inline int __cpu_has_fpu(void) | |||
282 | return ((cpu_get_fpu_id() & 0xff00) != FPIR_IMP_NONE); | 285 | return ((cpu_get_fpu_id() & 0xff00) != FPIR_IMP_NONE); |
283 | } | 286 | } |
284 | 287 | ||
288 | static inline void cpu_probe_vmbits(struct cpuinfo_mips *c) | ||
289 | { | ||
290 | #ifdef __NEED_VMBITS_PROBE | ||
291 | write_c0_entryhi(0x3fffffffffffe000ULL); | ||
292 | back_to_back_c0_hazard(); | ||
293 | c->vmbits = fls64(read_c0_entryhi() & 0x3fffffffffffe000ULL); | ||
294 | #endif | ||
295 | } | ||
296 | |||
285 | #define R4K_OPTS (MIPS_CPU_TLB | MIPS_CPU_4KEX | MIPS_CPU_4K_CACHE \ | 297 | #define R4K_OPTS (MIPS_CPU_TLB | MIPS_CPU_4KEX | MIPS_CPU_4K_CACHE \ |
286 | | MIPS_CPU_COUNTER) | 298 | | MIPS_CPU_COUNTER) |
287 | 299 | ||
@@ -689,6 +701,19 @@ static inline unsigned int decode_config3(struct cpuinfo_mips *c) | |||
689 | return config3 & MIPS_CONF_M; | 701 | return config3 & MIPS_CONF_M; |
690 | } | 702 | } |
691 | 703 | ||
704 | static inline unsigned int decode_config4(struct cpuinfo_mips *c) | ||
705 | { | ||
706 | unsigned int config4; | ||
707 | |||
708 | config4 = read_c0_config4(); | ||
709 | |||
710 | if ((config4 & MIPS_CONF4_MMUEXTDEF) == MIPS_CONF4_MMUEXTDEF_MMUSIZEEXT | ||
711 | && cpu_has_tlb) | ||
712 | c->tlbsize += (config4 & MIPS_CONF4_MMUSIZEEXT) * 0x40; | ||
713 | |||
714 | return config4 & MIPS_CONF_M; | ||
715 | } | ||
716 | |||
692 | static void __cpuinit decode_configs(struct cpuinfo_mips *c) | 717 | static void __cpuinit decode_configs(struct cpuinfo_mips *c) |
693 | { | 718 | { |
694 | int ok; | 719 | int ok; |
@@ -707,6 +732,8 @@ static void __cpuinit decode_configs(struct cpuinfo_mips *c) | |||
707 | ok = decode_config2(c); | 732 | ok = decode_config2(c); |
708 | if (ok) | 733 | if (ok) |
709 | ok = decode_config3(c); | 734 | ok = decode_config3(c); |
735 | if (ok) | ||
736 | ok = decode_config4(c); | ||
710 | 737 | ||
711 | mips_probe_watch_registers(c); | 738 | mips_probe_watch_registers(c); |
712 | } | 739 | } |
@@ -720,9 +747,6 @@ static inline void cpu_probe_mips(struct cpuinfo_mips *c, unsigned int cpu) | |||
720 | __cpu_name[cpu] = "MIPS 4Kc"; | 747 | __cpu_name[cpu] = "MIPS 4Kc"; |
721 | break; | 748 | break; |
722 | case PRID_IMP_4KEC: | 749 | case PRID_IMP_4KEC: |
723 | c->cputype = CPU_4KEC; | ||
724 | __cpu_name[cpu] = "MIPS 4KEc"; | ||
725 | break; | ||
726 | case PRID_IMP_4KECR2: | 750 | case PRID_IMP_4KECR2: |
727 | c->cputype = CPU_4KEC; | 751 | c->cputype = CPU_4KEC; |
728 | __cpu_name[cpu] = "MIPS 4KEc"; | 752 | __cpu_name[cpu] = "MIPS 4KEc"; |
@@ -888,12 +912,18 @@ static inline void cpu_probe_cavium(struct cpuinfo_mips *c, unsigned int cpu) | |||
888 | case PRID_IMP_CAVIUM_CN38XX: | 912 | case PRID_IMP_CAVIUM_CN38XX: |
889 | case PRID_IMP_CAVIUM_CN31XX: | 913 | case PRID_IMP_CAVIUM_CN31XX: |
890 | case PRID_IMP_CAVIUM_CN30XX: | 914 | case PRID_IMP_CAVIUM_CN30XX: |
915 | c->cputype = CPU_CAVIUM_OCTEON; | ||
916 | __cpu_name[cpu] = "Cavium Octeon"; | ||
917 | goto platform; | ||
891 | case PRID_IMP_CAVIUM_CN58XX: | 918 | case PRID_IMP_CAVIUM_CN58XX: |
892 | case PRID_IMP_CAVIUM_CN56XX: | 919 | case PRID_IMP_CAVIUM_CN56XX: |
893 | case PRID_IMP_CAVIUM_CN50XX: | 920 | case PRID_IMP_CAVIUM_CN50XX: |
894 | case PRID_IMP_CAVIUM_CN52XX: | 921 | case PRID_IMP_CAVIUM_CN52XX: |
895 | c->cputype = CPU_CAVIUM_OCTEON; | 922 | c->cputype = CPU_CAVIUM_OCTEON_PLUS; |
896 | __cpu_name[cpu] = "Cavium Octeon"; | 923 | __cpu_name[cpu] = "Cavium Octeon+"; |
924 | platform: | ||
925 | if (cpu == 0) | ||
926 | __elf_platform = "octeon"; | ||
897 | break; | 927 | break; |
898 | default: | 928 | default: |
899 | printk(KERN_INFO "Unknown Octeon chip!\n"); | 929 | printk(KERN_INFO "Unknown Octeon chip!\n"); |
@@ -903,6 +933,7 @@ static inline void cpu_probe_cavium(struct cpuinfo_mips *c, unsigned int cpu) | |||
903 | } | 933 | } |
904 | 934 | ||
905 | const char *__cpu_name[NR_CPUS]; | 935 | const char *__cpu_name[NR_CPUS]; |
936 | const char *__elf_platform; | ||
906 | 937 | ||
907 | __cpuinit void cpu_probe(void) | 938 | __cpuinit void cpu_probe(void) |
908 | { | 939 | { |
@@ -967,6 +998,8 @@ __cpuinit void cpu_probe(void) | |||
967 | c->srsets = ((read_c0_srsctl() >> 26) & 0x0f) + 1; | 998 | c->srsets = ((read_c0_srsctl() >> 26) & 0x0f) + 1; |
968 | else | 999 | else |
969 | c->srsets = 1; | 1000 | c->srsets = 1; |
1001 | |||
1002 | cpu_probe_vmbits(c); | ||
970 | } | 1003 | } |
971 | 1004 | ||
972 | __cpuinit void cpu_report(void) | 1005 | __cpuinit void cpu_report(void) |
diff --git a/arch/mips/kernel/cpufreq/Kconfig b/arch/mips/kernel/cpufreq/Kconfig new file mode 100644 index 000000000000..58c601eee6fd --- /dev/null +++ b/arch/mips/kernel/cpufreq/Kconfig | |||
@@ -0,0 +1,41 @@ | |||
1 | # | ||
2 | # CPU Frequency scaling | ||
3 | # | ||
4 | |||
5 | config MIPS_EXTERNAL_TIMER | ||
6 | bool | ||
7 | |||
8 | config MIPS_CPUFREQ | ||
9 | bool | ||
10 | default y | ||
11 | depends on CPU_SUPPORTS_CPUFREQ && MIPS_EXTERNAL_TIMER | ||
12 | |||
13 | if MIPS_CPUFREQ | ||
14 | |||
15 | menu "CPU Frequency scaling" | ||
16 | |||
17 | source "drivers/cpufreq/Kconfig" | ||
18 | |||
19 | if CPU_FREQ | ||
20 | |||
21 | comment "CPUFreq processor drivers" | ||
22 | |||
23 | config LOONGSON2_CPUFREQ | ||
24 | tristate "Loongson2 CPUFreq Driver" | ||
25 | select CPU_FREQ_TABLE | ||
26 | depends on MIPS_CPUFREQ | ||
27 | help | ||
28 | This option adds a CPUFreq driver for loongson processors which | ||
29 | support software configurable cpu frequency. | ||
30 | |||
31 | Loongson2F and it's successors support this feature. | ||
32 | |||
33 | For details, take a look at <file:Documentation/cpu-freq/>. | ||
34 | |||
35 | If in doubt, say N. | ||
36 | |||
37 | endif # CPU_FREQ | ||
38 | |||
39 | endmenu | ||
40 | |||
41 | endif # MIPS_CPUFREQ | ||
diff --git a/arch/mips/kernel/cpufreq/Makefile b/arch/mips/kernel/cpufreq/Makefile new file mode 100644 index 000000000000..c3479a432efe --- /dev/null +++ b/arch/mips/kernel/cpufreq/Makefile | |||
@@ -0,0 +1,5 @@ | |||
1 | # | ||
2 | # Makefile for the Linux/MIPS cpufreq. | ||
3 | # | ||
4 | |||
5 | obj-$(CONFIG_LOONGSON2_CPUFREQ) += loongson2_cpufreq.o loongson2_clock.o | ||
diff --git a/arch/mips/kernel/cpufreq/loongson2_clock.c b/arch/mips/kernel/cpufreq/loongson2_clock.c new file mode 100644 index 000000000000..cefc6e259baf --- /dev/null +++ b/arch/mips/kernel/cpufreq/loongson2_clock.c | |||
@@ -0,0 +1,170 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2006 - 2008 Lemote Inc. & Insititute of Computing Technology | ||
3 | * Author: Yanhua, yanh@lemote.com | ||
4 | * | ||
5 | * This file is subject to the terms and conditions of the GNU General Public | ||
6 | * License. See the file "COPYING" in the main directory of this archive | ||
7 | * for more details. | ||
8 | */ | ||
9 | |||
10 | #include <linux/cpufreq.h> | ||
11 | #include <linux/platform_device.h> | ||
12 | |||
13 | #include <asm/clock.h> | ||
14 | |||
15 | #include <loongson.h> | ||
16 | |||
17 | static LIST_HEAD(clock_list); | ||
18 | static DEFINE_SPINLOCK(clock_lock); | ||
19 | static DEFINE_MUTEX(clock_list_sem); | ||
20 | |||
21 | /* Minimum CLK support */ | ||
22 | enum { | ||
23 | DC_ZERO, DC_25PT = 2, DC_37PT, DC_50PT, DC_62PT, DC_75PT, | ||
24 | DC_87PT, DC_DISABLE, DC_RESV | ||
25 | }; | ||
26 | |||
27 | struct cpufreq_frequency_table loongson2_clockmod_table[] = { | ||
28 | {DC_RESV, CPUFREQ_ENTRY_INVALID}, | ||
29 | {DC_ZERO, CPUFREQ_ENTRY_INVALID}, | ||
30 | {DC_25PT, 0}, | ||
31 | {DC_37PT, 0}, | ||
32 | {DC_50PT, 0}, | ||
33 | {DC_62PT, 0}, | ||
34 | {DC_75PT, 0}, | ||
35 | {DC_87PT, 0}, | ||
36 | {DC_DISABLE, 0}, | ||
37 | {DC_RESV, CPUFREQ_TABLE_END}, | ||
38 | }; | ||
39 | EXPORT_SYMBOL_GPL(loongson2_clockmod_table); | ||
40 | |||
41 | static struct clk cpu_clk = { | ||
42 | .name = "cpu_clk", | ||
43 | .flags = CLK_ALWAYS_ENABLED | CLK_RATE_PROPAGATES, | ||
44 | .rate = 800000000, | ||
45 | }; | ||
46 | |||
47 | struct clk *clk_get(struct device *dev, const char *id) | ||
48 | { | ||
49 | return &cpu_clk; | ||
50 | } | ||
51 | EXPORT_SYMBOL(clk_get); | ||
52 | |||
53 | static void propagate_rate(struct clk *clk) | ||
54 | { | ||
55 | struct clk *clkp; | ||
56 | |||
57 | list_for_each_entry(clkp, &clock_list, node) { | ||
58 | if (likely(clkp->parent != clk)) | ||
59 | continue; | ||
60 | if (likely(clkp->ops && clkp->ops->recalc)) | ||
61 | clkp->ops->recalc(clkp); | ||
62 | if (unlikely(clkp->flags & CLK_RATE_PROPAGATES)) | ||
63 | propagate_rate(clkp); | ||
64 | } | ||
65 | } | ||
66 | |||
67 | int clk_enable(struct clk *clk) | ||
68 | { | ||
69 | return 0; | ||
70 | } | ||
71 | EXPORT_SYMBOL(clk_enable); | ||
72 | |||
73 | void clk_disable(struct clk *clk) | ||
74 | { | ||
75 | } | ||
76 | EXPORT_SYMBOL(clk_disable); | ||
77 | |||
78 | unsigned long clk_get_rate(struct clk *clk) | ||
79 | { | ||
80 | return (unsigned long)clk->rate; | ||
81 | } | ||
82 | EXPORT_SYMBOL(clk_get_rate); | ||
83 | |||
84 | void clk_put(struct clk *clk) | ||
85 | { | ||
86 | } | ||
87 | EXPORT_SYMBOL(clk_put); | ||
88 | |||
89 | int clk_set_rate(struct clk *clk, unsigned long rate) | ||
90 | { | ||
91 | return clk_set_rate_ex(clk, rate, 0); | ||
92 | } | ||
93 | EXPORT_SYMBOL_GPL(clk_set_rate); | ||
94 | |||
95 | int clk_set_rate_ex(struct clk *clk, unsigned long rate, int algo_id) | ||
96 | { | ||
97 | int ret = 0; | ||
98 | int regval; | ||
99 | int i; | ||
100 | |||
101 | if (likely(clk->ops && clk->ops->set_rate)) { | ||
102 | unsigned long flags; | ||
103 | |||
104 | spin_lock_irqsave(&clock_lock, flags); | ||
105 | ret = clk->ops->set_rate(clk, rate, algo_id); | ||
106 | spin_unlock_irqrestore(&clock_lock, flags); | ||
107 | } | ||
108 | |||
109 | if (unlikely(clk->flags & CLK_RATE_PROPAGATES)) | ||
110 | propagate_rate(clk); | ||
111 | |||
112 | for (i = 0; loongson2_clockmod_table[i].frequency != CPUFREQ_TABLE_END; | ||
113 | i++) { | ||
114 | if (loongson2_clockmod_table[i].frequency == | ||
115 | CPUFREQ_ENTRY_INVALID) | ||
116 | continue; | ||
117 | if (rate == loongson2_clockmod_table[i].frequency) | ||
118 | break; | ||
119 | } | ||
120 | if (rate != loongson2_clockmod_table[i].frequency) | ||
121 | return -ENOTSUPP; | ||
122 | |||
123 | clk->rate = rate; | ||
124 | |||
125 | regval = LOONGSON_CHIPCFG0; | ||
126 | regval = (regval & ~0x7) | (loongson2_clockmod_table[i].index - 1); | ||
127 | LOONGSON_CHIPCFG0 = regval; | ||
128 | |||
129 | return ret; | ||
130 | } | ||
131 | EXPORT_SYMBOL_GPL(clk_set_rate_ex); | ||
132 | |||
133 | long clk_round_rate(struct clk *clk, unsigned long rate) | ||
134 | { | ||
135 | if (likely(clk->ops && clk->ops->round_rate)) { | ||
136 | unsigned long flags, rounded; | ||
137 | |||
138 | spin_lock_irqsave(&clock_lock, flags); | ||
139 | rounded = clk->ops->round_rate(clk, rate); | ||
140 | spin_unlock_irqrestore(&clock_lock, flags); | ||
141 | |||
142 | return rounded; | ||
143 | } | ||
144 | |||
145 | return rate; | ||
146 | } | ||
147 | EXPORT_SYMBOL_GPL(clk_round_rate); | ||
148 | |||
149 | /* | ||
150 | * This is the simple version of Loongson-2 wait, Maybe we need do this in | ||
151 | * interrupt disabled content | ||
152 | */ | ||
153 | |||
154 | DEFINE_SPINLOCK(loongson2_wait_lock); | ||
155 | void loongson2_cpu_wait(void) | ||
156 | { | ||
157 | u32 cpu_freq; | ||
158 | unsigned long flags; | ||
159 | |||
160 | spin_lock_irqsave(&loongson2_wait_lock, flags); | ||
161 | cpu_freq = LOONGSON_CHIPCFG0; | ||
162 | LOONGSON_CHIPCFG0 &= ~0x7; /* Put CPU into wait mode */ | ||
163 | LOONGSON_CHIPCFG0 = cpu_freq; /* Restore CPU state */ | ||
164 | spin_unlock_irqrestore(&loongson2_wait_lock, flags); | ||
165 | } | ||
166 | EXPORT_SYMBOL_GPL(loongson2_cpu_wait); | ||
167 | |||
168 | MODULE_AUTHOR("Yanhua <yanh@lemote.com>"); | ||
169 | MODULE_DESCRIPTION("cpufreq driver for Loongson 2F"); | ||
170 | MODULE_LICENSE("GPL"); | ||
diff --git a/arch/mips/kernel/cpufreq/loongson2_cpufreq.c b/arch/mips/kernel/cpufreq/loongson2_cpufreq.c new file mode 100644 index 000000000000..2f6a0b147ab8 --- /dev/null +++ b/arch/mips/kernel/cpufreq/loongson2_cpufreq.c | |||
@@ -0,0 +1,227 @@ | |||
1 | /* | ||
2 | * Cpufreq driver for the loongson-2 processors | ||
3 | * | ||
4 | * The 2E revision of loongson processor not support this feature. | ||
5 | * | ||
6 | * Copyright (C) 2006 - 2008 Lemote Inc. & Insititute of Computing Technology | ||
7 | * Author: Yanhua, yanh@lemote.com | ||
8 | * | ||
9 | * This file is subject to the terms and conditions of the GNU General Public | ||
10 | * License. See the file "COPYING" in the main directory of this archive | ||
11 | * for more details. | ||
12 | */ | ||
13 | #include <linux/cpufreq.h> | ||
14 | #include <linux/module.h> | ||
15 | #include <linux/err.h> | ||
16 | #include <linux/sched.h> /* set_cpus_allowed() */ | ||
17 | #include <linux/delay.h> | ||
18 | #include <linux/platform_device.h> | ||
19 | |||
20 | #include <asm/clock.h> | ||
21 | |||
22 | #include <loongson.h> | ||
23 | |||
24 | static uint nowait; | ||
25 | |||
26 | static struct clk *cpuclk; | ||
27 | |||
28 | static void (*saved_cpu_wait) (void); | ||
29 | |||
30 | static int loongson2_cpu_freq_notifier(struct notifier_block *nb, | ||
31 | unsigned long val, void *data); | ||
32 | |||
33 | static struct notifier_block loongson2_cpufreq_notifier_block = { | ||
34 | .notifier_call = loongson2_cpu_freq_notifier | ||
35 | }; | ||
36 | |||
37 | static int loongson2_cpu_freq_notifier(struct notifier_block *nb, | ||
38 | unsigned long val, void *data) | ||
39 | { | ||
40 | if (val == CPUFREQ_POSTCHANGE) | ||
41 | current_cpu_data.udelay_val = loops_per_jiffy; | ||
42 | |||
43 | return 0; | ||
44 | } | ||
45 | |||
46 | static unsigned int loongson2_cpufreq_get(unsigned int cpu) | ||
47 | { | ||
48 | return clk_get_rate(cpuclk); | ||
49 | } | ||
50 | |||
51 | /* | ||
52 | * Here we notify other drivers of the proposed change and the final change. | ||
53 | */ | ||
54 | static int loongson2_cpufreq_target(struct cpufreq_policy *policy, | ||
55 | unsigned int target_freq, | ||
56 | unsigned int relation) | ||
57 | { | ||
58 | unsigned int cpu = policy->cpu; | ||
59 | unsigned int newstate = 0; | ||
60 | cpumask_t cpus_allowed; | ||
61 | struct cpufreq_freqs freqs; | ||
62 | unsigned int freq; | ||
63 | |||
64 | if (!cpu_online(cpu)) | ||
65 | return -ENODEV; | ||
66 | |||
67 | cpus_allowed = current->cpus_allowed; | ||
68 | set_cpus_allowed(current, cpumask_of_cpu(cpu)); | ||
69 | |||
70 | if (cpufreq_frequency_table_target | ||
71 | (policy, &loongson2_clockmod_table[0], target_freq, relation, | ||
72 | &newstate)) | ||
73 | return -EINVAL; | ||
74 | |||
75 | freq = | ||
76 | ((cpu_clock_freq / 1000) * | ||
77 | loongson2_clockmod_table[newstate].index) / 8; | ||
78 | if (freq < policy->min || freq > policy->max) | ||
79 | return -EINVAL; | ||
80 | |||
81 | pr_debug("cpufreq: requested frequency %u Hz\n", target_freq * 1000); | ||
82 | |||
83 | freqs.cpu = cpu; | ||
84 | freqs.old = loongson2_cpufreq_get(cpu); | ||
85 | freqs.new = freq; | ||
86 | freqs.flags = 0; | ||
87 | |||
88 | if (freqs.new == freqs.old) | ||
89 | return 0; | ||
90 | |||
91 | /* notifiers */ | ||
92 | cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE); | ||
93 | |||
94 | set_cpus_allowed(current, cpus_allowed); | ||
95 | |||
96 | /* setting the cpu frequency */ | ||
97 | clk_set_rate(cpuclk, freq); | ||
98 | |||
99 | /* notifiers */ | ||
100 | cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE); | ||
101 | |||
102 | pr_debug("cpufreq: set frequency %u kHz\n", freq); | ||
103 | |||
104 | return 0; | ||
105 | } | ||
106 | |||
107 | static int loongson2_cpufreq_cpu_init(struct cpufreq_policy *policy) | ||
108 | { | ||
109 | int i; | ||
110 | |||
111 | if (!cpu_online(policy->cpu)) | ||
112 | return -ENODEV; | ||
113 | |||
114 | cpuclk = clk_get(NULL, "cpu_clk"); | ||
115 | if (IS_ERR(cpuclk)) { | ||
116 | printk(KERN_ERR "cpufreq: couldn't get CPU clk\n"); | ||
117 | return PTR_ERR(cpuclk); | ||
118 | } | ||
119 | |||
120 | cpuclk->rate = cpu_clock_freq / 1000; | ||
121 | if (!cpuclk->rate) | ||
122 | return -EINVAL; | ||
123 | |||
124 | /* clock table init */ | ||
125 | for (i = 2; | ||
126 | (loongson2_clockmod_table[i].frequency != CPUFREQ_TABLE_END); | ||
127 | i++) | ||
128 | loongson2_clockmod_table[i].frequency = (cpuclk->rate * i) / 8; | ||
129 | |||
130 | policy->cur = loongson2_cpufreq_get(policy->cpu); | ||
131 | |||
132 | cpufreq_frequency_table_get_attr(&loongson2_clockmod_table[0], | ||
133 | policy->cpu); | ||
134 | |||
135 | return cpufreq_frequency_table_cpuinfo(policy, | ||
136 | &loongson2_clockmod_table[0]); | ||
137 | } | ||
138 | |||
139 | static int loongson2_cpufreq_verify(struct cpufreq_policy *policy) | ||
140 | { | ||
141 | return cpufreq_frequency_table_verify(policy, | ||
142 | &loongson2_clockmod_table[0]); | ||
143 | } | ||
144 | |||
145 | static int loongson2_cpufreq_exit(struct cpufreq_policy *policy) | ||
146 | { | ||
147 | clk_put(cpuclk); | ||
148 | return 0; | ||
149 | } | ||
150 | |||
151 | static struct freq_attr *loongson2_table_attr[] = { | ||
152 | &cpufreq_freq_attr_scaling_available_freqs, | ||
153 | NULL, | ||
154 | }; | ||
155 | |||
156 | static struct cpufreq_driver loongson2_cpufreq_driver = { | ||
157 | .owner = THIS_MODULE, | ||
158 | .name = "loongson2", | ||
159 | .init = loongson2_cpufreq_cpu_init, | ||
160 | .verify = loongson2_cpufreq_verify, | ||
161 | .target = loongson2_cpufreq_target, | ||
162 | .get = loongson2_cpufreq_get, | ||
163 | .exit = loongson2_cpufreq_exit, | ||
164 | .attr = loongson2_table_attr, | ||
165 | }; | ||
166 | |||
167 | static struct platform_device_id platform_device_ids[] = { | ||
168 | { | ||
169 | .name = "loongson2_cpufreq", | ||
170 | }, | ||
171 | {} | ||
172 | }; | ||
173 | |||
174 | MODULE_DEVICE_TABLE(platform, platform_device_ids); | ||
175 | |||
176 | static struct platform_driver platform_driver = { | ||
177 | .driver = { | ||
178 | .name = "loongson2_cpufreq", | ||
179 | .owner = THIS_MODULE, | ||
180 | }, | ||
181 | .id_table = platform_device_ids, | ||
182 | }; | ||
183 | |||
184 | static int __init cpufreq_init(void) | ||
185 | { | ||
186 | int ret; | ||
187 | |||
188 | /* Register platform stuff */ | ||
189 | ret = platform_driver_register(&platform_driver); | ||
190 | if (ret) | ||
191 | return ret; | ||
192 | |||
193 | pr_info("cpufreq: Loongson-2F CPU frequency driver.\n"); | ||
194 | |||
195 | cpufreq_register_notifier(&loongson2_cpufreq_notifier_block, | ||
196 | CPUFREQ_TRANSITION_NOTIFIER); | ||
197 | |||
198 | ret = cpufreq_register_driver(&loongson2_cpufreq_driver); | ||
199 | |||
200 | if (!ret && !nowait) { | ||
201 | saved_cpu_wait = cpu_wait; | ||
202 | cpu_wait = loongson2_cpu_wait; | ||
203 | } | ||
204 | |||
205 | return ret; | ||
206 | } | ||
207 | |||
208 | static void __exit cpufreq_exit(void) | ||
209 | { | ||
210 | if (!nowait && saved_cpu_wait) | ||
211 | cpu_wait = saved_cpu_wait; | ||
212 | cpufreq_unregister_driver(&loongson2_cpufreq_driver); | ||
213 | cpufreq_unregister_notifier(&loongson2_cpufreq_notifier_block, | ||
214 | CPUFREQ_TRANSITION_NOTIFIER); | ||
215 | |||
216 | platform_driver_unregister(&platform_driver); | ||
217 | } | ||
218 | |||
219 | module_init(cpufreq_init); | ||
220 | module_exit(cpufreq_exit); | ||
221 | |||
222 | module_param(nowait, uint, 0644); | ||
223 | MODULE_PARM_DESC(nowait, "Disable Loongson-2F specific wait"); | ||
224 | |||
225 | MODULE_AUTHOR("Yanhua <yanh@lemote.com>"); | ||
226 | MODULE_DESCRIPTION("cpufreq driver for Loongson2F"); | ||
227 | MODULE_LICENSE("GPL"); | ||
diff --git a/arch/mips/kernel/csrc-powertv.c b/arch/mips/kernel/csrc-powertv.c new file mode 100644 index 000000000000..a27c16c8690e --- /dev/null +++ b/arch/mips/kernel/csrc-powertv.c | |||
@@ -0,0 +1,180 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2008 Scientific-Atlanta, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or | ||
5 | * modify it under the terms of the GNU General Public License | ||
6 | * as published by the Free Software Foundation; either version 2 | ||
7 | * of the License, or (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | ||
17 | */ | ||
18 | /* | ||
19 | * The file comes from kernel/csrc-r4k.c | ||
20 | */ | ||
21 | #include <linux/clocksource.h> | ||
22 | #include <linux/init.h> | ||
23 | |||
24 | #include <asm/time.h> /* Not included in linux/time.h */ | ||
25 | |||
26 | #include <asm/mach-powertv/asic_regs.h> | ||
27 | #include "powertv-clock.h" | ||
28 | |||
29 | /* MIPS PLL Register Definitions */ | ||
30 | #define PLL_GET_M(x) (((x) >> 8) & 0x000000FF) | ||
31 | #define PLL_GET_N(x) (((x) >> 16) & 0x000000FF) | ||
32 | #define PLL_GET_P(x) (((x) >> 24) & 0x00000007) | ||
33 | |||
34 | /* | ||
35 | * returns: Clock frequency in kHz | ||
36 | */ | ||
37 | unsigned int __init mips_get_pll_freq(void) | ||
38 | { | ||
39 | unsigned int pll_reg, m, n, p; | ||
40 | unsigned int fin = 54000; /* Base frequency in kHz */ | ||
41 | unsigned int fout; | ||
42 | |||
43 | /* Read PLL register setting */ | ||
44 | pll_reg = asic_read(mips_pll_setup); | ||
45 | m = PLL_GET_M(pll_reg); | ||
46 | n = PLL_GET_N(pll_reg); | ||
47 | p = PLL_GET_P(pll_reg); | ||
48 | pr_info("MIPS PLL Register:0x%x M=%d N=%d P=%d\n", pll_reg, m, n, p); | ||
49 | |||
50 | /* Calculate clock frequency = (2 * N * 54MHz) / (M * (2**P)) */ | ||
51 | fout = ((2 * n * fin) / (m * (0x01 << p))); | ||
52 | |||
53 | pr_info("MIPS Clock Freq=%d kHz\n", fout); | ||
54 | |||
55 | return fout; | ||
56 | } | ||
57 | |||
58 | static cycle_t c0_hpt_read(struct clocksource *cs) | ||
59 | { | ||
60 | return read_c0_count(); | ||
61 | } | ||
62 | |||
63 | static struct clocksource clocksource_mips = { | ||
64 | .name = "powertv-counter", | ||
65 | .read = c0_hpt_read, | ||
66 | .mask = CLOCKSOURCE_MASK(32), | ||
67 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, | ||
68 | }; | ||
69 | |||
70 | static void __init powertv_c0_hpt_clocksource_init(void) | ||
71 | { | ||
72 | unsigned int pll_freq = mips_get_pll_freq(); | ||
73 | |||
74 | pr_info("CPU frequency %d.%02d MHz\n", pll_freq / 1000, | ||
75 | (pll_freq % 1000) * 100 / 1000); | ||
76 | |||
77 | mips_hpt_frequency = pll_freq / 2 * 1000; | ||
78 | |||
79 | clocksource_mips.rating = 200 + mips_hpt_frequency / 10000000; | ||
80 | |||
81 | clocksource_set_clock(&clocksource_mips, mips_hpt_frequency); | ||
82 | |||
83 | clocksource_register(&clocksource_mips); | ||
84 | } | ||
85 | |||
86 | /** | ||
87 | * struct tim_c - free running counter | ||
88 | * @hi: High 16 bits of the counter | ||
89 | * @lo: Low 32 bits of the counter | ||
90 | * | ||
91 | * Lays out the structure of the free running counter in memory. This counter | ||
92 | * increments at a rate of 27 MHz/8 on all platforms. | ||
93 | */ | ||
94 | struct tim_c { | ||
95 | unsigned int hi; | ||
96 | unsigned int lo; | ||
97 | }; | ||
98 | |||
99 | static struct tim_c *tim_c; | ||
100 | |||
101 | static cycle_t tim_c_read(struct clocksource *cs) | ||
102 | { | ||
103 | unsigned int hi; | ||
104 | unsigned int next_hi; | ||
105 | unsigned int lo; | ||
106 | |||
107 | hi = readl(&tim_c->hi); | ||
108 | |||
109 | for (;;) { | ||
110 | lo = readl(&tim_c->lo); | ||
111 | next_hi = readl(&tim_c->hi); | ||
112 | if (next_hi == hi) | ||
113 | break; | ||
114 | hi = next_hi; | ||
115 | } | ||
116 | |||
117 | pr_crit("%s: read %llx\n", __func__, ((u64) hi << 32) | lo); | ||
118 | return ((u64) hi << 32) | lo; | ||
119 | } | ||
120 | |||
121 | #define TIM_C_SIZE 48 /* # bits in the timer */ | ||
122 | |||
123 | static struct clocksource clocksource_tim_c = { | ||
124 | .name = "powertv-tim_c", | ||
125 | .read = tim_c_read, | ||
126 | .mask = CLOCKSOURCE_MASK(TIM_C_SIZE), | ||
127 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, | ||
128 | }; | ||
129 | |||
130 | /** | ||
131 | * powertv_tim_c_clocksource_init - set up a clock source for the TIM_C clock | ||
132 | * | ||
133 | * The hard part here is coming up with a constant k and shift s such that | ||
134 | * the 48-bit TIM_C value multiplied by k doesn't overflow and that value, | ||
135 | * when shifted right by s, yields the corresponding number of nanoseconds. | ||
136 | * We know that TIM_C counts at 27 MHz/8, so each cycle corresponds to | ||
137 | * 1 / (27,000,000/8) seconds. Multiply that by a billion and you get the | ||
138 | * number of nanoseconds. Since the TIM_C value has 48 bits and the math is | ||
139 | * done in 64 bits, avoiding an overflow means that k must be less than | ||
140 | * 64 - 48 = 16 bits. | ||
141 | */ | ||
142 | static void __init powertv_tim_c_clocksource_init(void) | ||
143 | { | ||
144 | int prescale; | ||
145 | unsigned long dividend; | ||
146 | unsigned long k; | ||
147 | int s; | ||
148 | const int max_k_bits = (64 - 48) - 1; | ||
149 | const unsigned long billion = 1000000000; | ||
150 | const unsigned long counts_per_second = 27000000 / 8; | ||
151 | |||
152 | prescale = BITS_PER_LONG - ilog2(billion) - 1; | ||
153 | dividend = billion << prescale; | ||
154 | k = dividend / counts_per_second; | ||
155 | s = ilog2(k) - max_k_bits; | ||
156 | |||
157 | if (s < 0) | ||
158 | s = prescale; | ||
159 | |||
160 | else { | ||
161 | k >>= s; | ||
162 | s += prescale; | ||
163 | } | ||
164 | |||
165 | clocksource_tim_c.mult = k; | ||
166 | clocksource_tim_c.shift = s; | ||
167 | clocksource_tim_c.rating = 200; | ||
168 | |||
169 | clocksource_register(&clocksource_tim_c); | ||
170 | tim_c = (struct tim_c *) asic_reg_addr(tim_ch); | ||
171 | } | ||
172 | |||
173 | /** | ||
174 | powertv_clocksource_init - initialize all clocksources | ||
175 | */ | ||
176 | void __init powertv_clocksource_init(void) | ||
177 | { | ||
178 | powertv_c0_hpt_clocksource_init(); | ||
179 | powertv_tim_c_clocksource_init(); | ||
180 | } | ||
diff --git a/arch/mips/kernel/ftrace.c b/arch/mips/kernel/ftrace.c new file mode 100644 index 000000000000..e9e64e0ff7aa --- /dev/null +++ b/arch/mips/kernel/ftrace.c | |||
@@ -0,0 +1,275 @@ | |||
1 | /* | ||
2 | * Code for replacing ftrace calls with jumps. | ||
3 | * | ||
4 | * Copyright (C) 2007-2008 Steven Rostedt <srostedt@redhat.com> | ||
5 | * Copyright (C) 2009 DSLab, Lanzhou University, China | ||
6 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
7 | * | ||
8 | * Thanks goes to Steven Rostedt for writing the original x86 version. | ||
9 | */ | ||
10 | |||
11 | #include <linux/uaccess.h> | ||
12 | #include <linux/init.h> | ||
13 | #include <linux/ftrace.h> | ||
14 | |||
15 | #include <asm/cacheflush.h> | ||
16 | #include <asm/asm.h> | ||
17 | #include <asm/asm-offsets.h> | ||
18 | |||
19 | #ifdef CONFIG_DYNAMIC_FTRACE | ||
20 | |||
21 | #define JAL 0x0c000000 /* jump & link: ip --> ra, jump to target */ | ||
22 | #define ADDR_MASK 0x03ffffff /* op_code|addr : 31...26|25 ....0 */ | ||
23 | #define jump_insn_encode(op_code, addr) \ | ||
24 | ((unsigned int)((op_code) | (((addr) >> 2) & ADDR_MASK))) | ||
25 | |||
26 | static unsigned int ftrace_nop = 0x00000000; | ||
27 | |||
28 | static int ftrace_modify_code(unsigned long ip, unsigned int new_code) | ||
29 | { | ||
30 | int faulted; | ||
31 | |||
32 | /* *(unsigned int *)ip = new_code; */ | ||
33 | safe_store_code(new_code, ip, faulted); | ||
34 | |||
35 | if (unlikely(faulted)) | ||
36 | return -EFAULT; | ||
37 | |||
38 | flush_icache_range(ip, ip + 8); | ||
39 | |||
40 | return 0; | ||
41 | } | ||
42 | |||
43 | static int lui_v1; | ||
44 | static int jal_mcount; | ||
45 | |||
46 | int ftrace_make_nop(struct module *mod, | ||
47 | struct dyn_ftrace *rec, unsigned long addr) | ||
48 | { | ||
49 | unsigned int new; | ||
50 | int faulted; | ||
51 | unsigned long ip = rec->ip; | ||
52 | |||
53 | /* We have compiled module with -mlong-calls, but compiled the kernel | ||
54 | * without it, we need to cope with them respectively. */ | ||
55 | if (ip & 0x40000000) { | ||
56 | /* record it for ftrace_make_call */ | ||
57 | if (lui_v1 == 0) { | ||
58 | /* lui_v1 = *(unsigned int *)ip; */ | ||
59 | safe_load_code(lui_v1, ip, faulted); | ||
60 | |||
61 | if (unlikely(faulted)) | ||
62 | return -EFAULT; | ||
63 | } | ||
64 | |||
65 | /* lui v1, hi_16bit_of_mcount --> b 1f (0x10000004) | ||
66 | * addiu v1, v1, low_16bit_of_mcount | ||
67 | * move at, ra | ||
68 | * jalr v1 | ||
69 | * nop | ||
70 | * 1f: (ip + 12) | ||
71 | */ | ||
72 | new = 0x10000004; | ||
73 | } else { | ||
74 | /* record/calculate it for ftrace_make_call */ | ||
75 | if (jal_mcount == 0) { | ||
76 | /* We can record it directly like this: | ||
77 | * jal_mcount = *(unsigned int *)ip; | ||
78 | * Herein, jump over the first two nop instructions */ | ||
79 | jal_mcount = jump_insn_encode(JAL, (MCOUNT_ADDR + 8)); | ||
80 | } | ||
81 | |||
82 | /* move at, ra | ||
83 | * jalr v1 --> nop | ||
84 | */ | ||
85 | new = ftrace_nop; | ||
86 | } | ||
87 | return ftrace_modify_code(ip, new); | ||
88 | } | ||
89 | |||
90 | static int modified; /* initialized as 0 by default */ | ||
91 | |||
92 | int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr) | ||
93 | { | ||
94 | unsigned int new; | ||
95 | unsigned long ip = rec->ip; | ||
96 | |||
97 | /* We just need to remove the "b ftrace_stub" at the fist time! */ | ||
98 | if (modified == 0) { | ||
99 | modified = 1; | ||
100 | ftrace_modify_code(addr, ftrace_nop); | ||
101 | } | ||
102 | /* ip, module: 0xc0000000, kernel: 0x80000000 */ | ||
103 | new = (ip & 0x40000000) ? lui_v1 : jal_mcount; | ||
104 | |||
105 | return ftrace_modify_code(ip, new); | ||
106 | } | ||
107 | |||
108 | #define FTRACE_CALL_IP ((unsigned long)(&ftrace_call)) | ||
109 | |||
110 | int ftrace_update_ftrace_func(ftrace_func_t func) | ||
111 | { | ||
112 | unsigned int new; | ||
113 | |||
114 | new = jump_insn_encode(JAL, (unsigned long)func); | ||
115 | |||
116 | return ftrace_modify_code(FTRACE_CALL_IP, new); | ||
117 | } | ||
118 | |||
119 | int __init ftrace_dyn_arch_init(void *data) | ||
120 | { | ||
121 | /* The return code is retured via data */ | ||
122 | *(unsigned long *)data = 0; | ||
123 | |||
124 | return 0; | ||
125 | } | ||
126 | #endif /* CONFIG_DYNAMIC_FTRACE */ | ||
127 | |||
128 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER | ||
129 | |||
130 | #ifdef CONFIG_DYNAMIC_FTRACE | ||
131 | |||
132 | extern void ftrace_graph_call(void); | ||
133 | #define JMP 0x08000000 /* jump to target directly */ | ||
134 | #define CALL_FTRACE_GRAPH_CALLER \ | ||
135 | jump_insn_encode(JMP, (unsigned long)(&ftrace_graph_caller)) | ||
136 | #define FTRACE_GRAPH_CALL_IP ((unsigned long)(&ftrace_graph_call)) | ||
137 | |||
138 | int ftrace_enable_ftrace_graph_caller(void) | ||
139 | { | ||
140 | return ftrace_modify_code(FTRACE_GRAPH_CALL_IP, | ||
141 | CALL_FTRACE_GRAPH_CALLER); | ||
142 | } | ||
143 | |||
144 | int ftrace_disable_ftrace_graph_caller(void) | ||
145 | { | ||
146 | return ftrace_modify_code(FTRACE_GRAPH_CALL_IP, ftrace_nop); | ||
147 | } | ||
148 | |||
149 | #endif /* !CONFIG_DYNAMIC_FTRACE */ | ||
150 | |||
151 | #ifndef KBUILD_MCOUNT_RA_ADDRESS | ||
152 | #define S_RA_SP (0xafbf << 16) /* s{d,w} ra, offset(sp) */ | ||
153 | #define S_R_SP (0xafb0 << 16) /* s{d,w} R, offset(sp) */ | ||
154 | #define OFFSET_MASK 0xffff /* stack offset range: 0 ~ PT_SIZE */ | ||
155 | |||
156 | unsigned long ftrace_get_parent_addr(unsigned long self_addr, | ||
157 | unsigned long parent, | ||
158 | unsigned long parent_addr, | ||
159 | unsigned long fp) | ||
160 | { | ||
161 | unsigned long sp, ip, ra; | ||
162 | unsigned int code; | ||
163 | int faulted; | ||
164 | |||
165 | /* in module or kernel? */ | ||
166 | if (self_addr & 0x40000000) { | ||
167 | /* module: move to the instruction "lui v1, HI_16BIT_OF_MCOUNT" */ | ||
168 | ip = self_addr - 20; | ||
169 | } else { | ||
170 | /* kernel: move to the instruction "move ra, at" */ | ||
171 | ip = self_addr - 12; | ||
172 | } | ||
173 | |||
174 | /* search the text until finding the non-store instruction or "s{d,w} | ||
175 | * ra, offset(sp)" instruction */ | ||
176 | do { | ||
177 | ip -= 4; | ||
178 | |||
179 | /* get the code at "ip": code = *(unsigned int *)ip; */ | ||
180 | safe_load_code(code, ip, faulted); | ||
181 | |||
182 | if (unlikely(faulted)) | ||
183 | return 0; | ||
184 | |||
185 | /* If we hit the non-store instruction before finding where the | ||
186 | * ra is stored, then this is a leaf function and it does not | ||
187 | * store the ra on the stack. */ | ||
188 | if ((code & S_R_SP) != S_R_SP) | ||
189 | return parent_addr; | ||
190 | |||
191 | } while (((code & S_RA_SP) != S_RA_SP)); | ||
192 | |||
193 | sp = fp + (code & OFFSET_MASK); | ||
194 | |||
195 | /* ra = *(unsigned long *)sp; */ | ||
196 | safe_load_stack(ra, sp, faulted); | ||
197 | if (unlikely(faulted)) | ||
198 | return 0; | ||
199 | |||
200 | if (ra == parent) | ||
201 | return sp; | ||
202 | return 0; | ||
203 | } | ||
204 | |||
205 | #endif | ||
206 | |||
207 | /* | ||
208 | * Hook the return address and push it in the stack of return addrs | ||
209 | * in current thread info. | ||
210 | */ | ||
211 | void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr, | ||
212 | unsigned long fp) | ||
213 | { | ||
214 | unsigned long old; | ||
215 | struct ftrace_graph_ent trace; | ||
216 | unsigned long return_hooker = (unsigned long) | ||
217 | &return_to_handler; | ||
218 | int faulted; | ||
219 | |||
220 | if (unlikely(atomic_read(¤t->tracing_graph_pause))) | ||
221 | return; | ||
222 | |||
223 | /* "parent" is the stack address saved the return address of the caller | ||
224 | * of _mcount. | ||
225 | * | ||
226 | * if the gcc < 4.5, a leaf function does not save the return address | ||
227 | * in the stack address, so, we "emulate" one in _mcount's stack space, | ||
228 | * and hijack it directly, but for a non-leaf function, it save the | ||
229 | * return address to the its own stack space, we can not hijack it | ||
230 | * directly, but need to find the real stack address, | ||
231 | * ftrace_get_parent_addr() does it! | ||
232 | * | ||
233 | * if gcc>= 4.5, with the new -mmcount-ra-address option, for a | ||
234 | * non-leaf function, the location of the return address will be saved | ||
235 | * to $12 for us, and for a leaf function, only put a zero into $12. we | ||
236 | * do it in ftrace_graph_caller of mcount.S. | ||
237 | */ | ||
238 | |||
239 | /* old = *parent; */ | ||
240 | safe_load_stack(old, parent, faulted); | ||
241 | if (unlikely(faulted)) | ||
242 | goto out; | ||
243 | #ifndef KBUILD_MCOUNT_RA_ADDRESS | ||
244 | parent = (unsigned long *)ftrace_get_parent_addr(self_addr, old, | ||
245 | (unsigned long)parent, | ||
246 | fp); | ||
247 | /* If fails when getting the stack address of the non-leaf function's | ||
248 | * ra, stop function graph tracer and return */ | ||
249 | if (parent == 0) | ||
250 | goto out; | ||
251 | #endif | ||
252 | /* *parent = return_hooker; */ | ||
253 | safe_store_stack(return_hooker, parent, faulted); | ||
254 | if (unlikely(faulted)) | ||
255 | goto out; | ||
256 | |||
257 | if (ftrace_push_return_trace(old, self_addr, &trace.depth, fp) == | ||
258 | -EBUSY) { | ||
259 | *parent = old; | ||
260 | return; | ||
261 | } | ||
262 | |||
263 | trace.func = self_addr; | ||
264 | |||
265 | /* Only trace if the calling function expects to */ | ||
266 | if (!ftrace_graph_entry(&trace)) { | ||
267 | current->curr_ret_stack--; | ||
268 | *parent = old; | ||
269 | } | ||
270 | return; | ||
271 | out: | ||
272 | ftrace_graph_stop(); | ||
273 | WARN_ON(1); | ||
274 | } | ||
275 | #endif /* CONFIG_FUNCTION_GRAPH_TRACER */ | ||
diff --git a/arch/mips/kernel/i8259.c b/arch/mips/kernel/i8259.c index 01c0885a8061..27799113332c 100644 --- a/arch/mips/kernel/i8259.c +++ b/arch/mips/kernel/i8259.c | |||
@@ -29,7 +29,7 @@ | |||
29 | */ | 29 | */ |
30 | 30 | ||
31 | static int i8259A_auto_eoi = -1; | 31 | static int i8259A_auto_eoi = -1; |
32 | DEFINE_SPINLOCK(i8259A_lock); | 32 | DEFINE_RAW_SPINLOCK(i8259A_lock); |
33 | static void disable_8259A_irq(unsigned int irq); | 33 | static void disable_8259A_irq(unsigned int irq); |
34 | static void enable_8259A_irq(unsigned int irq); | 34 | static void enable_8259A_irq(unsigned int irq); |
35 | static void mask_and_ack_8259A(unsigned int irq); | 35 | static void mask_and_ack_8259A(unsigned int irq); |
@@ -65,13 +65,13 @@ static void disable_8259A_irq(unsigned int irq) | |||
65 | 65 | ||
66 | irq -= I8259A_IRQ_BASE; | 66 | irq -= I8259A_IRQ_BASE; |
67 | mask = 1 << irq; | 67 | mask = 1 << irq; |
68 | spin_lock_irqsave(&i8259A_lock, flags); | 68 | raw_spin_lock_irqsave(&i8259A_lock, flags); |
69 | cached_irq_mask |= mask; | 69 | cached_irq_mask |= mask; |
70 | if (irq & 8) | 70 | if (irq & 8) |
71 | outb(cached_slave_mask, PIC_SLAVE_IMR); | 71 | outb(cached_slave_mask, PIC_SLAVE_IMR); |
72 | else | 72 | else |
73 | outb(cached_master_mask, PIC_MASTER_IMR); | 73 | outb(cached_master_mask, PIC_MASTER_IMR); |
74 | spin_unlock_irqrestore(&i8259A_lock, flags); | 74 | raw_spin_unlock_irqrestore(&i8259A_lock, flags); |
75 | } | 75 | } |
76 | 76 | ||
77 | static void enable_8259A_irq(unsigned int irq) | 77 | static void enable_8259A_irq(unsigned int irq) |
@@ -81,13 +81,13 @@ static void enable_8259A_irq(unsigned int irq) | |||
81 | 81 | ||
82 | irq -= I8259A_IRQ_BASE; | 82 | irq -= I8259A_IRQ_BASE; |
83 | mask = ~(1 << irq); | 83 | mask = ~(1 << irq); |
84 | spin_lock_irqsave(&i8259A_lock, flags); | 84 | raw_spin_lock_irqsave(&i8259A_lock, flags); |
85 | cached_irq_mask &= mask; | 85 | cached_irq_mask &= mask; |
86 | if (irq & 8) | 86 | if (irq & 8) |
87 | outb(cached_slave_mask, PIC_SLAVE_IMR); | 87 | outb(cached_slave_mask, PIC_SLAVE_IMR); |
88 | else | 88 | else |
89 | outb(cached_master_mask, PIC_MASTER_IMR); | 89 | outb(cached_master_mask, PIC_MASTER_IMR); |
90 | spin_unlock_irqrestore(&i8259A_lock, flags); | 90 | raw_spin_unlock_irqrestore(&i8259A_lock, flags); |
91 | } | 91 | } |
92 | 92 | ||
93 | int i8259A_irq_pending(unsigned int irq) | 93 | int i8259A_irq_pending(unsigned int irq) |
@@ -98,12 +98,12 @@ int i8259A_irq_pending(unsigned int irq) | |||
98 | 98 | ||
99 | irq -= I8259A_IRQ_BASE; | 99 | irq -= I8259A_IRQ_BASE; |
100 | mask = 1 << irq; | 100 | mask = 1 << irq; |
101 | spin_lock_irqsave(&i8259A_lock, flags); | 101 | raw_spin_lock_irqsave(&i8259A_lock, flags); |
102 | if (irq < 8) | 102 | if (irq < 8) |
103 | ret = inb(PIC_MASTER_CMD) & mask; | 103 | ret = inb(PIC_MASTER_CMD) & mask; |
104 | else | 104 | else |
105 | ret = inb(PIC_SLAVE_CMD) & (mask >> 8); | 105 | ret = inb(PIC_SLAVE_CMD) & (mask >> 8); |
106 | spin_unlock_irqrestore(&i8259A_lock, flags); | 106 | raw_spin_unlock_irqrestore(&i8259A_lock, flags); |
107 | 107 | ||
108 | return ret; | 108 | return ret; |
109 | } | 109 | } |
@@ -151,7 +151,7 @@ static void mask_and_ack_8259A(unsigned int irq) | |||
151 | 151 | ||
152 | irq -= I8259A_IRQ_BASE; | 152 | irq -= I8259A_IRQ_BASE; |
153 | irqmask = 1 << irq; | 153 | irqmask = 1 << irq; |
154 | spin_lock_irqsave(&i8259A_lock, flags); | 154 | raw_spin_lock_irqsave(&i8259A_lock, flags); |
155 | /* | 155 | /* |
156 | * Lightweight spurious IRQ detection. We do not want | 156 | * Lightweight spurious IRQ detection. We do not want |
157 | * to overdo spurious IRQ handling - it's usually a sign | 157 | * to overdo spurious IRQ handling - it's usually a sign |
@@ -183,7 +183,7 @@ handle_real_irq: | |||
183 | outb(0x60+irq, PIC_MASTER_CMD); /* 'Specific EOI to master */ | 183 | outb(0x60+irq, PIC_MASTER_CMD); /* 'Specific EOI to master */ |
184 | } | 184 | } |
185 | smtc_im_ack_irq(irq); | 185 | smtc_im_ack_irq(irq); |
186 | spin_unlock_irqrestore(&i8259A_lock, flags); | 186 | raw_spin_unlock_irqrestore(&i8259A_lock, flags); |
187 | return; | 187 | return; |
188 | 188 | ||
189 | spurious_8259A_irq: | 189 | spurious_8259A_irq: |
@@ -264,7 +264,7 @@ static void init_8259A(int auto_eoi) | |||
264 | 264 | ||
265 | i8259A_auto_eoi = auto_eoi; | 265 | i8259A_auto_eoi = auto_eoi; |
266 | 266 | ||
267 | spin_lock_irqsave(&i8259A_lock, flags); | 267 | raw_spin_lock_irqsave(&i8259A_lock, flags); |
268 | 268 | ||
269 | outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */ | 269 | outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */ |
270 | outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-2 */ | 270 | outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-2 */ |
@@ -298,7 +298,7 @@ static void init_8259A(int auto_eoi) | |||
298 | outb(cached_master_mask, PIC_MASTER_IMR); /* restore master IRQ mask */ | 298 | outb(cached_master_mask, PIC_MASTER_IMR); /* restore master IRQ mask */ |
299 | outb(cached_slave_mask, PIC_SLAVE_IMR); /* restore slave IRQ mask */ | 299 | outb(cached_slave_mask, PIC_SLAVE_IMR); /* restore slave IRQ mask */ |
300 | 300 | ||
301 | spin_unlock_irqrestore(&i8259A_lock, flags); | 301 | raw_spin_unlock_irqrestore(&i8259A_lock, flags); |
302 | } | 302 | } |
303 | 303 | ||
304 | /* | 304 | /* |
diff --git a/arch/mips/kernel/irq-gt641xx.c b/arch/mips/kernel/irq-gt641xx.c index ebcc5f7ad9c2..42ef81461bfc 100644 --- a/arch/mips/kernel/irq-gt641xx.c +++ b/arch/mips/kernel/irq-gt641xx.c | |||
@@ -27,18 +27,18 @@ | |||
27 | 27 | ||
28 | #define GT641XX_IRQ_TO_BIT(irq) (1U << (irq - GT641XX_IRQ_BASE)) | 28 | #define GT641XX_IRQ_TO_BIT(irq) (1U << (irq - GT641XX_IRQ_BASE)) |
29 | 29 | ||
30 | static DEFINE_SPINLOCK(gt641xx_irq_lock); | 30 | static DEFINE_RAW_SPINLOCK(gt641xx_irq_lock); |
31 | 31 | ||
32 | static void ack_gt641xx_irq(unsigned int irq) | 32 | static void ack_gt641xx_irq(unsigned int irq) |
33 | { | 33 | { |
34 | unsigned long flags; | 34 | unsigned long flags; |
35 | u32 cause; | 35 | u32 cause; |
36 | 36 | ||
37 | spin_lock_irqsave(>641xx_irq_lock, flags); | 37 | raw_spin_lock_irqsave(>641xx_irq_lock, flags); |
38 | cause = GT_READ(GT_INTRCAUSE_OFS); | 38 | cause = GT_READ(GT_INTRCAUSE_OFS); |
39 | cause &= ~GT641XX_IRQ_TO_BIT(irq); | 39 | cause &= ~GT641XX_IRQ_TO_BIT(irq); |
40 | GT_WRITE(GT_INTRCAUSE_OFS, cause); | 40 | GT_WRITE(GT_INTRCAUSE_OFS, cause); |
41 | spin_unlock_irqrestore(>641xx_irq_lock, flags); | 41 | raw_spin_unlock_irqrestore(>641xx_irq_lock, flags); |
42 | } | 42 | } |
43 | 43 | ||
44 | static void mask_gt641xx_irq(unsigned int irq) | 44 | static void mask_gt641xx_irq(unsigned int irq) |
@@ -46,11 +46,11 @@ static void mask_gt641xx_irq(unsigned int irq) | |||
46 | unsigned long flags; | 46 | unsigned long flags; |
47 | u32 mask; | 47 | u32 mask; |
48 | 48 | ||
49 | spin_lock_irqsave(>641xx_irq_lock, flags); | 49 | raw_spin_lock_irqsave(>641xx_irq_lock, flags); |
50 | mask = GT_READ(GT_INTRMASK_OFS); | 50 | mask = GT_READ(GT_INTRMASK_OFS); |
51 | mask &= ~GT641XX_IRQ_TO_BIT(irq); | 51 | mask &= ~GT641XX_IRQ_TO_BIT(irq); |
52 | GT_WRITE(GT_INTRMASK_OFS, mask); | 52 | GT_WRITE(GT_INTRMASK_OFS, mask); |
53 | spin_unlock_irqrestore(>641xx_irq_lock, flags); | 53 | raw_spin_unlock_irqrestore(>641xx_irq_lock, flags); |
54 | } | 54 | } |
55 | 55 | ||
56 | static void mask_ack_gt641xx_irq(unsigned int irq) | 56 | static void mask_ack_gt641xx_irq(unsigned int irq) |
@@ -58,7 +58,7 @@ static void mask_ack_gt641xx_irq(unsigned int irq) | |||
58 | unsigned long flags; | 58 | unsigned long flags; |
59 | u32 cause, mask; | 59 | u32 cause, mask; |
60 | 60 | ||
61 | spin_lock_irqsave(>641xx_irq_lock, flags); | 61 | raw_spin_lock_irqsave(>641xx_irq_lock, flags); |
62 | mask = GT_READ(GT_INTRMASK_OFS); | 62 | mask = GT_READ(GT_INTRMASK_OFS); |
63 | mask &= ~GT641XX_IRQ_TO_BIT(irq); | 63 | mask &= ~GT641XX_IRQ_TO_BIT(irq); |
64 | GT_WRITE(GT_INTRMASK_OFS, mask); | 64 | GT_WRITE(GT_INTRMASK_OFS, mask); |
@@ -66,7 +66,7 @@ static void mask_ack_gt641xx_irq(unsigned int irq) | |||
66 | cause = GT_READ(GT_INTRCAUSE_OFS); | 66 | cause = GT_READ(GT_INTRCAUSE_OFS); |
67 | cause &= ~GT641XX_IRQ_TO_BIT(irq); | 67 | cause &= ~GT641XX_IRQ_TO_BIT(irq); |
68 | GT_WRITE(GT_INTRCAUSE_OFS, cause); | 68 | GT_WRITE(GT_INTRCAUSE_OFS, cause); |
69 | spin_unlock_irqrestore(>641xx_irq_lock, flags); | 69 | raw_spin_unlock_irqrestore(>641xx_irq_lock, flags); |
70 | } | 70 | } |
71 | 71 | ||
72 | static void unmask_gt641xx_irq(unsigned int irq) | 72 | static void unmask_gt641xx_irq(unsigned int irq) |
@@ -74,11 +74,11 @@ static void unmask_gt641xx_irq(unsigned int irq) | |||
74 | unsigned long flags; | 74 | unsigned long flags; |
75 | u32 mask; | 75 | u32 mask; |
76 | 76 | ||
77 | spin_lock_irqsave(>641xx_irq_lock, flags); | 77 | raw_spin_lock_irqsave(>641xx_irq_lock, flags); |
78 | mask = GT_READ(GT_INTRMASK_OFS); | 78 | mask = GT_READ(GT_INTRMASK_OFS); |
79 | mask |= GT641XX_IRQ_TO_BIT(irq); | 79 | mask |= GT641XX_IRQ_TO_BIT(irq); |
80 | GT_WRITE(GT_INTRMASK_OFS, mask); | 80 | GT_WRITE(GT_INTRMASK_OFS, mask); |
81 | spin_unlock_irqrestore(>641xx_irq_lock, flags); | 81 | raw_spin_unlock_irqrestore(>641xx_irq_lock, flags); |
82 | } | 82 | } |
83 | 83 | ||
84 | static struct irq_chip gt641xx_irq_chip = { | 84 | static struct irq_chip gt641xx_irq_chip = { |
diff --git a/arch/mips/kernel/irq.c b/arch/mips/kernel/irq.c index 7b845ba9dff4..c6345f579a8a 100644 --- a/arch/mips/kernel/irq.c +++ b/arch/mips/kernel/irq.c | |||
@@ -15,13 +15,13 @@ | |||
15 | #include <linux/kernel_stat.h> | 15 | #include <linux/kernel_stat.h> |
16 | #include <linux/module.h> | 16 | #include <linux/module.h> |
17 | #include <linux/proc_fs.h> | 17 | #include <linux/proc_fs.h> |
18 | #include <linux/slab.h> | ||
19 | #include <linux/mm.h> | 18 | #include <linux/mm.h> |
20 | #include <linux/random.h> | 19 | #include <linux/random.h> |
21 | #include <linux/sched.h> | 20 | #include <linux/sched.h> |
22 | #include <linux/seq_file.h> | 21 | #include <linux/seq_file.h> |
23 | #include <linux/kallsyms.h> | 22 | #include <linux/kallsyms.h> |
24 | #include <linux/kgdb.h> | 23 | #include <linux/kgdb.h> |
24 | #include <linux/ftrace.h> | ||
25 | 25 | ||
26 | #include <asm/atomic.h> | 26 | #include <asm/atomic.h> |
27 | #include <asm/system.h> | 27 | #include <asm/system.h> |
@@ -99,7 +99,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
99 | } | 99 | } |
100 | 100 | ||
101 | if (i < NR_IRQS) { | 101 | if (i < NR_IRQS) { |
102 | spin_lock_irqsave(&irq_desc[i].lock, flags); | 102 | raw_spin_lock_irqsave(&irq_desc[i].lock, flags); |
103 | action = irq_desc[i].action; | 103 | action = irq_desc[i].action; |
104 | if (!action) | 104 | if (!action) |
105 | goto skip; | 105 | goto skip; |
@@ -118,7 +118,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
118 | 118 | ||
119 | seq_putc(p, '\n'); | 119 | seq_putc(p, '\n'); |
120 | skip: | 120 | skip: |
121 | spin_unlock_irqrestore(&irq_desc[i].lock, flags); | 121 | raw_spin_unlock_irqrestore(&irq_desc[i].lock, flags); |
122 | } else if (i == NR_IRQS) { | 122 | } else if (i == NR_IRQS) { |
123 | seq_putc(p, '\n'); | 123 | seq_putc(p, '\n'); |
124 | seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count)); | 124 | seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count)); |
@@ -150,3 +150,32 @@ void __init init_IRQ(void) | |||
150 | kgdb_early_setup = 1; | 150 | kgdb_early_setup = 1; |
151 | #endif | 151 | #endif |
152 | } | 152 | } |
153 | |||
154 | /* | ||
155 | * do_IRQ handles all normal device IRQ's (the special | ||
156 | * SMP cross-CPU interrupts have their own specific | ||
157 | * handlers). | ||
158 | */ | ||
159 | void __irq_entry do_IRQ(unsigned int irq) | ||
160 | { | ||
161 | irq_enter(); | ||
162 | __DO_IRQ_SMTC_HOOK(irq); | ||
163 | generic_handle_irq(irq); | ||
164 | irq_exit(); | ||
165 | } | ||
166 | |||
167 | #ifdef CONFIG_MIPS_MT_SMTC_IRQAFF | ||
168 | /* | ||
169 | * To avoid inefficient and in some cases pathological re-checking of | ||
170 | * IRQ affinity, we have this variant that skips the affinity check. | ||
171 | */ | ||
172 | |||
173 | void __irq_entry do_IRQ_no_affinity(unsigned int irq) | ||
174 | { | ||
175 | irq_enter(); | ||
176 | __NO_AFFINITY_IRQ_SMTC_HOOK(irq); | ||
177 | generic_handle_irq(irq); | ||
178 | irq_exit(); | ||
179 | } | ||
180 | |||
181 | #endif /* CONFIG_MIPS_MT_SMTC_IRQAFF */ | ||
diff --git a/arch/mips/kernel/kspd.c b/arch/mips/kernel/kspd.c index ad4e017ed2f3..80e2ba694bab 100644 --- a/arch/mips/kernel/kspd.c +++ b/arch/mips/kernel/kspd.c | |||
@@ -82,6 +82,7 @@ static int sp_stopping; | |||
82 | #define MTSP_O_SHLOCK 0x0010 | 82 | #define MTSP_O_SHLOCK 0x0010 |
83 | #define MTSP_O_EXLOCK 0x0020 | 83 | #define MTSP_O_EXLOCK 0x0020 |
84 | #define MTSP_O_ASYNC 0x0040 | 84 | #define MTSP_O_ASYNC 0x0040 |
85 | /* XXX: check which of these is actually O_SYNC vs O_DSYNC */ | ||
85 | #define MTSP_O_FSYNC O_SYNC | 86 | #define MTSP_O_FSYNC O_SYNC |
86 | #define MTSP_O_NOFOLLOW 0x0100 | 87 | #define MTSP_O_NOFOLLOW 0x0100 |
87 | #define MTSP_O_SYNC 0x0080 | 88 | #define MTSP_O_SYNC 0x0080 |
diff --git a/arch/mips/kernel/linux32.c b/arch/mips/kernel/linux32.c index b77fefaff9da..c2dab140dc98 100644 --- a/arch/mips/kernel/linux32.c +++ b/arch/mips/kernel/linux32.c | |||
@@ -9,14 +9,12 @@ | |||
9 | #include <linux/mm.h> | 9 | #include <linux/mm.h> |
10 | #include <linux/errno.h> | 10 | #include <linux/errno.h> |
11 | #include <linux/file.h> | 11 | #include <linux/file.h> |
12 | #include <linux/smp_lock.h> | ||
13 | #include <linux/highuid.h> | 12 | #include <linux/highuid.h> |
14 | #include <linux/resource.h> | 13 | #include <linux/resource.h> |
15 | #include <linux/highmem.h> | 14 | #include <linux/highmem.h> |
16 | #include <linux/time.h> | 15 | #include <linux/time.h> |
17 | #include <linux/times.h> | 16 | #include <linux/times.h> |
18 | #include <linux/poll.h> | 17 | #include <linux/poll.h> |
19 | #include <linux/slab.h> | ||
20 | #include <linux/skbuff.h> | 18 | #include <linux/skbuff.h> |
21 | #include <linux/filter.h> | 19 | #include <linux/filter.h> |
22 | #include <linux/shm.h> | 20 | #include <linux/shm.h> |
@@ -35,6 +33,7 @@ | |||
35 | #include <linux/compat.h> | 33 | #include <linux/compat.h> |
36 | #include <linux/vfs.h> | 34 | #include <linux/vfs.h> |
37 | #include <linux/ipc.h> | 35 | #include <linux/ipc.h> |
36 | #include <linux/slab.h> | ||
38 | 37 | ||
39 | #include <net/sock.h> | 38 | #include <net/sock.h> |
40 | #include <net/scm.h> | 39 | #include <net/scm.h> |
@@ -67,28 +66,13 @@ SYSCALL_DEFINE6(32_mmap2, unsigned long, addr, unsigned long, len, | |||
67 | unsigned long, prot, unsigned long, flags, unsigned long, fd, | 66 | unsigned long, prot, unsigned long, flags, unsigned long, fd, |
68 | unsigned long, pgoff) | 67 | unsigned long, pgoff) |
69 | { | 68 | { |
70 | struct file * file = NULL; | ||
71 | unsigned long error; | 69 | unsigned long error; |
72 | 70 | ||
73 | error = -EINVAL; | 71 | error = -EINVAL; |
74 | if (pgoff & (~PAGE_MASK >> 12)) | 72 | if (pgoff & (~PAGE_MASK >> 12)) |
75 | goto out; | 73 | goto out; |
76 | pgoff >>= PAGE_SHIFT-12; | 74 | error = sys_mmap_pgoff(addr, len, prot, flags, fd, |
77 | 75 | pgoff >> (PAGE_SHIFT-12)); | |
78 | if (!(flags & MAP_ANONYMOUS)) { | ||
79 | error = -EBADF; | ||
80 | file = fget(fd); | ||
81 | if (!file) | ||
82 | goto out; | ||
83 | } | ||
84 | flags &= ~(MAP_EXECUTABLE | MAP_DENYWRITE); | ||
85 | |||
86 | down_write(¤t->mm->mmap_sem); | ||
87 | error = do_mmap_pgoff(file, addr, len, prot, flags, pgoff); | ||
88 | up_write(¤t->mm->mmap_sem); | ||
89 | if (file) | ||
90 | fput(file); | ||
91 | |||
92 | out: | 76 | out: |
93 | return error; | 77 | return error; |
94 | } | 78 | } |
@@ -265,83 +249,6 @@ SYSCALL_DEFINE5(n32_msgrcv, int, msqid, u32, msgp, size_t, msgsz, | |||
265 | } | 249 | } |
266 | #endif | 250 | #endif |
267 | 251 | ||
268 | struct sysctl_args32 | ||
269 | { | ||
270 | compat_caddr_t name; | ||
271 | int nlen; | ||
272 | compat_caddr_t oldval; | ||
273 | compat_caddr_t oldlenp; | ||
274 | compat_caddr_t newval; | ||
275 | compat_size_t newlen; | ||
276 | unsigned int __unused[4]; | ||
277 | }; | ||
278 | |||
279 | #ifdef CONFIG_SYSCTL_SYSCALL | ||
280 | |||
281 | SYSCALL_DEFINE1(32_sysctl, struct sysctl_args32 __user *, args) | ||
282 | { | ||
283 | struct sysctl_args32 tmp; | ||
284 | int error; | ||
285 | size_t oldlen; | ||
286 | size_t __user *oldlenp = NULL; | ||
287 | unsigned long addr = (((unsigned long)&args->__unused[0]) + 7) & ~7; | ||
288 | |||
289 | if (copy_from_user(&tmp, args, sizeof(tmp))) | ||
290 | return -EFAULT; | ||
291 | |||
292 | if (tmp.oldval && tmp.oldlenp) { | ||
293 | /* Duh, this is ugly and might not work if sysctl_args | ||
294 | is in read-only memory, but do_sysctl does indirectly | ||
295 | a lot of uaccess in both directions and we'd have to | ||
296 | basically copy the whole sysctl.c here, and | ||
297 | glibc's __sysctl uses rw memory for the structure | ||
298 | anyway. */ | ||
299 | if (get_user(oldlen, (u32 __user *)A(tmp.oldlenp)) || | ||
300 | put_user(oldlen, (size_t __user *)addr)) | ||
301 | return -EFAULT; | ||
302 | oldlenp = (size_t __user *)addr; | ||
303 | } | ||
304 | |||
305 | lock_kernel(); | ||
306 | error = do_sysctl((int __user *)A(tmp.name), tmp.nlen, (void __user *)A(tmp.oldval), | ||
307 | oldlenp, (void __user *)A(tmp.newval), tmp.newlen); | ||
308 | unlock_kernel(); | ||
309 | if (oldlenp) { | ||
310 | if (!error) { | ||
311 | if (get_user(oldlen, (size_t __user *)addr) || | ||
312 | put_user(oldlen, (u32 __user *)A(tmp.oldlenp))) | ||
313 | error = -EFAULT; | ||
314 | } | ||
315 | copy_to_user(args->__unused, tmp.__unused, sizeof(tmp.__unused)); | ||
316 | } | ||
317 | return error; | ||
318 | } | ||
319 | |||
320 | #else | ||
321 | |||
322 | SYSCALL_DEFINE1(32_sysctl, struct sysctl_args32 __user *, args) | ||
323 | { | ||
324 | return -ENOSYS; | ||
325 | } | ||
326 | |||
327 | #endif /* CONFIG_SYSCTL_SYSCALL */ | ||
328 | |||
329 | SYSCALL_DEFINE1(32_newuname, struct new_utsname __user *, name) | ||
330 | { | ||
331 | int ret = 0; | ||
332 | |||
333 | down_read(&uts_sem); | ||
334 | if (copy_to_user(name, utsname(), sizeof *name)) | ||
335 | ret = -EFAULT; | ||
336 | up_read(&uts_sem); | ||
337 | |||
338 | if (current->personality == PER_LINUX32 && !ret) | ||
339 | if (copy_to_user(name->machine, "mips\0\0\0", 8)) | ||
340 | ret = -EFAULT; | ||
341 | |||
342 | return ret; | ||
343 | } | ||
344 | |||
345 | SYSCALL_DEFINE1(32_personality, unsigned long, personality) | 252 | SYSCALL_DEFINE1(32_personality, unsigned long, personality) |
346 | { | 253 | { |
347 | int ret; | 254 | int ret; |
diff --git a/arch/mips/kernel/mcount.S b/arch/mips/kernel/mcount.S new file mode 100644 index 000000000000..6851fc97a511 --- /dev/null +++ b/arch/mips/kernel/mcount.S | |||
@@ -0,0 +1,189 @@ | |||
1 | /* | ||
2 | * MIPS specific _mcount support | ||
3 | * | ||
4 | * This file is subject to the terms and conditions of the GNU General Public | ||
5 | * License. See the file "COPYING" in the main directory of this archive for | ||
6 | * more details. | ||
7 | * | ||
8 | * Copyright (C) 2009 Lemote Inc. & DSLab, Lanzhou University, China | ||
9 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
10 | */ | ||
11 | |||
12 | #include <asm/regdef.h> | ||
13 | #include <asm/stackframe.h> | ||
14 | #include <asm/ftrace.h> | ||
15 | |||
16 | .text | ||
17 | .set noreorder | ||
18 | .set noat | ||
19 | |||
20 | .macro MCOUNT_SAVE_REGS | ||
21 | PTR_SUBU sp, PT_SIZE | ||
22 | PTR_S ra, PT_R31(sp) | ||
23 | PTR_S AT, PT_R1(sp) | ||
24 | PTR_S a0, PT_R4(sp) | ||
25 | PTR_S a1, PT_R5(sp) | ||
26 | PTR_S a2, PT_R6(sp) | ||
27 | PTR_S a3, PT_R7(sp) | ||
28 | #ifdef CONFIG_64BIT | ||
29 | PTR_S a4, PT_R8(sp) | ||
30 | PTR_S a5, PT_R9(sp) | ||
31 | PTR_S a6, PT_R10(sp) | ||
32 | PTR_S a7, PT_R11(sp) | ||
33 | #endif | ||
34 | .endm | ||
35 | |||
36 | .macro MCOUNT_RESTORE_REGS | ||
37 | PTR_L ra, PT_R31(sp) | ||
38 | PTR_L AT, PT_R1(sp) | ||
39 | PTR_L a0, PT_R4(sp) | ||
40 | PTR_L a1, PT_R5(sp) | ||
41 | PTR_L a2, PT_R6(sp) | ||
42 | PTR_L a3, PT_R7(sp) | ||
43 | #ifdef CONFIG_64BIT | ||
44 | PTR_L a4, PT_R8(sp) | ||
45 | PTR_L a5, PT_R9(sp) | ||
46 | PTR_L a6, PT_R10(sp) | ||
47 | PTR_L a7, PT_R11(sp) | ||
48 | #endif | ||
49 | #ifdef CONFIG_64BIT | ||
50 | PTR_ADDIU sp, PT_SIZE | ||
51 | #else | ||
52 | PTR_ADDIU sp, (PT_SIZE + 8) | ||
53 | #endif | ||
54 | .endm | ||
55 | |||
56 | .macro RETURN_BACK | ||
57 | jr ra | ||
58 | move ra, AT | ||
59 | .endm | ||
60 | |||
61 | #ifdef CONFIG_DYNAMIC_FTRACE | ||
62 | |||
63 | NESTED(ftrace_caller, PT_SIZE, ra) | ||
64 | .globl _mcount | ||
65 | _mcount: | ||
66 | b ftrace_stub | ||
67 | nop | ||
68 | lw t1, function_trace_stop | ||
69 | bnez t1, ftrace_stub | ||
70 | nop | ||
71 | |||
72 | MCOUNT_SAVE_REGS | ||
73 | #ifdef KBUILD_MCOUNT_RA_ADDRESS | ||
74 | PTR_S t0, PT_R12(sp) /* t0 saved the location of the return address(at) by -mmcount-ra-address */ | ||
75 | #endif | ||
76 | |||
77 | move a0, ra /* arg1: next ip, selfaddr */ | ||
78 | .globl ftrace_call | ||
79 | ftrace_call: | ||
80 | nop /* a placeholder for the call to a real tracing function */ | ||
81 | move a1, AT /* arg2: the caller's next ip, parent */ | ||
82 | |||
83 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER | ||
84 | .globl ftrace_graph_call | ||
85 | ftrace_graph_call: | ||
86 | nop | ||
87 | nop | ||
88 | #endif | ||
89 | |||
90 | MCOUNT_RESTORE_REGS | ||
91 | .globl ftrace_stub | ||
92 | ftrace_stub: | ||
93 | RETURN_BACK | ||
94 | END(ftrace_caller) | ||
95 | |||
96 | #else /* ! CONFIG_DYNAMIC_FTRACE */ | ||
97 | |||
98 | NESTED(_mcount, PT_SIZE, ra) | ||
99 | lw t1, function_trace_stop | ||
100 | bnez t1, ftrace_stub | ||
101 | nop | ||
102 | PTR_LA t1, ftrace_stub | ||
103 | PTR_L t2, ftrace_trace_function /* Prepare t2 for (1) */ | ||
104 | bne t1, t2, static_trace | ||
105 | nop | ||
106 | |||
107 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER | ||
108 | PTR_L t3, ftrace_graph_return | ||
109 | bne t1, t3, ftrace_graph_caller | ||
110 | nop | ||
111 | PTR_LA t1, ftrace_graph_entry_stub | ||
112 | PTR_L t3, ftrace_graph_entry | ||
113 | bne t1, t3, ftrace_graph_caller | ||
114 | nop | ||
115 | #endif | ||
116 | b ftrace_stub | ||
117 | nop | ||
118 | |||
119 | static_trace: | ||
120 | MCOUNT_SAVE_REGS | ||
121 | |||
122 | move a0, ra /* arg1: next ip, selfaddr */ | ||
123 | jalr t2 /* (1) call *ftrace_trace_function */ | ||
124 | move a1, AT /* arg2: the caller's next ip, parent */ | ||
125 | |||
126 | MCOUNT_RESTORE_REGS | ||
127 | .globl ftrace_stub | ||
128 | ftrace_stub: | ||
129 | RETURN_BACK | ||
130 | END(_mcount) | ||
131 | |||
132 | #endif /* ! CONFIG_DYNAMIC_FTRACE */ | ||
133 | |||
134 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER | ||
135 | |||
136 | NESTED(ftrace_graph_caller, PT_SIZE, ra) | ||
137 | #ifdef CONFIG_DYNAMIC_FTRACE | ||
138 | PTR_L a1, PT_R31(sp) /* load the original ra from the stack */ | ||
139 | #ifdef KBUILD_MCOUNT_RA_ADDRESS | ||
140 | PTR_L t0, PT_R12(sp) /* load the original t0 from the stack */ | ||
141 | #endif | ||
142 | #else | ||
143 | MCOUNT_SAVE_REGS | ||
144 | move a1, ra /* arg2: next ip, selfaddr */ | ||
145 | #endif | ||
146 | |||
147 | #ifdef KBUILD_MCOUNT_RA_ADDRESS | ||
148 | bnez t0, 1f /* non-leaf func: t0 saved the location of the return address */ | ||
149 | nop | ||
150 | PTR_LA t0, PT_R1(sp) /* leaf func: get the location of at(old ra) from our own stack */ | ||
151 | 1: move a0, t0 /* arg1: the location of the return address */ | ||
152 | #else | ||
153 | PTR_LA a0, PT_R1(sp) /* arg1: &AT -> a0 */ | ||
154 | #endif | ||
155 | jal prepare_ftrace_return | ||
156 | #ifdef CONFIG_FRAME_POINTER | ||
157 | move a2, fp /* arg3: frame pointer */ | ||
158 | #else | ||
159 | #ifdef CONFIG_64BIT | ||
160 | PTR_LA a2, PT_SIZE(sp) | ||
161 | #else | ||
162 | PTR_LA a2, (PT_SIZE+8)(sp) | ||
163 | #endif | ||
164 | #endif | ||
165 | |||
166 | MCOUNT_RESTORE_REGS | ||
167 | RETURN_BACK | ||
168 | END(ftrace_graph_caller) | ||
169 | |||
170 | .align 2 | ||
171 | .globl return_to_handler | ||
172 | return_to_handler: | ||
173 | PTR_SUBU sp, PT_SIZE | ||
174 | PTR_S v0, PT_R2(sp) | ||
175 | |||
176 | jal ftrace_return_to_handler | ||
177 | PTR_S v1, PT_R3(sp) | ||
178 | |||
179 | /* restore the real parent address: v0 -> ra */ | ||
180 | move ra, v0 | ||
181 | |||
182 | PTR_L v0, PT_R2(sp) | ||
183 | PTR_L v1, PT_R3(sp) | ||
184 | jr ra | ||
185 | PTR_ADDIU sp, PT_SIZE | ||
186 | #endif /* CONFIG_FUNCTION_GRAPH_TRACER */ | ||
187 | |||
188 | .set at | ||
189 | .set reorder | ||
diff --git a/arch/mips/kernel/mips_ksyms.c b/arch/mips/kernel/mips_ksyms.c index 225755d0c1f6..1d04807874db 100644 --- a/arch/mips/kernel/mips_ksyms.c +++ b/arch/mips/kernel/mips_ksyms.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <asm/checksum.h> | 13 | #include <asm/checksum.h> |
14 | #include <asm/pgtable.h> | 14 | #include <asm/pgtable.h> |
15 | #include <asm/uaccess.h> | 15 | #include <asm/uaccess.h> |
16 | #include <asm/ftrace.h> | ||
16 | 17 | ||
17 | extern void *__bzero(void *__s, size_t __count); | 18 | extern void *__bzero(void *__s, size_t __count); |
18 | extern long __strncpy_from_user_nocheck_asm(char *__to, | 19 | extern long __strncpy_from_user_nocheck_asm(char *__to, |
@@ -51,3 +52,7 @@ EXPORT_SYMBOL(csum_partial_copy_nocheck); | |||
51 | EXPORT_SYMBOL(__csum_partial_copy_user); | 52 | EXPORT_SYMBOL(__csum_partial_copy_user); |
52 | 53 | ||
53 | EXPORT_SYMBOL(invalid_pte_table); | 54 | EXPORT_SYMBOL(invalid_pte_table); |
55 | #ifdef CONFIG_FUNCTION_TRACER | ||
56 | /* _mcount is defined in arch/mips/kernel/mcount.S */ | ||
57 | EXPORT_SYMBOL(_mcount); | ||
58 | #endif | ||
diff --git a/arch/mips/kernel/octeon_switch.S b/arch/mips/kernel/octeon_switch.S index 3952b8323efa..dd18b26a358a 100644 --- a/arch/mips/kernel/octeon_switch.S +++ b/arch/mips/kernel/octeon_switch.S | |||
@@ -500,4 +500,3 @@ done_restore: | |||
500 | nop | 500 | nop |
501 | END(octeon_mult_restore) | 501 | END(octeon_mult_restore) |
502 | .set pop | 502 | .set pop |
503 | |||
diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c index f3d73e1831c1..99960940d4a4 100644 --- a/arch/mips/kernel/process.c +++ b/arch/mips/kernel/process.c | |||
@@ -17,7 +17,6 @@ | |||
17 | #include <linux/stddef.h> | 17 | #include <linux/stddef.h> |
18 | #include <linux/unistd.h> | 18 | #include <linux/unistd.h> |
19 | #include <linux/ptrace.h> | 19 | #include <linux/ptrace.h> |
20 | #include <linux/slab.h> | ||
21 | #include <linux/mman.h> | 20 | #include <linux/mman.h> |
22 | #include <linux/personality.h> | 21 | #include <linux/personality.h> |
23 | #include <linux/sys.h> | 22 | #include <linux/sys.h> |
@@ -64,8 +63,13 @@ void __noreturn cpu_idle(void) | |||
64 | 63 | ||
65 | smtc_idle_loop_hook(); | 64 | smtc_idle_loop_hook(); |
66 | #endif | 65 | #endif |
67 | if (cpu_wait) | 66 | |
67 | if (cpu_wait) { | ||
68 | /* Don't trace irqs off for idle */ | ||
69 | stop_critical_timings(); | ||
68 | (*cpu_wait)(); | 70 | (*cpu_wait)(); |
71 | start_critical_timings(); | ||
72 | } | ||
69 | } | 73 | } |
70 | #ifdef CONFIG_HOTPLUG_CPU | 74 | #ifdef CONFIG_HOTPLUG_CPU |
71 | if (!cpu_online(cpu) && !cpu_isset(cpu, cpu_callin_map) && | 75 | if (!cpu_online(cpu) && !cpu_isset(cpu, cpu_callin_map) && |
diff --git a/arch/mips/kernel/ptrace.c b/arch/mips/kernel/ptrace.c index 054861ccb4dd..c51b95ff8644 100644 --- a/arch/mips/kernel/ptrace.c +++ b/arch/mips/kernel/ptrace.c | |||
@@ -493,36 +493,6 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
493 | ret = ptrace_setfpregs(child, (__u32 __user *) data); | 493 | ret = ptrace_setfpregs(child, (__u32 __user *) data); |
494 | break; | 494 | break; |
495 | 495 | ||
496 | case PTRACE_SYSCALL: /* continue and stop at next (return from) syscall */ | ||
497 | case PTRACE_CONT: { /* restart after signal. */ | ||
498 | ret = -EIO; | ||
499 | if (!valid_signal(data)) | ||
500 | break; | ||
501 | if (request == PTRACE_SYSCALL) { | ||
502 | set_tsk_thread_flag(child, TIF_SYSCALL_TRACE); | ||
503 | } | ||
504 | else { | ||
505 | clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE); | ||
506 | } | ||
507 | child->exit_code = data; | ||
508 | wake_up_process(child); | ||
509 | ret = 0; | ||
510 | break; | ||
511 | } | ||
512 | |||
513 | /* | ||
514 | * make the child exit. Best I can do is send it a sigkill. | ||
515 | * perhaps it should be put in the status that it wants to | ||
516 | * exit. | ||
517 | */ | ||
518 | case PTRACE_KILL: | ||
519 | ret = 0; | ||
520 | if (child->exit_state == EXIT_ZOMBIE) /* already dead */ | ||
521 | break; | ||
522 | child->exit_code = SIGKILL; | ||
523 | wake_up_process(child); | ||
524 | break; | ||
525 | |||
526 | case PTRACE_GET_THREAD_AREA: | 496 | case PTRACE_GET_THREAD_AREA: |
527 | ret = put_user(task_thread_info(child)->tp_value, | 497 | ret = put_user(task_thread_info(child)->tp_value, |
528 | (unsigned long __user *) data); | 498 | (unsigned long __user *) data); |
diff --git a/arch/mips/kernel/rtlx.c b/arch/mips/kernel/rtlx.c index 364f066cb497..26f9b9ab19cc 100644 --- a/arch/mips/kernel/rtlx.c +++ b/arch/mips/kernel/rtlx.c | |||
@@ -23,12 +23,10 @@ | |||
23 | #include <linux/fs.h> | 23 | #include <linux/fs.h> |
24 | #include <linux/init.h> | 24 | #include <linux/init.h> |
25 | #include <asm/uaccess.h> | 25 | #include <asm/uaccess.h> |
26 | #include <linux/slab.h> | ||
27 | #include <linux/list.h> | 26 | #include <linux/list.h> |
28 | #include <linux/vmalloc.h> | 27 | #include <linux/vmalloc.h> |
29 | #include <linux/elf.h> | 28 | #include <linux/elf.h> |
30 | #include <linux/seq_file.h> | 29 | #include <linux/seq_file.h> |
31 | #include <linux/smp_lock.h> | ||
32 | #include <linux/syscalls.h> | 30 | #include <linux/syscalls.h> |
33 | #include <linux/moduleloader.h> | 31 | #include <linux/moduleloader.h> |
34 | #include <linux/interrupt.h> | 32 | #include <linux/interrupt.h> |
diff --git a/arch/mips/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S index fd2a9bb620d6..17202bbe843f 100644 --- a/arch/mips/kernel/scall32-o32.S +++ b/arch/mips/kernel/scall32-o32.S | |||
@@ -583,6 +583,7 @@ einval: li v0, -ENOSYS | |||
583 | sys sys_rt_tgsigqueueinfo 4 | 583 | sys sys_rt_tgsigqueueinfo 4 |
584 | sys sys_perf_event_open 5 | 584 | sys sys_perf_event_open 5 |
585 | sys sys_accept4 4 | 585 | sys sys_accept4 4 |
586 | sys sys_recvmmsg 5 | ||
586 | .endm | 587 | .endm |
587 | 588 | ||
588 | /* We pre-compute the number of _instruction_ bytes needed to | 589 | /* We pre-compute the number of _instruction_ bytes needed to |
diff --git a/arch/mips/kernel/scall64-64.S b/arch/mips/kernel/scall64-64.S index 18bf7f32c5e4..a8a6c596eb04 100644 --- a/arch/mips/kernel/scall64-64.S +++ b/arch/mips/kernel/scall64-64.S | |||
@@ -420,4 +420,5 @@ sys_call_table: | |||
420 | PTR sys_rt_tgsigqueueinfo | 420 | PTR sys_rt_tgsigqueueinfo |
421 | PTR sys_perf_event_open | 421 | PTR sys_perf_event_open |
422 | PTR sys_accept4 | 422 | PTR sys_accept4 |
423 | PTR sys_recvmmsg | ||
423 | .size sys_call_table,.-sys_call_table | 424 | .size sys_call_table,.-sys_call_table |
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S index 6ebc07976694..a5297e2a353a 100644 --- a/arch/mips/kernel/scall64-n32.S +++ b/arch/mips/kernel/scall64-n32.S | |||
@@ -181,7 +181,7 @@ EXPORT(sysn32_call_table) | |||
181 | PTR sys_exit | 181 | PTR sys_exit |
182 | PTR compat_sys_wait4 | 182 | PTR compat_sys_wait4 |
183 | PTR sys_kill /* 6060 */ | 183 | PTR sys_kill /* 6060 */ |
184 | PTR sys_32_newuname | 184 | PTR sys_newuname |
185 | PTR sys_semget | 185 | PTR sys_semget |
186 | PTR sys_semop | 186 | PTR sys_semop |
187 | PTR sys_n32_semctl | 187 | PTR sys_n32_semctl |
@@ -272,7 +272,7 @@ EXPORT(sysn32_call_table) | |||
272 | PTR sys_munlockall | 272 | PTR sys_munlockall |
273 | PTR sys_vhangup /* 6150 */ | 273 | PTR sys_vhangup /* 6150 */ |
274 | PTR sys_pivot_root | 274 | PTR sys_pivot_root |
275 | PTR sys_32_sysctl | 275 | PTR compat_sys_sysctl |
276 | PTR sys_prctl | 276 | PTR sys_prctl |
277 | PTR compat_sys_adjtimex | 277 | PTR compat_sys_adjtimex |
278 | PTR compat_sys_setrlimit /* 6155 */ | 278 | PTR compat_sys_setrlimit /* 6155 */ |
@@ -385,7 +385,7 @@ EXPORT(sysn32_call_table) | |||
385 | PTR sys_fchmodat | 385 | PTR sys_fchmodat |
386 | PTR sys_faccessat | 386 | PTR sys_faccessat |
387 | PTR compat_sys_pselect6 | 387 | PTR compat_sys_pselect6 |
388 | PTR sys_ppoll /* 6265 */ | 388 | PTR compat_sys_ppoll /* 6265 */ |
389 | PTR sys_unshare | 389 | PTR sys_unshare |
390 | PTR sys_splice | 390 | PTR sys_splice |
391 | PTR sys_sync_file_range | 391 | PTR sys_sync_file_range |
@@ -418,4 +418,5 @@ EXPORT(sysn32_call_table) | |||
418 | PTR compat_sys_rt_tgsigqueueinfo /* 5295 */ | 418 | PTR compat_sys_rt_tgsigqueueinfo /* 5295 */ |
419 | PTR sys_perf_event_open | 419 | PTR sys_perf_event_open |
420 | PTR sys_accept4 | 420 | PTR sys_accept4 |
421 | PTR compat_sys_recvmmsg | ||
421 | .size sysn32_call_table,.-sysn32_call_table | 422 | .size sysn32_call_table,.-sysn32_call_table |
diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S index 14dde4ca932e..813689ef2384 100644 --- a/arch/mips/kernel/scall64-o32.S +++ b/arch/mips/kernel/scall64-o32.S | |||
@@ -325,7 +325,7 @@ sys_call_table: | |||
325 | PTR sys32_sigreturn | 325 | PTR sys32_sigreturn |
326 | PTR sys32_clone /* 4120 */ | 326 | PTR sys32_clone /* 4120 */ |
327 | PTR sys_setdomainname | 327 | PTR sys_setdomainname |
328 | PTR sys_32_newuname | 328 | PTR sys_newuname |
329 | PTR sys_ni_syscall /* sys_modify_ldt */ | 329 | PTR sys_ni_syscall /* sys_modify_ldt */ |
330 | PTR compat_sys_adjtimex | 330 | PTR compat_sys_adjtimex |
331 | PTR sys_mprotect /* 4125 */ | 331 | PTR sys_mprotect /* 4125 */ |
@@ -356,7 +356,7 @@ sys_call_table: | |||
356 | PTR sys_ni_syscall /* 4150 */ | 356 | PTR sys_ni_syscall /* 4150 */ |
357 | PTR sys_getsid | 357 | PTR sys_getsid |
358 | PTR sys_fdatasync | 358 | PTR sys_fdatasync |
359 | PTR sys_32_sysctl | 359 | PTR compat_sys_sysctl |
360 | PTR sys_mlock | 360 | PTR sys_mlock |
361 | PTR sys_munlock /* 4155 */ | 361 | PTR sys_munlock /* 4155 */ |
362 | PTR sys_mlockall | 362 | PTR sys_mlockall |
@@ -538,4 +538,5 @@ sys_call_table: | |||
538 | PTR compat_sys_rt_tgsigqueueinfo | 538 | PTR compat_sys_rt_tgsigqueueinfo |
539 | PTR sys_perf_event_open | 539 | PTR sys_perf_event_open |
540 | PTR sys_accept4 | 540 | PTR sys_accept4 |
541 | PTR compat_sys_recvmmsg | ||
541 | .size sys_call_table,.-sys_call_table | 542 | .size sys_call_table,.-sys_call_table |
diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c index 2b290d70083e..f9513f9e61d3 100644 --- a/arch/mips/kernel/setup.c +++ b/arch/mips/kernel/setup.c | |||
@@ -58,8 +58,12 @@ EXPORT_SYMBOL(mips_machtype); | |||
58 | 58 | ||
59 | struct boot_mem_map boot_mem_map; | 59 | struct boot_mem_map boot_mem_map; |
60 | 60 | ||
61 | static char command_line[CL_SIZE]; | 61 | static char __initdata command_line[COMMAND_LINE_SIZE]; |
62 | char arcs_cmdline[CL_SIZE]=CONFIG_CMDLINE; | 62 | char __initdata arcs_cmdline[COMMAND_LINE_SIZE]; |
63 | |||
64 | #ifdef CONFIG_CMDLINE_BOOL | ||
65 | static char __initdata builtin_cmdline[COMMAND_LINE_SIZE] = CONFIG_CMDLINE; | ||
66 | #endif | ||
63 | 67 | ||
64 | /* | 68 | /* |
65 | * mips_io_port_base is the begin of the address space to which x86 style | 69 | * mips_io_port_base is the begin of the address space to which x86 style |
@@ -166,26 +170,8 @@ static unsigned long __init init_initrd(void) | |||
166 | * already set up initrd_start and initrd_end. In these cases | 170 | * already set up initrd_start and initrd_end. In these cases |
167 | * perfom sanity checks and use them if all looks good. | 171 | * perfom sanity checks and use them if all looks good. |
168 | */ | 172 | */ |
169 | if (!initrd_start || initrd_end <= initrd_start) { | 173 | if (!initrd_start || initrd_end <= initrd_start) |
170 | #ifdef CONFIG_PROBE_INITRD_HEADER | ||
171 | u32 *initrd_header; | ||
172 | |||
173 | /* | ||
174 | * See if initrd has been added to the kernel image by | ||
175 | * arch/mips/boot/addinitrd.c. In that case a header is | ||
176 | * prepended to initrd and is made up by 8 bytes. The first | ||
177 | * word is a magic number and the second one is the size of | ||
178 | * initrd. Initrd start must be page aligned in any cases. | ||
179 | */ | ||
180 | initrd_header = __va(PAGE_ALIGN(__pa_symbol(&_end) + 8)) - 8; | ||
181 | if (initrd_header[0] != 0x494E5244) | ||
182 | goto disable; | ||
183 | initrd_start = (unsigned long)(initrd_header + 2); | ||
184 | initrd_end = initrd_start + initrd_header[1]; | ||
185 | #else | ||
186 | goto disable; | 174 | goto disable; |
187 | #endif | ||
188 | } | ||
189 | 175 | ||
190 | if (initrd_start & ~PAGE_MASK) { | 176 | if (initrd_start & ~PAGE_MASK) { |
191 | pr_err("initrd start must be page aligned\n"); | 177 | pr_err("initrd start must be page aligned\n"); |
@@ -476,8 +462,20 @@ static void __init arch_mem_init(char **cmdline_p) | |||
476 | pr_info("Determined physical RAM map:\n"); | 462 | pr_info("Determined physical RAM map:\n"); |
477 | print_memory_map(); | 463 | print_memory_map(); |
478 | 464 | ||
479 | strlcpy(command_line, arcs_cmdline, sizeof(command_line)); | 465 | #ifdef CONFIG_CMDLINE_BOOL |
480 | strlcpy(boot_command_line, command_line, COMMAND_LINE_SIZE); | 466 | #ifdef CONFIG_CMDLINE_OVERRIDE |
467 | strlcpy(boot_command_line, builtin_cmdline, COMMAND_LINE_SIZE); | ||
468 | #else | ||
469 | if (builtin_cmdline[0]) { | ||
470 | strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE); | ||
471 | strlcat(arcs_cmdline, builtin_cmdline, COMMAND_LINE_SIZE); | ||
472 | } | ||
473 | strlcpy(boot_command_line, arcs_cmdline, COMMAND_LINE_SIZE); | ||
474 | #endif | ||
475 | #else | ||
476 | strlcpy(boot_command_line, arcs_cmdline, COMMAND_LINE_SIZE); | ||
477 | #endif | ||
478 | strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE); | ||
481 | 479 | ||
482 | *cmdline_p = command_line; | 480 | *cmdline_p = command_line; |
483 | 481 | ||
diff --git a/arch/mips/kernel/signal-common.h b/arch/mips/kernel/signal-common.h index 6c8e8c4246f7..10263b405981 100644 --- a/arch/mips/kernel/signal-common.h +++ b/arch/mips/kernel/signal-common.h | |||
@@ -26,11 +26,6 @@ | |||
26 | */ | 26 | */ |
27 | extern void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs, | 27 | extern void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs, |
28 | size_t frame_size); | 28 | size_t frame_size); |
29 | /* | ||
30 | * install trampoline code to get back from the sig handler | ||
31 | */ | ||
32 | extern int install_sigtramp(unsigned int __user *tramp, unsigned int syscall); | ||
33 | |||
34 | /* Check and clear pending FPU exceptions in saved CSR */ | 29 | /* Check and clear pending FPU exceptions in saved CSR */ |
35 | extern int fpcsr_pending(unsigned int __user *fpcsr); | 30 | extern int fpcsr_pending(unsigned int __user *fpcsr); |
36 | 31 | ||
diff --git a/arch/mips/kernel/signal.c b/arch/mips/kernel/signal.c index 6254041b942f..2099d5a4c4b7 100644 --- a/arch/mips/kernel/signal.c +++ b/arch/mips/kernel/signal.c | |||
@@ -32,50 +32,33 @@ | |||
32 | #include <asm/ucontext.h> | 32 | #include <asm/ucontext.h> |
33 | #include <asm/cpu-features.h> | 33 | #include <asm/cpu-features.h> |
34 | #include <asm/war.h> | 34 | #include <asm/war.h> |
35 | #include <asm/vdso.h> | ||
35 | 36 | ||
36 | #include "signal-common.h" | 37 | #include "signal-common.h" |
37 | 38 | ||
38 | /* | 39 | static int (*save_fp_context)(struct sigcontext __user *sc); |
39 | * Horribly complicated - with the bloody RM9000 workarounds enabled | 40 | static int (*restore_fp_context)(struct sigcontext __user *sc); |
40 | * the signal trampolines is moving to the end of the structure so we can | 41 | |
41 | * increase the alignment without breaking software compatibility. | 42 | extern asmlinkage int _save_fp_context(struct sigcontext __user *sc); |
42 | */ | 43 | extern asmlinkage int _restore_fp_context(struct sigcontext __user *sc); |
43 | #if ICACHE_REFILLS_WORKAROUND_WAR == 0 | 44 | |
45 | extern asmlinkage int fpu_emulator_save_context(struct sigcontext __user *sc); | ||
46 | extern asmlinkage int fpu_emulator_restore_context(struct sigcontext __user *sc); | ||
44 | 47 | ||
45 | struct sigframe { | 48 | struct sigframe { |
46 | u32 sf_ass[4]; /* argument save space for o32 */ | 49 | u32 sf_ass[4]; /* argument save space for o32 */ |
47 | u32 sf_code[2]; /* signal trampoline */ | 50 | u32 sf_pad[2]; /* Was: signal trampoline */ |
48 | struct sigcontext sf_sc; | 51 | struct sigcontext sf_sc; |
49 | sigset_t sf_mask; | 52 | sigset_t sf_mask; |
50 | }; | 53 | }; |
51 | 54 | ||
52 | struct rt_sigframe { | 55 | struct rt_sigframe { |
53 | u32 rs_ass[4]; /* argument save space for o32 */ | 56 | u32 rs_ass[4]; /* argument save space for o32 */ |
54 | u32 rs_code[2]; /* signal trampoline */ | 57 | u32 rs_pad[2]; /* Was: signal trampoline */ |
55 | struct siginfo rs_info; | ||
56 | struct ucontext rs_uc; | ||
57 | }; | ||
58 | |||
59 | #else | ||
60 | |||
61 | struct sigframe { | ||
62 | u32 sf_ass[4]; /* argument save space for o32 */ | ||
63 | u32 sf_pad[2]; | ||
64 | struct sigcontext sf_sc; /* hw context */ | ||
65 | sigset_t sf_mask; | ||
66 | u32 sf_code[8] ____cacheline_aligned; /* signal trampoline */ | ||
67 | }; | ||
68 | |||
69 | struct rt_sigframe { | ||
70 | u32 rs_ass[4]; /* argument save space for o32 */ | ||
71 | u32 rs_pad[2]; | ||
72 | struct siginfo rs_info; | 58 | struct siginfo rs_info; |
73 | struct ucontext rs_uc; | 59 | struct ucontext rs_uc; |
74 | u32 rs_code[8] ____cacheline_aligned; /* signal trampoline */ | ||
75 | }; | 60 | }; |
76 | 61 | ||
77 | #endif | ||
78 | |||
79 | /* | 62 | /* |
80 | * Helper routines | 63 | * Helper routines |
81 | */ | 64 | */ |
@@ -257,32 +240,6 @@ void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs, | |||
257 | return (void __user *)((sp - frame_size) & (ICACHE_REFILLS_WORKAROUND_WAR ? ~(cpu_icache_line_size()-1) : ALMASK)); | 240 | return (void __user *)((sp - frame_size) & (ICACHE_REFILLS_WORKAROUND_WAR ? ~(cpu_icache_line_size()-1) : ALMASK)); |
258 | } | 241 | } |
259 | 242 | ||
260 | int install_sigtramp(unsigned int __user *tramp, unsigned int syscall) | ||
261 | { | ||
262 | int err; | ||
263 | |||
264 | /* | ||
265 | * Set up the return code ... | ||
266 | * | ||
267 | * li v0, __NR__foo_sigreturn | ||
268 | * syscall | ||
269 | */ | ||
270 | |||
271 | err = __put_user(0x24020000 + syscall, tramp + 0); | ||
272 | err |= __put_user(0x0000000c , tramp + 1); | ||
273 | if (ICACHE_REFILLS_WORKAROUND_WAR) { | ||
274 | err |= __put_user(0, tramp + 2); | ||
275 | err |= __put_user(0, tramp + 3); | ||
276 | err |= __put_user(0, tramp + 4); | ||
277 | err |= __put_user(0, tramp + 5); | ||
278 | err |= __put_user(0, tramp + 6); | ||
279 | err |= __put_user(0, tramp + 7); | ||
280 | } | ||
281 | flush_cache_sigtramp((unsigned long) tramp); | ||
282 | |||
283 | return err; | ||
284 | } | ||
285 | |||
286 | /* | 243 | /* |
287 | * Atomically swap in the new signal mask, and wait for a signal. | 244 | * Atomically swap in the new signal mask, and wait for a signal. |
288 | */ | 245 | */ |
@@ -475,8 +432,8 @@ badframe: | |||
475 | } | 432 | } |
476 | 433 | ||
477 | #ifdef CONFIG_TRAD_SIGNALS | 434 | #ifdef CONFIG_TRAD_SIGNALS |
478 | static int setup_frame(struct k_sigaction * ka, struct pt_regs *regs, | 435 | static int setup_frame(void *sig_return, struct k_sigaction *ka, |
479 | int signr, sigset_t *set) | 436 | struct pt_regs *regs, int signr, sigset_t *set) |
480 | { | 437 | { |
481 | struct sigframe __user *frame; | 438 | struct sigframe __user *frame; |
482 | int err = 0; | 439 | int err = 0; |
@@ -485,8 +442,6 @@ static int setup_frame(struct k_sigaction * ka, struct pt_regs *regs, | |||
485 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) | 442 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) |
486 | goto give_sigsegv; | 443 | goto give_sigsegv; |
487 | 444 | ||
488 | err |= install_sigtramp(frame->sf_code, __NR_sigreturn); | ||
489 | |||
490 | err |= setup_sigcontext(regs, &frame->sf_sc); | 445 | err |= setup_sigcontext(regs, &frame->sf_sc); |
491 | err |= __copy_to_user(&frame->sf_mask, set, sizeof(*set)); | 446 | err |= __copy_to_user(&frame->sf_mask, set, sizeof(*set)); |
492 | if (err) | 447 | if (err) |
@@ -506,7 +461,7 @@ static int setup_frame(struct k_sigaction * ka, struct pt_regs *regs, | |||
506 | regs->regs[ 5] = 0; | 461 | regs->regs[ 5] = 0; |
507 | regs->regs[ 6] = (unsigned long) &frame->sf_sc; | 462 | regs->regs[ 6] = (unsigned long) &frame->sf_sc; |
508 | regs->regs[29] = (unsigned long) frame; | 463 | regs->regs[29] = (unsigned long) frame; |
509 | regs->regs[31] = (unsigned long) frame->sf_code; | 464 | regs->regs[31] = (unsigned long) sig_return; |
510 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; | 465 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; |
511 | 466 | ||
512 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", | 467 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", |
@@ -520,8 +475,9 @@ give_sigsegv: | |||
520 | } | 475 | } |
521 | #endif | 476 | #endif |
522 | 477 | ||
523 | static int setup_rt_frame(struct k_sigaction * ka, struct pt_regs *regs, | 478 | static int setup_rt_frame(void *sig_return, struct k_sigaction *ka, |
524 | int signr, sigset_t *set, siginfo_t *info) | 479 | struct pt_regs *regs, int signr, sigset_t *set, |
480 | siginfo_t *info) | ||
525 | { | 481 | { |
526 | struct rt_sigframe __user *frame; | 482 | struct rt_sigframe __user *frame; |
527 | int err = 0; | 483 | int err = 0; |
@@ -530,8 +486,6 @@ static int setup_rt_frame(struct k_sigaction * ka, struct pt_regs *regs, | |||
530 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) | 486 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) |
531 | goto give_sigsegv; | 487 | goto give_sigsegv; |
532 | 488 | ||
533 | err |= install_sigtramp(frame->rs_code, __NR_rt_sigreturn); | ||
534 | |||
535 | /* Create siginfo. */ | 489 | /* Create siginfo. */ |
536 | err |= copy_siginfo_to_user(&frame->rs_info, info); | 490 | err |= copy_siginfo_to_user(&frame->rs_info, info); |
537 | 491 | ||
@@ -564,7 +518,7 @@ static int setup_rt_frame(struct k_sigaction * ka, struct pt_regs *regs, | |||
564 | regs->regs[ 5] = (unsigned long) &frame->rs_info; | 518 | regs->regs[ 5] = (unsigned long) &frame->rs_info; |
565 | regs->regs[ 6] = (unsigned long) &frame->rs_uc; | 519 | regs->regs[ 6] = (unsigned long) &frame->rs_uc; |
566 | regs->regs[29] = (unsigned long) frame; | 520 | regs->regs[29] = (unsigned long) frame; |
567 | regs->regs[31] = (unsigned long) frame->rs_code; | 521 | regs->regs[31] = (unsigned long) sig_return; |
568 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; | 522 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; |
569 | 523 | ||
570 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", | 524 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", |
@@ -581,8 +535,11 @@ give_sigsegv: | |||
581 | struct mips_abi mips_abi = { | 535 | struct mips_abi mips_abi = { |
582 | #ifdef CONFIG_TRAD_SIGNALS | 536 | #ifdef CONFIG_TRAD_SIGNALS |
583 | .setup_frame = setup_frame, | 537 | .setup_frame = setup_frame, |
538 | .signal_return_offset = offsetof(struct mips_vdso, signal_trampoline), | ||
584 | #endif | 539 | #endif |
585 | .setup_rt_frame = setup_rt_frame, | 540 | .setup_rt_frame = setup_rt_frame, |
541 | .rt_signal_return_offset = | ||
542 | offsetof(struct mips_vdso, rt_signal_trampoline), | ||
586 | .restart = __NR_restart_syscall | 543 | .restart = __NR_restart_syscall |
587 | }; | 544 | }; |
588 | 545 | ||
@@ -590,6 +547,8 @@ static int handle_signal(unsigned long sig, siginfo_t *info, | |||
590 | struct k_sigaction *ka, sigset_t *oldset, struct pt_regs *regs) | 547 | struct k_sigaction *ka, sigset_t *oldset, struct pt_regs *regs) |
591 | { | 548 | { |
592 | int ret; | 549 | int ret; |
550 | struct mips_abi *abi = current->thread.abi; | ||
551 | void *vdso = current->mm->context.vdso; | ||
593 | 552 | ||
594 | switch(regs->regs[0]) { | 553 | switch(regs->regs[0]) { |
595 | case ERESTART_RESTARTBLOCK: | 554 | case ERESTART_RESTARTBLOCK: |
@@ -610,9 +569,11 @@ static int handle_signal(unsigned long sig, siginfo_t *info, | |||
610 | regs->regs[0] = 0; /* Don't deal with this again. */ | 569 | regs->regs[0] = 0; /* Don't deal with this again. */ |
611 | 570 | ||
612 | if (sig_uses_siginfo(ka)) | 571 | if (sig_uses_siginfo(ka)) |
613 | ret = current->thread.abi->setup_rt_frame(ka, regs, sig, oldset, info); | 572 | ret = abi->setup_rt_frame(vdso + abi->rt_signal_return_offset, |
573 | ka, regs, sig, oldset, info); | ||
614 | else | 574 | else |
615 | ret = current->thread.abi->setup_frame(ka, regs, sig, oldset); | 575 | ret = abi->setup_frame(vdso + abi->signal_return_offset, |
576 | ka, regs, sig, oldset); | ||
616 | 577 | ||
617 | spin_lock_irq(¤t->sighand->siglock); | 578 | spin_lock_irq(¤t->sighand->siglock); |
618 | sigorsets(¤t->blocked, ¤t->blocked, &ka->sa.sa_mask); | 579 | sigorsets(¤t->blocked, ¤t->blocked, &ka->sa.sa_mask); |
@@ -709,3 +670,40 @@ asmlinkage void do_notify_resume(struct pt_regs *regs, void *unused, | |||
709 | key_replace_session_keyring(); | 670 | key_replace_session_keyring(); |
710 | } | 671 | } |
711 | } | 672 | } |
673 | |||
674 | #ifdef CONFIG_SMP | ||
675 | static int smp_save_fp_context(struct sigcontext __user *sc) | ||
676 | { | ||
677 | return raw_cpu_has_fpu | ||
678 | ? _save_fp_context(sc) | ||
679 | : fpu_emulator_save_context(sc); | ||
680 | } | ||
681 | |||
682 | static int smp_restore_fp_context(struct sigcontext __user *sc) | ||
683 | { | ||
684 | return raw_cpu_has_fpu | ||
685 | ? _restore_fp_context(sc) | ||
686 | : fpu_emulator_restore_context(sc); | ||
687 | } | ||
688 | #endif | ||
689 | |||
690 | static int signal_setup(void) | ||
691 | { | ||
692 | #ifdef CONFIG_SMP | ||
693 | /* For now just do the cpu_has_fpu check when the functions are invoked */ | ||
694 | save_fp_context = smp_save_fp_context; | ||
695 | restore_fp_context = smp_restore_fp_context; | ||
696 | #else | ||
697 | if (cpu_has_fpu) { | ||
698 | save_fp_context = _save_fp_context; | ||
699 | restore_fp_context = _restore_fp_context; | ||
700 | } else { | ||
701 | save_fp_context = fpu_emulator_save_context; | ||
702 | restore_fp_context = fpu_emulator_restore_context; | ||
703 | } | ||
704 | #endif | ||
705 | |||
706 | return 0; | ||
707 | } | ||
708 | |||
709 | arch_initcall(signal_setup); | ||
diff --git a/arch/mips/kernel/signal32.c b/arch/mips/kernel/signal32.c index 2e74075ac0ca..a0ed0e052b2e 100644 --- a/arch/mips/kernel/signal32.c +++ b/arch/mips/kernel/signal32.c | |||
@@ -32,14 +32,22 @@ | |||
32 | #include <asm/system.h> | 32 | #include <asm/system.h> |
33 | #include <asm/fpu.h> | 33 | #include <asm/fpu.h> |
34 | #include <asm/war.h> | 34 | #include <asm/war.h> |
35 | #include <asm/vdso.h> | ||
35 | 36 | ||
36 | #include "signal-common.h" | 37 | #include "signal-common.h" |
37 | 38 | ||
39 | static int (*save_fp_context32)(struct sigcontext32 __user *sc); | ||
40 | static int (*restore_fp_context32)(struct sigcontext32 __user *sc); | ||
41 | |||
42 | extern asmlinkage int _save_fp_context32(struct sigcontext32 __user *sc); | ||
43 | extern asmlinkage int _restore_fp_context32(struct sigcontext32 __user *sc); | ||
44 | |||
45 | extern asmlinkage int fpu_emulator_save_context32(struct sigcontext32 __user *sc); | ||
46 | extern asmlinkage int fpu_emulator_restore_context32(struct sigcontext32 __user *sc); | ||
47 | |||
38 | /* | 48 | /* |
39 | * Including <asm/unistd.h> would give use the 64-bit syscall numbers ... | 49 | * Including <asm/unistd.h> would give use the 64-bit syscall numbers ... |
40 | */ | 50 | */ |
41 | #define __NR_O32_sigreturn 4119 | ||
42 | #define __NR_O32_rt_sigreturn 4193 | ||
43 | #define __NR_O32_restart_syscall 4253 | 51 | #define __NR_O32_restart_syscall 4253 |
44 | 52 | ||
45 | /* 32-bit compatibility types */ | 53 | /* 32-bit compatibility types */ |
@@ -68,47 +76,20 @@ struct ucontext32 { | |||
68 | compat_sigset_t uc_sigmask; /* mask last for extensibility */ | 76 | compat_sigset_t uc_sigmask; /* mask last for extensibility */ |
69 | }; | 77 | }; |
70 | 78 | ||
71 | /* | ||
72 | * Horribly complicated - with the bloody RM9000 workarounds enabled | ||
73 | * the signal trampolines is moving to the end of the structure so we can | ||
74 | * increase the alignment without breaking software compatibility. | ||
75 | */ | ||
76 | #if ICACHE_REFILLS_WORKAROUND_WAR == 0 | ||
77 | |||
78 | struct sigframe32 { | 79 | struct sigframe32 { |
79 | u32 sf_ass[4]; /* argument save space for o32 */ | 80 | u32 sf_ass[4]; /* argument save space for o32 */ |
80 | u32 sf_code[2]; /* signal trampoline */ | 81 | u32 sf_pad[2]; /* Was: signal trampoline */ |
81 | struct sigcontext32 sf_sc; | 82 | struct sigcontext32 sf_sc; |
82 | compat_sigset_t sf_mask; | 83 | compat_sigset_t sf_mask; |
83 | }; | 84 | }; |
84 | 85 | ||
85 | struct rt_sigframe32 { | 86 | struct rt_sigframe32 { |
86 | u32 rs_ass[4]; /* argument save space for o32 */ | 87 | u32 rs_ass[4]; /* argument save space for o32 */ |
87 | u32 rs_code[2]; /* signal trampoline */ | 88 | u32 rs_pad[2]; /* Was: signal trampoline */ |
88 | compat_siginfo_t rs_info; | ||
89 | struct ucontext32 rs_uc; | ||
90 | }; | ||
91 | |||
92 | #else /* ICACHE_REFILLS_WORKAROUND_WAR */ | ||
93 | |||
94 | struct sigframe32 { | ||
95 | u32 sf_ass[4]; /* argument save space for o32 */ | ||
96 | u32 sf_pad[2]; | ||
97 | struct sigcontext32 sf_sc; /* hw context */ | ||
98 | compat_sigset_t sf_mask; | ||
99 | u32 sf_code[8] ____cacheline_aligned; /* signal trampoline */ | ||
100 | }; | ||
101 | |||
102 | struct rt_sigframe32 { | ||
103 | u32 rs_ass[4]; /* argument save space for o32 */ | ||
104 | u32 rs_pad[2]; | ||
105 | compat_siginfo_t rs_info; | 89 | compat_siginfo_t rs_info; |
106 | struct ucontext32 rs_uc; | 90 | struct ucontext32 rs_uc; |
107 | u32 rs_code[8] __attribute__((aligned(32))); /* signal trampoline */ | ||
108 | }; | 91 | }; |
109 | 92 | ||
110 | #endif /* !ICACHE_REFILLS_WORKAROUND_WAR */ | ||
111 | |||
112 | /* | 93 | /* |
113 | * sigcontext handlers | 94 | * sigcontext handlers |
114 | */ | 95 | */ |
@@ -589,8 +570,8 @@ badframe: | |||
589 | force_sig(SIGSEGV, current); | 570 | force_sig(SIGSEGV, current); |
590 | } | 571 | } |
591 | 572 | ||
592 | static int setup_frame_32(struct k_sigaction * ka, struct pt_regs *regs, | 573 | static int setup_frame_32(void *sig_return, struct k_sigaction *ka, |
593 | int signr, sigset_t *set) | 574 | struct pt_regs *regs, int signr, sigset_t *set) |
594 | { | 575 | { |
595 | struct sigframe32 __user *frame; | 576 | struct sigframe32 __user *frame; |
596 | int err = 0; | 577 | int err = 0; |
@@ -599,8 +580,6 @@ static int setup_frame_32(struct k_sigaction * ka, struct pt_regs *regs, | |||
599 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) | 580 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) |
600 | goto give_sigsegv; | 581 | goto give_sigsegv; |
601 | 582 | ||
602 | err |= install_sigtramp(frame->sf_code, __NR_O32_sigreturn); | ||
603 | |||
604 | err |= setup_sigcontext32(regs, &frame->sf_sc); | 583 | err |= setup_sigcontext32(regs, &frame->sf_sc); |
605 | err |= __copy_conv_sigset_to_user(&frame->sf_mask, set); | 584 | err |= __copy_conv_sigset_to_user(&frame->sf_mask, set); |
606 | 585 | ||
@@ -621,7 +600,7 @@ static int setup_frame_32(struct k_sigaction * ka, struct pt_regs *regs, | |||
621 | regs->regs[ 5] = 0; | 600 | regs->regs[ 5] = 0; |
622 | regs->regs[ 6] = (unsigned long) &frame->sf_sc; | 601 | regs->regs[ 6] = (unsigned long) &frame->sf_sc; |
623 | regs->regs[29] = (unsigned long) frame; | 602 | regs->regs[29] = (unsigned long) frame; |
624 | regs->regs[31] = (unsigned long) frame->sf_code; | 603 | regs->regs[31] = (unsigned long) sig_return; |
625 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; | 604 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; |
626 | 605 | ||
627 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", | 606 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", |
@@ -635,8 +614,9 @@ give_sigsegv: | |||
635 | return -EFAULT; | 614 | return -EFAULT; |
636 | } | 615 | } |
637 | 616 | ||
638 | static int setup_rt_frame_32(struct k_sigaction * ka, struct pt_regs *regs, | 617 | static int setup_rt_frame_32(void *sig_return, struct k_sigaction *ka, |
639 | int signr, sigset_t *set, siginfo_t *info) | 618 | struct pt_regs *regs, int signr, sigset_t *set, |
619 | siginfo_t *info) | ||
640 | { | 620 | { |
641 | struct rt_sigframe32 __user *frame; | 621 | struct rt_sigframe32 __user *frame; |
642 | int err = 0; | 622 | int err = 0; |
@@ -646,8 +626,6 @@ static int setup_rt_frame_32(struct k_sigaction * ka, struct pt_regs *regs, | |||
646 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) | 626 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) |
647 | goto give_sigsegv; | 627 | goto give_sigsegv; |
648 | 628 | ||
649 | err |= install_sigtramp(frame->rs_code, __NR_O32_rt_sigreturn); | ||
650 | |||
651 | /* Convert (siginfo_t -> compat_siginfo_t) and copy to user. */ | 629 | /* Convert (siginfo_t -> compat_siginfo_t) and copy to user. */ |
652 | err |= copy_siginfo_to_user32(&frame->rs_info, info); | 630 | err |= copy_siginfo_to_user32(&frame->rs_info, info); |
653 | 631 | ||
@@ -681,7 +659,7 @@ static int setup_rt_frame_32(struct k_sigaction * ka, struct pt_regs *regs, | |||
681 | regs->regs[ 5] = (unsigned long) &frame->rs_info; | 659 | regs->regs[ 5] = (unsigned long) &frame->rs_info; |
682 | regs->regs[ 6] = (unsigned long) &frame->rs_uc; | 660 | regs->regs[ 6] = (unsigned long) &frame->rs_uc; |
683 | regs->regs[29] = (unsigned long) frame; | 661 | regs->regs[29] = (unsigned long) frame; |
684 | regs->regs[31] = (unsigned long) frame->rs_code; | 662 | regs->regs[31] = (unsigned long) sig_return; |
685 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; | 663 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; |
686 | 664 | ||
687 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", | 665 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", |
@@ -700,7 +678,11 @@ give_sigsegv: | |||
700 | */ | 678 | */ |
701 | struct mips_abi mips_abi_32 = { | 679 | struct mips_abi mips_abi_32 = { |
702 | .setup_frame = setup_frame_32, | 680 | .setup_frame = setup_frame_32, |
681 | .signal_return_offset = | ||
682 | offsetof(struct mips_vdso, o32_signal_trampoline), | ||
703 | .setup_rt_frame = setup_rt_frame_32, | 683 | .setup_rt_frame = setup_rt_frame_32, |
684 | .rt_signal_return_offset = | ||
685 | offsetof(struct mips_vdso, o32_rt_signal_trampoline), | ||
704 | .restart = __NR_O32_restart_syscall | 686 | .restart = __NR_O32_restart_syscall |
705 | }; | 687 | }; |
706 | 688 | ||
@@ -828,3 +810,18 @@ SYSCALL_DEFINE5(32_waitid, int, which, compat_pid_t, pid, | |||
828 | info.si_code |= __SI_CHLD; | 810 | info.si_code |= __SI_CHLD; |
829 | return copy_siginfo_to_user32(uinfo, &info); | 811 | return copy_siginfo_to_user32(uinfo, &info); |
830 | } | 812 | } |
813 | |||
814 | static int signal32_init(void) | ||
815 | { | ||
816 | if (cpu_has_fpu) { | ||
817 | save_fp_context32 = _save_fp_context32; | ||
818 | restore_fp_context32 = _restore_fp_context32; | ||
819 | } else { | ||
820 | save_fp_context32 = fpu_emulator_save_context32; | ||
821 | restore_fp_context32 = fpu_emulator_restore_context32; | ||
822 | } | ||
823 | |||
824 | return 0; | ||
825 | } | ||
826 | |||
827 | arch_initcall(signal32_init); | ||
diff --git a/arch/mips/kernel/signal_n32.c b/arch/mips/kernel/signal_n32.c index bb277e82d421..2c5df818c65a 100644 --- a/arch/mips/kernel/signal_n32.c +++ b/arch/mips/kernel/signal_n32.c | |||
@@ -39,13 +39,13 @@ | |||
39 | #include <asm/fpu.h> | 39 | #include <asm/fpu.h> |
40 | #include <asm/cpu-features.h> | 40 | #include <asm/cpu-features.h> |
41 | #include <asm/war.h> | 41 | #include <asm/war.h> |
42 | #include <asm/vdso.h> | ||
42 | 43 | ||
43 | #include "signal-common.h" | 44 | #include "signal-common.h" |
44 | 45 | ||
45 | /* | 46 | /* |
46 | * Including <asm/unistd.h> would give use the 64-bit syscall numbers ... | 47 | * Including <asm/unistd.h> would give use the 64-bit syscall numbers ... |
47 | */ | 48 | */ |
48 | #define __NR_N32_rt_sigreturn 6211 | ||
49 | #define __NR_N32_restart_syscall 6214 | 49 | #define __NR_N32_restart_syscall 6214 |
50 | 50 | ||
51 | extern int setup_sigcontext(struct pt_regs *, struct sigcontext __user *); | 51 | extern int setup_sigcontext(struct pt_regs *, struct sigcontext __user *); |
@@ -67,27 +67,13 @@ struct ucontextn32 { | |||
67 | compat_sigset_t uc_sigmask; /* mask last for extensibility */ | 67 | compat_sigset_t uc_sigmask; /* mask last for extensibility */ |
68 | }; | 68 | }; |
69 | 69 | ||
70 | #if ICACHE_REFILLS_WORKAROUND_WAR == 0 | ||
71 | |||
72 | struct rt_sigframe_n32 { | ||
73 | u32 rs_ass[4]; /* argument save space for o32 */ | ||
74 | u32 rs_code[2]; /* signal trampoline */ | ||
75 | struct compat_siginfo rs_info; | ||
76 | struct ucontextn32 rs_uc; | ||
77 | }; | ||
78 | |||
79 | #else /* ICACHE_REFILLS_WORKAROUND_WAR */ | ||
80 | |||
81 | struct rt_sigframe_n32 { | 70 | struct rt_sigframe_n32 { |
82 | u32 rs_ass[4]; /* argument save space for o32 */ | 71 | u32 rs_ass[4]; /* argument save space for o32 */ |
83 | u32 rs_pad[2]; | 72 | u32 rs_pad[2]; /* Was: signal trampoline */ |
84 | struct compat_siginfo rs_info; | 73 | struct compat_siginfo rs_info; |
85 | struct ucontextn32 rs_uc; | 74 | struct ucontextn32 rs_uc; |
86 | u32 rs_code[8] ____cacheline_aligned; /* signal trampoline */ | ||
87 | }; | 75 | }; |
88 | 76 | ||
89 | #endif /* !ICACHE_REFILLS_WORKAROUND_WAR */ | ||
90 | |||
91 | extern void sigset_from_compat(sigset_t *set, compat_sigset_t *compat); | 77 | extern void sigset_from_compat(sigset_t *set, compat_sigset_t *compat); |
92 | 78 | ||
93 | asmlinkage int sysn32_rt_sigsuspend(nabi_no_regargs struct pt_regs regs) | 79 | asmlinkage int sysn32_rt_sigsuspend(nabi_no_regargs struct pt_regs regs) |
@@ -173,7 +159,7 @@ badframe: | |||
173 | force_sig(SIGSEGV, current); | 159 | force_sig(SIGSEGV, current); |
174 | } | 160 | } |
175 | 161 | ||
176 | static int setup_rt_frame_n32(struct k_sigaction * ka, | 162 | static int setup_rt_frame_n32(void *sig_return, struct k_sigaction *ka, |
177 | struct pt_regs *regs, int signr, sigset_t *set, siginfo_t *info) | 163 | struct pt_regs *regs, int signr, sigset_t *set, siginfo_t *info) |
178 | { | 164 | { |
179 | struct rt_sigframe_n32 __user *frame; | 165 | struct rt_sigframe_n32 __user *frame; |
@@ -184,8 +170,6 @@ static int setup_rt_frame_n32(struct k_sigaction * ka, | |||
184 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) | 170 | if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) |
185 | goto give_sigsegv; | 171 | goto give_sigsegv; |
186 | 172 | ||
187 | install_sigtramp(frame->rs_code, __NR_N32_rt_sigreturn); | ||
188 | |||
189 | /* Create siginfo. */ | 173 | /* Create siginfo. */ |
190 | err |= copy_siginfo_to_user32(&frame->rs_info, info); | 174 | err |= copy_siginfo_to_user32(&frame->rs_info, info); |
191 | 175 | ||
@@ -219,7 +203,7 @@ static int setup_rt_frame_n32(struct k_sigaction * ka, | |||
219 | regs->regs[ 5] = (unsigned long) &frame->rs_info; | 203 | regs->regs[ 5] = (unsigned long) &frame->rs_info; |
220 | regs->regs[ 6] = (unsigned long) &frame->rs_uc; | 204 | regs->regs[ 6] = (unsigned long) &frame->rs_uc; |
221 | regs->regs[29] = (unsigned long) frame; | 205 | regs->regs[29] = (unsigned long) frame; |
222 | regs->regs[31] = (unsigned long) frame->rs_code; | 206 | regs->regs[31] = (unsigned long) sig_return; |
223 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; | 207 | regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler; |
224 | 208 | ||
225 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", | 209 | DEBUGP("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%lx\n", |
@@ -235,5 +219,7 @@ give_sigsegv: | |||
235 | 219 | ||
236 | struct mips_abi mips_abi_n32 = { | 220 | struct mips_abi mips_abi_n32 = { |
237 | .setup_rt_frame = setup_rt_frame_n32, | 221 | .setup_rt_frame = setup_rt_frame_n32, |
222 | .rt_signal_return_offset = | ||
223 | offsetof(struct mips_vdso, n32_rt_signal_trampoline), | ||
238 | .restart = __NR_N32_restart_syscall | 224 | .restart = __NR_N32_restart_syscall |
239 | }; | 225 | }; |
diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c index e72e6844d134..6cdca1956b77 100644 --- a/arch/mips/kernel/smp.c +++ b/arch/mips/kernel/smp.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/cpumask.h> | 32 | #include <linux/cpumask.h> |
33 | #include <linux/cpu.h> | 33 | #include <linux/cpu.h> |
34 | #include <linux/err.h> | 34 | #include <linux/err.h> |
35 | #include <linux/ftrace.h> | ||
35 | 36 | ||
36 | #include <asm/atomic.h> | 37 | #include <asm/atomic.h> |
37 | #include <asm/cpu.h> | 38 | #include <asm/cpu.h> |
@@ -130,7 +131,7 @@ asmlinkage __cpuinit void start_secondary(void) | |||
130 | /* | 131 | /* |
131 | * Call into both interrupt handlers, as we share the IPI for them | 132 | * Call into both interrupt handlers, as we share the IPI for them |
132 | */ | 133 | */ |
133 | void smp_call_function_interrupt(void) | 134 | void __irq_entry smp_call_function_interrupt(void) |
134 | { | 135 | { |
135 | irq_enter(); | 136 | irq_enter(); |
136 | generic_smp_call_function_single_interrupt(); | 137 | generic_smp_call_function_single_interrupt(); |
diff --git a/arch/mips/kernel/smtc.c b/arch/mips/kernel/smtc.c index 24630fd8ef60..a95dea5459c4 100644 --- a/arch/mips/kernel/smtc.c +++ b/arch/mips/kernel/smtc.c | |||
@@ -25,6 +25,8 @@ | |||
25 | #include <linux/interrupt.h> | 25 | #include <linux/interrupt.h> |
26 | #include <linux/kernel_stat.h> | 26 | #include <linux/kernel_stat.h> |
27 | #include <linux/module.h> | 27 | #include <linux/module.h> |
28 | #include <linux/ftrace.h> | ||
29 | #include <linux/slab.h> | ||
28 | 30 | ||
29 | #include <asm/cpu.h> | 31 | #include <asm/cpu.h> |
30 | #include <asm/processor.h> | 32 | #include <asm/processor.h> |
@@ -180,7 +182,7 @@ static int vpemask[2][8] = { | |||
180 | {0, 0, 0, 0, 0, 0, 0, 1} | 182 | {0, 0, 0, 0, 0, 0, 0, 1} |
181 | }; | 183 | }; |
182 | int tcnoprog[NR_CPUS]; | 184 | int tcnoprog[NR_CPUS]; |
183 | static atomic_t idle_hook_initialized = {0}; | 185 | static atomic_t idle_hook_initialized = ATOMIC_INIT(0); |
184 | static int clock_hang_reported[NR_CPUS]; | 186 | static int clock_hang_reported[NR_CPUS]; |
185 | 187 | ||
186 | #endif /* CONFIG_SMTC_IDLE_HOOK_DEBUG */ | 188 | #endif /* CONFIG_SMTC_IDLE_HOOK_DEBUG */ |
@@ -939,23 +941,29 @@ static void ipi_call_interrupt(void) | |||
939 | 941 | ||
940 | DECLARE_PER_CPU(struct clock_event_device, mips_clockevent_device); | 942 | DECLARE_PER_CPU(struct clock_event_device, mips_clockevent_device); |
941 | 943 | ||
942 | void ipi_decode(struct smtc_ipi *pipi) | 944 | static void __irq_entry smtc_clock_tick_interrupt(void) |
943 | { | 945 | { |
944 | unsigned int cpu = smp_processor_id(); | 946 | unsigned int cpu = smp_processor_id(); |
945 | struct clock_event_device *cd; | 947 | struct clock_event_device *cd; |
948 | int irq = MIPS_CPU_IRQ_BASE + 1; | ||
949 | |||
950 | irq_enter(); | ||
951 | kstat_incr_irqs_this_cpu(irq, irq_to_desc(irq)); | ||
952 | cd = &per_cpu(mips_clockevent_device, cpu); | ||
953 | cd->event_handler(cd); | ||
954 | irq_exit(); | ||
955 | } | ||
956 | |||
957 | void ipi_decode(struct smtc_ipi *pipi) | ||
958 | { | ||
946 | void *arg_copy = pipi->arg; | 959 | void *arg_copy = pipi->arg; |
947 | int type_copy = pipi->type; | 960 | int type_copy = pipi->type; |
948 | int irq = MIPS_CPU_IRQ_BASE + 1; | ||
949 | 961 | ||
950 | smtc_ipi_nq(&freeIPIq, pipi); | 962 | smtc_ipi_nq(&freeIPIq, pipi); |
951 | 963 | ||
952 | switch (type_copy) { | 964 | switch (type_copy) { |
953 | case SMTC_CLOCK_TICK: | 965 | case SMTC_CLOCK_TICK: |
954 | irq_enter(); | 966 | smtc_clock_tick_interrupt(); |
955 | kstat_incr_irqs_this_cpu(irq, irq_to_desc(irq)); | ||
956 | cd = &per_cpu(mips_clockevent_device, cpu); | ||
957 | cd->event_handler(cd); | ||
958 | irq_exit(); | ||
959 | break; | 967 | break; |
960 | 968 | ||
961 | case LINUX_SMP_IPI: | 969 | case LINUX_SMP_IPI: |
@@ -1331,7 +1339,7 @@ void smtc_get_new_mmu_context(struct mm_struct *mm, unsigned long cpu) | |||
1331 | if (!((asid += ASID_INC) & ASID_MASK) ) { | 1339 | if (!((asid += ASID_INC) & ASID_MASK) ) { |
1332 | if (cpu_has_vtag_icache) | 1340 | if (cpu_has_vtag_icache) |
1333 | flush_icache_all(); | 1341 | flush_icache_all(); |
1334 | /* Traverse all online CPUs (hack requires contigous range) */ | 1342 | /* Traverse all online CPUs (hack requires contiguous range) */ |
1335 | for_each_online_cpu(i) { | 1343 | for_each_online_cpu(i) { |
1336 | /* | 1344 | /* |
1337 | * We don't need to worry about our own CPU, nor those of | 1345 | * We don't need to worry about our own CPU, nor those of |
diff --git a/arch/mips/kernel/spinlock_test.c b/arch/mips/kernel/spinlock_test.c new file mode 100644 index 000000000000..da61134dfc53 --- /dev/null +++ b/arch/mips/kernel/spinlock_test.c | |||
@@ -0,0 +1,141 @@ | |||
1 | #include <linux/init.h> | ||
2 | #include <linux/kthread.h> | ||
3 | #include <linux/hrtimer.h> | ||
4 | #include <linux/fs.h> | ||
5 | #include <linux/debugfs.h> | ||
6 | #include <linux/module.h> | ||
7 | #include <linux/spinlock.h> | ||
8 | |||
9 | |||
10 | static int ss_get(void *data, u64 *val) | ||
11 | { | ||
12 | ktime_t start, finish; | ||
13 | int loops; | ||
14 | int cont; | ||
15 | DEFINE_RAW_SPINLOCK(ss_spin); | ||
16 | |||
17 | loops = 1000000; | ||
18 | cont = 1; | ||
19 | |||
20 | start = ktime_get(); | ||
21 | |||
22 | while (cont) { | ||
23 | raw_spin_lock(&ss_spin); | ||
24 | loops--; | ||
25 | if (loops == 0) | ||
26 | cont = 0; | ||
27 | raw_spin_unlock(&ss_spin); | ||
28 | } | ||
29 | |||
30 | finish = ktime_get(); | ||
31 | |||
32 | *val = ktime_us_delta(finish, start); | ||
33 | |||
34 | return 0; | ||
35 | } | ||
36 | |||
37 | DEFINE_SIMPLE_ATTRIBUTE(fops_ss, ss_get, NULL, "%llu\n"); | ||
38 | |||
39 | |||
40 | |||
41 | struct spin_multi_state { | ||
42 | raw_spinlock_t lock; | ||
43 | atomic_t start_wait; | ||
44 | atomic_t enter_wait; | ||
45 | atomic_t exit_wait; | ||
46 | int loops; | ||
47 | }; | ||
48 | |||
49 | struct spin_multi_per_thread { | ||
50 | struct spin_multi_state *state; | ||
51 | ktime_t start; | ||
52 | }; | ||
53 | |||
54 | static int multi_other(void *data) | ||
55 | { | ||
56 | int loops; | ||
57 | int cont; | ||
58 | struct spin_multi_per_thread *pt = data; | ||
59 | struct spin_multi_state *s = pt->state; | ||
60 | |||
61 | loops = s->loops; | ||
62 | cont = 1; | ||
63 | |||
64 | atomic_dec(&s->enter_wait); | ||
65 | |||
66 | while (atomic_read(&s->enter_wait)) | ||
67 | ; /* spin */ | ||
68 | |||
69 | pt->start = ktime_get(); | ||
70 | |||
71 | atomic_dec(&s->start_wait); | ||
72 | |||
73 | while (atomic_read(&s->start_wait)) | ||
74 | ; /* spin */ | ||
75 | |||
76 | while (cont) { | ||
77 | raw_spin_lock(&s->lock); | ||
78 | loops--; | ||
79 | if (loops == 0) | ||
80 | cont = 0; | ||
81 | raw_spin_unlock(&s->lock); | ||
82 | } | ||
83 | |||
84 | atomic_dec(&s->exit_wait); | ||
85 | while (atomic_read(&s->exit_wait)) | ||
86 | ; /* spin */ | ||
87 | return 0; | ||
88 | } | ||
89 | |||
90 | static int multi_get(void *data, u64 *val) | ||
91 | { | ||
92 | ktime_t finish; | ||
93 | struct spin_multi_state ms; | ||
94 | struct spin_multi_per_thread t1, t2; | ||
95 | |||
96 | ms.lock = __RAW_SPIN_LOCK_UNLOCKED("multi_get"); | ||
97 | ms.loops = 1000000; | ||
98 | |||
99 | atomic_set(&ms.start_wait, 2); | ||
100 | atomic_set(&ms.enter_wait, 2); | ||
101 | atomic_set(&ms.exit_wait, 2); | ||
102 | t1.state = &ms; | ||
103 | t2.state = &ms; | ||
104 | |||
105 | kthread_run(multi_other, &t2, "multi_get"); | ||
106 | |||
107 | multi_other(&t1); | ||
108 | |||
109 | finish = ktime_get(); | ||
110 | |||
111 | *val = ktime_us_delta(finish, t1.start); | ||
112 | |||
113 | return 0; | ||
114 | } | ||
115 | |||
116 | DEFINE_SIMPLE_ATTRIBUTE(fops_multi, multi_get, NULL, "%llu\n"); | ||
117 | |||
118 | |||
119 | extern struct dentry *mips_debugfs_dir; | ||
120 | static int __init spinlock_test(void) | ||
121 | { | ||
122 | struct dentry *d; | ||
123 | |||
124 | if (!mips_debugfs_dir) | ||
125 | return -ENODEV; | ||
126 | |||
127 | d = debugfs_create_file("spin_single", S_IRUGO, | ||
128 | mips_debugfs_dir, NULL, | ||
129 | &fops_ss); | ||
130 | if (!d) | ||
131 | return -ENOMEM; | ||
132 | |||
133 | d = debugfs_create_file("spin_multi", S_IRUGO, | ||
134 | mips_debugfs_dir, NULL, | ||
135 | &fops_multi); | ||
136 | if (!d) | ||
137 | return -ENOMEM; | ||
138 | |||
139 | return 0; | ||
140 | } | ||
141 | device_initcall(spinlock_test); | ||
diff --git a/arch/mips/kernel/syscall.c b/arch/mips/kernel/syscall.c index fe0d79805603..dd81b0f87518 100644 --- a/arch/mips/kernel/syscall.c +++ b/arch/mips/kernel/syscall.c | |||
@@ -19,7 +19,6 @@ | |||
19 | #include <linux/string.h> | 19 | #include <linux/string.h> |
20 | #include <linux/syscalls.h> | 20 | #include <linux/syscalls.h> |
21 | #include <linux/file.h> | 21 | #include <linux/file.h> |
22 | #include <linux/slab.h> | ||
23 | #include <linux/utsname.h> | 22 | #include <linux/utsname.h> |
24 | #include <linux/unistd.h> | 23 | #include <linux/unistd.h> |
25 | #include <linux/sem.h> | 24 | #include <linux/sem.h> |
@@ -29,6 +28,7 @@ | |||
29 | #include <linux/module.h> | 28 | #include <linux/module.h> |
30 | #include <linux/ipc.h> | 29 | #include <linux/ipc.h> |
31 | #include <linux/uaccess.h> | 30 | #include <linux/uaccess.h> |
31 | #include <linux/slab.h> | ||
32 | 32 | ||
33 | #include <asm/asm.h> | 33 | #include <asm/asm.h> |
34 | #include <asm/branch.h> | 34 | #include <asm/branch.h> |
@@ -79,7 +79,11 @@ unsigned long arch_get_unmapped_area(struct file *filp, unsigned long addr, | |||
79 | int do_color_align; | 79 | int do_color_align; |
80 | unsigned long task_size; | 80 | unsigned long task_size; |
81 | 81 | ||
82 | task_size = STACK_TOP; | 82 | #ifdef CONFIG_32BIT |
83 | task_size = TASK_SIZE; | ||
84 | #else /* Must be CONFIG_64BIT*/ | ||
85 | task_size = test_thread_flag(TIF_32BIT_ADDR) ? TASK_SIZE32 : TASK_SIZE; | ||
86 | #endif | ||
83 | 87 | ||
84 | if (len > task_size) | 88 | if (len > task_size) |
85 | return -ENOMEM; | 89 | return -ENOMEM; |
@@ -93,7 +97,8 @@ unsigned long arch_get_unmapped_area(struct file *filp, unsigned long addr, | |||
93 | * We do not accept a shared mapping if it would violate | 97 | * We do not accept a shared mapping if it would violate |
94 | * cache aliasing constraints. | 98 | * cache aliasing constraints. |
95 | */ | 99 | */ |
96 | if ((flags & MAP_SHARED) && (addr & shm_align_mask)) | 100 | if ((flags & MAP_SHARED) && |
101 | ((addr - (pgoff << PAGE_SHIFT)) & shm_align_mask)) | ||
97 | return -EINVAL; | 102 | return -EINVAL; |
98 | return addr; | 103 | return addr; |
99 | } | 104 | } |
@@ -129,31 +134,6 @@ unsigned long arch_get_unmapped_area(struct file *filp, unsigned long addr, | |||
129 | } | 134 | } |
130 | } | 135 | } |
131 | 136 | ||
132 | /* common code for old and new mmaps */ | ||
133 | static inline unsigned long | ||
134 | do_mmap2(unsigned long addr, unsigned long len, unsigned long prot, | ||
135 | unsigned long flags, unsigned long fd, unsigned long pgoff) | ||
136 | { | ||
137 | unsigned long error = -EBADF; | ||
138 | struct file * file = NULL; | ||
139 | |||
140 | flags &= ~(MAP_EXECUTABLE | MAP_DENYWRITE); | ||
141 | if (!(flags & MAP_ANONYMOUS)) { | ||
142 | file = fget(fd); | ||
143 | if (!file) | ||
144 | goto out; | ||
145 | } | ||
146 | |||
147 | down_write(¤t->mm->mmap_sem); | ||
148 | error = do_mmap_pgoff(file, addr, len, prot, flags, pgoff); | ||
149 | up_write(¤t->mm->mmap_sem); | ||
150 | |||
151 | if (file) | ||
152 | fput(file); | ||
153 | out: | ||
154 | return error; | ||
155 | } | ||
156 | |||
157 | SYSCALL_DEFINE6(mips_mmap, unsigned long, addr, unsigned long, len, | 137 | SYSCALL_DEFINE6(mips_mmap, unsigned long, addr, unsigned long, len, |
158 | unsigned long, prot, unsigned long, flags, unsigned long, | 138 | unsigned long, prot, unsigned long, flags, unsigned long, |
159 | fd, off_t, offset) | 139 | fd, off_t, offset) |
@@ -164,7 +144,7 @@ SYSCALL_DEFINE6(mips_mmap, unsigned long, addr, unsigned long, len, | |||
164 | if (offset & ~PAGE_MASK) | 144 | if (offset & ~PAGE_MASK) |
165 | goto out; | 145 | goto out; |
166 | 146 | ||
167 | result = do_mmap2(addr, len, prot, flags, fd, offset >> PAGE_SHIFT); | 147 | result = sys_mmap_pgoff(addr, len, prot, flags, fd, offset >> PAGE_SHIFT); |
168 | 148 | ||
169 | out: | 149 | out: |
170 | return result; | 150 | return result; |
@@ -177,7 +157,7 @@ SYSCALL_DEFINE6(mips_mmap2, unsigned long, addr, unsigned long, len, | |||
177 | if (pgoff & (~PAGE_MASK >> 12)) | 157 | if (pgoff & (~PAGE_MASK >> 12)) |
178 | return -EINVAL; | 158 | return -EINVAL; |
179 | 159 | ||
180 | return do_mmap2(addr, len, prot, flags, fd, pgoff >> (PAGE_SHIFT-12)); | 160 | return sys_mmap_pgoff(addr, len, prot, flags, fd, pgoff >> (PAGE_SHIFT-12)); |
181 | } | 161 | } |
182 | 162 | ||
183 | save_static_function(sys_fork); | 163 | save_static_function(sys_fork); |
@@ -239,48 +219,6 @@ out: | |||
239 | return error; | 219 | return error; |
240 | } | 220 | } |
241 | 221 | ||
242 | /* | ||
243 | * Compacrapability ... | ||
244 | */ | ||
245 | SYSCALL_DEFINE1(uname, struct old_utsname __user *, name) | ||
246 | { | ||
247 | if (name && !copy_to_user(name, utsname(), sizeof (*name))) | ||
248 | return 0; | ||
249 | return -EFAULT; | ||
250 | } | ||
251 | |||
252 | /* | ||
253 | * Compacrapability ... | ||
254 | */ | ||
255 | SYSCALL_DEFINE1(olduname, struct oldold_utsname __user *, name) | ||
256 | { | ||
257 | int error; | ||
258 | |||
259 | if (!name) | ||
260 | return -EFAULT; | ||
261 | if (!access_ok(VERIFY_WRITE, name, sizeof(struct oldold_utsname))) | ||
262 | return -EFAULT; | ||
263 | |||
264 | error = __copy_to_user(&name->sysname, &utsname()->sysname, | ||
265 | __OLD_UTS_LEN); | ||
266 | error -= __put_user(0, name->sysname + __OLD_UTS_LEN); | ||
267 | error -= __copy_to_user(&name->nodename, &utsname()->nodename, | ||
268 | __OLD_UTS_LEN); | ||
269 | error -= __put_user(0, name->nodename + __OLD_UTS_LEN); | ||
270 | error -= __copy_to_user(&name->release, &utsname()->release, | ||
271 | __OLD_UTS_LEN); | ||
272 | error -= __put_user(0, name->release + __OLD_UTS_LEN); | ||
273 | error -= __copy_to_user(&name->version, &utsname()->version, | ||
274 | __OLD_UTS_LEN); | ||
275 | error -= __put_user(0, name->version + __OLD_UTS_LEN); | ||
276 | error -= __copy_to_user(&name->machine, &utsname()->machine, | ||
277 | __OLD_UTS_LEN); | ||
278 | error = __put_user(0, name->machine + __OLD_UTS_LEN); | ||
279 | error = error ? -EFAULT : 0; | ||
280 | |||
281 | return error; | ||
282 | } | ||
283 | |||
284 | SYSCALL_DEFINE1(set_thread_area, unsigned long, addr) | 222 | SYSCALL_DEFINE1(set_thread_area, unsigned long, addr) |
285 | { | 223 | { |
286 | struct thread_info *ti = task_thread_info(current); | 224 | struct thread_info *ti = task_thread_info(current); |
@@ -431,94 +369,6 @@ _sys_sysmips(nabi_no_regargs struct pt_regs regs) | |||
431 | } | 369 | } |
432 | 370 | ||
433 | /* | 371 | /* |
434 | * sys_ipc() is the de-multiplexer for the SysV IPC calls.. | ||
435 | * | ||
436 | * This is really horribly ugly. | ||
437 | */ | ||
438 | SYSCALL_DEFINE6(ipc, unsigned int, call, int, first, int, second, | ||
439 | unsigned long, third, void __user *, ptr, long, fifth) | ||
440 | { | ||
441 | int version, ret; | ||
442 | |||
443 | version = call >> 16; /* hack for backward compatibility */ | ||
444 | call &= 0xffff; | ||
445 | |||
446 | switch (call) { | ||
447 | case SEMOP: | ||
448 | return sys_semtimedop(first, (struct sembuf __user *)ptr, | ||
449 | second, NULL); | ||
450 | case SEMTIMEDOP: | ||
451 | return sys_semtimedop(first, (struct sembuf __user *)ptr, | ||
452 | second, | ||
453 | (const struct timespec __user *)fifth); | ||
454 | case SEMGET: | ||
455 | return sys_semget(first, second, third); | ||
456 | case SEMCTL: { | ||
457 | union semun fourth; | ||
458 | if (!ptr) | ||
459 | return -EINVAL; | ||
460 | if (get_user(fourth.__pad, (void __user *__user *) ptr)) | ||
461 | return -EFAULT; | ||
462 | return sys_semctl(first, second, third, fourth); | ||
463 | } | ||
464 | |||
465 | case MSGSND: | ||
466 | return sys_msgsnd(first, (struct msgbuf __user *) ptr, | ||
467 | second, third); | ||
468 | case MSGRCV: | ||
469 | switch (version) { | ||
470 | case 0: { | ||
471 | struct ipc_kludge tmp; | ||
472 | if (!ptr) | ||
473 | return -EINVAL; | ||
474 | |||
475 | if (copy_from_user(&tmp, | ||
476 | (struct ipc_kludge __user *) ptr, | ||
477 | sizeof(tmp))) | ||
478 | return -EFAULT; | ||
479 | return sys_msgrcv(first, tmp.msgp, second, | ||
480 | tmp.msgtyp, third); | ||
481 | } | ||
482 | default: | ||
483 | return sys_msgrcv(first, | ||
484 | (struct msgbuf __user *) ptr, | ||
485 | second, fifth, third); | ||
486 | } | ||
487 | case MSGGET: | ||
488 | return sys_msgget((key_t) first, second); | ||
489 | case MSGCTL: | ||
490 | return sys_msgctl(first, second, | ||
491 | (struct msqid_ds __user *) ptr); | ||
492 | |||
493 | case SHMAT: | ||
494 | switch (version) { | ||
495 | default: { | ||
496 | unsigned long raddr; | ||
497 | ret = do_shmat(first, (char __user *) ptr, second, | ||
498 | &raddr); | ||
499 | if (ret) | ||
500 | return ret; | ||
501 | return put_user(raddr, (unsigned long __user *) third); | ||
502 | } | ||
503 | case 1: /* iBCS2 emulator entry point */ | ||
504 | if (!segment_eq(get_fs(), get_ds())) | ||
505 | return -EINVAL; | ||
506 | return do_shmat(first, (char __user *) ptr, second, | ||
507 | (unsigned long *) third); | ||
508 | } | ||
509 | case SHMDT: | ||
510 | return sys_shmdt((char __user *)ptr); | ||
511 | case SHMGET: | ||
512 | return sys_shmget(first, second, third); | ||
513 | case SHMCTL: | ||
514 | return sys_shmctl(first, second, | ||
515 | (struct shmid_ds __user *) ptr); | ||
516 | default: | ||
517 | return -ENOSYS; | ||
518 | } | ||
519 | } | ||
520 | |||
521 | /* | ||
522 | * No implemented yet ... | 372 | * No implemented yet ... |
523 | */ | 373 | */ |
524 | SYSCALL_DEFINE3(cachectl, char *, addr, int, nbytes, int, op) | 374 | SYSCALL_DEFINE3(cachectl, char *, addr, int, nbytes, int, op) |
diff --git a/arch/mips/kernel/time.c b/arch/mips/kernel/time.c index 1f467d534642..fb7497405510 100644 --- a/arch/mips/kernel/time.c +++ b/arch/mips/kernel/time.c | |||
@@ -71,39 +71,6 @@ EXPORT_SYMBOL(perf_irq); | |||
71 | 71 | ||
72 | unsigned int mips_hpt_frequency; | 72 | unsigned int mips_hpt_frequency; |
73 | 73 | ||
74 | void __init clocksource_set_clock(struct clocksource *cs, unsigned int clock) | ||
75 | { | ||
76 | u64 temp; | ||
77 | u32 shift; | ||
78 | |||
79 | /* Find a shift value */ | ||
80 | for (shift = 32; shift > 0; shift--) { | ||
81 | temp = (u64) NSEC_PER_SEC << shift; | ||
82 | do_div(temp, clock); | ||
83 | if ((temp >> 32) == 0) | ||
84 | break; | ||
85 | } | ||
86 | cs->shift = shift; | ||
87 | cs->mult = (u32) temp; | ||
88 | } | ||
89 | |||
90 | void __cpuinit clockevent_set_clock(struct clock_event_device *cd, | ||
91 | unsigned int clock) | ||
92 | { | ||
93 | u64 temp; | ||
94 | u32 shift; | ||
95 | |||
96 | /* Find a shift value */ | ||
97 | for (shift = 32; shift > 0; shift--) { | ||
98 | temp = (u64) clock << shift; | ||
99 | do_div(temp, NSEC_PER_SEC); | ||
100 | if ((temp >> 32) == 0) | ||
101 | break; | ||
102 | } | ||
103 | cd->shift = shift; | ||
104 | cd->mult = (u32) temp; | ||
105 | } | ||
106 | |||
107 | /* | 74 | /* |
108 | * This function exists in order to cause an error due to a duplicate | 75 | * This function exists in order to cause an error due to a duplicate |
109 | * definition if platform code should have its own implementation. The hook | 76 | * definition if platform code should have its own implementation. The hook |
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c index 0a18b4c62afb..d612c6dcb746 100644 --- a/arch/mips/kernel/traps.c +++ b/arch/mips/kernel/traps.c | |||
@@ -25,10 +25,12 @@ | |||
25 | #include <linux/ptrace.h> | 25 | #include <linux/ptrace.h> |
26 | #include <linux/kgdb.h> | 26 | #include <linux/kgdb.h> |
27 | #include <linux/kdebug.h> | 27 | #include <linux/kdebug.h> |
28 | #include <linux/notifier.h> | ||
28 | 29 | ||
29 | #include <asm/bootinfo.h> | 30 | #include <asm/bootinfo.h> |
30 | #include <asm/branch.h> | 31 | #include <asm/branch.h> |
31 | #include <asm/break.h> | 32 | #include <asm/break.h> |
33 | #include <asm/cop2.h> | ||
32 | #include <asm/cpu.h> | 34 | #include <asm/cpu.h> |
33 | #include <asm/dsp.h> | 35 | #include <asm/dsp.h> |
34 | #include <asm/fpu.h> | 36 | #include <asm/fpu.h> |
@@ -48,6 +50,7 @@ | |||
48 | #include <asm/types.h> | 50 | #include <asm/types.h> |
49 | #include <asm/stacktrace.h> | 51 | #include <asm/stacktrace.h> |
50 | #include <asm/irq.h> | 52 | #include <asm/irq.h> |
53 | #include <asm/uasm.h> | ||
51 | 54 | ||
52 | extern void check_wait(void); | 55 | extern void check_wait(void); |
53 | extern asmlinkage void r4k_wait(void); | 56 | extern asmlinkage void r4k_wait(void); |
@@ -79,10 +82,6 @@ extern asmlinkage void handle_reserved(void); | |||
79 | extern int fpu_emulator_cop1Handler(struct pt_regs *xcp, | 82 | extern int fpu_emulator_cop1Handler(struct pt_regs *xcp, |
80 | struct mips_fpu_struct *ctx, int has_fpu); | 83 | struct mips_fpu_struct *ctx, int has_fpu); |
81 | 84 | ||
82 | #ifdef CONFIG_CPU_CAVIUM_OCTEON | ||
83 | extern asmlinkage void octeon_cop2_restore(struct octeon_cop2_state *task); | ||
84 | #endif | ||
85 | |||
86 | void (*board_be_init)(void); | 85 | void (*board_be_init)(void); |
87 | int (*board_be_handler)(struct pt_regs *regs, int is_fixup); | 86 | int (*board_be_handler)(struct pt_regs *regs, int is_fixup); |
88 | void (*board_nmi_handler_setup)(void); | 87 | void (*board_nmi_handler_setup)(void); |
@@ -353,9 +352,10 @@ void show_registers(const struct pt_regs *regs) | |||
353 | 352 | ||
354 | static DEFINE_SPINLOCK(die_lock); | 353 | static DEFINE_SPINLOCK(die_lock); |
355 | 354 | ||
356 | void __noreturn die(const char * str, const struct pt_regs * regs) | 355 | void __noreturn die(const char * str, struct pt_regs * regs) |
357 | { | 356 | { |
358 | static int die_counter; | 357 | static int die_counter; |
358 | int sig = SIGSEGV; | ||
359 | #ifdef CONFIG_MIPS_MT_SMTC | 359 | #ifdef CONFIG_MIPS_MT_SMTC |
360 | unsigned long dvpret = dvpe(); | 360 | unsigned long dvpret = dvpe(); |
361 | #endif /* CONFIG_MIPS_MT_SMTC */ | 361 | #endif /* CONFIG_MIPS_MT_SMTC */ |
@@ -366,6 +366,10 @@ void __noreturn die(const char * str, const struct pt_regs * regs) | |||
366 | #ifdef CONFIG_MIPS_MT_SMTC | 366 | #ifdef CONFIG_MIPS_MT_SMTC |
367 | mips_mt_regdump(dvpret); | 367 | mips_mt_regdump(dvpret); |
368 | #endif /* CONFIG_MIPS_MT_SMTC */ | 368 | #endif /* CONFIG_MIPS_MT_SMTC */ |
369 | |||
370 | if (notify_die(DIE_OOPS, str, regs, 0, current->thread.trap_no, SIGSEGV) == NOTIFY_STOP) | ||
371 | sig = 0; | ||
372 | |||
369 | printk("%s[#%d]:\n", str, ++die_counter); | 373 | printk("%s[#%d]:\n", str, ++die_counter); |
370 | show_registers(regs); | 374 | show_registers(regs); |
371 | add_taint(TAINT_DIE); | 375 | add_taint(TAINT_DIE); |
@@ -380,7 +384,7 @@ void __noreturn die(const char * str, const struct pt_regs * regs) | |||
380 | panic("Fatal exception"); | 384 | panic("Fatal exception"); |
381 | } | 385 | } |
382 | 386 | ||
383 | do_exit(SIGSEGV); | 387 | do_exit(sig); |
384 | } | 388 | } |
385 | 389 | ||
386 | extern struct exception_table_entry __start___dbe_table[]; | 390 | extern struct exception_table_entry __start___dbe_table[]; |
@@ -857,6 +861,44 @@ static void mt_ase_fp_affinity(void) | |||
857 | #endif /* CONFIG_MIPS_MT_FPAFF */ | 861 | #endif /* CONFIG_MIPS_MT_FPAFF */ |
858 | } | 862 | } |
859 | 863 | ||
864 | /* | ||
865 | * No lock; only written during early bootup by CPU 0. | ||
866 | */ | ||
867 | static RAW_NOTIFIER_HEAD(cu2_chain); | ||
868 | |||
869 | int __ref register_cu2_notifier(struct notifier_block *nb) | ||
870 | { | ||
871 | return raw_notifier_chain_register(&cu2_chain, nb); | ||
872 | } | ||
873 | |||
874 | int cu2_notifier_call_chain(unsigned long val, void *v) | ||
875 | { | ||
876 | return raw_notifier_call_chain(&cu2_chain, val, v); | ||
877 | } | ||
878 | |||
879 | static int default_cu2_call(struct notifier_block *nfb, unsigned long action, | ||
880 | void *data) | ||
881 | { | ||
882 | struct pt_regs *regs = data; | ||
883 | |||
884 | switch (action) { | ||
885 | default: | ||
886 | die_if_kernel("Unhandled kernel unaligned access or invalid " | ||
887 | "instruction", regs); | ||
888 | /* Fall through */ | ||
889 | |||
890 | case CU2_EXCEPTION: | ||
891 | force_sig(SIGILL, current); | ||
892 | } | ||
893 | |||
894 | return NOTIFY_OK; | ||
895 | } | ||
896 | |||
897 | static struct notifier_block default_cu2_notifier = { | ||
898 | .notifier_call = default_cu2_call, | ||
899 | .priority = 0x80000000, /* Run last */ | ||
900 | }; | ||
901 | |||
860 | asmlinkage void do_cpu(struct pt_regs *regs) | 902 | asmlinkage void do_cpu(struct pt_regs *regs) |
861 | { | 903 | { |
862 | unsigned int __user *epc; | 904 | unsigned int __user *epc; |
@@ -920,17 +962,9 @@ asmlinkage void do_cpu(struct pt_regs *regs) | |||
920 | return; | 962 | return; |
921 | 963 | ||
922 | case 2: | 964 | case 2: |
923 | #ifdef CONFIG_CPU_CAVIUM_OCTEON | 965 | raw_notifier_call_chain(&cu2_chain, CU2_EXCEPTION, regs); |
924 | prefetch(¤t->thread.cp2); | 966 | break; |
925 | local_irq_save(flags); | 967 | |
926 | KSTK_STATUS(current) |= ST0_CU2; | ||
927 | status = read_c0_status(); | ||
928 | write_c0_status(status | ST0_CU2); | ||
929 | octeon_cop2_restore(&(current->thread.cp2)); | ||
930 | write_c0_status(status & ~ST0_CU2); | ||
931 | local_irq_restore(flags); | ||
932 | return; | ||
933 | #endif | ||
934 | case 3: | 968 | case 3: |
935 | break; | 969 | break; |
936 | } | 970 | } |
@@ -1243,21 +1277,25 @@ unsigned long ebase; | |||
1243 | unsigned long exception_handlers[32]; | 1277 | unsigned long exception_handlers[32]; |
1244 | unsigned long vi_handlers[64]; | 1278 | unsigned long vi_handlers[64]; |
1245 | 1279 | ||
1246 | /* | 1280 | void __init *set_except_vector(int n, void *addr) |
1247 | * As a side effect of the way this is implemented we're limited | ||
1248 | * to interrupt handlers in the address range from | ||
1249 | * KSEG0 <= x < KSEG0 + 256mb on the Nevada. Oh well ... | ||
1250 | */ | ||
1251 | void *set_except_vector(int n, void *addr) | ||
1252 | { | 1281 | { |
1253 | unsigned long handler = (unsigned long) addr; | 1282 | unsigned long handler = (unsigned long) addr; |
1254 | unsigned long old_handler = exception_handlers[n]; | 1283 | unsigned long old_handler = exception_handlers[n]; |
1255 | 1284 | ||
1256 | exception_handlers[n] = handler; | 1285 | exception_handlers[n] = handler; |
1257 | if (n == 0 && cpu_has_divec) { | 1286 | if (n == 0 && cpu_has_divec) { |
1258 | *(u32 *)(ebase + 0x200) = 0x08000000 | | 1287 | unsigned long jump_mask = ~((1 << 28) - 1); |
1259 | (0x03ffffff & (handler >> 2)); | 1288 | u32 *buf = (u32 *)(ebase + 0x200); |
1260 | local_flush_icache_range(ebase + 0x200, ebase + 0x204); | 1289 | unsigned int k0 = 26; |
1290 | if ((handler & jump_mask) == ((ebase + 0x200) & jump_mask)) { | ||
1291 | uasm_i_j(&buf, handler & ~jump_mask); | ||
1292 | uasm_i_nop(&buf); | ||
1293 | } else { | ||
1294 | UASM_i_LA(&buf, k0, handler); | ||
1295 | uasm_i_jr(&buf, k0); | ||
1296 | uasm_i_nop(&buf); | ||
1297 | } | ||
1298 | local_flush_icache_range(ebase + 0x200, (unsigned long)buf); | ||
1261 | } | 1299 | } |
1262 | return (void *)old_handler; | 1300 | return (void *)old_handler; |
1263 | } | 1301 | } |
@@ -1367,77 +1405,6 @@ void *set_vi_handler(int n, vi_handler_t addr) | |||
1367 | return set_vi_srs_handler(n, addr, 0); | 1405 | return set_vi_srs_handler(n, addr, 0); |
1368 | } | 1406 | } |
1369 | 1407 | ||
1370 | /* | ||
1371 | * This is used by native signal handling | ||
1372 | */ | ||
1373 | asmlinkage int (*save_fp_context)(struct sigcontext __user *sc); | ||
1374 | asmlinkage int (*restore_fp_context)(struct sigcontext __user *sc); | ||
1375 | |||
1376 | extern asmlinkage int _save_fp_context(struct sigcontext __user *sc); | ||
1377 | extern asmlinkage int _restore_fp_context(struct sigcontext __user *sc); | ||
1378 | |||
1379 | extern asmlinkage int fpu_emulator_save_context(struct sigcontext __user *sc); | ||
1380 | extern asmlinkage int fpu_emulator_restore_context(struct sigcontext __user *sc); | ||
1381 | |||
1382 | #ifdef CONFIG_SMP | ||
1383 | static int smp_save_fp_context(struct sigcontext __user *sc) | ||
1384 | { | ||
1385 | return raw_cpu_has_fpu | ||
1386 | ? _save_fp_context(sc) | ||
1387 | : fpu_emulator_save_context(sc); | ||
1388 | } | ||
1389 | |||
1390 | static int smp_restore_fp_context(struct sigcontext __user *sc) | ||
1391 | { | ||
1392 | return raw_cpu_has_fpu | ||
1393 | ? _restore_fp_context(sc) | ||
1394 | : fpu_emulator_restore_context(sc); | ||
1395 | } | ||
1396 | #endif | ||
1397 | |||
1398 | static inline void signal_init(void) | ||
1399 | { | ||
1400 | #ifdef CONFIG_SMP | ||
1401 | /* For now just do the cpu_has_fpu check when the functions are invoked */ | ||
1402 | save_fp_context = smp_save_fp_context; | ||
1403 | restore_fp_context = smp_restore_fp_context; | ||
1404 | #else | ||
1405 | if (cpu_has_fpu) { | ||
1406 | save_fp_context = _save_fp_context; | ||
1407 | restore_fp_context = _restore_fp_context; | ||
1408 | } else { | ||
1409 | save_fp_context = fpu_emulator_save_context; | ||
1410 | restore_fp_context = fpu_emulator_restore_context; | ||
1411 | } | ||
1412 | #endif | ||
1413 | } | ||
1414 | |||
1415 | #ifdef CONFIG_MIPS32_COMPAT | ||
1416 | |||
1417 | /* | ||
1418 | * This is used by 32-bit signal stuff on the 64-bit kernel | ||
1419 | */ | ||
1420 | asmlinkage int (*save_fp_context32)(struct sigcontext32 __user *sc); | ||
1421 | asmlinkage int (*restore_fp_context32)(struct sigcontext32 __user *sc); | ||
1422 | |||
1423 | extern asmlinkage int _save_fp_context32(struct sigcontext32 __user *sc); | ||
1424 | extern asmlinkage int _restore_fp_context32(struct sigcontext32 __user *sc); | ||
1425 | |||
1426 | extern asmlinkage int fpu_emulator_save_context32(struct sigcontext32 __user *sc); | ||
1427 | extern asmlinkage int fpu_emulator_restore_context32(struct sigcontext32 __user *sc); | ||
1428 | |||
1429 | static inline void signal32_init(void) | ||
1430 | { | ||
1431 | if (cpu_has_fpu) { | ||
1432 | save_fp_context32 = _save_fp_context32; | ||
1433 | restore_fp_context32 = _restore_fp_context32; | ||
1434 | } else { | ||
1435 | save_fp_context32 = fpu_emulator_save_context32; | ||
1436 | restore_fp_context32 = fpu_emulator_restore_context32; | ||
1437 | } | ||
1438 | } | ||
1439 | #endif | ||
1440 | |||
1441 | extern void cpu_cache_init(void); | 1408 | extern void cpu_cache_init(void); |
1442 | extern void tlb_init(void); | 1409 | extern void tlb_init(void); |
1443 | extern void flush_tlb_handlers(void); | 1410 | extern void flush_tlb_handlers(void); |
@@ -1446,6 +1413,7 @@ extern void flush_tlb_handlers(void); | |||
1446 | * Timer interrupt | 1413 | * Timer interrupt |
1447 | */ | 1414 | */ |
1448 | int cp0_compare_irq; | 1415 | int cp0_compare_irq; |
1416 | int cp0_compare_irq_shift; | ||
1449 | 1417 | ||
1450 | /* | 1418 | /* |
1451 | * Performance counter IRQ or -1 if shared with timer | 1419 | * Performance counter IRQ or -1 if shared with timer |
@@ -1536,12 +1504,14 @@ void __cpuinit per_cpu_trap_init(void) | |||
1536 | * o read IntCtl.IPPCI to determine the performance counter interrupt | 1504 | * o read IntCtl.IPPCI to determine the performance counter interrupt |
1537 | */ | 1505 | */ |
1538 | if (cpu_has_mips_r2) { | 1506 | if (cpu_has_mips_r2) { |
1539 | cp0_compare_irq = (read_c0_intctl() >> 29) & 7; | 1507 | cp0_compare_irq_shift = CAUSEB_TI - CAUSEB_IP; |
1540 | cp0_perfcount_irq = (read_c0_intctl() >> 26) & 7; | 1508 | cp0_compare_irq = (read_c0_intctl() >> INTCTLB_IPTI) & 7; |
1509 | cp0_perfcount_irq = (read_c0_intctl() >> INTCTLB_IPPCI) & 7; | ||
1541 | if (cp0_perfcount_irq == cp0_compare_irq) | 1510 | if (cp0_perfcount_irq == cp0_compare_irq) |
1542 | cp0_perfcount_irq = -1; | 1511 | cp0_perfcount_irq = -1; |
1543 | } else { | 1512 | } else { |
1544 | cp0_compare_irq = CP0_LEGACY_COMPARE_IRQ; | 1513 | cp0_compare_irq = CP0_LEGACY_COMPARE_IRQ; |
1514 | cp0_compare_irq_shift = cp0_compare_irq; | ||
1545 | cp0_perfcount_irq = -1; | 1515 | cp0_perfcount_irq = -1; |
1546 | } | 1516 | } |
1547 | 1517 | ||
@@ -1592,12 +1562,7 @@ static char panic_null_cerr[] __cpuinitdata = | |||
1592 | void __cpuinit set_uncached_handler(unsigned long offset, void *addr, | 1562 | void __cpuinit set_uncached_handler(unsigned long offset, void *addr, |
1593 | unsigned long size) | 1563 | unsigned long size) |
1594 | { | 1564 | { |
1595 | #ifdef CONFIG_32BIT | 1565 | unsigned long uncached_ebase = CKSEG1ADDR(ebase); |
1596 | unsigned long uncached_ebase = KSEG1ADDR(ebase); | ||
1597 | #endif | ||
1598 | #ifdef CONFIG_64BIT | ||
1599 | unsigned long uncached_ebase = TO_UNCAC(ebase); | ||
1600 | #endif | ||
1601 | 1566 | ||
1602 | if (!addr) | 1567 | if (!addr) |
1603 | panic(panic_null_cerr); | 1568 | panic(panic_null_cerr); |
@@ -1634,7 +1599,7 @@ void __init trap_init(void) | |||
1634 | ebase = (unsigned long) | 1599 | ebase = (unsigned long) |
1635 | __alloc_bootmem(size, 1 << fls(size), 0); | 1600 | __alloc_bootmem(size, 1 << fls(size), 0); |
1636 | } else { | 1601 | } else { |
1637 | ebase = CAC_BASE; | 1602 | ebase = CKSEG0; |
1638 | if (cpu_has_mips_r2) | 1603 | if (cpu_has_mips_r2) |
1639 | ebase += (read_c0_ebase() & 0x3ffff000); | 1604 | ebase += (read_c0_ebase() & 0x3ffff000); |
1640 | } | 1605 | } |
@@ -1751,13 +1716,10 @@ void __init trap_init(void) | |||
1751 | else | 1716 | else |
1752 | memcpy((void *)(ebase + 0x080), &except_vec3_generic, 0x80); | 1717 | memcpy((void *)(ebase + 0x080), &except_vec3_generic, 0x80); |
1753 | 1718 | ||
1754 | signal_init(); | ||
1755 | #ifdef CONFIG_MIPS32_COMPAT | ||
1756 | signal32_init(); | ||
1757 | #endif | ||
1758 | |||
1759 | local_flush_icache_range(ebase, ebase + 0x400); | 1719 | local_flush_icache_range(ebase, ebase + 0x400); |
1760 | flush_tlb_handlers(); | 1720 | flush_tlb_handlers(); |
1761 | 1721 | ||
1762 | sort_extable(__start___dbe_table, __stop___dbe_table); | 1722 | sort_extable(__start___dbe_table, __stop___dbe_table); |
1723 | |||
1724 | register_cu2_notifier(&default_cu2_notifier); | ||
1763 | } | 1725 | } |
diff --git a/arch/mips/kernel/unaligned.c b/arch/mips/kernel/unaligned.c index 67bd626942ab..69b039ca8d83 100644 --- a/arch/mips/kernel/unaligned.c +++ b/arch/mips/kernel/unaligned.c | |||
@@ -81,6 +81,7 @@ | |||
81 | #include <asm/asm.h> | 81 | #include <asm/asm.h> |
82 | #include <asm/branch.h> | 82 | #include <asm/branch.h> |
83 | #include <asm/byteorder.h> | 83 | #include <asm/byteorder.h> |
84 | #include <asm/cop2.h> | ||
84 | #include <asm/inst.h> | 85 | #include <asm/inst.h> |
85 | #include <asm/uaccess.h> | 86 | #include <asm/uaccess.h> |
86 | #include <asm/system.h> | 87 | #include <asm/system.h> |
@@ -451,17 +452,27 @@ static void emulate_load_store_insn(struct pt_regs *regs, | |||
451 | */ | 452 | */ |
452 | goto sigbus; | 453 | goto sigbus; |
453 | 454 | ||
455 | /* | ||
456 | * COP2 is available to implementor for application specific use. | ||
457 | * It's up to applications to register a notifier chain and do | ||
458 | * whatever they have to do, including possible sending of signals. | ||
459 | */ | ||
454 | case lwc2_op: | 460 | case lwc2_op: |
461 | cu2_notifier_call_chain(CU2_LWC2_OP, regs); | ||
462 | break; | ||
463 | |||
455 | case ldc2_op: | 464 | case ldc2_op: |
465 | cu2_notifier_call_chain(CU2_LDC2_OP, regs); | ||
466 | break; | ||
467 | |||
456 | case swc2_op: | 468 | case swc2_op: |
469 | cu2_notifier_call_chain(CU2_SWC2_OP, regs); | ||
470 | break; | ||
471 | |||
457 | case sdc2_op: | 472 | case sdc2_op: |
458 | /* | 473 | cu2_notifier_call_chain(CU2_SDC2_OP, regs); |
459 | * These are the coprocessor 2 load/stores. The current | 474 | break; |
460 | * implementations don't use cp2 and cp2 should always be | 475 | |
461 | * disabled in c0_status. So send SIGILL. | ||
462 | * (No longer true: The Sony Praystation uses cp2 for | ||
463 | * 3D matrix operations. Dunno if that thingy has a MMU ...) | ||
464 | */ | ||
465 | default: | 476 | default: |
466 | /* | 477 | /* |
467 | * Pheeee... We encountered an yet unknown instruction or | 478 | * Pheeee... We encountered an yet unknown instruction or |
diff --git a/arch/mips/kernel/vdso.c b/arch/mips/kernel/vdso.c new file mode 100644 index 000000000000..b773c1112b14 --- /dev/null +++ b/arch/mips/kernel/vdso.c | |||
@@ -0,0 +1,112 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 2009, 2010 Cavium Networks, Inc. | ||
7 | */ | ||
8 | |||
9 | |||
10 | #include <linux/kernel.h> | ||
11 | #include <linux/err.h> | ||
12 | #include <linux/sched.h> | ||
13 | #include <linux/mm.h> | ||
14 | #include <linux/init.h> | ||
15 | #include <linux/binfmts.h> | ||
16 | #include <linux/elf.h> | ||
17 | #include <linux/vmalloc.h> | ||
18 | #include <linux/unistd.h> | ||
19 | |||
20 | #include <asm/vdso.h> | ||
21 | #include <asm/uasm.h> | ||
22 | |||
23 | /* | ||
24 | * Including <asm/unistd.h> would give use the 64-bit syscall numbers ... | ||
25 | */ | ||
26 | #define __NR_O32_sigreturn 4119 | ||
27 | #define __NR_O32_rt_sigreturn 4193 | ||
28 | #define __NR_N32_rt_sigreturn 6211 | ||
29 | |||
30 | static struct page *vdso_page; | ||
31 | |||
32 | static void __init install_trampoline(u32 *tramp, unsigned int sigreturn) | ||
33 | { | ||
34 | uasm_i_addiu(&tramp, 2, 0, sigreturn); /* li v0, sigreturn */ | ||
35 | uasm_i_syscall(&tramp, 0); | ||
36 | } | ||
37 | |||
38 | static int __init init_vdso(void) | ||
39 | { | ||
40 | struct mips_vdso *vdso; | ||
41 | |||
42 | vdso_page = alloc_page(GFP_KERNEL); | ||
43 | if (!vdso_page) | ||
44 | panic("Cannot allocate vdso"); | ||
45 | |||
46 | vdso = vmap(&vdso_page, 1, 0, PAGE_KERNEL); | ||
47 | if (!vdso) | ||
48 | panic("Cannot map vdso"); | ||
49 | clear_page(vdso); | ||
50 | |||
51 | install_trampoline(vdso->rt_signal_trampoline, __NR_rt_sigreturn); | ||
52 | #ifdef CONFIG_32BIT | ||
53 | install_trampoline(vdso->signal_trampoline, __NR_sigreturn); | ||
54 | #else | ||
55 | install_trampoline(vdso->n32_rt_signal_trampoline, | ||
56 | __NR_N32_rt_sigreturn); | ||
57 | install_trampoline(vdso->o32_signal_trampoline, __NR_O32_sigreturn); | ||
58 | install_trampoline(vdso->o32_rt_signal_trampoline, | ||
59 | __NR_O32_rt_sigreturn); | ||
60 | #endif | ||
61 | |||
62 | vunmap(vdso); | ||
63 | |||
64 | pr_notice("init_vdso successfull\n"); | ||
65 | |||
66 | return 0; | ||
67 | } | ||
68 | device_initcall(init_vdso); | ||
69 | |||
70 | static unsigned long vdso_addr(unsigned long start) | ||
71 | { | ||
72 | return STACK_TOP; | ||
73 | } | ||
74 | |||
75 | int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) | ||
76 | { | ||
77 | int ret; | ||
78 | unsigned long addr; | ||
79 | struct mm_struct *mm = current->mm; | ||
80 | |||
81 | down_write(&mm->mmap_sem); | ||
82 | |||
83 | addr = vdso_addr(mm->start_stack); | ||
84 | |||
85 | addr = get_unmapped_area(NULL, addr, PAGE_SIZE, 0, 0); | ||
86 | if (IS_ERR_VALUE(addr)) { | ||
87 | ret = addr; | ||
88 | goto up_fail; | ||
89 | } | ||
90 | |||
91 | ret = install_special_mapping(mm, addr, PAGE_SIZE, | ||
92 | VM_READ|VM_EXEC| | ||
93 | VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC| | ||
94 | VM_ALWAYSDUMP, | ||
95 | &vdso_page); | ||
96 | |||
97 | if (ret) | ||
98 | goto up_fail; | ||
99 | |||
100 | mm->context.vdso = (void *)addr; | ||
101 | |||
102 | up_fail: | ||
103 | up_write(&mm->mmap_sem); | ||
104 | return ret; | ||
105 | } | ||
106 | |||
107 | const char *arch_vma_name(struct vm_area_struct *vma) | ||
108 | { | ||
109 | if (vma->vm_mm && vma->vm_start == (long)vma->vm_mm->context.vdso) | ||
110 | return "[vdso]"; | ||
111 | return NULL; | ||
112 | } | ||
diff --git a/arch/mips/kernel/vmlinux.lds.S b/arch/mips/kernel/vmlinux.lds.S index 162b29954baa..f25df73db923 100644 --- a/arch/mips/kernel/vmlinux.lds.S +++ b/arch/mips/kernel/vmlinux.lds.S | |||
@@ -46,6 +46,7 @@ SECTIONS | |||
46 | SCHED_TEXT | 46 | SCHED_TEXT |
47 | LOCK_TEXT | 47 | LOCK_TEXT |
48 | KPROBES_TEXT | 48 | KPROBES_TEXT |
49 | IRQENTRY_TEXT | ||
49 | *(.text.*) | 50 | *(.text.*) |
50 | *(.fixup) | 51 | *(.fixup) |
51 | *(.gnu.warning) | 52 | *(.gnu.warning) |
diff --git a/arch/mips/kernel/vpe.c b/arch/mips/kernel/vpe.c index 60477529362e..2bd2151c586a 100644 --- a/arch/mips/kernel/vpe.c +++ b/arch/mips/kernel/vpe.c | |||
@@ -38,7 +38,6 @@ | |||
38 | #include <linux/vmalloc.h> | 38 | #include <linux/vmalloc.h> |
39 | #include <linux/elf.h> | 39 | #include <linux/elf.h> |
40 | #include <linux/seq_file.h> | 40 | #include <linux/seq_file.h> |
41 | #include <linux/smp_lock.h> | ||
42 | #include <linux/syscalls.h> | 41 | #include <linux/syscalls.h> |
43 | #include <linux/moduleloader.h> | 42 | #include <linux/moduleloader.h> |
44 | #include <linux/interrupt.h> | 43 | #include <linux/interrupt.h> |
diff --git a/arch/mips/lasat/picvue.h b/arch/mips/lasat/picvue.h index 91df55371127..2f0757738fdb 100644 --- a/arch/mips/lasat/picvue.h +++ b/arch/mips/lasat/picvue.h | |||
@@ -42,4 +42,3 @@ void pvc_move(u8 cmd); | |||
42 | 42 | ||
43 | void pvc_clear(void); | 43 | void pvc_clear(void); |
44 | void pvc_home(void); | 44 | void pvc_home(void); |
45 | |||
diff --git a/arch/mips/lasat/picvue_proc.c b/arch/mips/lasat/picvue_proc.c index 0bb6037afba3..8e388da1926f 100644 --- a/arch/mips/lasat/picvue_proc.c +++ b/arch/mips/lasat/picvue_proc.c | |||
@@ -4,12 +4,14 @@ | |||
4 | * Brian Murphy <brian.murphy@eicon.com> | 4 | * Brian Murphy <brian.murphy@eicon.com> |
5 | * | 5 | * |
6 | */ | 6 | */ |
7 | #include <linux/bug.h> | ||
7 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
8 | #include <linux/module.h> | 9 | #include <linux/module.h> |
9 | #include <linux/init.h> | 10 | #include <linux/init.h> |
10 | #include <linux/errno.h> | 11 | #include <linux/errno.h> |
11 | 12 | ||
12 | #include <linux/proc_fs.h> | 13 | #include <linux/proc_fs.h> |
14 | #include <linux/seq_file.h> | ||
13 | #include <linux/interrupt.h> | 15 | #include <linux/interrupt.h> |
14 | 16 | ||
15 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
@@ -38,12 +40,9 @@ static void pvc_display(unsigned long data) | |||
38 | 40 | ||
39 | static DECLARE_TASKLET(pvc_display_tasklet, &pvc_display, 0); | 41 | static DECLARE_TASKLET(pvc_display_tasklet, &pvc_display, 0); |
40 | 42 | ||
41 | static int pvc_proc_read_line(char *page, char **start, | 43 | static int pvc_line_proc_show(struct seq_file *m, void *v) |
42 | off_t off, int count, | ||
43 | int *eof, void *data) | ||
44 | { | 44 | { |
45 | char *origpage = page; | 45 | int lineno = *(int *)m->private; |
46 | int lineno = *(int *)data; | ||
47 | 46 | ||
48 | if (lineno < 0 || lineno > PVC_NLINES) { | 47 | if (lineno < 0 || lineno > PVC_NLINES) { |
49 | printk(KERN_WARNING "proc_read_line: invalid lineno %d\n", lineno); | 48 | printk(KERN_WARNING "proc_read_line: invalid lineno %d\n", lineno); |
@@ -51,45 +50,66 @@ static int pvc_proc_read_line(char *page, char **start, | |||
51 | } | 50 | } |
52 | 51 | ||
53 | mutex_lock(&pvc_mutex); | 52 | mutex_lock(&pvc_mutex); |
54 | page += sprintf(page, "%s\n", pvc_lines[lineno]); | 53 | seq_printf(m, "%s\n", pvc_lines[lineno]); |
55 | mutex_unlock(&pvc_mutex); | 54 | mutex_unlock(&pvc_mutex); |
56 | 55 | ||
57 | return page - origpage; | 56 | return 0; |
58 | } | 57 | } |
59 | 58 | ||
60 | static int pvc_proc_write_line(struct file *file, const char *buffer, | 59 | static int pvc_line_proc_open(struct inode *inode, struct file *file) |
61 | unsigned long count, void *data) | ||
62 | { | 60 | { |
63 | int origcount = count; | 61 | return single_open(file, pvc_line_proc_show, PDE(inode)->data); |
64 | int lineno = *(int *)data; | 62 | } |
65 | 63 | ||
66 | if (lineno < 0 || lineno > PVC_NLINES) { | 64 | static ssize_t pvc_line_proc_write(struct file *file, const char __user *buf, |
67 | printk(KERN_WARNING "proc_write_line: invalid lineno %d\n", | 65 | size_t count, loff_t *pos) |
68 | lineno); | 66 | { |
69 | return origcount; | 67 | int lineno = *(int *)PDE(file->f_path.dentry->d_inode)->data; |
70 | } | 68 | char kbuf[PVC_LINELEN]; |
69 | size_t len; | ||
70 | |||
71 | BUG_ON(lineno < 0 || lineno > PVC_NLINES); | ||
71 | 72 | ||
72 | if (count > PVC_LINELEN) | 73 | len = min(count, sizeof(kbuf) - 1); |
73 | count = PVC_LINELEN; | 74 | if (copy_from_user(kbuf, buf, len)) |
75 | return -EFAULT; | ||
76 | kbuf[len] = '\0'; | ||
74 | 77 | ||
75 | if (buffer[count-1] == '\n') | 78 | if (len > 0 && kbuf[len - 1] == '\n') |
76 | count--; | 79 | len--; |
77 | 80 | ||
78 | mutex_lock(&pvc_mutex); | 81 | mutex_lock(&pvc_mutex); |
79 | strncpy(pvc_lines[lineno], buffer, count); | 82 | strncpy(pvc_lines[lineno], kbuf, len); |
80 | pvc_lines[lineno][count] = '\0'; | 83 | pvc_lines[lineno][len] = '\0'; |
81 | mutex_unlock(&pvc_mutex); | 84 | mutex_unlock(&pvc_mutex); |
82 | 85 | ||
83 | tasklet_schedule(&pvc_display_tasklet); | 86 | tasklet_schedule(&pvc_display_tasklet); |
84 | 87 | ||
85 | return origcount; | 88 | return count; |
86 | } | 89 | } |
87 | 90 | ||
88 | static int pvc_proc_write_scroll(struct file *file, const char *buffer, | 91 | static const struct file_operations pvc_line_proc_fops = { |
89 | unsigned long count, void *data) | 92 | .owner = THIS_MODULE, |
93 | .open = pvc_line_proc_open, | ||
94 | .read = seq_read, | ||
95 | .llseek = seq_lseek, | ||
96 | .release = single_release, | ||
97 | .write = pvc_line_proc_write, | ||
98 | }; | ||
99 | |||
100 | static ssize_t pvc_scroll_proc_write(struct file *file, const char __user *buf, | ||
101 | size_t count, loff_t *pos) | ||
90 | { | 102 | { |
91 | int origcount = count; | 103 | char kbuf[42]; |
92 | int cmd = simple_strtol(buffer, NULL, 10); | 104 | size_t len; |
105 | int cmd; | ||
106 | |||
107 | len = min(count, sizeof(kbuf) - 1); | ||
108 | if (copy_from_user(kbuf, buf, len)) | ||
109 | return -EFAULT; | ||
110 | kbuf[len] = '\0'; | ||
111 | |||
112 | cmd = simple_strtol(kbuf, NULL, 10); | ||
93 | 113 | ||
94 | mutex_lock(&pvc_mutex); | 114 | mutex_lock(&pvc_mutex); |
95 | if (scroll_interval != 0) | 115 | if (scroll_interval != 0) |
@@ -110,22 +130,31 @@ static int pvc_proc_write_scroll(struct file *file, const char *buffer, | |||
110 | } | 130 | } |
111 | mutex_unlock(&pvc_mutex); | 131 | mutex_unlock(&pvc_mutex); |
112 | 132 | ||
113 | return origcount; | 133 | return count; |
114 | } | 134 | } |
115 | 135 | ||
116 | static int pvc_proc_read_scroll(char *page, char **start, | 136 | static int pvc_scroll_proc_show(struct seq_file *m, void *v) |
117 | off_t off, int count, | ||
118 | int *eof, void *data) | ||
119 | { | 137 | { |
120 | char *origpage = page; | ||
121 | |||
122 | mutex_lock(&pvc_mutex); | 138 | mutex_lock(&pvc_mutex); |
123 | page += sprintf(page, "%d\n", scroll_dir * scroll_interval); | 139 | seq_printf(m, "%d\n", scroll_dir * scroll_interval); |
124 | mutex_unlock(&pvc_mutex); | 140 | mutex_unlock(&pvc_mutex); |
125 | 141 | ||
126 | return page - origpage; | 142 | return 0; |
127 | } | 143 | } |
128 | 144 | ||
145 | static int pvc_scroll_proc_open(struct inode *inode, struct file *file) | ||
146 | { | ||
147 | return single_open(file, pvc_scroll_proc_show, NULL); | ||
148 | } | ||
149 | |||
150 | static const struct file_operations pvc_scroll_proc_fops = { | ||
151 | .owner = THIS_MODULE, | ||
152 | .open = pvc_scroll_proc_open, | ||
153 | .read = seq_read, | ||
154 | .llseek = seq_lseek, | ||
155 | .release = single_release, | ||
156 | .write = pvc_scroll_proc_write, | ||
157 | }; | ||
129 | 158 | ||
130 | void pvc_proc_timerfunc(unsigned long data) | 159 | void pvc_proc_timerfunc(unsigned long data) |
131 | { | 160 | { |
@@ -163,22 +192,16 @@ static int __init pvc_proc_init(void) | |||
163 | pvc_linedata[i] = i; | 192 | pvc_linedata[i] = i; |
164 | } | 193 | } |
165 | for (i = 0; i < PVC_NLINES; i++) { | 194 | for (i = 0; i < PVC_NLINES; i++) { |
166 | proc_entry = create_proc_entry(pvc_linename[i], 0644, | 195 | proc_entry = proc_create_data(pvc_linename[i], 0644, pvc_display_dir, |
167 | pvc_display_dir); | 196 | &pvc_line_proc_fops, &pvc_linedata[i]); |
168 | if (proc_entry == NULL) | 197 | if (proc_entry == NULL) |
169 | goto error; | 198 | goto error; |
170 | |||
171 | proc_entry->read_proc = pvc_proc_read_line; | ||
172 | proc_entry->write_proc = pvc_proc_write_line; | ||
173 | proc_entry->data = &pvc_linedata[i]; | ||
174 | } | 199 | } |
175 | proc_entry = create_proc_entry("scroll", 0644, pvc_display_dir); | 200 | proc_entry = proc_create("scroll", 0644, pvc_display_dir, |
201 | &pvc_scroll_proc_fops); | ||
176 | if (proc_entry == NULL) | 202 | if (proc_entry == NULL) |
177 | goto error; | 203 | goto error; |
178 | 204 | ||
179 | proc_entry->write_proc = pvc_proc_write_scroll; | ||
180 | proc_entry->read_proc = pvc_proc_read_scroll; | ||
181 | |||
182 | init_timer(&timer); | 205 | init_timer(&timer); |
183 | timer.function = pvc_proc_timerfunc; | 206 | timer.function = pvc_proc_timerfunc; |
184 | 207 | ||
diff --git a/arch/mips/lasat/prom.c b/arch/mips/lasat/prom.c index 6acc6cb85f0a..20fde19a5fbf 100644 --- a/arch/mips/lasat/prom.c +++ b/arch/mips/lasat/prom.c | |||
@@ -100,8 +100,8 @@ void __init prom_init(void) | |||
100 | 100 | ||
101 | /* Get the command line */ | 101 | /* Get the command line */ |
102 | if (argc > 0) { | 102 | if (argc > 0) { |
103 | strncpy(arcs_cmdline, argv[0], CL_SIZE-1); | 103 | strncpy(arcs_cmdline, argv[0], COMMAND_LINE_SIZE-1); |
104 | arcs_cmdline[CL_SIZE-1] = '\0'; | 104 | arcs_cmdline[COMMAND_LINE_SIZE-1] = '\0'; |
105 | } | 105 | } |
106 | 106 | ||
107 | /* Set the I/O base address */ | 107 | /* Set the I/O base address */ |
diff --git a/arch/mips/lasat/sysctl.c b/arch/mips/lasat/sysctl.c index b3deed8db619..d87ffd04cb0a 100644 --- a/arch/mips/lasat/sysctl.c +++ b/arch/mips/lasat/sysctl.c | |||
@@ -37,23 +37,6 @@ | |||
37 | #include "ds1603.h" | 37 | #include "ds1603.h" |
38 | #endif | 38 | #endif |
39 | 39 | ||
40 | /* Strategy function to write EEPROM after changing string entry */ | ||
41 | int sysctl_lasatstring(ctl_table *table, | ||
42 | void *oldval, size_t *oldlenp, | ||
43 | void *newval, size_t newlen) | ||
44 | { | ||
45 | int r; | ||
46 | |||
47 | r = sysctl_string(table, oldval, oldlenp, newval, newlen); | ||
48 | if (r < 0) | ||
49 | return r; | ||
50 | |||
51 | if (newval && newlen) | ||
52 | lasat_write_eeprom_info(); | ||
53 | |||
54 | return 0; | ||
55 | } | ||
56 | |||
57 | 40 | ||
58 | /* And the same for proc */ | 41 | /* And the same for proc */ |
59 | int proc_dolasatstring(ctl_table *table, int write, | 42 | int proc_dolasatstring(ctl_table *table, int write, |
@@ -113,46 +96,6 @@ int proc_dolasatrtc(ctl_table *table, int write, | |||
113 | } | 96 | } |
114 | #endif | 97 | #endif |
115 | 98 | ||
116 | /* Sysctl for setting the IP addresses */ | ||
117 | int sysctl_lasat_intvec(ctl_table *table, | ||
118 | void *oldval, size_t *oldlenp, | ||
119 | void *newval, size_t newlen) | ||
120 | { | ||
121 | int r; | ||
122 | |||
123 | r = sysctl_intvec(table, oldval, oldlenp, newval, newlen); | ||
124 | if (r < 0) | ||
125 | return r; | ||
126 | |||
127 | if (newval && newlen) | ||
128 | lasat_write_eeprom_info(); | ||
129 | |||
130 | return 0; | ||
131 | } | ||
132 | |||
133 | #ifdef CONFIG_DS1603 | ||
134 | /* Same for RTC */ | ||
135 | int sysctl_lasat_rtc(ctl_table *table, | ||
136 | void *oldval, size_t *oldlenp, | ||
137 | void *newval, size_t newlen) | ||
138 | { | ||
139 | struct timespec ts; | ||
140 | int r; | ||
141 | |||
142 | read_persistent_clock(&ts); | ||
143 | rtctmp = ts.tv_sec; | ||
144 | if (rtctmp < 0) | ||
145 | rtctmp = 0; | ||
146 | r = sysctl_intvec(table, oldval, oldlenp, newval, newlen); | ||
147 | if (r < 0) | ||
148 | return r; | ||
149 | if (newval && newlen) | ||
150 | rtc_mips_set_mmss(rtctmp); | ||
151 | |||
152 | return r; | ||
153 | } | ||
154 | #endif | ||
155 | |||
156 | #ifdef CONFIG_INET | 99 | #ifdef CONFIG_INET |
157 | int proc_lasat_ip(ctl_table *table, int write, | 100 | int proc_lasat_ip(ctl_table *table, int write, |
158 | void *buffer, size_t *lenp, loff_t *ppos) | 101 | void *buffer, size_t *lenp, loff_t *ppos) |
@@ -214,23 +157,6 @@ int proc_lasat_ip(ctl_table *table, int write, | |||
214 | } | 157 | } |
215 | #endif | 158 | #endif |
216 | 159 | ||
217 | static int sysctl_lasat_prid(ctl_table *table, | ||
218 | void *oldval, size_t *oldlenp, | ||
219 | void *newval, size_t newlen) | ||
220 | { | ||
221 | int r; | ||
222 | |||
223 | r = sysctl_intvec(table, oldval, oldlenp, newval, newlen); | ||
224 | if (r < 0) | ||
225 | return r; | ||
226 | if (newval && newlen) { | ||
227 | lasat_board_info.li_eeprom_info.prid = *(int *)newval; | ||
228 | lasat_write_eeprom_info(); | ||
229 | lasat_init_board_info(); | ||
230 | } | ||
231 | return 0; | ||
232 | } | ||
233 | |||
234 | int proc_lasat_prid(ctl_table *table, int write, | 160 | int proc_lasat_prid(ctl_table *table, int write, |
235 | void *buffer, size_t *lenp, loff_t *ppos) | 161 | void *buffer, size_t *lenp, loff_t *ppos) |
236 | { | 162 | { |
@@ -252,115 +178,92 @@ extern int lasat_boot_to_service; | |||
252 | 178 | ||
253 | static ctl_table lasat_table[] = { | 179 | static ctl_table lasat_table[] = { |
254 | { | 180 | { |
255 | .ctl_name = CTL_UNNUMBERED, | ||
256 | .procname = "cpu-hz", | 181 | .procname = "cpu-hz", |
257 | .data = &lasat_board_info.li_cpu_hz, | 182 | .data = &lasat_board_info.li_cpu_hz, |
258 | .maxlen = sizeof(int), | 183 | .maxlen = sizeof(int), |
259 | .mode = 0444, | 184 | .mode = 0444, |
260 | .proc_handler = &proc_dointvec, | 185 | .proc_handler = proc_dointvec, |
261 | .strategy = &sysctl_intvec | ||
262 | }, | 186 | }, |
263 | { | 187 | { |
264 | .ctl_name = CTL_UNNUMBERED, | ||
265 | .procname = "bus-hz", | 188 | .procname = "bus-hz", |
266 | .data = &lasat_board_info.li_bus_hz, | 189 | .data = &lasat_board_info.li_bus_hz, |
267 | .maxlen = sizeof(int), | 190 | .maxlen = sizeof(int), |
268 | .mode = 0444, | 191 | .mode = 0444, |
269 | .proc_handler = &proc_dointvec, | 192 | .proc_handler = proc_dointvec, |
270 | .strategy = &sysctl_intvec | ||
271 | }, | 193 | }, |
272 | { | 194 | { |
273 | .ctl_name = CTL_UNNUMBERED, | ||
274 | .procname = "bmid", | 195 | .procname = "bmid", |
275 | .data = &lasat_board_info.li_bmid, | 196 | .data = &lasat_board_info.li_bmid, |
276 | .maxlen = sizeof(int), | 197 | .maxlen = sizeof(int), |
277 | .mode = 0444, | 198 | .mode = 0444, |
278 | .proc_handler = &proc_dointvec, | 199 | .proc_handler = proc_dointvec, |
279 | .strategy = &sysctl_intvec | ||
280 | }, | 200 | }, |
281 | { | 201 | { |
282 | .ctl_name = CTL_UNNUMBERED, | ||
283 | .procname = "prid", | 202 | .procname = "prid", |
284 | .data = &lasat_board_info.li_prid, | 203 | .data = &lasat_board_info.li_prid, |
285 | .maxlen = sizeof(int), | 204 | .maxlen = sizeof(int), |
286 | .mode = 0644, | 205 | .mode = 0644, |
287 | .proc_handler = &proc_lasat_prid, | 206 | .proc_handler = proc_lasat_prid, |
288 | .strategy = &sysctl_lasat_prid | ||
289 | }, | 207 | }, |
290 | #ifdef CONFIG_INET | 208 | #ifdef CONFIG_INET |
291 | { | 209 | { |
292 | .ctl_name = CTL_UNNUMBERED, | ||
293 | .procname = "ipaddr", | 210 | .procname = "ipaddr", |
294 | .data = &lasat_board_info.li_eeprom_info.ipaddr, | 211 | .data = &lasat_board_info.li_eeprom_info.ipaddr, |
295 | .maxlen = sizeof(int), | 212 | .maxlen = sizeof(int), |
296 | .mode = 0644, | 213 | .mode = 0644, |
297 | .proc_handler = &proc_lasat_ip, | 214 | .proc_handler = proc_lasat_ip, |
298 | .strategy = &sysctl_lasat_intvec | ||
299 | }, | 215 | }, |
300 | { | 216 | { |
301 | .ctl_name = CTL_UNNUMBERED, | ||
302 | .procname = "netmask", | 217 | .procname = "netmask", |
303 | .data = &lasat_board_info.li_eeprom_info.netmask, | 218 | .data = &lasat_board_info.li_eeprom_info.netmask, |
304 | .maxlen = sizeof(int), | 219 | .maxlen = sizeof(int), |
305 | .mode = 0644, | 220 | .mode = 0644, |
306 | .proc_handler = &proc_lasat_ip, | 221 | .proc_handler = proc_lasat_ip, |
307 | .strategy = &sysctl_lasat_intvec | ||
308 | }, | 222 | }, |
309 | #endif | 223 | #endif |
310 | { | 224 | { |
311 | .ctl_name = CTL_UNNUMBERED, | ||
312 | .procname = "passwd_hash", | 225 | .procname = "passwd_hash", |
313 | .data = &lasat_board_info.li_eeprom_info.passwd_hash, | 226 | .data = &lasat_board_info.li_eeprom_info.passwd_hash, |
314 | .maxlen = | 227 | .maxlen = |
315 | sizeof(lasat_board_info.li_eeprom_info.passwd_hash), | 228 | sizeof(lasat_board_info.li_eeprom_info.passwd_hash), |
316 | .mode = 0600, | 229 | .mode = 0600, |
317 | .proc_handler = &proc_dolasatstring, | 230 | .proc_handler = proc_dolasatstring, |
318 | .strategy = &sysctl_lasatstring | ||
319 | }, | 231 | }, |
320 | { | 232 | { |
321 | .ctl_name = CTL_UNNUMBERED, | ||
322 | .procname = "boot-service", | 233 | .procname = "boot-service", |
323 | .data = &lasat_boot_to_service, | 234 | .data = &lasat_boot_to_service, |
324 | .maxlen = sizeof(int), | 235 | .maxlen = sizeof(int), |
325 | .mode = 0644, | 236 | .mode = 0644, |
326 | .proc_handler = &proc_dointvec, | 237 | .proc_handler = proc_dointvec, |
327 | .strategy = &sysctl_intvec | ||
328 | }, | 238 | }, |
329 | #ifdef CONFIG_DS1603 | 239 | #ifdef CONFIG_DS1603 |
330 | { | 240 | { |
331 | .ctl_name = CTL_UNNUMBERED, | ||
332 | .procname = "rtc", | 241 | .procname = "rtc", |
333 | .data = &rtctmp, | 242 | .data = &rtctmp, |
334 | .maxlen = sizeof(int), | 243 | .maxlen = sizeof(int), |
335 | .mode = 0644, | 244 | .mode = 0644, |
336 | .proc_handler = &proc_dolasatrtc, | 245 | .proc_handler = proc_dolasatrtc, |
337 | .strategy = &sysctl_lasat_rtc | ||
338 | }, | 246 | }, |
339 | #endif | 247 | #endif |
340 | { | 248 | { |
341 | .ctl_name = CTL_UNNUMBERED, | ||
342 | .procname = "namestr", | 249 | .procname = "namestr", |
343 | .data = &lasat_board_info.li_namestr, | 250 | .data = &lasat_board_info.li_namestr, |
344 | .maxlen = sizeof(lasat_board_info.li_namestr), | 251 | .maxlen = sizeof(lasat_board_info.li_namestr), |
345 | .mode = 0444, | 252 | .mode = 0444, |
346 | .proc_handler = &proc_dostring, | 253 | .proc_handler = proc_dostring, |
347 | .strategy = &sysctl_string | ||
348 | }, | 254 | }, |
349 | { | 255 | { |
350 | .ctl_name = CTL_UNNUMBERED, | ||
351 | .procname = "typestr", | 256 | .procname = "typestr", |
352 | .data = &lasat_board_info.li_typestr, | 257 | .data = &lasat_board_info.li_typestr, |
353 | .maxlen = sizeof(lasat_board_info.li_typestr), | 258 | .maxlen = sizeof(lasat_board_info.li_typestr), |
354 | .mode = 0444, | 259 | .mode = 0444, |
355 | .proc_handler = &proc_dostring, | 260 | .proc_handler = proc_dostring, |
356 | .strategy = &sysctl_string | ||
357 | }, | 261 | }, |
358 | {} | 262 | {} |
359 | }; | 263 | }; |
360 | 264 | ||
361 | static ctl_table lasat_root_table[] = { | 265 | static ctl_table lasat_root_table[] = { |
362 | { | 266 | { |
363 | .ctl_name = CTL_UNNUMBERED, | ||
364 | .procname = "lasat", | 267 | .procname = "lasat", |
365 | .mode = 0555, | 268 | .mode = 0555, |
366 | .child = lasat_table | 269 | .child = lasat_table |
diff --git a/arch/mips/lib/delay.c b/arch/mips/lib/delay.c index 6b3b1de9dcae..5995969e8c42 100644 --- a/arch/mips/lib/delay.c +++ b/arch/mips/lib/delay.c | |||
@@ -41,7 +41,7 @@ EXPORT_SYMBOL(__delay); | |||
41 | 41 | ||
42 | void __udelay(unsigned long us) | 42 | void __udelay(unsigned long us) |
43 | { | 43 | { |
44 | unsigned int lpj = current_cpu_data.udelay_val; | 44 | unsigned int lpj = raw_current_cpu_data.udelay_val; |
45 | 45 | ||
46 | __delay((us * 0x000010c7ull * HZ * lpj) >> 32); | 46 | __delay((us * 0x000010c7ull * HZ * lpj) >> 32); |
47 | } | 47 | } |
@@ -49,7 +49,7 @@ EXPORT_SYMBOL(__udelay); | |||
49 | 49 | ||
50 | void __ndelay(unsigned long ns) | 50 | void __ndelay(unsigned long ns) |
51 | { | 51 | { |
52 | unsigned int lpj = current_cpu_data.udelay_val; | 52 | unsigned int lpj = raw_current_cpu_data.udelay_val; |
53 | 53 | ||
54 | __delay((ns * 0x00000005ull * HZ * lpj) >> 32); | 54 | __delay((ns * 0x00000005ull * HZ * lpj) >> 32); |
55 | } | 55 | } |
diff --git a/arch/mips/lib/libgcc.h b/arch/mips/lib/libgcc.h index 3f19d1c5d942..05909d58e2fe 100644 --- a/arch/mips/lib/libgcc.h +++ b/arch/mips/lib/libgcc.h | |||
@@ -17,8 +17,7 @@ struct DWstruct { | |||
17 | #error I feel sick. | 17 | #error I feel sick. |
18 | #endif | 18 | #endif |
19 | 19 | ||
20 | typedef union | 20 | typedef union { |
21 | { | ||
22 | struct DWstruct s; | 21 | struct DWstruct s; |
23 | long long ll; | 22 | long long ll; |
24 | } DWunion; | 23 | } DWunion; |
diff --git a/arch/mips/loongson/Kconfig b/arch/mips/loongson/Kconfig index d45092505fa1..3df1967dea08 100644 --- a/arch/mips/loongson/Kconfig +++ b/arch/mips/loongson/Kconfig | |||
@@ -1,31 +1,85 @@ | |||
1 | choice | 1 | choice |
2 | prompt "Machine Type" | 2 | prompt "Machine Type" |
3 | depends on MACH_LOONGSON | 3 | depends on MACH_LOONGSON |
4 | 4 | ||
5 | config LEMOTE_FULOONG2E | 5 | config LEMOTE_FULOONG2E |
6 | bool "Lemote Fuloong(2e) mini-PC" | 6 | bool "Lemote Fuloong(2e) mini-PC" |
7 | select ARCH_SPARSEMEM_ENABLE | 7 | select ARCH_SPARSEMEM_ENABLE |
8 | select CEVT_R4K | 8 | select CEVT_R4K |
9 | select CSRC_R4K | 9 | select CSRC_R4K |
10 | select SYS_HAS_CPU_LOONGSON2E | 10 | select SYS_HAS_CPU_LOONGSON2E |
11 | select DMA_NONCOHERENT | 11 | select DMA_NONCOHERENT |
12 | select BOOT_ELF32 | 12 | select BOOT_ELF32 |
13 | select BOARD_SCACHE | 13 | select BOARD_SCACHE |
14 | select HW_HAS_PCI | 14 | select HW_HAS_PCI |
15 | select I8259 | 15 | select I8259 |
16 | select ISA | 16 | select ISA |
17 | select IRQ_CPU | 17 | select IRQ_CPU |
18 | select SYS_SUPPORTS_32BIT_KERNEL | 18 | select SYS_SUPPORTS_32BIT_KERNEL |
19 | select SYS_SUPPORTS_64BIT_KERNEL | 19 | select SYS_SUPPORTS_64BIT_KERNEL |
20 | select SYS_SUPPORTS_LITTLE_ENDIAN | 20 | select SYS_SUPPORTS_LITTLE_ENDIAN |
21 | select SYS_SUPPORTS_HIGHMEM | 21 | select SYS_SUPPORTS_HIGHMEM |
22 | select SYS_HAS_EARLY_PRINTK | 22 | select SYS_HAS_EARLY_PRINTK |
23 | select GENERIC_HARDIRQS_NO__DO_IRQ | 23 | select GENERIC_HARDIRQS_NO__DO_IRQ |
24 | select GENERIC_ISA_DMA_SUPPORT_BROKEN | 24 | select GENERIC_ISA_DMA_SUPPORT_BROKEN |
25 | select CPU_HAS_WB | 25 | select CPU_HAS_WB |
26 | help | 26 | help |
27 | Lemote Fuloong(2e) mini-PC board based on the Chinese Loongson-2E CPU and | 27 | Lemote Fuloong(2e) mini-PC board based on the Chinese Loongson-2E CPU and |
28 | an FPGA northbridge | 28 | an FPGA northbridge |
29 | 29 | ||
30 | Lemote Fuloong(2e) mini PC have a VIA686B south bridge. | 30 | Lemote Fuloong(2e) mini PC have a VIA686B south bridge. |
31 | |||
32 | config LEMOTE_MACH2F | ||
33 | bool "Lemote Loongson 2F family machines" | ||
34 | select ARCH_SPARSEMEM_ENABLE | ||
35 | select BOARD_SCACHE | ||
36 | select BOOT_ELF32 | ||
37 | select CEVT_R4K if ! MIPS_EXTERNAL_TIMER | ||
38 | select CPU_HAS_WB | ||
39 | select CS5536 | ||
40 | select CSRC_R4K if ! MIPS_EXTERNAL_TIMER | ||
41 | select DMA_NONCOHERENT | ||
42 | select GENERIC_HARDIRQS_NO__DO_IRQ | ||
43 | select GENERIC_ISA_DMA_SUPPORT_BROKEN | ||
44 | select HW_HAS_PCI | ||
45 | select I8259 | ||
46 | select IRQ_CPU | ||
47 | select ISA | ||
48 | select SYS_HAS_CPU_LOONGSON2F | ||
49 | select SYS_HAS_EARLY_PRINTK | ||
50 | select SYS_SUPPORTS_32BIT_KERNEL | ||
51 | select SYS_SUPPORTS_64BIT_KERNEL | ||
52 | select SYS_SUPPORTS_HIGHMEM | ||
53 | select SYS_SUPPORTS_LITTLE_ENDIAN | ||
54 | help | ||
55 | Lemote Loongson 2F family machines utilize the 2F revision of | ||
56 | Loongson processor and the AMD CS5536 south bridge. | ||
57 | |||
58 | These family machines include fuloong2f mini PC, yeeloong2f notebook, | ||
59 | LingLoong allinone PC and so forth. | ||
31 | endchoice | 60 | endchoice |
61 | |||
62 | config CS5536 | ||
63 | bool | ||
64 | |||
65 | config CS5536_MFGPT | ||
66 | bool "CS5536 MFGPT Timer" | ||
67 | depends on CS5536 | ||
68 | select MIPS_EXTERNAL_TIMER | ||
69 | help | ||
70 | This option enables the mfgpt0 timer of AMD CS5536. | ||
71 | |||
72 | If you want to enable the Loongson2 CPUFreq Driver, Please enable | ||
73 | this option at first, otherwise, You will get wrong system time. | ||
74 | |||
75 | If unsure, say Yes. | ||
76 | |||
77 | config LOONGSON_SUSPEND | ||
78 | bool | ||
79 | default y | ||
80 | depends on CPU_SUPPORTS_CPUFREQ && SUSPEND | ||
81 | |||
82 | config LOONGSON_UART_BASE | ||
83 | bool | ||
84 | default y | ||
85 | depends on EARLY_PRINTK || SERIAL_8250 | ||
diff --git a/arch/mips/loongson/Makefile b/arch/mips/loongson/Makefile index 39048c455d7d..2b76cb0fb07d 100644 --- a/arch/mips/loongson/Makefile +++ b/arch/mips/loongson/Makefile | |||
@@ -9,3 +9,9 @@ obj-$(CONFIG_MACH_LOONGSON) += common/ | |||
9 | # | 9 | # |
10 | 10 | ||
11 | obj-$(CONFIG_LEMOTE_FULOONG2E) += fuloong-2e/ | 11 | obj-$(CONFIG_LEMOTE_FULOONG2E) += fuloong-2e/ |
12 | |||
13 | # | ||
14 | # Lemote loongson2f family machines | ||
15 | # | ||
16 | |||
17 | obj-$(CONFIG_LEMOTE_MACH2F) += lemote-2f/ | ||
diff --git a/arch/mips/loongson/common/Makefile b/arch/mips/loongson/common/Makefile index 656b3cc0a2a6..7668c4de1151 100644 --- a/arch/mips/loongson/common/Makefile +++ b/arch/mips/loongson/common/Makefile | |||
@@ -3,9 +3,23 @@ | |||
3 | # | 3 | # |
4 | 4 | ||
5 | obj-y += setup.o init.o cmdline.o env.o time.o reset.o irq.o \ | 5 | obj-y += setup.o init.o cmdline.o env.o time.o reset.o irq.o \ |
6 | pci.o bonito-irq.o mem.o machtype.o | 6 | pci.o bonito-irq.o mem.o machtype.o platform.o |
7 | 7 | ||
8 | # | 8 | # |
9 | # Early printk support | 9 | # Serial port support |
10 | # | 10 | # |
11 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o | 11 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o |
12 | obj-$(CONFIG_SERIAL_8250) += serial.o | ||
13 | obj-$(CONFIG_LOONGSON_UART_BASE) += uart_base.o | ||
14 | |||
15 | # | ||
16 | # Enable CS5536 Virtual Support Module(VSM) to virtulize the PCI configure | ||
17 | # space | ||
18 | # | ||
19 | obj-$(CONFIG_CS5536) += cs5536/ | ||
20 | |||
21 | # | ||
22 | # Suspend Support | ||
23 | # | ||
24 | |||
25 | obj-$(CONFIG_LOONGSON_SUSPEND) += pm.o | ||
diff --git a/arch/mips/loongson/common/bonito-irq.c b/arch/mips/loongson/common/bonito-irq.c index 3e31e7ad713e..2dc2a4cc632a 100644 --- a/arch/mips/loongson/common/bonito-irq.c +++ b/arch/mips/loongson/common/bonito-irq.c | |||
@@ -12,18 +12,19 @@ | |||
12 | * option) any later version. | 12 | * option) any later version. |
13 | */ | 13 | */ |
14 | #include <linux/interrupt.h> | 14 | #include <linux/interrupt.h> |
15 | #include <linux/compiler.h> | ||
15 | 16 | ||
16 | #include <loongson.h> | 17 | #include <loongson.h> |
17 | 18 | ||
18 | static inline void bonito_irq_enable(unsigned int irq) | 19 | static inline void bonito_irq_enable(unsigned int irq) |
19 | { | 20 | { |
20 | BONITO_INTENSET = (1 << (irq - BONITO_IRQ_BASE)); | 21 | LOONGSON_INTENSET = (1 << (irq - LOONGSON_IRQ_BASE)); |
21 | mmiowb(); | 22 | mmiowb(); |
22 | } | 23 | } |
23 | 24 | ||
24 | static inline void bonito_irq_disable(unsigned int irq) | 25 | static inline void bonito_irq_disable(unsigned int irq) |
25 | { | 26 | { |
26 | BONITO_INTENCLR = (1 << (irq - BONITO_IRQ_BASE)); | 27 | LOONGSON_INTENCLR = (1 << (irq - LOONGSON_IRQ_BASE)); |
27 | mmiowb(); | 28 | mmiowb(); |
28 | } | 29 | } |
29 | 30 | ||
@@ -35,7 +36,7 @@ static struct irq_chip bonito_irq_type = { | |||
35 | .unmask = bonito_irq_enable, | 36 | .unmask = bonito_irq_enable, |
36 | }; | 37 | }; |
37 | 38 | ||
38 | static struct irqaction dma_timeout_irqaction = { | 39 | static struct irqaction __maybe_unused dma_timeout_irqaction = { |
39 | .handler = no_action, | 40 | .handler = no_action, |
40 | .name = "dma_timeout", | 41 | .name = "dma_timeout", |
41 | }; | 42 | }; |
@@ -44,8 +45,10 @@ void bonito_irq_init(void) | |||
44 | { | 45 | { |
45 | u32 i; | 46 | u32 i; |
46 | 47 | ||
47 | for (i = BONITO_IRQ_BASE; i < BONITO_IRQ_BASE + 32; i++) | 48 | for (i = LOONGSON_IRQ_BASE; i < LOONGSON_IRQ_BASE + 32; i++) |
48 | set_irq_chip_and_handler(i, &bonito_irq_type, handle_level_irq); | 49 | set_irq_chip_and_handler(i, &bonito_irq_type, handle_level_irq); |
49 | 50 | ||
50 | setup_irq(BONITO_IRQ_BASE + 10, &dma_timeout_irqaction); | 51 | #ifdef CONFIG_CPU_LOONGSON2E |
52 | setup_irq(LOONGSON_IRQ_BASE + 10, &dma_timeout_irqaction); | ||
53 | #endif | ||
51 | } | 54 | } |
diff --git a/arch/mips/loongson/common/cmdline.c b/arch/mips/loongson/common/cmdline.c index 75f1b243ee4e..1a06defc4f7f 100644 --- a/arch/mips/loongson/common/cmdline.c +++ b/arch/mips/loongson/common/cmdline.c | |||
@@ -9,8 +9,8 @@ | |||
9 | * Copyright (C) 2007 Lemote Inc. & Insititute of Computing Technology | 9 | * Copyright (C) 2007 Lemote Inc. & Insititute of Computing Technology |
10 | * Author: Fuxin Zhang, zhangfx@lemote.com | 10 | * Author: Fuxin Zhang, zhangfx@lemote.com |
11 | * | 11 | * |
12 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 12 | * Copyright (C) 2009 Lemote Inc. |
13 | * Author: Wu Zhangjin, wuzj@lemote.com | 13 | * Author: Wu Zhangjin, wuzhangjin@gmail.com |
14 | * | 14 | * |
15 | * This program is free software; you can redistribute it and/or modify it | 15 | * This program is free software; you can redistribute it and/or modify it |
16 | * under the terms of the GNU General Public License as published by the | 16 | * under the terms of the GNU General Public License as published by the |
@@ -21,12 +21,11 @@ | |||
21 | 21 | ||
22 | #include <loongson.h> | 22 | #include <loongson.h> |
23 | 23 | ||
24 | int prom_argc; | ||
25 | /* pmon passes arguments in 32bit pointers */ | ||
26 | int *_prom_argv; | ||
27 | |||
28 | void __init prom_init_cmdline(void) | 24 | void __init prom_init_cmdline(void) |
29 | { | 25 | { |
26 | int prom_argc; | ||
27 | /* pmon passes arguments in 32bit pointers */ | ||
28 | int *_prom_argv; | ||
30 | int i; | 29 | int i; |
31 | long l; | 30 | long l; |
32 | 31 | ||
@@ -49,4 +48,6 @@ void __init prom_init_cmdline(void) | |||
49 | strcat(arcs_cmdline, " console=ttyS0,115200"); | 48 | strcat(arcs_cmdline, " console=ttyS0,115200"); |
50 | if ((strstr(arcs_cmdline, "root=")) == NULL) | 49 | if ((strstr(arcs_cmdline, "root=")) == NULL) |
51 | strcat(arcs_cmdline, " root=/dev/hda1"); | 50 | strcat(arcs_cmdline, " root=/dev/hda1"); |
51 | |||
52 | prom_init_machtype(); | ||
52 | } | 53 | } |
diff --git a/arch/mips/loongson/common/cs5536/Makefile b/arch/mips/loongson/common/cs5536/Makefile new file mode 100644 index 000000000000..510d4cdc2378 --- /dev/null +++ b/arch/mips/loongson/common/cs5536/Makefile | |||
@@ -0,0 +1,13 @@ | |||
1 | # | ||
2 | # Makefile for CS5536 support. | ||
3 | # | ||
4 | |||
5 | obj-$(CONFIG_CS5536) += cs5536_pci.o cs5536_ide.o cs5536_acc.o cs5536_ohci.o \ | ||
6 | cs5536_isa.o cs5536_ehci.o | ||
7 | |||
8 | # | ||
9 | # Enable cs5536 mfgpt Timer | ||
10 | # | ||
11 | obj-$(CONFIG_CS5536_MFGPT) += cs5536_mfgpt.o | ||
12 | |||
13 | EXTRA_CFLAGS += -Werror | ||
diff --git a/arch/mips/loongson/common/cs5536/cs5536_acc.c b/arch/mips/loongson/common/cs5536/cs5536_acc.c new file mode 100644 index 000000000000..b3fd5eab6548 --- /dev/null +++ b/arch/mips/loongson/common/cs5536/cs5536_acc.c | |||
@@ -0,0 +1,140 @@ | |||
1 | /* | ||
2 | * the ACC Virtual Support Module of AMD CS5536 | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote, Inc. | ||
5 | * Author : jlliu, liujl@lemote.com | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote, Inc. | ||
8 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
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 as published by the | ||
12 | * Free Software Foundation; either version 2 of the License, or (at your | ||
13 | * option) any later version. | ||
14 | */ | ||
15 | |||
16 | #include <cs5536/cs5536.h> | ||
17 | #include <cs5536/cs5536_pci.h> | ||
18 | |||
19 | void pci_acc_write_reg(int reg, u32 value) | ||
20 | { | ||
21 | u32 hi = 0, lo = value; | ||
22 | |||
23 | switch (reg) { | ||
24 | case PCI_COMMAND: | ||
25 | _rdmsr(GLIU_MSR_REG(GLIU_PAE), &hi, &lo); | ||
26 | if (value & PCI_COMMAND_MASTER) | ||
27 | lo |= (0x03 << 8); | ||
28 | else | ||
29 | lo &= ~(0x03 << 8); | ||
30 | _wrmsr(GLIU_MSR_REG(GLIU_PAE), hi, lo); | ||
31 | break; | ||
32 | case PCI_STATUS: | ||
33 | if (value & PCI_STATUS_PARITY) { | ||
34 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
35 | if (lo & SB_PARE_ERR_FLAG) { | ||
36 | lo = (lo & 0x0000ffff) | SB_PARE_ERR_FLAG; | ||
37 | _wrmsr(SB_MSR_REG(SB_ERROR), hi, lo); | ||
38 | } | ||
39 | } | ||
40 | break; | ||
41 | case PCI_BAR0_REG: | ||
42 | if (value == PCI_BAR_RANGE_MASK) { | ||
43 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
44 | lo |= SOFT_BAR_ACC_FLAG; | ||
45 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
46 | } else if (value & 0x01) { | ||
47 | value &= 0xfffffffc; | ||
48 | hi = 0xA0000000 | ((value & 0x000ff000) >> 12); | ||
49 | lo = 0x000fff80 | ((value & 0x00000fff) << 20); | ||
50 | _wrmsr(GLIU_MSR_REG(GLIU_IOD_BM1), hi, lo); | ||
51 | } | ||
52 | break; | ||
53 | case PCI_ACC_INT_REG: | ||
54 | _rdmsr(DIVIL_MSR_REG(PIC_YSEL_LOW), &hi, &lo); | ||
55 | /* disable all the usb interrupt in PIC */ | ||
56 | lo &= ~(0xf << PIC_YSEL_LOW_ACC_SHIFT); | ||
57 | if (value) /* enable all the acc interrupt in PIC */ | ||
58 | lo |= (CS5536_ACC_INTR << PIC_YSEL_LOW_ACC_SHIFT); | ||
59 | _wrmsr(DIVIL_MSR_REG(PIC_YSEL_LOW), hi, lo); | ||
60 | break; | ||
61 | default: | ||
62 | break; | ||
63 | } | ||
64 | } | ||
65 | |||
66 | u32 pci_acc_read_reg(int reg) | ||
67 | { | ||
68 | u32 hi, lo; | ||
69 | u32 conf_data = 0; | ||
70 | |||
71 | switch (reg) { | ||
72 | case PCI_VENDOR_ID: | ||
73 | conf_data = | ||
74 | CFG_PCI_VENDOR_ID(CS5536_ACC_DEVICE_ID, CS5536_VENDOR_ID); | ||
75 | break; | ||
76 | case PCI_COMMAND: | ||
77 | _rdmsr(GLIU_MSR_REG(GLIU_IOD_BM1), &hi, &lo); | ||
78 | if (((lo & 0xfff00000) || (hi & 0x000000ff)) | ||
79 | && ((hi & 0xf0000000) == 0xa0000000)) | ||
80 | conf_data |= PCI_COMMAND_IO; | ||
81 | _rdmsr(GLIU_MSR_REG(GLIU_PAE), &hi, &lo); | ||
82 | if ((lo & 0x300) == 0x300) | ||
83 | conf_data |= PCI_COMMAND_MASTER; | ||
84 | break; | ||
85 | case PCI_STATUS: | ||
86 | conf_data |= PCI_STATUS_66MHZ; | ||
87 | conf_data |= PCI_STATUS_FAST_BACK; | ||
88 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
89 | if (lo & SB_PARE_ERR_FLAG) | ||
90 | conf_data |= PCI_STATUS_PARITY; | ||
91 | conf_data |= PCI_STATUS_DEVSEL_MEDIUM; | ||
92 | break; | ||
93 | case PCI_CLASS_REVISION: | ||
94 | _rdmsr(ACC_MSR_REG(ACC_CAP), &hi, &lo); | ||
95 | conf_data = lo & 0x000000ff; | ||
96 | conf_data |= (CS5536_ACC_CLASS_CODE << 8); | ||
97 | break; | ||
98 | case PCI_CACHE_LINE_SIZE: | ||
99 | conf_data = | ||
100 | CFG_PCI_CACHE_LINE_SIZE(PCI_NORMAL_HEADER_TYPE, | ||
101 | PCI_NORMAL_LATENCY_TIMER); | ||
102 | break; | ||
103 | case PCI_BAR0_REG: | ||
104 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
105 | if (lo & SOFT_BAR_ACC_FLAG) { | ||
106 | conf_data = CS5536_ACC_RANGE | | ||
107 | PCI_BASE_ADDRESS_SPACE_IO; | ||
108 | lo &= ~SOFT_BAR_ACC_FLAG; | ||
109 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
110 | } else { | ||
111 | _rdmsr(GLIU_MSR_REG(GLIU_IOD_BM1), &hi, &lo); | ||
112 | conf_data = (hi & 0x000000ff) << 12; | ||
113 | conf_data |= (lo & 0xfff00000) >> 20; | ||
114 | conf_data |= 0x01; | ||
115 | conf_data &= ~0x02; | ||
116 | } | ||
117 | break; | ||
118 | case PCI_CARDBUS_CIS: | ||
119 | conf_data = PCI_CARDBUS_CIS_POINTER; | ||
120 | break; | ||
121 | case PCI_SUBSYSTEM_VENDOR_ID: | ||
122 | conf_data = | ||
123 | CFG_PCI_VENDOR_ID(CS5536_ACC_SUB_ID, CS5536_SUB_VENDOR_ID); | ||
124 | break; | ||
125 | case PCI_ROM_ADDRESS: | ||
126 | conf_data = PCI_EXPANSION_ROM_BAR; | ||
127 | break; | ||
128 | case PCI_CAPABILITY_LIST: | ||
129 | conf_data = PCI_CAPLIST_USB_POINTER; | ||
130 | break; | ||
131 | case PCI_INTERRUPT_LINE: | ||
132 | conf_data = | ||
133 | CFG_PCI_INTERRUPT_LINE(PCI_DEFAULT_PIN, CS5536_ACC_INTR); | ||
134 | break; | ||
135 | default: | ||
136 | break; | ||
137 | } | ||
138 | |||
139 | return conf_data; | ||
140 | } | ||
diff --git a/arch/mips/loongson/common/cs5536/cs5536_ehci.c b/arch/mips/loongson/common/cs5536/cs5536_ehci.c new file mode 100644 index 000000000000..eaf8b86e3318 --- /dev/null +++ b/arch/mips/loongson/common/cs5536/cs5536_ehci.c | |||
@@ -0,0 +1,158 @@ | |||
1 | /* | ||
2 | * the EHCI Virtual Support Module of AMD CS5536 | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote, Inc. | ||
5 | * Author : jlliu, liujl@lemote.com | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote, Inc. | ||
8 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
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 as published by the | ||
12 | * Free Software Foundation; either version 2 of the License, or (at your | ||
13 | * option) any later version. | ||
14 | */ | ||
15 | |||
16 | #include <cs5536/cs5536.h> | ||
17 | #include <cs5536/cs5536_pci.h> | ||
18 | |||
19 | void pci_ehci_write_reg(int reg, u32 value) | ||
20 | { | ||
21 | u32 hi = 0, lo = value; | ||
22 | |||
23 | switch (reg) { | ||
24 | case PCI_COMMAND: | ||
25 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
26 | if (value & PCI_COMMAND_MASTER) | ||
27 | hi |= PCI_COMMAND_MASTER; | ||
28 | else | ||
29 | hi &= ~PCI_COMMAND_MASTER; | ||
30 | |||
31 | if (value & PCI_COMMAND_MEMORY) | ||
32 | hi |= PCI_COMMAND_MEMORY; | ||
33 | else | ||
34 | hi &= ~PCI_COMMAND_MEMORY; | ||
35 | _wrmsr(USB_MSR_REG(USB_EHCI), hi, lo); | ||
36 | break; | ||
37 | case PCI_STATUS: | ||
38 | if (value & PCI_STATUS_PARITY) { | ||
39 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
40 | if (lo & SB_PARE_ERR_FLAG) { | ||
41 | lo = (lo & 0x0000ffff) | SB_PARE_ERR_FLAG; | ||
42 | _wrmsr(SB_MSR_REG(SB_ERROR), hi, lo); | ||
43 | } | ||
44 | } | ||
45 | break; | ||
46 | case PCI_BAR0_REG: | ||
47 | if (value == PCI_BAR_RANGE_MASK) { | ||
48 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
49 | lo |= SOFT_BAR_EHCI_FLAG; | ||
50 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
51 | } else if ((value & 0x01) == 0x00) { | ||
52 | _wrmsr(USB_MSR_REG(USB_EHCI), hi, lo); | ||
53 | |||
54 | value &= 0xfffffff0; | ||
55 | hi = 0x40000000 | ((value & 0xff000000) >> 24); | ||
56 | lo = 0x000fffff | ((value & 0x00fff000) << 8); | ||
57 | _wrmsr(GLIU_MSR_REG(GLIU_P2D_BM4), hi, lo); | ||
58 | } | ||
59 | break; | ||
60 | case PCI_EHCI_LEGSMIEN_REG: | ||
61 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
62 | hi &= 0x003f0000; | ||
63 | hi |= (value & 0x3f) << 16; | ||
64 | _wrmsr(USB_MSR_REG(USB_EHCI), hi, lo); | ||
65 | break; | ||
66 | case PCI_EHCI_FLADJ_REG: | ||
67 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
68 | hi &= ~0x00003f00; | ||
69 | hi |= value & 0x00003f00; | ||
70 | _wrmsr(USB_MSR_REG(USB_EHCI), hi, lo); | ||
71 | break; | ||
72 | default: | ||
73 | break; | ||
74 | } | ||
75 | } | ||
76 | |||
77 | u32 pci_ehci_read_reg(int reg) | ||
78 | { | ||
79 | u32 conf_data = 0; | ||
80 | u32 hi, lo; | ||
81 | |||
82 | switch (reg) { | ||
83 | case PCI_VENDOR_ID: | ||
84 | conf_data = | ||
85 | CFG_PCI_VENDOR_ID(CS5536_EHCI_DEVICE_ID, CS5536_VENDOR_ID); | ||
86 | break; | ||
87 | case PCI_COMMAND: | ||
88 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
89 | if (hi & PCI_COMMAND_MASTER) | ||
90 | conf_data |= PCI_COMMAND_MASTER; | ||
91 | if (hi & PCI_COMMAND_MEMORY) | ||
92 | conf_data |= PCI_COMMAND_MEMORY; | ||
93 | break; | ||
94 | case PCI_STATUS: | ||
95 | conf_data |= PCI_STATUS_66MHZ; | ||
96 | conf_data |= PCI_STATUS_FAST_BACK; | ||
97 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
98 | if (lo & SB_PARE_ERR_FLAG) | ||
99 | conf_data |= PCI_STATUS_PARITY; | ||
100 | conf_data |= PCI_STATUS_DEVSEL_MEDIUM; | ||
101 | break; | ||
102 | case PCI_CLASS_REVISION: | ||
103 | _rdmsr(USB_MSR_REG(USB_CAP), &hi, &lo); | ||
104 | conf_data = lo & 0x000000ff; | ||
105 | conf_data |= (CS5536_EHCI_CLASS_CODE << 8); | ||
106 | break; | ||
107 | case PCI_CACHE_LINE_SIZE: | ||
108 | conf_data = | ||
109 | CFG_PCI_CACHE_LINE_SIZE(PCI_NORMAL_HEADER_TYPE, | ||
110 | PCI_NORMAL_LATENCY_TIMER); | ||
111 | break; | ||
112 | case PCI_BAR0_REG: | ||
113 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
114 | if (lo & SOFT_BAR_EHCI_FLAG) { | ||
115 | conf_data = CS5536_EHCI_RANGE | | ||
116 | PCI_BASE_ADDRESS_SPACE_MEMORY; | ||
117 | lo &= ~SOFT_BAR_EHCI_FLAG; | ||
118 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
119 | } else { | ||
120 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
121 | conf_data = lo & 0xfffff000; | ||
122 | } | ||
123 | break; | ||
124 | case PCI_CARDBUS_CIS: | ||
125 | conf_data = PCI_CARDBUS_CIS_POINTER; | ||
126 | break; | ||
127 | case PCI_SUBSYSTEM_VENDOR_ID: | ||
128 | conf_data = | ||
129 | CFG_PCI_VENDOR_ID(CS5536_EHCI_SUB_ID, CS5536_SUB_VENDOR_ID); | ||
130 | break; | ||
131 | case PCI_ROM_ADDRESS: | ||
132 | conf_data = PCI_EXPANSION_ROM_BAR; | ||
133 | break; | ||
134 | case PCI_CAPABILITY_LIST: | ||
135 | conf_data = PCI_CAPLIST_USB_POINTER; | ||
136 | break; | ||
137 | case PCI_INTERRUPT_LINE: | ||
138 | conf_data = | ||
139 | CFG_PCI_INTERRUPT_LINE(PCI_DEFAULT_PIN, CS5536_USB_INTR); | ||
140 | break; | ||
141 | case PCI_EHCI_LEGSMIEN_REG: | ||
142 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
143 | conf_data = (hi & 0x003f0000) >> 16; | ||
144 | break; | ||
145 | case PCI_EHCI_LEGSMISTS_REG: | ||
146 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
147 | conf_data = (hi & 0x3f000000) >> 24; | ||
148 | break; | ||
149 | case PCI_EHCI_FLADJ_REG: | ||
150 | _rdmsr(USB_MSR_REG(USB_EHCI), &hi, &lo); | ||
151 | conf_data = hi & 0x00003f00; | ||
152 | break; | ||
153 | default: | ||
154 | break; | ||
155 | } | ||
156 | |||
157 | return conf_data; | ||
158 | } | ||
diff --git a/arch/mips/loongson/common/cs5536/cs5536_ide.c b/arch/mips/loongson/common/cs5536/cs5536_ide.c new file mode 100644 index 000000000000..9a96b5664c78 --- /dev/null +++ b/arch/mips/loongson/common/cs5536/cs5536_ide.c | |||
@@ -0,0 +1,179 @@ | |||
1 | /* | ||
2 | * the IDE Virtual Support Module of AMD CS5536 | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote, Inc. | ||
5 | * Author : jlliu, liujl@lemote.com | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote, Inc. | ||
8 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
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 as published by the | ||
12 | * Free Software Foundation; either version 2 of the License, or (at your | ||
13 | * option) any later version. | ||
14 | */ | ||
15 | |||
16 | #include <cs5536/cs5536.h> | ||
17 | #include <cs5536/cs5536_pci.h> | ||
18 | |||
19 | void pci_ide_write_reg(int reg, u32 value) | ||
20 | { | ||
21 | u32 hi = 0, lo = value; | ||
22 | |||
23 | switch (reg) { | ||
24 | case PCI_COMMAND: | ||
25 | _rdmsr(GLIU_MSR_REG(GLIU_PAE), &hi, &lo); | ||
26 | if (value & PCI_COMMAND_MASTER) | ||
27 | lo |= (0x03 << 4); | ||
28 | else | ||
29 | lo &= ~(0x03 << 4); | ||
30 | _wrmsr(GLIU_MSR_REG(GLIU_PAE), hi, lo); | ||
31 | break; | ||
32 | case PCI_STATUS: | ||
33 | if (value & PCI_STATUS_PARITY) { | ||
34 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
35 | if (lo & SB_PARE_ERR_FLAG) { | ||
36 | lo = (lo & 0x0000ffff) | SB_PARE_ERR_FLAG; | ||
37 | _wrmsr(SB_MSR_REG(SB_ERROR), hi, lo); | ||
38 | } | ||
39 | } | ||
40 | break; | ||
41 | case PCI_CACHE_LINE_SIZE: | ||
42 | value &= 0x0000ff00; | ||
43 | _rdmsr(SB_MSR_REG(SB_CTRL), &hi, &lo); | ||
44 | hi &= 0xffffff00; | ||
45 | hi |= (value >> 8); | ||
46 | _wrmsr(SB_MSR_REG(SB_CTRL), hi, lo); | ||
47 | break; | ||
48 | case PCI_BAR4_REG: | ||
49 | if (value == PCI_BAR_RANGE_MASK) { | ||
50 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
51 | lo |= SOFT_BAR_IDE_FLAG; | ||
52 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
53 | } else if (value & 0x01) { | ||
54 | lo = (value & 0xfffffff0) | 0x1; | ||
55 | _wrmsr(IDE_MSR_REG(IDE_IO_BAR), hi, lo); | ||
56 | |||
57 | value &= 0xfffffffc; | ||
58 | hi = 0x60000000 | ((value & 0x000ff000) >> 12); | ||
59 | lo = 0x000ffff0 | ((value & 0x00000fff) << 20); | ||
60 | _wrmsr(GLIU_MSR_REG(GLIU_IOD_BM2), hi, lo); | ||
61 | } | ||
62 | break; | ||
63 | case PCI_IDE_CFG_REG: | ||
64 | if (value == CS5536_IDE_FLASH_SIGNATURE) { | ||
65 | _rdmsr(DIVIL_MSR_REG(DIVIL_BALL_OPTS), &hi, &lo); | ||
66 | lo |= 0x01; | ||
67 | _wrmsr(DIVIL_MSR_REG(DIVIL_BALL_OPTS), hi, lo); | ||
68 | } else | ||
69 | _wrmsr(IDE_MSR_REG(IDE_CFG), hi, lo); | ||
70 | break; | ||
71 | case PCI_IDE_DTC_REG: | ||
72 | _wrmsr(IDE_MSR_REG(IDE_DTC), hi, lo); | ||
73 | break; | ||
74 | case PCI_IDE_CAST_REG: | ||
75 | _wrmsr(IDE_MSR_REG(IDE_CAST), hi, lo); | ||
76 | break; | ||
77 | case PCI_IDE_ETC_REG: | ||
78 | _wrmsr(IDE_MSR_REG(IDE_ETC), hi, lo); | ||
79 | break; | ||
80 | case PCI_IDE_PM_REG: | ||
81 | _wrmsr(IDE_MSR_REG(IDE_INTERNAL_PM), hi, lo); | ||
82 | break; | ||
83 | default: | ||
84 | break; | ||
85 | } | ||
86 | } | ||
87 | |||
88 | u32 pci_ide_read_reg(int reg) | ||
89 | { | ||
90 | u32 conf_data = 0; | ||
91 | u32 hi, lo; | ||
92 | |||
93 | switch (reg) { | ||
94 | case PCI_VENDOR_ID: | ||
95 | conf_data = | ||
96 | CFG_PCI_VENDOR_ID(CS5536_IDE_DEVICE_ID, CS5536_VENDOR_ID); | ||
97 | break; | ||
98 | case PCI_COMMAND: | ||
99 | _rdmsr(IDE_MSR_REG(IDE_IO_BAR), &hi, &lo); | ||
100 | if (lo & 0xfffffff0) | ||
101 | conf_data |= PCI_COMMAND_IO; | ||
102 | _rdmsr(GLIU_MSR_REG(GLIU_PAE), &hi, &lo); | ||
103 | if ((lo & 0x30) == 0x30) | ||
104 | conf_data |= PCI_COMMAND_MASTER; | ||
105 | break; | ||
106 | case PCI_STATUS: | ||
107 | conf_data |= PCI_STATUS_66MHZ; | ||
108 | conf_data |= PCI_STATUS_FAST_BACK; | ||
109 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
110 | if (lo & SB_PARE_ERR_FLAG) | ||
111 | conf_data |= PCI_STATUS_PARITY; | ||
112 | conf_data |= PCI_STATUS_DEVSEL_MEDIUM; | ||
113 | break; | ||
114 | case PCI_CLASS_REVISION: | ||
115 | _rdmsr(IDE_MSR_REG(IDE_CAP), &hi, &lo); | ||
116 | conf_data = lo & 0x000000ff; | ||
117 | conf_data |= (CS5536_IDE_CLASS_CODE << 8); | ||
118 | break; | ||
119 | case PCI_CACHE_LINE_SIZE: | ||
120 | _rdmsr(SB_MSR_REG(SB_CTRL), &hi, &lo); | ||
121 | hi &= 0x000000f8; | ||
122 | conf_data = CFG_PCI_CACHE_LINE_SIZE(PCI_NORMAL_HEADER_TYPE, hi); | ||
123 | break; | ||
124 | case PCI_BAR4_REG: | ||
125 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
126 | if (lo & SOFT_BAR_IDE_FLAG) { | ||
127 | conf_data = CS5536_IDE_RANGE | | ||
128 | PCI_BASE_ADDRESS_SPACE_IO; | ||
129 | lo &= ~SOFT_BAR_IDE_FLAG; | ||
130 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
131 | } else { | ||
132 | _rdmsr(IDE_MSR_REG(IDE_IO_BAR), &hi, &lo); | ||
133 | conf_data = lo & 0xfffffff0; | ||
134 | conf_data |= 0x01; | ||
135 | conf_data &= ~0x02; | ||
136 | } | ||
137 | break; | ||
138 | case PCI_CARDBUS_CIS: | ||
139 | conf_data = PCI_CARDBUS_CIS_POINTER; | ||
140 | break; | ||
141 | case PCI_SUBSYSTEM_VENDOR_ID: | ||
142 | conf_data = | ||
143 | CFG_PCI_VENDOR_ID(CS5536_IDE_SUB_ID, CS5536_SUB_VENDOR_ID); | ||
144 | break; | ||
145 | case PCI_ROM_ADDRESS: | ||
146 | conf_data = PCI_EXPANSION_ROM_BAR; | ||
147 | break; | ||
148 | case PCI_CAPABILITY_LIST: | ||
149 | conf_data = PCI_CAPLIST_POINTER; | ||
150 | break; | ||
151 | case PCI_INTERRUPT_LINE: | ||
152 | conf_data = | ||
153 | CFG_PCI_INTERRUPT_LINE(PCI_DEFAULT_PIN, CS5536_IDE_INTR); | ||
154 | break; | ||
155 | case PCI_IDE_CFG_REG: | ||
156 | _rdmsr(IDE_MSR_REG(IDE_CFG), &hi, &lo); | ||
157 | conf_data = lo; | ||
158 | break; | ||
159 | case PCI_IDE_DTC_REG: | ||
160 | _rdmsr(IDE_MSR_REG(IDE_DTC), &hi, &lo); | ||
161 | conf_data = lo; | ||
162 | break; | ||
163 | case PCI_IDE_CAST_REG: | ||
164 | _rdmsr(IDE_MSR_REG(IDE_CAST), &hi, &lo); | ||
165 | conf_data = lo; | ||
166 | break; | ||
167 | case PCI_IDE_ETC_REG: | ||
168 | _rdmsr(IDE_MSR_REG(IDE_ETC), &hi, &lo); | ||
169 | conf_data = lo; | ||
170 | case PCI_IDE_PM_REG: | ||
171 | _rdmsr(IDE_MSR_REG(IDE_INTERNAL_PM), &hi, &lo); | ||
172 | conf_data = lo; | ||
173 | break; | ||
174 | default: | ||
175 | break; | ||
176 | } | ||
177 | |||
178 | return conf_data; | ||
179 | } | ||
diff --git a/arch/mips/loongson/common/cs5536/cs5536_isa.c b/arch/mips/loongson/common/cs5536/cs5536_isa.c new file mode 100644 index 000000000000..f5c0818831b2 --- /dev/null +++ b/arch/mips/loongson/common/cs5536/cs5536_isa.c | |||
@@ -0,0 +1,316 @@ | |||
1 | /* | ||
2 | * the ISA Virtual Support Module of AMD CS5536 | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote, Inc. | ||
5 | * Author : jlliu, liujl@lemote.com | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote, Inc. | ||
8 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
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 as published by the | ||
12 | * Free Software Foundation; either version 2 of the License, or (at your | ||
13 | * option) any later version. | ||
14 | */ | ||
15 | |||
16 | #include <cs5536/cs5536.h> | ||
17 | #include <cs5536/cs5536_pci.h> | ||
18 | |||
19 | /* common variables for PCI_ISA_READ/WRITE_BAR */ | ||
20 | static const u32 divil_msr_reg[6] = { | ||
21 | DIVIL_MSR_REG(DIVIL_LBAR_SMB), DIVIL_MSR_REG(DIVIL_LBAR_GPIO), | ||
22 | DIVIL_MSR_REG(DIVIL_LBAR_MFGPT), DIVIL_MSR_REG(DIVIL_LBAR_IRQ), | ||
23 | DIVIL_MSR_REG(DIVIL_LBAR_PMS), DIVIL_MSR_REG(DIVIL_LBAR_ACPI), | ||
24 | }; | ||
25 | |||
26 | static const u32 soft_bar_flag[6] = { | ||
27 | SOFT_BAR_SMB_FLAG, SOFT_BAR_GPIO_FLAG, SOFT_BAR_MFGPT_FLAG, | ||
28 | SOFT_BAR_IRQ_FLAG, SOFT_BAR_PMS_FLAG, SOFT_BAR_ACPI_FLAG, | ||
29 | }; | ||
30 | |||
31 | static const u32 sb_msr_reg[6] = { | ||
32 | SB_MSR_REG(SB_R0), SB_MSR_REG(SB_R1), SB_MSR_REG(SB_R2), | ||
33 | SB_MSR_REG(SB_R3), SB_MSR_REG(SB_R4), SB_MSR_REG(SB_R5), | ||
34 | }; | ||
35 | |||
36 | static const u32 bar_space_range[6] = { | ||
37 | CS5536_SMB_RANGE, CS5536_GPIO_RANGE, CS5536_MFGPT_RANGE, | ||
38 | CS5536_IRQ_RANGE, CS5536_PMS_RANGE, CS5536_ACPI_RANGE, | ||
39 | }; | ||
40 | |||
41 | static const int bar_space_len[6] = { | ||
42 | CS5536_SMB_LENGTH, CS5536_GPIO_LENGTH, CS5536_MFGPT_LENGTH, | ||
43 | CS5536_IRQ_LENGTH, CS5536_PMS_LENGTH, CS5536_ACPI_LENGTH, | ||
44 | }; | ||
45 | |||
46 | /* | ||
47 | * enable the divil module bar space. | ||
48 | * | ||
49 | * For all the DIVIL module LBAR, you should control the DIVIL LBAR reg | ||
50 | * and the RCONFx(0~5) reg to use the modules. | ||
51 | */ | ||
52 | static void divil_lbar_enable(void) | ||
53 | { | ||
54 | u32 hi, lo; | ||
55 | int offset; | ||
56 | |||
57 | /* | ||
58 | * The DIVIL IRQ is not used yet. and make the RCONF0 reserved. | ||
59 | */ | ||
60 | |||
61 | for (offset = DIVIL_LBAR_SMB; offset <= DIVIL_LBAR_PMS; offset++) { | ||
62 | _rdmsr(DIVIL_MSR_REG(offset), &hi, &lo); | ||
63 | hi |= 0x01; | ||
64 | _wrmsr(DIVIL_MSR_REG(DIVIL_LBAR_SMB), hi, lo); | ||
65 | } | ||
66 | } | ||
67 | |||
68 | /* | ||
69 | * disable the divil module bar space. | ||
70 | */ | ||
71 | static void divil_lbar_disable(void) | ||
72 | { | ||
73 | u32 hi, lo; | ||
74 | int offset; | ||
75 | |||
76 | for (offset = DIVIL_LBAR_SMB; offset <= DIVIL_LBAR_PMS; offset++) { | ||
77 | _rdmsr(DIVIL_MSR_REG(offset), &hi, &lo); | ||
78 | hi &= ~0x01; | ||
79 | _wrmsr(DIVIL_MSR_REG(DIVIL_LBAR_SMB), hi, lo); | ||
80 | } | ||
81 | } | ||
82 | |||
83 | /* | ||
84 | * BAR write: write value to the n BAR | ||
85 | */ | ||
86 | |||
87 | void pci_isa_write_bar(int n, u32 value) | ||
88 | { | ||
89 | u32 hi = 0, lo = value; | ||
90 | |||
91 | if (value == PCI_BAR_RANGE_MASK) { | ||
92 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
93 | lo |= soft_bar_flag[n]; | ||
94 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
95 | } else if (value & 0x01) { | ||
96 | /* NATIVE reg */ | ||
97 | hi = 0x0000f001; | ||
98 | lo &= bar_space_range[n]; | ||
99 | _wrmsr(divil_msr_reg[n], hi, lo); | ||
100 | |||
101 | /* RCONFx is 4bytes in units for I/O space */ | ||
102 | hi = ((value & 0x000ffffc) << 12) | | ||
103 | ((bar_space_len[n] - 4) << 12) | 0x01; | ||
104 | lo = ((value & 0x000ffffc) << 12) | 0x01; | ||
105 | _wrmsr(sb_msr_reg[n], hi, lo); | ||
106 | } | ||
107 | } | ||
108 | |||
109 | /* | ||
110 | * BAR read: read the n BAR | ||
111 | */ | ||
112 | |||
113 | u32 pci_isa_read_bar(int n) | ||
114 | { | ||
115 | u32 conf_data = 0; | ||
116 | u32 hi, lo; | ||
117 | |||
118 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
119 | if (lo & soft_bar_flag[n]) { | ||
120 | conf_data = bar_space_range[n] | PCI_BASE_ADDRESS_SPACE_IO; | ||
121 | lo &= ~soft_bar_flag[n]; | ||
122 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
123 | } else { | ||
124 | _rdmsr(divil_msr_reg[n], &hi, &lo); | ||
125 | conf_data = lo & bar_space_range[n]; | ||
126 | conf_data |= 0x01; | ||
127 | conf_data &= ~0x02; | ||
128 | } | ||
129 | return conf_data; | ||
130 | } | ||
131 | |||
132 | /* | ||
133 | * isa_write: ISA write transfer | ||
134 | * | ||
135 | * We assume that this is not a bus master transfer. | ||
136 | */ | ||
137 | void pci_isa_write_reg(int reg, u32 value) | ||
138 | { | ||
139 | u32 hi = 0, lo = value; | ||
140 | u32 temp; | ||
141 | |||
142 | switch (reg) { | ||
143 | case PCI_COMMAND: | ||
144 | if (value & PCI_COMMAND_IO) | ||
145 | divil_lbar_enable(); | ||
146 | else | ||
147 | divil_lbar_disable(); | ||
148 | break; | ||
149 | case PCI_STATUS: | ||
150 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
151 | temp = lo & 0x0000ffff; | ||
152 | if ((value & PCI_STATUS_SIG_TARGET_ABORT) && | ||
153 | (lo & SB_TAS_ERR_EN)) | ||
154 | temp |= SB_TAS_ERR_FLAG; | ||
155 | |||
156 | if ((value & PCI_STATUS_REC_TARGET_ABORT) && | ||
157 | (lo & SB_TAR_ERR_EN)) | ||
158 | temp |= SB_TAR_ERR_FLAG; | ||
159 | |||
160 | if ((value & PCI_STATUS_REC_MASTER_ABORT) | ||
161 | && (lo & SB_MAR_ERR_EN)) | ||
162 | temp |= SB_MAR_ERR_FLAG; | ||
163 | |||
164 | if ((value & PCI_STATUS_DETECTED_PARITY) | ||
165 | && (lo & SB_PARE_ERR_EN)) | ||
166 | temp |= SB_PARE_ERR_FLAG; | ||
167 | |||
168 | lo = temp; | ||
169 | _wrmsr(SB_MSR_REG(SB_ERROR), hi, lo); | ||
170 | break; | ||
171 | case PCI_CACHE_LINE_SIZE: | ||
172 | value &= 0x0000ff00; | ||
173 | _rdmsr(SB_MSR_REG(SB_CTRL), &hi, &lo); | ||
174 | hi &= 0xffffff00; | ||
175 | hi |= (value >> 8); | ||
176 | _wrmsr(SB_MSR_REG(SB_CTRL), hi, lo); | ||
177 | break; | ||
178 | case PCI_BAR0_REG: | ||
179 | pci_isa_write_bar(0, value); | ||
180 | break; | ||
181 | case PCI_BAR1_REG: | ||
182 | pci_isa_write_bar(1, value); | ||
183 | break; | ||
184 | case PCI_BAR2_REG: | ||
185 | pci_isa_write_bar(2, value); | ||
186 | break; | ||
187 | case PCI_BAR3_REG: | ||
188 | pci_isa_write_bar(3, value); | ||
189 | break; | ||
190 | case PCI_BAR4_REG: | ||
191 | pci_isa_write_bar(4, value); | ||
192 | break; | ||
193 | case PCI_BAR5_REG: | ||
194 | pci_isa_write_bar(5, value); | ||
195 | break; | ||
196 | case PCI_UART1_INT_REG: | ||
197 | _rdmsr(DIVIL_MSR_REG(PIC_YSEL_HIGH), &hi, &lo); | ||
198 | /* disable uart1 interrupt in PIC */ | ||
199 | lo &= ~(0xf << 24); | ||
200 | if (value) /* enable uart1 interrupt in PIC */ | ||
201 | lo |= (CS5536_UART1_INTR << 24); | ||
202 | _wrmsr(DIVIL_MSR_REG(PIC_YSEL_HIGH), hi, lo); | ||
203 | break; | ||
204 | case PCI_UART2_INT_REG: | ||
205 | _rdmsr(DIVIL_MSR_REG(PIC_YSEL_HIGH), &hi, &lo); | ||
206 | /* disable uart2 interrupt in PIC */ | ||
207 | lo &= ~(0xf << 28); | ||
208 | if (value) /* enable uart2 interrupt in PIC */ | ||
209 | lo |= (CS5536_UART2_INTR << 28); | ||
210 | _wrmsr(DIVIL_MSR_REG(PIC_YSEL_HIGH), hi, lo); | ||
211 | break; | ||
212 | case PCI_ISA_FIXUP_REG: | ||
213 | if (value) { | ||
214 | /* enable the TARGET ABORT/MASTER ABORT etc. */ | ||
215 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
216 | lo |= 0x00000063; | ||
217 | _wrmsr(SB_MSR_REG(SB_ERROR), hi, lo); | ||
218 | } | ||
219 | |||
220 | default: | ||
221 | /* ALL OTHER PCI CONFIG SPACE HEADER IS NOT IMPLEMENTED. */ | ||
222 | break; | ||
223 | } | ||
224 | } | ||
225 | |||
226 | /* | ||
227 | * isa_read: ISA read transfers | ||
228 | * | ||
229 | * We assume that this is not a bus master transfer. | ||
230 | */ | ||
231 | u32 pci_isa_read_reg(int reg) | ||
232 | { | ||
233 | u32 conf_data = 0; | ||
234 | u32 hi, lo; | ||
235 | |||
236 | switch (reg) { | ||
237 | case PCI_VENDOR_ID: | ||
238 | conf_data = | ||
239 | CFG_PCI_VENDOR_ID(CS5536_ISA_DEVICE_ID, CS5536_VENDOR_ID); | ||
240 | break; | ||
241 | case PCI_COMMAND: | ||
242 | /* we just check the first LBAR for the IO enable bit, */ | ||
243 | /* maybe we should changed later. */ | ||
244 | _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_SMB), &hi, &lo); | ||
245 | if (hi & 0x01) | ||
246 | conf_data |= PCI_COMMAND_IO; | ||
247 | break; | ||
248 | case PCI_STATUS: | ||
249 | conf_data |= PCI_STATUS_66MHZ; | ||
250 | conf_data |= PCI_STATUS_DEVSEL_MEDIUM; | ||
251 | conf_data |= PCI_STATUS_FAST_BACK; | ||
252 | |||
253 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
254 | if (lo & SB_TAS_ERR_FLAG) | ||
255 | conf_data |= PCI_STATUS_SIG_TARGET_ABORT; | ||
256 | if (lo & SB_TAR_ERR_FLAG) | ||
257 | conf_data |= PCI_STATUS_REC_TARGET_ABORT; | ||
258 | if (lo & SB_MAR_ERR_FLAG) | ||
259 | conf_data |= PCI_STATUS_REC_MASTER_ABORT; | ||
260 | if (lo & SB_PARE_ERR_FLAG) | ||
261 | conf_data |= PCI_STATUS_DETECTED_PARITY; | ||
262 | break; | ||
263 | case PCI_CLASS_REVISION: | ||
264 | _rdmsr(GLCP_MSR_REG(GLCP_CHIP_REV_ID), &hi, &lo); | ||
265 | conf_data = lo & 0x000000ff; | ||
266 | conf_data |= (CS5536_ISA_CLASS_CODE << 8); | ||
267 | break; | ||
268 | case PCI_CACHE_LINE_SIZE: | ||
269 | _rdmsr(SB_MSR_REG(SB_CTRL), &hi, &lo); | ||
270 | hi &= 0x000000f8; | ||
271 | conf_data = CFG_PCI_CACHE_LINE_SIZE(PCI_BRIDGE_HEADER_TYPE, hi); | ||
272 | break; | ||
273 | /* | ||
274 | * we only use the LBAR of DIVIL, no RCONF used. | ||
275 | * all of them are IO space. | ||
276 | */ | ||
277 | case PCI_BAR0_REG: | ||
278 | return pci_isa_read_bar(0); | ||
279 | break; | ||
280 | case PCI_BAR1_REG: | ||
281 | return pci_isa_read_bar(1); | ||
282 | break; | ||
283 | case PCI_BAR2_REG: | ||
284 | return pci_isa_read_bar(2); | ||
285 | break; | ||
286 | case PCI_BAR3_REG: | ||
287 | break; | ||
288 | case PCI_BAR4_REG: | ||
289 | return pci_isa_read_bar(4); | ||
290 | break; | ||
291 | case PCI_BAR5_REG: | ||
292 | return pci_isa_read_bar(5); | ||
293 | break; | ||
294 | case PCI_CARDBUS_CIS: | ||
295 | conf_data = PCI_CARDBUS_CIS_POINTER; | ||
296 | break; | ||
297 | case PCI_SUBSYSTEM_VENDOR_ID: | ||
298 | conf_data = | ||
299 | CFG_PCI_VENDOR_ID(CS5536_ISA_SUB_ID, CS5536_SUB_VENDOR_ID); | ||
300 | break; | ||
301 | case PCI_ROM_ADDRESS: | ||
302 | conf_data = PCI_EXPANSION_ROM_BAR; | ||
303 | break; | ||
304 | case PCI_CAPABILITY_LIST: | ||
305 | conf_data = PCI_CAPLIST_POINTER; | ||
306 | break; | ||
307 | case PCI_INTERRUPT_LINE: | ||
308 | /* no interrupt used here */ | ||
309 | conf_data = CFG_PCI_INTERRUPT_LINE(0x00, 0x00); | ||
310 | break; | ||
311 | default: | ||
312 | break; | ||
313 | } | ||
314 | |||
315 | return conf_data; | ||
316 | } | ||
diff --git a/arch/mips/loongson/common/cs5536/cs5536_mfgpt.c b/arch/mips/loongson/common/cs5536/cs5536_mfgpt.c new file mode 100644 index 000000000000..8c807c965199 --- /dev/null +++ b/arch/mips/loongson/common/cs5536/cs5536_mfgpt.c | |||
@@ -0,0 +1,217 @@ | |||
1 | /* | ||
2 | * CS5536 General timer functions | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote Inc. & Insititute of Computing Technology | ||
5 | * Author: Yanhua, yanh@lemote.com | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote Inc. | ||
8 | * Author: Wu zhangjin, wuzhangjin@gmail.com | ||
9 | * | ||
10 | * Reference: AMD Geode(TM) CS5536 Companion Device Data Book | ||
11 | * | ||
12 | * This program is free software; you can redistribute it and/or modify it | ||
13 | * under the terms of the GNU General Public License as published by the | ||
14 | * Free Software Foundation; either version 2 of the License, or (at your | ||
15 | * option) any later version. | ||
16 | */ | ||
17 | |||
18 | #include <linux/io.h> | ||
19 | #include <linux/init.h> | ||
20 | #include <linux/module.h> | ||
21 | #include <linux/jiffies.h> | ||
22 | #include <linux/spinlock.h> | ||
23 | #include <linux/interrupt.h> | ||
24 | #include <linux/clockchips.h> | ||
25 | |||
26 | #include <asm/time.h> | ||
27 | |||
28 | #include <cs5536/cs5536_mfgpt.h> | ||
29 | |||
30 | DEFINE_SPINLOCK(mfgpt_lock); | ||
31 | EXPORT_SYMBOL(mfgpt_lock); | ||
32 | |||
33 | static u32 mfgpt_base; | ||
34 | |||
35 | /* | ||
36 | * Initialize the MFGPT timer. | ||
37 | * | ||
38 | * This is also called after resume to bring the MFGPT into operation again. | ||
39 | */ | ||
40 | |||
41 | /* disable counter */ | ||
42 | void disable_mfgpt0_counter(void) | ||
43 | { | ||
44 | outw(inw(MFGPT0_SETUP) & 0x7fff, MFGPT0_SETUP); | ||
45 | } | ||
46 | EXPORT_SYMBOL(disable_mfgpt0_counter); | ||
47 | |||
48 | /* enable counter, comparator2 to event mode, 14.318MHz clock */ | ||
49 | void enable_mfgpt0_counter(void) | ||
50 | { | ||
51 | outw(0xe310, MFGPT0_SETUP); | ||
52 | } | ||
53 | EXPORT_SYMBOL(enable_mfgpt0_counter); | ||
54 | |||
55 | static void init_mfgpt_timer(enum clock_event_mode mode, | ||
56 | struct clock_event_device *evt) | ||
57 | { | ||
58 | spin_lock(&mfgpt_lock); | ||
59 | |||
60 | switch (mode) { | ||
61 | case CLOCK_EVT_MODE_PERIODIC: | ||
62 | outw(COMPARE, MFGPT0_CMP2); /* set comparator2 */ | ||
63 | outw(0, MFGPT0_CNT); /* set counter to 0 */ | ||
64 | enable_mfgpt0_counter(); | ||
65 | break; | ||
66 | |||
67 | case CLOCK_EVT_MODE_SHUTDOWN: | ||
68 | case CLOCK_EVT_MODE_UNUSED: | ||
69 | if (evt->mode == CLOCK_EVT_MODE_PERIODIC || | ||
70 | evt->mode == CLOCK_EVT_MODE_ONESHOT) | ||
71 | disable_mfgpt0_counter(); | ||
72 | break; | ||
73 | |||
74 | case CLOCK_EVT_MODE_ONESHOT: | ||
75 | /* The oneshot mode have very high deviation, Not use it! */ | ||
76 | break; | ||
77 | |||
78 | case CLOCK_EVT_MODE_RESUME: | ||
79 | /* Nothing to do here */ | ||
80 | break; | ||
81 | } | ||
82 | spin_unlock(&mfgpt_lock); | ||
83 | } | ||
84 | |||
85 | static struct clock_event_device mfgpt_clockevent = { | ||
86 | .name = "mfgpt", | ||
87 | .features = CLOCK_EVT_FEAT_PERIODIC, | ||
88 | .set_mode = init_mfgpt_timer, | ||
89 | .irq = CS5536_MFGPT_INTR, | ||
90 | }; | ||
91 | |||
92 | static irqreturn_t timer_interrupt(int irq, void *dev_id) | ||
93 | { | ||
94 | u32 basehi; | ||
95 | |||
96 | /* | ||
97 | * get MFGPT base address | ||
98 | * | ||
99 | * NOTE: do not remove me, it's need for the value of mfgpt_base is | ||
100 | * variable | ||
101 | */ | ||
102 | _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_MFGPT), &basehi, &mfgpt_base); | ||
103 | |||
104 | /* ack */ | ||
105 | outw(inw(MFGPT0_SETUP) | 0x4000, MFGPT0_SETUP); | ||
106 | |||
107 | mfgpt_clockevent.event_handler(&mfgpt_clockevent); | ||
108 | |||
109 | return IRQ_HANDLED; | ||
110 | } | ||
111 | |||
112 | static struct irqaction irq5 = { | ||
113 | .handler = timer_interrupt, | ||
114 | .flags = IRQF_DISABLED | IRQF_NOBALANCING | IRQF_TIMER, | ||
115 | .name = "timer" | ||
116 | }; | ||
117 | |||
118 | /* | ||
119 | * Initialize the conversion factor and the min/max deltas of the clock event | ||
120 | * structure and register the clock event source with the framework. | ||
121 | */ | ||
122 | void __init setup_mfgpt0_timer(void) | ||
123 | { | ||
124 | u32 basehi; | ||
125 | struct clock_event_device *cd = &mfgpt_clockevent; | ||
126 | unsigned int cpu = smp_processor_id(); | ||
127 | |||
128 | cd->cpumask = cpumask_of(cpu); | ||
129 | clockevent_set_clock(cd, MFGPT_TICK_RATE); | ||
130 | cd->max_delta_ns = clockevent_delta2ns(0xffff, cd); | ||
131 | cd->min_delta_ns = clockevent_delta2ns(0xf, cd); | ||
132 | |||
133 | /* Enable MFGPT0 Comparator 2 Output to the Interrupt Mapper */ | ||
134 | _wrmsr(DIVIL_MSR_REG(MFGPT_IRQ), 0, 0x100); | ||
135 | |||
136 | /* Enable Interrupt Gate 5 */ | ||
137 | _wrmsr(DIVIL_MSR_REG(PIC_ZSEL_LOW), 0, 0x50000); | ||
138 | |||
139 | /* get MFGPT base address */ | ||
140 | _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_MFGPT), &basehi, &mfgpt_base); | ||
141 | |||
142 | clockevents_register_device(cd); | ||
143 | |||
144 | setup_irq(CS5536_MFGPT_INTR, &irq5); | ||
145 | } | ||
146 | |||
147 | /* | ||
148 | * Since the MFGPT overflows every tick, its not very useful | ||
149 | * to just read by itself. So use jiffies to emulate a free | ||
150 | * running counter: | ||
151 | */ | ||
152 | static cycle_t mfgpt_read(struct clocksource *cs) | ||
153 | { | ||
154 | unsigned long flags; | ||
155 | int count; | ||
156 | u32 jifs; | ||
157 | static int old_count; | ||
158 | static u32 old_jifs; | ||
159 | |||
160 | spin_lock_irqsave(&mfgpt_lock, flags); | ||
161 | /* | ||
162 | * Although our caller may have the read side of xtime_lock, | ||
163 | * this is now a seqlock, and we are cheating in this routine | ||
164 | * by having side effects on state that we cannot undo if | ||
165 | * there is a collision on the seqlock and our caller has to | ||
166 | * retry. (Namely, old_jifs and old_count.) So we must treat | ||
167 | * jiffies as volatile despite the lock. We read jiffies | ||
168 | * before latching the timer count to guarantee that although | ||
169 | * the jiffies value might be older than the count (that is, | ||
170 | * the counter may underflow between the last point where | ||
171 | * jiffies was incremented and the point where we latch the | ||
172 | * count), it cannot be newer. | ||
173 | */ | ||
174 | jifs = jiffies; | ||
175 | /* read the count */ | ||
176 | count = inw(MFGPT0_CNT); | ||
177 | |||
178 | /* | ||
179 | * It's possible for count to appear to go the wrong way for this | ||
180 | * reason: | ||
181 | * | ||
182 | * The timer counter underflows, but we haven't handled the resulting | ||
183 | * interrupt and incremented jiffies yet. | ||
184 | * | ||
185 | * Previous attempts to handle these cases intelligently were buggy, so | ||
186 | * we just do the simple thing now. | ||
187 | */ | ||
188 | if (count < old_count && jifs == old_jifs) | ||
189 | count = old_count; | ||
190 | |||
191 | old_count = count; | ||
192 | old_jifs = jifs; | ||
193 | |||
194 | spin_unlock_irqrestore(&mfgpt_lock, flags); | ||
195 | |||
196 | return (cycle_t) (jifs * COMPARE) + count; | ||
197 | } | ||
198 | |||
199 | static struct clocksource clocksource_mfgpt = { | ||
200 | .name = "mfgpt", | ||
201 | .rating = 120, /* Functional for real use, but not desired */ | ||
202 | .read = mfgpt_read, | ||
203 | .mask = CLOCKSOURCE_MASK(32), | ||
204 | .mult = 0, | ||
205 | .shift = 22, | ||
206 | }; | ||
207 | |||
208 | int __init init_mfgpt_clocksource(void) | ||
209 | { | ||
210 | if (num_possible_cpus() > 1) /* MFGPT does not scale! */ | ||
211 | return 0; | ||
212 | |||
213 | clocksource_mfgpt.mult = clocksource_hz2mult(MFGPT_TICK_RATE, 22); | ||
214 | return clocksource_register(&clocksource_mfgpt); | ||
215 | } | ||
216 | |||
217 | arch_initcall(init_mfgpt_clocksource); | ||
diff --git a/arch/mips/loongson/common/cs5536/cs5536_ohci.c b/arch/mips/loongson/common/cs5536/cs5536_ohci.c new file mode 100644 index 000000000000..db5900aadd6b --- /dev/null +++ b/arch/mips/loongson/common/cs5536/cs5536_ohci.c | |||
@@ -0,0 +1,147 @@ | |||
1 | /* | ||
2 | * the OHCI Virtual Support Module of AMD CS5536 | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote, Inc. | ||
5 | * Author : jlliu, liujl@lemote.com | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote, Inc. | ||
8 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
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 as published by the | ||
12 | * Free Software Foundation; either version 2 of the License, or (at your | ||
13 | * option) any later version. | ||
14 | */ | ||
15 | |||
16 | #include <cs5536/cs5536.h> | ||
17 | #include <cs5536/cs5536_pci.h> | ||
18 | |||
19 | void pci_ohci_write_reg(int reg, u32 value) | ||
20 | { | ||
21 | u32 hi = 0, lo = value; | ||
22 | |||
23 | switch (reg) { | ||
24 | case PCI_COMMAND: | ||
25 | _rdmsr(USB_MSR_REG(USB_OHCI), &hi, &lo); | ||
26 | if (value & PCI_COMMAND_MASTER) | ||
27 | hi |= PCI_COMMAND_MASTER; | ||
28 | else | ||
29 | hi &= ~PCI_COMMAND_MASTER; | ||
30 | |||
31 | if (value & PCI_COMMAND_MEMORY) | ||
32 | hi |= PCI_COMMAND_MEMORY; | ||
33 | else | ||
34 | hi &= ~PCI_COMMAND_MEMORY; | ||
35 | _wrmsr(USB_MSR_REG(USB_OHCI), hi, lo); | ||
36 | break; | ||
37 | case PCI_STATUS: | ||
38 | if (value & PCI_STATUS_PARITY) { | ||
39 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
40 | if (lo & SB_PARE_ERR_FLAG) { | ||
41 | lo = (lo & 0x0000ffff) | SB_PARE_ERR_FLAG; | ||
42 | _wrmsr(SB_MSR_REG(SB_ERROR), hi, lo); | ||
43 | } | ||
44 | } | ||
45 | break; | ||
46 | case PCI_BAR0_REG: | ||
47 | if (value == PCI_BAR_RANGE_MASK) { | ||
48 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
49 | lo |= SOFT_BAR_OHCI_FLAG; | ||
50 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
51 | } else if ((value & 0x01) == 0x00) { | ||
52 | _wrmsr(USB_MSR_REG(USB_OHCI), hi, lo); | ||
53 | |||
54 | value &= 0xfffffff0; | ||
55 | hi = 0x40000000 | ((value & 0xff000000) >> 24); | ||
56 | lo = 0x000fffff | ((value & 0x00fff000) << 8); | ||
57 | _wrmsr(GLIU_MSR_REG(GLIU_P2D_BM3), hi, lo); | ||
58 | } | ||
59 | break; | ||
60 | case PCI_OHCI_INT_REG: | ||
61 | _rdmsr(DIVIL_MSR_REG(PIC_YSEL_LOW), &hi, &lo); | ||
62 | lo &= ~(0xf << PIC_YSEL_LOW_USB_SHIFT); | ||
63 | if (value) /* enable all the usb interrupt in PIC */ | ||
64 | lo |= (CS5536_USB_INTR << PIC_YSEL_LOW_USB_SHIFT); | ||
65 | _wrmsr(DIVIL_MSR_REG(PIC_YSEL_LOW), hi, lo); | ||
66 | break; | ||
67 | default: | ||
68 | break; | ||
69 | } | ||
70 | } | ||
71 | |||
72 | u32 pci_ohci_read_reg(int reg) | ||
73 | { | ||
74 | u32 conf_data = 0; | ||
75 | u32 hi, lo; | ||
76 | |||
77 | switch (reg) { | ||
78 | case PCI_VENDOR_ID: | ||
79 | conf_data = | ||
80 | CFG_PCI_VENDOR_ID(CS5536_OHCI_DEVICE_ID, CS5536_VENDOR_ID); | ||
81 | break; | ||
82 | case PCI_COMMAND: | ||
83 | _rdmsr(USB_MSR_REG(USB_OHCI), &hi, &lo); | ||
84 | if (hi & PCI_COMMAND_MASTER) | ||
85 | conf_data |= PCI_COMMAND_MASTER; | ||
86 | if (hi & PCI_COMMAND_MEMORY) | ||
87 | conf_data |= PCI_COMMAND_MEMORY; | ||
88 | break; | ||
89 | case PCI_STATUS: | ||
90 | conf_data |= PCI_STATUS_66MHZ; | ||
91 | conf_data |= PCI_STATUS_FAST_BACK; | ||
92 | _rdmsr(SB_MSR_REG(SB_ERROR), &hi, &lo); | ||
93 | if (lo & SB_PARE_ERR_FLAG) | ||
94 | conf_data |= PCI_STATUS_PARITY; | ||
95 | conf_data |= PCI_STATUS_DEVSEL_MEDIUM; | ||
96 | break; | ||
97 | case PCI_CLASS_REVISION: | ||
98 | _rdmsr(USB_MSR_REG(USB_CAP), &hi, &lo); | ||
99 | conf_data = lo & 0x000000ff; | ||
100 | conf_data |= (CS5536_OHCI_CLASS_CODE << 8); | ||
101 | break; | ||
102 | case PCI_CACHE_LINE_SIZE: | ||
103 | conf_data = | ||
104 | CFG_PCI_CACHE_LINE_SIZE(PCI_NORMAL_HEADER_TYPE, | ||
105 | PCI_NORMAL_LATENCY_TIMER); | ||
106 | break; | ||
107 | case PCI_BAR0_REG: | ||
108 | _rdmsr(GLCP_MSR_REG(GLCP_SOFT_COM), &hi, &lo); | ||
109 | if (lo & SOFT_BAR_OHCI_FLAG) { | ||
110 | conf_data = CS5536_OHCI_RANGE | | ||
111 | PCI_BASE_ADDRESS_SPACE_MEMORY; | ||
112 | lo &= ~SOFT_BAR_OHCI_FLAG; | ||
113 | _wrmsr(GLCP_MSR_REG(GLCP_SOFT_COM), hi, lo); | ||
114 | } else { | ||
115 | _rdmsr(USB_MSR_REG(USB_OHCI), &hi, &lo); | ||
116 | conf_data = lo & 0xffffff00; | ||
117 | conf_data &= ~0x0000000f; /* 32bit mem */ | ||
118 | } | ||
119 | break; | ||
120 | case PCI_CARDBUS_CIS: | ||
121 | conf_data = PCI_CARDBUS_CIS_POINTER; | ||
122 | break; | ||
123 | case PCI_SUBSYSTEM_VENDOR_ID: | ||
124 | conf_data = | ||
125 | CFG_PCI_VENDOR_ID(CS5536_OHCI_SUB_ID, CS5536_SUB_VENDOR_ID); | ||
126 | break; | ||
127 | case PCI_ROM_ADDRESS: | ||
128 | conf_data = PCI_EXPANSION_ROM_BAR; | ||
129 | break; | ||
130 | case PCI_CAPABILITY_LIST: | ||
131 | conf_data = PCI_CAPLIST_USB_POINTER; | ||
132 | break; | ||
133 | case PCI_INTERRUPT_LINE: | ||
134 | conf_data = | ||
135 | CFG_PCI_INTERRUPT_LINE(PCI_DEFAULT_PIN, CS5536_USB_INTR); | ||
136 | break; | ||
137 | case PCI_OHCI_INT_REG: | ||
138 | _rdmsr(DIVIL_MSR_REG(PIC_YSEL_LOW), &hi, &lo); | ||
139 | if ((lo & 0x00000f00) == CS5536_USB_INTR) | ||
140 | conf_data = 1; | ||
141 | break; | ||
142 | default: | ||
143 | break; | ||
144 | } | ||
145 | |||
146 | return conf_data; | ||
147 | } | ||
diff --git a/arch/mips/loongson/common/cs5536/cs5536_pci.c b/arch/mips/loongson/common/cs5536/cs5536_pci.c new file mode 100644 index 000000000000..6dfeab11af08 --- /dev/null +++ b/arch/mips/loongson/common/cs5536/cs5536_pci.c | |||
@@ -0,0 +1,87 @@ | |||
1 | /* | ||
2 | * read/write operation to the PCI config space of CS5536 | ||
3 | * | ||
4 | * Copyright (C) 2007 Lemote, Inc. | ||
5 | * Author : jlliu, liujl@lemote.com | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote, Inc. | ||
8 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
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 as published by the | ||
12 | * Free Software Foundation; either version 2 of the License, or (at your | ||
13 | * option) any later version. | ||
14 | * | ||
15 | * the Virtual Support Module(VSM) for virtulizing the PCI | ||
16 | * configure space are defined in cs5536_modulename.c respectively, | ||
17 | * | ||
18 | * after this virtulizing, user can access the PCI configure space | ||
19 | * directly as a normal multi-function PCI device which follows | ||
20 | * the PCI-2.2 spec. | ||
21 | */ | ||
22 | |||
23 | #include <linux/types.h> | ||
24 | #include <cs5536/cs5536_vsm.h> | ||
25 | |||
26 | enum { | ||
27 | CS5536_FUNC_START = -1, | ||
28 | CS5536_ISA_FUNC, | ||
29 | reserved_func, | ||
30 | CS5536_IDE_FUNC, | ||
31 | CS5536_ACC_FUNC, | ||
32 | CS5536_OHCI_FUNC, | ||
33 | CS5536_EHCI_FUNC, | ||
34 | CS5536_FUNC_END, | ||
35 | }; | ||
36 | |||
37 | static const cs5536_pci_vsm_write vsm_conf_write[] = { | ||
38 | [CS5536_ISA_FUNC] pci_isa_write_reg, | ||
39 | [reserved_func] NULL, | ||
40 | [CS5536_IDE_FUNC] pci_ide_write_reg, | ||
41 | [CS5536_ACC_FUNC] pci_acc_write_reg, | ||
42 | [CS5536_OHCI_FUNC] pci_ohci_write_reg, | ||
43 | [CS5536_EHCI_FUNC] pci_ehci_write_reg, | ||
44 | }; | ||
45 | |||
46 | static const cs5536_pci_vsm_read vsm_conf_read[] = { | ||
47 | [CS5536_ISA_FUNC] pci_isa_read_reg, | ||
48 | [reserved_func] NULL, | ||
49 | [CS5536_IDE_FUNC] pci_ide_read_reg, | ||
50 | [CS5536_ACC_FUNC] pci_acc_read_reg, | ||
51 | [CS5536_OHCI_FUNC] pci_ohci_read_reg, | ||
52 | [CS5536_EHCI_FUNC] pci_ehci_read_reg, | ||
53 | }; | ||
54 | |||
55 | /* | ||
56 | * write to PCI config space and transfer it to MSR write. | ||
57 | */ | ||
58 | void cs5536_pci_conf_write4(int function, int reg, u32 value) | ||
59 | { | ||
60 | if ((function <= CS5536_FUNC_START) || (function >= CS5536_FUNC_END)) | ||
61 | return; | ||
62 | if ((reg < 0) || (reg > 0x100) || ((reg & 0x03) != 0)) | ||
63 | return; | ||
64 | |||
65 | if (vsm_conf_write[function] != NULL) | ||
66 | vsm_conf_write[function](reg, value); | ||
67 | } | ||
68 | |||
69 | /* | ||
70 | * read PCI config space and transfer it to MSR access. | ||
71 | */ | ||
72 | u32 cs5536_pci_conf_read4(int function, int reg) | ||
73 | { | ||
74 | u32 data = 0; | ||
75 | |||
76 | if ((function <= CS5536_FUNC_START) || (function >= CS5536_FUNC_END)) | ||
77 | return 0; | ||
78 | if ((reg < 0) || ((reg & 0x03) != 0)) | ||
79 | return 0; | ||
80 | if (reg > 0x100) | ||
81 | return 0xffffffff; | ||
82 | |||
83 | if (vsm_conf_read[function] != NULL) | ||
84 | data = vsm_conf_read[function](reg); | ||
85 | |||
86 | return data; | ||
87 | } | ||
diff --git a/arch/mips/loongson/common/early_printk.c b/arch/mips/loongson/common/early_printk.c index bc73edc0cfd8..a71736f00443 100644 --- a/arch/mips/loongson/common/early_printk.c +++ b/arch/mips/loongson/common/early_printk.c | |||
@@ -1,8 +1,8 @@ | |||
1 | /* early printk support | 1 | /* early printk support |
2 | * | 2 | * |
3 | * Copyright (c) 2009 Philippe Vachon <philippe@cowpig.ca> | 3 | * Copyright (c) 2009 Philippe Vachon <philippe@cowpig.ca> |
4 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 4 | * Copyright (c) 2009 Lemote Inc. |
5 | * Author: Wu Zhangjin, wuzj@lemote.com | 5 | * Author: Wu Zhangjin, wuzhangjin@gmail.com |
6 | * | 6 | * |
7 | * This program is free software; you can redistribute it and/or modify it | 7 | * This program is free software; you can redistribute it and/or modify it |
8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of the GNU General Public License as published by the |
@@ -12,26 +12,29 @@ | |||
12 | #include <linux/serial_reg.h> | 12 | #include <linux/serial_reg.h> |
13 | 13 | ||
14 | #include <loongson.h> | 14 | #include <loongson.h> |
15 | #include <machine.h> | ||
16 | 15 | ||
17 | #define PORT(base, offset) (u8 *)(base + offset) | 16 | #define PORT(base, offset) (u8 *)(base + offset) |
18 | 17 | ||
19 | static inline unsigned int serial_in(phys_addr_t base, int offset) | 18 | static inline unsigned int serial_in(unsigned char *base, int offset) |
20 | { | 19 | { |
21 | return readb(PORT(base, offset)); | 20 | return readb(PORT(base, offset)); |
22 | } | 21 | } |
23 | 22 | ||
24 | static inline void serial_out(phys_addr_t base, int offset, int value) | 23 | static inline void serial_out(unsigned char *base, int offset, int value) |
25 | { | 24 | { |
26 | writeb(value, PORT(base, offset)); | 25 | writeb(value, PORT(base, offset)); |
27 | } | 26 | } |
28 | 27 | ||
29 | void prom_putchar(char c) | 28 | void prom_putchar(char c) |
30 | { | 29 | { |
31 | phys_addr_t uart_base = | 30 | int timeout; |
32 | (phys_addr_t) ioremap_nocache(LOONGSON_UART_BASE, 8); | 31 | unsigned char *uart_base; |
33 | 32 | ||
34 | while ((serial_in(uart_base, UART_LSR) & UART_LSR_THRE) == 0) | 33 | uart_base = (unsigned char *)_loongson_uart_base; |
34 | timeout = 1024; | ||
35 | |||
36 | while (((serial_in(uart_base, UART_LSR) & UART_LSR_THRE) == 0) && | ||
37 | (timeout-- > 0)) | ||
35 | ; | 38 | ; |
36 | 39 | ||
37 | serial_out(uart_base, UART_TX, c); | 40 | serial_out(uart_base, UART_TX, c); |
diff --git a/arch/mips/loongson/common/env.c b/arch/mips/loongson/common/env.c index b9ef50385541..ae4cff97a56c 100644 --- a/arch/mips/loongson/common/env.c +++ b/arch/mips/loongson/common/env.c | |||
@@ -9,24 +9,24 @@ | |||
9 | * Copyright (C) 2007 Lemote Inc. & Insititute of Computing Technology | 9 | * Copyright (C) 2007 Lemote Inc. & Insititute of Computing Technology |
10 | * Author: Fuxin Zhang, zhangfx@lemote.com | 10 | * Author: Fuxin Zhang, zhangfx@lemote.com |
11 | * | 11 | * |
12 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 12 | * Copyright (C) 2009 Lemote Inc. |
13 | * Author: Wu Zhangjin, wuzj@lemote.com | 13 | * Author: Wu Zhangjin, wuzhangjin@gmail.com |
14 | * | 14 | * |
15 | * This program is free software; you can redistribute it and/or modify it | 15 | * This program is free software; you can redistribute it and/or modify it |
16 | * under the terms of the GNU General Public License as published by the | 16 | * under the terms of the GNU General Public License as published by the |
17 | * Free Software Foundation; either version 2 of the License, or (at your | 17 | * Free Software Foundation; either version 2 of the License, or (at your |
18 | * option) any later version. | 18 | * option) any later version. |
19 | */ | 19 | */ |
20 | #include <linux/module.h> | ||
21 | |||
20 | #include <asm/bootinfo.h> | 22 | #include <asm/bootinfo.h> |
21 | 23 | ||
22 | #include <loongson.h> | 24 | #include <loongson.h> |
23 | 25 | ||
24 | unsigned long bus_clock, cpu_clock_freq; | 26 | unsigned long cpu_clock_freq; |
27 | EXPORT_SYMBOL(cpu_clock_freq); | ||
25 | unsigned long memsize, highmemsize; | 28 | unsigned long memsize, highmemsize; |
26 | 29 | ||
27 | /* pmon passes arguments in 32bit pointers */ | ||
28 | int *_prom_envp; | ||
29 | |||
30 | #define parse_even_earlier(res, option, p) \ | 30 | #define parse_even_earlier(res, option, p) \ |
31 | do { \ | 31 | do { \ |
32 | if (strncmp(option, (char *)p, strlen(option)) == 0) \ | 32 | if (strncmp(option, (char *)p, strlen(option)) == 0) \ |
@@ -36,6 +36,10 @@ do { \ | |||
36 | 36 | ||
37 | void __init prom_init_env(void) | 37 | void __init prom_init_env(void) |
38 | { | 38 | { |
39 | /* pmon passes arguments in 32bit pointers */ | ||
40 | int *_prom_envp; | ||
41 | unsigned long bus_clock; | ||
42 | unsigned int processor_id; | ||
39 | long l; | 43 | long l; |
40 | 44 | ||
41 | /* firmware arguments are initialized in head.S */ | 45 | /* firmware arguments are initialized in head.S */ |
@@ -52,6 +56,22 @@ void __init prom_init_env(void) | |||
52 | } | 56 | } |
53 | if (memsize == 0) | 57 | if (memsize == 0) |
54 | memsize = 256; | 58 | memsize = 256; |
59 | if (bus_clock == 0) | ||
60 | bus_clock = 66000000; | ||
61 | if (cpu_clock_freq == 0) { | ||
62 | processor_id = (¤t_cpu_data)->processor_id; | ||
63 | switch (processor_id & PRID_REV_MASK) { | ||
64 | case PRID_REV_LOONGSON2E: | ||
65 | cpu_clock_freq = 533080000; | ||
66 | break; | ||
67 | case PRID_REV_LOONGSON2F: | ||
68 | cpu_clock_freq = 797000000; | ||
69 | break; | ||
70 | default: | ||
71 | cpu_clock_freq = 100000000; | ||
72 | break; | ||
73 | } | ||
74 | } | ||
55 | 75 | ||
56 | pr_info("busclock=%ld, cpuclock=%ld, memsize=%ld, highmemsize=%ld\n", | 76 | pr_info("busclock=%ld, cpuclock=%ld, memsize=%ld, highmemsize=%ld\n", |
57 | bus_clock, cpu_clock_freq, memsize, highmemsize); | 77 | bus_clock, cpu_clock_freq, memsize, highmemsize); |
diff --git a/arch/mips/loongson/common/init.c b/arch/mips/loongson/common/init.c index 3abe927422a3..19d341591254 100644 --- a/arch/mips/loongson/common/init.c +++ b/arch/mips/loongson/common/init.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 2 | * Copyright (C) 2009 Lemote Inc. |
3 | * Author: Wu Zhangjin, wuzj@lemote.com | 3 | * Author: Wu Zhangjin, wuzhangjin@gmail.com |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms of the GNU General Public License as published by the | 6 | * under the terms of the GNU General Public License as published by the |
@@ -10,19 +10,28 @@ | |||
10 | 10 | ||
11 | #include <linux/bootmem.h> | 11 | #include <linux/bootmem.h> |
12 | 12 | ||
13 | #include <asm/bootinfo.h> | ||
14 | |||
15 | #include <loongson.h> | 13 | #include <loongson.h> |
16 | 14 | ||
15 | /* Loongson CPU address windows config space base address */ | ||
16 | unsigned long __maybe_unused _loongson_addrwincfg_base; | ||
17 | |||
17 | void __init prom_init(void) | 18 | void __init prom_init(void) |
18 | { | 19 | { |
19 | /* init base address of io space */ | 20 | /* init base address of io space */ |
20 | set_io_port_base((unsigned long) | 21 | set_io_port_base((unsigned long) |
21 | ioremap(BONITO_PCIIO_BASE, BONITO_PCIIO_SIZE)); | 22 | ioremap(LOONGSON_PCIIO_BASE, LOONGSON_PCIIO_SIZE)); |
23 | |||
24 | #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG | ||
25 | _loongson_addrwincfg_base = (unsigned long) | ||
26 | ioremap(LOONGSON_ADDRWINCFG_BASE, LOONGSON_ADDRWINCFG_SIZE); | ||
27 | #endif | ||
22 | 28 | ||
23 | prom_init_cmdline(); | 29 | prom_init_cmdline(); |
24 | prom_init_env(); | 30 | prom_init_env(); |
25 | prom_init_memory(); | 31 | prom_init_memory(); |
32 | |||
33 | /*init the uart base address */ | ||
34 | prom_init_uart_base(); | ||
26 | } | 35 | } |
27 | 36 | ||
28 | void __init prom_free_prom_memory(void) | 37 | void __init prom_free_prom_memory(void) |
diff --git a/arch/mips/loongson/common/irq.c b/arch/mips/loongson/common/irq.c index b32b4a3e5137..20e732831978 100644 --- a/arch/mips/loongson/common/irq.c +++ b/arch/mips/loongson/common/irq.c | |||
@@ -20,21 +20,21 @@ void bonito_irqdispatch(void) | |||
20 | int i; | 20 | int i; |
21 | 21 | ||
22 | /* workaround the IO dma problem: let cpu looping to allow DMA finish */ | 22 | /* workaround the IO dma problem: let cpu looping to allow DMA finish */ |
23 | int_status = BONITO_INTISR; | 23 | int_status = LOONGSON_INTISR; |
24 | if (int_status & (1 << 10)) { | 24 | if (int_status & (1 << 10)) { |
25 | while (int_status & (1 << 10)) { | 25 | while (int_status & (1 << 10)) { |
26 | udelay(1); | 26 | udelay(1); |
27 | int_status = BONITO_INTISR; | 27 | int_status = LOONGSON_INTISR; |
28 | } | 28 | } |
29 | } | 29 | } |
30 | 30 | ||
31 | /* Get pending sources, masked by current enables */ | 31 | /* Get pending sources, masked by current enables */ |
32 | int_status = BONITO_INTISR & BONITO_INTEN; | 32 | int_status = LOONGSON_INTISR & LOONGSON_INTEN; |
33 | 33 | ||
34 | if (int_status != 0) { | 34 | if (int_status != 0) { |
35 | i = __ffs(int_status); | 35 | i = __ffs(int_status); |
36 | int_status &= ~(1 << i); | 36 | int_status &= ~(1 << i); |
37 | do_IRQ(BONITO_IRQ_BASE + i); | 37 | do_IRQ(LOONGSON_IRQ_BASE + i); |
38 | } | 38 | } |
39 | } | 39 | } |
40 | 40 | ||
@@ -60,13 +60,13 @@ void __init arch_init_irq(void) | |||
60 | set_irq_trigger_mode(); | 60 | set_irq_trigger_mode(); |
61 | 61 | ||
62 | /* no steer */ | 62 | /* no steer */ |
63 | BONITO_INTSTEER = 0; | 63 | LOONGSON_INTSTEER = 0; |
64 | 64 | ||
65 | /* | 65 | /* |
66 | * Mask out all interrupt by writing "1" to all bit position in | 66 | * Mask out all interrupt by writing "1" to all bit position in |
67 | * the interrupt reset reg. | 67 | * the interrupt reset reg. |
68 | */ | 68 | */ |
69 | BONITO_INTENCLR = ~0; | 69 | LOONGSON_INTENCLR = ~0; |
70 | 70 | ||
71 | /* machine specific irq init */ | 71 | /* machine specific irq init */ |
72 | mach_init_irq(); | 72 | mach_init_irq(); |
diff --git a/arch/mips/loongson/common/machtype.c b/arch/mips/loongson/common/machtype.c index 7b348248de7d..81fbe6b73f91 100644 --- a/arch/mips/loongson/common/machtype.c +++ b/arch/mips/loongson/common/machtype.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 2 | * Copyright (C) 2009 Lemote Inc. |
3 | * Author: Wu Zhangjin, wuzj@lemote.com | 3 | * Author: Wu Zhangjin, wuzhangjin@gmail.com |
4 | * | 4 | * |
5 | * Copyright (c) 2009 Zhang Le <r0bertz@gentoo.org> | 5 | * Copyright (c) 2009 Zhang Le <r0bertz@gentoo.org> |
6 | * | 6 | * |
@@ -15,36 +15,51 @@ | |||
15 | #include <loongson.h> | 15 | #include <loongson.h> |
16 | #include <machine.h> | 16 | #include <machine.h> |
17 | 17 | ||
18 | /* please ensure the length of the machtype string is less than 50 */ | ||
19 | #define MACHTYPE_LEN 50 | ||
20 | |||
18 | static const char *system_types[] = { | 21 | static const char *system_types[] = { |
19 | [MACH_LOONGSON_UNKNOWN] "unknown loongson machine", | 22 | [MACH_LOONGSON_UNKNOWN] "unknown loongson machine", |
20 | [MACH_LEMOTE_FL2E] "lemote-fuloong-2e-box", | 23 | [MACH_LEMOTE_FL2E] "lemote-fuloong-2e-box", |
21 | [MACH_LEMOTE_FL2F] "lemote-fuloong-2f-box", | 24 | [MACH_LEMOTE_FL2F] "lemote-fuloong-2f-box", |
22 | [MACH_LEMOTE_ML2F7] "lemote-mengloong-2f-7inches", | 25 | [MACH_LEMOTE_ML2F7] "lemote-mengloong-2f-7inches", |
23 | [MACH_LEMOTE_YL2F89] "lemote-yeeloong-2f-8.9inches", | 26 | [MACH_LEMOTE_YL2F89] "lemote-yeeloong-2f-8.9inches", |
24 | [MACH_DEXXON_GDIUM2F10] "dexxon-gidum-2f-10inches", | 27 | [MACH_DEXXON_GDIUM2F10] "dexxon-gdium-2f", |
28 | [MACH_LEMOTE_NAS] "lemote-nas-2f", | ||
29 | [MACH_LEMOTE_LL2F] "lemote-lynloong-2f", | ||
25 | [MACH_LOONGSON_END] NULL, | 30 | [MACH_LOONGSON_END] NULL, |
26 | }; | 31 | }; |
27 | 32 | ||
28 | const char *get_system_type(void) | 33 | const char *get_system_type(void) |
29 | { | 34 | { |
30 | if (mips_machtype == MACH_UNKNOWN) | ||
31 | mips_machtype = LOONGSON_MACHTYPE; | ||
32 | |||
33 | return system_types[mips_machtype]; | 35 | return system_types[mips_machtype]; |
34 | } | 36 | } |
35 | 37 | ||
36 | static __init int machtype_setup(char *str) | 38 | void __weak __init mach_prom_init_machtype(void) |
39 | { | ||
40 | } | ||
41 | |||
42 | void __init prom_init_machtype(void) | ||
37 | { | 43 | { |
44 | char *p, str[MACHTYPE_LEN]; | ||
38 | int machtype = MACH_LEMOTE_FL2E; | 45 | int machtype = MACH_LEMOTE_FL2E; |
39 | 46 | ||
40 | if (!str) | 47 | mips_machtype = LOONGSON_MACHTYPE; |
41 | return -EINVAL; | 48 | |
49 | p = strstr(arcs_cmdline, "machtype="); | ||
50 | if (!p) { | ||
51 | mach_prom_init_machtype(); | ||
52 | return; | ||
53 | } | ||
54 | p += strlen("machtype="); | ||
55 | strncpy(str, p, MACHTYPE_LEN); | ||
56 | p = strstr(str, " "); | ||
57 | if (p) | ||
58 | *p = '\0'; | ||
42 | 59 | ||
43 | for (; system_types[machtype]; machtype++) | 60 | for (; system_types[machtype]; machtype++) |
44 | if (strstr(system_types[machtype], str)) { | 61 | if (strstr(system_types[machtype], str)) { |
45 | mips_machtype = machtype; | 62 | mips_machtype = machtype; |
46 | break; | 63 | break; |
47 | } | 64 | } |
48 | return 0; | ||
49 | } | 65 | } |
50 | __setup("machtype=", machtype_setup); | ||
diff --git a/arch/mips/loongson/common/mem.c b/arch/mips/loongson/common/mem.c index 7c92f79b6480..30eba6001205 100644 --- a/arch/mips/loongson/common/mem.c +++ b/arch/mips/loongson/common/mem.c | |||
@@ -12,24 +12,108 @@ | |||
12 | 12 | ||
13 | #include <loongson.h> | 13 | #include <loongson.h> |
14 | #include <mem.h> | 14 | #include <mem.h> |
15 | #include <pci.h> | ||
15 | 16 | ||
16 | void __init prom_init_memory(void) | 17 | void __init prom_init_memory(void) |
17 | { | 18 | { |
18 | add_memory_region(0x0, (memsize << 20), BOOT_MEM_RAM); | 19 | add_memory_region(0x0, (memsize << 20), BOOT_MEM_RAM); |
20 | |||
21 | add_memory_region(memsize << 20, LOONGSON_PCI_MEM_START - (memsize << | ||
22 | 20), BOOT_MEM_RESERVED); | ||
23 | |||
24 | #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG | ||
25 | { | ||
26 | int bit; | ||
27 | |||
28 | bit = fls(memsize + highmemsize); | ||
29 | if (bit != ffs(memsize + highmemsize)) | ||
30 | bit += 20; | ||
31 | else | ||
32 | bit = bit + 20 - 1; | ||
33 | |||
34 | /* set cpu window3 to map CPU to DDR: 2G -> 2G */ | ||
35 | LOONGSON_ADDRWIN_CPUTODDR(ADDRWIN_WIN3, 0x80000000ul, | ||
36 | 0x80000000ul, (1 << bit)); | ||
37 | mmiowb(); | ||
38 | } | ||
39 | #endif /* !CONFIG_CPU_SUPPORTS_ADDRWINCFG */ | ||
40 | |||
19 | #ifdef CONFIG_64BIT | 41 | #ifdef CONFIG_64BIT |
20 | if (highmemsize > 0) | 42 | if (highmemsize > 0) |
21 | add_memory_region(LOONGSON_HIGHMEM_START, | 43 | add_memory_region(LOONGSON_HIGHMEM_START, |
22 | highmemsize << 20, BOOT_MEM_RAM); | 44 | highmemsize << 20, BOOT_MEM_RAM); |
23 | #endif /* CONFIG_64BIT */ | 45 | |
46 | add_memory_region(LOONGSON_PCI_MEM_END + 1, LOONGSON_HIGHMEM_START - | ||
47 | LOONGSON_PCI_MEM_END - 1, BOOT_MEM_RESERVED); | ||
48 | |||
49 | #endif /* !CONFIG_64BIT */ | ||
24 | } | 50 | } |
25 | 51 | ||
26 | /* override of arch/mips/mm/cache.c: __uncached_access */ | 52 | /* override of arch/mips/mm/cache.c: __uncached_access */ |
27 | int __uncached_access(struct file *file, unsigned long addr) | 53 | int __uncached_access(struct file *file, unsigned long addr) |
28 | { | 54 | { |
29 | if (file->f_flags & O_SYNC) | 55 | if (file->f_flags & O_DSYNC) |
30 | return 1; | 56 | return 1; |
31 | 57 | ||
32 | return addr >= __pa(high_memory) || | 58 | return addr >= __pa(high_memory) || |
33 | ((addr >= LOONGSON_MMIO_MEM_START) && | 59 | ((addr >= LOONGSON_MMIO_MEM_START) && |
34 | (addr < LOONGSON_MMIO_MEM_END)); | 60 | (addr < LOONGSON_MMIO_MEM_END)); |
35 | } | 61 | } |
62 | |||
63 | #ifdef CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED | ||
64 | |||
65 | #include <linux/pci.h> | ||
66 | #include <linux/sched.h> | ||
67 | #include <asm/current.h> | ||
68 | |||
69 | static unsigned long uca_start, uca_end; | ||
70 | |||
71 | pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn, | ||
72 | unsigned long size, pgprot_t vma_prot) | ||
73 | { | ||
74 | unsigned long offset = pfn << PAGE_SHIFT; | ||
75 | unsigned long end = offset + size; | ||
76 | |||
77 | if (__uncached_access(file, offset)) { | ||
78 | if (uca_start && (offset >= uca_start) && | ||
79 | (end <= uca_end)) | ||
80 | return __pgprot((pgprot_val(vma_prot) & | ||
81 | ~_CACHE_MASK) | | ||
82 | _CACHE_UNCACHED_ACCELERATED); | ||
83 | else | ||
84 | return pgprot_noncached(vma_prot); | ||
85 | } | ||
86 | return vma_prot; | ||
87 | } | ||
88 | |||
89 | static int __init find_vga_mem_init(void) | ||
90 | { | ||
91 | struct pci_dev *dev = 0; | ||
92 | struct resource *r; | ||
93 | int idx; | ||
94 | |||
95 | if (uca_start) | ||
96 | return 0; | ||
97 | |||
98 | for_each_pci_dev(dev) { | ||
99 | if ((dev->class >> 16) == PCI_BASE_CLASS_DISPLAY) { | ||
100 | for (idx = 0; idx < PCI_NUM_RESOURCES; idx++) { | ||
101 | r = &dev->resource[idx]; | ||
102 | if (!r->start && r->end) | ||
103 | continue; | ||
104 | if (r->flags & IORESOURCE_IO) | ||
105 | continue; | ||
106 | if (r->flags & IORESOURCE_MEM) { | ||
107 | uca_start = r->start; | ||
108 | uca_end = r->end; | ||
109 | return 0; | ||
110 | } | ||
111 | } | ||
112 | } | ||
113 | } | ||
114 | |||
115 | return 0; | ||
116 | } | ||
117 | |||
118 | late_initcall(find_vga_mem_init); | ||
119 | #endif /* !CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED */ | ||
diff --git a/arch/mips/loongson/common/pci.c b/arch/mips/loongson/common/pci.c index a3a4abfb6c9a..31d8c5ecd16c 100644 --- a/arch/mips/loongson/common/pci.c +++ b/arch/mips/loongson/common/pci.c | |||
@@ -27,7 +27,7 @@ static struct resource loongson_pci_io_resource = { | |||
27 | }; | 27 | }; |
28 | 28 | ||
29 | static struct pci_controller loongson_pci_controller = { | 29 | static struct pci_controller loongson_pci_controller = { |
30 | .pci_ops = &bonito64_pci_ops, | 30 | .pci_ops = &loongson_pci_ops, |
31 | .io_resource = &loongson_pci_io_resource, | 31 | .io_resource = &loongson_pci_io_resource, |
32 | .mem_resource = &loongson_pci_mem_resource, | 32 | .mem_resource = &loongson_pci_mem_resource, |
33 | .mem_offset = 0x00000000UL, | 33 | .mem_offset = 0x00000000UL, |
@@ -44,15 +44,15 @@ static void __init setup_pcimap(void) | |||
44 | * pcimap: PCI_MAP2 PCI_Mem_Lo2 PCI_Mem_Lo1 PCI_Mem_Lo0 | 44 | * pcimap: PCI_MAP2 PCI_Mem_Lo2 PCI_Mem_Lo1 PCI_Mem_Lo0 |
45 | * [<2G] [384M,448M] [320M,384M] [0M,64M] | 45 | * [<2G] [384M,448M] [320M,384M] [0M,64M] |
46 | */ | 46 | */ |
47 | BONITO_PCIMAP = BONITO_PCIMAP_PCIMAP_2 | | 47 | LOONGSON_PCIMAP = LOONGSON_PCIMAP_PCIMAP_2 | |
48 | BONITO_PCIMAP_WIN(2, BONITO_PCILO2_BASE) | | 48 | LOONGSON_PCIMAP_WIN(2, LOONGSON_PCILO2_BASE) | |
49 | BONITO_PCIMAP_WIN(1, BONITO_PCILO1_BASE) | | 49 | LOONGSON_PCIMAP_WIN(1, LOONGSON_PCILO1_BASE) | |
50 | BONITO_PCIMAP_WIN(0, 0); | 50 | LOONGSON_PCIMAP_WIN(0, 0); |
51 | 51 | ||
52 | /* | 52 | /* |
53 | * PCI-DMA to local mapping: [2G,2G+256M] -> [0M,256M] | 53 | * PCI-DMA to local mapping: [2G,2G+256M] -> [0M,256M] |
54 | */ | 54 | */ |
55 | BONITO_PCIBASE0 = 0x80000000ul; /* base: 2G -> mmap: 0M */ | 55 | LOONGSON_PCIBASE0 = 0x80000000ul; /* base: 2G -> mmap: 0M */ |
56 | /* size: 256M, burst transmission, pre-fetch enable, 64bit */ | 56 | /* size: 256M, burst transmission, pre-fetch enable, 64bit */ |
57 | LOONGSON_PCI_HIT0_SEL_L = 0xc000000cul; | 57 | LOONGSON_PCI_HIT0_SEL_L = 0xc000000cul; |
58 | LOONGSON_PCI_HIT0_SEL_H = 0xfffffffful; | 58 | LOONGSON_PCI_HIT0_SEL_H = 0xfffffffful; |
@@ -67,6 +67,14 @@ static void __init setup_pcimap(void) | |||
67 | /* can not change gnt to break pci transfer when device's gnt not | 67 | /* can not change gnt to break pci transfer when device's gnt not |
68 | deassert for some broken device */ | 68 | deassert for some broken device */ |
69 | LOONGSON_PXARB_CFG = 0x00fe0105ul; | 69 | LOONGSON_PXARB_CFG = 0x00fe0105ul; |
70 | |||
71 | #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG | ||
72 | /* | ||
73 | * set cpu addr window2 to map CPU address space to PCI address space | ||
74 | */ | ||
75 | LOONGSON_ADDRWIN_CPUTOPCI(ADDRWIN_WIN2, LOONGSON_CPU_MEM_SRC, | ||
76 | LOONGSON_PCI_MEM_DST, MMAP_CPUTOPCI_SIZE); | ||
77 | #endif | ||
70 | } | 78 | } |
71 | 79 | ||
72 | static int __init pcibios_init(void) | 80 | static int __init pcibios_init(void) |
diff --git a/arch/mips/loongson/common/platform.c b/arch/mips/loongson/common/platform.c new file mode 100644 index 000000000000..ed007a2e0e1f --- /dev/null +++ b/arch/mips/loongson/common/platform.c | |||
@@ -0,0 +1,30 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Lemote Inc. | ||
3 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify it | ||
6 | * under the terms of the GNU General Public License as published by the | ||
7 | * Free Software Foundation; either version 2 of the License, or (at your | ||
8 | * option) any later version. | ||
9 | */ | ||
10 | |||
11 | #include <linux/err.h> | ||
12 | #include <linux/platform_device.h> | ||
13 | |||
14 | static struct platform_device loongson2_cpufreq_device = { | ||
15 | .name = "loongson2_cpufreq", | ||
16 | .id = -1, | ||
17 | }; | ||
18 | |||
19 | static int __init loongson2_cpufreq_init(void) | ||
20 | { | ||
21 | struct cpuinfo_mips *c = ¤t_cpu_data; | ||
22 | |||
23 | /* Only 2F revision and it's successors support CPUFreq */ | ||
24 | if ((c->processor_id & PRID_REV_MASK) >= PRID_REV_LOONGSON2F) | ||
25 | return platform_device_register(&loongson2_cpufreq_device); | ||
26 | |||
27 | return -ENODEV; | ||
28 | } | ||
29 | |||
30 | arch_initcall(loongson2_cpufreq_init); | ||
diff --git a/arch/mips/loongson/common/pm.c b/arch/mips/loongson/common/pm.c new file mode 100644 index 000000000000..6c1fd9001712 --- /dev/null +++ b/arch/mips/loongson/common/pm.c | |||
@@ -0,0 +1,161 @@ | |||
1 | /* | ||
2 | * loongson-specific suspend support | ||
3 | * | ||
4 | * Copyright (C) 2009 Lemote Inc. | ||
5 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | */ | ||
12 | #include <linux/suspend.h> | ||
13 | #include <linux/interrupt.h> | ||
14 | #include <linux/pm.h> | ||
15 | |||
16 | #include <asm/i8259.h> | ||
17 | #include <asm/mipsregs.h> | ||
18 | |||
19 | #include <loongson.h> | ||
20 | |||
21 | static unsigned int __maybe_unused cached_master_mask; /* i8259A */ | ||
22 | static unsigned int __maybe_unused cached_slave_mask; | ||
23 | static unsigned int __maybe_unused cached_bonito_irq_mask; /* bonito */ | ||
24 | |||
25 | void arch_suspend_disable_irqs(void) | ||
26 | { | ||
27 | /* disable all mips events */ | ||
28 | local_irq_disable(); | ||
29 | |||
30 | #ifdef CONFIG_I8259 | ||
31 | /* disable all events of i8259A */ | ||
32 | cached_slave_mask = inb(PIC_SLAVE_IMR); | ||
33 | cached_master_mask = inb(PIC_MASTER_IMR); | ||
34 | |||
35 | outb(0xff, PIC_SLAVE_IMR); | ||
36 | inb(PIC_SLAVE_IMR); | ||
37 | outb(0xff, PIC_MASTER_IMR); | ||
38 | inb(PIC_MASTER_IMR); | ||
39 | #endif | ||
40 | /* disable all events of bonito */ | ||
41 | cached_bonito_irq_mask = LOONGSON_INTEN; | ||
42 | LOONGSON_INTENCLR = 0xffff; | ||
43 | (void)LOONGSON_INTENCLR; | ||
44 | } | ||
45 | |||
46 | void arch_suspend_enable_irqs(void) | ||
47 | { | ||
48 | /* enable all mips events */ | ||
49 | local_irq_enable(); | ||
50 | #ifdef CONFIG_I8259 | ||
51 | /* only enable the cached events of i8259A */ | ||
52 | outb(cached_slave_mask, PIC_SLAVE_IMR); | ||
53 | outb(cached_master_mask, PIC_MASTER_IMR); | ||
54 | #endif | ||
55 | /* enable all cached events of bonito */ | ||
56 | LOONGSON_INTENSET = cached_bonito_irq_mask; | ||
57 | (void)LOONGSON_INTENSET; | ||
58 | } | ||
59 | |||
60 | /* | ||
61 | * Setup the board-specific events for waking up loongson from wait mode | ||
62 | */ | ||
63 | void __weak setup_wakeup_events(void) | ||
64 | { | ||
65 | } | ||
66 | |||
67 | /* | ||
68 | * Check wakeup events | ||
69 | */ | ||
70 | int __weak wakeup_loongson(void) | ||
71 | { | ||
72 | return 1; | ||
73 | } | ||
74 | |||
75 | /* | ||
76 | * If the events are really what we want to wakeup the CPU, wake it up | ||
77 | * otherwise put the CPU asleep again. | ||
78 | */ | ||
79 | static void wait_for_wakeup_events(void) | ||
80 | { | ||
81 | while (!wakeup_loongson()) | ||
82 | LOONGSON_CHIPCFG0 &= ~0x7; | ||
83 | } | ||
84 | |||
85 | /* | ||
86 | * Stop all perf counters | ||
87 | * | ||
88 | * $24 is the control register of Loongson perf counter | ||
89 | */ | ||
90 | static inline void stop_perf_counters(void) | ||
91 | { | ||
92 | __write_64bit_c0_register($24, 0, 0); | ||
93 | } | ||
94 | |||
95 | |||
96 | static void loongson_suspend_enter(void) | ||
97 | { | ||
98 | static unsigned int cached_cpu_freq; | ||
99 | |||
100 | /* setup wakeup events via enabling the IRQs */ | ||
101 | setup_wakeup_events(); | ||
102 | |||
103 | stop_perf_counters(); | ||
104 | |||
105 | cached_cpu_freq = LOONGSON_CHIPCFG0; | ||
106 | |||
107 | /* Put CPU into wait mode */ | ||
108 | LOONGSON_CHIPCFG0 &= ~0x7; | ||
109 | |||
110 | /* wait for the given events to wakeup cpu from wait mode */ | ||
111 | wait_for_wakeup_events(); | ||
112 | |||
113 | LOONGSON_CHIPCFG0 = cached_cpu_freq; | ||
114 | mmiowb(); | ||
115 | } | ||
116 | |||
117 | void __weak mach_suspend(void) | ||
118 | { | ||
119 | } | ||
120 | |||
121 | void __weak mach_resume(void) | ||
122 | { | ||
123 | } | ||
124 | |||
125 | static int loongson_pm_enter(suspend_state_t state) | ||
126 | { | ||
127 | mach_suspend(); | ||
128 | |||
129 | /* processor specific suspend */ | ||
130 | loongson_suspend_enter(); | ||
131 | |||
132 | mach_resume(); | ||
133 | |||
134 | return 0; | ||
135 | } | ||
136 | |||
137 | static int loongson_pm_valid_state(suspend_state_t state) | ||
138 | { | ||
139 | switch (state) { | ||
140 | case PM_SUSPEND_ON: | ||
141 | case PM_SUSPEND_STANDBY: | ||
142 | case PM_SUSPEND_MEM: | ||
143 | return 1; | ||
144 | |||
145 | default: | ||
146 | return 0; | ||
147 | } | ||
148 | } | ||
149 | |||
150 | static struct platform_suspend_ops loongson_pm_ops = { | ||
151 | .valid = loongson_pm_valid_state, | ||
152 | .enter = loongson_pm_enter, | ||
153 | }; | ||
154 | |||
155 | static int __init loongson_pm_init(void) | ||
156 | { | ||
157 | suspend_set_ops(&loongson_pm_ops); | ||
158 | |||
159 | return 0; | ||
160 | } | ||
161 | arch_initcall(loongson_pm_init); | ||
diff --git a/arch/mips/loongson/common/reset.c b/arch/mips/loongson/common/reset.c index 97e918251edd..9e10d6225d9b 100644 --- a/arch/mips/loongson/common/reset.c +++ b/arch/mips/loongson/common/reset.c | |||
@@ -6,8 +6,8 @@ | |||
6 | * | 6 | * |
7 | * Copyright (C) 2007 Lemote, Inc. & Institute of Computing Technology | 7 | * Copyright (C) 2007 Lemote, Inc. & Institute of Computing Technology |
8 | * Author: Fuxin Zhang, zhangfx@lemote.com | 8 | * Author: Fuxin Zhang, zhangfx@lemote.com |
9 | * Copyright (C) 2009 Lemote, Inc. & Institute of Computing Technology | 9 | * Copyright (C) 2009 Lemote, Inc. |
10 | * Author: Zhangjin Wu, wuzj@lemote.com | 10 | * Author: Zhangjin Wu, wuzhangjin@gmail.com |
11 | */ | 11 | */ |
12 | #include <linux/init.h> | 12 | #include <linux/init.h> |
13 | #include <linux/pm.h> | 13 | #include <linux/pm.h> |
@@ -16,27 +16,53 @@ | |||
16 | 16 | ||
17 | #include <loongson.h> | 17 | #include <loongson.h> |
18 | 18 | ||
19 | static inline void loongson_reboot(void) | ||
20 | { | ||
21 | #ifndef CONFIG_CPU_JUMP_WORKAROUNDS | ||
22 | ((void (*)(void))ioremap_nocache(LOONGSON_BOOT_BASE, 4)) (); | ||
23 | #else | ||
24 | void (*func)(void); | ||
25 | |||
26 | func = (void *)ioremap_nocache(LOONGSON_BOOT_BASE, 4); | ||
27 | |||
28 | __asm__ __volatile__( | ||
29 | " .set noat \n" | ||
30 | " jr %[func] \n" | ||
31 | " .set at \n" | ||
32 | : /* No outputs */ | ||
33 | : [func] "r" (func)); | ||
34 | #endif | ||
35 | } | ||
36 | |||
19 | static void loongson_restart(char *command) | 37 | static void loongson_restart(char *command) |
20 | { | 38 | { |
21 | /* do preparation for reboot */ | 39 | /* do preparation for reboot */ |
22 | mach_prepare_reboot(); | 40 | mach_prepare_reboot(); |
23 | 41 | ||
24 | /* reboot via jumping to boot base address */ | 42 | /* reboot via jumping to boot base address */ |
25 | ((void (*)(void))ioremap_nocache(BONITO_BOOT_BASE, 4)) (); | 43 | loongson_reboot(); |
26 | } | 44 | } |
27 | 45 | ||
28 | static void loongson_halt(void) | 46 | static void loongson_poweroff(void) |
29 | { | 47 | { |
30 | mach_prepare_shutdown(); | 48 | mach_prepare_shutdown(); |
31 | while (1) | 49 | unreachable(); |
32 | ; | 50 | } |
51 | |||
52 | static void loongson_halt(void) | ||
53 | { | ||
54 | pr_notice("\n\n** You can safely turn off the power now **\n\n"); | ||
55 | while (1) { | ||
56 | if (cpu_wait) | ||
57 | cpu_wait(); | ||
58 | } | ||
33 | } | 59 | } |
34 | 60 | ||
35 | static int __init mips_reboot_setup(void) | 61 | static int __init mips_reboot_setup(void) |
36 | { | 62 | { |
37 | _machine_restart = loongson_restart; | 63 | _machine_restart = loongson_restart; |
38 | _machine_halt = loongson_halt; | 64 | _machine_halt = loongson_halt; |
39 | pm_power_off = loongson_halt; | 65 | pm_power_off = loongson_poweroff; |
40 | 66 | ||
41 | return 0; | 67 | return 0; |
42 | } | 68 | } |
diff --git a/arch/mips/loongson/common/serial.c b/arch/mips/loongson/common/serial.c new file mode 100644 index 000000000000..7580873143c8 --- /dev/null +++ b/arch/mips/loongson/common/serial.c | |||
@@ -0,0 +1,76 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 2007 Ralf Baechle (ralf@linux-mips.org) | ||
7 | * | ||
8 | * Copyright (C) 2009 Lemote, Inc. | ||
9 | * Author: Yan hua (yanhua@lemote.com) | ||
10 | * Author: Wu Zhangjin (wuzhangjin@gmail.com) | ||
11 | */ | ||
12 | |||
13 | #include <linux/io.h> | ||
14 | #include <linux/init.h> | ||
15 | #include <linux/serial_8250.h> | ||
16 | |||
17 | #include <asm/bootinfo.h> | ||
18 | |||
19 | #include <loongson.h> | ||
20 | #include <machine.h> | ||
21 | |||
22 | #define PORT(int) \ | ||
23 | { \ | ||
24 | .irq = int, \ | ||
25 | .uartclk = 1843200, \ | ||
26 | .iotype = UPIO_PORT, \ | ||
27 | .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, \ | ||
28 | .regshift = 0, \ | ||
29 | } | ||
30 | |||
31 | #define PORT_M(int) \ | ||
32 | { \ | ||
33 | .irq = MIPS_CPU_IRQ_BASE + (int), \ | ||
34 | .uartclk = 3686400, \ | ||
35 | .iotype = UPIO_MEM, \ | ||
36 | .membase = (void __iomem *)NULL, \ | ||
37 | .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, \ | ||
38 | .regshift = 0, \ | ||
39 | } | ||
40 | |||
41 | static struct plat_serial8250_port uart8250_data[][2] = { | ||
42 | [MACH_LOONGSON_UNKNOWN] {}, | ||
43 | [MACH_LEMOTE_FL2E] {PORT(4), {} }, | ||
44 | [MACH_LEMOTE_FL2F] {PORT(3), {} }, | ||
45 | [MACH_LEMOTE_ML2F7] {PORT_M(3), {} }, | ||
46 | [MACH_LEMOTE_YL2F89] {PORT_M(3), {} }, | ||
47 | [MACH_DEXXON_GDIUM2F10] {PORT_M(3), {} }, | ||
48 | [MACH_LEMOTE_NAS] {PORT_M(3), {} }, | ||
49 | [MACH_LEMOTE_LL2F] {PORT(3), {} }, | ||
50 | [MACH_LOONGSON_END] {}, | ||
51 | }; | ||
52 | |||
53 | static struct platform_device uart8250_device = { | ||
54 | .name = "serial8250", | ||
55 | .id = PLAT8250_DEV_PLATFORM, | ||
56 | }; | ||
57 | |||
58 | static int __init serial_init(void) | ||
59 | { | ||
60 | unsigned char iotype; | ||
61 | |||
62 | iotype = uart8250_data[mips_machtype][0].iotype; | ||
63 | |||
64 | if (UPIO_MEM == iotype) | ||
65 | uart8250_data[mips_machtype][0].membase = | ||
66 | (void __iomem *)_loongson_uart_base; | ||
67 | else if (UPIO_PORT == iotype) | ||
68 | uart8250_data[mips_machtype][0].iobase = | ||
69 | loongson_uart_base - LOONGSON_PCIIO_BASE; | ||
70 | |||
71 | uart8250_device.dev.platform_data = uart8250_data[mips_machtype]; | ||
72 | |||
73 | return platform_device_register(&uart8250_device); | ||
74 | } | ||
75 | |||
76 | device_initcall(serial_init); | ||
diff --git a/arch/mips/loongson/common/setup.c b/arch/mips/loongson/common/setup.c index 4cd2aa9a342c..27d826bc7103 100644 --- a/arch/mips/loongson/common/setup.c +++ b/arch/mips/loongson/common/setup.c | |||
@@ -41,15 +41,12 @@ void __init plat_mem_setup(void) | |||
41 | conswitchp = &vga_con; | 41 | conswitchp = &vga_con; |
42 | 42 | ||
43 | screen_info = (struct screen_info) { | 43 | screen_info = (struct screen_info) { |
44 | 0, 25, /* orig-x, orig-y */ | 44 | .orig_x = 0, |
45 | 0, /* unused */ | 45 | .orig_y = 25, |
46 | 0, /* orig-video-page */ | 46 | .orig_video_cols = 80, |
47 | 0, /* orig-video-mode */ | 47 | .orig_video_lines = 25, |
48 | 80, /* orig-video-cols */ | 48 | .orig_video_isVGA = VIDEO_TYPE_VGAC, |
49 | 0, 0, 0, /* ega_ax, ega_bx, ega_cx */ | 49 | .orig_video_points = 16, |
50 | 25, /* orig-video-lines */ | ||
51 | VIDEO_TYPE_VGAC, /* orig-video-isVGA */ | ||
52 | 16 /* orig-video-points */ | ||
53 | }; | 50 | }; |
54 | #elif defined(CONFIG_DUMMY_CONSOLE) | 51 | #elif defined(CONFIG_DUMMY_CONSOLE) |
55 | conswitchp = &dummy_con; | 52 | conswitchp = &dummy_con; |
diff --git a/arch/mips/loongson/common/time.c b/arch/mips/loongson/common/time.c index 6e08c8270abe..9fdd01f6c56a 100644 --- a/arch/mips/loongson/common/time.c +++ b/arch/mips/loongson/common/time.c | |||
@@ -2,8 +2,8 @@ | |||
2 | * Copyright (C) 2007 Lemote, Inc. & Institute of Computing Technology | 2 | * Copyright (C) 2007 Lemote, Inc. & Institute of Computing Technology |
3 | * Author: Fuxin Zhang, zhangfx@lemote.com | 3 | * Author: Fuxin Zhang, zhangfx@lemote.com |
4 | * | 4 | * |
5 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 5 | * Copyright (C) 2009 Lemote Inc. |
6 | * Author: Wu Zhangjin, wuzj@lemote.com | 6 | * Author: Wu Zhangjin, wuzhangjin@gmail.com |
7 | * | 7 | * |
8 | * This program is free software; you can redistribute it and/or modify it | 8 | * This program is free software; you can redistribute it and/or modify it |
9 | * under the terms of the GNU General Public License as published by the | 9 | * under the terms of the GNU General Public License as published by the |
@@ -14,11 +14,14 @@ | |||
14 | #include <asm/time.h> | 14 | #include <asm/time.h> |
15 | 15 | ||
16 | #include <loongson.h> | 16 | #include <loongson.h> |
17 | #include <cs5536/cs5536_mfgpt.h> | ||
17 | 18 | ||
18 | void __init plat_time_init(void) | 19 | void __init plat_time_init(void) |
19 | { | 20 | { |
20 | /* setup mips r4k timer */ | 21 | /* setup mips r4k timer */ |
21 | mips_hpt_frequency = cpu_clock_freq / 2; | 22 | mips_hpt_frequency = cpu_clock_freq / 2; |
23 | |||
24 | setup_mfgpt0_timer(); | ||
22 | } | 25 | } |
23 | 26 | ||
24 | void read_persistent_clock(struct timespec *ts) | 27 | void read_persistent_clock(struct timespec *ts) |
diff --git a/arch/mips/loongson/common/uart_base.c b/arch/mips/loongson/common/uart_base.c new file mode 100644 index 000000000000..d69ea54bc3d1 --- /dev/null +++ b/arch/mips/loongson/common/uart_base.c | |||
@@ -0,0 +1,45 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Lemote Inc. | ||
3 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify it | ||
6 | * under the terms of the GNU General Public License as published by the | ||
7 | * Free Software Foundation; either version 2 of the License, or (at your | ||
8 | * option) any later version. | ||
9 | */ | ||
10 | |||
11 | #include <linux/module.h> | ||
12 | #include <asm/bootinfo.h> | ||
13 | |||
14 | #include <loongson.h> | ||
15 | |||
16 | /* ioremapped */ | ||
17 | unsigned long _loongson_uart_base; | ||
18 | EXPORT_SYMBOL(_loongson_uart_base); | ||
19 | /* raw */ | ||
20 | unsigned long loongson_uart_base; | ||
21 | EXPORT_SYMBOL(loongson_uart_base); | ||
22 | |||
23 | void prom_init_loongson_uart_base(void) | ||
24 | { | ||
25 | switch (mips_machtype) { | ||
26 | case MACH_LEMOTE_FL2E: | ||
27 | loongson_uart_base = LOONGSON_PCIIO_BASE + 0x3f8; | ||
28 | break; | ||
29 | case MACH_LEMOTE_FL2F: | ||
30 | case MACH_LEMOTE_LL2F: | ||
31 | loongson_uart_base = LOONGSON_PCIIO_BASE + 0x2f8; | ||
32 | break; | ||
33 | case MACH_LEMOTE_ML2F7: | ||
34 | case MACH_LEMOTE_YL2F89: | ||
35 | case MACH_DEXXON_GDIUM2F10: | ||
36 | case MACH_LEMOTE_NAS: | ||
37 | default: | ||
38 | /* The CPU provided serial port */ | ||
39 | loongson_uart_base = LOONGSON_LIO1_BASE + 0x3f8; | ||
40 | break; | ||
41 | } | ||
42 | |||
43 | _loongson_uart_base = | ||
44 | (unsigned long)ioremap_nocache(loongson_uart_base, 8); | ||
45 | } | ||
diff --git a/arch/mips/loongson/fuloong-2e/irq.c b/arch/mips/loongson/fuloong-2e/irq.c index 7888cf69424a..320e9379bdd7 100644 --- a/arch/mips/loongson/fuloong-2e/irq.c +++ b/arch/mips/loongson/fuloong-2e/irq.c | |||
@@ -47,8 +47,8 @@ static struct irqaction cascade_irqaction = { | |||
47 | void __init set_irq_trigger_mode(void) | 47 | void __init set_irq_trigger_mode(void) |
48 | { | 48 | { |
49 | /* most bonito irq should be level triggered */ | 49 | /* most bonito irq should be level triggered */ |
50 | BONITO_INTEDGE = BONITO_ICU_SYSTEMERR | BONITO_ICU_MASTERERR | | 50 | LOONGSON_INTEDGE = LOONGSON_ICU_SYSTEMERR | LOONGSON_ICU_MASTERERR | |
51 | BONITO_ICU_RETRYERR | BONITO_ICU_MBOXES; | 51 | LOONGSON_ICU_RETRYERR | LOONGSON_ICU_MBOXES; |
52 | } | 52 | } |
53 | 53 | ||
54 | void __init mach_init_irq(void) | 54 | void __init mach_init_irq(void) |
diff --git a/arch/mips/loongson/fuloong-2e/reset.c b/arch/mips/loongson/fuloong-2e/reset.c index 677fe186db95..bc39ec62c8c2 100644 --- a/arch/mips/loongson/fuloong-2e/reset.c +++ b/arch/mips/loongson/fuloong-2e/reset.c | |||
@@ -1,8 +1,8 @@ | |||
1 | /* Board-specific reboot/shutdown routines | 1 | /* Board-specific reboot/shutdown routines |
2 | * Copyright (c) 2009 Philippe Vachon <philippe@cowpig.ca> | 2 | * Copyright (c) 2009 Philippe Vachon <philippe@cowpig.ca> |
3 | * | 3 | * |
4 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 4 | * Copyright (C) 2009 Lemote Inc. |
5 | * Author: Wu Zhangjin, wuzj@lemote.com | 5 | * Author: Wu Zhangjin, wuzhangjin@gmail.com |
6 | * | 6 | * |
7 | * This program is free software; you can redistribute it and/or modify it | 7 | * This program is free software; you can redistribute it and/or modify it |
8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of the GNU General Public License as published by the |
@@ -14,8 +14,8 @@ | |||
14 | 14 | ||
15 | void mach_prepare_reboot(void) | 15 | void mach_prepare_reboot(void) |
16 | { | 16 | { |
17 | BONITO_BONGENCFG &= ~(1 << 2); | 17 | LOONGSON_GENCFG &= ~(1 << 2); |
18 | BONITO_BONGENCFG |= (1 << 2); | 18 | LOONGSON_GENCFG |= (1 << 2); |
19 | } | 19 | } |
20 | 20 | ||
21 | void mach_prepare_shutdown(void) | 21 | void mach_prepare_shutdown(void) |
diff --git a/arch/mips/loongson/lemote-2f/Makefile b/arch/mips/loongson/lemote-2f/Makefile new file mode 100644 index 000000000000..8699a53f0477 --- /dev/null +++ b/arch/mips/loongson/lemote-2f/Makefile | |||
@@ -0,0 +1,11 @@ | |||
1 | # | ||
2 | # Makefile for lemote loongson2f family machines | ||
3 | # | ||
4 | |||
5 | obj-y += machtype.o irq.o reset.o ec_kb3310b.o | ||
6 | |||
7 | # | ||
8 | # Suspend Support | ||
9 | # | ||
10 | |||
11 | obj-$(CONFIG_LOONGSON_SUSPEND) += pm.o | ||
diff --git a/arch/mips/loongson/lemote-2f/ec_kb3310b.c b/arch/mips/loongson/lemote-2f/ec_kb3310b.c new file mode 100644 index 000000000000..64057244eec5 --- /dev/null +++ b/arch/mips/loongson/lemote-2f/ec_kb3310b.c | |||
@@ -0,0 +1,130 @@ | |||
1 | /* | ||
2 | * Basic KB3310B Embedded Controller support for the YeeLoong 2F netbook | ||
3 | * | ||
4 | * Copyright (C) 2008 Lemote Inc. | ||
5 | * Author: liujl <liujl@lemote.com>, 2008-04-20 | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | */ | ||
12 | |||
13 | #include <linux/module.h> | ||
14 | #include <linux/spinlock.h> | ||
15 | #include <linux/delay.h> | ||
16 | |||
17 | #include "ec_kb3310b.h" | ||
18 | |||
19 | static DEFINE_SPINLOCK(index_access_lock); | ||
20 | static DEFINE_SPINLOCK(port_access_lock); | ||
21 | |||
22 | unsigned char ec_read(unsigned short addr) | ||
23 | { | ||
24 | unsigned char value; | ||
25 | unsigned long flags; | ||
26 | |||
27 | spin_lock_irqsave(&index_access_lock, flags); | ||
28 | outb((addr & 0xff00) >> 8, EC_IO_PORT_HIGH); | ||
29 | outb((addr & 0x00ff), EC_IO_PORT_LOW); | ||
30 | value = inb(EC_IO_PORT_DATA); | ||
31 | spin_unlock_irqrestore(&index_access_lock, flags); | ||
32 | |||
33 | return value; | ||
34 | } | ||
35 | EXPORT_SYMBOL_GPL(ec_read); | ||
36 | |||
37 | void ec_write(unsigned short addr, unsigned char val) | ||
38 | { | ||
39 | unsigned long flags; | ||
40 | |||
41 | spin_lock_irqsave(&index_access_lock, flags); | ||
42 | outb((addr & 0xff00) >> 8, EC_IO_PORT_HIGH); | ||
43 | outb((addr & 0x00ff), EC_IO_PORT_LOW); | ||
44 | outb(val, EC_IO_PORT_DATA); | ||
45 | /* flush the write action */ | ||
46 | inb(EC_IO_PORT_DATA); | ||
47 | spin_unlock_irqrestore(&index_access_lock, flags); | ||
48 | |||
49 | return; | ||
50 | } | ||
51 | EXPORT_SYMBOL_GPL(ec_write); | ||
52 | |||
53 | /* | ||
54 | * This function is used for EC command writes and corresponding status queries. | ||
55 | */ | ||
56 | int ec_query_seq(unsigned char cmd) | ||
57 | { | ||
58 | int timeout; | ||
59 | unsigned char status; | ||
60 | unsigned long flags; | ||
61 | int ret = 0; | ||
62 | |||
63 | spin_lock_irqsave(&port_access_lock, flags); | ||
64 | |||
65 | /* make chip goto reset mode */ | ||
66 | udelay(EC_REG_DELAY); | ||
67 | outb(cmd, EC_CMD_PORT); | ||
68 | udelay(EC_REG_DELAY); | ||
69 | |||
70 | /* check if the command is received by ec */ | ||
71 | timeout = EC_CMD_TIMEOUT; | ||
72 | status = inb(EC_STS_PORT); | ||
73 | while (timeout-- && (status & (1 << 1))) { | ||
74 | status = inb(EC_STS_PORT); | ||
75 | udelay(EC_REG_DELAY); | ||
76 | } | ||
77 | |||
78 | spin_unlock_irqrestore(&port_access_lock, flags); | ||
79 | |||
80 | if (timeout <= 0) { | ||
81 | printk(KERN_ERR "%s: deadable error : timeout...\n", __func__); | ||
82 | ret = -EINVAL; | ||
83 | } else | ||
84 | printk(KERN_INFO | ||
85 | "(%x/%d)ec issued command %d status : 0x%x\n", | ||
86 | timeout, EC_CMD_TIMEOUT - timeout, cmd, status); | ||
87 | |||
88 | return ret; | ||
89 | } | ||
90 | EXPORT_SYMBOL_GPL(ec_query_seq); | ||
91 | |||
92 | /* | ||
93 | * Send query command to EC to get the proper event number | ||
94 | */ | ||
95 | int ec_query_event_num(void) | ||
96 | { | ||
97 | return ec_query_seq(CMD_GET_EVENT_NUM); | ||
98 | } | ||
99 | EXPORT_SYMBOL(ec_query_event_num); | ||
100 | |||
101 | /* | ||
102 | * Get event number from EC | ||
103 | * | ||
104 | * NOTE: This routine must follow the query_event_num function in the | ||
105 | * interrupt. | ||
106 | */ | ||
107 | int ec_get_event_num(void) | ||
108 | { | ||
109 | int timeout = 100; | ||
110 | unsigned char value; | ||
111 | unsigned char status; | ||
112 | |||
113 | udelay(EC_REG_DELAY); | ||
114 | status = inb(EC_STS_PORT); | ||
115 | udelay(EC_REG_DELAY); | ||
116 | while (timeout-- && !(status & (1 << 0))) { | ||
117 | status = inb(EC_STS_PORT); | ||
118 | udelay(EC_REG_DELAY); | ||
119 | } | ||
120 | if (timeout <= 0) { | ||
121 | pr_info("%s: get event number timeout.\n", __func__); | ||
122 | |||
123 | return -EINVAL; | ||
124 | } | ||
125 | value = inb(EC_DAT_PORT); | ||
126 | udelay(EC_REG_DELAY); | ||
127 | |||
128 | return value; | ||
129 | } | ||
130 | EXPORT_SYMBOL(ec_get_event_num); | ||
diff --git a/arch/mips/loongson/lemote-2f/ec_kb3310b.h b/arch/mips/loongson/lemote-2f/ec_kb3310b.h new file mode 100644 index 000000000000..1595a21b315b --- /dev/null +++ b/arch/mips/loongson/lemote-2f/ec_kb3310b.h | |||
@@ -0,0 +1,188 @@ | |||
1 | /* | ||
2 | * KB3310B Embedded Controller | ||
3 | * | ||
4 | * Copyright (C) 2008 Lemote Inc. | ||
5 | * Author: liujl <liujl@lemote.com>, 2008-03-14 | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | */ | ||
12 | |||
13 | #ifndef _EC_KB3310B_H | ||
14 | #define _EC_KB3310B_H | ||
15 | |||
16 | extern unsigned char ec_read(unsigned short addr); | ||
17 | extern void ec_write(unsigned short addr, unsigned char val); | ||
18 | extern int ec_query_seq(unsigned char cmd); | ||
19 | extern int ec_query_event_num(void); | ||
20 | extern int ec_get_event_num(void); | ||
21 | |||
22 | typedef int (*sci_handler) (int status); | ||
23 | extern sci_handler yeeloong_report_lid_status; | ||
24 | |||
25 | #define SCI_IRQ_NUM 0x0A | ||
26 | |||
27 | /* | ||
28 | * The following registers are determined by the EC index configuration. | ||
29 | * 1, fill the PORT_HIGH as EC register high part. | ||
30 | * 2, fill the PORT_LOW as EC register low part. | ||
31 | * 3, fill the PORT_DATA as EC register write data or get the data from it. | ||
32 | */ | ||
33 | #define EC_IO_PORT_HIGH 0x0381 | ||
34 | #define EC_IO_PORT_LOW 0x0382 | ||
35 | #define EC_IO_PORT_DATA 0x0383 | ||
36 | |||
37 | /* | ||
38 | * EC delay time is 500us for register and status access | ||
39 | */ | ||
40 | #define EC_REG_DELAY 500 /* unit : us */ | ||
41 | #define EC_CMD_TIMEOUT 0x1000 | ||
42 | |||
43 | /* | ||
44 | * EC access port for SCI communication | ||
45 | */ | ||
46 | #define EC_CMD_PORT 0x66 | ||
47 | #define EC_STS_PORT 0x66 | ||
48 | #define EC_DAT_PORT 0x62 | ||
49 | #define CMD_INIT_IDLE_MODE 0xdd | ||
50 | #define CMD_EXIT_IDLE_MODE 0xdf | ||
51 | #define CMD_INIT_RESET_MODE 0xd8 | ||
52 | #define CMD_REBOOT_SYSTEM 0x8c | ||
53 | #define CMD_GET_EVENT_NUM 0x84 | ||
54 | #define CMD_PROGRAM_PIECE 0xda | ||
55 | |||
56 | /* temperature & fan registers */ | ||
57 | #define REG_TEMPERATURE_VALUE 0xF458 | ||
58 | #define REG_FAN_AUTO_MAN_SWITCH 0xF459 | ||
59 | #define BIT_FAN_AUTO 0 | ||
60 | #define BIT_FAN_MANUAL 1 | ||
61 | #define REG_FAN_CONTROL 0xF4D2 | ||
62 | #define BIT_FAN_CONTROL_ON (1 << 0) | ||
63 | #define BIT_FAN_CONTROL_OFF (0 << 0) | ||
64 | #define REG_FAN_STATUS 0xF4DA | ||
65 | #define BIT_FAN_STATUS_ON (1 << 0) | ||
66 | #define BIT_FAN_STATUS_OFF (0 << 0) | ||
67 | #define REG_FAN_SPEED_HIGH 0xFE22 | ||
68 | #define REG_FAN_SPEED_LOW 0xFE23 | ||
69 | #define REG_FAN_SPEED_LEVEL 0xF4CC | ||
70 | /* fan speed divider */ | ||
71 | #define FAN_SPEED_DIVIDER 480000 /* (60*1000*1000/62.5/2)*/ | ||
72 | |||
73 | /* battery registers */ | ||
74 | #define REG_BAT_DESIGN_CAP_HIGH 0xF77D | ||
75 | #define REG_BAT_DESIGN_CAP_LOW 0xF77E | ||
76 | #define REG_BAT_FULLCHG_CAP_HIGH 0xF780 | ||
77 | #define REG_BAT_FULLCHG_CAP_LOW 0xF781 | ||
78 | #define REG_BAT_DESIGN_VOL_HIGH 0xF782 | ||
79 | #define REG_BAT_DESIGN_VOL_LOW 0xF783 | ||
80 | #define REG_BAT_CURRENT_HIGH 0xF784 | ||
81 | #define REG_BAT_CURRENT_LOW 0xF785 | ||
82 | #define REG_BAT_VOLTAGE_HIGH 0xF786 | ||
83 | #define REG_BAT_VOLTAGE_LOW 0xF787 | ||
84 | #define REG_BAT_TEMPERATURE_HIGH 0xF788 | ||
85 | #define REG_BAT_TEMPERATURE_LOW 0xF789 | ||
86 | #define REG_BAT_RELATIVE_CAP_HIGH 0xF492 | ||
87 | #define REG_BAT_RELATIVE_CAP_LOW 0xF493 | ||
88 | #define REG_BAT_VENDOR 0xF4C4 | ||
89 | #define FLAG_BAT_VENDOR_SANYO 0x01 | ||
90 | #define FLAG_BAT_VENDOR_SIMPLO 0x02 | ||
91 | #define REG_BAT_CELL_COUNT 0xF4C6 | ||
92 | #define FLAG_BAT_CELL_3S1P 0x03 | ||
93 | #define FLAG_BAT_CELL_3S2P 0x06 | ||
94 | #define REG_BAT_CHARGE 0xF4A2 | ||
95 | #define FLAG_BAT_CHARGE_DISCHARGE 0x01 | ||
96 | #define FLAG_BAT_CHARGE_CHARGE 0x02 | ||
97 | #define FLAG_BAT_CHARGE_ACPOWER 0x00 | ||
98 | #define REG_BAT_STATUS 0xF4B0 | ||
99 | #define BIT_BAT_STATUS_LOW (1 << 5) | ||
100 | #define BIT_BAT_STATUS_DESTROY (1 << 2) | ||
101 | #define BIT_BAT_STATUS_FULL (1 << 1) | ||
102 | #define BIT_BAT_STATUS_IN (1 << 0) | ||
103 | #define REG_BAT_CHARGE_STATUS 0xF4B1 | ||
104 | #define BIT_BAT_CHARGE_STATUS_OVERTEMP (1 << 2) | ||
105 | #define BIT_BAT_CHARGE_STATUS_PRECHG (1 << 1) | ||
106 | #define REG_BAT_STATE 0xF482 | ||
107 | #define BIT_BAT_STATE_CHARGING (1 << 1) | ||
108 | #define BIT_BAT_STATE_DISCHARGING (1 << 0) | ||
109 | #define REG_BAT_POWER 0xF440 | ||
110 | #define BIT_BAT_POWER_S3 (1 << 2) | ||
111 | #define BIT_BAT_POWER_ON (1 << 1) | ||
112 | #define BIT_BAT_POWER_ACIN (1 << 0) | ||
113 | |||
114 | /* other registers */ | ||
115 | /* Audio: rd/wr */ | ||
116 | #define REG_AUDIO_VOLUME 0xF46C | ||
117 | #define REG_AUDIO_MUTE 0xF4E7 | ||
118 | #define REG_AUDIO_BEEP 0xF4D0 | ||
119 | /* USB port power or not: rd/wr */ | ||
120 | #define REG_USB0_FLAG 0xF461 | ||
121 | #define REG_USB1_FLAG 0xF462 | ||
122 | #define REG_USB2_FLAG 0xF463 | ||
123 | #define BIT_USB_FLAG_ON 1 | ||
124 | #define BIT_USB_FLAG_OFF 0 | ||
125 | /* LID */ | ||
126 | #define REG_LID_DETECT 0xF4BD | ||
127 | #define BIT_LID_DETECT_ON 1 | ||
128 | #define BIT_LID_DETECT_OFF 0 | ||
129 | /* CRT */ | ||
130 | #define REG_CRT_DETECT 0xF4AD | ||
131 | #define BIT_CRT_DETECT_PLUG 1 | ||
132 | #define BIT_CRT_DETECT_UNPLUG 0 | ||
133 | /* LCD backlight brightness adjust: 9 levels */ | ||
134 | #define REG_DISPLAY_BRIGHTNESS 0xF4F5 | ||
135 | /* Black screen Status */ | ||
136 | #define BIT_DISPLAY_LCD_ON 1 | ||
137 | #define BIT_DISPLAY_LCD_OFF 0 | ||
138 | /* LCD backlight control: off/restore */ | ||
139 | #define REG_BACKLIGHT_CTRL 0xF7BD | ||
140 | #define BIT_BACKLIGHT_ON 1 | ||
141 | #define BIT_BACKLIGHT_OFF 0 | ||
142 | /* Reset the machine auto-clear: rd/wr */ | ||
143 | #define REG_RESET 0xF4EC | ||
144 | #define BIT_RESET_ON 1 | ||
145 | /* Light the led: rd/wr */ | ||
146 | #define REG_LED 0xF4C8 | ||
147 | #define BIT_LED_RED_POWER (1 << 0) | ||
148 | #define BIT_LED_ORANGE_POWER (1 << 1) | ||
149 | #define BIT_LED_GREEN_CHARGE (1 << 2) | ||
150 | #define BIT_LED_RED_CHARGE (1 << 3) | ||
151 | #define BIT_LED_NUMLOCK (1 << 4) | ||
152 | /* Test led mode, all led on/off */ | ||
153 | #define REG_LED_TEST 0xF4C2 | ||
154 | #define BIT_LED_TEST_IN 1 | ||
155 | #define BIT_LED_TEST_OUT 0 | ||
156 | /* Camera on/off */ | ||
157 | #define REG_CAMERA_STATUS 0xF46A | ||
158 | #define BIT_CAMERA_STATUS_ON 1 | ||
159 | #define BIT_CAMERA_STATUS_OFF 0 | ||
160 | #define REG_CAMERA_CONTROL 0xF7B7 | ||
161 | #define BIT_CAMERA_CONTROL_OFF 0 | ||
162 | #define BIT_CAMERA_CONTROL_ON 1 | ||
163 | /* Wlan Status */ | ||
164 | #define REG_WLAN 0xF4FA | ||
165 | #define BIT_WLAN_ON 1 | ||
166 | #define BIT_WLAN_OFF 0 | ||
167 | #define REG_DISPLAY_LCD 0xF79F | ||
168 | |||
169 | /* SCI Event Number from EC */ | ||
170 | enum { | ||
171 | EVENT_LID = 0x23, /* LID open/close */ | ||
172 | EVENT_DISPLAY_TOGGLE, /* Fn+F3 for display switch */ | ||
173 | EVENT_SLEEP, /* Fn+F1 for entering sleep mode */ | ||
174 | EVENT_OVERTEMP, /* Over-temperature happened */ | ||
175 | EVENT_CRT_DETECT, /* CRT is connected */ | ||
176 | EVENT_CAMERA, /* Camera on/off */ | ||
177 | EVENT_USB_OC2, /* USB2 Over Current occurred */ | ||
178 | EVENT_USB_OC0, /* USB0 Over Current occurred */ | ||
179 | EVENT_BLACK_SCREEN, /* Turn on/off backlight */ | ||
180 | EVENT_AUDIO_MUTE, /* Mute on/off */ | ||
181 | EVENT_DISPLAY_BRIGHTNESS,/* LCD backlight brightness adjust */ | ||
182 | EVENT_AC_BAT, /* AC & Battery relative issue */ | ||
183 | EVENT_AUDIO_VOLUME, /* Volume adjust */ | ||
184 | EVENT_WLAN, /* Wlan on/off */ | ||
185 | EVENT_END | ||
186 | }; | ||
187 | |||
188 | #endif /* !_EC_KB3310B_H */ | ||
diff --git a/arch/mips/loongson/lemote-2f/irq.c b/arch/mips/loongson/lemote-2f/irq.c new file mode 100644 index 000000000000..1d8b4d28a058 --- /dev/null +++ b/arch/mips/loongson/lemote-2f/irq.c | |||
@@ -0,0 +1,134 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2007 Lemote Inc. | ||
3 | * Author: Fuxin Zhang, zhangfx@lemote.com | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify it | ||
6 | * under the terms of the GNU General Public License as published by the | ||
7 | * Free Software Foundation; either version 2 of the License, or (at your | ||
8 | * option) any later version. | ||
9 | */ | ||
10 | |||
11 | #include <linux/interrupt.h> | ||
12 | #include <linux/module.h> | ||
13 | |||
14 | #include <asm/irq_cpu.h> | ||
15 | #include <asm/i8259.h> | ||
16 | #include <asm/mipsregs.h> | ||
17 | |||
18 | #include <loongson.h> | ||
19 | #include <machine.h> | ||
20 | |||
21 | #define LOONGSON_TIMER_IRQ (MIPS_CPU_IRQ_BASE + 7) /* cpu timer */ | ||
22 | #define LOONGSON_PERFCNT_IRQ (MIPS_CPU_IRQ_BASE + 6) /* cpu perf counter */ | ||
23 | #define LOONGSON_NORTH_BRIDGE_IRQ (MIPS_CPU_IRQ_BASE + 6) /* bonito */ | ||
24 | #define LOONGSON_UART_IRQ (MIPS_CPU_IRQ_BASE + 3) /* cpu serial port */ | ||
25 | #define LOONGSON_SOUTH_BRIDGE_IRQ (MIPS_CPU_IRQ_BASE + 2) /* i8259 */ | ||
26 | |||
27 | #define LOONGSON_INT_BIT_INT0 (1 << 11) | ||
28 | #define LOONGSON_INT_BIT_INT1 (1 << 12) | ||
29 | |||
30 | /* | ||
31 | * The generic i8259_irq() make the kernel hang on booting. Since we cannot | ||
32 | * get the irq via the IRR directly, we access the ISR instead. | ||
33 | */ | ||
34 | int mach_i8259_irq(void) | ||
35 | { | ||
36 | int irq, isr; | ||
37 | |||
38 | irq = -1; | ||
39 | |||
40 | if ((LOONGSON_INTISR & LOONGSON_INTEN) & LOONGSON_INT_BIT_INT0) { | ||
41 | raw_spin_lock(&i8259A_lock); | ||
42 | isr = inb(PIC_MASTER_CMD) & | ||
43 | ~inb(PIC_MASTER_IMR) & ~(1 << PIC_CASCADE_IR); | ||
44 | if (!isr) | ||
45 | isr = (inb(PIC_SLAVE_CMD) & ~inb(PIC_SLAVE_IMR)) << 8; | ||
46 | irq = ffs(isr) - 1; | ||
47 | if (unlikely(irq == 7)) { | ||
48 | /* | ||
49 | * This may be a spurious interrupt. | ||
50 | * | ||
51 | * Read the interrupt status register (ISR). If the most | ||
52 | * significant bit is not set then there is no valid | ||
53 | * interrupt. | ||
54 | */ | ||
55 | outb(0x0B, PIC_MASTER_ISR); /* ISR register */ | ||
56 | if (~inb(PIC_MASTER_ISR) & 0x80) | ||
57 | irq = -1; | ||
58 | } | ||
59 | raw_spin_unlock(&i8259A_lock); | ||
60 | } | ||
61 | |||
62 | return irq; | ||
63 | } | ||
64 | EXPORT_SYMBOL(mach_i8259_irq); | ||
65 | |||
66 | static void i8259_irqdispatch(void) | ||
67 | { | ||
68 | int irq; | ||
69 | |||
70 | irq = mach_i8259_irq(); | ||
71 | if (irq >= 0) | ||
72 | do_IRQ(irq); | ||
73 | else | ||
74 | spurious_interrupt(); | ||
75 | } | ||
76 | |||
77 | void mach_irq_dispatch(unsigned int pending) | ||
78 | { | ||
79 | if (pending & CAUSEF_IP7) | ||
80 | do_IRQ(LOONGSON_TIMER_IRQ); | ||
81 | else if (pending & CAUSEF_IP6) { /* North Bridge, Perf counter */ | ||
82 | #if defined(CONFIG_OPROFILE) || defined(CONFIG_OPROFILE_MODULE) | ||
83 | do_IRQ(LOONGSON2_PERFCNT_IRQ); | ||
84 | #endif | ||
85 | bonito_irqdispatch(); | ||
86 | } else if (pending & CAUSEF_IP3) /* CPU UART */ | ||
87 | do_IRQ(LOONGSON_UART_IRQ); | ||
88 | else if (pending & CAUSEF_IP2) /* South Bridge */ | ||
89 | i8259_irqdispatch(); | ||
90 | else | ||
91 | spurious_interrupt(); | ||
92 | } | ||
93 | |||
94 | void __init set_irq_trigger_mode(void) | ||
95 | { | ||
96 | /* setup cs5536 as high level trigger */ | ||
97 | LOONGSON_INTPOL = LOONGSON_INT_BIT_INT0 | LOONGSON_INT_BIT_INT1; | ||
98 | LOONGSON_INTEDGE &= ~(LOONGSON_INT_BIT_INT0 | LOONGSON_INT_BIT_INT1); | ||
99 | } | ||
100 | |||
101 | static irqreturn_t ip6_action(int cpl, void *dev_id) | ||
102 | { | ||
103 | return IRQ_HANDLED; | ||
104 | } | ||
105 | |||
106 | struct irqaction ip6_irqaction = { | ||
107 | .handler = ip6_action, | ||
108 | .name = "cascade", | ||
109 | .flags = IRQF_SHARED, | ||
110 | }; | ||
111 | |||
112 | struct irqaction cascade_irqaction = { | ||
113 | .handler = no_action, | ||
114 | .name = "cascade", | ||
115 | }; | ||
116 | |||
117 | void __init mach_init_irq(void) | ||
118 | { | ||
119 | /* init all controller | ||
120 | * 0-15 ------> i8259 interrupt | ||
121 | * 16-23 ------> mips cpu interrupt | ||
122 | * 32-63 ------> bonito irq | ||
123 | */ | ||
124 | |||
125 | /* Sets the first-level interrupt dispatcher. */ | ||
126 | mips_cpu_irq_init(); | ||
127 | init_i8259_irqs(); | ||
128 | bonito_irq_init(); | ||
129 | |||
130 | /* setup north bridge irq (bonito) */ | ||
131 | setup_irq(LOONGSON_NORTH_BRIDGE_IRQ, &ip6_irqaction); | ||
132 | /* setup source bridge irq (i8259) */ | ||
133 | setup_irq(LOONGSON_SOUTH_BRIDGE_IRQ, &cascade_irqaction); | ||
134 | } | ||
diff --git a/arch/mips/loongson/lemote-2f/machtype.c b/arch/mips/loongson/lemote-2f/machtype.c new file mode 100644 index 000000000000..e860a2705c27 --- /dev/null +++ b/arch/mips/loongson/lemote-2f/machtype.c | |||
@@ -0,0 +1,45 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Lemote Inc. | ||
3 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify it | ||
6 | * under the terms of the GNU General Public License as published by the | ||
7 | * Free Software Foundation; either version 2 of the License, or (at your | ||
8 | * option) any later version. | ||
9 | */ | ||
10 | #include <asm/bootinfo.h> | ||
11 | |||
12 | #include <loongson.h> | ||
13 | |||
14 | void __init mach_prom_init_machtype(void) | ||
15 | { | ||
16 | /* We share the same kernel image file among Lemote 2F family | ||
17 | * of machines, and provide the machtype= kernel command line | ||
18 | * to users to indicate their machine, this command line will | ||
19 | * be passed by the latest PMON automatically. and fortunately, | ||
20 | * up to now, we can get the machine type from the PMON_VER= | ||
21 | * commandline directly except the NAS machine, In the old | ||
22 | * machines, this will help the users a lot. | ||
23 | * | ||
24 | * If no "machtype=" passed, get machine type from "PMON_VER=". | ||
25 | * PMON_VER=LM8089 Lemote 8.9'' netbook | ||
26 | * LM8101 Lemote 10.1'' netbook | ||
27 | * (The above two netbooks have the same kernel support) | ||
28 | * LM6XXX Lemote FuLoong(2F) box series | ||
29 | * LM9XXX Lemote LynLoong PC series | ||
30 | */ | ||
31 | if (strstr(arcs_cmdline, "PMON_VER=LM")) { | ||
32 | if (strstr(arcs_cmdline, "PMON_VER=LM8")) | ||
33 | mips_machtype = MACH_LEMOTE_YL2F89; | ||
34 | else if (strstr(arcs_cmdline, "PMON_VER=LM6")) | ||
35 | mips_machtype = MACH_LEMOTE_FL2F; | ||
36 | else if (strstr(arcs_cmdline, "PMON_VER=LM9")) | ||
37 | mips_machtype = MACH_LEMOTE_LL2F; | ||
38 | else | ||
39 | mips_machtype = MACH_LEMOTE_NAS; | ||
40 | |||
41 | strcat(arcs_cmdline, " machtype="); | ||
42 | strcat(arcs_cmdline, get_system_type()); | ||
43 | strcat(arcs_cmdline, " "); | ||
44 | } | ||
45 | } | ||
diff --git a/arch/mips/loongson/lemote-2f/pm.c b/arch/mips/loongson/lemote-2f/pm.c new file mode 100644 index 000000000000..cac4d382ea73 --- /dev/null +++ b/arch/mips/loongson/lemote-2f/pm.c | |||
@@ -0,0 +1,149 @@ | |||
1 | /* | ||
2 | * Lemote loongson2f family machines' specific suspend support | ||
3 | * | ||
4 | * Copyright (C) 2009 Lemote Inc. | ||
5 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | */ | ||
12 | |||
13 | #include <linux/suspend.h> | ||
14 | #include <linux/interrupt.h> | ||
15 | #include <linux/pm.h> | ||
16 | #include <linux/i8042.h> | ||
17 | #include <linux/module.h> | ||
18 | |||
19 | #include <asm/i8259.h> | ||
20 | #include <asm/mipsregs.h> | ||
21 | #include <asm/bootinfo.h> | ||
22 | |||
23 | #include <loongson.h> | ||
24 | |||
25 | #include <cs5536/cs5536_mfgpt.h> | ||
26 | #include "ec_kb3310b.h" | ||
27 | |||
28 | #define I8042_KBD_IRQ 1 | ||
29 | #define I8042_CTR_KBDINT 0x01 | ||
30 | #define I8042_CTR_KBDDIS 0x10 | ||
31 | |||
32 | static unsigned char i8042_ctr; | ||
33 | |||
34 | static int i8042_enable_kbd_port(void) | ||
35 | { | ||
36 | if (i8042_command(&i8042_ctr, I8042_CMD_CTL_RCTR)) { | ||
37 | pr_err("i8042.c: Can't read CTR while enabling i8042 kbd port." | ||
38 | "\n"); | ||
39 | return -EIO; | ||
40 | } | ||
41 | |||
42 | i8042_ctr &= ~I8042_CTR_KBDDIS; | ||
43 | i8042_ctr |= I8042_CTR_KBDINT; | ||
44 | |||
45 | if (i8042_command(&i8042_ctr, I8042_CMD_CTL_WCTR)) { | ||
46 | i8042_ctr &= ~I8042_CTR_KBDINT; | ||
47 | i8042_ctr |= I8042_CTR_KBDDIS; | ||
48 | pr_err("i8042.c: Failed to enable KBD port.\n"); | ||
49 | |||
50 | return -EIO; | ||
51 | } | ||
52 | |||
53 | return 0; | ||
54 | } | ||
55 | |||
56 | void setup_wakeup_events(void) | ||
57 | { | ||
58 | int irq_mask; | ||
59 | |||
60 | switch (mips_machtype) { | ||
61 | case MACH_LEMOTE_ML2F7: | ||
62 | case MACH_LEMOTE_YL2F89: | ||
63 | /* open the keyboard irq in i8259A */ | ||
64 | outb((0xff & ~(1 << I8042_KBD_IRQ)), PIC_MASTER_IMR); | ||
65 | irq_mask = inb(PIC_MASTER_IMR); | ||
66 | |||
67 | /* enable keyboard port */ | ||
68 | i8042_enable_kbd_port(); | ||
69 | |||
70 | /* Wakeup CPU via SCI lid open event */ | ||
71 | outb(irq_mask & ~(1 << PIC_CASCADE_IR), PIC_MASTER_IMR); | ||
72 | inb(PIC_MASTER_IMR); | ||
73 | outb(0xff & ~(1 << (SCI_IRQ_NUM - 8)), PIC_SLAVE_IMR); | ||
74 | inb(PIC_SLAVE_IMR); | ||
75 | |||
76 | break; | ||
77 | |||
78 | default: | ||
79 | break; | ||
80 | } | ||
81 | } | ||
82 | |||
83 | static struct delayed_work lid_task; | ||
84 | static int initialized; | ||
85 | /* yeeloong_report_lid_status will be implemented in yeeloong_laptop.c */ | ||
86 | sci_handler yeeloong_report_lid_status; | ||
87 | EXPORT_SYMBOL(yeeloong_report_lid_status); | ||
88 | static void yeeloong_lid_update_task(struct work_struct *work) | ||
89 | { | ||
90 | if (yeeloong_report_lid_status) | ||
91 | yeeloong_report_lid_status(BIT_LID_DETECT_ON); | ||
92 | } | ||
93 | |||
94 | int wakeup_loongson(void) | ||
95 | { | ||
96 | int irq; | ||
97 | |||
98 | /* query the interrupt number */ | ||
99 | irq = mach_i8259_irq(); | ||
100 | if (irq < 0) | ||
101 | return 0; | ||
102 | |||
103 | printk(KERN_INFO "%s: irq = %d\n", __func__, irq); | ||
104 | |||
105 | if (irq == I8042_KBD_IRQ) | ||
106 | return 1; | ||
107 | else if (irq == SCI_IRQ_NUM) { | ||
108 | int ret, sci_event; | ||
109 | /* query the event number */ | ||
110 | ret = ec_query_seq(CMD_GET_EVENT_NUM); | ||
111 | if (ret < 0) | ||
112 | return 0; | ||
113 | sci_event = ec_get_event_num(); | ||
114 | if (sci_event < 0) | ||
115 | return 0; | ||
116 | if (sci_event == EVENT_LID) { | ||
117 | int lid_status; | ||
118 | /* check the LID status */ | ||
119 | lid_status = ec_read(REG_LID_DETECT); | ||
120 | /* wakeup cpu when people open the LID */ | ||
121 | if (lid_status == BIT_LID_DETECT_ON) { | ||
122 | /* If we call it directly here, the WARNING | ||
123 | * will be sent out by getnstimeofday | ||
124 | * via "WARN_ON(timekeeping_suspended);" | ||
125 | * because we can not schedule in suspend mode. | ||
126 | */ | ||
127 | if (initialized == 0) { | ||
128 | INIT_DELAYED_WORK(&lid_task, | ||
129 | yeeloong_lid_update_task); | ||
130 | initialized = 1; | ||
131 | } | ||
132 | schedule_delayed_work(&lid_task, 1); | ||
133 | return 1; | ||
134 | } | ||
135 | } | ||
136 | } | ||
137 | |||
138 | return 0; | ||
139 | } | ||
140 | |||
141 | void __weak mach_suspend(void) | ||
142 | { | ||
143 | disable_mfgpt0_counter(); | ||
144 | } | ||
145 | |||
146 | void __weak mach_resume(void) | ||
147 | { | ||
148 | enable_mfgpt0_counter(); | ||
149 | } | ||
diff --git a/arch/mips/loongson/lemote-2f/reset.c b/arch/mips/loongson/lemote-2f/reset.c new file mode 100644 index 000000000000..36020a07e180 --- /dev/null +++ b/arch/mips/loongson/lemote-2f/reset.c | |||
@@ -0,0 +1,159 @@ | |||
1 | /* Board-specific reboot/shutdown routines | ||
2 | * | ||
3 | * Copyright (c) 2009 Philippe Vachon <philippe@cowpig.ca> | ||
4 | * | ||
5 | * Copyright (C) 2009 Lemote Inc. | ||
6 | * Author: Wu Zhangjin, wuzhangjin@gmail.com | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify it | ||
9 | * under the terms of the GNU General Public License as published by the | ||
10 | * Free Software Foundation; either version 2 of the License, or (at your | ||
11 | * option) any later version. | ||
12 | */ | ||
13 | |||
14 | #include <linux/io.h> | ||
15 | #include <linux/delay.h> | ||
16 | #include <linux/types.h> | ||
17 | |||
18 | #include <asm/bootinfo.h> | ||
19 | |||
20 | #include <loongson.h> | ||
21 | |||
22 | #include <cs5536/cs5536.h> | ||
23 | #include "ec_kb3310b.h" | ||
24 | |||
25 | static void reset_cpu(void) | ||
26 | { | ||
27 | /* | ||
28 | * reset cpu to full speed, this is needed when enabling cpu frequency | ||
29 | * scalling | ||
30 | */ | ||
31 | LOONGSON_CHIPCFG0 |= 0x7; | ||
32 | } | ||
33 | |||
34 | /* reset support for fuloong2f */ | ||
35 | |||
36 | static void fl2f_reboot(void) | ||
37 | { | ||
38 | reset_cpu(); | ||
39 | |||
40 | /* send a reset signal to south bridge. | ||
41 | * | ||
42 | * NOTE: if enable "Power Management" in kernel, rtl8169 will not reset | ||
43 | * normally with this reset operation and it will not work in PMON, but | ||
44 | * you can type halt command and then reboot, seems the hardware reset | ||
45 | * logic not work normally. | ||
46 | */ | ||
47 | { | ||
48 | u32 hi, lo; | ||
49 | _rdmsr(DIVIL_MSR_REG(DIVIL_SOFT_RESET), &hi, &lo); | ||
50 | lo |= 0x00000001; | ||
51 | _wrmsr(DIVIL_MSR_REG(DIVIL_SOFT_RESET), hi, lo); | ||
52 | } | ||
53 | } | ||
54 | |||
55 | static void fl2f_shutdown(void) | ||
56 | { | ||
57 | u32 hi, lo, val; | ||
58 | int gpio_base; | ||
59 | |||
60 | /* get gpio base */ | ||
61 | _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_GPIO), &hi, &lo); | ||
62 | gpio_base = lo & 0xff00; | ||
63 | |||
64 | /* make cs5536 gpio13 output enable */ | ||
65 | val = inl(gpio_base + GPIOL_OUT_EN); | ||
66 | val &= ~(1 << (16 + 13)); | ||
67 | val |= (1 << 13); | ||
68 | outl(val, gpio_base + GPIOL_OUT_EN); | ||
69 | mmiowb(); | ||
70 | /* make cs5536 gpio13 output low level voltage. */ | ||
71 | val = inl(gpio_base + GPIOL_OUT_VAL) & ~(1 << (13)); | ||
72 | val |= (1 << (16 + 13)); | ||
73 | outl(val, gpio_base + GPIOL_OUT_VAL); | ||
74 | mmiowb(); | ||
75 | } | ||
76 | |||
77 | /* reset support for yeeloong2f and mengloong2f notebook */ | ||
78 | |||
79 | void ml2f_reboot(void) | ||
80 | { | ||
81 | reset_cpu(); | ||
82 | |||
83 | /* sending an reset signal to EC(embedded controller) */ | ||
84 | ec_write(REG_RESET, BIT_RESET_ON); | ||
85 | } | ||
86 | |||
87 | #define yl2f89_reboot ml2f_reboot | ||
88 | |||
89 | /* menglong(7inches) laptop has different shutdown logic from 8.9inches */ | ||
90 | #define EC_SHUTDOWN_IO_PORT_HIGH 0xff2d | ||
91 | #define EC_SHUTDOWN_IO_PORT_LOW 0xff2e | ||
92 | #define EC_SHUTDOWN_IO_PORT_DATA 0xff2f | ||
93 | #define REG_SHUTDOWN_HIGH 0xFC | ||
94 | #define REG_SHUTDOWN_LOW 0x29 | ||
95 | #define BIT_SHUTDOWN_ON (1 << 1) | ||
96 | |||
97 | static void ml2f_shutdown(void) | ||
98 | { | ||
99 | u8 val; | ||
100 | u64 i; | ||
101 | |||
102 | outb(REG_SHUTDOWN_HIGH, EC_SHUTDOWN_IO_PORT_HIGH); | ||
103 | outb(REG_SHUTDOWN_LOW, EC_SHUTDOWN_IO_PORT_LOW); | ||
104 | mmiowb(); | ||
105 | val = inb(EC_SHUTDOWN_IO_PORT_DATA); | ||
106 | outb(val & (~BIT_SHUTDOWN_ON), EC_SHUTDOWN_IO_PORT_DATA); | ||
107 | mmiowb(); | ||
108 | /* need enough wait here... how many microseconds needs? */ | ||
109 | for (i = 0; i < 0x10000; i++) | ||
110 | delay(); | ||
111 | outb(val | BIT_SHUTDOWN_ON, EC_SHUTDOWN_IO_PORT_DATA); | ||
112 | mmiowb(); | ||
113 | } | ||
114 | |||
115 | static void yl2f89_shutdown(void) | ||
116 | { | ||
117 | /* cpu-gpio0 output low */ | ||
118 | LOONGSON_GPIODATA &= ~0x00000001; | ||
119 | /* cpu-gpio0 as output */ | ||
120 | LOONGSON_GPIOIE &= ~0x00000001; | ||
121 | } | ||
122 | |||
123 | void mach_prepare_reboot(void) | ||
124 | { | ||
125 | switch (mips_machtype) { | ||
126 | case MACH_LEMOTE_FL2F: | ||
127 | case MACH_LEMOTE_NAS: | ||
128 | case MACH_LEMOTE_LL2F: | ||
129 | fl2f_reboot(); | ||
130 | break; | ||
131 | case MACH_LEMOTE_ML2F7: | ||
132 | ml2f_reboot(); | ||
133 | break; | ||
134 | case MACH_LEMOTE_YL2F89: | ||
135 | yl2f89_reboot(); | ||
136 | break; | ||
137 | default: | ||
138 | break; | ||
139 | } | ||
140 | } | ||
141 | |||
142 | void mach_prepare_shutdown(void) | ||
143 | { | ||
144 | switch (mips_machtype) { | ||
145 | case MACH_LEMOTE_FL2F: | ||
146 | case MACH_LEMOTE_NAS: | ||
147 | case MACH_LEMOTE_LL2F: | ||
148 | fl2f_shutdown(); | ||
149 | break; | ||
150 | case MACH_LEMOTE_ML2F7: | ||
151 | ml2f_shutdown(); | ||
152 | break; | ||
153 | case MACH_LEMOTE_YL2F89: | ||
154 | yl2f89_shutdown(); | ||
155 | break; | ||
156 | default: | ||
157 | break; | ||
158 | } | ||
159 | } | ||
diff --git a/arch/mips/math-emu/cp1emu.c b/arch/mips/math-emu/cp1emu.c index 454b53924490..f2338d1c0b48 100644 --- a/arch/mips/math-emu/cp1emu.c +++ b/arch/mips/math-emu/cp1emu.c | |||
@@ -35,6 +35,7 @@ | |||
35 | * better performance by compiling with -msoft-float! | 35 | * better performance by compiling with -msoft-float! |
36 | */ | 36 | */ |
37 | #include <linux/sched.h> | 37 | #include <linux/sched.h> |
38 | #include <linux/module.h> | ||
38 | #include <linux/debugfs.h> | 39 | #include <linux/debugfs.h> |
39 | 40 | ||
40 | #include <asm/inst.h> | 41 | #include <asm/inst.h> |
@@ -68,13 +69,18 @@ static int fpux_emu(struct pt_regs *, | |||
68 | 69 | ||
69 | /* Further private data for which no space exists in mips_fpu_struct */ | 70 | /* Further private data for which no space exists in mips_fpu_struct */ |
70 | 71 | ||
71 | struct mips_fpu_emulator_stats fpuemustats; | 72 | #ifdef CONFIG_DEBUG_FS |
73 | DEFINE_PER_CPU(struct mips_fpu_emulator_stats, fpuemustats); | ||
74 | #endif | ||
72 | 75 | ||
73 | /* Control registers */ | 76 | /* Control registers */ |
74 | 77 | ||
75 | #define FPCREG_RID 0 /* $0 = revision id */ | 78 | #define FPCREG_RID 0 /* $0 = revision id */ |
76 | #define FPCREG_CSR 31 /* $31 = csr */ | 79 | #define FPCREG_CSR 31 /* $31 = csr */ |
77 | 80 | ||
81 | /* Determine rounding mode from the RM bits of the FCSR */ | ||
82 | #define modeindex(v) ((v) & FPU_CSR_RM) | ||
83 | |||
78 | /* Convert Mips rounding mode (0..3) to IEEE library modes. */ | 84 | /* Convert Mips rounding mode (0..3) to IEEE library modes. */ |
79 | static const unsigned char ieee_rm[4] = { | 85 | static const unsigned char ieee_rm[4] = { |
80 | [FPU_CSR_RN] = IEEE754_RN, | 86 | [FPU_CSR_RN] = IEEE754_RN, |
@@ -209,7 +215,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
209 | unsigned int cond; | 215 | unsigned int cond; |
210 | 216 | ||
211 | if (get_user(ir, (mips_instruction __user *) xcp->cp0_epc)) { | 217 | if (get_user(ir, (mips_instruction __user *) xcp->cp0_epc)) { |
212 | fpuemustats.errors++; | 218 | MIPS_FPU_EMU_INC_STATS(errors); |
213 | return SIGBUS; | 219 | return SIGBUS; |
214 | } | 220 | } |
215 | 221 | ||
@@ -240,7 +246,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
240 | return SIGILL; | 246 | return SIGILL; |
241 | } | 247 | } |
242 | if (get_user(ir, (mips_instruction __user *) emulpc)) { | 248 | if (get_user(ir, (mips_instruction __user *) emulpc)) { |
243 | fpuemustats.errors++; | 249 | MIPS_FPU_EMU_INC_STATS(errors); |
244 | return SIGBUS; | 250 | return SIGBUS; |
245 | } | 251 | } |
246 | /* __compute_return_epc() will have updated cp0_epc */ | 252 | /* __compute_return_epc() will have updated cp0_epc */ |
@@ -253,16 +259,16 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
253 | } | 259 | } |
254 | 260 | ||
255 | emul: | 261 | emul: |
256 | fpuemustats.emulated++; | 262 | MIPS_FPU_EMU_INC_STATS(emulated); |
257 | switch (MIPSInst_OPCODE(ir)) { | 263 | switch (MIPSInst_OPCODE(ir)) { |
258 | case ldc1_op:{ | 264 | case ldc1_op:{ |
259 | u64 __user *va = (u64 __user *) (xcp->regs[MIPSInst_RS(ir)] + | 265 | u64 __user *va = (u64 __user *) (xcp->regs[MIPSInst_RS(ir)] + |
260 | MIPSInst_SIMM(ir)); | 266 | MIPSInst_SIMM(ir)); |
261 | u64 val; | 267 | u64 val; |
262 | 268 | ||
263 | fpuemustats.loads++; | 269 | MIPS_FPU_EMU_INC_STATS(loads); |
264 | if (get_user(val, va)) { | 270 | if (get_user(val, va)) { |
265 | fpuemustats.errors++; | 271 | MIPS_FPU_EMU_INC_STATS(errors); |
266 | return SIGBUS; | 272 | return SIGBUS; |
267 | } | 273 | } |
268 | DITOREG(val, MIPSInst_RT(ir)); | 274 | DITOREG(val, MIPSInst_RT(ir)); |
@@ -274,10 +280,10 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
274 | MIPSInst_SIMM(ir)); | 280 | MIPSInst_SIMM(ir)); |
275 | u64 val; | 281 | u64 val; |
276 | 282 | ||
277 | fpuemustats.stores++; | 283 | MIPS_FPU_EMU_INC_STATS(stores); |
278 | DIFROMREG(val, MIPSInst_RT(ir)); | 284 | DIFROMREG(val, MIPSInst_RT(ir)); |
279 | if (put_user(val, va)) { | 285 | if (put_user(val, va)) { |
280 | fpuemustats.errors++; | 286 | MIPS_FPU_EMU_INC_STATS(errors); |
281 | return SIGBUS; | 287 | return SIGBUS; |
282 | } | 288 | } |
283 | break; | 289 | break; |
@@ -288,9 +294,9 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
288 | MIPSInst_SIMM(ir)); | 294 | MIPSInst_SIMM(ir)); |
289 | u32 val; | 295 | u32 val; |
290 | 296 | ||
291 | fpuemustats.loads++; | 297 | MIPS_FPU_EMU_INC_STATS(loads); |
292 | if (get_user(val, va)) { | 298 | if (get_user(val, va)) { |
293 | fpuemustats.errors++; | 299 | MIPS_FPU_EMU_INC_STATS(errors); |
294 | return SIGBUS; | 300 | return SIGBUS; |
295 | } | 301 | } |
296 | SITOREG(val, MIPSInst_RT(ir)); | 302 | SITOREG(val, MIPSInst_RT(ir)); |
@@ -302,10 +308,10 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
302 | MIPSInst_SIMM(ir)); | 308 | MIPSInst_SIMM(ir)); |
303 | u32 val; | 309 | u32 val; |
304 | 310 | ||
305 | fpuemustats.stores++; | 311 | MIPS_FPU_EMU_INC_STATS(stores); |
306 | SIFROMREG(val, MIPSInst_RT(ir)); | 312 | SIFROMREG(val, MIPSInst_RT(ir)); |
307 | if (put_user(val, va)) { | 313 | if (put_user(val, va)) { |
308 | fpuemustats.errors++; | 314 | MIPS_FPU_EMU_INC_STATS(errors); |
309 | return SIGBUS; | 315 | return SIGBUS; |
310 | } | 316 | } |
311 | break; | 317 | break; |
@@ -381,10 +387,14 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
381 | (void *) (xcp->cp0_epc), | 387 | (void *) (xcp->cp0_epc), |
382 | MIPSInst_RT(ir), value); | 388 | MIPSInst_RT(ir), value); |
383 | #endif | 389 | #endif |
384 | value &= (FPU_CSR_FLUSH | FPU_CSR_ALL_E | FPU_CSR_ALL_S | 0x03); | 390 | |
385 | ctx->fcr31 &= ~(FPU_CSR_FLUSH | FPU_CSR_ALL_E | FPU_CSR_ALL_S | 0x03); | 391 | /* |
386 | /* convert to ieee library modes */ | 392 | * Don't write reserved bits, |
387 | ctx->fcr31 |= (value & ~0x3) | ieee_rm[value & 0x3]; | 393 | * and convert to ieee library modes |
394 | */ | ||
395 | ctx->fcr31 = (value & | ||
396 | ~(FPU_CSR_RSVD | FPU_CSR_RM)) | | ||
397 | ieee_rm[modeindex(value)]; | ||
388 | } | 398 | } |
389 | if ((ctx->fcr31 >> 5) & ctx->fcr31 & FPU_CSR_ALL_E) { | 399 | if ((ctx->fcr31 >> 5) & ctx->fcr31 & FPU_CSR_ALL_E) { |
390 | return SIGFPE; | 400 | return SIGFPE; |
@@ -429,7 +439,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx) | |||
429 | 439 | ||
430 | if (get_user(ir, | 440 | if (get_user(ir, |
431 | (mips_instruction __user *) xcp->cp0_epc)) { | 441 | (mips_instruction __user *) xcp->cp0_epc)) { |
432 | fpuemustats.errors++; | 442 | MIPS_FPU_EMU_INC_STATS(errors); |
433 | return SIGBUS; | 443 | return SIGBUS; |
434 | } | 444 | } |
435 | 445 | ||
@@ -595,7 +605,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
595 | { | 605 | { |
596 | unsigned rcsr = 0; /* resulting csr */ | 606 | unsigned rcsr = 0; /* resulting csr */ |
597 | 607 | ||
598 | fpuemustats.cp1xops++; | 608 | MIPS_FPU_EMU_INC_STATS(cp1xops); |
599 | 609 | ||
600 | switch (MIPSInst_FMA_FFMT(ir)) { | 610 | switch (MIPSInst_FMA_FFMT(ir)) { |
601 | case s_fmt:{ /* 0 */ | 611 | case s_fmt:{ /* 0 */ |
@@ -610,9 +620,9 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
610 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + | 620 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
611 | xcp->regs[MIPSInst_FT(ir)]); | 621 | xcp->regs[MIPSInst_FT(ir)]); |
612 | 622 | ||
613 | fpuemustats.loads++; | 623 | MIPS_FPU_EMU_INC_STATS(loads); |
614 | if (get_user(val, va)) { | 624 | if (get_user(val, va)) { |
615 | fpuemustats.errors++; | 625 | MIPS_FPU_EMU_INC_STATS(errors); |
616 | return SIGBUS; | 626 | return SIGBUS; |
617 | } | 627 | } |
618 | SITOREG(val, MIPSInst_FD(ir)); | 628 | SITOREG(val, MIPSInst_FD(ir)); |
@@ -622,11 +632,11 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
622 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + | 632 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
623 | xcp->regs[MIPSInst_FT(ir)]); | 633 | xcp->regs[MIPSInst_FT(ir)]); |
624 | 634 | ||
625 | fpuemustats.stores++; | 635 | MIPS_FPU_EMU_INC_STATS(stores); |
626 | 636 | ||
627 | SIFROMREG(val, MIPSInst_FS(ir)); | 637 | SIFROMREG(val, MIPSInst_FS(ir)); |
628 | if (put_user(val, va)) { | 638 | if (put_user(val, va)) { |
629 | fpuemustats.errors++; | 639 | MIPS_FPU_EMU_INC_STATS(errors); |
630 | return SIGBUS; | 640 | return SIGBUS; |
631 | } | 641 | } |
632 | break; | 642 | break; |
@@ -687,9 +697,9 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
687 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + | 697 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
688 | xcp->regs[MIPSInst_FT(ir)]); | 698 | xcp->regs[MIPSInst_FT(ir)]); |
689 | 699 | ||
690 | fpuemustats.loads++; | 700 | MIPS_FPU_EMU_INC_STATS(loads); |
691 | if (get_user(val, va)) { | 701 | if (get_user(val, va)) { |
692 | fpuemustats.errors++; | 702 | MIPS_FPU_EMU_INC_STATS(errors); |
693 | return SIGBUS; | 703 | return SIGBUS; |
694 | } | 704 | } |
695 | DITOREG(val, MIPSInst_FD(ir)); | 705 | DITOREG(val, MIPSInst_FD(ir)); |
@@ -699,10 +709,10 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
699 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + | 709 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
700 | xcp->regs[MIPSInst_FT(ir)]); | 710 | xcp->regs[MIPSInst_FT(ir)]); |
701 | 711 | ||
702 | fpuemustats.stores++; | 712 | MIPS_FPU_EMU_INC_STATS(stores); |
703 | DIFROMREG(val, MIPSInst_FS(ir)); | 713 | DIFROMREG(val, MIPSInst_FS(ir)); |
704 | if (put_user(val, va)) { | 714 | if (put_user(val, va)) { |
705 | fpuemustats.errors++; | 715 | MIPS_FPU_EMU_INC_STATS(errors); |
706 | return SIGBUS; | 716 | return SIGBUS; |
707 | } | 717 | } |
708 | break; | 718 | break; |
@@ -769,7 +779,7 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
769 | #endif | 779 | #endif |
770 | } rv; /* resulting value */ | 780 | } rv; /* resulting value */ |
771 | 781 | ||
772 | fpuemustats.cp1ops++; | 782 | MIPS_FPU_EMU_INC_STATS(cp1ops); |
773 | switch (rfmt = (MIPSInst_FFMT(ir) & 0xf)) { | 783 | switch (rfmt = (MIPSInst_FFMT(ir) & 0xf)) { |
774 | case s_fmt:{ /* 0 */ | 784 | case s_fmt:{ /* 0 */ |
775 | union { | 785 | union { |
@@ -1240,7 +1250,7 @@ int fpu_emulator_cop1Handler(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
1240 | prevepc = xcp->cp0_epc; | 1250 | prevepc = xcp->cp0_epc; |
1241 | 1251 | ||
1242 | if (get_user(insn, (mips_instruction __user *) xcp->cp0_epc)) { | 1252 | if (get_user(insn, (mips_instruction __user *) xcp->cp0_epc)) { |
1243 | fpuemustats.errors++; | 1253 | MIPS_FPU_EMU_INC_STATS(errors); |
1244 | return SIGBUS; | 1254 | return SIGBUS; |
1245 | } | 1255 | } |
1246 | if (insn == 0) | 1256 | if (insn == 0) |
@@ -1276,33 +1286,50 @@ int fpu_emulator_cop1Handler(struct pt_regs *xcp, struct mips_fpu_struct *ctx, | |||
1276 | } | 1286 | } |
1277 | 1287 | ||
1278 | #ifdef CONFIG_DEBUG_FS | 1288 | #ifdef CONFIG_DEBUG_FS |
1289 | |||
1290 | static int fpuemu_stat_get(void *data, u64 *val) | ||
1291 | { | ||
1292 | int cpu; | ||
1293 | unsigned long sum = 0; | ||
1294 | for_each_online_cpu(cpu) { | ||
1295 | struct mips_fpu_emulator_stats *ps; | ||
1296 | local_t *pv; | ||
1297 | ps = &per_cpu(fpuemustats, cpu); | ||
1298 | pv = (void *)ps + (unsigned long)data; | ||
1299 | sum += local_read(pv); | ||
1300 | } | ||
1301 | *val = sum; | ||
1302 | return 0; | ||
1303 | } | ||
1304 | DEFINE_SIMPLE_ATTRIBUTE(fops_fpuemu_stat, fpuemu_stat_get, NULL, "%llu\n"); | ||
1305 | |||
1279 | extern struct dentry *mips_debugfs_dir; | 1306 | extern struct dentry *mips_debugfs_dir; |
1280 | static int __init debugfs_fpuemu(void) | 1307 | static int __init debugfs_fpuemu(void) |
1281 | { | 1308 | { |
1282 | struct dentry *d, *dir; | 1309 | struct dentry *d, *dir; |
1283 | int i; | ||
1284 | static struct { | ||
1285 | const char *name; | ||
1286 | unsigned int *v; | ||
1287 | } vars[] __initdata = { | ||
1288 | { "emulated", &fpuemustats.emulated }, | ||
1289 | { "loads", &fpuemustats.loads }, | ||
1290 | { "stores", &fpuemustats.stores }, | ||
1291 | { "cp1ops", &fpuemustats.cp1ops }, | ||
1292 | { "cp1xops", &fpuemustats.cp1xops }, | ||
1293 | { "errors", &fpuemustats.errors }, | ||
1294 | }; | ||
1295 | 1310 | ||
1296 | if (!mips_debugfs_dir) | 1311 | if (!mips_debugfs_dir) |
1297 | return -ENODEV; | 1312 | return -ENODEV; |
1298 | dir = debugfs_create_dir("fpuemustats", mips_debugfs_dir); | 1313 | dir = debugfs_create_dir("fpuemustats", mips_debugfs_dir); |
1299 | if (!dir) | 1314 | if (!dir) |
1300 | return -ENOMEM; | 1315 | return -ENOMEM; |
1301 | for (i = 0; i < ARRAY_SIZE(vars); i++) { | 1316 | |
1302 | d = debugfs_create_u32(vars[i].name, S_IRUGO, dir, vars[i].v); | 1317 | #define FPU_STAT_CREATE(M) \ |
1303 | if (!d) | 1318 | do { \ |
1304 | return -ENOMEM; | 1319 | d = debugfs_create_file(#M , S_IRUGO, dir, \ |
1305 | } | 1320 | (void *)offsetof(struct mips_fpu_emulator_stats, M), \ |
1321 | &fops_fpuemu_stat); \ | ||
1322 | if (!d) \ | ||
1323 | return -ENOMEM; \ | ||
1324 | } while (0) | ||
1325 | |||
1326 | FPU_STAT_CREATE(emulated); | ||
1327 | FPU_STAT_CREATE(loads); | ||
1328 | FPU_STAT_CREATE(stores); | ||
1329 | FPU_STAT_CREATE(cp1ops); | ||
1330 | FPU_STAT_CREATE(cp1xops); | ||
1331 | FPU_STAT_CREATE(errors); | ||
1332 | |||
1306 | return 0; | 1333 | return 0; |
1307 | } | 1334 | } |
1308 | __initcall(debugfs_fpuemu); | 1335 | __initcall(debugfs_fpuemu); |
diff --git a/arch/mips/math-emu/dp_sub.c b/arch/mips/math-emu/dp_sub.c index b30c5b1f1a2c..a2127d685a0d 100644 --- a/arch/mips/math-emu/dp_sub.c +++ b/arch/mips/math-emu/dp_sub.c | |||
@@ -110,7 +110,7 @@ ieee754dp ieee754dp_sub(ieee754dp x, ieee754dp y) | |||
110 | 110 | ||
111 | case CLPAIR(IEEE754_CLASS_DNORM, IEEE754_CLASS_DNORM): | 111 | case CLPAIR(IEEE754_CLASS_DNORM, IEEE754_CLASS_DNORM): |
112 | DPDNORMX; | 112 | DPDNORMX; |
113 | /* FAAL THOROUGH */ | 113 | /* FALL THROUGH */ |
114 | 114 | ||
115 | case CLPAIR(IEEE754_CLASS_NORM, IEEE754_CLASS_DNORM): | 115 | case CLPAIR(IEEE754_CLASS_NORM, IEEE754_CLASS_DNORM): |
116 | /* normalize ym,ye */ | 116 | /* normalize ym,ye */ |
diff --git a/arch/mips/math-emu/dsemul.c b/arch/mips/math-emu/dsemul.c index df7b9d928efc..36d975ae08f8 100644 --- a/arch/mips/math-emu/dsemul.c +++ b/arch/mips/math-emu/dsemul.c | |||
@@ -98,7 +98,7 @@ int mips_dsemul(struct pt_regs *regs, mips_instruction ir, unsigned long cpc) | |||
98 | err |= __put_user(cpc, &fr->epc); | 98 | err |= __put_user(cpc, &fr->epc); |
99 | 99 | ||
100 | if (unlikely(err)) { | 100 | if (unlikely(err)) { |
101 | fpuemustats.errors++; | 101 | MIPS_FPU_EMU_INC_STATS(errors); |
102 | return SIGBUS; | 102 | return SIGBUS; |
103 | } | 103 | } |
104 | 104 | ||
@@ -136,7 +136,7 @@ int do_dsemulret(struct pt_regs *xcp) | |||
136 | err |= __get_user(cookie, &fr->cookie); | 136 | err |= __get_user(cookie, &fr->cookie); |
137 | 137 | ||
138 | if (unlikely(err || (insn != BREAK_MATH) || (cookie != BD_COOKIE))) { | 138 | if (unlikely(err || (insn != BREAK_MATH) || (cookie != BD_COOKIE))) { |
139 | fpuemustats.errors++; | 139 | MIPS_FPU_EMU_INC_STATS(errors); |
140 | return 0; | 140 | return 0; |
141 | } | 141 | } |
142 | 142 | ||
diff --git a/arch/mips/math-emu/ieee754d.c b/arch/mips/math-emu/ieee754d.c index 7e900f30987e..a0325337b76c 100644 --- a/arch/mips/math-emu/ieee754d.c +++ b/arch/mips/math-emu/ieee754d.c | |||
@@ -135,4 +135,3 @@ ieee754sp ieee754sp_dump(char *m, ieee754sp x) | |||
135 | printk("\n"); | 135 | printk("\n"); |
136 | return x; | 136 | return x; |
137 | } | 137 | } |
138 | |||
diff --git a/arch/mips/math-emu/ieee754dp.c b/arch/mips/math-emu/ieee754dp.c index 6d2d89f32472..2f22fd7fd784 100644 --- a/arch/mips/math-emu/ieee754dp.c +++ b/arch/mips/math-emu/ieee754dp.c | |||
@@ -148,7 +148,6 @@ ieee754dp ieee754dp_format(int sn, int xe, u64 xm) | |||
148 | 148 | ||
149 | switch(ieee754_csr.rm) { | 149 | switch(ieee754_csr.rm) { |
150 | case IEEE754_RN: | 150 | case IEEE754_RN: |
151 | return ieee754dp_zero(sn); | ||
152 | case IEEE754_RZ: | 151 | case IEEE754_RZ: |
153 | return ieee754dp_zero(sn); | 152 | return ieee754dp_zero(sn); |
154 | case IEEE754_RU: /* toward +Infinity */ | 153 | case IEEE754_RU: /* toward +Infinity */ |
diff --git a/arch/mips/math-emu/ieee754sp.c b/arch/mips/math-emu/ieee754sp.c index 463534045ab6..a19b72185ab9 100644 --- a/arch/mips/math-emu/ieee754sp.c +++ b/arch/mips/math-emu/ieee754sp.c | |||
@@ -149,7 +149,6 @@ ieee754sp ieee754sp_format(int sn, int xe, unsigned xm) | |||
149 | 149 | ||
150 | switch(ieee754_csr.rm) { | 150 | switch(ieee754_csr.rm) { |
151 | case IEEE754_RN: | 151 | case IEEE754_RN: |
152 | return ieee754sp_zero(sn); | ||
153 | case IEEE754_RZ: | 152 | case IEEE754_RZ: |
154 | return ieee754sp_zero(sn); | 153 | return ieee754sp_zero(sn); |
155 | case IEEE754_RU: /* toward +Infinity */ | 154 | case IEEE754_RU: /* toward +Infinity */ |
diff --git a/arch/mips/math-emu/ieee754xcpt.c b/arch/mips/math-emu/ieee754xcpt.c index 7d8ef8965067..e02423a0ae23 100644 --- a/arch/mips/math-emu/ieee754xcpt.c +++ b/arch/mips/math-emu/ieee754xcpt.c | |||
@@ -46,4 +46,3 @@ void ieee754_xcpt(struct ieee754xctx *xcp) | |||
46 | printk(KERN_DEBUG "floating point exception in \"%s\", type=%s\n", | 46 | printk(KERN_DEBUG "floating point exception in \"%s\", type=%s\n", |
47 | xcp->op, rtnames[xcp->rt]); | 47 | xcp->op, rtnames[xcp->rt]); |
48 | } | 48 | } |
49 | |||
diff --git a/arch/mips/mipssim/Makefile b/arch/mips/mipssim/Makefile index 57f43c1c7882..41b96571315e 100644 --- a/arch/mips/mipssim/Makefile +++ b/arch/mips/mipssim/Makefile | |||
@@ -17,8 +17,7 @@ | |||
17 | # 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | 17 | # 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. |
18 | # | 18 | # |
19 | 19 | ||
20 | obj-y := sim_platform.o sim_setup.o sim_mem.o sim_time.o sim_int.o \ | 20 | obj-y := sim_platform.o sim_setup.o sim_mem.o sim_time.o sim_int.o |
21 | sim_cmdline.o | ||
22 | 21 | ||
23 | obj-$(CONFIG_EARLY_PRINTK) += sim_console.o | 22 | obj-$(CONFIG_EARLY_PRINTK) += sim_console.o |
24 | obj-$(CONFIG_MIPS_MT_SMTC) += sim_smtc.o | 23 | obj-$(CONFIG_MIPS_MT_SMTC) += sim_smtc.o |
diff --git a/arch/mips/mipssim/sim_int.c b/arch/mips/mipssim/sim_int.c index 46067ad542dc..5c779be6f082 100644 --- a/arch/mips/mipssim/sim_int.c +++ b/arch/mips/mipssim/sim_int.c | |||
@@ -17,7 +17,6 @@ | |||
17 | */ | 17 | */ |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/sched.h> | 19 | #include <linux/sched.h> |
20 | #include <linux/slab.h> | ||
21 | #include <linux/interrupt.h> | 20 | #include <linux/interrupt.h> |
22 | #include <linux/kernel_stat.h> | 21 | #include <linux/kernel_stat.h> |
23 | #include <asm/mips-boards/simint.h> | 22 | #include <asm/mips-boards/simint.h> |
diff --git a/arch/mips/mipssim/sim_setup.c b/arch/mips/mipssim/sim_setup.c index 2877675c5f0d..55f22a3afe61 100644 --- a/arch/mips/mipssim/sim_setup.c +++ b/arch/mips/mipssim/sim_setup.c | |||
@@ -49,9 +49,6 @@ void __init plat_mem_setup(void) | |||
49 | set_io_port_base(0xbfd00000); | 49 | set_io_port_base(0xbfd00000); |
50 | 50 | ||
51 | serial_init(); | 51 | serial_init(); |
52 | |||
53 | pr_info("Linux started...\n"); | ||
54 | |||
55 | } | 52 | } |
56 | 53 | ||
57 | extern struct plat_smp_ops ssmtc_smp_ops; | 54 | extern struct plat_smp_ops ssmtc_smp_ops; |
@@ -60,8 +57,6 @@ void __init prom_init(void) | |||
60 | { | 57 | { |
61 | set_io_port_base(0xbfd00000); | 58 | set_io_port_base(0xbfd00000); |
62 | 59 | ||
63 | pr_info("\nLINUX started...\n"); | ||
64 | prom_init_cmdline(); | ||
65 | prom_meminit(); | 60 | prom_meminit(); |
66 | 61 | ||
67 | #ifdef CONFIG_MIPS_MT_SMP | 62 | #ifdef CONFIG_MIPS_MT_SMP |
diff --git a/arch/mips/mm/c-octeon.c b/arch/mips/mm/c-octeon.c index 94e05e5733c1..0f9c488044d1 100644 --- a/arch/mips/mm/c-octeon.c +++ b/arch/mips/mm/c-octeon.c | |||
@@ -174,7 +174,7 @@ static void octeon_flush_cache_page(struct vm_area_struct *vma, | |||
174 | * Probe Octeon's caches | 174 | * Probe Octeon's caches |
175 | * | 175 | * |
176 | */ | 176 | */ |
177 | static void __devinit probe_octeon(void) | 177 | static void __cpuinit probe_octeon(void) |
178 | { | 178 | { |
179 | unsigned long icache_size; | 179 | unsigned long icache_size; |
180 | unsigned long dcache_size; | 180 | unsigned long dcache_size; |
@@ -183,6 +183,7 @@ static void __devinit probe_octeon(void) | |||
183 | 183 | ||
184 | switch (c->cputype) { | 184 | switch (c->cputype) { |
185 | case CPU_CAVIUM_OCTEON: | 185 | case CPU_CAVIUM_OCTEON: |
186 | case CPU_CAVIUM_OCTEON_PLUS: | ||
186 | config1 = read_c0_config1(); | 187 | config1 = read_c0_config1(); |
187 | c->icache.linesz = 2 << ((config1 >> 19) & 7); | 188 | c->icache.linesz = 2 << ((config1 >> 19) & 7); |
188 | c->icache.sets = 64 << ((config1 >> 22) & 7); | 189 | c->icache.sets = 64 << ((config1 >> 22) & 7); |
@@ -192,10 +193,10 @@ static void __devinit probe_octeon(void) | |||
192 | c->icache.sets * c->icache.ways * c->icache.linesz; | 193 | c->icache.sets * c->icache.ways * c->icache.linesz; |
193 | c->icache.waybit = ffs(icache_size / c->icache.ways) - 1; | 194 | c->icache.waybit = ffs(icache_size / c->icache.ways) - 1; |
194 | c->dcache.linesz = 128; | 195 | c->dcache.linesz = 128; |
195 | if (OCTEON_IS_MODEL(OCTEON_CN3XXX)) | 196 | if (c->cputype == CPU_CAVIUM_OCTEON_PLUS) |
196 | c->dcache.sets = 1; /* CN3XXX has one Dcache set */ | ||
197 | else | ||
198 | c->dcache.sets = 2; /* CN5XXX has two Dcache sets */ | 197 | c->dcache.sets = 2; /* CN5XXX has two Dcache sets */ |
198 | else | ||
199 | c->dcache.sets = 1; /* CN3XXX has one Dcache set */ | ||
199 | c->dcache.ways = 64; | 200 | c->dcache.ways = 64; |
200 | dcache_size = | 201 | dcache_size = |
201 | c->dcache.sets * c->dcache.ways * c->dcache.linesz; | 202 | c->dcache.sets * c->dcache.ways * c->dcache.linesz; |
@@ -235,7 +236,7 @@ static void __devinit probe_octeon(void) | |||
235 | * Setup the Octeon cache flush routines | 236 | * Setup the Octeon cache flush routines |
236 | * | 237 | * |
237 | */ | 238 | */ |
238 | void __devinit octeon_cache_init(void) | 239 | void __cpuinit octeon_cache_init(void) |
239 | { | 240 | { |
240 | extern unsigned long ebase; | 241 | extern unsigned long ebase; |
241 | extern char except_vec2_octeon; | 242 | extern char except_vec2_octeon; |
@@ -305,4 +306,3 @@ asmlinkage void cache_parity_error_octeon_non_recoverable(void) | |||
305 | { | 306 | { |
306 | cache_parity_error_octeon(1); | 307 | cache_parity_error_octeon(1); |
307 | } | 308 | } |
308 | |||
diff --git a/arch/mips/mm/cache.c b/arch/mips/mm/cache.c index 694d51f523d1..12af739048fa 100644 --- a/arch/mips/mm/cache.c +++ b/arch/mips/mm/cache.c | |||
@@ -133,29 +133,50 @@ void __update_cache(struct vm_area_struct *vma, unsigned long address, | |||
133 | } | 133 | } |
134 | 134 | ||
135 | unsigned long _page_cachable_default; | 135 | unsigned long _page_cachable_default; |
136 | EXPORT_SYMBOL_GPL(_page_cachable_default); | 136 | EXPORT_SYMBOL(_page_cachable_default); |
137 | 137 | ||
138 | static inline void setup_protection_map(void) | 138 | static inline void setup_protection_map(void) |
139 | { | 139 | { |
140 | protection_map[0] = PAGE_NONE; | 140 | if (kernel_uses_smartmips_rixi) { |
141 | protection_map[1] = PAGE_READONLY; | 141 | protection_map[0] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC | _PAGE_NO_READ); |
142 | protection_map[2] = PAGE_COPY; | 142 | protection_map[1] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC); |
143 | protection_map[3] = PAGE_COPY; | 143 | protection_map[2] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC | _PAGE_NO_READ); |
144 | protection_map[4] = PAGE_READONLY; | 144 | protection_map[3] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC); |
145 | protection_map[5] = PAGE_READONLY; | 145 | protection_map[4] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_READ); |
146 | protection_map[6] = PAGE_COPY; | 146 | protection_map[5] = __pgprot(_page_cachable_default | _PAGE_PRESENT); |
147 | protection_map[7] = PAGE_COPY; | 147 | protection_map[6] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_READ); |
148 | protection_map[8] = PAGE_NONE; | 148 | protection_map[7] = __pgprot(_page_cachable_default | _PAGE_PRESENT); |
149 | protection_map[9] = PAGE_READONLY; | 149 | |
150 | protection_map[10] = PAGE_SHARED; | 150 | protection_map[8] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC | _PAGE_NO_READ); |
151 | protection_map[11] = PAGE_SHARED; | 151 | protection_map[9] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC); |
152 | protection_map[12] = PAGE_READONLY; | 152 | protection_map[10] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC | _PAGE_WRITE | _PAGE_NO_READ); |
153 | protection_map[13] = PAGE_READONLY; | 153 | protection_map[11] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_EXEC | _PAGE_WRITE); |
154 | protection_map[14] = PAGE_SHARED; | 154 | protection_map[12] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_NO_READ); |
155 | protection_map[15] = PAGE_SHARED; | 155 | protection_map[13] = __pgprot(_page_cachable_default | _PAGE_PRESENT); |
156 | protection_map[14] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_WRITE | _PAGE_NO_READ); | ||
157 | protection_map[15] = __pgprot(_page_cachable_default | _PAGE_PRESENT | _PAGE_WRITE); | ||
158 | |||
159 | } else { | ||
160 | protection_map[0] = PAGE_NONE; | ||
161 | protection_map[1] = PAGE_READONLY; | ||
162 | protection_map[2] = PAGE_COPY; | ||
163 | protection_map[3] = PAGE_COPY; | ||
164 | protection_map[4] = PAGE_READONLY; | ||
165 | protection_map[5] = PAGE_READONLY; | ||
166 | protection_map[6] = PAGE_COPY; | ||
167 | protection_map[7] = PAGE_COPY; | ||
168 | protection_map[8] = PAGE_NONE; | ||
169 | protection_map[9] = PAGE_READONLY; | ||
170 | protection_map[10] = PAGE_SHARED; | ||
171 | protection_map[11] = PAGE_SHARED; | ||
172 | protection_map[12] = PAGE_READONLY; | ||
173 | protection_map[13] = PAGE_READONLY; | ||
174 | protection_map[14] = PAGE_SHARED; | ||
175 | protection_map[15] = PAGE_SHARED; | ||
176 | } | ||
156 | } | 177 | } |
157 | 178 | ||
158 | void __devinit cpu_cache_init(void) | 179 | void __cpuinit cpu_cache_init(void) |
159 | { | 180 | { |
160 | if (cpu_has_3k_cache) { | 181 | if (cpu_has_3k_cache) { |
161 | extern void __weak r3k_cache_init(void); | 182 | extern void __weak r3k_cache_init(void); |
@@ -194,7 +215,7 @@ void __devinit cpu_cache_init(void) | |||
194 | 215 | ||
195 | int __weak __uncached_access(struct file *file, unsigned long addr) | 216 | int __weak __uncached_access(struct file *file, unsigned long addr) |
196 | { | 217 | { |
197 | if (file->f_flags & O_SYNC) | 218 | if (file->f_flags & O_DSYNC) |
198 | return 1; | 219 | return 1; |
199 | 220 | ||
200 | return addr >= __pa(high_memory); | 221 | return addr >= __pa(high_memory); |
diff --git a/arch/mips/mm/cerr-sb1.c b/arch/mips/mm/cerr-sb1.c index 1bd1f18ac23c..3571090ba178 100644 --- a/arch/mips/mm/cerr-sb1.c +++ b/arch/mips/mm/cerr-sb1.c | |||
@@ -567,13 +567,10 @@ static uint32_t extract_dc(unsigned short addr, int data) | |||
567 | datalo = ((unsigned long long)datalohi << 32) | datalolo; | 567 | datalo = ((unsigned long long)datalohi << 32) | datalolo; |
568 | ecc = dc_ecc(datalo); | 568 | ecc = dc_ecc(datalo); |
569 | if (ecc != datahi) { | 569 | if (ecc != datahi) { |
570 | int bits = 0; | 570 | int bits; |
571 | bad_ecc |= 1 << (3-offset); | 571 | bad_ecc |= 1 << (3-offset); |
572 | ecc ^= datahi; | 572 | ecc ^= datahi; |
573 | while (ecc) { | 573 | bits = hweight8(ecc); |
574 | if (ecc & 1) bits++; | ||
575 | ecc >>= 1; | ||
576 | } | ||
577 | res |= (bits == 1) ? CP0_CERRD_DATA_SBE : CP0_CERRD_DATA_DBE; | 574 | res |= (bits == 1) ? CP0_CERRD_DATA_SBE : CP0_CERRD_DATA_DBE; |
578 | } | 575 | } |
579 | printk(" %02X-%016llX", datahi, datalo); | 576 | printk(" %02X-%016llX", datahi, datalo); |
diff --git a/arch/mips/mm/dma-default.c b/arch/mips/mm/dma-default.c index 9367e33fbd18..9547bc0cf188 100644 --- a/arch/mips/mm/dma-default.c +++ b/arch/mips/mm/dma-default.c | |||
@@ -14,6 +14,7 @@ | |||
14 | #include <linux/module.h> | 14 | #include <linux/module.h> |
15 | #include <linux/scatterlist.h> | 15 | #include <linux/scatterlist.h> |
16 | #include <linux/string.h> | 16 | #include <linux/string.h> |
17 | #include <linux/gfp.h> | ||
17 | 18 | ||
18 | #include <asm/cache.h> | 19 | #include <asm/cache.h> |
19 | #include <asm/io.h> | 20 | #include <asm/io.h> |
diff --git a/arch/mips/mm/fault.c b/arch/mips/mm/fault.c index e97a7a2fb2c0..b78f7d913ca4 100644 --- a/arch/mips/mm/fault.c +++ b/arch/mips/mm/fault.c | |||
@@ -99,8 +99,31 @@ good_area: | |||
99 | if (!(vma->vm_flags & VM_WRITE)) | 99 | if (!(vma->vm_flags & VM_WRITE)) |
100 | goto bad_area; | 100 | goto bad_area; |
101 | } else { | 101 | } else { |
102 | if (!(vma->vm_flags & (VM_READ | VM_WRITE | VM_EXEC))) | 102 | if (kernel_uses_smartmips_rixi) { |
103 | goto bad_area; | 103 | if (address == regs->cp0_epc && !(vma->vm_flags & VM_EXEC)) { |
104 | #if 0 | ||
105 | pr_notice("Cpu%d[%s:%d:%0*lx:%ld:%0*lx] XI violation\n", | ||
106 | raw_smp_processor_id(), | ||
107 | current->comm, current->pid, | ||
108 | field, address, write, | ||
109 | field, regs->cp0_epc); | ||
110 | #endif | ||
111 | goto bad_area; | ||
112 | } | ||
113 | if (!(vma->vm_flags & VM_READ)) { | ||
114 | #if 0 | ||
115 | pr_notice("Cpu%d[%s:%d:%0*lx:%ld:%0*lx] RI violation\n", | ||
116 | raw_smp_processor_id(), | ||
117 | current->comm, current->pid, | ||
118 | field, address, write, | ||
119 | field, regs->cp0_epc); | ||
120 | #endif | ||
121 | goto bad_area; | ||
122 | } | ||
123 | } else { | ||
124 | if (!(vma->vm_flags & (VM_READ | VM_WRITE | VM_EXEC))) | ||
125 | goto bad_area; | ||
126 | } | ||
104 | } | 127 | } |
105 | 128 | ||
106 | /* | 129 | /* |
diff --git a/arch/mips/mm/highmem.c b/arch/mips/mm/highmem.c index e274fda329f4..127d732474bf 100644 --- a/arch/mips/mm/highmem.c +++ b/arch/mips/mm/highmem.c | |||
@@ -1,5 +1,6 @@ | |||
1 | #include <linux/module.h> | 1 | #include <linux/module.h> |
2 | #include <linux/highmem.h> | 2 | #include <linux/highmem.h> |
3 | #include <linux/sched.h> | ||
3 | #include <linux/smp.h> | 4 | #include <linux/smp.h> |
4 | #include <asm/fixmap.h> | 5 | #include <asm/fixmap.h> |
5 | #include <asm/tlbflush.h> | 6 | #include <asm/tlbflush.h> |
diff --git a/arch/mips/mm/hugetlbpage.c b/arch/mips/mm/hugetlbpage.c index 8c2834f5919d..a7fee0dfb7a9 100644 --- a/arch/mips/mm/hugetlbpage.c +++ b/arch/mips/mm/hugetlbpage.c | |||
@@ -16,7 +16,6 @@ | |||
16 | #include <linux/mm.h> | 16 | #include <linux/mm.h> |
17 | #include <linux/hugetlb.h> | 17 | #include <linux/hugetlb.h> |
18 | #include <linux/pagemap.h> | 18 | #include <linux/pagemap.h> |
19 | #include <linux/slab.h> | ||
20 | #include <linux/err.h> | 19 | #include <linux/err.h> |
21 | #include <linux/sysctl.h> | 20 | #include <linux/sysctl.h> |
22 | #include <asm/mman.h> | 21 | #include <asm/mman.h> |
@@ -97,4 +96,3 @@ follow_huge_pmd(struct mm_struct *mm, unsigned long address, | |||
97 | page += ((address & ~HPAGE_MASK) >> PAGE_SHIFT); | 96 | page += ((address & ~HPAGE_MASK) >> PAGE_SHIFT); |
98 | return page; | 97 | return page; |
99 | } | 98 | } |
100 | |||
diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c index 8d1f4f363049..2efcbd24c82f 100644 --- a/arch/mips/mm/init.c +++ b/arch/mips/mm/init.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <linux/proc_fs.h> | 28 | #include <linux/proc_fs.h> |
29 | #include <linux/pfn.h> | 29 | #include <linux/pfn.h> |
30 | #include <linux/hardirq.h> | 30 | #include <linux/hardirq.h> |
31 | #include <linux/gfp.h> | ||
31 | 32 | ||
32 | #include <asm/asm-offsets.h> | 33 | #include <asm/asm-offsets.h> |
33 | #include <asm/bootinfo.h> | 34 | #include <asm/bootinfo.h> |
@@ -143,7 +144,7 @@ void *kmap_coherent(struct page *page, unsigned long addr) | |||
143 | #if defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_CPU_MIPS32) | 144 | #if defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_CPU_MIPS32) |
144 | entrylo = pte.pte_high; | 145 | entrylo = pte.pte_high; |
145 | #else | 146 | #else |
146 | entrylo = pte_val(pte) >> 6; | 147 | entrylo = pte_to_entrylo(pte_val(pte)); |
147 | #endif | 148 | #endif |
148 | 149 | ||
149 | ENTER_CRITICAL(flags); | 150 | ENTER_CRITICAL(flags); |
@@ -298,7 +299,7 @@ void __init fixrange_init(unsigned long start, unsigned long end, | |||
298 | } | 299 | } |
299 | 300 | ||
300 | #ifndef CONFIG_NEED_MULTIPLE_NODES | 301 | #ifndef CONFIG_NEED_MULTIPLE_NODES |
301 | static int __init page_is_ram(unsigned long pagenr) | 302 | int page_is_ram(unsigned long pagenr) |
302 | { | 303 | { |
303 | int i; | 304 | int i; |
304 | 305 | ||
@@ -424,7 +425,7 @@ void __init mem_init(void) | |||
424 | reservedpages << (PAGE_SHIFT-10), | 425 | reservedpages << (PAGE_SHIFT-10), |
425 | datasize >> 10, | 426 | datasize >> 10, |
426 | initsize >> 10, | 427 | initsize >> 10, |
427 | (unsigned long) (totalhigh_pages << (PAGE_SHIFT-10))); | 428 | totalhigh_pages << (PAGE_SHIFT-10)); |
428 | } | 429 | } |
429 | #endif /* !CONFIG_NEED_MULTIPLE_NODES */ | 430 | #endif /* !CONFIG_NEED_MULTIPLE_NODES */ |
430 | 431 | ||
@@ -462,7 +463,9 @@ void __init_refok free_initmem(void) | |||
462 | __pa_symbol(&__init_end)); | 463 | __pa_symbol(&__init_end)); |
463 | } | 464 | } |
464 | 465 | ||
466 | #ifndef CONFIG_MIPS_PGD_C0_CONTEXT | ||
465 | unsigned long pgd_current[NR_CPUS]; | 467 | unsigned long pgd_current[NR_CPUS]; |
468 | #endif | ||
466 | /* | 469 | /* |
467 | * On 64-bit we've got three-level pagetables with a slightly | 470 | * On 64-bit we've got three-level pagetables with a slightly |
468 | * different layout ... | 471 | * different layout ... |
@@ -475,7 +478,7 @@ unsigned long pgd_current[NR_CPUS]; | |||
475 | * will officially be retired. | 478 | * will officially be retired. |
476 | */ | 479 | */ |
477 | pgd_t swapper_pg_dir[_PTRS_PER_PGD] __page_aligned(_PGD_ORDER); | 480 | pgd_t swapper_pg_dir[_PTRS_PER_PGD] __page_aligned(_PGD_ORDER); |
478 | #ifdef CONFIG_64BIT | 481 | #ifndef __PAGETABLE_PMD_FOLDED |
479 | pmd_t invalid_pmd_table[PTRS_PER_PMD] __page_aligned(PMD_ORDER); | 482 | pmd_t invalid_pmd_table[PTRS_PER_PMD] __page_aligned(PMD_ORDER); |
480 | #endif | 483 | #endif |
481 | pte_t invalid_pte_table[PTRS_PER_PTE] __page_aligned(PTE_ORDER); | 484 | pte_t invalid_pte_table[PTRS_PER_PTE] __page_aligned(PTE_ORDER); |
diff --git a/arch/mips/mm/ioremap.c b/arch/mips/mm/ioremap.c index 0c43248347bd..cacfd31e8ec9 100644 --- a/arch/mips/mm/ioremap.c +++ b/arch/mips/mm/ioremap.c | |||
@@ -10,6 +10,7 @@ | |||
10 | #include <asm/addrspace.h> | 10 | #include <asm/addrspace.h> |
11 | #include <asm/byteorder.h> | 11 | #include <asm/byteorder.h> |
12 | #include <linux/sched.h> | 12 | #include <linux/sched.h> |
13 | #include <linux/slab.h> | ||
13 | #include <linux/vmalloc.h> | 14 | #include <linux/vmalloc.h> |
14 | #include <asm/cacheflush.h> | 15 | #include <asm/cacheflush.h> |
15 | #include <asm/io.h> | 16 | #include <asm/io.h> |
diff --git a/arch/mips/mm/page.c b/arch/mips/mm/page.c index f5c73754d664..36272f7d3744 100644 --- a/arch/mips/mm/page.c +++ b/arch/mips/mm/page.c | |||
@@ -35,7 +35,7 @@ | |||
35 | #include <asm/sibyte/sb1250_dma.h> | 35 | #include <asm/sibyte/sb1250_dma.h> |
36 | #endif | 36 | #endif |
37 | 37 | ||
38 | #include "uasm.h" | 38 | #include <asm/uasm.h> |
39 | 39 | ||
40 | /* Registers used in the assembled routines. */ | 40 | /* Registers used in the assembled routines. */ |
41 | #define ZERO 0 | 41 | #define ZERO 0 |
diff --git a/arch/mips/mm/pgtable-64.c b/arch/mips/mm/pgtable-64.c index 1121019fa456..78eaa4f0b0ec 100644 --- a/arch/mips/mm/pgtable-64.c +++ b/arch/mips/mm/pgtable-64.c | |||
@@ -15,23 +15,31 @@ | |||
15 | void pgd_init(unsigned long page) | 15 | void pgd_init(unsigned long page) |
16 | { | 16 | { |
17 | unsigned long *p, *end; | 17 | unsigned long *p, *end; |
18 | unsigned long entry; | ||
19 | |||
20 | #ifdef __PAGETABLE_PMD_FOLDED | ||
21 | entry = (unsigned long)invalid_pte_table; | ||
22 | #else | ||
23 | entry = (unsigned long)invalid_pmd_table; | ||
24 | #endif | ||
18 | 25 | ||
19 | p = (unsigned long *) page; | 26 | p = (unsigned long *) page; |
20 | end = p + PTRS_PER_PGD; | 27 | end = p + PTRS_PER_PGD; |
21 | 28 | ||
22 | while (p < end) { | 29 | while (p < end) { |
23 | p[0] = (unsigned long) invalid_pmd_table; | 30 | p[0] = entry; |
24 | p[1] = (unsigned long) invalid_pmd_table; | 31 | p[1] = entry; |
25 | p[2] = (unsigned long) invalid_pmd_table; | 32 | p[2] = entry; |
26 | p[3] = (unsigned long) invalid_pmd_table; | 33 | p[3] = entry; |
27 | p[4] = (unsigned long) invalid_pmd_table; | 34 | p[4] = entry; |
28 | p[5] = (unsigned long) invalid_pmd_table; | 35 | p[5] = entry; |
29 | p[6] = (unsigned long) invalid_pmd_table; | 36 | p[6] = entry; |
30 | p[7] = (unsigned long) invalid_pmd_table; | 37 | p[7] = entry; |
31 | p += 8; | 38 | p += 8; |
32 | } | 39 | } |
33 | } | 40 | } |
34 | 41 | ||
42 | #ifndef __PAGETABLE_PMD_FOLDED | ||
35 | void pmd_init(unsigned long addr, unsigned long pagetable) | 43 | void pmd_init(unsigned long addr, unsigned long pagetable) |
36 | { | 44 | { |
37 | unsigned long *p, *end; | 45 | unsigned long *p, *end; |
@@ -40,17 +48,18 @@ void pmd_init(unsigned long addr, unsigned long pagetable) | |||
40 | end = p + PTRS_PER_PMD; | 48 | end = p + PTRS_PER_PMD; |
41 | 49 | ||
42 | while (p < end) { | 50 | while (p < end) { |
43 | p[0] = (unsigned long)pagetable; | 51 | p[0] = pagetable; |
44 | p[1] = (unsigned long)pagetable; | 52 | p[1] = pagetable; |
45 | p[2] = (unsigned long)pagetable; | 53 | p[2] = pagetable; |
46 | p[3] = (unsigned long)pagetable; | 54 | p[3] = pagetable; |
47 | p[4] = (unsigned long)pagetable; | 55 | p[4] = pagetable; |
48 | p[5] = (unsigned long)pagetable; | 56 | p[5] = pagetable; |
49 | p[6] = (unsigned long)pagetable; | 57 | p[6] = pagetable; |
50 | p[7] = (unsigned long)pagetable; | 58 | p[7] = pagetable; |
51 | p += 8; | 59 | p += 8; |
52 | } | 60 | } |
53 | } | 61 | } |
62 | #endif | ||
54 | 63 | ||
55 | void __init pagetable_init(void) | 64 | void __init pagetable_init(void) |
56 | { | 65 | { |
@@ -59,8 +68,9 @@ void __init pagetable_init(void) | |||
59 | 68 | ||
60 | /* Initialize the entire pgd. */ | 69 | /* Initialize the entire pgd. */ |
61 | pgd_init((unsigned long)swapper_pg_dir); | 70 | pgd_init((unsigned long)swapper_pg_dir); |
71 | #ifndef __PAGETABLE_PMD_FOLDED | ||
62 | pmd_init((unsigned long)invalid_pmd_table, (unsigned long)invalid_pte_table); | 72 | pmd_init((unsigned long)invalid_pmd_table, (unsigned long)invalid_pte_table); |
63 | 73 | #endif | |
64 | pgd_base = swapper_pg_dir; | 74 | pgd_base = swapper_pg_dir; |
65 | /* | 75 | /* |
66 | * Fixed mappings: | 76 | * Fixed mappings: |
diff --git a/arch/mips/mm/tlb-r4k.c b/arch/mips/mm/tlb-r4k.c index d73428b18b0a..c618eed933a1 100644 --- a/arch/mips/mm/tlb-r4k.c +++ b/arch/mips/mm/tlb-r4k.c | |||
@@ -303,7 +303,7 @@ void __update_tlb(struct vm_area_struct * vma, unsigned long address, pte_t pte) | |||
303 | unsigned long lo; | 303 | unsigned long lo; |
304 | write_c0_pagemask(PM_HUGE_MASK); | 304 | write_c0_pagemask(PM_HUGE_MASK); |
305 | ptep = (pte_t *)pmdp; | 305 | ptep = (pte_t *)pmdp; |
306 | lo = pte_val(*ptep) >> 6; | 306 | lo = pte_to_entrylo(pte_val(*ptep)); |
307 | write_c0_entrylo0(lo); | 307 | write_c0_entrylo0(lo); |
308 | write_c0_entrylo1(lo + (HPAGE_SIZE >> 7)); | 308 | write_c0_entrylo1(lo + (HPAGE_SIZE >> 7)); |
309 | 309 | ||
@@ -323,8 +323,8 @@ void __update_tlb(struct vm_area_struct * vma, unsigned long address, pte_t pte) | |||
323 | ptep++; | 323 | ptep++; |
324 | write_c0_entrylo1(ptep->pte_high); | 324 | write_c0_entrylo1(ptep->pte_high); |
325 | #else | 325 | #else |
326 | write_c0_entrylo0(pte_val(*ptep++) >> 6); | 326 | write_c0_entrylo0(pte_to_entrylo(pte_val(*ptep++))); |
327 | write_c0_entrylo1(pte_val(*ptep) >> 6); | 327 | write_c0_entrylo1(pte_to_entrylo(pte_val(*ptep))); |
328 | #endif | 328 | #endif |
329 | mtc0_tlbw_hazard(); | 329 | mtc0_tlbw_hazard(); |
330 | if (idx < 0) | 330 | if (idx < 0) |
@@ -337,40 +337,6 @@ void __update_tlb(struct vm_area_struct * vma, unsigned long address, pte_t pte) | |||
337 | EXIT_CRITICAL(flags); | 337 | EXIT_CRITICAL(flags); |
338 | } | 338 | } |
339 | 339 | ||
340 | #if 0 | ||
341 | static void r4k_update_mmu_cache_hwbug(struct vm_area_struct * vma, | ||
342 | unsigned long address, pte_t pte) | ||
343 | { | ||
344 | unsigned long flags; | ||
345 | unsigned int asid; | ||
346 | pgd_t *pgdp; | ||
347 | pmd_t *pmdp; | ||
348 | pte_t *ptep; | ||
349 | int idx; | ||
350 | |||
351 | ENTER_CRITICAL(flags); | ||
352 | address &= (PAGE_MASK << 1); | ||
353 | asid = read_c0_entryhi() & ASID_MASK; | ||
354 | write_c0_entryhi(address | asid); | ||
355 | pgdp = pgd_offset(vma->vm_mm, address); | ||
356 | mtc0_tlbw_hazard(); | ||
357 | tlb_probe(); | ||
358 | tlb_probe_hazard(); | ||
359 | pmdp = pmd_offset(pgdp, address); | ||
360 | idx = read_c0_index(); | ||
361 | ptep = pte_offset_map(pmdp, address); | ||
362 | write_c0_entrylo0(pte_val(*ptep++) >> 6); | ||
363 | write_c0_entrylo1(pte_val(*ptep) >> 6); | ||
364 | mtc0_tlbw_hazard(); | ||
365 | if (idx < 0) | ||
366 | tlb_write_random(); | ||
367 | else | ||
368 | tlb_write_indexed(); | ||
369 | tlbw_use_hazard(); | ||
370 | EXIT_CRITICAL(flags); | ||
371 | } | ||
372 | #endif | ||
373 | |||
374 | void __init add_wired_entry(unsigned long entrylo0, unsigned long entrylo1, | 340 | void __init add_wired_entry(unsigned long entrylo0, unsigned long entrylo1, |
375 | unsigned long entryhi, unsigned long pagemask) | 341 | unsigned long entryhi, unsigned long pagemask) |
376 | { | 342 | { |
@@ -447,34 +413,6 @@ out: | |||
447 | return ret; | 413 | return ret; |
448 | } | 414 | } |
449 | 415 | ||
450 | static void __cpuinit probe_tlb(unsigned long config) | ||
451 | { | ||
452 | struct cpuinfo_mips *c = ¤t_cpu_data; | ||
453 | unsigned int reg; | ||
454 | |||
455 | /* | ||
456 | * If this isn't a MIPS32 / MIPS64 compliant CPU. Config 1 register | ||
457 | * is not supported, we assume R4k style. Cpu probing already figured | ||
458 | * out the number of tlb entries. | ||
459 | */ | ||
460 | if ((c->processor_id & 0xff0000) == PRID_COMP_LEGACY) | ||
461 | return; | ||
462 | #ifdef CONFIG_MIPS_MT_SMTC | ||
463 | /* | ||
464 | * If TLB is shared in SMTC system, total size already | ||
465 | * has been calculated and written into cpu_data tlbsize | ||
466 | */ | ||
467 | if((smtc_status & SMTC_TLB_SHARED) == SMTC_TLB_SHARED) | ||
468 | return; | ||
469 | #endif /* CONFIG_MIPS_MT_SMTC */ | ||
470 | |||
471 | reg = read_c0_config1(); | ||
472 | if (!((config >> 7) & 3)) | ||
473 | panic("No TLB present"); | ||
474 | |||
475 | c->tlbsize = ((reg >> 25) & 0x3f) + 1; | ||
476 | } | ||
477 | |||
478 | static int __cpuinitdata ntlb; | 416 | static int __cpuinitdata ntlb; |
479 | static int __init set_ntlb(char *str) | 417 | static int __init set_ntlb(char *str) |
480 | { | 418 | { |
@@ -486,8 +424,6 @@ __setup("ntlb=", set_ntlb); | |||
486 | 424 | ||
487 | void __cpuinit tlb_init(void) | 425 | void __cpuinit tlb_init(void) |
488 | { | 426 | { |
489 | unsigned int config = read_c0_config(); | ||
490 | |||
491 | /* | 427 | /* |
492 | * You should never change this register: | 428 | * You should never change this register: |
493 | * - On R4600 1.7 the tlbp never hits for pages smaller than | 429 | * - On R4600 1.7 the tlbp never hits for pages smaller than |
@@ -495,13 +431,25 @@ void __cpuinit tlb_init(void) | |||
495 | * - The entire mm handling assumes the c0_pagemask register to | 431 | * - The entire mm handling assumes the c0_pagemask register to |
496 | * be set to fixed-size pages. | 432 | * be set to fixed-size pages. |
497 | */ | 433 | */ |
498 | probe_tlb(config); | ||
499 | write_c0_pagemask(PM_DEFAULT_MASK); | 434 | write_c0_pagemask(PM_DEFAULT_MASK); |
500 | write_c0_wired(0); | 435 | write_c0_wired(0); |
501 | if (current_cpu_type() == CPU_R10000 || | 436 | if (current_cpu_type() == CPU_R10000 || |
502 | current_cpu_type() == CPU_R12000 || | 437 | current_cpu_type() == CPU_R12000 || |
503 | current_cpu_type() == CPU_R14000) | 438 | current_cpu_type() == CPU_R14000) |
504 | write_c0_framemask(0); | 439 | write_c0_framemask(0); |
440 | |||
441 | if (kernel_uses_smartmips_rixi) { | ||
442 | /* | ||
443 | * Enable the no read, no exec bits, and enable large virtual | ||
444 | * address. | ||
445 | */ | ||
446 | u32 pg = PG_RIE | PG_XIE; | ||
447 | #ifdef CONFIG_64BIT | ||
448 | pg |= PG_ELPA; | ||
449 | #endif | ||
450 | write_c0_pagegrain(pg); | ||
451 | } | ||
452 | |||
505 | temp_tlb_entry = current_cpu_data.tlbsize - 1; | 453 | temp_tlb_entry = current_cpu_data.tlbsize - 1; |
506 | 454 | ||
507 | /* From this point on the ARC firmware is dead. */ | 455 | /* From this point on the ARC firmware is dead. */ |
diff --git a/arch/mips/mm/tlbex.c b/arch/mips/mm/tlbex.c index bb1719a55d22..86f004dc8355 100644 --- a/arch/mips/mm/tlbex.c +++ b/arch/mips/mm/tlbex.c | |||
@@ -29,8 +29,17 @@ | |||
29 | 29 | ||
30 | #include <asm/mmu_context.h> | 30 | #include <asm/mmu_context.h> |
31 | #include <asm/war.h> | 31 | #include <asm/war.h> |
32 | #include <asm/uasm.h> | ||
33 | |||
34 | /* | ||
35 | * TLB load/store/modify handlers. | ||
36 | * | ||
37 | * Only the fastpath gets synthesized at runtime, the slowpath for | ||
38 | * do_page_fault remains normal asm. | ||
39 | */ | ||
40 | extern void tlb_do_page_fault_0(void); | ||
41 | extern void tlb_do_page_fault_1(void); | ||
32 | 42 | ||
33 | #include "uasm.h" | ||
34 | 43 | ||
35 | static inline int r45k_bvahwbug(void) | 44 | static inline int r45k_bvahwbug(void) |
36 | { | 45 | { |
@@ -73,18 +82,18 @@ static int __cpuinit m4kc_tlbp_war(void) | |||
73 | enum label_id { | 82 | enum label_id { |
74 | label_second_part = 1, | 83 | label_second_part = 1, |
75 | label_leave, | 84 | label_leave, |
76 | #ifdef MODULE_START | ||
77 | label_module_alloc, | ||
78 | #endif | ||
79 | label_vmalloc, | 85 | label_vmalloc, |
80 | label_vmalloc_done, | 86 | label_vmalloc_done, |
81 | label_tlbw_hazard, | 87 | label_tlbw_hazard, |
82 | label_split, | 88 | label_split, |
89 | label_tlbl_goaround1, | ||
90 | label_tlbl_goaround2, | ||
83 | label_nopage_tlbl, | 91 | label_nopage_tlbl, |
84 | label_nopage_tlbs, | 92 | label_nopage_tlbs, |
85 | label_nopage_tlbm, | 93 | label_nopage_tlbm, |
86 | label_smp_pgtable_change, | 94 | label_smp_pgtable_change, |
87 | label_r3000_write_probe_fail, | 95 | label_r3000_write_probe_fail, |
96 | label_large_segbits_fault, | ||
88 | #ifdef CONFIG_HUGETLB_PAGE | 97 | #ifdef CONFIG_HUGETLB_PAGE |
89 | label_tlb_huge_update, | 98 | label_tlb_huge_update, |
90 | #endif | 99 | #endif |
@@ -92,18 +101,18 @@ enum label_id { | |||
92 | 101 | ||
93 | UASM_L_LA(_second_part) | 102 | UASM_L_LA(_second_part) |
94 | UASM_L_LA(_leave) | 103 | UASM_L_LA(_leave) |
95 | #ifdef MODULE_START | ||
96 | UASM_L_LA(_module_alloc) | ||
97 | #endif | ||
98 | UASM_L_LA(_vmalloc) | 104 | UASM_L_LA(_vmalloc) |
99 | UASM_L_LA(_vmalloc_done) | 105 | UASM_L_LA(_vmalloc_done) |
100 | UASM_L_LA(_tlbw_hazard) | 106 | UASM_L_LA(_tlbw_hazard) |
101 | UASM_L_LA(_split) | 107 | UASM_L_LA(_split) |
108 | UASM_L_LA(_tlbl_goaround1) | ||
109 | UASM_L_LA(_tlbl_goaround2) | ||
102 | UASM_L_LA(_nopage_tlbl) | 110 | UASM_L_LA(_nopage_tlbl) |
103 | UASM_L_LA(_nopage_tlbs) | 111 | UASM_L_LA(_nopage_tlbs) |
104 | UASM_L_LA(_nopage_tlbm) | 112 | UASM_L_LA(_nopage_tlbm) |
105 | UASM_L_LA(_smp_pgtable_change) | 113 | UASM_L_LA(_smp_pgtable_change) |
106 | UASM_L_LA(_r3000_write_probe_fail) | 114 | UASM_L_LA(_r3000_write_probe_fail) |
115 | UASM_L_LA(_large_segbits_fault) | ||
107 | #ifdef CONFIG_HUGETLB_PAGE | 116 | #ifdef CONFIG_HUGETLB_PAGE |
108 | UASM_L_LA(_tlb_huge_update) | 117 | UASM_L_LA(_tlb_huge_update) |
109 | #endif | 118 | #endif |
@@ -160,6 +169,16 @@ static u32 tlb_handler[128] __cpuinitdata; | |||
160 | static struct uasm_label labels[128] __cpuinitdata; | 169 | static struct uasm_label labels[128] __cpuinitdata; |
161 | static struct uasm_reloc relocs[128] __cpuinitdata; | 170 | static struct uasm_reloc relocs[128] __cpuinitdata; |
162 | 171 | ||
172 | #ifdef CONFIG_64BIT | ||
173 | static int check_for_high_segbits __cpuinitdata; | ||
174 | #endif | ||
175 | |||
176 | #ifndef CONFIG_MIPS_PGD_C0_CONTEXT | ||
177 | /* | ||
178 | * CONFIG_MIPS_PGD_C0_CONTEXT implies 64 bit and lack of pgd_current, | ||
179 | * we cannot do r3000 under these circumstances. | ||
180 | */ | ||
181 | |||
163 | /* | 182 | /* |
164 | * The R3000 TLB handler is simple. | 183 | * The R3000 TLB handler is simple. |
165 | */ | 184 | */ |
@@ -199,6 +218,7 @@ static void __cpuinit build_r3000_tlb_refill_handler(void) | |||
199 | 218 | ||
200 | dump_handler((u32 *)ebase, 32); | 219 | dump_handler((u32 *)ebase, 32); |
201 | } | 220 | } |
221 | #endif /* CONFIG_MIPS_PGD_C0_CONTEXT */ | ||
202 | 222 | ||
203 | /* | 223 | /* |
204 | * The R4000 TLB handler is much more complicated. We have two | 224 | * The R4000 TLB handler is much more complicated. We have two |
@@ -396,36 +416,60 @@ static void __cpuinit build_tlb_write_entry(u32 **p, struct uasm_label **l, | |||
396 | } | 416 | } |
397 | } | 417 | } |
398 | 418 | ||
399 | #ifdef CONFIG_HUGETLB_PAGE | 419 | static __cpuinit __maybe_unused void build_convert_pte_to_entrylo(u32 **p, |
400 | static __cpuinit void build_huge_tlb_write_entry(u32 **p, | 420 | unsigned int reg) |
401 | struct uasm_label **l, | ||
402 | struct uasm_reloc **r, | ||
403 | unsigned int tmp, | ||
404 | enum tlb_write_entry wmode) | ||
405 | { | 421 | { |
406 | /* Set huge page tlb entry size */ | 422 | if (kernel_uses_smartmips_rixi) { |
407 | uasm_i_lui(p, tmp, PM_HUGE_MASK >> 16); | 423 | UASM_i_SRL(p, reg, reg, ilog2(_PAGE_NO_EXEC)); |
408 | uasm_i_ori(p, tmp, tmp, PM_HUGE_MASK & 0xffff); | 424 | UASM_i_ROTR(p, reg, reg, ilog2(_PAGE_GLOBAL) - ilog2(_PAGE_NO_EXEC)); |
409 | uasm_i_mtc0(p, tmp, C0_PAGEMASK); | 425 | } else { |
426 | #ifdef CONFIG_64BIT_PHYS_ADDR | ||
427 | uasm_i_dsrl_safe(p, reg, reg, ilog2(_PAGE_GLOBAL)); | ||
428 | #else | ||
429 | UASM_i_SRL(p, reg, reg, ilog2(_PAGE_GLOBAL)); | ||
430 | #endif | ||
431 | } | ||
432 | } | ||
410 | 433 | ||
411 | build_tlb_write_entry(p, l, r, wmode); | 434 | #ifdef CONFIG_HUGETLB_PAGE |
412 | 435 | ||
436 | static __cpuinit void build_restore_pagemask(u32 **p, | ||
437 | struct uasm_reloc **r, | ||
438 | unsigned int tmp, | ||
439 | enum label_id lid) | ||
440 | { | ||
413 | /* Reset default page size */ | 441 | /* Reset default page size */ |
414 | if (PM_DEFAULT_MASK >> 16) { | 442 | if (PM_DEFAULT_MASK >> 16) { |
415 | uasm_i_lui(p, tmp, PM_DEFAULT_MASK >> 16); | 443 | uasm_i_lui(p, tmp, PM_DEFAULT_MASK >> 16); |
416 | uasm_i_ori(p, tmp, tmp, PM_DEFAULT_MASK & 0xffff); | 444 | uasm_i_ori(p, tmp, tmp, PM_DEFAULT_MASK & 0xffff); |
417 | uasm_il_b(p, r, label_leave); | 445 | uasm_il_b(p, r, lid); |
418 | uasm_i_mtc0(p, tmp, C0_PAGEMASK); | 446 | uasm_i_mtc0(p, tmp, C0_PAGEMASK); |
419 | } else if (PM_DEFAULT_MASK) { | 447 | } else if (PM_DEFAULT_MASK) { |
420 | uasm_i_ori(p, tmp, 0, PM_DEFAULT_MASK); | 448 | uasm_i_ori(p, tmp, 0, PM_DEFAULT_MASK); |
421 | uasm_il_b(p, r, label_leave); | 449 | uasm_il_b(p, r, lid); |
422 | uasm_i_mtc0(p, tmp, C0_PAGEMASK); | 450 | uasm_i_mtc0(p, tmp, C0_PAGEMASK); |
423 | } else { | 451 | } else { |
424 | uasm_il_b(p, r, label_leave); | 452 | uasm_il_b(p, r, lid); |
425 | uasm_i_mtc0(p, 0, C0_PAGEMASK); | 453 | uasm_i_mtc0(p, 0, C0_PAGEMASK); |
426 | } | 454 | } |
427 | } | 455 | } |
428 | 456 | ||
457 | static __cpuinit void build_huge_tlb_write_entry(u32 **p, | ||
458 | struct uasm_label **l, | ||
459 | struct uasm_reloc **r, | ||
460 | unsigned int tmp, | ||
461 | enum tlb_write_entry wmode) | ||
462 | { | ||
463 | /* Set huge page tlb entry size */ | ||
464 | uasm_i_lui(p, tmp, PM_HUGE_MASK >> 16); | ||
465 | uasm_i_ori(p, tmp, tmp, PM_HUGE_MASK & 0xffff); | ||
466 | uasm_i_mtc0(p, tmp, C0_PAGEMASK); | ||
467 | |||
468 | build_tlb_write_entry(p, l, r, wmode); | ||
469 | |||
470 | build_restore_pagemask(p, r, tmp, label_leave); | ||
471 | } | ||
472 | |||
429 | /* | 473 | /* |
430 | * Check if Huge PTE is present, if so then jump to LABEL. | 474 | * Check if Huge PTE is present, if so then jump to LABEL. |
431 | */ | 475 | */ |
@@ -459,15 +503,15 @@ static __cpuinit void build_huge_update_entries(u32 **p, | |||
459 | if (!small_sequence) | 503 | if (!small_sequence) |
460 | uasm_i_lui(p, tmp, HPAGE_SIZE >> (7 + 16)); | 504 | uasm_i_lui(p, tmp, HPAGE_SIZE >> (7 + 16)); |
461 | 505 | ||
462 | UASM_i_SRL(p, pte, pte, 6); /* convert to entrylo */ | 506 | build_convert_pte_to_entrylo(p, pte); |
463 | uasm_i_mtc0(p, pte, C0_ENTRYLO0); /* load it */ | 507 | UASM_i_MTC0(p, pte, C0_ENTRYLO0); /* load it */ |
464 | /* convert to entrylo1 */ | 508 | /* convert to entrylo1 */ |
465 | if (small_sequence) | 509 | if (small_sequence) |
466 | UASM_i_ADDIU(p, pte, pte, HPAGE_SIZE >> 7); | 510 | UASM_i_ADDIU(p, pte, pte, HPAGE_SIZE >> 7); |
467 | else | 511 | else |
468 | UASM_i_ADDU(p, pte, pte, tmp); | 512 | UASM_i_ADDU(p, pte, pte, tmp); |
469 | 513 | ||
470 | uasm_i_mtc0(p, pte, C0_ENTRYLO1); /* load it */ | 514 | UASM_i_MTC0(p, pte, C0_ENTRYLO1); /* load it */ |
471 | } | 515 | } |
472 | 516 | ||
473 | static __cpuinit void build_huge_handler_tail(u32 **p, | 517 | static __cpuinit void build_huge_handler_tail(u32 **p, |
@@ -497,30 +541,56 @@ static void __cpuinit | |||
497 | build_get_pmde64(u32 **p, struct uasm_label **l, struct uasm_reloc **r, | 541 | build_get_pmde64(u32 **p, struct uasm_label **l, struct uasm_reloc **r, |
498 | unsigned int tmp, unsigned int ptr) | 542 | unsigned int tmp, unsigned int ptr) |
499 | { | 543 | { |
544 | #ifndef CONFIG_MIPS_PGD_C0_CONTEXT | ||
500 | long pgdc = (long)pgd_current; | 545 | long pgdc = (long)pgd_current; |
501 | 546 | #endif | |
502 | /* | 547 | /* |
503 | * The vmalloc handling is not in the hotpath. | 548 | * The vmalloc handling is not in the hotpath. |
504 | */ | 549 | */ |
505 | uasm_i_dmfc0(p, tmp, C0_BADVADDR); | 550 | uasm_i_dmfc0(p, tmp, C0_BADVADDR); |
506 | uasm_il_bltz(p, r, tmp, label_vmalloc); | 551 | |
552 | if (check_for_high_segbits) { | ||
553 | /* | ||
554 | * The kernel currently implicitely assumes that the | ||
555 | * MIPS SEGBITS parameter for the processor is | ||
556 | * (PGDIR_SHIFT+PGDIR_BITS) or less, and will never | ||
557 | * allocate virtual addresses outside the maximum | ||
558 | * range for SEGBITS = (PGDIR_SHIFT+PGDIR_BITS). But | ||
559 | * that doesn't prevent user code from accessing the | ||
560 | * higher xuseg addresses. Here, we make sure that | ||
561 | * everything but the lower xuseg addresses goes down | ||
562 | * the module_alloc/vmalloc path. | ||
563 | */ | ||
564 | uasm_i_dsrl_safe(p, ptr, tmp, PGDIR_SHIFT + PGD_ORDER + PAGE_SHIFT - 3); | ||
565 | uasm_il_bnez(p, r, ptr, label_vmalloc); | ||
566 | } else { | ||
567 | uasm_il_bltz(p, r, tmp, label_vmalloc); | ||
568 | } | ||
507 | /* No uasm_i_nop needed here, since the next insn doesn't touch TMP. */ | 569 | /* No uasm_i_nop needed here, since the next insn doesn't touch TMP. */ |
508 | 570 | ||
509 | #ifdef CONFIG_SMP | 571 | #ifdef CONFIG_MIPS_PGD_C0_CONTEXT |
572 | /* | ||
573 | * &pgd << 11 stored in CONTEXT [23..63]. | ||
574 | */ | ||
575 | UASM_i_MFC0(p, ptr, C0_CONTEXT); | ||
576 | uasm_i_dins(p, ptr, 0, 0, 23); /* Clear lower 23 bits of context. */ | ||
577 | uasm_i_ori(p, ptr, ptr, 0x540); /* 1 0 1 0 1 << 6 xkphys cached */ | ||
578 | uasm_i_drotr(p, ptr, ptr, 11); | ||
579 | #elif defined(CONFIG_SMP) | ||
510 | # ifdef CONFIG_MIPS_MT_SMTC | 580 | # ifdef CONFIG_MIPS_MT_SMTC |
511 | /* | 581 | /* |
512 | * SMTC uses TCBind value as "CPU" index | 582 | * SMTC uses TCBind value as "CPU" index |
513 | */ | 583 | */ |
514 | uasm_i_mfc0(p, ptr, C0_TCBIND); | 584 | uasm_i_mfc0(p, ptr, C0_TCBIND); |
515 | uasm_i_dsrl(p, ptr, ptr, 19); | 585 | uasm_i_dsrl_safe(p, ptr, ptr, 19); |
516 | # else | 586 | # else |
517 | /* | 587 | /* |
518 | * 64 bit SMP running in XKPHYS has smp_processor_id() << 3 | 588 | * 64 bit SMP running in XKPHYS has smp_processor_id() << 3 |
519 | * stored in CONTEXT. | 589 | * stored in CONTEXT. |
520 | */ | 590 | */ |
521 | uasm_i_dmfc0(p, ptr, C0_CONTEXT); | 591 | uasm_i_dmfc0(p, ptr, C0_CONTEXT); |
522 | uasm_i_dsrl(p, ptr, ptr, 23); | 592 | uasm_i_dsrl_safe(p, ptr, ptr, 23); |
523 | #endif | 593 | # endif |
524 | UASM_i_LA_mostly(p, tmp, pgdc); | 594 | UASM_i_LA_mostly(p, tmp, pgdc); |
525 | uasm_i_daddu(p, ptr, ptr, tmp); | 595 | uasm_i_daddu(p, ptr, ptr, tmp); |
526 | uasm_i_dmfc0(p, tmp, C0_BADVADDR); | 596 | uasm_i_dmfc0(p, tmp, C0_BADVADDR); |
@@ -532,42 +602,78 @@ build_get_pmde64(u32 **p, struct uasm_label **l, struct uasm_reloc **r, | |||
532 | 602 | ||
533 | uasm_l_vmalloc_done(l, *p); | 603 | uasm_l_vmalloc_done(l, *p); |
534 | 604 | ||
535 | if (PGDIR_SHIFT - 3 < 32) /* get pgd offset in bytes */ | 605 | /* get pgd offset in bytes */ |
536 | uasm_i_dsrl(p, tmp, tmp, PGDIR_SHIFT-3); | 606 | uasm_i_dsrl_safe(p, tmp, tmp, PGDIR_SHIFT - 3); |
537 | else | ||
538 | uasm_i_dsrl32(p, tmp, tmp, PGDIR_SHIFT - 3 - 32); | ||
539 | 607 | ||
540 | uasm_i_andi(p, tmp, tmp, (PTRS_PER_PGD - 1)<<3); | 608 | uasm_i_andi(p, tmp, tmp, (PTRS_PER_PGD - 1)<<3); |
541 | uasm_i_daddu(p, ptr, ptr, tmp); /* add in pgd offset */ | 609 | uasm_i_daddu(p, ptr, ptr, tmp); /* add in pgd offset */ |
610 | #ifndef __PAGETABLE_PMD_FOLDED | ||
542 | uasm_i_dmfc0(p, tmp, C0_BADVADDR); /* get faulting address */ | 611 | uasm_i_dmfc0(p, tmp, C0_BADVADDR); /* get faulting address */ |
543 | uasm_i_ld(p, ptr, 0, ptr); /* get pmd pointer */ | 612 | uasm_i_ld(p, ptr, 0, ptr); /* get pmd pointer */ |
544 | uasm_i_dsrl(p, tmp, tmp, PMD_SHIFT-3); /* get pmd offset in bytes */ | 613 | uasm_i_dsrl_safe(p, tmp, tmp, PMD_SHIFT-3); /* get pmd offset in bytes */ |
545 | uasm_i_andi(p, tmp, tmp, (PTRS_PER_PMD - 1)<<3); | 614 | uasm_i_andi(p, tmp, tmp, (PTRS_PER_PMD - 1)<<3); |
546 | uasm_i_daddu(p, ptr, ptr, tmp); /* add in pmd offset */ | 615 | uasm_i_daddu(p, ptr, ptr, tmp); /* add in pmd offset */ |
616 | #endif | ||
547 | } | 617 | } |
548 | 618 | ||
619 | enum vmalloc64_mode {not_refill, refill}; | ||
549 | /* | 620 | /* |
550 | * BVADDR is the faulting address, PTR is scratch. | 621 | * BVADDR is the faulting address, PTR is scratch. |
551 | * PTR will hold the pgd for vmalloc. | 622 | * PTR will hold the pgd for vmalloc. |
552 | */ | 623 | */ |
553 | static void __cpuinit | 624 | static void __cpuinit |
554 | build_get_pgd_vmalloc64(u32 **p, struct uasm_label **l, struct uasm_reloc **r, | 625 | build_get_pgd_vmalloc64(u32 **p, struct uasm_label **l, struct uasm_reloc **r, |
555 | unsigned int bvaddr, unsigned int ptr) | 626 | unsigned int bvaddr, unsigned int ptr, |
627 | enum vmalloc64_mode mode) | ||
556 | { | 628 | { |
557 | long swpd = (long)swapper_pg_dir; | 629 | long swpd = (long)swapper_pg_dir; |
630 | int single_insn_swpd; | ||
631 | int did_vmalloc_branch = 0; | ||
632 | |||
633 | single_insn_swpd = uasm_in_compat_space_p(swpd) && !uasm_rel_lo(swpd); | ||
558 | 634 | ||
559 | uasm_l_vmalloc(l, *p); | 635 | uasm_l_vmalloc(l, *p); |
560 | 636 | ||
561 | if (uasm_in_compat_space_p(swpd) && !uasm_rel_lo(swpd)) { | 637 | if (mode == refill && check_for_high_segbits) { |
562 | uasm_il_b(p, r, label_vmalloc_done); | 638 | if (single_insn_swpd) { |
563 | uasm_i_lui(p, ptr, uasm_rel_hi(swpd)); | 639 | uasm_il_bltz(p, r, bvaddr, label_vmalloc_done); |
564 | } else { | 640 | uasm_i_lui(p, ptr, uasm_rel_hi(swpd)); |
565 | UASM_i_LA_mostly(p, ptr, swpd); | 641 | did_vmalloc_branch = 1; |
566 | uasm_il_b(p, r, label_vmalloc_done); | 642 | /* fall through */ |
567 | if (uasm_in_compat_space_p(swpd)) | 643 | } else { |
568 | uasm_i_addiu(p, ptr, ptr, uasm_rel_lo(swpd)); | 644 | uasm_il_bgez(p, r, bvaddr, label_large_segbits_fault); |
569 | else | 645 | } |
570 | uasm_i_daddiu(p, ptr, ptr, uasm_rel_lo(swpd)); | 646 | } |
647 | if (!did_vmalloc_branch) { | ||
648 | if (uasm_in_compat_space_p(swpd) && !uasm_rel_lo(swpd)) { | ||
649 | uasm_il_b(p, r, label_vmalloc_done); | ||
650 | uasm_i_lui(p, ptr, uasm_rel_hi(swpd)); | ||
651 | } else { | ||
652 | UASM_i_LA_mostly(p, ptr, swpd); | ||
653 | uasm_il_b(p, r, label_vmalloc_done); | ||
654 | if (uasm_in_compat_space_p(swpd)) | ||
655 | uasm_i_addiu(p, ptr, ptr, uasm_rel_lo(swpd)); | ||
656 | else | ||
657 | uasm_i_daddiu(p, ptr, ptr, uasm_rel_lo(swpd)); | ||
658 | } | ||
659 | } | ||
660 | if (mode == refill && check_for_high_segbits) { | ||
661 | uasm_l_large_segbits_fault(l, *p); | ||
662 | /* | ||
663 | * We get here if we are an xsseg address, or if we are | ||
664 | * an xuseg address above (PGDIR_SHIFT+PGDIR_BITS) boundary. | ||
665 | * | ||
666 | * Ignoring xsseg (assume disabled so would generate | ||
667 | * (address errors?), the only remaining possibility | ||
668 | * is the upper xuseg addresses. On processors with | ||
669 | * TLB_SEGBITS <= PGDIR_SHIFT+PGDIR_BITS, these | ||
670 | * addresses would have taken an address error. We try | ||
671 | * to mimic that here by taking a load/istream page | ||
672 | * fault. | ||
673 | */ | ||
674 | UASM_i_LA(p, ptr, (unsigned long)tlb_do_page_fault_0); | ||
675 | uasm_i_jr(p, ptr); | ||
676 | uasm_i_nop(p); | ||
571 | } | 677 | } |
572 | } | 678 | } |
573 | 679 | ||
@@ -674,35 +780,53 @@ static void __cpuinit build_update_entries(u32 **p, unsigned int tmp, | |||
674 | if (cpu_has_64bits) { | 780 | if (cpu_has_64bits) { |
675 | uasm_i_ld(p, tmp, 0, ptep); /* get even pte */ | 781 | uasm_i_ld(p, tmp, 0, ptep); /* get even pte */ |
676 | uasm_i_ld(p, ptep, sizeof(pte_t), ptep); /* get odd pte */ | 782 | uasm_i_ld(p, ptep, sizeof(pte_t), ptep); /* get odd pte */ |
677 | uasm_i_dsrl(p, tmp, tmp, 6); /* convert to entrylo0 */ | 783 | if (kernel_uses_smartmips_rixi) { |
678 | uasm_i_mtc0(p, tmp, C0_ENTRYLO0); /* load it */ | 784 | UASM_i_SRL(p, tmp, tmp, ilog2(_PAGE_NO_EXEC)); |
679 | uasm_i_dsrl(p, ptep, ptep, 6); /* convert to entrylo1 */ | 785 | UASM_i_SRL(p, ptep, ptep, ilog2(_PAGE_NO_EXEC)); |
680 | uasm_i_mtc0(p, ptep, C0_ENTRYLO1); /* load it */ | 786 | UASM_i_ROTR(p, tmp, tmp, ilog2(_PAGE_GLOBAL) - ilog2(_PAGE_NO_EXEC)); |
787 | UASM_i_MTC0(p, tmp, C0_ENTRYLO0); /* load it */ | ||
788 | UASM_i_ROTR(p, ptep, ptep, ilog2(_PAGE_GLOBAL) - ilog2(_PAGE_NO_EXEC)); | ||
789 | } else { | ||
790 | uasm_i_dsrl_safe(p, tmp, tmp, ilog2(_PAGE_GLOBAL)); /* convert to entrylo0 */ | ||
791 | UASM_i_MTC0(p, tmp, C0_ENTRYLO0); /* load it */ | ||
792 | uasm_i_dsrl_safe(p, ptep, ptep, ilog2(_PAGE_GLOBAL)); /* convert to entrylo1 */ | ||
793 | } | ||
794 | UASM_i_MTC0(p, ptep, C0_ENTRYLO1); /* load it */ | ||
681 | } else { | 795 | } else { |
682 | int pte_off_even = sizeof(pte_t) / 2; | 796 | int pte_off_even = sizeof(pte_t) / 2; |
683 | int pte_off_odd = pte_off_even + sizeof(pte_t); | 797 | int pte_off_odd = pte_off_even + sizeof(pte_t); |
684 | 798 | ||
685 | /* The pte entries are pre-shifted */ | 799 | /* The pte entries are pre-shifted */ |
686 | uasm_i_lw(p, tmp, pte_off_even, ptep); /* get even pte */ | 800 | uasm_i_lw(p, tmp, pte_off_even, ptep); /* get even pte */ |
687 | uasm_i_mtc0(p, tmp, C0_ENTRYLO0); /* load it */ | 801 | UASM_i_MTC0(p, tmp, C0_ENTRYLO0); /* load it */ |
688 | uasm_i_lw(p, ptep, pte_off_odd, ptep); /* get odd pte */ | 802 | uasm_i_lw(p, ptep, pte_off_odd, ptep); /* get odd pte */ |
689 | uasm_i_mtc0(p, ptep, C0_ENTRYLO1); /* load it */ | 803 | UASM_i_MTC0(p, ptep, C0_ENTRYLO1); /* load it */ |
690 | } | 804 | } |
691 | #else | 805 | #else |
692 | UASM_i_LW(p, tmp, 0, ptep); /* get even pte */ | 806 | UASM_i_LW(p, tmp, 0, ptep); /* get even pte */ |
693 | UASM_i_LW(p, ptep, sizeof(pte_t), ptep); /* get odd pte */ | 807 | UASM_i_LW(p, ptep, sizeof(pte_t), ptep); /* get odd pte */ |
694 | if (r45k_bvahwbug()) | 808 | if (r45k_bvahwbug()) |
695 | build_tlb_probe_entry(p); | 809 | build_tlb_probe_entry(p); |
696 | UASM_i_SRL(p, tmp, tmp, 6); /* convert to entrylo0 */ | 810 | if (kernel_uses_smartmips_rixi) { |
697 | if (r4k_250MHZhwbug()) | 811 | UASM_i_SRL(p, tmp, tmp, ilog2(_PAGE_NO_EXEC)); |
698 | uasm_i_mtc0(p, 0, C0_ENTRYLO0); | 812 | UASM_i_SRL(p, ptep, ptep, ilog2(_PAGE_NO_EXEC)); |
699 | uasm_i_mtc0(p, tmp, C0_ENTRYLO0); /* load it */ | 813 | UASM_i_ROTR(p, tmp, tmp, ilog2(_PAGE_GLOBAL) - ilog2(_PAGE_NO_EXEC)); |
700 | UASM_i_SRL(p, ptep, ptep, 6); /* convert to entrylo1 */ | 814 | if (r4k_250MHZhwbug()) |
701 | if (r45k_bvahwbug()) | 815 | UASM_i_MTC0(p, 0, C0_ENTRYLO0); |
702 | uasm_i_mfc0(p, tmp, C0_INDEX); | 816 | UASM_i_MTC0(p, tmp, C0_ENTRYLO0); /* load it */ |
817 | UASM_i_ROTR(p, ptep, ptep, ilog2(_PAGE_GLOBAL) - ilog2(_PAGE_NO_EXEC)); | ||
818 | } else { | ||
819 | UASM_i_SRL(p, tmp, tmp, ilog2(_PAGE_GLOBAL)); /* convert to entrylo0 */ | ||
820 | if (r4k_250MHZhwbug()) | ||
821 | UASM_i_MTC0(p, 0, C0_ENTRYLO0); | ||
822 | UASM_i_MTC0(p, tmp, C0_ENTRYLO0); /* load it */ | ||
823 | UASM_i_SRL(p, ptep, ptep, ilog2(_PAGE_GLOBAL)); /* convert to entrylo1 */ | ||
824 | if (r45k_bvahwbug()) | ||
825 | uasm_i_mfc0(p, tmp, C0_INDEX); | ||
826 | } | ||
703 | if (r4k_250MHZhwbug()) | 827 | if (r4k_250MHZhwbug()) |
704 | uasm_i_mtc0(p, 0, C0_ENTRYLO1); | 828 | UASM_i_MTC0(p, 0, C0_ENTRYLO1); |
705 | uasm_i_mtc0(p, ptep, C0_ENTRYLO1); /* load it */ | 829 | UASM_i_MTC0(p, ptep, C0_ENTRYLO1); /* load it */ |
706 | #endif | 830 | #endif |
707 | } | 831 | } |
708 | 832 | ||
@@ -731,10 +855,15 @@ static void __cpuinit build_r4000_tlb_refill_handler(void) | |||
731 | * create the plain linear handler | 855 | * create the plain linear handler |
732 | */ | 856 | */ |
733 | if (bcm1250_m3_war()) { | 857 | if (bcm1250_m3_war()) { |
734 | UASM_i_MFC0(&p, K0, C0_BADVADDR); | 858 | unsigned int segbits = 44; |
735 | UASM_i_MFC0(&p, K1, C0_ENTRYHI); | 859 | |
860 | uasm_i_dmfc0(&p, K0, C0_BADVADDR); | ||
861 | uasm_i_dmfc0(&p, K1, C0_ENTRYHI); | ||
736 | uasm_i_xor(&p, K0, K0, K1); | 862 | uasm_i_xor(&p, K0, K0, K1); |
737 | UASM_i_SRL(&p, K0, K0, PAGE_SHIFT + 1); | 863 | uasm_i_dsrl_safe(&p, K1, K0, 62); |
864 | uasm_i_dsrl_safe(&p, K0, K0, 12 + 1); | ||
865 | uasm_i_dsll_safe(&p, K0, K0, 64 + 12 + 1 - segbits); | ||
866 | uasm_i_or(&p, K0, K0, K1); | ||
738 | uasm_il_bnez(&p, &r, K0, label_leave); | 867 | uasm_il_bnez(&p, &r, K0, label_leave); |
739 | /* No need for uasm_i_nop */ | 868 | /* No need for uasm_i_nop */ |
740 | } | 869 | } |
@@ -763,7 +892,7 @@ static void __cpuinit build_r4000_tlb_refill_handler(void) | |||
763 | #endif | 892 | #endif |
764 | 893 | ||
765 | #ifdef CONFIG_64BIT | 894 | #ifdef CONFIG_64BIT |
766 | build_get_pgd_vmalloc64(&p, &l, &r, K0, K1); | 895 | build_get_pgd_vmalloc64(&p, &l, &r, K0, K1, refill); |
767 | #endif | 896 | #endif |
768 | 897 | ||
769 | /* | 898 | /* |
@@ -802,8 +931,6 @@ static void __cpuinit build_r4000_tlb_refill_handler(void) | |||
802 | } else { | 931 | } else { |
803 | #if defined(CONFIG_HUGETLB_PAGE) | 932 | #if defined(CONFIG_HUGETLB_PAGE) |
804 | const enum label_id ls = label_tlb_huge_update; | 933 | const enum label_id ls = label_tlb_huge_update; |
805 | #elif defined(MODULE_START) | ||
806 | const enum label_id ls = label_module_alloc; | ||
807 | #else | 934 | #else |
808 | const enum label_id ls = label_vmalloc; | 935 | const enum label_id ls = label_vmalloc; |
809 | #endif | 936 | #endif |
@@ -875,15 +1002,6 @@ static void __cpuinit build_r4000_tlb_refill_handler(void) | |||
875 | } | 1002 | } |
876 | 1003 | ||
877 | /* | 1004 | /* |
878 | * TLB load/store/modify handlers. | ||
879 | * | ||
880 | * Only the fastpath gets synthesized at runtime, the slowpath for | ||
881 | * do_page_fault remains normal asm. | ||
882 | */ | ||
883 | extern void tlb_do_page_fault_0(void); | ||
884 | extern void tlb_do_page_fault_1(void); | ||
885 | |||
886 | /* | ||
887 | * 128 instructions for the fastpath handler is generous and should | 1005 | * 128 instructions for the fastpath handler is generous and should |
888 | * never be exceeded. | 1006 | * never be exceeded. |
889 | */ | 1007 | */ |
@@ -977,9 +1095,14 @@ static void __cpuinit | |||
977 | build_pte_present(u32 **p, struct uasm_reloc **r, | 1095 | build_pte_present(u32 **p, struct uasm_reloc **r, |
978 | unsigned int pte, unsigned int ptr, enum label_id lid) | 1096 | unsigned int pte, unsigned int ptr, enum label_id lid) |
979 | { | 1097 | { |
980 | uasm_i_andi(p, pte, pte, _PAGE_PRESENT | _PAGE_READ); | 1098 | if (kernel_uses_smartmips_rixi) { |
981 | uasm_i_xori(p, pte, pte, _PAGE_PRESENT | _PAGE_READ); | 1099 | uasm_i_andi(p, pte, pte, _PAGE_PRESENT); |
982 | uasm_il_bnez(p, r, pte, lid); | 1100 | uasm_il_beqz(p, r, pte, lid); |
1101 | } else { | ||
1102 | uasm_i_andi(p, pte, pte, _PAGE_PRESENT | _PAGE_READ); | ||
1103 | uasm_i_xori(p, pte, pte, _PAGE_PRESENT | _PAGE_READ); | ||
1104 | uasm_il_bnez(p, r, pte, lid); | ||
1105 | } | ||
983 | iPTE_LW(p, pte, ptr); | 1106 | iPTE_LW(p, pte, ptr); |
984 | } | 1107 | } |
985 | 1108 | ||
@@ -1033,6 +1156,7 @@ build_pte_modifiable(u32 **p, struct uasm_reloc **r, | |||
1033 | iPTE_LW(p, pte, ptr); | 1156 | iPTE_LW(p, pte, ptr); |
1034 | } | 1157 | } |
1035 | 1158 | ||
1159 | #ifndef CONFIG_MIPS_PGD_C0_CONTEXT | ||
1036 | /* | 1160 | /* |
1037 | * R3000 style TLB load/store/modify handlers. | 1161 | * R3000 style TLB load/store/modify handlers. |
1038 | */ | 1162 | */ |
@@ -1184,6 +1308,7 @@ static void __cpuinit build_r3000_tlb_modify_handler(void) | |||
1184 | 1308 | ||
1185 | dump_handler(handle_tlbm, ARRAY_SIZE(handle_tlbm)); | 1309 | dump_handler(handle_tlbm, ARRAY_SIZE(handle_tlbm)); |
1186 | } | 1310 | } |
1311 | #endif /* CONFIG_MIPS_PGD_C0_CONTEXT */ | ||
1187 | 1312 | ||
1188 | /* | 1313 | /* |
1189 | * R4000 style TLB load/store/modify handlers. | 1314 | * R4000 style TLB load/store/modify handlers. |
@@ -1235,7 +1360,7 @@ build_r4000_tlbchange_handler_tail(u32 **p, struct uasm_label **l, | |||
1235 | uasm_i_eret(p); /* return from trap */ | 1360 | uasm_i_eret(p); /* return from trap */ |
1236 | 1361 | ||
1237 | #ifdef CONFIG_64BIT | 1362 | #ifdef CONFIG_64BIT |
1238 | build_get_pgd_vmalloc64(p, l, r, tmp, ptr); | 1363 | build_get_pgd_vmalloc64(p, l, r, tmp, ptr, not_refill); |
1239 | #endif | 1364 | #endif |
1240 | } | 1365 | } |
1241 | 1366 | ||
@@ -1250,10 +1375,15 @@ static void __cpuinit build_r4000_tlb_load_handler(void) | |||
1250 | memset(relocs, 0, sizeof(relocs)); | 1375 | memset(relocs, 0, sizeof(relocs)); |
1251 | 1376 | ||
1252 | if (bcm1250_m3_war()) { | 1377 | if (bcm1250_m3_war()) { |
1253 | UASM_i_MFC0(&p, K0, C0_BADVADDR); | 1378 | unsigned int segbits = 44; |
1254 | UASM_i_MFC0(&p, K1, C0_ENTRYHI); | 1379 | |
1380 | uasm_i_dmfc0(&p, K0, C0_BADVADDR); | ||
1381 | uasm_i_dmfc0(&p, K1, C0_ENTRYHI); | ||
1255 | uasm_i_xor(&p, K0, K0, K1); | 1382 | uasm_i_xor(&p, K0, K0, K1); |
1256 | UASM_i_SRL(&p, K0, K0, PAGE_SHIFT + 1); | 1383 | uasm_i_dsrl_safe(&p, K1, K0, 62); |
1384 | uasm_i_dsrl_safe(&p, K0, K0, 12 + 1); | ||
1385 | uasm_i_dsll_safe(&p, K0, K0, 64 + 12 + 1 - segbits); | ||
1386 | uasm_i_or(&p, K0, K0, K1); | ||
1257 | uasm_il_bnez(&p, &r, K0, label_leave); | 1387 | uasm_il_bnez(&p, &r, K0, label_leave); |
1258 | /* No need for uasm_i_nop */ | 1388 | /* No need for uasm_i_nop */ |
1259 | } | 1389 | } |
@@ -1262,6 +1392,34 @@ static void __cpuinit build_r4000_tlb_load_handler(void) | |||
1262 | build_pte_present(&p, &r, K0, K1, label_nopage_tlbl); | 1392 | build_pte_present(&p, &r, K0, K1, label_nopage_tlbl); |
1263 | if (m4kc_tlbp_war()) | 1393 | if (m4kc_tlbp_war()) |
1264 | build_tlb_probe_entry(&p); | 1394 | build_tlb_probe_entry(&p); |
1395 | |||
1396 | if (kernel_uses_smartmips_rixi) { | ||
1397 | /* | ||
1398 | * If the page is not _PAGE_VALID, RI or XI could not | ||
1399 | * have triggered it. Skip the expensive test.. | ||
1400 | */ | ||
1401 | uasm_i_andi(&p, K0, K0, _PAGE_VALID); | ||
1402 | uasm_il_beqz(&p, &r, K0, label_tlbl_goaround1); | ||
1403 | uasm_i_nop(&p); | ||
1404 | |||
1405 | uasm_i_tlbr(&p); | ||
1406 | /* Examine entrylo 0 or 1 based on ptr. */ | ||
1407 | uasm_i_andi(&p, K0, K1, sizeof(pte_t)); | ||
1408 | uasm_i_beqz(&p, K0, 8); | ||
1409 | |||
1410 | UASM_i_MFC0(&p, K0, C0_ENTRYLO0); /* load it in the delay slot*/ | ||
1411 | UASM_i_MFC0(&p, K0, C0_ENTRYLO1); /* load it if ptr is odd */ | ||
1412 | /* | ||
1413 | * If the entryLo (now in K0) is valid (bit 1), RI or | ||
1414 | * XI must have triggered it. | ||
1415 | */ | ||
1416 | uasm_i_andi(&p, K0, K0, 2); | ||
1417 | uasm_il_bnez(&p, &r, K0, label_nopage_tlbl); | ||
1418 | |||
1419 | uasm_l_tlbl_goaround1(&l, p); | ||
1420 | /* Reload the PTE value */ | ||
1421 | iPTE_LW(&p, K0, K1); | ||
1422 | } | ||
1265 | build_make_valid(&p, &r, K0, K1); | 1423 | build_make_valid(&p, &r, K0, K1); |
1266 | build_r4000_tlbchange_handler_tail(&p, &l, &r, K0, K1); | 1424 | build_r4000_tlbchange_handler_tail(&p, &l, &r, K0, K1); |
1267 | 1425 | ||
@@ -1274,6 +1432,40 @@ static void __cpuinit build_r4000_tlb_load_handler(void) | |||
1274 | iPTE_LW(&p, K0, K1); | 1432 | iPTE_LW(&p, K0, K1); |
1275 | build_pte_present(&p, &r, K0, K1, label_nopage_tlbl); | 1433 | build_pte_present(&p, &r, K0, K1, label_nopage_tlbl); |
1276 | build_tlb_probe_entry(&p); | 1434 | build_tlb_probe_entry(&p); |
1435 | |||
1436 | if (kernel_uses_smartmips_rixi) { | ||
1437 | /* | ||
1438 | * If the page is not _PAGE_VALID, RI or XI could not | ||
1439 | * have triggered it. Skip the expensive test.. | ||
1440 | */ | ||
1441 | uasm_i_andi(&p, K0, K0, _PAGE_VALID); | ||
1442 | uasm_il_beqz(&p, &r, K0, label_tlbl_goaround2); | ||
1443 | uasm_i_nop(&p); | ||
1444 | |||
1445 | uasm_i_tlbr(&p); | ||
1446 | /* Examine entrylo 0 or 1 based on ptr. */ | ||
1447 | uasm_i_andi(&p, K0, K1, sizeof(pte_t)); | ||
1448 | uasm_i_beqz(&p, K0, 8); | ||
1449 | |||
1450 | UASM_i_MFC0(&p, K0, C0_ENTRYLO0); /* load it in the delay slot*/ | ||
1451 | UASM_i_MFC0(&p, K0, C0_ENTRYLO1); /* load it if ptr is odd */ | ||
1452 | /* | ||
1453 | * If the entryLo (now in K0) is valid (bit 1), RI or | ||
1454 | * XI must have triggered it. | ||
1455 | */ | ||
1456 | uasm_i_andi(&p, K0, K0, 2); | ||
1457 | uasm_il_beqz(&p, &r, K0, label_tlbl_goaround2); | ||
1458 | /* Reload the PTE value */ | ||
1459 | iPTE_LW(&p, K0, K1); | ||
1460 | |||
1461 | /* | ||
1462 | * We clobbered C0_PAGEMASK, restore it. On the other branch | ||
1463 | * it is restored in build_huge_tlb_write_entry. | ||
1464 | */ | ||
1465 | build_restore_pagemask(&p, &r, K0, label_nopage_tlbl); | ||
1466 | |||
1467 | uasm_l_tlbl_goaround2(&l, p); | ||
1468 | } | ||
1277 | uasm_i_ori(&p, K0, K0, (_PAGE_ACCESSED | _PAGE_VALID)); | 1469 | uasm_i_ori(&p, K0, K0, (_PAGE_ACCESSED | _PAGE_VALID)); |
1278 | build_huge_handler_tail(&p, &r, &l, K0, K1); | 1470 | build_huge_handler_tail(&p, &r, &l, K0, K1); |
1279 | #endif | 1471 | #endif |
@@ -1392,6 +1584,10 @@ void __cpuinit build_tlb_refill_handler(void) | |||
1392 | */ | 1584 | */ |
1393 | static int run_once = 0; | 1585 | static int run_once = 0; |
1394 | 1586 | ||
1587 | #ifdef CONFIG_64BIT | ||
1588 | check_for_high_segbits = current_cpu_data.vmbits > (PGDIR_SHIFT + PGD_ORDER + PAGE_SHIFT - 3); | ||
1589 | #endif | ||
1590 | |||
1395 | switch (current_cpu_type()) { | 1591 | switch (current_cpu_type()) { |
1396 | case CPU_R2000: | 1592 | case CPU_R2000: |
1397 | case CPU_R3000: | 1593 | case CPU_R3000: |
@@ -1400,6 +1596,7 @@ void __cpuinit build_tlb_refill_handler(void) | |||
1400 | case CPU_TX3912: | 1596 | case CPU_TX3912: |
1401 | case CPU_TX3922: | 1597 | case CPU_TX3922: |
1402 | case CPU_TX3927: | 1598 | case CPU_TX3927: |
1599 | #ifndef CONFIG_MIPS_PGD_C0_CONTEXT | ||
1403 | build_r3000_tlb_refill_handler(); | 1600 | build_r3000_tlb_refill_handler(); |
1404 | if (!run_once) { | 1601 | if (!run_once) { |
1405 | build_r3000_tlb_load_handler(); | 1602 | build_r3000_tlb_load_handler(); |
@@ -1407,6 +1604,9 @@ void __cpuinit build_tlb_refill_handler(void) | |||
1407 | build_r3000_tlb_modify_handler(); | 1604 | build_r3000_tlb_modify_handler(); |
1408 | run_once++; | 1605 | run_once++; |
1409 | } | 1606 | } |
1607 | #else | ||
1608 | panic("No R3000 TLB refill handler"); | ||
1609 | #endif | ||
1410 | break; | 1610 | break; |
1411 | 1611 | ||
1412 | case CPU_R6000: | 1612 | case CPU_R6000: |
diff --git a/arch/mips/mm/uasm.c b/arch/mips/mm/uasm.c index f467199676a8..611d564fdcf1 100644 --- a/arch/mips/mm/uasm.c +++ b/arch/mips/mm/uasm.c | |||
@@ -19,8 +19,7 @@ | |||
19 | #include <asm/inst.h> | 19 | #include <asm/inst.h> |
20 | #include <asm/elf.h> | 20 | #include <asm/elf.h> |
21 | #include <asm/bugs.h> | 21 | #include <asm/bugs.h> |
22 | 22 | #include <asm/uasm.h> | |
23 | #include "uasm.h" | ||
24 | 23 | ||
25 | enum fields { | 24 | enum fields { |
26 | RS = 0x001, | 25 | RS = 0x001, |
@@ -32,7 +31,8 @@ enum fields { | |||
32 | BIMM = 0x040, | 31 | BIMM = 0x040, |
33 | JIMM = 0x080, | 32 | JIMM = 0x080, |
34 | FUNC = 0x100, | 33 | FUNC = 0x100, |
35 | SET = 0x200 | 34 | SET = 0x200, |
35 | SCIMM = 0x400 | ||
36 | }; | 36 | }; |
37 | 37 | ||
38 | #define OP_MASK 0x3f | 38 | #define OP_MASK 0x3f |
@@ -53,6 +53,8 @@ enum fields { | |||
53 | #define FUNC_SH 0 | 53 | #define FUNC_SH 0 |
54 | #define SET_MASK 0x7 | 54 | #define SET_MASK 0x7 |
55 | #define SET_SH 0 | 55 | #define SET_SH 0 |
56 | #define SCIMM_MASK 0xfffff | ||
57 | #define SCIMM_SH 6 | ||
56 | 58 | ||
57 | enum opcode { | 59 | enum opcode { |
58 | insn_invalid, | 60 | insn_invalid, |
@@ -60,11 +62,12 @@ enum opcode { | |||
60 | insn_beql, insn_bgez, insn_bgezl, insn_bltz, insn_bltzl, | 62 | insn_beql, insn_bgez, insn_bgezl, insn_bltz, insn_bltzl, |
61 | insn_bne, insn_cache, insn_daddu, insn_daddiu, insn_dmfc0, | 63 | insn_bne, insn_cache, insn_daddu, insn_daddiu, insn_dmfc0, |
62 | insn_dmtc0, insn_dsll, insn_dsll32, insn_dsra, insn_dsrl, | 64 | insn_dmtc0, insn_dsll, insn_dsll32, insn_dsra, insn_dsrl, |
63 | insn_dsrl32, insn_dsubu, insn_eret, insn_j, insn_jal, insn_jr, | 65 | insn_dsrl32, insn_drotr, insn_dsubu, insn_eret, insn_j, insn_jal, |
64 | insn_ld, insn_ll, insn_lld, insn_lui, insn_lw, insn_mfc0, | 66 | insn_jr, insn_ld, insn_ll, insn_lld, insn_lui, insn_lw, insn_mfc0, |
65 | insn_mtc0, insn_ori, insn_pref, insn_rfe, insn_sc, insn_scd, | 67 | insn_mtc0, insn_or, insn_ori, insn_pref, insn_rfe, insn_sc, insn_scd, |
66 | insn_sd, insn_sll, insn_sra, insn_srl, insn_subu, insn_sw, | 68 | insn_sd, insn_sll, insn_sra, insn_srl, insn_rotr, insn_subu, insn_sw, |
67 | insn_tlbp, insn_tlbwi, insn_tlbwr, insn_xor, insn_xori | 69 | insn_tlbp, insn_tlbr, insn_tlbwi, insn_tlbwr, insn_xor, insn_xori, |
70 | insn_dins, insn_syscall | ||
68 | }; | 71 | }; |
69 | 72 | ||
70 | struct insn { | 73 | struct insn { |
@@ -104,6 +107,7 @@ static struct insn insn_table[] __cpuinitdata = { | |||
104 | { insn_dsra, M(spec_op, 0, 0, 0, 0, dsra_op), RT | RD | RE }, | 107 | { insn_dsra, M(spec_op, 0, 0, 0, 0, dsra_op), RT | RD | RE }, |
105 | { insn_dsrl, M(spec_op, 0, 0, 0, 0, dsrl_op), RT | RD | RE }, | 108 | { insn_dsrl, M(spec_op, 0, 0, 0, 0, dsrl_op), RT | RD | RE }, |
106 | { insn_dsrl32, M(spec_op, 0, 0, 0, 0, dsrl32_op), RT | RD | RE }, | 109 | { insn_dsrl32, M(spec_op, 0, 0, 0, 0, dsrl32_op), RT | RD | RE }, |
110 | { insn_drotr, M(spec_op, 1, 0, 0, 0, dsrl_op), RT | RD | RE }, | ||
107 | { insn_dsubu, M(spec_op, 0, 0, 0, 0, dsubu_op), RS | RT | RD }, | 111 | { insn_dsubu, M(spec_op, 0, 0, 0, 0, dsubu_op), RS | RT | RD }, |
108 | { insn_eret, M(cop0_op, cop_op, 0, 0, 0, eret_op), 0 }, | 112 | { insn_eret, M(cop0_op, cop_op, 0, 0, 0, eret_op), 0 }, |
109 | { insn_j, M(j_op, 0, 0, 0, 0, 0), JIMM }, | 113 | { insn_j, M(j_op, 0, 0, 0, 0, 0), JIMM }, |
@@ -116,6 +120,7 @@ static struct insn insn_table[] __cpuinitdata = { | |||
116 | { insn_lw, M(lw_op, 0, 0, 0, 0, 0), RS | RT | SIMM }, | 120 | { insn_lw, M(lw_op, 0, 0, 0, 0, 0), RS | RT | SIMM }, |
117 | { insn_mfc0, M(cop0_op, mfc_op, 0, 0, 0, 0), RT | RD | SET}, | 121 | { insn_mfc0, M(cop0_op, mfc_op, 0, 0, 0, 0), RT | RD | SET}, |
118 | { insn_mtc0, M(cop0_op, mtc_op, 0, 0, 0, 0), RT | RD | SET}, | 122 | { insn_mtc0, M(cop0_op, mtc_op, 0, 0, 0, 0), RT | RD | SET}, |
123 | { insn_or, M(spec_op, 0, 0, 0, 0, or_op), RS | RT | RD }, | ||
119 | { insn_ori, M(ori_op, 0, 0, 0, 0, 0), RS | RT | UIMM }, | 124 | { insn_ori, M(ori_op, 0, 0, 0, 0, 0), RS | RT | UIMM }, |
120 | { insn_pref, M(pref_op, 0, 0, 0, 0, 0), RS | RT | SIMM }, | 125 | { insn_pref, M(pref_op, 0, 0, 0, 0, 0), RS | RT | SIMM }, |
121 | { insn_rfe, M(cop0_op, cop_op, 0, 0, 0, rfe_op), 0 }, | 126 | { insn_rfe, M(cop0_op, cop_op, 0, 0, 0, rfe_op), 0 }, |
@@ -125,13 +130,17 @@ static struct insn insn_table[] __cpuinitdata = { | |||
125 | { insn_sll, M(spec_op, 0, 0, 0, 0, sll_op), RT | RD | RE }, | 130 | { insn_sll, M(spec_op, 0, 0, 0, 0, sll_op), RT | RD | RE }, |
126 | { insn_sra, M(spec_op, 0, 0, 0, 0, sra_op), RT | RD | RE }, | 131 | { insn_sra, M(spec_op, 0, 0, 0, 0, sra_op), RT | RD | RE }, |
127 | { insn_srl, M(spec_op, 0, 0, 0, 0, srl_op), RT | RD | RE }, | 132 | { insn_srl, M(spec_op, 0, 0, 0, 0, srl_op), RT | RD | RE }, |
133 | { insn_rotr, M(spec_op, 1, 0, 0, 0, srl_op), RT | RD | RE }, | ||
128 | { insn_subu, M(spec_op, 0, 0, 0, 0, subu_op), RS | RT | RD }, | 134 | { insn_subu, M(spec_op, 0, 0, 0, 0, subu_op), RS | RT | RD }, |
129 | { insn_sw, M(sw_op, 0, 0, 0, 0, 0), RS | RT | SIMM }, | 135 | { insn_sw, M(sw_op, 0, 0, 0, 0, 0), RS | RT | SIMM }, |
130 | { insn_tlbp, M(cop0_op, cop_op, 0, 0, 0, tlbp_op), 0 }, | 136 | { insn_tlbp, M(cop0_op, cop_op, 0, 0, 0, tlbp_op), 0 }, |
137 | { insn_tlbr, M(cop0_op, cop_op, 0, 0, 0, tlbr_op), 0 }, | ||
131 | { insn_tlbwi, M(cop0_op, cop_op, 0, 0, 0, tlbwi_op), 0 }, | 138 | { insn_tlbwi, M(cop0_op, cop_op, 0, 0, 0, tlbwi_op), 0 }, |
132 | { insn_tlbwr, M(cop0_op, cop_op, 0, 0, 0, tlbwr_op), 0 }, | 139 | { insn_tlbwr, M(cop0_op, cop_op, 0, 0, 0, tlbwr_op), 0 }, |
133 | { insn_xor, M(spec_op, 0, 0, 0, 0, xor_op), RS | RT | RD }, | 140 | { insn_xor, M(spec_op, 0, 0, 0, 0, xor_op), RS | RT | RD }, |
134 | { insn_xori, M(xori_op, 0, 0, 0, 0, 0), RS | RT | UIMM }, | 141 | { insn_xori, M(xori_op, 0, 0, 0, 0, 0), RS | RT | UIMM }, |
142 | { insn_dins, M(spec3_op, 0, 0, 0, 0, dins_op), RS | RT | RD | RE }, | ||
143 | { insn_syscall, M(spec_op, 0, 0, 0, 0, syscall_op), SCIMM}, | ||
135 | { insn_invalid, 0, 0 } | 144 | { insn_invalid, 0, 0 } |
136 | }; | 145 | }; |
137 | 146 | ||
@@ -204,6 +213,14 @@ static inline __cpuinit u32 build_jimm(u32 arg) | |||
204 | return (arg >> 2) & JIMM_MASK; | 213 | return (arg >> 2) & JIMM_MASK; |
205 | } | 214 | } |
206 | 215 | ||
216 | static inline __cpuinit u32 build_scimm(u32 arg) | ||
217 | { | ||
218 | if (arg & ~SCIMM_MASK) | ||
219 | printk(KERN_WARNING "Micro-assembler field overflow\n"); | ||
220 | |||
221 | return (arg & SCIMM_MASK) << SCIMM_SH; | ||
222 | } | ||
223 | |||
207 | static inline __cpuinit u32 build_func(u32 arg) | 224 | static inline __cpuinit u32 build_func(u32 arg) |
208 | { | 225 | { |
209 | if (arg & ~FUNC_MASK) | 226 | if (arg & ~FUNC_MASK) |
@@ -262,6 +279,8 @@ static void __cpuinit build_insn(u32 **buf, enum opcode opc, ...) | |||
262 | op |= build_func(va_arg(ap, u32)); | 279 | op |= build_func(va_arg(ap, u32)); |
263 | if (ip->fields & SET) | 280 | if (ip->fields & SET) |
264 | op |= build_set(va_arg(ap, u32)); | 281 | op |= build_set(va_arg(ap, u32)); |
282 | if (ip->fields & SCIMM) | ||
283 | op |= build_scimm(va_arg(ap, u32)); | ||
265 | va_end(ap); | 284 | va_end(ap); |
266 | 285 | ||
267 | **buf = op; | 286 | **buf = op; |
@@ -304,6 +323,12 @@ Ip_u2u1s3(op) \ | |||
304 | build_insn(buf, insn##op, b, a, c); \ | 323 | build_insn(buf, insn##op, b, a, c); \ |
305 | } | 324 | } |
306 | 325 | ||
326 | #define I_u2u1msbu3(op) \ | ||
327 | Ip_u2u1msbu3(op) \ | ||
328 | { \ | ||
329 | build_insn(buf, insn##op, b, a, c+d-1, c); \ | ||
330 | } | ||
331 | |||
307 | #define I_u1u2(op) \ | 332 | #define I_u1u2(op) \ |
308 | Ip_u1u2(op) \ | 333 | Ip_u1u2(op) \ |
309 | { \ | 334 | { \ |
@@ -349,6 +374,7 @@ I_u2u1u3(_dsll32) | |||
349 | I_u2u1u3(_dsra) | 374 | I_u2u1u3(_dsra) |
350 | I_u2u1u3(_dsrl) | 375 | I_u2u1u3(_dsrl) |
351 | I_u2u1u3(_dsrl32) | 376 | I_u2u1u3(_dsrl32) |
377 | I_u2u1u3(_drotr) | ||
352 | I_u3u1u2(_dsubu) | 378 | I_u3u1u2(_dsubu) |
353 | I_0(_eret) | 379 | I_0(_eret) |
354 | I_u1(_j) | 380 | I_u1(_j) |
@@ -362,6 +388,7 @@ I_u2s3u1(_lw) | |||
362 | I_u1u2u3(_mfc0) | 388 | I_u1u2u3(_mfc0) |
363 | I_u1u2u3(_mtc0) | 389 | I_u1u2u3(_mtc0) |
364 | I_u2u1u3(_ori) | 390 | I_u2u1u3(_ori) |
391 | I_u3u1u2(_or) | ||
365 | I_u2s3u1(_pref) | 392 | I_u2s3u1(_pref) |
366 | I_0(_rfe) | 393 | I_0(_rfe) |
367 | I_u2s3u1(_sc) | 394 | I_u2s3u1(_sc) |
@@ -370,13 +397,17 @@ I_u2s3u1(_sd) | |||
370 | I_u2u1u3(_sll) | 397 | I_u2u1u3(_sll) |
371 | I_u2u1u3(_sra) | 398 | I_u2u1u3(_sra) |
372 | I_u2u1u3(_srl) | 399 | I_u2u1u3(_srl) |
400 | I_u2u1u3(_rotr) | ||
373 | I_u3u1u2(_subu) | 401 | I_u3u1u2(_subu) |
374 | I_u2s3u1(_sw) | 402 | I_u2s3u1(_sw) |
375 | I_0(_tlbp) | 403 | I_0(_tlbp) |
404 | I_0(_tlbr) | ||
376 | I_0(_tlbwi) | 405 | I_0(_tlbwi) |
377 | I_0(_tlbwr) | 406 | I_0(_tlbwr) |
378 | I_u3u1u2(_xor) | 407 | I_u3u1u2(_xor) |
379 | I_u2u1u3(_xori) | 408 | I_u2u1u3(_xori) |
409 | I_u2u1msbu3(_dins); | ||
410 | I_u1(_syscall); | ||
380 | 411 | ||
381 | /* Handle labels. */ | 412 | /* Handle labels. */ |
382 | void __cpuinit uasm_build_label(struct uasm_label **lab, u32 *addr, int lid) | 413 | void __cpuinit uasm_build_label(struct uasm_label **lab, u32 *addr, int lid) |
diff --git a/arch/mips/mti-malta/malta-init.c b/arch/mips/mti-malta/malta-init.c index f1b14c8a4a1c..414f0c99b196 100644 --- a/arch/mips/mti-malta/malta-init.c +++ b/arch/mips/mti-malta/malta-init.c | |||
@@ -355,7 +355,6 @@ void __init prom_init(void) | |||
355 | board_nmi_handler_setup = mips_nmi_setup; | 355 | board_nmi_handler_setup = mips_nmi_setup; |
356 | board_ejtag_handler_setup = mips_ejtag_setup; | 356 | board_ejtag_handler_setup = mips_ejtag_setup; |
357 | 357 | ||
358 | pr_info("\nLINUX started...\n"); | ||
359 | prom_init_cmdline(); | 358 | prom_init_cmdline(); |
360 | prom_meminit(); | 359 | prom_meminit(); |
361 | #ifdef CONFIG_SERIAL_8250_CONSOLE | 360 | #ifdef CONFIG_SERIAL_8250_CONSOLE |
diff --git a/arch/mips/mti-malta/malta-int.c b/arch/mips/mti-malta/malta-int.c index 4c3fca18a171..15949b0be811 100644 --- a/arch/mips/mti-malta/malta-int.c +++ b/arch/mips/mti-malta/malta-int.c | |||
@@ -25,7 +25,6 @@ | |||
25 | #include <linux/irq.h> | 25 | #include <linux/irq.h> |
26 | #include <linux/sched.h> | 26 | #include <linux/sched.h> |
27 | #include <linux/smp.h> | 27 | #include <linux/smp.h> |
28 | #include <linux/slab.h> | ||
29 | #include <linux/interrupt.h> | 28 | #include <linux/interrupt.h> |
30 | #include <linux/io.h> | 29 | #include <linux/io.h> |
31 | #include <linux/kernel_stat.h> | 30 | #include <linux/kernel_stat.h> |
@@ -52,7 +51,7 @@ static unsigned long _msc01_biu_base; | |||
52 | static unsigned long _gcmp_base; | 51 | static unsigned long _gcmp_base; |
53 | static unsigned int ipi_map[NR_CPUS]; | 52 | static unsigned int ipi_map[NR_CPUS]; |
54 | 53 | ||
55 | static DEFINE_SPINLOCK(mips_irq_lock); | 54 | static DEFINE_RAW_SPINLOCK(mips_irq_lock); |
56 | 55 | ||
57 | static inline int mips_pcibios_iack(void) | 56 | static inline int mips_pcibios_iack(void) |
58 | { | 57 | { |
@@ -103,7 +102,7 @@ static inline int get_int(void) | |||
103 | { | 102 | { |
104 | unsigned long flags; | 103 | unsigned long flags; |
105 | int irq; | 104 | int irq; |
106 | spin_lock_irqsave(&mips_irq_lock, flags); | 105 | raw_spin_lock_irqsave(&mips_irq_lock, flags); |
107 | 106 | ||
108 | irq = mips_pcibios_iack(); | 107 | irq = mips_pcibios_iack(); |
109 | 108 | ||
@@ -113,7 +112,7 @@ static inline int get_int(void) | |||
113 | * on an SMP system, so leave it up to the generic code... | 112 | * on an SMP system, so leave it up to the generic code... |
114 | */ | 113 | */ |
115 | 114 | ||
116 | spin_unlock_irqrestore(&mips_irq_lock, flags); | 115 | raw_spin_unlock_irqrestore(&mips_irq_lock, flags); |
117 | 116 | ||
118 | return irq; | 117 | return irq; |
119 | } | 118 | } |
diff --git a/arch/mips/mti-malta/malta-memory.c b/arch/mips/mti-malta/malta-memory.c index 9035c64bc5ed..b27419c84919 100644 --- a/arch/mips/mti-malta/malta-memory.c +++ b/arch/mips/mti-malta/malta-memory.c | |||
@@ -55,7 +55,7 @@ static struct prom_pmemblock * __init prom_getmdesc(void) | |||
55 | char *memsize_str; | 55 | char *memsize_str; |
56 | unsigned int memsize; | 56 | unsigned int memsize; |
57 | char *ptr; | 57 | char *ptr; |
58 | static char cmdline[CL_SIZE] __initdata; | 58 | static char cmdline[COMMAND_LINE_SIZE] __initdata; |
59 | 59 | ||
60 | /* otherwise look in the environment */ | 60 | /* otherwise look in the environment */ |
61 | memsize_str = prom_getenv("memsize"); | 61 | memsize_str = prom_getenv("memsize"); |
diff --git a/arch/mips/nxp/pnx833x/common/interrupts.c b/arch/mips/nxp/pnx833x/common/interrupts.c index 30533ba200e2..941916f8aaff 100644 --- a/arch/mips/nxp/pnx833x/common/interrupts.c +++ b/arch/mips/nxp/pnx833x/common/interrupts.c | |||
@@ -156,19 +156,19 @@ static int irqflags[PNX833X_PIC_NUM_IRQ]; /* initialized by zeroes */ | |||
156 | #define IRQFLAG_STARTED 1 | 156 | #define IRQFLAG_STARTED 1 |
157 | #define IRQFLAG_DISABLED 2 | 157 | #define IRQFLAG_DISABLED 2 |
158 | 158 | ||
159 | static DEFINE_SPINLOCK(pnx833x_irq_lock); | 159 | static DEFINE_RAW_SPINLOCK(pnx833x_irq_lock); |
160 | 160 | ||
161 | static unsigned int pnx833x_startup_pic_irq(unsigned int irq) | 161 | static unsigned int pnx833x_startup_pic_irq(unsigned int irq) |
162 | { | 162 | { |
163 | unsigned long flags; | 163 | unsigned long flags; |
164 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; | 164 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; |
165 | 165 | ||
166 | spin_lock_irqsave(&pnx833x_irq_lock, flags); | 166 | raw_spin_lock_irqsave(&pnx833x_irq_lock, flags); |
167 | 167 | ||
168 | irqflags[pic_irq] = IRQFLAG_STARTED; /* started, not disabled */ | 168 | irqflags[pic_irq] = IRQFLAG_STARTED; /* started, not disabled */ |
169 | pnx833x_hard_enable_pic_irq(pic_irq); | 169 | pnx833x_hard_enable_pic_irq(pic_irq); |
170 | 170 | ||
171 | spin_unlock_irqrestore(&pnx833x_irq_lock, flags); | 171 | raw_spin_unlock_irqrestore(&pnx833x_irq_lock, flags); |
172 | return 0; | 172 | return 0; |
173 | } | 173 | } |
174 | 174 | ||
@@ -177,12 +177,12 @@ static void pnx833x_shutdown_pic_irq(unsigned int irq) | |||
177 | unsigned long flags; | 177 | unsigned long flags; |
178 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; | 178 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; |
179 | 179 | ||
180 | spin_lock_irqsave(&pnx833x_irq_lock, flags); | 180 | raw_spin_lock_irqsave(&pnx833x_irq_lock, flags); |
181 | 181 | ||
182 | irqflags[pic_irq] = 0; /* not started */ | 182 | irqflags[pic_irq] = 0; /* not started */ |
183 | pnx833x_hard_disable_pic_irq(pic_irq); | 183 | pnx833x_hard_disable_pic_irq(pic_irq); |
184 | 184 | ||
185 | spin_unlock_irqrestore(&pnx833x_irq_lock, flags); | 185 | raw_spin_unlock_irqrestore(&pnx833x_irq_lock, flags); |
186 | } | 186 | } |
187 | 187 | ||
188 | static void pnx833x_enable_pic_irq(unsigned int irq) | 188 | static void pnx833x_enable_pic_irq(unsigned int irq) |
@@ -190,13 +190,13 @@ static void pnx833x_enable_pic_irq(unsigned int irq) | |||
190 | unsigned long flags; | 190 | unsigned long flags; |
191 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; | 191 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; |
192 | 192 | ||
193 | spin_lock_irqsave(&pnx833x_irq_lock, flags); | 193 | raw_spin_lock_irqsave(&pnx833x_irq_lock, flags); |
194 | 194 | ||
195 | irqflags[pic_irq] &= ~IRQFLAG_DISABLED; | 195 | irqflags[pic_irq] &= ~IRQFLAG_DISABLED; |
196 | if (irqflags[pic_irq] == IRQFLAG_STARTED) | 196 | if (irqflags[pic_irq] == IRQFLAG_STARTED) |
197 | pnx833x_hard_enable_pic_irq(pic_irq); | 197 | pnx833x_hard_enable_pic_irq(pic_irq); |
198 | 198 | ||
199 | spin_unlock_irqrestore(&pnx833x_irq_lock, flags); | 199 | raw_spin_unlock_irqrestore(&pnx833x_irq_lock, flags); |
200 | } | 200 | } |
201 | 201 | ||
202 | static void pnx833x_disable_pic_irq(unsigned int irq) | 202 | static void pnx833x_disable_pic_irq(unsigned int irq) |
@@ -204,12 +204,12 @@ static void pnx833x_disable_pic_irq(unsigned int irq) | |||
204 | unsigned long flags; | 204 | unsigned long flags; |
205 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; | 205 | unsigned int pic_irq = irq - PNX833X_PIC_IRQ_BASE; |
206 | 206 | ||
207 | spin_lock_irqsave(&pnx833x_irq_lock, flags); | 207 | raw_spin_lock_irqsave(&pnx833x_irq_lock, flags); |
208 | 208 | ||
209 | irqflags[pic_irq] |= IRQFLAG_DISABLED; | 209 | irqflags[pic_irq] |= IRQFLAG_DISABLED; |
210 | pnx833x_hard_disable_pic_irq(pic_irq); | 210 | pnx833x_hard_disable_pic_irq(pic_irq); |
211 | 211 | ||
212 | spin_unlock_irqrestore(&pnx833x_irq_lock, flags); | 212 | raw_spin_unlock_irqrestore(&pnx833x_irq_lock, flags); |
213 | } | 213 | } |
214 | 214 | ||
215 | static void pnx833x_ack_pic_irq(unsigned int irq) | 215 | static void pnx833x_ack_pic_irq(unsigned int irq) |
@@ -220,15 +220,15 @@ static void pnx833x_end_pic_irq(unsigned int irq) | |||
220 | { | 220 | { |
221 | } | 221 | } |
222 | 222 | ||
223 | static DEFINE_SPINLOCK(pnx833x_gpio_pnx833x_irq_lock); | 223 | static DEFINE_RAW_SPINLOCK(pnx833x_gpio_pnx833x_irq_lock); |
224 | 224 | ||
225 | static unsigned int pnx833x_startup_gpio_irq(unsigned int irq) | 225 | static unsigned int pnx833x_startup_gpio_irq(unsigned int irq) |
226 | { | 226 | { |
227 | int pin = irq - PNX833X_GPIO_IRQ_BASE; | 227 | int pin = irq - PNX833X_GPIO_IRQ_BASE; |
228 | unsigned long flags; | 228 | unsigned long flags; |
229 | spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); | 229 | raw_spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); |
230 | pnx833x_gpio_enable_irq(pin); | 230 | pnx833x_gpio_enable_irq(pin); |
231 | spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); | 231 | raw_spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); |
232 | return 0; | 232 | return 0; |
233 | } | 233 | } |
234 | 234 | ||
@@ -236,18 +236,18 @@ static void pnx833x_enable_gpio_irq(unsigned int irq) | |||
236 | { | 236 | { |
237 | int pin = irq - PNX833X_GPIO_IRQ_BASE; | 237 | int pin = irq - PNX833X_GPIO_IRQ_BASE; |
238 | unsigned long flags; | 238 | unsigned long flags; |
239 | spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); | 239 | raw_spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); |
240 | pnx833x_gpio_enable_irq(pin); | 240 | pnx833x_gpio_enable_irq(pin); |
241 | spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); | 241 | raw_spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); |
242 | } | 242 | } |
243 | 243 | ||
244 | static void pnx833x_disable_gpio_irq(unsigned int irq) | 244 | static void pnx833x_disable_gpio_irq(unsigned int irq) |
245 | { | 245 | { |
246 | int pin = irq - PNX833X_GPIO_IRQ_BASE; | 246 | int pin = irq - PNX833X_GPIO_IRQ_BASE; |
247 | unsigned long flags; | 247 | unsigned long flags; |
248 | spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); | 248 | raw_spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); |
249 | pnx833x_gpio_disable_irq(pin); | 249 | pnx833x_gpio_disable_irq(pin); |
250 | spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); | 250 | raw_spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); |
251 | } | 251 | } |
252 | 252 | ||
253 | static void pnx833x_ack_gpio_irq(unsigned int irq) | 253 | static void pnx833x_ack_gpio_irq(unsigned int irq) |
@@ -258,9 +258,9 @@ static void pnx833x_end_gpio_irq(unsigned int irq) | |||
258 | { | 258 | { |
259 | int pin = irq - PNX833X_GPIO_IRQ_BASE; | 259 | int pin = irq - PNX833X_GPIO_IRQ_BASE; |
260 | unsigned long flags; | 260 | unsigned long flags; |
261 | spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); | 261 | raw_spin_lock_irqsave(&pnx833x_gpio_pnx833x_irq_lock, flags); |
262 | pnx833x_gpio_clear_irq(pin); | 262 | pnx833x_gpio_clear_irq(pin); |
263 | spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); | 263 | raw_spin_unlock_irqrestore(&pnx833x_gpio_pnx833x_irq_lock, flags); |
264 | } | 264 | } |
265 | 265 | ||
266 | static int pnx833x_set_type_gpio_irq(unsigned int irq, unsigned int flow_type) | 266 | static int pnx833x_set_type_gpio_irq(unsigned int irq, unsigned int flow_type) |
@@ -295,7 +295,7 @@ static int pnx833x_set_type_gpio_irq(unsigned int irq, unsigned int flow_type) | |||
295 | } | 295 | } |
296 | 296 | ||
297 | static struct irq_chip pnx833x_pic_irq_type = { | 297 | static struct irq_chip pnx833x_pic_irq_type = { |
298 | .typename = "PNX-PIC", | 298 | .name = "PNX-PIC", |
299 | .startup = pnx833x_startup_pic_irq, | 299 | .startup = pnx833x_startup_pic_irq, |
300 | .shutdown = pnx833x_shutdown_pic_irq, | 300 | .shutdown = pnx833x_shutdown_pic_irq, |
301 | .enable = pnx833x_enable_pic_irq, | 301 | .enable = pnx833x_enable_pic_irq, |
@@ -305,7 +305,7 @@ static struct irq_chip pnx833x_pic_irq_type = { | |||
305 | }; | 305 | }; |
306 | 306 | ||
307 | static struct irq_chip pnx833x_gpio_irq_type = { | 307 | static struct irq_chip pnx833x_gpio_irq_type = { |
308 | .typename = "PNX-GPIO", | 308 | .name = "PNX-GPIO", |
309 | .startup = pnx833x_startup_gpio_irq, | 309 | .startup = pnx833x_startup_gpio_irq, |
310 | .shutdown = pnx833x_disable_gpio_irq, | 310 | .shutdown = pnx833x_disable_gpio_irq, |
311 | .enable = pnx833x_enable_gpio_irq, | 311 | .enable = pnx833x_enable_gpio_irq, |
@@ -377,4 +377,3 @@ void __init plat_time_init(void) | |||
377 | 377 | ||
378 | mips_hpt_frequency *= 500000; | 378 | mips_hpt_frequency *= 500000; |
379 | } | 379 | } |
380 | |||
diff --git a/arch/mips/nxp/pnx833x/common/prom.c b/arch/mips/nxp/pnx833x/common/prom.c index 2a41e8fec210..29969f90a6b0 100644 --- a/arch/mips/nxp/pnx833x/common/prom.c +++ b/arch/mips/nxp/pnx833x/common/prom.c | |||
@@ -62,9 +62,3 @@ char __init *prom_getenv(char *envname) | |||
62 | void __init prom_free_prom_memory(void) | 62 | void __init prom_free_prom_memory(void) |
63 | { | 63 | { |
64 | } | 64 | } |
65 | |||
66 | char * __init prom_getcmdline(void) | ||
67 | { | ||
68 | return arcs_cmdline; | ||
69 | } | ||
70 | |||
diff --git a/arch/mips/nxp/pnx833x/common/reset.c b/arch/mips/nxp/pnx833x/common/reset.c index a9bc9bacad2b..e0ea96d29fde 100644 --- a/arch/mips/nxp/pnx833x/common/reset.c +++ b/arch/mips/nxp/pnx833x/common/reset.c | |||
@@ -22,7 +22,6 @@ | |||
22 | * along with this program; if not, write to the Free Software | 22 | * along with this program; if not, write to the Free Software |
23 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 23 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
24 | */ | 24 | */ |
25 | #include <linux/slab.h> | ||
26 | #include <linux/reboot.h> | 25 | #include <linux/reboot.h> |
27 | #include <pnx833x.h> | 26 | #include <pnx833x.h> |
28 | 27 | ||
diff --git a/arch/mips/nxp/pnx8550/common/int.c b/arch/mips/nxp/pnx8550/common/int.c index 7aca7d5375e5..cfed5051dc6d 100644 --- a/arch/mips/nxp/pnx8550/common/int.c +++ b/arch/mips/nxp/pnx8550/common/int.c | |||
@@ -27,7 +27,6 @@ | |||
27 | #include <linux/init.h> | 27 | #include <linux/init.h> |
28 | #include <linux/irq.h> | 28 | #include <linux/irq.h> |
29 | #include <linux/sched.h> | 29 | #include <linux/sched.h> |
30 | #include <linux/slab.h> | ||
31 | #include <linux/interrupt.h> | 30 | #include <linux/interrupt.h> |
32 | #include <linux/kernel_stat.h> | 31 | #include <linux/kernel_stat.h> |
33 | #include <linux/random.h> | 32 | #include <linux/random.h> |
diff --git a/arch/mips/nxp/pnx8550/common/proc.c b/arch/mips/nxp/pnx8550/common/proc.c index af094cd1d85b..3bba5ec828e8 100644 --- a/arch/mips/nxp/pnx8550/common/proc.c +++ b/arch/mips/nxp/pnx8550/common/proc.c | |||
@@ -16,7 +16,6 @@ | |||
16 | #include <linux/proc_fs.h> | 16 | #include <linux/proc_fs.h> |
17 | #include <linux/irq.h> | 17 | #include <linux/irq.h> |
18 | #include <linux/sched.h> | 18 | #include <linux/sched.h> |
19 | #include <linux/slab.h> | ||
20 | #include <linux/interrupt.h> | 19 | #include <linux/interrupt.h> |
21 | #include <linux/kernel_stat.h> | 20 | #include <linux/kernel_stat.h> |
22 | #include <linux/random.h> | 21 | #include <linux/random.h> |
diff --git a/arch/mips/nxp/pnx8550/common/prom.c b/arch/mips/nxp/pnx8550/common/prom.c index 2f567452e7ac..32f70097c3c7 100644 --- a/arch/mips/nxp/pnx8550/common/prom.c +++ b/arch/mips/nxp/pnx8550/common/prom.c | |||
@@ -124,6 +124,5 @@ void prom_putchar(char c) | |||
124 | } | 124 | } |
125 | } | 125 | } |
126 | 126 | ||
127 | EXPORT_SYMBOL(prom_getcmdline); | ||
128 | EXPORT_SYMBOL(get_ethernet_addr); | 127 | EXPORT_SYMBOL(get_ethernet_addr); |
129 | EXPORT_SYMBOL(str2eaddr); | 128 | EXPORT_SYMBOL(str2eaddr); |
diff --git a/arch/mips/nxp/pnx8550/common/reset.c b/arch/mips/nxp/pnx8550/common/reset.c index 7b2cbc5b2c7c..fadd8744a6bc 100644 --- a/arch/mips/nxp/pnx8550/common/reset.c +++ b/arch/mips/nxp/pnx8550/common/reset.c | |||
@@ -20,7 +20,8 @@ | |||
20 | * Reset the PNX8550 board. | 20 | * Reset the PNX8550 board. |
21 | * | 21 | * |
22 | */ | 22 | */ |
23 | #include <linux/slab.h> | 23 | #include <linux/kernel.h> |
24 | |||
24 | #include <asm/reboot.h> | 25 | #include <asm/reboot.h> |
25 | #include <glb.h> | 26 | #include <glb.h> |
26 | 27 | ||
diff --git a/arch/mips/oprofile/common.c b/arch/mips/oprofile/common.c index 7832ad257a14..f9eb1aba6345 100644 --- a/arch/mips/oprofile/common.c +++ b/arch/mips/oprofile/common.c | |||
@@ -6,6 +6,7 @@ | |||
6 | * Copyright (C) 2004, 2005 Ralf Baechle | 6 | * Copyright (C) 2004, 2005 Ralf Baechle |
7 | * Copyright (C) 2005 MIPS Technologies, Inc. | 7 | * Copyright (C) 2005 MIPS Technologies, Inc. |
8 | */ | 8 | */ |
9 | #include <linux/compiler.h> | ||
9 | #include <linux/errno.h> | 10 | #include <linux/errno.h> |
10 | #include <linux/init.h> | 11 | #include <linux/init.h> |
11 | #include <linux/oprofile.h> | 12 | #include <linux/oprofile.h> |
@@ -14,9 +15,9 @@ | |||
14 | 15 | ||
15 | #include "op_impl.h" | 16 | #include "op_impl.h" |
16 | 17 | ||
17 | extern struct op_mips_model op_model_mipsxx_ops __attribute__((weak)); | 18 | extern struct op_mips_model op_model_mipsxx_ops __weak; |
18 | extern struct op_mips_model op_model_rm9000_ops __attribute__((weak)); | 19 | extern struct op_mips_model op_model_rm9000_ops __weak; |
19 | extern struct op_mips_model op_model_loongson2_ops __attribute__((weak)); | 20 | extern struct op_mips_model op_model_loongson2_ops __weak; |
20 | 21 | ||
21 | static struct op_mips_model *model; | 22 | static struct op_mips_model *model; |
22 | 23 | ||
diff --git a/arch/mips/oprofile/op_model_loongson2.c b/arch/mips/oprofile/op_model_loongson2.c index 575cd1473475..fa3bf661ae29 100644 --- a/arch/mips/oprofile/op_model_loongson2.c +++ b/arch/mips/oprofile/op_model_loongson2.c | |||
@@ -1,9 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * Loongson2 performance counter driver for oprofile | 2 | * Loongson2 performance counter driver for oprofile |
3 | * | 3 | * |
4 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 4 | * Copyright (C) 2009 Lemote Inc. |
5 | * Author: Yanhua <yanh@lemote.com> | 5 | * Author: Yanhua <yanh@lemote.com> |
6 | * Author: Wu Zhangjin <wuzj@lemote.com> | 6 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> |
7 | * | 7 | * |
8 | * This file is subject to the terms and conditions of the GNU General Public | 8 | * This file is subject to the terms and conditions of the GNU General Public |
9 | * License. See the file "COPYING" in the main directory of this archive | 9 | * License. See the file "COPYING" in the main directory of this archive |
@@ -47,8 +47,6 @@ static struct loongson2_register_config { | |||
47 | int cnt1_enabled, cnt2_enabled; | 47 | int cnt1_enabled, cnt2_enabled; |
48 | } reg; | 48 | } reg; |
49 | 49 | ||
50 | DEFINE_SPINLOCK(sample_lock); | ||
51 | |||
52 | static char *oprofid = "LoongsonPerf"; | 50 | static char *oprofid = "LoongsonPerf"; |
53 | static irqreturn_t loongson2_perfcount_handler(int irq, void *dev_id); | 51 | static irqreturn_t loongson2_perfcount_handler(int irq, void *dev_id); |
54 | /* Compute all of the registers in preparation for enabling profiling. */ | 52 | /* Compute all of the registers in preparation for enabling profiling. */ |
@@ -115,7 +113,6 @@ static irqreturn_t loongson2_perfcount_handler(int irq, void *dev_id) | |||
115 | uint64_t counter, counter1, counter2; | 113 | uint64_t counter, counter1, counter2; |
116 | struct pt_regs *regs = get_irq_regs(); | 114 | struct pt_regs *regs = get_irq_regs(); |
117 | int enabled; | 115 | int enabled; |
118 | unsigned long flags; | ||
119 | 116 | ||
120 | /* | 117 | /* |
121 | * LOONGSON2 defines two 32-bit performance counters. | 118 | * LOONGSON2 defines two 32-bit performance counters. |
@@ -125,6 +122,9 @@ static irqreturn_t loongson2_perfcount_handler(int irq, void *dev_id) | |||
125 | */ | 122 | */ |
126 | 123 | ||
127 | /* Check whether the irq belongs to me */ | 124 | /* Check whether the irq belongs to me */ |
125 | enabled = read_c0_perfctrl() & LOONGSON2_PERFCNT_INT_EN; | ||
126 | if (!enabled) | ||
127 | return IRQ_NONE; | ||
128 | enabled = reg.cnt1_enabled | reg.cnt2_enabled; | 128 | enabled = reg.cnt1_enabled | reg.cnt2_enabled; |
129 | if (!enabled) | 129 | if (!enabled) |
130 | return IRQ_NONE; | 130 | return IRQ_NONE; |
@@ -133,8 +133,6 @@ static irqreturn_t loongson2_perfcount_handler(int irq, void *dev_id) | |||
133 | counter1 = counter & 0xffffffff; | 133 | counter1 = counter & 0xffffffff; |
134 | counter2 = counter >> 32; | 134 | counter2 = counter >> 32; |
135 | 135 | ||
136 | spin_lock_irqsave(&sample_lock, flags); | ||
137 | |||
138 | if (counter1 & LOONGSON2_PERFCNT_OVERFLOW) { | 136 | if (counter1 & LOONGSON2_PERFCNT_OVERFLOW) { |
139 | if (reg.cnt1_enabled) | 137 | if (reg.cnt1_enabled) |
140 | oprofile_add_sample(regs, 0); | 138 | oprofile_add_sample(regs, 0); |
@@ -146,8 +144,6 @@ static irqreturn_t loongson2_perfcount_handler(int irq, void *dev_id) | |||
146 | counter2 = reg.reset_counter2; | 144 | counter2 = reg.reset_counter2; |
147 | } | 145 | } |
148 | 146 | ||
149 | spin_unlock_irqrestore(&sample_lock, flags); | ||
150 | |||
151 | write_c0_perfcnt((counter2 << 32) | counter1); | 147 | write_c0_perfcnt((counter2 << 32) | counter1); |
152 | 148 | ||
153 | return IRQ_HANDLED; | 149 | return IRQ_HANDLED; |
diff --git a/arch/mips/pci/Makefile b/arch/mips/pci/Makefile index 91bfe73a7f60..c9209ca6c8e7 100644 --- a/arch/mips/pci/Makefile +++ b/arch/mips/pci/Makefile | |||
@@ -22,13 +22,13 @@ obj-$(CONFIG_BCM63XX) += pci-bcm63xx.o fixup-bcm63xx.o \ | |||
22 | # | 22 | # |
23 | # These are still pretty much in the old state, watch, go blind. | 23 | # These are still pretty much in the old state, watch, go blind. |
24 | # | 24 | # |
25 | obj-$(CONFIG_BASLER_EXCITE) += ops-titan.o pci-excite.o fixup-excite.o | ||
26 | obj-$(CONFIG_LASAT) += pci-lasat.o | 25 | obj-$(CONFIG_LASAT) += pci-lasat.o |
27 | obj-$(CONFIG_MIPS_COBALT) += fixup-cobalt.o | 26 | obj-$(CONFIG_MIPS_COBALT) += fixup-cobalt.o |
28 | obj-$(CONFIG_SOC_AU1500) += fixup-au1000.o ops-au1000.o | 27 | obj-$(CONFIG_SOC_AU1500) += fixup-au1000.o ops-au1000.o |
29 | obj-$(CONFIG_SOC_AU1550) += fixup-au1000.o ops-au1000.o | 28 | obj-$(CONFIG_SOC_AU1550) += fixup-au1000.o ops-au1000.o |
30 | obj-$(CONFIG_SOC_PNX8550) += fixup-pnx8550.o ops-pnx8550.o | 29 | obj-$(CONFIG_SOC_PNX8550) += fixup-pnx8550.o ops-pnx8550.o |
31 | obj-$(CONFIG_LEMOTE_FULOONG2E) += fixup-fuloong2e.o ops-bonito64.o | 30 | obj-$(CONFIG_LEMOTE_FULOONG2E) += fixup-fuloong2e.o ops-loongson2.o |
31 | obj-$(CONFIG_LEMOTE_MACH2F) += fixup-lemote2f.o ops-loongson2.o | ||
32 | obj-$(CONFIG_MIPS_MALTA) += fixup-malta.o | 32 | obj-$(CONFIG_MIPS_MALTA) += fixup-malta.o |
33 | obj-$(CONFIG_PMC_MSP7120_GW) += fixup-pmcmsp.o ops-pmcmsp.o | 33 | obj-$(CONFIG_PMC_MSP7120_GW) += fixup-pmcmsp.o ops-pmcmsp.o |
34 | obj-$(CONFIG_PMC_MSP7120_EVAL) += fixup-pmcmsp.o ops-pmcmsp.o | 34 | obj-$(CONFIG_PMC_MSP7120_EVAL) += fixup-pmcmsp.o ops-pmcmsp.o |
diff --git a/arch/mips/pci/fixup-cobalt.c b/arch/mips/pci/fixup-cobalt.c index 9553b14002dd..acacd1407c63 100644 --- a/arch/mips/pci/fixup-cobalt.c +++ b/arch/mips/pci/fixup-cobalt.c | |||
@@ -51,6 +51,67 @@ static void qube_raq_galileo_early_fixup(struct pci_dev *dev) | |||
51 | DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_MARVELL, PCI_DEVICE_ID_MARVELL_GT64111, | 51 | DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_MARVELL, PCI_DEVICE_ID_MARVELL_GT64111, |
52 | qube_raq_galileo_early_fixup); | 52 | qube_raq_galileo_early_fixup); |
53 | 53 | ||
54 | static void __devinit cobalt_legacy_ide_resource_fixup(struct pci_dev *dev, | ||
55 | struct resource *res) | ||
56 | { | ||
57 | struct pci_controller *hose = (struct pci_controller *)dev->sysdata; | ||
58 | unsigned long offset = hose->io_offset; | ||
59 | struct resource orig = *res; | ||
60 | |||
61 | if (!(res->flags & IORESOURCE_IO) || | ||
62 | !(res->flags & IORESOURCE_PCI_FIXED)) | ||
63 | return; | ||
64 | |||
65 | res->start -= offset; | ||
66 | res->end -= offset; | ||
67 | dev_printk(KERN_DEBUG, &dev->dev, "converted legacy %pR to bus %pR\n", | ||
68 | &orig, res); | ||
69 | } | ||
70 | |||
71 | static void __devinit cobalt_legacy_ide_fixup(struct pci_dev *dev) | ||
72 | { | ||
73 | u32 class; | ||
74 | u8 progif; | ||
75 | |||
76 | /* | ||
77 | * If the IDE controller is in legacy mode, pci_setup_device() fills in | ||
78 | * the resources with the legacy addresses that normally appear on the | ||
79 | * PCI bus, just as if we had read them from a BAR. | ||
80 | * | ||
81 | * However, with the GT-64111, those legacy addresses, e.g., 0x1f0, | ||
82 | * will never appear on the PCI bus because it converts memory accesses | ||
83 | * in the PCI I/O region (which is never at address zero) into I/O port | ||
84 | * accesses with no address translation. | ||
85 | * | ||
86 | * For example, if GT_DEF_PCI0_IO_BASE is 0x10000000, a load or store | ||
87 | * to physical address 0x100001f0 will become a PCI access to I/O port | ||
88 | * 0x100001f0. There's no way to generate an access to I/O port 0x1f0, | ||
89 | * but the VT82C586 IDE controller does respond at 0x100001f0 because | ||
90 | * it only decodes the low 24 bits of the address. | ||
91 | * | ||
92 | * When this quirk runs, the pci_dev resources should contain bus | ||
93 | * addresses, not Linux I/O port numbers, so convert legacy addresses | ||
94 | * like 0x1f0 to bus addresses like 0x100001f0. Later, we'll convert | ||
95 | * them back with pcibios_fixup_bus() or pcibios_bus_to_resource(). | ||
96 | */ | ||
97 | class = dev->class >> 8; | ||
98 | if (class != PCI_CLASS_STORAGE_IDE) | ||
99 | return; | ||
100 | |||
101 | pci_read_config_byte(dev, PCI_CLASS_PROG, &progif); | ||
102 | if ((progif & 1) == 0) { | ||
103 | cobalt_legacy_ide_resource_fixup(dev, &dev->resource[0]); | ||
104 | cobalt_legacy_ide_resource_fixup(dev, &dev->resource[1]); | ||
105 | } | ||
106 | if ((progif & 4) == 0) { | ||
107 | cobalt_legacy_ide_resource_fixup(dev, &dev->resource[2]); | ||
108 | cobalt_legacy_ide_resource_fixup(dev, &dev->resource[3]); | ||
109 | } | ||
110 | } | ||
111 | |||
112 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, | ||
113 | cobalt_legacy_ide_fixup); | ||
114 | |||
54 | static void qube_raq_via_bmIDE_fixup(struct pci_dev *dev) | 115 | static void qube_raq_via_bmIDE_fixup(struct pci_dev *dev) |
55 | { | 116 | { |
56 | unsigned short cfgword; | 117 | unsigned short cfgword; |
diff --git a/arch/mips/pci/fixup-excite.c b/arch/mips/pci/fixup-excite.c deleted file mode 100644 index cd64d9f177c4..000000000000 --- a/arch/mips/pci/fixup-excite.c +++ /dev/null | |||
@@ -1,36 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2004 by Basler Vision Technologies AG | ||
3 | * Author: Thomas Koeller <thomas.koeller@baslerweb.com> | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License as published by | ||
7 | * the Free Software Foundation; either version 2 of the License, or | ||
8 | * (at your option) any later version. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, | ||
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, write to the Free Software | ||
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
18 | */ | ||
19 | #include <linux/kernel.h> | ||
20 | #include <linux/init.h> | ||
21 | #include <linux/pci.h> | ||
22 | #include <excite.h> | ||
23 | |||
24 | int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) | ||
25 | { | ||
26 | if (pin == 0) | ||
27 | return -1; | ||
28 | |||
29 | return USB_IRQ; /* USB controller is the only PCI device */ | ||
30 | } | ||
31 | |||
32 | /* Do platform specific device initialization at pci_enable_device() time */ | ||
33 | int pcibios_plat_dev_init(struct pci_dev *dev) | ||
34 | { | ||
35 | return 0; | ||
36 | } | ||
diff --git a/arch/mips/pci/fixup-fuloong2e.c b/arch/mips/pci/fixup-fuloong2e.c index 0c4c7a81213f..4f6d8da07f93 100644 --- a/arch/mips/pci/fixup-fuloong2e.c +++ b/arch/mips/pci/fixup-fuloong2e.c | |||
@@ -13,7 +13,8 @@ | |||
13 | */ | 13 | */ |
14 | #include <linux/init.h> | 14 | #include <linux/init.h> |
15 | #include <linux/pci.h> | 15 | #include <linux/pci.h> |
16 | #include <asm/mips-boards/bonito64.h> | 16 | |
17 | #include <loongson.h> | ||
17 | 18 | ||
18 | /* South bridge slot number is set by the pci probe process */ | 19 | /* South bridge slot number is set by the pci probe process */ |
19 | static u8 sb_slot = 5; | 20 | static u8 sb_slot = 5; |
@@ -35,7 +36,7 @@ int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) | |||
35 | break; | 36 | break; |
36 | } | 37 | } |
37 | } else { | 38 | } else { |
38 | irq = BONITO_IRQ_BASE + 25 + pin; | 39 | irq = LOONGSON_IRQ_BASE + 25 + pin; |
39 | } | 40 | } |
40 | return irq; | 41 | return irq; |
41 | 42 | ||
diff --git a/arch/mips/pci/fixup-lemote2f.c b/arch/mips/pci/fixup-lemote2f.c new file mode 100644 index 000000000000..4b9768d5d729 --- /dev/null +++ b/arch/mips/pci/fixup-lemote2f.c | |||
@@ -0,0 +1,160 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2008 Lemote Technology | ||
3 | * Copyright (C) 2004 ICT CAS | ||
4 | * Author: Li xiaoyu, lixy@ict.ac.cn | ||
5 | * | ||
6 | * Copyright (C) 2007 Lemote, Inc. | ||
7 | * Author: Fuxin Zhang, zhangfx@lemote.com | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify it | ||
10 | * under the terms of the GNU General Public License as published by the | ||
11 | * Free Software Foundation; either version 2 of the License, or (at your | ||
12 | * option) any later version. | ||
13 | */ | ||
14 | #include <linux/init.h> | ||
15 | #include <linux/pci.h> | ||
16 | |||
17 | #include <loongson.h> | ||
18 | #include <cs5536/cs5536.h> | ||
19 | #include <cs5536/cs5536_pci.h> | ||
20 | |||
21 | /* PCI interrupt pins | ||
22 | * | ||
23 | * These should not be changed, or you should consider loongson2f interrupt | ||
24 | * register and your pci card dispatch | ||
25 | */ | ||
26 | |||
27 | #define PCIA 4 | ||
28 | #define PCIB 5 | ||
29 | #define PCIC 6 | ||
30 | #define PCID 7 | ||
31 | |||
32 | /* all the pci device has the PCIA pin, check the datasheet. */ | ||
33 | static char irq_tab[][5] __initdata = { | ||
34 | /* INTA INTB INTC INTD */ | ||
35 | {0, 0, 0, 0, 0}, /* 11: Unused */ | ||
36 | {0, 0, 0, 0, 0}, /* 12: Unused */ | ||
37 | {0, 0, 0, 0, 0}, /* 13: Unused */ | ||
38 | {0, 0, 0, 0, 0}, /* 14: Unused */ | ||
39 | {0, 0, 0, 0, 0}, /* 15: Unused */ | ||
40 | {0, 0, 0, 0, 0}, /* 16: Unused */ | ||
41 | {0, PCIA, 0, 0, 0}, /* 17: RTL8110-0 */ | ||
42 | {0, PCIB, 0, 0, 0}, /* 18: RTL8110-1 */ | ||
43 | {0, PCIC, 0, 0, 0}, /* 19: SiI3114 */ | ||
44 | {0, PCID, 0, 0, 0}, /* 20: 3-ports nec usb */ | ||
45 | {0, PCIA, PCIB, PCIC, PCID}, /* 21: PCI-SLOT */ | ||
46 | {0, 0, 0, 0, 0}, /* 22: Unused */ | ||
47 | {0, 0, 0, 0, 0}, /* 23: Unused */ | ||
48 | {0, 0, 0, 0, 0}, /* 24: Unused */ | ||
49 | {0, 0, 0, 0, 0}, /* 25: Unused */ | ||
50 | {0, 0, 0, 0, 0}, /* 26: Unused */ | ||
51 | {0, 0, 0, 0, 0}, /* 27: Unused */ | ||
52 | }; | ||
53 | |||
54 | int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) | ||
55 | { | ||
56 | int virq; | ||
57 | |||
58 | if ((PCI_SLOT(dev->devfn) != PCI_IDSEL_CS5536) | ||
59 | && (PCI_SLOT(dev->devfn) < 32)) { | ||
60 | virq = irq_tab[slot][pin]; | ||
61 | printk(KERN_INFO "slot: %d, pin: %d, irq: %d\n", slot, pin, | ||
62 | virq + LOONGSON_IRQ_BASE); | ||
63 | if (virq != 0) | ||
64 | return LOONGSON_IRQ_BASE + virq; | ||
65 | else | ||
66 | return 0; | ||
67 | } else if (PCI_SLOT(dev->devfn) == PCI_IDSEL_CS5536) { /* cs5536 */ | ||
68 | switch (PCI_FUNC(dev->devfn)) { | ||
69 | case 2: | ||
70 | pci_write_config_byte(dev, PCI_INTERRUPT_LINE, | ||
71 | CS5536_IDE_INTR); | ||
72 | return CS5536_IDE_INTR; /* for IDE */ | ||
73 | case 3: | ||
74 | pci_write_config_byte(dev, PCI_INTERRUPT_LINE, | ||
75 | CS5536_ACC_INTR); | ||
76 | return CS5536_ACC_INTR; /* for AUDIO */ | ||
77 | case 4: /* for OHCI */ | ||
78 | case 5: /* for EHCI */ | ||
79 | case 6: /* for UDC */ | ||
80 | case 7: /* for OTG */ | ||
81 | pci_write_config_byte(dev, PCI_INTERRUPT_LINE, | ||
82 | CS5536_USB_INTR); | ||
83 | return CS5536_USB_INTR; | ||
84 | } | ||
85 | return dev->irq; | ||
86 | } else { | ||
87 | printk(KERN_INFO " strange pci slot number.\n"); | ||
88 | return 0; | ||
89 | } | ||
90 | } | ||
91 | |||
92 | /* Do platform specific device initialization at pci_enable_device() time */ | ||
93 | int pcibios_plat_dev_init(struct pci_dev *dev) | ||
94 | { | ||
95 | return 0; | ||
96 | } | ||
97 | |||
98 | /* CS5536 SPEC. fixup */ | ||
99 | static void __init loongson_cs5536_isa_fixup(struct pci_dev *pdev) | ||
100 | { | ||
101 | /* the uart1 and uart2 interrupt in PIC is enabled as default */ | ||
102 | pci_write_config_dword(pdev, PCI_UART1_INT_REG, 1); | ||
103 | pci_write_config_dword(pdev, PCI_UART2_INT_REG, 1); | ||
104 | } | ||
105 | |||
106 | static void __init loongson_cs5536_ide_fixup(struct pci_dev *pdev) | ||
107 | { | ||
108 | /* setting the mutex pin as IDE function */ | ||
109 | pci_write_config_dword(pdev, PCI_IDE_CFG_REG, | ||
110 | CS5536_IDE_FLASH_SIGNATURE); | ||
111 | } | ||
112 | |||
113 | static void __init loongson_cs5536_acc_fixup(struct pci_dev *pdev) | ||
114 | { | ||
115 | /* enable the AUDIO interrupt in PIC */ | ||
116 | pci_write_config_dword(pdev, PCI_ACC_INT_REG, 1); | ||
117 | |||
118 | pci_write_config_byte(pdev, PCI_LATENCY_TIMER, 0xc0); | ||
119 | } | ||
120 | |||
121 | static void __init loongson_cs5536_ohci_fixup(struct pci_dev *pdev) | ||
122 | { | ||
123 | /* enable the OHCI interrupt in PIC */ | ||
124 | /* THE OHCI, EHCI, UDC, OTG are shared with interrupt in PIC */ | ||
125 | pci_write_config_dword(pdev, PCI_OHCI_INT_REG, 1); | ||
126 | } | ||
127 | |||
128 | static void __init loongson_cs5536_ehci_fixup(struct pci_dev *pdev) | ||
129 | { | ||
130 | u32 hi, lo; | ||
131 | |||
132 | /* Serial short detect enable */ | ||
133 | _rdmsr(USB_MSR_REG(USB_CONFIG), &hi, &lo); | ||
134 | _wrmsr(USB_MSR_REG(USB_CONFIG), (1 << 1) | (1 << 3), lo); | ||
135 | |||
136 | /* setting the USB2.0 micro frame length */ | ||
137 | pci_write_config_dword(pdev, PCI_EHCI_FLADJ_REG, 0x2000); | ||
138 | } | ||
139 | |||
140 | static void __init loongson_nec_fixup(struct pci_dev *pdev) | ||
141 | { | ||
142 | unsigned int val; | ||
143 | |||
144 | pci_read_config_dword(pdev, 0xe0, &val); | ||
145 | /* Only 2 port be used */ | ||
146 | pci_write_config_dword(pdev, 0xe0, (val & ~3) | 0x2); | ||
147 | } | ||
148 | |||
149 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_ISA, | ||
150 | loongson_cs5536_isa_fixup); | ||
151 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_OHC, | ||
152 | loongson_cs5536_ohci_fixup); | ||
153 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_EHC, | ||
154 | loongson_cs5536_ehci_fixup); | ||
155 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_AUDIO, | ||
156 | loongson_cs5536_acc_fixup); | ||
157 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_IDE, | ||
158 | loongson_cs5536_ide_fixup); | ||
159 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NEC, PCI_DEVICE_ID_NEC_USB, | ||
160 | loongson_nec_fixup); | ||
diff --git a/arch/mips/pci/ops-bonito64.c b/arch/mips/pci/ops-bonito64.c index 54e55e7a2431..1b3e03f20c54 100644 --- a/arch/mips/pci/ops-bonito64.c +++ b/arch/mips/pci/ops-bonito64.c | |||
@@ -29,13 +29,8 @@ | |||
29 | #define PCI_ACCESS_READ 0 | 29 | #define PCI_ACCESS_READ 0 |
30 | #define PCI_ACCESS_WRITE 1 | 30 | #define PCI_ACCESS_WRITE 1 |
31 | 31 | ||
32 | #ifdef CONFIG_LEMOTE_FULOONG2E | ||
33 | #define CFG_SPACE_REG(offset) (void *)CKSEG1ADDR(BONITO_PCICFG_BASE | (offset)) | ||
34 | #define ID_SEL_BEGIN 11 | ||
35 | #else | ||
36 | #define CFG_SPACE_REG(offset) (void *)CKSEG1ADDR(_pcictrl_bonito_pcicfg + (offset)) | 32 | #define CFG_SPACE_REG(offset) (void *)CKSEG1ADDR(_pcictrl_bonito_pcicfg + (offset)) |
37 | #define ID_SEL_BEGIN 10 | 33 | #define ID_SEL_BEGIN 10 |
38 | #endif | ||
39 | #define MAX_DEV_NUM (31 - ID_SEL_BEGIN) | 34 | #define MAX_DEV_NUM (31 - ID_SEL_BEGIN) |
40 | 35 | ||
41 | 36 | ||
@@ -77,10 +72,8 @@ static int bonito64_pcibios_config_access(unsigned char access_type, | |||
77 | addrp = CFG_SPACE_REG(addr & 0xffff); | 72 | addrp = CFG_SPACE_REG(addr & 0xffff); |
78 | if (access_type == PCI_ACCESS_WRITE) { | 73 | if (access_type == PCI_ACCESS_WRITE) { |
79 | writel(cpu_to_le32(*data), addrp); | 74 | writel(cpu_to_le32(*data), addrp); |
80 | #ifndef CONFIG_LEMOTE_FULOONG2E | ||
81 | /* Wait till done */ | 75 | /* Wait till done */ |
82 | while (BONITO_PCIMSTAT & 0xF); | 76 | while (BONITO_PCIMSTAT & 0xF); |
83 | #endif | ||
84 | } else { | 77 | } else { |
85 | *data = le32_to_cpu(readl(addrp)); | 78 | *data = le32_to_cpu(readl(addrp)); |
86 | } | 79 | } |
diff --git a/arch/mips/pci/ops-loongson2.c b/arch/mips/pci/ops-loongson2.c new file mode 100644 index 000000000000..d657ee0bc131 --- /dev/null +++ b/arch/mips/pci/ops-loongson2.c | |||
@@ -0,0 +1,216 @@ | |||
1 | /* | ||
2 | * Copyright (C) 1999, 2000, 2004 MIPS Technologies, Inc. | ||
3 | * All rights reserved. | ||
4 | * Authors: Carsten Langgaard <carstenl@mips.com> | ||
5 | * Maciej W. Rozycki <macro@mips.com> | ||
6 | * | ||
7 | * Copyright (C) 2009 Lemote Inc. | ||
8 | * Author: Wu Zhangjin <wuzhangjin@gmail.com> | ||
9 | * | ||
10 | * This program is free software; you can distribute it and/or modify it | ||
11 | * under the terms of the GNU General Public License (Version 2) as | ||
12 | * published by the Free Software Foundation. | ||
13 | */ | ||
14 | #include <linux/types.h> | ||
15 | #include <linux/pci.h> | ||
16 | #include <linux/kernel.h> | ||
17 | #include <linux/init.h> | ||
18 | |||
19 | #include <loongson.h> | ||
20 | |||
21 | #ifdef CONFIG_CS5536 | ||
22 | #include <cs5536/cs5536_pci.h> | ||
23 | #include <cs5536/cs5536.h> | ||
24 | #endif | ||
25 | |||
26 | #define PCI_ACCESS_READ 0 | ||
27 | #define PCI_ACCESS_WRITE 1 | ||
28 | |||
29 | #define CFG_SPACE_REG(offset) \ | ||
30 | (void *)CKSEG1ADDR(LOONGSON_PCICFG_BASE | (offset)) | ||
31 | #define ID_SEL_BEGIN 11 | ||
32 | #define MAX_DEV_NUM (31 - ID_SEL_BEGIN) | ||
33 | |||
34 | |||
35 | static int loongson_pcibios_config_access(unsigned char access_type, | ||
36 | struct pci_bus *bus, | ||
37 | unsigned int devfn, int where, | ||
38 | u32 *data) | ||
39 | { | ||
40 | u32 busnum = bus->number; | ||
41 | u32 addr, type; | ||
42 | u32 dummy; | ||
43 | void *addrp; | ||
44 | int device = PCI_SLOT(devfn); | ||
45 | int function = PCI_FUNC(devfn); | ||
46 | int reg = where & ~3; | ||
47 | |||
48 | if (busnum == 0) { | ||
49 | /* board-specific part,currently,only fuloong2f,yeeloong2f | ||
50 | * use CS5536, fuloong2e use via686b, gdium has no | ||
51 | * south bridge | ||
52 | */ | ||
53 | #ifdef CONFIG_CS5536 | ||
54 | /* cs5536_pci_conf_read4/write4() will call _rdmsr/_wrmsr() to | ||
55 | * access the regsters PCI_MSR_ADDR, PCI_MSR_DATA_LO, | ||
56 | * PCI_MSR_DATA_HI, which is bigger than PCI_MSR_CTRL, so, it | ||
57 | * will not go this branch, but the others. so, no calling dead | ||
58 | * loop here. | ||
59 | */ | ||
60 | if ((PCI_IDSEL_CS5536 == device) && (reg < PCI_MSR_CTRL)) { | ||
61 | switch (access_type) { | ||
62 | case PCI_ACCESS_READ: | ||
63 | *data = cs5536_pci_conf_read4(function, reg); | ||
64 | break; | ||
65 | case PCI_ACCESS_WRITE: | ||
66 | cs5536_pci_conf_write4(function, reg, *data); | ||
67 | break; | ||
68 | } | ||
69 | return 0; | ||
70 | } | ||
71 | #endif | ||
72 | /* Type 0 configuration for onboard PCI bus */ | ||
73 | if (device > MAX_DEV_NUM) | ||
74 | return -1; | ||
75 | |||
76 | addr = (1 << (device + ID_SEL_BEGIN)) | (function << 8) | reg; | ||
77 | type = 0; | ||
78 | } else { | ||
79 | /* Type 1 configuration for offboard PCI bus */ | ||
80 | addr = (busnum << 16) | (device << 11) | (function << 8) | reg; | ||
81 | type = 0x10000; | ||
82 | } | ||
83 | |||
84 | /* Clear aborts */ | ||
85 | LOONGSON_PCICMD |= LOONGSON_PCICMD_MABORT_CLR | \ | ||
86 | LOONGSON_PCICMD_MTABORT_CLR; | ||
87 | |||
88 | LOONGSON_PCIMAP_CFG = (addr >> 16) | type; | ||
89 | |||
90 | /* Flush Bonito register block */ | ||
91 | dummy = LOONGSON_PCIMAP_CFG; | ||
92 | mmiowb(); | ||
93 | |||
94 | addrp = CFG_SPACE_REG(addr & 0xffff); | ||
95 | if (access_type == PCI_ACCESS_WRITE) | ||
96 | writel(cpu_to_le32(*data), addrp); | ||
97 | else | ||
98 | *data = le32_to_cpu(readl(addrp)); | ||
99 | |||
100 | /* Detect Master/Target abort */ | ||
101 | if (LOONGSON_PCICMD & (LOONGSON_PCICMD_MABORT_CLR | | ||
102 | LOONGSON_PCICMD_MTABORT_CLR)) { | ||
103 | /* Error occurred */ | ||
104 | |||
105 | /* Clear bits */ | ||
106 | LOONGSON_PCICMD |= (LOONGSON_PCICMD_MABORT_CLR | | ||
107 | LOONGSON_PCICMD_MTABORT_CLR); | ||
108 | |||
109 | return -1; | ||
110 | } | ||
111 | |||
112 | return 0; | ||
113 | |||
114 | } | ||
115 | |||
116 | |||
117 | /* | ||
118 | * We can't address 8 and 16 bit words directly. Instead we have to | ||
119 | * read/write a 32bit word and mask/modify the data we actually want. | ||
120 | */ | ||
121 | static int loongson_pcibios_read(struct pci_bus *bus, unsigned int devfn, | ||
122 | int where, int size, u32 *val) | ||
123 | { | ||
124 | u32 data = 0; | ||
125 | |||
126 | if ((size == 2) && (where & 1)) | ||
127 | return PCIBIOS_BAD_REGISTER_NUMBER; | ||
128 | else if ((size == 4) && (where & 3)) | ||
129 | return PCIBIOS_BAD_REGISTER_NUMBER; | ||
130 | |||
131 | if (loongson_pcibios_config_access(PCI_ACCESS_READ, bus, devfn, where, | ||
132 | &data)) | ||
133 | return -1; | ||
134 | |||
135 | if (size == 1) | ||
136 | *val = (data >> ((where & 3) << 3)) & 0xff; | ||
137 | else if (size == 2) | ||
138 | *val = (data >> ((where & 3) << 3)) & 0xffff; | ||
139 | else | ||
140 | *val = data; | ||
141 | |||
142 | return PCIBIOS_SUCCESSFUL; | ||
143 | } | ||
144 | |||
145 | static int loongson_pcibios_write(struct pci_bus *bus, unsigned int devfn, | ||
146 | int where, int size, u32 val) | ||
147 | { | ||
148 | u32 data = 0; | ||
149 | |||
150 | if ((size == 2) && (where & 1)) | ||
151 | return PCIBIOS_BAD_REGISTER_NUMBER; | ||
152 | else if ((size == 4) && (where & 3)) | ||
153 | return PCIBIOS_BAD_REGISTER_NUMBER; | ||
154 | |||
155 | if (size == 4) | ||
156 | data = val; | ||
157 | else { | ||
158 | if (loongson_pcibios_config_access(PCI_ACCESS_READ, bus, devfn, | ||
159 | where, &data)) | ||
160 | return -1; | ||
161 | |||
162 | if (size == 1) | ||
163 | data = (data & ~(0xff << ((where & 3) << 3))) | | ||
164 | (val << ((where & 3) << 3)); | ||
165 | else if (size == 2) | ||
166 | data = (data & ~(0xffff << ((where & 3) << 3))) | | ||
167 | (val << ((where & 3) << 3)); | ||
168 | } | ||
169 | |||
170 | if (loongson_pcibios_config_access(PCI_ACCESS_WRITE, bus, devfn, where, | ||
171 | &data)) | ||
172 | return -1; | ||
173 | |||
174 | return PCIBIOS_SUCCESSFUL; | ||
175 | } | ||
176 | |||
177 | struct pci_ops loongson_pci_ops = { | ||
178 | .read = loongson_pcibios_read, | ||
179 | .write = loongson_pcibios_write | ||
180 | }; | ||
181 | |||
182 | #ifdef CONFIG_CS5536 | ||
183 | DEFINE_RAW_SPINLOCK(msr_lock); | ||
184 | |||
185 | void _rdmsr(u32 msr, u32 *hi, u32 *lo) | ||
186 | { | ||
187 | struct pci_bus bus = { | ||
188 | .number = PCI_BUS_CS5536 | ||
189 | }; | ||
190 | u32 devfn = PCI_DEVFN(PCI_IDSEL_CS5536, 0); | ||
191 | unsigned long flags; | ||
192 | |||
193 | raw_spin_lock_irqsave(&msr_lock, flags); | ||
194 | loongson_pcibios_write(&bus, devfn, PCI_MSR_ADDR, 4, msr); | ||
195 | loongson_pcibios_read(&bus, devfn, PCI_MSR_DATA_LO, 4, lo); | ||
196 | loongson_pcibios_read(&bus, devfn, PCI_MSR_DATA_HI, 4, hi); | ||
197 | raw_spin_unlock_irqrestore(&msr_lock, flags); | ||
198 | } | ||
199 | EXPORT_SYMBOL(_rdmsr); | ||
200 | |||
201 | void _wrmsr(u32 msr, u32 hi, u32 lo) | ||
202 | { | ||
203 | struct pci_bus bus = { | ||
204 | .number = PCI_BUS_CS5536 | ||
205 | }; | ||
206 | u32 devfn = PCI_DEVFN(PCI_IDSEL_CS5536, 0); | ||
207 | unsigned long flags; | ||
208 | |||
209 | raw_spin_lock_irqsave(&msr_lock, flags); | ||
210 | loongson_pcibios_write(&bus, devfn, PCI_MSR_ADDR, 4, msr); | ||
211 | loongson_pcibios_write(&bus, devfn, PCI_MSR_DATA_LO, 4, lo); | ||
212 | loongson_pcibios_write(&bus, devfn, PCI_MSR_DATA_HI, 4, hi); | ||
213 | raw_spin_unlock_irqrestore(&msr_lock, flags); | ||
214 | } | ||
215 | EXPORT_SYMBOL(_wrmsr); | ||
216 | #endif | ||
diff --git a/arch/mips/pci/ops-pmcmsp.c b/arch/mips/pci/ops-pmcmsp.c index 32548b5d68d6..04b31478a6d7 100644 --- a/arch/mips/pci/ops-pmcmsp.c +++ b/arch/mips/pci/ops-pmcmsp.c | |||
@@ -206,7 +206,7 @@ static void pci_proc_init(void) | |||
206 | } | 206 | } |
207 | #endif /* CONFIG_PROC_FS && PCI_COUNTERS */ | 207 | #endif /* CONFIG_PROC_FS && PCI_COUNTERS */ |
208 | 208 | ||
209 | DEFINE_SPINLOCK(bpci_lock); | 209 | static DEFINE_SPINLOCK(bpci_lock); |
210 | 210 | ||
211 | /***************************************************************************** | 211 | /***************************************************************************** |
212 | * | 212 | * |
diff --git a/arch/mips/pci/ops-titan-ht.c b/arch/mips/pci/ops-titan-ht.c index 46c636c27e06..749c1922d420 100644 --- a/arch/mips/pci/ops-titan-ht.c +++ b/arch/mips/pci/ops-titan-ht.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <linux/types.h> | 26 | #include <linux/types.h> |
27 | #include <linux/pci.h> | 27 | #include <linux/pci.h> |
28 | #include <linux/kernel.h> | 28 | #include <linux/kernel.h> |
29 | #include <linux/slab.h> | ||
30 | #include <linux/delay.h> | 29 | #include <linux/delay.h> |
31 | #include <asm/io.h> | 30 | #include <asm/io.h> |
32 | 31 | ||
diff --git a/arch/mips/pci/pci-bcm47xx.c b/arch/mips/pci/pci-bcm47xx.c index bea9b6cdfdbf..455f8e50a007 100644 --- a/arch/mips/pci/pci-bcm47xx.c +++ b/arch/mips/pci/pci-bcm47xx.c | |||
@@ -57,4 +57,3 @@ int pcibios_plat_dev_init(struct pci_dev *dev) | |||
57 | dev->irq = res; | 57 | dev->irq = res; |
58 | return 0; | 58 | return 0; |
59 | } | 59 | } |
60 | |||
diff --git a/arch/mips/pci/pci-excite.c b/arch/mips/pci/pci-excite.c deleted file mode 100644 index 8a56876afcc6..000000000000 --- a/arch/mips/pci/pci-excite.c +++ /dev/null | |||
@@ -1,149 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2004 by Basler Vision Technologies AG | ||
3 | * Author: Thomas Koeller <thomas.koeller@baslerweb.com> | ||
4 | * Based on the PMC-Sierra Yosemite board support by Ralf Baechle. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
20 | #include <linux/init.h> | ||
21 | #include <linux/kernel.h> | ||
22 | #include <linux/types.h> | ||
23 | #include <linux/pci.h> | ||
24 | #include <linux/bitops.h> | ||
25 | #include <asm/rm9k-ocd.h> | ||
26 | #include <excite.h> | ||
27 | |||
28 | |||
29 | extern struct pci_ops titan_pci_ops; | ||
30 | |||
31 | |||
32 | static struct resource | ||
33 | mem_resource = { | ||
34 | .name = "PCI memory", | ||
35 | .start = EXCITE_PHYS_PCI_MEM, | ||
36 | .end = EXCITE_PHYS_PCI_MEM + EXCITE_SIZE_PCI_MEM - 1, | ||
37 | .flags = IORESOURCE_MEM | ||
38 | }, | ||
39 | io_resource = { | ||
40 | .name = "PCI I/O", | ||
41 | .start = EXCITE_PHYS_PCI_IO, | ||
42 | .end = EXCITE_PHYS_PCI_IO + EXCITE_SIZE_PCI_IO - 1, | ||
43 | .flags = IORESOURCE_IO | ||
44 | }; | ||
45 | |||
46 | |||
47 | static struct pci_controller bx_controller = { | ||
48 | .pci_ops = &titan_pci_ops, | ||
49 | .mem_resource = &mem_resource, | ||
50 | .mem_offset = 0x00000000UL, | ||
51 | .io_resource = &io_resource, | ||
52 | .io_offset = 0x00000000UL | ||
53 | }; | ||
54 | |||
55 | |||
56 | static char | ||
57 | iopage_failed[] __initdata = "Cannot allocate PCI I/O page", | ||
58 | modebits_no_pci[] __initdata = "PCI is not configured in mode bits"; | ||
59 | |||
60 | #define RM9000x2_OCD_HTSC 0x0604 | ||
61 | #define RM9000x2_OCD_HTBHL 0x060c | ||
62 | #define RM9000x2_OCD_PCIHRST 0x078c | ||
63 | |||
64 | #define RM9K_OCD_MODEBIT1 0x00d4 /* (MODEBIT1) Mode Bit 1 */ | ||
65 | #define RM9K_OCD_CPHDCR 0x00f4 /* CPU-PCI/HT Data Control. */ | ||
66 | |||
67 | #define PCISC_FB2B 0x00000200 | ||
68 | #define PCISC_MWICG 0x00000010 | ||
69 | #define PCISC_EMC 0x00000004 | ||
70 | #define PCISC_ERMA 0x00000002 | ||
71 | |||
72 | |||
73 | |||
74 | static int __init basler_excite_pci_setup(void) | ||
75 | { | ||
76 | const unsigned int fullbars = memsize / (256 << 20); | ||
77 | unsigned int i; | ||
78 | |||
79 | /* Check modebits to see if PCI is really enabled. */ | ||
80 | if (!((ocd_readl(RM9K_OCD_MODEBIT1) >> (47-32)) & 0x1)) | ||
81 | panic(modebits_no_pci); | ||
82 | |||
83 | if (NULL == request_mem_region(EXCITE_PHYS_PCI_IO, EXCITE_SIZE_PCI_IO, | ||
84 | "Memory-mapped PCI I/O page")) | ||
85 | panic(iopage_failed); | ||
86 | |||
87 | /* Enable PCI 0 as master for config cycles */ | ||
88 | ocd_writel(PCISC_EMC | PCISC_ERMA, RM9000x2_OCD_HTSC); | ||
89 | |||
90 | |||
91 | /* Set up latency timer */ | ||
92 | ocd_writel(0x8008, RM9000x2_OCD_HTBHL); | ||
93 | |||
94 | /* Setup host IO and Memory space */ | ||
95 | ocd_writel((EXCITE_PHYS_PCI_IO >> 4) | 1, LKB7); | ||
96 | ocd_writel(((EXCITE_SIZE_PCI_IO >> 4) & 0x7fffff00) - 0x100, LKM7); | ||
97 | ocd_writel((EXCITE_PHYS_PCI_MEM >> 4) | 1, LKB8); | ||
98 | ocd_writel(((EXCITE_SIZE_PCI_MEM >> 4) & 0x7fffff00) - 0x100, LKM8); | ||
99 | |||
100 | /* Set up PCI BARs to map all installed memory */ | ||
101 | for (i = 0; i < 6; i++) { | ||
102 | const unsigned int bar = 0x610 + i * 4; | ||
103 | |||
104 | if (i < fullbars) { | ||
105 | ocd_writel(0x10000000 * i, bar); | ||
106 | ocd_writel(0x01000000 * i, bar + 0x140); | ||
107 | ocd_writel(0x0ffff029, bar + 0x100); | ||
108 | continue; | ||
109 | } | ||
110 | |||
111 | if (i == fullbars) { | ||
112 | int o; | ||
113 | u32 mask; | ||
114 | |||
115 | const unsigned long rem = memsize - i * 0x10000000; | ||
116 | if (!rem) { | ||
117 | ocd_writel(0x00000000, bar + 0x100); | ||
118 | continue; | ||
119 | } | ||
120 | |||
121 | o = ffs(rem) - 1; | ||
122 | if (rem & ~(0x1 << o)) | ||
123 | o++; | ||
124 | mask = ((0x1 << o) & 0x0ffff000) - 0x1000; | ||
125 | ocd_writel(0x10000000 * i, bar); | ||
126 | ocd_writel(0x01000000 * i, bar + 0x140); | ||
127 | ocd_writel(0x00000029 | mask, bar + 0x100); | ||
128 | continue; | ||
129 | } | ||
130 | |||
131 | ocd_writel(0x00000000, bar + 0x100); | ||
132 | } | ||
133 | |||
134 | /* Finally, enable the PCI interrupt */ | ||
135 | #if USB_IRQ > 7 | ||
136 | set_c0_intcontrol(1 << USB_IRQ); | ||
137 | #else | ||
138 | set_c0_status(1 << (USB_IRQ + 8)); | ||
139 | #endif | ||
140 | |||
141 | ioport_resource.start = EXCITE_PHYS_PCI_IO; | ||
142 | ioport_resource.end = EXCITE_PHYS_PCI_IO + EXCITE_SIZE_PCI_IO - 1; | ||
143 | set_io_port_base((unsigned long) ioremap_nocache(EXCITE_PHYS_PCI_IO, EXCITE_SIZE_PCI_IO)); | ||
144 | register_pci_controller(&bx_controller); | ||
145 | return 0; | ||
146 | } | ||
147 | |||
148 | |||
149 | arch_initcall(basler_excite_pci_setup); | ||
diff --git a/arch/mips/pci/pci-octeon.c b/arch/mips/pci/pci-octeon.c index 9cb0c807f564..d248b707eff3 100644 --- a/arch/mips/pci/pci-octeon.c +++ b/arch/mips/pci/pci-octeon.c | |||
@@ -209,16 +209,14 @@ const char *octeon_get_pci_interrupts(void) | |||
209 | case CVMX_BOARD_TYPE_NAO38: | 209 | case CVMX_BOARD_TYPE_NAO38: |
210 | /* This is really the NAC38 */ | 210 | /* This is really the NAC38 */ |
211 | return "AAAAADABAAAAAAAAAAAAAAAAAAAAAAAA"; | 211 | return "AAAAADABAAAAAAAAAAAAAAAAAAAAAAAA"; |
212 | case CVMX_BOARD_TYPE_THUNDER: | ||
213 | return ""; | ||
214 | case CVMX_BOARD_TYPE_EBH3000: | ||
215 | return ""; | ||
216 | case CVMX_BOARD_TYPE_EBH3100: | 212 | case CVMX_BOARD_TYPE_EBH3100: |
217 | case CVMX_BOARD_TYPE_CN3010_EVB_HS5: | 213 | case CVMX_BOARD_TYPE_CN3010_EVB_HS5: |
218 | case CVMX_BOARD_TYPE_CN3005_EVB_HS5: | 214 | case CVMX_BOARD_TYPE_CN3005_EVB_HS5: |
219 | return "AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; | 215 | return "AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; |
220 | case CVMX_BOARD_TYPE_BBGW_REF: | 216 | case CVMX_BOARD_TYPE_BBGW_REF: |
221 | return "AABCD"; | 217 | return "AABCD"; |
218 | case CVMX_BOARD_TYPE_THUNDER: | ||
219 | case CVMX_BOARD_TYPE_EBH3000: | ||
222 | default: | 220 | default: |
223 | return ""; | 221 | return ""; |
224 | } | 222 | } |
diff --git a/arch/mips/pci/pci-sb1250.c b/arch/mips/pci/pci-sb1250.c index ada24e6f951f..1711e8e101bc 100644 --- a/arch/mips/pci/pci-sb1250.c +++ b/arch/mips/pci/pci-sb1250.c | |||
@@ -37,6 +37,7 @@ | |||
37 | #include <linux/mm.h> | 37 | #include <linux/mm.h> |
38 | #include <linux/console.h> | 38 | #include <linux/console.h> |
39 | #include <linux/tty.h> | 39 | #include <linux/tty.h> |
40 | #include <linux/vt.h> | ||
40 | 41 | ||
41 | #include <asm/io.h> | 42 | #include <asm/io.h> |
42 | 43 | ||
@@ -254,7 +255,7 @@ static int __init sb1250_pcibios_init(void) | |||
254 | * XXX ehs: Should this happen in PCI Device mode? | 255 | * XXX ehs: Should this happen in PCI Device mode? |
255 | */ | 256 | */ |
256 | io_map_base = ioremap(A_PHYS_LDTPCI_IO_MATCH_BYTES, 1024 * 1024); | 257 | io_map_base = ioremap(A_PHYS_LDTPCI_IO_MATCH_BYTES, 1024 * 1024); |
257 | sb1250_controller.io_map_base = io_map_base; | 258 | sb1250_controller.io_map_base = (unsigned long)io_map_base; |
258 | set_io_port_base((unsigned long)io_map_base); | 259 | set_io_port_base((unsigned long)io_map_base); |
259 | 260 | ||
260 | #ifdef CONFIG_SIBYTE_HAS_LDT | 261 | #ifdef CONFIG_SIBYTE_HAS_LDT |
diff --git a/arch/mips/pci/pci.c b/arch/mips/pci/pci.c index 9a11c2226891..38bc28005b4a 100644 --- a/arch/mips/pci/pci.c +++ b/arch/mips/pci/pci.c | |||
@@ -49,8 +49,8 @@ static int pci_initialized; | |||
49 | * but we want to try to avoid allocating at 0x2900-0x2bff | 49 | * but we want to try to avoid allocating at 0x2900-0x2bff |
50 | * which might have be mirrored at 0x0100-0x03ff.. | 50 | * which might have be mirrored at 0x0100-0x03ff.. |
51 | */ | 51 | */ |
52 | void | 52 | resource_size_t |
53 | pcibios_align_resource(void *data, struct resource *res, | 53 | pcibios_align_resource(void *data, const struct resource *res, |
54 | resource_size_t size, resource_size_t align) | 54 | resource_size_t size, resource_size_t align) |
55 | { | 55 | { |
56 | struct pci_dev *dev = data; | 56 | struct pci_dev *dev = data; |
@@ -73,7 +73,7 @@ pcibios_align_resource(void *data, struct resource *res, | |||
73 | start = PCIBIOS_MIN_MEM + hose->mem_resource->start; | 73 | start = PCIBIOS_MIN_MEM + hose->mem_resource->start; |
74 | } | 74 | } |
75 | 75 | ||
76 | res->start = start; | 76 | return start; |
77 | } | 77 | } |
78 | 78 | ||
79 | static void __devinit pcibios_scanbus(struct pci_controller *hose) | 79 | static void __devinit pcibios_scanbus(struct pci_controller *hose) |
@@ -251,8 +251,6 @@ static void pcibios_fixup_device_resources(struct pci_dev *dev, | |||
251 | for (i = 0; i < PCI_NUM_RESOURCES; i++) { | 251 | for (i = 0; i < PCI_NUM_RESOURCES; i++) { |
252 | if (!dev->resource[i].start) | 252 | if (!dev->resource[i].start) |
253 | continue; | 253 | continue; |
254 | if (dev->resource[i].flags & IORESOURCE_PCI_FIXED) | ||
255 | continue; | ||
256 | if (dev->resource[i].flags & IORESOURCE_IO) | 254 | if (dev->resource[i].flags & IORESOURCE_IO) |
257 | offset = hose->io_offset; | 255 | offset = hose->io_offset; |
258 | else if (dev->resource[i].flags & IORESOURCE_MEM) | 256 | else if (dev->resource[i].flags & IORESOURCE_MEM) |
diff --git a/arch/mips/pmc-sierra/msp71xx/msp_irq_cic.c b/arch/mips/pmc-sierra/msp71xx/msp_irq_cic.c index 5175357d0a25..94c9c2c9fbc1 100644 --- a/arch/mips/pmc-sierra/msp71xx/msp_irq_cic.c +++ b/arch/mips/pmc-sierra/msp71xx/msp_irq_cic.c | |||
@@ -131,4 +131,3 @@ void msp_cic_irq_dispatch(void) | |||
131 | else | 131 | else |
132 | do_IRQ(ffs(pending) + intbase - 1); | 132 | do_IRQ(ffs(pending) + intbase - 1); |
133 | } | 133 | } |
134 | |||
diff --git a/arch/mips/pmc-sierra/msp71xx/msp_prom.c b/arch/mips/pmc-sierra/msp71xx/msp_prom.c index c317a3623ce9..db00deb59b9c 100644 --- a/arch/mips/pmc-sierra/msp71xx/msp_prom.c +++ b/arch/mips/pmc-sierra/msp71xx/msp_prom.c | |||
@@ -40,6 +40,7 @@ | |||
40 | #include <linux/string.h> | 40 | #include <linux/string.h> |
41 | #include <linux/interrupt.h> | 41 | #include <linux/interrupt.h> |
42 | #include <linux/mm.h> | 42 | #include <linux/mm.h> |
43 | #include <linux/slab.h> | ||
43 | 44 | ||
44 | #include <asm/addrspace.h> | 45 | #include <asm/addrspace.h> |
45 | #include <asm/bootinfo.h> | 46 | #include <asm/bootinfo.h> |
@@ -303,12 +304,6 @@ char *prom_getenv(char *env_name) | |||
303 | } | 304 | } |
304 | 305 | ||
305 | /* PROM commandline functions */ | 306 | /* PROM commandline functions */ |
306 | char *prom_getcmdline(void) | ||
307 | { | ||
308 | return &(arcs_cmdline[0]); | ||
309 | } | ||
310 | EXPORT_SYMBOL(prom_getcmdline); | ||
311 | |||
312 | void __init prom_init_cmdline(void) | 307 | void __init prom_init_cmdline(void) |
313 | { | 308 | { |
314 | char *cp; | 309 | char *cp; |
diff --git a/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.c b/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.c index fc990cb31941..d6f8bdff8cbb 100644 --- a/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.c +++ b/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.c | |||
@@ -127,7 +127,7 @@ static int recv_ack(void) | |||
127 | 127 | ||
128 | if (ack) { | 128 | if (ack) { |
129 | do_idle(); | 129 | do_idle(); |
130 | printk(KERN_ERR "Error reading the Atmel 24C32/24C64 EEPROM \n"); | 130 | printk(KERN_ERR "Error reading the Atmel 24C32/24C64 EEPROM\n"); |
131 | return -1; | 131 | return -1; |
132 | } | 132 | } |
133 | 133 | ||
diff --git a/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.h b/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.h index a31288335fba..d6c7ec469fa8 100644 --- a/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.h +++ b/arch/mips/pmc-sierra/yosemite/atmel_read_eeprom.h | |||
@@ -65,4 +65,3 @@ | |||
65 | const char rts = TIOCM_RTS; | 65 | const char rts = TIOCM_RTS; |
66 | const char dtr = TIOCM_DTR; | 66 | const char dtr = TIOCM_DTR; |
67 | int fd; | 67 | int fd; |
68 | |||
diff --git a/arch/mips/pmc-sierra/yosemite/ht.c b/arch/mips/pmc-sierra/yosemite/ht.c index 678388fd34b1..63be40e470db 100644 --- a/arch/mips/pmc-sierra/yosemite/ht.c +++ b/arch/mips/pmc-sierra/yosemite/ht.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <linux/types.h> | 26 | #include <linux/types.h> |
27 | #include <linux/pci.h> | 27 | #include <linux/pci.h> |
28 | #include <linux/kernel.h> | 28 | #include <linux/kernel.h> |
29 | #include <linux/slab.h> | ||
30 | #include <asm/pci.h> | 29 | #include <asm/pci.h> |
31 | #include <asm/io.h> | 30 | #include <asm/io.h> |
32 | 31 | ||
@@ -345,14 +344,13 @@ int pcibios_enable_device(struct pci_dev *dev, int mask) | |||
345 | return pcibios_enable_resources(dev); | 344 | return pcibios_enable_resources(dev); |
346 | } | 345 | } |
347 | 346 | ||
348 | void pcibios_align_resource(void *data, struct resource *res, | 347 | resource_size_t pcibios_align_resource(void *data, const struct resource *res, |
349 | resource_size_t size, resource_size_t align) | 348 | resource_size_t size, resource_size_t align) |
350 | { | 349 | { |
351 | struct pci_dev *dev = data; | 350 | struct pci_dev *dev = data; |
351 | resource_size_t start = res->start; | ||
352 | 352 | ||
353 | if (res->flags & IORESOURCE_IO) { | 353 | if (res->flags & IORESOURCE_IO) { |
354 | resource_size_t start = res->start; | ||
355 | |||
356 | /* We need to avoid collisions with `mirrored' VGA ports | 354 | /* We need to avoid collisions with `mirrored' VGA ports |
357 | and other strange ISA hardware, so we always want the | 355 | and other strange ISA hardware, so we always want the |
358 | addresses kilobyte aligned. */ | 356 | addresses kilobyte aligned. */ |
@@ -363,8 +361,9 @@ void pcibios_align_resource(void *data, struct resource *res, | |||
363 | } | 361 | } |
364 | 362 | ||
365 | start = (start + 1024 - 1) & ~(1024 - 1); | 363 | start = (start + 1024 - 1) & ~(1024 - 1); |
366 | res->start = start; | ||
367 | } | 364 | } |
365 | |||
366 | return start; | ||
368 | } | 367 | } |
369 | 368 | ||
370 | struct pci_ops titan_pci_ops = { | 369 | struct pci_ops titan_pci_ops = { |
diff --git a/arch/mips/pmc-sierra/yosemite/irq.c b/arch/mips/pmc-sierra/yosemite/irq.c index 5f673eba142c..51021cfd04bc 100644 --- a/arch/mips/pmc-sierra/yosemite/irq.c +++ b/arch/mips/pmc-sierra/yosemite/irq.c | |||
@@ -37,7 +37,6 @@ | |||
37 | #include <linux/ioport.h> | 37 | #include <linux/ioport.h> |
38 | #include <linux/irq.h> | 38 | #include <linux/irq.h> |
39 | #include <linux/timex.h> | 39 | #include <linux/timex.h> |
40 | #include <linux/slab.h> | ||
41 | #include <linux/random.h> | 40 | #include <linux/random.h> |
42 | #include <linux/bitops.h> | 41 | #include <linux/bitops.h> |
43 | #include <asm/bootinfo.h> | 42 | #include <asm/bootinfo.h> |
diff --git a/arch/mips/pmc-sierra/yosemite/smp.c b/arch/mips/pmc-sierra/yosemite/smp.c index 326fe7a392e8..efc9e889b349 100644 --- a/arch/mips/pmc-sierra/yosemite/smp.c +++ b/arch/mips/pmc-sierra/yosemite/smp.c | |||
@@ -8,7 +8,7 @@ | |||
8 | 8 | ||
9 | #define LAUNCHSTACK_SIZE 256 | 9 | #define LAUNCHSTACK_SIZE 256 |
10 | 10 | ||
11 | static __cpuinitdata DEFINE_SPINLOCK(launch_lock); | 11 | static __cpuinitdata arch_spinlock_t launch_lock = __ARCH_SPIN_LOCK_UNLOCKED; |
12 | 12 | ||
13 | static unsigned long secondary_sp __cpuinitdata; | 13 | static unsigned long secondary_sp __cpuinitdata; |
14 | static unsigned long secondary_gp __cpuinitdata; | 14 | static unsigned long secondary_gp __cpuinitdata; |
@@ -20,7 +20,7 @@ static void __init prom_smp_bootstrap(void) | |||
20 | { | 20 | { |
21 | local_irq_disable(); | 21 | local_irq_disable(); |
22 | 22 | ||
23 | while (spin_is_locked(&launch_lock)); | 23 | while (arch_spin_is_locked(&launch_lock)); |
24 | 24 | ||
25 | __asm__ __volatile__( | 25 | __asm__ __volatile__( |
26 | " move $sp, %0 \n" | 26 | " move $sp, %0 \n" |
@@ -37,7 +37,7 @@ static void __init prom_smp_bootstrap(void) | |||
37 | */ | 37 | */ |
38 | void __init prom_grab_secondary(void) | 38 | void __init prom_grab_secondary(void) |
39 | { | 39 | { |
40 | spin_lock(&launch_lock); | 40 | arch_spin_lock(&launch_lock); |
41 | 41 | ||
42 | pmon_cpustart(1, &prom_smp_bootstrap, | 42 | pmon_cpustart(1, &prom_smp_bootstrap, |
43 | launchstack + LAUNCHSTACK_SIZE, 0); | 43 | launchstack + LAUNCHSTACK_SIZE, 0); |
@@ -138,7 +138,7 @@ static void __cpuinit yos_boot_secondary(int cpu, struct task_struct *idle) | |||
138 | secondary_sp = sp; | 138 | secondary_sp = sp; |
139 | secondary_gp = gp; | 139 | secondary_gp = gp; |
140 | 140 | ||
141 | spin_unlock(&launch_lock); | 141 | arch_spin_unlock(&launch_lock); |
142 | } | 142 | } |
143 | 143 | ||
144 | /* | 144 | /* |
diff --git a/arch/mips/power/cpu.c b/arch/mips/power/cpu.c index 7995df45dc8d..26a6ef19d71f 100644 --- a/arch/mips/power/cpu.c +++ b/arch/mips/power/cpu.c | |||
@@ -3,9 +3,9 @@ | |||
3 | * | 3 | * |
4 | * Licensed under the GPLv2 | 4 | * Licensed under the GPLv2 |
5 | * | 5 | * |
6 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 6 | * Copyright (C) 2009 Lemote Inc. |
7 | * Author: Hu Hongbing <huhb@lemote.com> | 7 | * Author: Hu Hongbing <huhb@lemote.com> |
8 | * Wu Zhangjin <wuzj@lemote.com> | 8 | * Wu Zhangjin <wuzhangjin@gmail.com> |
9 | */ | 9 | */ |
10 | #include <asm/suspend.h> | 10 | #include <asm/suspend.h> |
11 | #include <asm/fpu.h> | 11 | #include <asm/fpu.h> |
diff --git a/arch/mips/power/hibernate.S b/arch/mips/power/hibernate.S index 0cf86fb32ec3..dbb5c7b4b70f 100644 --- a/arch/mips/power/hibernate.S +++ b/arch/mips/power/hibernate.S | |||
@@ -3,9 +3,9 @@ | |||
3 | * | 3 | * |
4 | * Licensed under the GPLv2 | 4 | * Licensed under the GPLv2 |
5 | * | 5 | * |
6 | * Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology | 6 | * Copyright (C) 2009 Lemote Inc. |
7 | * Author: Hu Hongbing <huhb@lemote.com> | 7 | * Author: Hu Hongbing <huhb@lemote.com> |
8 | * Wu Zhangjin <wuzj@lemote.com> | 8 | * Wu Zhangjin <wuzhangjin@gmail.com> |
9 | */ | 9 | */ |
10 | #include <asm/asm-offsets.h> | 10 | #include <asm/asm-offsets.h> |
11 | #include <asm/page.h> | 11 | #include <asm/page.h> |
diff --git a/arch/mips/powertv/Kconfig b/arch/mips/powertv/Kconfig new file mode 100644 index 000000000000..ff0e7e3e6954 --- /dev/null +++ b/arch/mips/powertv/Kconfig | |||
@@ -0,0 +1,21 @@ | |||
1 | source "arch/mips/powertv/asic/Kconfig" | ||
2 | |||
3 | config BOOTLOADER_DRIVER | ||
4 | bool "PowerTV Bootloader Driver Support" | ||
5 | default n | ||
6 | depends on POWERTV | ||
7 | help | ||
8 | Use this option if you want to load bootloader driver. | ||
9 | |||
10 | config BOOTLOADER_FAMILY | ||
11 | string "POWERTV Bootloader Family string" | ||
12 | default "85" | ||
13 | depends on POWERTV && !BOOTLOADER_DRIVER | ||
14 | help | ||
15 | This value should be specified when the bootloader driver is disabled | ||
16 | and must be exactly two characters long. Families supported are: | ||
17 | R1 - RNG-100 R2 - RNG-200 | ||
18 | A1 - Class A B1 - Class B | ||
19 | E1 - Class E F1 - Class F | ||
20 | 44 - 45xx 46 - 46xx | ||
21 | 85 - 85xx 86 - 86xx | ||
diff --git a/arch/mips/powertv/Makefile b/arch/mips/powertv/Makefile new file mode 100644 index 000000000000..0a0d73c0564f --- /dev/null +++ b/arch/mips/powertv/Makefile | |||
@@ -0,0 +1,28 @@ | |||
1 | # | ||
2 | # Carsten Langgaard, carstenl@mips.com | ||
3 | # Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved. | ||
4 | # | ||
5 | # Carsten Langgaard, carstenl@mips.com | ||
6 | # Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved. | ||
7 | # Portions copyright (C) 2009 Cisco Systems, Inc. | ||
8 | # | ||
9 | # This program is free software; you can distribute it and/or modify it | ||
10 | # under the terms of the GNU General Public License (Version 2) as | ||
11 | # published by the Free Software Foundation. | ||
12 | # | ||
13 | # This program is distributed in the hope it will be useful, but WITHOUT | ||
14 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
15 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
16 | # for more details. | ||
17 | # | ||
18 | # You should have received a copy of the GNU General Public License along | ||
19 | # with this program; if not, write to the Free Software Foundation, Inc., | ||
20 | # 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
21 | # | ||
22 | # Makefile for the Cisco PowerTV-specific kernel interface routines | ||
23 | # under Linux. | ||
24 | # | ||
25 | |||
26 | obj-y += init.o memory.o reset.o time.o powertv_setup.o asic/ pci/ | ||
27 | |||
28 | EXTRA_CFLAGS += -Wall -Werror | ||
diff --git a/arch/mips/powertv/asic/Kconfig b/arch/mips/powertv/asic/Kconfig new file mode 100644 index 000000000000..2016bfe94d66 --- /dev/null +++ b/arch/mips/powertv/asic/Kconfig | |||
@@ -0,0 +1,28 @@ | |||
1 | config MIN_RUNTIME_RESOURCES | ||
2 | bool "Support for minimum runtime resources" | ||
3 | default n | ||
4 | depends on POWERTV | ||
5 | help | ||
6 | Enables support for minimizing the number of (SA asic) runtime | ||
7 | resources that are preallocated by the kernel. | ||
8 | |||
9 | config MIN_RUNTIME_DOCSIS | ||
10 | bool "Support for minimum DOCSIS resource" | ||
11 | default y | ||
12 | depends on MIN_RUNTIME_RESOURCES | ||
13 | help | ||
14 | Enables support for the preallocated DOCSIS resource. | ||
15 | |||
16 | config MIN_RUNTIME_PMEM | ||
17 | bool "Support for minimum PMEM resource" | ||
18 | default y | ||
19 | depends on MIN_RUNTIME_RESOURCES | ||
20 | help | ||
21 | Enables support for the preallocated Memory resource. | ||
22 | |||
23 | config MIN_RUNTIME_TFTP | ||
24 | bool "Support for minimum TFTP resource" | ||
25 | default y | ||
26 | depends on MIN_RUNTIME_RESOURCES | ||
27 | help | ||
28 | Enables support for the preallocated TFTP resource. | ||
diff --git a/arch/mips/powertv/asic/Makefile b/arch/mips/powertv/asic/Makefile new file mode 100644 index 000000000000..bebfdcff0443 --- /dev/null +++ b/arch/mips/powertv/asic/Makefile | |||
@@ -0,0 +1,23 @@ | |||
1 | # | ||
2 | # Copyright (C) 2009 Scientific-Atlanta, Inc. | ||
3 | # | ||
4 | # This program is free software; you can redistribute it and/or modify | ||
5 | # it under the terms of the GNU General Public License as published by | ||
6 | # the Free Software Foundation; either version 2 of the License, or | ||
7 | # (at your option) any later version. | ||
8 | # | ||
9 | # This program is distributed in the hope that it will be useful, | ||
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | # GNU General Public License for more details. | ||
13 | # | ||
14 | # You should have received a copy of the GNU General Public License | ||
15 | # along with this program; if not, write to the Free Software | ||
16 | # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | # | ||
18 | |||
19 | obj-y += asic-calliope.o asic-cronus.o asic-zeus.o asic_devices.o asic_int.o \ | ||
20 | irq_asic.o prealloc-calliope.o prealloc-cronus.o \ | ||
21 | prealloc-cronuslite.o prealloc-zeus.o | ||
22 | |||
23 | EXTRA_CFLAGS += -Wall -Werror | ||
diff --git a/arch/mips/powertv/asic/asic-calliope.c b/arch/mips/powertv/asic/asic-calliope.c new file mode 100644 index 000000000000..1ae6623444b2 --- /dev/null +++ b/arch/mips/powertv/asic/asic-calliope.c | |||
@@ -0,0 +1,101 @@ | |||
1 | /* | ||
2 | * Locations of devices in the Calliope ASIC. | ||
3 | * | ||
4 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: Ken Eppinett | ||
21 | * David Schleef <ds@schleef.org> | ||
22 | * | ||
23 | * Description: Defines the platform resources for the SA settop. | ||
24 | */ | ||
25 | |||
26 | #include <linux/init.h> | ||
27 | #include <asm/mach-powertv/asic.h> | ||
28 | |||
29 | #define CALLIOPE_ADDR(x) (CALLIOPE_IO_BASE + (x)) | ||
30 | |||
31 | const struct register_map calliope_register_map __initdata = { | ||
32 | .eic_slow0_strt_add = {.phys = CALLIOPE_ADDR(0x800000)}, | ||
33 | .eic_cfg_bits = {.phys = CALLIOPE_ADDR(0x800038)}, | ||
34 | .eic_ready_status = {.phys = CALLIOPE_ADDR(0x80004c)}, | ||
35 | |||
36 | .chipver3 = {.phys = CALLIOPE_ADDR(0xA00800)}, | ||
37 | .chipver2 = {.phys = CALLIOPE_ADDR(0xA00804)}, | ||
38 | .chipver1 = {.phys = CALLIOPE_ADDR(0xA00808)}, | ||
39 | .chipver0 = {.phys = CALLIOPE_ADDR(0xA0080c)}, | ||
40 | |||
41 | /* The registers of IRBlaster */ | ||
42 | .uart1_intstat = {.phys = CALLIOPE_ADDR(0xA01800)}, | ||
43 | .uart1_inten = {.phys = CALLIOPE_ADDR(0xA01804)}, | ||
44 | .uart1_config1 = {.phys = CALLIOPE_ADDR(0xA01808)}, | ||
45 | .uart1_config2 = {.phys = CALLIOPE_ADDR(0xA0180C)}, | ||
46 | .uart1_divisorhi = {.phys = CALLIOPE_ADDR(0xA01810)}, | ||
47 | .uart1_divisorlo = {.phys = CALLIOPE_ADDR(0xA01814)}, | ||
48 | .uart1_data = {.phys = CALLIOPE_ADDR(0xA01818)}, | ||
49 | .uart1_status = {.phys = CALLIOPE_ADDR(0xA0181C)}, | ||
50 | |||
51 | .int_stat_3 = {.phys = CALLIOPE_ADDR(0xA02800)}, | ||
52 | .int_stat_2 = {.phys = CALLIOPE_ADDR(0xA02804)}, | ||
53 | .int_stat_1 = {.phys = CALLIOPE_ADDR(0xA02808)}, | ||
54 | .int_stat_0 = {.phys = CALLIOPE_ADDR(0xA0280c)}, | ||
55 | .int_config = {.phys = CALLIOPE_ADDR(0xA02810)}, | ||
56 | .int_int_scan = {.phys = CALLIOPE_ADDR(0xA02818)}, | ||
57 | .ien_int_3 = {.phys = CALLIOPE_ADDR(0xA02830)}, | ||
58 | .ien_int_2 = {.phys = CALLIOPE_ADDR(0xA02834)}, | ||
59 | .ien_int_1 = {.phys = CALLIOPE_ADDR(0xA02838)}, | ||
60 | .ien_int_0 = {.phys = CALLIOPE_ADDR(0xA0283c)}, | ||
61 | .int_level_3_3 = {.phys = CALLIOPE_ADDR(0xA02880)}, | ||
62 | .int_level_3_2 = {.phys = CALLIOPE_ADDR(0xA02884)}, | ||
63 | .int_level_3_1 = {.phys = CALLIOPE_ADDR(0xA02888)}, | ||
64 | .int_level_3_0 = {.phys = CALLIOPE_ADDR(0xA0288c)}, | ||
65 | .int_level_2_3 = {.phys = CALLIOPE_ADDR(0xA02890)}, | ||
66 | .int_level_2_2 = {.phys = CALLIOPE_ADDR(0xA02894)}, | ||
67 | .int_level_2_1 = {.phys = CALLIOPE_ADDR(0xA02898)}, | ||
68 | .int_level_2_0 = {.phys = CALLIOPE_ADDR(0xA0289c)}, | ||
69 | .int_level_1_3 = {.phys = CALLIOPE_ADDR(0xA028a0)}, | ||
70 | .int_level_1_2 = {.phys = CALLIOPE_ADDR(0xA028a4)}, | ||
71 | .int_level_1_1 = {.phys = CALLIOPE_ADDR(0xA028a8)}, | ||
72 | .int_level_1_0 = {.phys = CALLIOPE_ADDR(0xA028ac)}, | ||
73 | .int_level_0_3 = {.phys = CALLIOPE_ADDR(0xA028b0)}, | ||
74 | .int_level_0_2 = {.phys = CALLIOPE_ADDR(0xA028b4)}, | ||
75 | .int_level_0_1 = {.phys = CALLIOPE_ADDR(0xA028b8)}, | ||
76 | .int_level_0_0 = {.phys = CALLIOPE_ADDR(0xA028bc)}, | ||
77 | .int_docsis_en = {.phys = CALLIOPE_ADDR(0xA028F4)}, | ||
78 | |||
79 | .mips_pll_setup = {.phys = CALLIOPE_ADDR(0x980000)}, | ||
80 | .usb_fs = {.phys = CALLIOPE_ADDR(0x980030)}, | ||
81 | .test_bus = {.phys = CALLIOPE_ADDR(0x9800CC)}, | ||
82 | .crt_spare = {.phys = CALLIOPE_ADDR(0x9800d4)}, | ||
83 | .usb2_ohci_int_mask = {.phys = CALLIOPE_ADDR(0x9A000c)}, | ||
84 | .usb2_strap = {.phys = CALLIOPE_ADDR(0x9A0014)}, | ||
85 | .ehci_hcapbase = {.phys = CALLIOPE_ADDR(0x9BFE00)}, | ||
86 | .ohci_hc_revision = {.phys = CALLIOPE_ADDR(0x9BFC00)}, | ||
87 | .bcm1_bs_lmi_steer = {.phys = CALLIOPE_ADDR(0x9E0004)}, | ||
88 | .usb2_control = {.phys = CALLIOPE_ADDR(0x9E0054)}, | ||
89 | .usb2_stbus_obc = {.phys = CALLIOPE_ADDR(0x9BFF00)}, | ||
90 | .usb2_stbus_mess_size = {.phys = CALLIOPE_ADDR(0x9BFF04)}, | ||
91 | .usb2_stbus_chunk_size = {.phys = CALLIOPE_ADDR(0x9BFF08)}, | ||
92 | |||
93 | .pcie_regs = {.phys = 0x000000}, /* -doesn't exist- */ | ||
94 | .tim_ch = {.phys = CALLIOPE_ADDR(0xA02C10)}, | ||
95 | .tim_cl = {.phys = CALLIOPE_ADDR(0xA02C14)}, | ||
96 | .gpio_dout = {.phys = CALLIOPE_ADDR(0xA02c20)}, | ||
97 | .gpio_din = {.phys = CALLIOPE_ADDR(0xA02c24)}, | ||
98 | .gpio_dir = {.phys = CALLIOPE_ADDR(0xA02c2C)}, | ||
99 | .watchdog = {.phys = CALLIOPE_ADDR(0xA02c30)}, | ||
100 | .front_panel = {.phys = 0x000000}, /* -not used- */ | ||
101 | }; | ||
diff --git a/arch/mips/powertv/asic/asic-cronus.c b/arch/mips/powertv/asic/asic-cronus.c new file mode 100644 index 000000000000..5bb64bfb508b --- /dev/null +++ b/arch/mips/powertv/asic/asic-cronus.c | |||
@@ -0,0 +1,101 @@ | |||
1 | /* | ||
2 | * Locations of devices in the Cronus ASIC | ||
3 | * | ||
4 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: Ken Eppinett | ||
21 | * David Schleef <ds@schleef.org> | ||
22 | * | ||
23 | * Description: Defines the platform resources for the SA settop. | ||
24 | */ | ||
25 | |||
26 | #include <linux/init.h> | ||
27 | #include <asm/mach-powertv/asic.h> | ||
28 | |||
29 | #define CRONUS_ADDR(x) (CRONUS_IO_BASE + (x)) | ||
30 | |||
31 | const struct register_map cronus_register_map __initdata = { | ||
32 | .eic_slow0_strt_add = {.phys = CRONUS_ADDR(0x000000)}, | ||
33 | .eic_cfg_bits = {.phys = CRONUS_ADDR(0x000038)}, | ||
34 | .eic_ready_status = {.phys = CRONUS_ADDR(0x00004C)}, | ||
35 | |||
36 | .chipver3 = {.phys = CRONUS_ADDR(0x2A0800)}, | ||
37 | .chipver2 = {.phys = CRONUS_ADDR(0x2A0804)}, | ||
38 | .chipver1 = {.phys = CRONUS_ADDR(0x2A0808)}, | ||
39 | .chipver0 = {.phys = CRONUS_ADDR(0x2A080C)}, | ||
40 | |||
41 | /* The registers of IRBlaster */ | ||
42 | .uart1_intstat = {.phys = CRONUS_ADDR(0x2A1800)}, | ||
43 | .uart1_inten = {.phys = CRONUS_ADDR(0x2A1804)}, | ||
44 | .uart1_config1 = {.phys = CRONUS_ADDR(0x2A1808)}, | ||
45 | .uart1_config2 = {.phys = CRONUS_ADDR(0x2A180C)}, | ||
46 | .uart1_divisorhi = {.phys = CRONUS_ADDR(0x2A1810)}, | ||
47 | .uart1_divisorlo = {.phys = CRONUS_ADDR(0x2A1814)}, | ||
48 | .uart1_data = {.phys = CRONUS_ADDR(0x2A1818)}, | ||
49 | .uart1_status = {.phys = CRONUS_ADDR(0x2A181C)}, | ||
50 | |||
51 | .int_stat_3 = {.phys = CRONUS_ADDR(0x2A2800)}, | ||
52 | .int_stat_2 = {.phys = CRONUS_ADDR(0x2A2804)}, | ||
53 | .int_stat_1 = {.phys = CRONUS_ADDR(0x2A2808)}, | ||
54 | .int_stat_0 = {.phys = CRONUS_ADDR(0x2A280C)}, | ||
55 | .int_config = {.phys = CRONUS_ADDR(0x2A2810)}, | ||
56 | .int_int_scan = {.phys = CRONUS_ADDR(0x2A2818)}, | ||
57 | .ien_int_3 = {.phys = CRONUS_ADDR(0x2A2830)}, | ||
58 | .ien_int_2 = {.phys = CRONUS_ADDR(0x2A2834)}, | ||
59 | .ien_int_1 = {.phys = CRONUS_ADDR(0x2A2838)}, | ||
60 | .ien_int_0 = {.phys = CRONUS_ADDR(0x2A283C)}, | ||
61 | .int_level_3_3 = {.phys = CRONUS_ADDR(0x2A2880)}, | ||
62 | .int_level_3_2 = {.phys = CRONUS_ADDR(0x2A2884)}, | ||
63 | .int_level_3_1 = {.phys = CRONUS_ADDR(0x2A2888)}, | ||
64 | .int_level_3_0 = {.phys = CRONUS_ADDR(0x2A288C)}, | ||
65 | .int_level_2_3 = {.phys = CRONUS_ADDR(0x2A2890)}, | ||
66 | .int_level_2_2 = {.phys = CRONUS_ADDR(0x2A2894)}, | ||
67 | .int_level_2_1 = {.phys = CRONUS_ADDR(0x2A2898)}, | ||
68 | .int_level_2_0 = {.phys = CRONUS_ADDR(0x2A289C)}, | ||
69 | .int_level_1_3 = {.phys = CRONUS_ADDR(0x2A28A0)}, | ||
70 | .int_level_1_2 = {.phys = CRONUS_ADDR(0x2A28A4)}, | ||
71 | .int_level_1_1 = {.phys = CRONUS_ADDR(0x2A28A8)}, | ||
72 | .int_level_1_0 = {.phys = CRONUS_ADDR(0x2A28AC)}, | ||
73 | .int_level_0_3 = {.phys = CRONUS_ADDR(0x2A28B0)}, | ||
74 | .int_level_0_2 = {.phys = CRONUS_ADDR(0x2A28B4)}, | ||
75 | .int_level_0_1 = {.phys = CRONUS_ADDR(0x2A28B8)}, | ||
76 | .int_level_0_0 = {.phys = CRONUS_ADDR(0x2A28BC)}, | ||
77 | .int_docsis_en = {.phys = CRONUS_ADDR(0x2A28F4)}, | ||
78 | |||
79 | .mips_pll_setup = {.phys = CRONUS_ADDR(0x1C0000)}, | ||
80 | .usb_fs = {.phys = CRONUS_ADDR(0x1C0018)}, | ||
81 | .test_bus = {.phys = CRONUS_ADDR(0x1C00CC)}, | ||
82 | .crt_spare = {.phys = CRONUS_ADDR(0x1c00d4)}, | ||
83 | .usb2_ohci_int_mask = {.phys = CRONUS_ADDR(0x20000C)}, | ||
84 | .usb2_strap = {.phys = CRONUS_ADDR(0x200014)}, | ||
85 | .ehci_hcapbase = {.phys = CRONUS_ADDR(0x21FE00)}, | ||
86 | .ohci_hc_revision = {.phys = CRONUS_ADDR(0x1E0000)}, | ||
87 | .bcm1_bs_lmi_steer = {.phys = CRONUS_ADDR(0x2E0008)}, | ||
88 | .usb2_control = {.phys = CRONUS_ADDR(0x2E004C)}, | ||
89 | .usb2_stbus_obc = {.phys = CRONUS_ADDR(0x21FF00)}, | ||
90 | .usb2_stbus_mess_size = {.phys = CRONUS_ADDR(0x21FF04)}, | ||
91 | .usb2_stbus_chunk_size = {.phys = CRONUS_ADDR(0x21FF08)}, | ||
92 | |||
93 | .pcie_regs = {.phys = CRONUS_ADDR(0x220000)}, | ||
94 | .tim_ch = {.phys = CRONUS_ADDR(0x2A2C10)}, | ||
95 | .tim_cl = {.phys = CRONUS_ADDR(0x2A2C14)}, | ||
96 | .gpio_dout = {.phys = CRONUS_ADDR(0x2A2C20)}, | ||
97 | .gpio_din = {.phys = CRONUS_ADDR(0x2A2C24)}, | ||
98 | .gpio_dir = {.phys = CRONUS_ADDR(0x2A2C2C)}, | ||
99 | .watchdog = {.phys = CRONUS_ADDR(0x2A2C30)}, | ||
100 | .front_panel = {.phys = CRONUS_ADDR(0x2A3800)}, | ||
101 | }; | ||
diff --git a/arch/mips/powertv/asic/asic-zeus.c b/arch/mips/powertv/asic/asic-zeus.c new file mode 100644 index 000000000000..095cbe10ebb9 --- /dev/null +++ b/arch/mips/powertv/asic/asic-zeus.c | |||
@@ -0,0 +1,101 @@ | |||
1 | /* | ||
2 | * Locations of devices in the Zeus ASIC | ||
3 | * | ||
4 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: Ken Eppinett | ||
21 | * David Schleef <ds@schleef.org> | ||
22 | * | ||
23 | * Description: Defines the platform resources for the SA settop. | ||
24 | */ | ||
25 | |||
26 | #include <linux/init.h> | ||
27 | #include <asm/mach-powertv/asic.h> | ||
28 | |||
29 | #define ZEUS_ADDR(x) (ZEUS_IO_BASE + (x)) | ||
30 | |||
31 | const struct register_map zeus_register_map __initdata = { | ||
32 | .eic_slow0_strt_add = {.phys = ZEUS_ADDR(0x000000)}, | ||
33 | .eic_cfg_bits = {.phys = ZEUS_ADDR(0x000038)}, | ||
34 | .eic_ready_status = {.phys = ZEUS_ADDR(0x00004c)}, | ||
35 | |||
36 | .chipver3 = {.phys = ZEUS_ADDR(0x280800)}, | ||
37 | .chipver2 = {.phys = ZEUS_ADDR(0x280804)}, | ||
38 | .chipver1 = {.phys = ZEUS_ADDR(0x280808)}, | ||
39 | .chipver0 = {.phys = ZEUS_ADDR(0x28080c)}, | ||
40 | |||
41 | /* The registers of IRBlaster */ | ||
42 | .uart1_intstat = {.phys = ZEUS_ADDR(0x281800)}, | ||
43 | .uart1_inten = {.phys = ZEUS_ADDR(0x281804)}, | ||
44 | .uart1_config1 = {.phys = ZEUS_ADDR(0x281808)}, | ||
45 | .uart1_config2 = {.phys = ZEUS_ADDR(0x28180C)}, | ||
46 | .uart1_divisorhi = {.phys = ZEUS_ADDR(0x281810)}, | ||
47 | .uart1_divisorlo = {.phys = ZEUS_ADDR(0x281814)}, | ||
48 | .uart1_data = {.phys = ZEUS_ADDR(0x281818)}, | ||
49 | .uart1_status = {.phys = ZEUS_ADDR(0x28181C)}, | ||
50 | |||
51 | .int_stat_3 = {.phys = ZEUS_ADDR(0x282800)}, | ||
52 | .int_stat_2 = {.phys = ZEUS_ADDR(0x282804)}, | ||
53 | .int_stat_1 = {.phys = ZEUS_ADDR(0x282808)}, | ||
54 | .int_stat_0 = {.phys = ZEUS_ADDR(0x28280c)}, | ||
55 | .int_config = {.phys = ZEUS_ADDR(0x282810)}, | ||
56 | .int_int_scan = {.phys = ZEUS_ADDR(0x282818)}, | ||
57 | .ien_int_3 = {.phys = ZEUS_ADDR(0x282830)}, | ||
58 | .ien_int_2 = {.phys = ZEUS_ADDR(0x282834)}, | ||
59 | .ien_int_1 = {.phys = ZEUS_ADDR(0x282838)}, | ||
60 | .ien_int_0 = {.phys = ZEUS_ADDR(0x28283c)}, | ||
61 | .int_level_3_3 = {.phys = ZEUS_ADDR(0x282880)}, | ||
62 | .int_level_3_2 = {.phys = ZEUS_ADDR(0x282884)}, | ||
63 | .int_level_3_1 = {.phys = ZEUS_ADDR(0x282888)}, | ||
64 | .int_level_3_0 = {.phys = ZEUS_ADDR(0x28288c)}, | ||
65 | .int_level_2_3 = {.phys = ZEUS_ADDR(0x282890)}, | ||
66 | .int_level_2_2 = {.phys = ZEUS_ADDR(0x282894)}, | ||
67 | .int_level_2_1 = {.phys = ZEUS_ADDR(0x282898)}, | ||
68 | .int_level_2_0 = {.phys = ZEUS_ADDR(0x28289c)}, | ||
69 | .int_level_1_3 = {.phys = ZEUS_ADDR(0x2828a0)}, | ||
70 | .int_level_1_2 = {.phys = ZEUS_ADDR(0x2828a4)}, | ||
71 | .int_level_1_1 = {.phys = ZEUS_ADDR(0x2828a8)}, | ||
72 | .int_level_1_0 = {.phys = ZEUS_ADDR(0x2828ac)}, | ||
73 | .int_level_0_3 = {.phys = ZEUS_ADDR(0x2828b0)}, | ||
74 | .int_level_0_2 = {.phys = ZEUS_ADDR(0x2828b4)}, | ||
75 | .int_level_0_1 = {.phys = ZEUS_ADDR(0x2828b8)}, | ||
76 | .int_level_0_0 = {.phys = ZEUS_ADDR(0x2828bc)}, | ||
77 | .int_docsis_en = {.phys = ZEUS_ADDR(0x2828F4)}, | ||
78 | |||
79 | .mips_pll_setup = {.phys = ZEUS_ADDR(0x1a0000)}, | ||
80 | .usb_fs = {.phys = ZEUS_ADDR(0x1a0018)}, | ||
81 | .test_bus = {.phys = ZEUS_ADDR(0x1a0238)}, | ||
82 | .crt_spare = {.phys = ZEUS_ADDR(0x1a0090)}, | ||
83 | .usb2_ohci_int_mask = {.phys = ZEUS_ADDR(0x1e000c)}, | ||
84 | .usb2_strap = {.phys = ZEUS_ADDR(0x1e0014)}, | ||
85 | .ehci_hcapbase = {.phys = ZEUS_ADDR(0x1FFE00)}, | ||
86 | .ohci_hc_revision = {.phys = ZEUS_ADDR(0x1FFC00)}, | ||
87 | .bcm1_bs_lmi_steer = {.phys = ZEUS_ADDR(0x2C0008)}, | ||
88 | .usb2_control = {.phys = ZEUS_ADDR(0x2c01a0)}, | ||
89 | .usb2_stbus_obc = {.phys = ZEUS_ADDR(0x1FFF00)}, | ||
90 | .usb2_stbus_mess_size = {.phys = ZEUS_ADDR(0x1FFF04)}, | ||
91 | .usb2_stbus_chunk_size = {.phys = ZEUS_ADDR(0x1FFF08)}, | ||
92 | |||
93 | .pcie_regs = {.phys = ZEUS_ADDR(0x200000)}, | ||
94 | .tim_ch = {.phys = ZEUS_ADDR(0x282C10)}, | ||
95 | .tim_cl = {.phys = ZEUS_ADDR(0x282C14)}, | ||
96 | .gpio_dout = {.phys = ZEUS_ADDR(0x282c20)}, | ||
97 | .gpio_din = {.phys = ZEUS_ADDR(0x282c24)}, | ||
98 | .gpio_dir = {.phys = ZEUS_ADDR(0x282c2C)}, | ||
99 | .watchdog = {.phys = ZEUS_ADDR(0x282c30)}, | ||
100 | .front_panel = {.phys = ZEUS_ADDR(0x283800)}, | ||
101 | }; | ||
diff --git a/arch/mips/powertv/asic/asic_devices.c b/arch/mips/powertv/asic/asic_devices.c new file mode 100644 index 000000000000..8ee77887306a --- /dev/null +++ b/arch/mips/powertv/asic/asic_devices.c | |||
@@ -0,0 +1,776 @@ | |||
1 | /* | ||
2 | * ASIC Device List Intialization | ||
3 | * | ||
4 | * Description: Defines the platform resources for the SA settop. | ||
5 | * | ||
6 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License as published by | ||
10 | * the Free Software Foundation; either version 2 of the License, or | ||
11 | * (at your option) any later version. | ||
12 | * | ||
13 | * This program is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License | ||
19 | * along with this program; if not, write to the Free Software | ||
20 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
21 | * | ||
22 | * Author: Ken Eppinett | ||
23 | * David Schleef <ds@schleef.org> | ||
24 | * | ||
25 | * Description: Defines the platform resources for the SA settop. | ||
26 | * | ||
27 | * NOTE: The bootloader allocates persistent memory at an address which is | ||
28 | * 16 MiB below the end of the highest address in KSEG0. All fixed | ||
29 | * address memory reservations must avoid this region. | ||
30 | */ | ||
31 | |||
32 | #include <linux/device.h> | ||
33 | #include <linux/kernel.h> | ||
34 | #include <linux/init.h> | ||
35 | #include <linux/resource.h> | ||
36 | #include <linux/serial_reg.h> | ||
37 | #include <linux/io.h> | ||
38 | #include <linux/bootmem.h> | ||
39 | #include <linux/mm.h> | ||
40 | #include <linux/platform_device.h> | ||
41 | #include <linux/module.h> | ||
42 | #include <linux/gfp.h> | ||
43 | #include <asm/page.h> | ||
44 | #include <linux/swap.h> | ||
45 | #include <linux/highmem.h> | ||
46 | #include <linux/dma-mapping.h> | ||
47 | |||
48 | #include <asm/mach-powertv/asic.h> | ||
49 | #include <asm/mach-powertv/asic_regs.h> | ||
50 | #include <asm/mach-powertv/interrupts.h> | ||
51 | |||
52 | #ifdef CONFIG_BOOTLOADER_DRIVER | ||
53 | #include <asm/mach-powertv/kbldr.h> | ||
54 | #endif | ||
55 | #include <asm/bootinfo.h> | ||
56 | |||
57 | #define BOOTLDRFAMILY(byte1, byte0) (((byte1) << 8) | (byte0)) | ||
58 | |||
59 | /* | ||
60 | * Forward Prototypes | ||
61 | */ | ||
62 | static void pmem_setup_resource(void); | ||
63 | |||
64 | /* | ||
65 | * Global Variables | ||
66 | */ | ||
67 | enum asic_type asic; | ||
68 | |||
69 | unsigned int platform_features; | ||
70 | unsigned int platform_family; | ||
71 | struct register_map _asic_register_map; | ||
72 | EXPORT_SYMBOL(_asic_register_map); /* Exported for testing */ | ||
73 | unsigned long asic_phy_base; | ||
74 | unsigned long asic_base; | ||
75 | EXPORT_SYMBOL(asic_base); /* Exported for testing */ | ||
76 | struct resource *gp_resources; | ||
77 | static bool usb_configured; | ||
78 | |||
79 | /* | ||
80 | * Don't recommend to use it directly, it is usually used by kernel internally. | ||
81 | * Portable code should be using interfaces such as ioremp, dma_map_single, etc. | ||
82 | */ | ||
83 | unsigned long phys_to_bus_offset; | ||
84 | EXPORT_SYMBOL(phys_to_bus_offset); | ||
85 | |||
86 | /* | ||
87 | * | ||
88 | * IO Resource Definition | ||
89 | * | ||
90 | */ | ||
91 | |||
92 | struct resource asic_resource = { | ||
93 | .name = "ASIC Resource", | ||
94 | .start = 0, | ||
95 | .end = ASIC_IO_SIZE, | ||
96 | .flags = IORESOURCE_MEM, | ||
97 | }; | ||
98 | |||
99 | /* | ||
100 | * | ||
101 | * USB Host Resource Definition | ||
102 | * | ||
103 | */ | ||
104 | |||
105 | static struct resource ehci_resources[] = { | ||
106 | { | ||
107 | .parent = &asic_resource, | ||
108 | .start = 0, | ||
109 | .end = 0xff, | ||
110 | .flags = IORESOURCE_MEM, | ||
111 | }, | ||
112 | { | ||
113 | .start = irq_usbehci, | ||
114 | .end = irq_usbehci, | ||
115 | .flags = IORESOURCE_IRQ, | ||
116 | }, | ||
117 | }; | ||
118 | |||
119 | static u64 ehci_dmamask = DMA_BIT_MASK(32); | ||
120 | |||
121 | static struct platform_device ehci_device = { | ||
122 | .name = "powertv-ehci", | ||
123 | .id = 0, | ||
124 | .num_resources = 2, | ||
125 | .resource = ehci_resources, | ||
126 | .dev = { | ||
127 | .dma_mask = &ehci_dmamask, | ||
128 | .coherent_dma_mask = DMA_BIT_MASK(32), | ||
129 | }, | ||
130 | }; | ||
131 | |||
132 | static struct resource ohci_resources[] = { | ||
133 | { | ||
134 | .parent = &asic_resource, | ||
135 | .start = 0, | ||
136 | .end = 0xff, | ||
137 | .flags = IORESOURCE_MEM, | ||
138 | }, | ||
139 | { | ||
140 | .start = irq_usbohci, | ||
141 | .end = irq_usbohci, | ||
142 | .flags = IORESOURCE_IRQ, | ||
143 | }, | ||
144 | }; | ||
145 | |||
146 | static u64 ohci_dmamask = DMA_BIT_MASK(32); | ||
147 | |||
148 | static struct platform_device ohci_device = { | ||
149 | .name = "powertv-ohci", | ||
150 | .id = 0, | ||
151 | .num_resources = 2, | ||
152 | .resource = ohci_resources, | ||
153 | .dev = { | ||
154 | .dma_mask = &ohci_dmamask, | ||
155 | .coherent_dma_mask = DMA_BIT_MASK(32), | ||
156 | }, | ||
157 | }; | ||
158 | |||
159 | static struct platform_device *platform_devices[] = { | ||
160 | &ehci_device, | ||
161 | &ohci_device, | ||
162 | }; | ||
163 | |||
164 | /* | ||
165 | * | ||
166 | * Platform Configuration and Device Initialization | ||
167 | * | ||
168 | */ | ||
169 | static void __init fs_update(int pe, int md, int sdiv, int disable_div_by_3) | ||
170 | { | ||
171 | int en_prg, byp, pwr, nsb, val; | ||
172 | int sout; | ||
173 | |||
174 | sout = 1; | ||
175 | en_prg = 1; | ||
176 | byp = 0; | ||
177 | nsb = 1; | ||
178 | pwr = 1; | ||
179 | |||
180 | val = ((sdiv << 29) | (md << 24) | (pe<<8) | (sout<<3) | (byp<<2) | | ||
181 | (nsb<<1) | (disable_div_by_3<<5)); | ||
182 | |||
183 | asic_write(val, usb_fs); | ||
184 | asic_write(val | (en_prg<<4), usb_fs); | ||
185 | asic_write(val | (en_prg<<4) | pwr, usb_fs); | ||
186 | } | ||
187 | |||
188 | /* | ||
189 | * Allow override of bootloader-specified model | ||
190 | */ | ||
191 | static char __initdata cmdline[COMMAND_LINE_SIZE]; | ||
192 | |||
193 | #define FORCEFAMILY_PARAM "forcefamily" | ||
194 | |||
195 | static __init int check_forcefamily(unsigned char forced_family[2]) | ||
196 | { | ||
197 | const char *p; | ||
198 | |||
199 | forced_family[0] = '\0'; | ||
200 | forced_family[1] = '\0'; | ||
201 | |||
202 | /* Check the command line for a forcefamily directive */ | ||
203 | strncpy(cmdline, arcs_cmdline, COMMAND_LINE_SIZE - 1); | ||
204 | p = strstr(cmdline, FORCEFAMILY_PARAM); | ||
205 | if (p && (p != cmdline) && (*(p - 1) != ' ')) | ||
206 | p = strstr(p, " " FORCEFAMILY_PARAM "="); | ||
207 | |||
208 | if (p) { | ||
209 | p += strlen(FORCEFAMILY_PARAM "="); | ||
210 | |||
211 | if (*p == '\0' || *(p + 1) == '\0' || | ||
212 | (*(p + 2) != '\0' && *(p + 2) != ' ')) | ||
213 | pr_err(FORCEFAMILY_PARAM " must be exactly two " | ||
214 | "characters long, ignoring value\n"); | ||
215 | |||
216 | else { | ||
217 | forced_family[0] = *p; | ||
218 | forced_family[1] = *(p + 1); | ||
219 | } | ||
220 | } | ||
221 | |||
222 | return 0; | ||
223 | } | ||
224 | |||
225 | /* | ||
226 | * platform_set_family - determine major platform family type. | ||
227 | * | ||
228 | * Returns family type; -1 if none | ||
229 | * Returns the family type; -1 if none | ||
230 | * | ||
231 | */ | ||
232 | static __init noinline void platform_set_family(void) | ||
233 | { | ||
234 | #define BOOTLDRFAMILY(byte1, byte0) (((byte1) << 8) | (byte0)) | ||
235 | |||
236 | unsigned char forced_family[2]; | ||
237 | unsigned short bootldr_family; | ||
238 | |||
239 | check_forcefamily(forced_family); | ||
240 | |||
241 | if (forced_family[0] != '\0' && forced_family[1] != '\0') | ||
242 | bootldr_family = BOOTLDRFAMILY(forced_family[0], | ||
243 | forced_family[1]); | ||
244 | else { | ||
245 | |||
246 | #ifdef CONFIG_BOOTLOADER_DRIVER | ||
247 | bootldr_family = (unsigned short) kbldr_GetSWFamily(); | ||
248 | #else | ||
249 | #if defined(CONFIG_BOOTLOADER_FAMILY) | ||
250 | bootldr_family = (unsigned short) BOOTLDRFAMILY( | ||
251 | CONFIG_BOOTLOADER_FAMILY[0], | ||
252 | CONFIG_BOOTLOADER_FAMILY[1]); | ||
253 | #else | ||
254 | #error "Unknown Bootloader Family" | ||
255 | #endif | ||
256 | #endif | ||
257 | } | ||
258 | |||
259 | pr_info("Bootloader Family = 0x%04X\n", bootldr_family); | ||
260 | |||
261 | switch (bootldr_family) { | ||
262 | case BOOTLDRFAMILY('R', '1'): | ||
263 | platform_family = FAMILY_1500; | ||
264 | break; | ||
265 | case BOOTLDRFAMILY('4', '4'): | ||
266 | platform_family = FAMILY_4500; | ||
267 | break; | ||
268 | case BOOTLDRFAMILY('4', '6'): | ||
269 | platform_family = FAMILY_4600; | ||
270 | break; | ||
271 | case BOOTLDRFAMILY('A', '1'): | ||
272 | platform_family = FAMILY_4600VZA; | ||
273 | break; | ||
274 | case BOOTLDRFAMILY('8', '5'): | ||
275 | platform_family = FAMILY_8500; | ||
276 | break; | ||
277 | case BOOTLDRFAMILY('R', '2'): | ||
278 | platform_family = FAMILY_8500RNG; | ||
279 | break; | ||
280 | case BOOTLDRFAMILY('8', '6'): | ||
281 | platform_family = FAMILY_8600; | ||
282 | break; | ||
283 | case BOOTLDRFAMILY('B', '1'): | ||
284 | platform_family = FAMILY_8600VZB; | ||
285 | break; | ||
286 | case BOOTLDRFAMILY('E', '1'): | ||
287 | platform_family = FAMILY_1500VZE; | ||
288 | break; | ||
289 | case BOOTLDRFAMILY('F', '1'): | ||
290 | platform_family = FAMILY_1500VZF; | ||
291 | break; | ||
292 | default: | ||
293 | platform_family = -1; | ||
294 | } | ||
295 | } | ||
296 | |||
297 | unsigned int platform_get_family(void) | ||
298 | { | ||
299 | return platform_family; | ||
300 | } | ||
301 | EXPORT_SYMBOL(platform_get_family); | ||
302 | |||
303 | /* | ||
304 | * \brief usb_eye_configure() for optimizing the USB eye on Calliope. | ||
305 | * | ||
306 | * \param unsigned int value saved to the register. | ||
307 | * | ||
308 | * \return none | ||
309 | * | ||
310 | */ | ||
311 | static void __init usb_eye_configure(unsigned int value) | ||
312 | { | ||
313 | asic_write(asic_read(crt_spare) | value, crt_spare); | ||
314 | } | ||
315 | |||
316 | /* | ||
317 | * platform_get_asic - determine the ASIC type. | ||
318 | * | ||
319 | * \param none | ||
320 | * | ||
321 | * \return ASIC type; ASIC_UNKNOWN if none | ||
322 | * | ||
323 | */ | ||
324 | enum asic_type platform_get_asic(void) | ||
325 | { | ||
326 | return asic; | ||
327 | } | ||
328 | EXPORT_SYMBOL(platform_get_asic); | ||
329 | |||
330 | /* | ||
331 | * platform_configure_usb - usb configuration based on platform type. | ||
332 | * @bcm1_usb2_ctl: value for the BCM1_USB2_CTL register, which is | ||
333 | * quirky | ||
334 | */ | ||
335 | static void __init platform_configure_usb(void) | ||
336 | { | ||
337 | u32 bcm1_usb2_ctl; | ||
338 | |||
339 | if (usb_configured) | ||
340 | return; | ||
341 | |||
342 | switch (asic) { | ||
343 | case ASIC_ZEUS: | ||
344 | case ASIC_CRONUS: | ||
345 | case ASIC_CRONUSLITE: | ||
346 | fs_update(0x0000, 0x11, 0x02, 0); | ||
347 | bcm1_usb2_ctl = 0x803; | ||
348 | break; | ||
349 | |||
350 | case ASIC_CALLIOPE: | ||
351 | fs_update(0x0000, 0x11, 0x02, 1); | ||
352 | |||
353 | switch (platform_family) { | ||
354 | case FAMILY_1500VZE: | ||
355 | break; | ||
356 | |||
357 | case FAMILY_1500VZF: | ||
358 | usb_eye_configure(0x003c0000); | ||
359 | break; | ||
360 | |||
361 | default: | ||
362 | usb_eye_configure(0x00300000); | ||
363 | break; | ||
364 | } | ||
365 | |||
366 | bcm1_usb2_ctl = 0x803; | ||
367 | break; | ||
368 | |||
369 | default: | ||
370 | pr_err("Unknown ASIC type: %d\n", asic); | ||
371 | break; | ||
372 | } | ||
373 | |||
374 | /* turn on USB power */ | ||
375 | asic_write(0, usb2_strap); | ||
376 | /* Enable all OHCI interrupts */ | ||
377 | asic_write(bcm1_usb2_ctl, usb2_control); | ||
378 | /* USB2_STBUS_OBC store32/load32 */ | ||
379 | asic_write(3, usb2_stbus_obc); | ||
380 | /* USB2_STBUS_MESS_SIZE 2 packets */ | ||
381 | asic_write(1, usb2_stbus_mess_size); | ||
382 | /* USB2_STBUS_CHUNK_SIZE 2 packets */ | ||
383 | asic_write(1, usb2_stbus_chunk_size); | ||
384 | |||
385 | usb_configured = true; | ||
386 | } | ||
387 | |||
388 | /* | ||
389 | * Set up the USB EHCI interface | ||
390 | */ | ||
391 | void platform_configure_usb_ehci() | ||
392 | { | ||
393 | platform_configure_usb(); | ||
394 | } | ||
395 | |||
396 | /* | ||
397 | * Set up the USB OHCI interface | ||
398 | */ | ||
399 | void platform_configure_usb_ohci() | ||
400 | { | ||
401 | platform_configure_usb(); | ||
402 | } | ||
403 | |||
404 | /* | ||
405 | * Shut the USB EHCI interface down--currently a NOP | ||
406 | */ | ||
407 | void platform_unconfigure_usb_ehci() | ||
408 | { | ||
409 | } | ||
410 | |||
411 | /* | ||
412 | * Shut the USB OHCI interface down--currently a NOP | ||
413 | */ | ||
414 | void platform_unconfigure_usb_ohci() | ||
415 | { | ||
416 | } | ||
417 | |||
418 | static void __init set_register_map(unsigned long phys_base, | ||
419 | const struct register_map *map) | ||
420 | { | ||
421 | asic_phy_base = phys_base; | ||
422 | _asic_register_map = *map; | ||
423 | register_map_virtualize(&_asic_register_map); | ||
424 | asic_base = (unsigned long)ioremap_nocache(phys_base, ASIC_IO_SIZE); | ||
425 | } | ||
426 | |||
427 | /** | ||
428 | * configure_platform - configuration based on platform type. | ||
429 | */ | ||
430 | void __init configure_platform(void) | ||
431 | { | ||
432 | platform_set_family(); | ||
433 | |||
434 | switch (platform_family) { | ||
435 | case FAMILY_1500: | ||
436 | case FAMILY_1500VZE: | ||
437 | case FAMILY_1500VZF: | ||
438 | platform_features = FFS_CAPABLE; | ||
439 | asic = ASIC_CALLIOPE; | ||
440 | set_register_map(CALLIOPE_IO_BASE, &calliope_register_map); | ||
441 | |||
442 | if (platform_family == FAMILY_1500VZE) { | ||
443 | gp_resources = non_dvr_vze_calliope_resources; | ||
444 | pr_info("Platform: 1500/Vz Class E - " | ||
445 | "CALLIOPE, NON_DVR_CAPABLE\n"); | ||
446 | } else if (platform_family == FAMILY_1500VZF) { | ||
447 | gp_resources = non_dvr_vzf_calliope_resources; | ||
448 | pr_info("Platform: 1500/Vz Class F - " | ||
449 | "CALLIOPE, NON_DVR_CAPABLE\n"); | ||
450 | } else { | ||
451 | gp_resources = non_dvr_calliope_resources; | ||
452 | pr_info("Platform: 1500/RNG100 - CALLIOPE, " | ||
453 | "NON_DVR_CAPABLE\n"); | ||
454 | } | ||
455 | break; | ||
456 | |||
457 | case FAMILY_4500: | ||
458 | platform_features = FFS_CAPABLE | PCIE_CAPABLE | | ||
459 | DISPLAY_CAPABLE; | ||
460 | asic = ASIC_ZEUS; | ||
461 | set_register_map(ZEUS_IO_BASE, &zeus_register_map); | ||
462 | gp_resources = non_dvr_zeus_resources; | ||
463 | |||
464 | pr_info("Platform: 4500 - ZEUS, NON_DVR_CAPABLE\n"); | ||
465 | break; | ||
466 | |||
467 | case FAMILY_4600: | ||
468 | { | ||
469 | unsigned int chipversion = 0; | ||
470 | |||
471 | /* The settop has PCIE but it isn't used, so don't advertise | ||
472 | * it*/ | ||
473 | platform_features = FFS_CAPABLE | DISPLAY_CAPABLE; | ||
474 | |||
475 | /* ASIC version will determine if this is a real CronusLite or | ||
476 | * Castrati(Cronus) */ | ||
477 | chipversion = asic_read(chipver3) << 24; | ||
478 | chipversion |= asic_read(chipver2) << 16; | ||
479 | chipversion |= asic_read(chipver1) << 8; | ||
480 | chipversion |= asic_read(chipver0); | ||
481 | |||
482 | if ((chipversion == CRONUS_10) || (chipversion == CRONUS_11)) | ||
483 | asic = ASIC_CRONUS; | ||
484 | else | ||
485 | asic = ASIC_CRONUSLITE; | ||
486 | |||
487 | /* Cronus and Cronus Lite have the same register map */ | ||
488 | set_register_map(CRONUS_IO_BASE, &cronus_register_map); | ||
489 | gp_resources = non_dvr_cronuslite_resources; | ||
490 | pr_info("Platform: 4600 - %s, NON_DVR_CAPABLE, " | ||
491 | "chipversion=0x%08X\n", | ||
492 | (asic == ASIC_CRONUS) ? "CRONUS" : "CRONUS LITE", | ||
493 | chipversion); | ||
494 | break; | ||
495 | } | ||
496 | case FAMILY_4600VZA: | ||
497 | platform_features = FFS_CAPABLE | DISPLAY_CAPABLE; | ||
498 | asic = ASIC_CRONUS; | ||
499 | set_register_map(CRONUS_IO_BASE, &cronus_register_map); | ||
500 | gp_resources = non_dvr_cronus_resources; | ||
501 | |||
502 | pr_info("Platform: Vz Class A - CRONUS, NON_DVR_CAPABLE\n"); | ||
503 | break; | ||
504 | |||
505 | case FAMILY_8500: | ||
506 | case FAMILY_8500RNG: | ||
507 | platform_features = DVR_CAPABLE | PCIE_CAPABLE | | ||
508 | DISPLAY_CAPABLE; | ||
509 | asic = ASIC_ZEUS; | ||
510 | set_register_map(ZEUS_IO_BASE, &zeus_register_map); | ||
511 | gp_resources = dvr_zeus_resources; | ||
512 | |||
513 | pr_info("Platform: 8500/RNG200 - ZEUS, DVR_CAPABLE\n"); | ||
514 | break; | ||
515 | |||
516 | case FAMILY_8600: | ||
517 | case FAMILY_8600VZB: | ||
518 | platform_features = DVR_CAPABLE | PCIE_CAPABLE | | ||
519 | DISPLAY_CAPABLE; | ||
520 | asic = ASIC_CRONUS; | ||
521 | set_register_map(CRONUS_IO_BASE, &cronus_register_map); | ||
522 | gp_resources = dvr_cronus_resources; | ||
523 | |||
524 | pr_info("Platform: 8600/Vz Class B - CRONUS, " | ||
525 | "DVR_CAPABLE\n"); | ||
526 | break; | ||
527 | |||
528 | default: | ||
529 | pr_crit("Platform: UNKNOWN PLATFORM\n"); | ||
530 | break; | ||
531 | } | ||
532 | |||
533 | switch (asic) { | ||
534 | case ASIC_ZEUS: | ||
535 | phys_to_bus_offset = 0x30000000; | ||
536 | break; | ||
537 | case ASIC_CALLIOPE: | ||
538 | phys_to_bus_offset = 0x10000000; | ||
539 | break; | ||
540 | case ASIC_CRONUSLITE: | ||
541 | /* Fall through */ | ||
542 | case ASIC_CRONUS: | ||
543 | /* | ||
544 | * TODO: We suppose 0x10000000 aliases into 0x20000000- | ||
545 | * 0x2XXXXXXX. If 0x10000000 aliases into 0x60000000- | ||
546 | * 0x6XXXXXXX, the offset should be 0x50000000, not 0x10000000. | ||
547 | */ | ||
548 | phys_to_bus_offset = 0x10000000; | ||
549 | break; | ||
550 | default: | ||
551 | phys_to_bus_offset = 0x00000000; | ||
552 | break; | ||
553 | } | ||
554 | } | ||
555 | |||
556 | /** | ||
557 | * platform_devices_init - sets up USB device resourse. | ||
558 | */ | ||
559 | static int __init platform_devices_init(void) | ||
560 | { | ||
561 | pr_notice("%s: ----- Initializing USB resources -----\n", __func__); | ||
562 | |||
563 | asic_resource.start = asic_phy_base; | ||
564 | asic_resource.end += asic_resource.start; | ||
565 | |||
566 | ehci_resources[0].start = asic_reg_phys_addr(ehci_hcapbase); | ||
567 | ehci_resources[0].end += ehci_resources[0].start; | ||
568 | |||
569 | ohci_resources[0].start = asic_reg_phys_addr(ohci_hc_revision); | ||
570 | ohci_resources[0].end += ohci_resources[0].start; | ||
571 | |||
572 | set_io_port_base(0); | ||
573 | |||
574 | platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices)); | ||
575 | |||
576 | return 0; | ||
577 | } | ||
578 | |||
579 | arch_initcall(platform_devices_init); | ||
580 | |||
581 | /* | ||
582 | * | ||
583 | * BOOTMEM ALLOCATION | ||
584 | * | ||
585 | */ | ||
586 | /* | ||
587 | * Allocates/reserves the Platform memory resources early in the boot process. | ||
588 | * This ignores any resources that are designated IORESOURCE_IO | ||
589 | */ | ||
590 | void __init platform_alloc_bootmem(void) | ||
591 | { | ||
592 | int i; | ||
593 | int total = 0; | ||
594 | |||
595 | /* Get persistent memory data from command line before allocating | ||
596 | * resources. This need to happen before normal command line parsing | ||
597 | * has been done */ | ||
598 | pmem_setup_resource(); | ||
599 | |||
600 | /* Loop through looking for resources that want a particular address */ | ||
601 | for (i = 0; gp_resources[i].flags != 0; i++) { | ||
602 | int size = gp_resources[i].end - gp_resources[i].start + 1; | ||
603 | if ((gp_resources[i].start != 0) && | ||
604 | ((gp_resources[i].flags & IORESOURCE_MEM) != 0)) { | ||
605 | reserve_bootmem(bus_to_phys(gp_resources[i].start), | ||
606 | size, 0); | ||
607 | total += gp_resources[i].end - | ||
608 | gp_resources[i].start + 1; | ||
609 | pr_info("reserve resource %s at %08x (%u bytes)\n", | ||
610 | gp_resources[i].name, gp_resources[i].start, | ||
611 | gp_resources[i].end - | ||
612 | gp_resources[i].start + 1); | ||
613 | } | ||
614 | } | ||
615 | |||
616 | /* Loop through assigning addresses for those that are left */ | ||
617 | for (i = 0; gp_resources[i].flags != 0; i++) { | ||
618 | int size = gp_resources[i].end - gp_resources[i].start + 1; | ||
619 | if ((gp_resources[i].start == 0) && | ||
620 | ((gp_resources[i].flags & IORESOURCE_MEM) != 0)) { | ||
621 | void *mem = alloc_bootmem_pages(size); | ||
622 | |||
623 | if (mem == NULL) | ||
624 | pr_err("Unable to allocate bootmem pages " | ||
625 | "for %s\n", gp_resources[i].name); | ||
626 | |||
627 | else { | ||
628 | gp_resources[i].start = | ||
629 | phys_to_bus(virt_to_phys(mem)); | ||
630 | gp_resources[i].end = | ||
631 | gp_resources[i].start + size - 1; | ||
632 | total += size; | ||
633 | pr_info("allocate resource %s at %08x " | ||
634 | "(%u bytes)\n", | ||
635 | gp_resources[i].name, | ||
636 | gp_resources[i].start, size); | ||
637 | } | ||
638 | } | ||
639 | } | ||
640 | |||
641 | pr_info("Total Platform driver memory allocation: 0x%08x\n", total); | ||
642 | |||
643 | /* indicate resources that are platform I/O related */ | ||
644 | for (i = 0; gp_resources[i].flags != 0; i++) { | ||
645 | if ((gp_resources[i].start != 0) && | ||
646 | ((gp_resources[i].flags & IORESOURCE_IO) != 0)) { | ||
647 | pr_info("reserved platform resource %s at %08x\n", | ||
648 | gp_resources[i].name, gp_resources[i].start); | ||
649 | } | ||
650 | } | ||
651 | } | ||
652 | |||
653 | /* | ||
654 | * | ||
655 | * PERSISTENT MEMORY (PMEM) CONFIGURATION | ||
656 | * | ||
657 | */ | ||
658 | static unsigned long pmemaddr __initdata; | ||
659 | |||
660 | static int __init early_param_pmemaddr(char *p) | ||
661 | { | ||
662 | pmemaddr = (unsigned long)simple_strtoul(p, NULL, 0); | ||
663 | return 0; | ||
664 | } | ||
665 | early_param("pmemaddr", early_param_pmemaddr); | ||
666 | |||
667 | static long pmemlen __initdata; | ||
668 | |||
669 | static int __init early_param_pmemlen(char *p) | ||
670 | { | ||
671 | /* TODO: we can use this code when and if the bootloader ever changes this */ | ||
672 | #if 0 | ||
673 | pmemlen = (unsigned long)simple_strtoul(p, NULL, 0); | ||
674 | #else | ||
675 | pmemlen = 0x20000; | ||
676 | #endif | ||
677 | return 0; | ||
678 | } | ||
679 | early_param("pmemlen", early_param_pmemlen); | ||
680 | |||
681 | /* | ||
682 | * Set up persistent memory. If we were given values, we patch the array of | ||
683 | * resources. Otherwise, persistent memory may be allocated anywhere at all. | ||
684 | */ | ||
685 | static void __init pmem_setup_resource(void) | ||
686 | { | ||
687 | struct resource *resource; | ||
688 | resource = asic_resource_get("DiagPersistentMemory"); | ||
689 | |||
690 | if (resource && pmemaddr && pmemlen) { | ||
691 | /* The address provided by bootloader is in kseg0. Convert to | ||
692 | * a bus address. */ | ||
693 | resource->start = phys_to_bus(pmemaddr - 0x80000000); | ||
694 | resource->end = resource->start + pmemlen - 1; | ||
695 | |||
696 | pr_info("persistent memory: start=0x%x end=0x%x\n", | ||
697 | resource->start, resource->end); | ||
698 | } | ||
699 | } | ||
700 | |||
701 | /* | ||
702 | * | ||
703 | * RESOURCE ACCESS FUNCTIONS | ||
704 | * | ||
705 | */ | ||
706 | |||
707 | /** | ||
708 | * asic_resource_get - retrieves parameters for a platform resource. | ||
709 | * @name: string to match resource | ||
710 | * | ||
711 | * Returns a pointer to a struct resource corresponding to the given name. | ||
712 | * | ||
713 | * CANNOT BE NAMED platform_resource_get, which would be the obvious choice, | ||
714 | * as this function name is already declared | ||
715 | */ | ||
716 | struct resource *asic_resource_get(const char *name) | ||
717 | { | ||
718 | int i; | ||
719 | |||
720 | for (i = 0; gp_resources[i].flags != 0; i++) { | ||
721 | if (strcmp(gp_resources[i].name, name) == 0) | ||
722 | return &gp_resources[i]; | ||
723 | } | ||
724 | |||
725 | return NULL; | ||
726 | } | ||
727 | EXPORT_SYMBOL(asic_resource_get); | ||
728 | |||
729 | /** | ||
730 | * platform_release_memory - release pre-allocated memory | ||
731 | * @ptr: pointer to memory to release | ||
732 | * @size: size of resource | ||
733 | * | ||
734 | * This must only be called for memory allocated or reserved via the boot | ||
735 | * memory allocator. | ||
736 | */ | ||
737 | void platform_release_memory(void *ptr, int size) | ||
738 | { | ||
739 | unsigned long addr; | ||
740 | unsigned long end; | ||
741 | |||
742 | addr = ((unsigned long)ptr + (PAGE_SIZE - 1)) & PAGE_MASK; | ||
743 | end = ((unsigned long)ptr + size) & PAGE_MASK; | ||
744 | |||
745 | for (; addr < end; addr += PAGE_SIZE) { | ||
746 | ClearPageReserved(virt_to_page(__va(addr))); | ||
747 | init_page_count(virt_to_page(__va(addr))); | ||
748 | free_page((unsigned long)__va(addr)); | ||
749 | } | ||
750 | } | ||
751 | EXPORT_SYMBOL(platform_release_memory); | ||
752 | |||
753 | /* | ||
754 | * | ||
755 | * FEATURE AVAILABILITY FUNCTIONS | ||
756 | * | ||
757 | */ | ||
758 | int platform_supports_dvr(void) | ||
759 | { | ||
760 | return (platform_features & DVR_CAPABLE) != 0; | ||
761 | } | ||
762 | |||
763 | int platform_supports_ffs(void) | ||
764 | { | ||
765 | return (platform_features & FFS_CAPABLE) != 0; | ||
766 | } | ||
767 | |||
768 | int platform_supports_pcie(void) | ||
769 | { | ||
770 | return (platform_features & PCIE_CAPABLE) != 0; | ||
771 | } | ||
772 | |||
773 | int platform_supports_display(void) | ||
774 | { | ||
775 | return (platform_features & DISPLAY_CAPABLE) != 0; | ||
776 | } | ||
diff --git a/arch/mips/powertv/asic/asic_int.c b/arch/mips/powertv/asic/asic_int.c new file mode 100644 index 000000000000..529c44a52d64 --- /dev/null +++ b/arch/mips/powertv/asic/asic_int.c | |||
@@ -0,0 +1,124 @@ | |||
1 | /* | ||
2 | * Carsten Langgaard, carstenl@mips.com | ||
3 | * Copyright (C) 2000, 2001, 2004 MIPS Technologies, Inc. | ||
4 | * Copyright (C) 2001 Ralf Baechle | ||
5 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
6 | * | ||
7 | * This program is free software; you can distribute it and/or modify it | ||
8 | * under the terms of the GNU General Public License (Version 2) as | ||
9 | * published by the Free Software Foundation. | ||
10 | * | ||
11 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
14 | * for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License along | ||
17 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
18 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
19 | * | ||
20 | * Routines for generic manipulation of the interrupts found on the PowerTV | ||
21 | * platform. | ||
22 | * | ||
23 | * The interrupt controller is located in the South Bridge a PIIX4 device | ||
24 | * with two internal 82C95 interrupt controllers. | ||
25 | */ | ||
26 | #include <linux/init.h> | ||
27 | #include <linux/irq.h> | ||
28 | #include <linux/sched.h> | ||
29 | #include <linux/interrupt.h> | ||
30 | #include <linux/kernel_stat.h> | ||
31 | #include <linux/kernel.h> | ||
32 | #include <linux/random.h> | ||
33 | |||
34 | #include <asm/irq_cpu.h> | ||
35 | #include <linux/io.h> | ||
36 | #include <asm/irq_regs.h> | ||
37 | #include <asm/mips-boards/generic.h> | ||
38 | |||
39 | #include <asm/mach-powertv/asic_regs.h> | ||
40 | |||
41 | static DEFINE_RAW_SPINLOCK(asic_irq_lock); | ||
42 | |||
43 | static inline int get_int(void) | ||
44 | { | ||
45 | unsigned long flags; | ||
46 | int irq; | ||
47 | |||
48 | raw_spin_lock_irqsave(&asic_irq_lock, flags); | ||
49 | |||
50 | irq = (asic_read(int_int_scan) >> 4) - 1; | ||
51 | |||
52 | if (irq == 0 || irq >= NR_IRQS) | ||
53 | irq = -1; | ||
54 | |||
55 | raw_spin_unlock_irqrestore(&asic_irq_lock, flags); | ||
56 | |||
57 | return irq; | ||
58 | } | ||
59 | |||
60 | static void asic_irqdispatch(void) | ||
61 | { | ||
62 | int irq; | ||
63 | |||
64 | irq = get_int(); | ||
65 | if (irq < 0) | ||
66 | return; /* interrupt has already been cleared */ | ||
67 | |||
68 | do_IRQ(irq); | ||
69 | } | ||
70 | |||
71 | static inline int clz(unsigned long x) | ||
72 | { | ||
73 | __asm__( | ||
74 | " .set push \n" | ||
75 | " .set mips32 \n" | ||
76 | " clz %0, %1 \n" | ||
77 | " .set pop \n" | ||
78 | : "=r" (x) | ||
79 | : "r" (x)); | ||
80 | |||
81 | return x; | ||
82 | } | ||
83 | |||
84 | /* | ||
85 | * Version of ffs that only looks at bits 12..15. | ||
86 | */ | ||
87 | static inline unsigned int irq_ffs(unsigned int pending) | ||
88 | { | ||
89 | return fls(pending) - 1 + CAUSEB_IP; | ||
90 | } | ||
91 | |||
92 | /* | ||
93 | * TODO: check how it works under EIC mode. | ||
94 | */ | ||
95 | asmlinkage void plat_irq_dispatch(void) | ||
96 | { | ||
97 | unsigned int pending = read_c0_cause() & read_c0_status() & ST0_IM; | ||
98 | int irq; | ||
99 | |||
100 | irq = irq_ffs(pending); | ||
101 | |||
102 | if (irq == CAUSEF_IP3) | ||
103 | asic_irqdispatch(); | ||
104 | else if (irq >= 0) | ||
105 | do_IRQ(irq); | ||
106 | else | ||
107 | spurious_interrupt(); | ||
108 | } | ||
109 | |||
110 | void __init arch_init_irq(void) | ||
111 | { | ||
112 | int i; | ||
113 | |||
114 | asic_irq_init(); | ||
115 | |||
116 | /* | ||
117 | * Initialize interrupt exception vectors. | ||
118 | */ | ||
119 | if (cpu_has_veic || cpu_has_vint) { | ||
120 | int nvec = cpu_has_veic ? 64 : 8; | ||
121 | for (i = 0; i < nvec; i++) | ||
122 | set_vi_handler(i, asic_irqdispatch); | ||
123 | } | ||
124 | } | ||
diff --git a/arch/mips/powertv/asic/irq_asic.c b/arch/mips/powertv/asic/irq_asic.c new file mode 100644 index 000000000000..b54d24499b06 --- /dev/null +++ b/arch/mips/powertv/asic/irq_asic.c | |||
@@ -0,0 +1,116 @@ | |||
1 | /* | ||
2 | * Portions copyright (C) 2005-2009 Scientific Atlanta | ||
3 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
4 | * | ||
5 | * Modified from arch/mips/kernel/irq-rm7000.c: | ||
6 | * Copyright (C) 2003 Ralf Baechle | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify it | ||
9 | * under the terms of the GNU General Public License as published by the | ||
10 | * Free Software Foundation; either version 2 of the License, or (at your | ||
11 | * option) any later version. | ||
12 | */ | ||
13 | #include <linux/init.h> | ||
14 | #include <linux/interrupt.h> | ||
15 | #include <linux/kernel.h> | ||
16 | |||
17 | #include <asm/irq_cpu.h> | ||
18 | #include <asm/mipsregs.h> | ||
19 | #include <asm/system.h> | ||
20 | |||
21 | #include <asm/mach-powertv/asic_regs.h> | ||
22 | |||
23 | static inline void unmask_asic_irq(unsigned int irq) | ||
24 | { | ||
25 | unsigned long enable_bit; | ||
26 | |||
27 | enable_bit = (1 << (irq & 0x1f)); | ||
28 | |||
29 | switch (irq >> 5) { | ||
30 | case 0: | ||
31 | asic_write(asic_read(ien_int_0) | enable_bit, ien_int_0); | ||
32 | break; | ||
33 | case 1: | ||
34 | asic_write(asic_read(ien_int_1) | enable_bit, ien_int_1); | ||
35 | break; | ||
36 | case 2: | ||
37 | asic_write(asic_read(ien_int_2) | enable_bit, ien_int_2); | ||
38 | break; | ||
39 | case 3: | ||
40 | asic_write(asic_read(ien_int_3) | enable_bit, ien_int_3); | ||
41 | break; | ||
42 | default: | ||
43 | BUG(); | ||
44 | } | ||
45 | } | ||
46 | |||
47 | static inline void mask_asic_irq(unsigned int irq) | ||
48 | { | ||
49 | unsigned long disable_mask; | ||
50 | |||
51 | disable_mask = ~(1 << (irq & 0x1f)); | ||
52 | |||
53 | switch (irq >> 5) { | ||
54 | case 0: | ||
55 | asic_write(asic_read(ien_int_0) & disable_mask, ien_int_0); | ||
56 | break; | ||
57 | case 1: | ||
58 | asic_write(asic_read(ien_int_1) & disable_mask, ien_int_1); | ||
59 | break; | ||
60 | case 2: | ||
61 | asic_write(asic_read(ien_int_2) & disable_mask, ien_int_2); | ||
62 | break; | ||
63 | case 3: | ||
64 | asic_write(asic_read(ien_int_3) & disable_mask, ien_int_3); | ||
65 | break; | ||
66 | default: | ||
67 | BUG(); | ||
68 | } | ||
69 | } | ||
70 | |||
71 | static struct irq_chip asic_irq_chip = { | ||
72 | .name = "ASIC Level", | ||
73 | .ack = mask_asic_irq, | ||
74 | .mask = mask_asic_irq, | ||
75 | .mask_ack = mask_asic_irq, | ||
76 | .unmask = unmask_asic_irq, | ||
77 | .eoi = unmask_asic_irq, | ||
78 | }; | ||
79 | |||
80 | void __init asic_irq_init(void) | ||
81 | { | ||
82 | int i; | ||
83 | |||
84 | /* set priority to 0 */ | ||
85 | write_c0_status(read_c0_status() & ~(0x0000fc00)); | ||
86 | |||
87 | asic_write(0, ien_int_0); | ||
88 | asic_write(0, ien_int_1); | ||
89 | asic_write(0, ien_int_2); | ||
90 | asic_write(0, ien_int_3); | ||
91 | |||
92 | asic_write(0x0fffffff, int_level_3_3); | ||
93 | asic_write(0xffffffff, int_level_3_2); | ||
94 | asic_write(0xffffffff, int_level_3_1); | ||
95 | asic_write(0xffffffff, int_level_3_0); | ||
96 | asic_write(0xffffffff, int_level_2_3); | ||
97 | asic_write(0xffffffff, int_level_2_2); | ||
98 | asic_write(0xffffffff, int_level_2_1); | ||
99 | asic_write(0xffffffff, int_level_2_0); | ||
100 | asic_write(0xffffffff, int_level_1_3); | ||
101 | asic_write(0xffffffff, int_level_1_2); | ||
102 | asic_write(0xffffffff, int_level_1_1); | ||
103 | asic_write(0xffffffff, int_level_1_0); | ||
104 | asic_write(0xffffffff, int_level_0_3); | ||
105 | asic_write(0xffffffff, int_level_0_2); | ||
106 | asic_write(0xffffffff, int_level_0_1); | ||
107 | asic_write(0xffffffff, int_level_0_0); | ||
108 | |||
109 | asic_write(0xf, int_int_scan); | ||
110 | |||
111 | /* | ||
112 | * Initialize interrupt handlers. | ||
113 | */ | ||
114 | for (i = 0; i < NR_IRQS; i++) | ||
115 | set_irq_chip_and_handler(i, &asic_irq_chip, handle_level_irq); | ||
116 | } | ||
diff --git a/arch/mips/powertv/asic/prealloc-calliope.c b/arch/mips/powertv/asic/prealloc-calliope.c new file mode 100644 index 000000000000..cd5b76a1c951 --- /dev/null +++ b/arch/mips/powertv/asic/prealloc-calliope.c | |||
@@ -0,0 +1,620 @@ | |||
1 | /* | ||
2 | * Memory pre-allocations for Calliope boxes. | ||
3 | * | ||
4 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: Ken Eppinett | ||
21 | * David Schleef <ds@schleef.org> | ||
22 | */ | ||
23 | |||
24 | #include <linux/init.h> | ||
25 | #include <asm/mach-powertv/asic.h> | ||
26 | |||
27 | /* | ||
28 | * NON_DVR_CAPABLE CALLIOPE RESOURCES | ||
29 | */ | ||
30 | struct resource non_dvr_calliope_resources[] __initdata = | ||
31 | { | ||
32 | /* | ||
33 | * VIDEO / LX1 | ||
34 | */ | ||
35 | { | ||
36 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | ||
37 | .start = 0x24000000, | ||
38 | .end = 0x24200000 - 1, /*2MiB */ | ||
39 | .flags = IORESOURCE_MEM, | ||
40 | }, | ||
41 | { | ||
42 | .name = "ST231aMonitor", /*8KiB block ST231a monitor */ | ||
43 | .start = 0x24200000, | ||
44 | .end = 0x24202000 - 1, | ||
45 | .flags = IORESOURCE_MEM, | ||
46 | }, | ||
47 | { | ||
48 | .name = "MediaMemory1", | ||
49 | .start = 0x24202000, | ||
50 | .end = 0x26700000 - 1, /*~36.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
51 | .flags = IORESOURCE_MEM, | ||
52 | }, | ||
53 | /* | ||
54 | * Sysaudio Driver | ||
55 | */ | ||
56 | { | ||
57 | .name = "DSP_Image_Buff", | ||
58 | .start = 0x00000000, | ||
59 | .end = 0x000FFFFF, | ||
60 | .flags = IORESOURCE_MEM, | ||
61 | }, | ||
62 | { | ||
63 | .name = "ADSC_CPU_PCM_Buff", | ||
64 | .start = 0x00000000, | ||
65 | .end = 0x00009FFF, | ||
66 | .flags = IORESOURCE_MEM, | ||
67 | }, | ||
68 | { | ||
69 | .name = "ADSC_AUX_Buff", | ||
70 | .start = 0x00000000, | ||
71 | .end = 0x00003FFF, | ||
72 | .flags = IORESOURCE_MEM, | ||
73 | }, | ||
74 | { | ||
75 | .name = "ADSC_Main_Buff", | ||
76 | .start = 0x00000000, | ||
77 | .end = 0x00003FFF, | ||
78 | .flags = IORESOURCE_MEM, | ||
79 | }, | ||
80 | /* | ||
81 | * STAVEM driver/STAPI | ||
82 | */ | ||
83 | { | ||
84 | .name = "AVMEMPartition0", | ||
85 | .start = 0x00000000, | ||
86 | .end = 0x00600000 - 1, /* 6 MB total */ | ||
87 | .flags = IORESOURCE_MEM, | ||
88 | }, | ||
89 | /* | ||
90 | * DOCSIS Subsystem | ||
91 | */ | ||
92 | { | ||
93 | .name = "Docsis", | ||
94 | .start = 0x22000000, | ||
95 | .end = 0x22700000 - 1, | ||
96 | .flags = IORESOURCE_MEM, | ||
97 | }, | ||
98 | /* | ||
99 | * GHW HAL Driver | ||
100 | */ | ||
101 | { | ||
102 | .name = "GraphicsHeap", | ||
103 | .start = 0x22700000, | ||
104 | .end = 0x23500000 - 1, /* 14 MB total */ | ||
105 | .flags = IORESOURCE_MEM, | ||
106 | }, | ||
107 | /* | ||
108 | * multi com buffer area | ||
109 | */ | ||
110 | { | ||
111 | .name = "MulticomSHM", | ||
112 | .start = 0x23700000, | ||
113 | .end = 0x23720000 - 1, | ||
114 | .flags = IORESOURCE_MEM, | ||
115 | }, | ||
116 | /* | ||
117 | * DMA Ring buffer (don't need recording buffers) | ||
118 | */ | ||
119 | { | ||
120 | .name = "BMM_Buffer", | ||
121 | .start = 0x00000000, | ||
122 | .end = 0x000AA000 - 1, | ||
123 | .flags = IORESOURCE_MEM, | ||
124 | }, | ||
125 | /* | ||
126 | * Display bins buffer for unit0 | ||
127 | */ | ||
128 | { | ||
129 | .name = "DisplayBins0", | ||
130 | .start = 0x00000000, | ||
131 | .end = 0x00000FFF, /* 4 KB total */ | ||
132 | .flags = IORESOURCE_MEM, | ||
133 | }, | ||
134 | /* | ||
135 | * | ||
136 | * AVFS: player HAL memory | ||
137 | * | ||
138 | * | ||
139 | */ | ||
140 | { | ||
141 | .name = "AvfsDmaMem", | ||
142 | .start = 0x00000000, | ||
143 | .end = 0x002c4c00 - 1, /* 945K * 3 for playback */ | ||
144 | .flags = IORESOURCE_MEM, | ||
145 | }, | ||
146 | /* | ||
147 | * PMEM | ||
148 | */ | ||
149 | { | ||
150 | .name = "DiagPersistentMemory", | ||
151 | .start = 0x00000000, | ||
152 | .end = 0x10000 - 1, | ||
153 | .flags = IORESOURCE_MEM, | ||
154 | }, | ||
155 | /* | ||
156 | * Smartcard | ||
157 | */ | ||
158 | { | ||
159 | .name = "SmartCardInfo", | ||
160 | .start = 0x00000000, | ||
161 | .end = 0x2800 - 1, | ||
162 | .flags = IORESOURCE_MEM, | ||
163 | }, | ||
164 | /* | ||
165 | * NAND Flash | ||
166 | */ | ||
167 | { | ||
168 | .name = "NandFlash", | ||
169 | .start = NAND_FLASH_BASE, | ||
170 | .end = NAND_FLASH_BASE + 0x400 - 1, | ||
171 | .flags = IORESOURCE_IO, | ||
172 | }, | ||
173 | /* | ||
174 | * Synopsys GMAC Memory Region | ||
175 | */ | ||
176 | { | ||
177 | .name = "GMAC", | ||
178 | .start = 0x00000000, | ||
179 | .end = 0x00010000 - 1, | ||
180 | .flags = IORESOURCE_MEM, | ||
181 | }, | ||
182 | /* | ||
183 | * Add other resources here | ||
184 | * | ||
185 | */ | ||
186 | { }, | ||
187 | }; | ||
188 | |||
189 | struct resource non_dvr_vz_calliope_resources[] __initdata = | ||
190 | { | ||
191 | /* | ||
192 | * VIDEO / LX1 | ||
193 | */ | ||
194 | { | ||
195 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | ||
196 | .start = 0x24000000, | ||
197 | .end = 0x24200000 - 1, /*2 Meg */ | ||
198 | .flags = IORESOURCE_MEM, | ||
199 | }, | ||
200 | { | ||
201 | .name = "ST231aMonitor", /* 8k block ST231a monitor */ | ||
202 | .start = 0x24200000, | ||
203 | .end = 0x24202000 - 1, | ||
204 | .flags = IORESOURCE_MEM, | ||
205 | }, | ||
206 | { | ||
207 | .name = "MediaMemory1", | ||
208 | .start = 0x22202000, | ||
209 | .end = 0x22C20B85 - 1, /* 10.12 Meg */ | ||
210 | .flags = IORESOURCE_MEM, | ||
211 | }, | ||
212 | /* | ||
213 | * Sysaudio Driver | ||
214 | */ | ||
215 | { | ||
216 | .name = "DSP_Image_Buff", | ||
217 | .start = 0x00000000, | ||
218 | .end = 0x000FFFFF, | ||
219 | .flags = IORESOURCE_MEM, | ||
220 | }, | ||
221 | { | ||
222 | .name = "ADSC_CPU_PCM_Buff", | ||
223 | .start = 0x00000000, | ||
224 | .end = 0x00009FFF, | ||
225 | .flags = IORESOURCE_MEM, | ||
226 | }, | ||
227 | { | ||
228 | .name = "ADSC_AUX_Buff", | ||
229 | .start = 0x00000000, | ||
230 | .end = 0x00003FFF, | ||
231 | .flags = IORESOURCE_MEM, | ||
232 | }, | ||
233 | { | ||
234 | .name = "ADSC_Main_Buff", | ||
235 | .start = 0x00000000, | ||
236 | .end = 0x00003FFF, | ||
237 | .flags = IORESOURCE_MEM, | ||
238 | }, | ||
239 | /* | ||
240 | * STAVEM driver/STAPI | ||
241 | */ | ||
242 | { | ||
243 | .name = "AVMEMPartition0", | ||
244 | .start = 0x20300000, | ||
245 | .end = 0x20620000-1, /*3.125 MB total */ | ||
246 | .flags = IORESOURCE_MEM, | ||
247 | }, | ||
248 | /* | ||
249 | * GHW HAL Driver | ||
250 | */ | ||
251 | { | ||
252 | .name = "GraphicsHeap", | ||
253 | .start = 0x20100000, | ||
254 | .end = 0x20300000 - 1, | ||
255 | .flags = IORESOURCE_MEM, | ||
256 | }, | ||
257 | /* | ||
258 | * multi com buffer area | ||
259 | */ | ||
260 | { | ||
261 | .name = "MulticomSHM", | ||
262 | .start = 0x23900000, | ||
263 | .end = 0x23920000 - 1, | ||
264 | .flags = IORESOURCE_MEM, | ||
265 | }, | ||
266 | /* | ||
267 | * DMA Ring buffer | ||
268 | */ | ||
269 | { | ||
270 | .name = "BMM_Buffer", | ||
271 | .start = 0x00000000, | ||
272 | .end = 0x000AA000 - 1, | ||
273 | .flags = IORESOURCE_MEM, | ||
274 | }, | ||
275 | /* | ||
276 | * Display bins buffer for unit0 | ||
277 | */ | ||
278 | { | ||
279 | .name = "DisplayBins0", | ||
280 | .start = 0x00000000, | ||
281 | .end = 0x00000FFF, | ||
282 | .flags = IORESOURCE_MEM, | ||
283 | }, | ||
284 | /* | ||
285 | * PMEM | ||
286 | */ | ||
287 | { | ||
288 | .name = "DiagPersistentMemory", | ||
289 | .start = 0x00000000, | ||
290 | .end = 0x10000 - 1, | ||
291 | .flags = IORESOURCE_MEM, | ||
292 | }, | ||
293 | /* | ||
294 | * Smartcard | ||
295 | */ | ||
296 | { | ||
297 | .name = "SmartCardInfo", | ||
298 | .start = 0x00000000, | ||
299 | .end = 0x2800 - 1, | ||
300 | .flags = IORESOURCE_MEM, | ||
301 | }, | ||
302 | /* | ||
303 | * NAND Flash | ||
304 | */ | ||
305 | { | ||
306 | .name = "NandFlash", | ||
307 | .start = NAND_FLASH_BASE, | ||
308 | .end = NAND_FLASH_BASE+0x400 - 1, | ||
309 | .flags = IORESOURCE_IO, | ||
310 | }, | ||
311 | /* | ||
312 | * Synopsys GMAC Memory Region | ||
313 | */ | ||
314 | { | ||
315 | .name = "GMAC", | ||
316 | .start = 0x00000000, | ||
317 | .end = 0x00010000 - 1, | ||
318 | .flags = IORESOURCE_MEM, | ||
319 | }, | ||
320 | /* | ||
321 | * Add other resources here | ||
322 | */ | ||
323 | { }, | ||
324 | }; | ||
325 | |||
326 | struct resource non_dvr_vze_calliope_resources[] __initdata = | ||
327 | { | ||
328 | /* | ||
329 | * VIDEO / LX1 | ||
330 | */ | ||
331 | { | ||
332 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | ||
333 | .start = 0x22000000, | ||
334 | .end = 0x22200000 - 1, /*2 Meg */ | ||
335 | .flags = IORESOURCE_MEM, | ||
336 | }, | ||
337 | { | ||
338 | .name = "ST231aMonitor", /* 8k block ST231a monitor */ | ||
339 | .start = 0x22200000, | ||
340 | .end = 0x22202000 - 1, | ||
341 | .flags = IORESOURCE_MEM, | ||
342 | }, | ||
343 | { | ||
344 | .name = "MediaMemory1", | ||
345 | .start = 0x22202000, | ||
346 | .end = 0x22C20B85 - 1, /* 10.12 Meg */ | ||
347 | .flags = IORESOURCE_MEM, | ||
348 | }, | ||
349 | /* | ||
350 | * Sysaudio Driver | ||
351 | */ | ||
352 | { | ||
353 | .name = "DSP_Image_Buff", | ||
354 | .start = 0x00000000, | ||
355 | .end = 0x000FFFFF, | ||
356 | .flags = IORESOURCE_MEM, | ||
357 | }, | ||
358 | { | ||
359 | .name = "ADSC_CPU_PCM_Buff", | ||
360 | .start = 0x00000000, | ||
361 | .end = 0x00009FFF, | ||
362 | .flags = IORESOURCE_MEM, | ||
363 | }, | ||
364 | { | ||
365 | .name = "ADSC_AUX_Buff", | ||
366 | .start = 0x00000000, | ||
367 | .end = 0x00003FFF, | ||
368 | .flags = IORESOURCE_MEM, | ||
369 | }, | ||
370 | { | ||
371 | .name = "ADSC_Main_Buff", | ||
372 | .start = 0x00000000, | ||
373 | .end = 0x00003FFF, | ||
374 | .flags = IORESOURCE_MEM, | ||
375 | }, | ||
376 | /* | ||
377 | * STAVEM driver/STAPI | ||
378 | */ | ||
379 | { | ||
380 | .name = "AVMEMPartition0", | ||
381 | .start = 0x20396000, | ||
382 | .end = 0x206B6000 - 1, /* 3.125 MB total */ | ||
383 | .flags = IORESOURCE_MEM, | ||
384 | }, | ||
385 | /* | ||
386 | * GHW HAL Driver | ||
387 | */ | ||
388 | { | ||
389 | .name = "GraphicsHeap", | ||
390 | .start = 0x20100000, | ||
391 | .end = 0x20396000 - 1, | ||
392 | .flags = IORESOURCE_MEM, | ||
393 | }, | ||
394 | /* | ||
395 | * multi com buffer area | ||
396 | */ | ||
397 | { | ||
398 | .name = "MulticomSHM", | ||
399 | .start = 0x206B6000, | ||
400 | .end = 0x206D6000 - 1, | ||
401 | .flags = IORESOURCE_MEM, | ||
402 | }, | ||
403 | /* | ||
404 | * DMA Ring buffer | ||
405 | */ | ||
406 | { | ||
407 | .name = "BMM_Buffer", | ||
408 | .start = 0x00000000, | ||
409 | .end = 0x000AA000 - 1, | ||
410 | .flags = IORESOURCE_MEM, | ||
411 | }, | ||
412 | /* | ||
413 | * Display bins buffer for unit0 | ||
414 | */ | ||
415 | { | ||
416 | .name = "DisplayBins0", | ||
417 | .start = 0x00000000, | ||
418 | .end = 0x00000FFF, | ||
419 | .flags = IORESOURCE_MEM, | ||
420 | }, | ||
421 | /* | ||
422 | * PMEM | ||
423 | */ | ||
424 | { | ||
425 | .name = "DiagPersistentMemory", | ||
426 | .start = 0x00000000, | ||
427 | .end = 0x10000 - 1, | ||
428 | .flags = IORESOURCE_MEM, | ||
429 | }, | ||
430 | /* | ||
431 | * Smartcard | ||
432 | */ | ||
433 | { | ||
434 | .name = "SmartCardInfo", | ||
435 | .start = 0x00000000, | ||
436 | .end = 0x2800 - 1, | ||
437 | .flags = IORESOURCE_MEM, | ||
438 | }, | ||
439 | /* | ||
440 | * NAND Flash | ||
441 | */ | ||
442 | { | ||
443 | .name = "NandFlash", | ||
444 | .start = NAND_FLASH_BASE, | ||
445 | .end = NAND_FLASH_BASE+0x400 - 1, | ||
446 | .flags = IORESOURCE_MEM, | ||
447 | }, | ||
448 | /* | ||
449 | * Synopsys GMAC Memory Region | ||
450 | */ | ||
451 | { | ||
452 | .name = "GMAC", | ||
453 | .start = 0x00000000, | ||
454 | .end = 0x00010000 - 1, | ||
455 | .flags = IORESOURCE_MEM, | ||
456 | }, | ||
457 | /* | ||
458 | * Add other resources here | ||
459 | */ | ||
460 | { }, | ||
461 | }; | ||
462 | |||
463 | struct resource non_dvr_vzf_calliope_resources[] __initdata = | ||
464 | { | ||
465 | /* | ||
466 | * VIDEO / LX1 | ||
467 | */ | ||
468 | { | ||
469 | .name = "ST231aImage", /*Delta-Mu 1 image and ram */ | ||
470 | .start = 0x24000000, | ||
471 | .end = 0x24200000 - 1, /*2MiB */ | ||
472 | .flags = IORESOURCE_MEM, | ||
473 | }, | ||
474 | { | ||
475 | .name = "ST231aMonitor", /*8KiB block ST231a monitor */ | ||
476 | .start = 0x24200000, | ||
477 | .end = 0x24202000 - 1, | ||
478 | .flags = IORESOURCE_MEM, | ||
479 | }, | ||
480 | { | ||
481 | .name = "MediaMemory1", | ||
482 | .start = 0x24202000, | ||
483 | /* ~19.4 (21.5MiB - (2MiB + 8KiB)) */ | ||
484 | .end = 0x25580000 - 1, | ||
485 | .flags = IORESOURCE_MEM, | ||
486 | }, | ||
487 | /* | ||
488 | * Sysaudio Driver | ||
489 | */ | ||
490 | { | ||
491 | .name = "DSP_Image_Buff", | ||
492 | .start = 0x00000000, | ||
493 | .end = 0x000FFFFF, | ||
494 | .flags = IORESOURCE_MEM, | ||
495 | }, | ||
496 | { | ||
497 | .name = "ADSC_CPU_PCM_Buff", | ||
498 | .start = 0x00000000, | ||
499 | .end = 0x00009FFF, | ||
500 | .flags = IORESOURCE_MEM, | ||
501 | }, | ||
502 | { | ||
503 | .name = "ADSC_AUX_Buff", | ||
504 | .start = 0x00000000, | ||
505 | .end = 0x00003FFF, | ||
506 | .flags = IORESOURCE_MEM, | ||
507 | }, | ||
508 | { | ||
509 | .name = "ADSC_Main_Buff", | ||
510 | .start = 0x00000000, | ||
511 | .end = 0x00003FFF, | ||
512 | .flags = IORESOURCE_MEM, | ||
513 | }, | ||
514 | /* | ||
515 | * STAVEM driver/STAPI | ||
516 | */ | ||
517 | { | ||
518 | .name = "AVMEMPartition0", | ||
519 | .start = 0x00000000, | ||
520 | .end = 0x00480000 - 1, /* 4.5 MB total */ | ||
521 | .flags = IORESOURCE_MEM, | ||
522 | }, | ||
523 | /* | ||
524 | * GHW HAL Driver | ||
525 | */ | ||
526 | { | ||
527 | .name = "GraphicsHeap", | ||
528 | .start = 0x22700000, | ||
529 | .end = 0x23500000 - 1, /* 14 MB total */ | ||
530 | .flags = IORESOURCE_MEM, | ||
531 | }, | ||
532 | /* | ||
533 | * multi com buffer area | ||
534 | */ | ||
535 | { | ||
536 | .name = "MulticomSHM", | ||
537 | .start = 0x23700000, | ||
538 | .end = 0x23720000 - 1, | ||
539 | .flags = IORESOURCE_MEM, | ||
540 | }, | ||
541 | /* | ||
542 | * DMA Ring buffer (don't need recording buffers) | ||
543 | */ | ||
544 | { | ||
545 | .name = "BMM_Buffer", | ||
546 | .start = 0x00000000, | ||
547 | .end = 0x000AA000 - 1, | ||
548 | .flags = IORESOURCE_MEM, | ||
549 | }, | ||
550 | /* | ||
551 | * Display bins buffer for unit0 | ||
552 | */ | ||
553 | { | ||
554 | .name = "DisplayBins0", | ||
555 | .start = 0x00000000, | ||
556 | .end = 0x00000FFF, /* 4 KB total */ | ||
557 | .flags = IORESOURCE_MEM, | ||
558 | }, | ||
559 | /* | ||
560 | * Display bins buffer for unit1 | ||
561 | */ | ||
562 | { | ||
563 | .name = "DisplayBins1", | ||
564 | .start = 0x00000000, | ||
565 | .end = 0x00000FFF, /* 4 KB total */ | ||
566 | .flags = IORESOURCE_MEM, | ||
567 | }, | ||
568 | /* | ||
569 | * | ||
570 | * AVFS: player HAL memory | ||
571 | * | ||
572 | * | ||
573 | */ | ||
574 | { | ||
575 | .name = "AvfsDmaMem", | ||
576 | .start = 0x00000000, | ||
577 | .end = 0x002c4c00 - 1, /* 945K * 3 for playback */ | ||
578 | .flags = IORESOURCE_MEM, | ||
579 | }, | ||
580 | /* | ||
581 | * PMEM | ||
582 | */ | ||
583 | { | ||
584 | .name = "DiagPersistentMemory", | ||
585 | .start = 0x00000000, | ||
586 | .end = 0x10000 - 1, | ||
587 | .flags = IORESOURCE_MEM, | ||
588 | }, | ||
589 | /* | ||
590 | * Smartcard | ||
591 | */ | ||
592 | { | ||
593 | .name = "SmartCardInfo", | ||
594 | .start = 0x00000000, | ||
595 | .end = 0x2800 - 1, | ||
596 | .flags = IORESOURCE_MEM, | ||
597 | }, | ||
598 | /* | ||
599 | * NAND Flash | ||
600 | */ | ||
601 | { | ||
602 | .name = "NandFlash", | ||
603 | .start = NAND_FLASH_BASE, | ||
604 | .end = NAND_FLASH_BASE + 0x400 - 1, | ||
605 | .flags = IORESOURCE_MEM, | ||
606 | }, | ||
607 | /* | ||
608 | * Synopsys GMAC Memory Region | ||
609 | */ | ||
610 | { | ||
611 | .name = "GMAC", | ||
612 | .start = 0x00000000, | ||
613 | .end = 0x00010000 - 1, | ||
614 | .flags = IORESOURCE_MEM, | ||
615 | }, | ||
616 | /* | ||
617 | * Add other resources here | ||
618 | */ | ||
619 | { }, | ||
620 | }; | ||
diff --git a/arch/mips/powertv/asic/prealloc-cronus.c b/arch/mips/powertv/asic/prealloc-cronus.c new file mode 100644 index 000000000000..45a5c3ea718c --- /dev/null +++ b/arch/mips/powertv/asic/prealloc-cronus.c | |||
@@ -0,0 +1,608 @@ | |||
1 | /* | ||
2 | * Memory pre-allocations for Cronus boxes. | ||
3 | * | ||
4 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: Ken Eppinett | ||
21 | * David Schleef <ds@schleef.org> | ||
22 | */ | ||
23 | |||
24 | #include <linux/init.h> | ||
25 | #include <asm/mach-powertv/asic.h> | ||
26 | |||
27 | /* | ||
28 | * DVR_CAPABLE CRONUS RESOURCES | ||
29 | */ | ||
30 | struct resource dvr_cronus_resources[] __initdata = | ||
31 | { | ||
32 | /* | ||
33 | * | ||
34 | * VIDEO1 / LX1 | ||
35 | * | ||
36 | */ | ||
37 | { | ||
38 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | ||
39 | .start = 0x24000000, | ||
40 | .end = 0x241FFFFF, /* 2MiB */ | ||
41 | .flags = IORESOURCE_MEM, | ||
42 | }, | ||
43 | { | ||
44 | .name = "ST231aMonitor", /* 8KiB block ST231a monitor */ | ||
45 | .start = 0x24200000, | ||
46 | .end = 0x24201FFF, | ||
47 | .flags = IORESOURCE_MEM, | ||
48 | }, | ||
49 | { | ||
50 | .name = "MediaMemory1", | ||
51 | .start = 0x24202000, | ||
52 | .end = 0x25FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
53 | .flags = IORESOURCE_MEM, | ||
54 | }, | ||
55 | /* | ||
56 | * | ||
57 | * VIDEO2 / LX2 | ||
58 | * | ||
59 | */ | ||
60 | { | ||
61 | .name = "ST231bImage", /* Delta-Mu 2 image and ram */ | ||
62 | .start = 0x60000000, | ||
63 | .end = 0x601FFFFF, /* 2MiB */ | ||
64 | .flags = IORESOURCE_IO, | ||
65 | }, | ||
66 | { | ||
67 | .name = "ST231bMonitor", /* 8KiB block ST231b monitor */ | ||
68 | .start = 0x60200000, | ||
69 | .end = 0x60201FFF, | ||
70 | .flags = IORESOURCE_IO, | ||
71 | }, | ||
72 | { | ||
73 | .name = "MediaMemory2", | ||
74 | .start = 0x60202000, | ||
75 | .end = 0x61FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
76 | .flags = IORESOURCE_IO, | ||
77 | }, | ||
78 | /* | ||
79 | * | ||
80 | * Sysaudio Driver | ||
81 | * | ||
82 | * This driver requires: | ||
83 | * | ||
84 | * Arbitrary Based Buffers: | ||
85 | * DSP_Image_Buff - DSP code and data images (1MB) | ||
86 | * ADSC_CPU_PCM_Buff - ADSC CPU PCM buffer (40KB) | ||
87 | * ADSC_AUX_Buff - ADSC AUX buffer (16KB) | ||
88 | * ADSC_Main_Buff - ADSC Main buffer (16KB) | ||
89 | * | ||
90 | */ | ||
91 | { | ||
92 | .name = "DSP_Image_Buff", | ||
93 | .start = 0x00000000, | ||
94 | .end = 0x000FFFFF, | ||
95 | .flags = IORESOURCE_MEM, | ||
96 | }, | ||
97 | { | ||
98 | .name = "ADSC_CPU_PCM_Buff", | ||
99 | .start = 0x00000000, | ||
100 | .end = 0x00009FFF, | ||
101 | .flags = IORESOURCE_MEM, | ||
102 | }, | ||
103 | { | ||
104 | .name = "ADSC_AUX_Buff", | ||
105 | .start = 0x00000000, | ||
106 | .end = 0x00003FFF, | ||
107 | .flags = IORESOURCE_MEM, | ||
108 | }, | ||
109 | { | ||
110 | .name = "ADSC_Main_Buff", | ||
111 | .start = 0x00000000, | ||
112 | .end = 0x00003FFF, | ||
113 | .flags = IORESOURCE_MEM, | ||
114 | }, | ||
115 | /* | ||
116 | * | ||
117 | * STAVEM driver/STAPI | ||
118 | * | ||
119 | * This driver requires: | ||
120 | * | ||
121 | * Arbitrary Based Buffers: | ||
122 | * This memory area is used for allocating buffers for Video decoding | ||
123 | * purposes. Allocation/De-allocation within this buffer is managed | ||
124 | * by the STAVMEM driver of the STAPI. They could be Decimated | ||
125 | * Picture Buffers, Intermediate Buffers, as deemed necessary for | ||
126 | * video decoding purposes, for any video decoders on Zeus. | ||
127 | * | ||
128 | */ | ||
129 | { | ||
130 | .name = "AVMEMPartition0", | ||
131 | .start = 0x63580000, | ||
132 | .end = 0x64180000 - 1, /* 12 MB total */ | ||
133 | .flags = IORESOURCE_IO, | ||
134 | }, | ||
135 | /* | ||
136 | * | ||
137 | * DOCSIS Subsystem | ||
138 | * | ||
139 | * This driver requires: | ||
140 | * | ||
141 | * Arbitrary Based Buffers: | ||
142 | * Docsis - | ||
143 | * | ||
144 | */ | ||
145 | { | ||
146 | .name = "Docsis", | ||
147 | .start = 0x62000000, | ||
148 | .end = 0x62700000 - 1, /* 7 MB total */ | ||
149 | .flags = IORESOURCE_IO, | ||
150 | }, | ||
151 | /* | ||
152 | * | ||
153 | * GHW HAL Driver | ||
154 | * | ||
155 | * This driver requires: | ||
156 | * | ||
157 | * Arbitrary Based Buffers: | ||
158 | * GraphicsHeap - PowerTV Graphics Heap | ||
159 | * | ||
160 | */ | ||
161 | { | ||
162 | .name = "GraphicsHeap", | ||
163 | .start = 0x62700000, | ||
164 | .end = 0x63500000 - 1, /* 14 MB total */ | ||
165 | .flags = IORESOURCE_IO, | ||
166 | }, | ||
167 | /* | ||
168 | * | ||
169 | * multi com buffer area | ||
170 | * | ||
171 | * This driver requires: | ||
172 | * | ||
173 | * Arbitrary Based Buffers: | ||
174 | * Docsis - | ||
175 | * | ||
176 | */ | ||
177 | { | ||
178 | .name = "MulticomSHM", | ||
179 | .start = 0x26000000, | ||
180 | .end = 0x26020000 - 1, | ||
181 | .flags = IORESOURCE_MEM, | ||
182 | }, | ||
183 | /* | ||
184 | * | ||
185 | * DMA Ring buffer | ||
186 | * | ||
187 | * This driver requires: | ||
188 | * | ||
189 | * Arbitrary Based Buffers: | ||
190 | * Docsis - | ||
191 | * | ||
192 | */ | ||
193 | { | ||
194 | .name = "BMM_Buffer", | ||
195 | .start = 0x00000000, | ||
196 | .end = 0x00280000 - 1, | ||
197 | .flags = IORESOURCE_MEM, | ||
198 | }, | ||
199 | /* | ||
200 | * | ||
201 | * Display bins buffer for unit0 | ||
202 | * | ||
203 | * This driver requires: | ||
204 | * | ||
205 | * Arbitrary Based Buffers: | ||
206 | * Display Bins for unit0 | ||
207 | * | ||
208 | */ | ||
209 | { | ||
210 | .name = "DisplayBins0", | ||
211 | .start = 0x00000000, | ||
212 | .end = 0x00000FFF, /* 4 KB total */ | ||
213 | .flags = IORESOURCE_MEM, | ||
214 | }, | ||
215 | /* | ||
216 | * | ||
217 | * Display bins buffer | ||
218 | * | ||
219 | * This driver requires: | ||
220 | * | ||
221 | * Arbitrary Based Buffers: | ||
222 | * Display Bins for unit1 | ||
223 | * | ||
224 | */ | ||
225 | { | ||
226 | .name = "DisplayBins1", | ||
227 | .start = 0x64AD4000, | ||
228 | .end = 0x64AD5000 - 1, /* 4 KB total */ | ||
229 | .flags = IORESOURCE_IO, | ||
230 | }, | ||
231 | /* | ||
232 | * | ||
233 | * ITFS | ||
234 | * | ||
235 | * This driver requires: | ||
236 | * | ||
237 | * Arbitrary Based Buffers: | ||
238 | * Docsis - | ||
239 | * | ||
240 | */ | ||
241 | { | ||
242 | .name = "ITFS", | ||
243 | .start = 0x64180000, | ||
244 | /* 815,104 bytes each for 2 ITFS partitions. */ | ||
245 | .end = 0x6430DFFF, | ||
246 | .flags = IORESOURCE_IO, | ||
247 | }, | ||
248 | /* | ||
249 | * | ||
250 | * AVFS | ||
251 | * | ||
252 | * This driver requires: | ||
253 | * | ||
254 | * Arbitrary Based Buffers: | ||
255 | * Docsis - | ||
256 | * | ||
257 | */ | ||
258 | { | ||
259 | .name = "AvfsDmaMem", | ||
260 | .start = 0x6430E000, | ||
261 | /* (945K * 8) = (128K *3) 5 playbacks / 3 server */ | ||
262 | .end = 0x64AD0000 - 1, | ||
263 | .flags = IORESOURCE_IO, | ||
264 | }, | ||
265 | { | ||
266 | .name = "AvfsFileSys", | ||
267 | .start = 0x64AD0000, | ||
268 | .end = 0x64AD1000 - 1, /* 4K */ | ||
269 | .flags = IORESOURCE_IO, | ||
270 | }, | ||
271 | /* | ||
272 | * | ||
273 | * PMEM | ||
274 | * | ||
275 | * This driver requires: | ||
276 | * | ||
277 | * Arbitrary Based Buffers: | ||
278 | * Persistent memory for diagnostics. | ||
279 | * | ||
280 | */ | ||
281 | { | ||
282 | .name = "DiagPersistentMemory", | ||
283 | .start = 0x00000000, | ||
284 | .end = 0x10000 - 1, | ||
285 | .flags = IORESOURCE_MEM, | ||
286 | }, | ||
287 | /* | ||
288 | * | ||
289 | * Smartcard | ||
290 | * | ||
291 | * This driver requires: | ||
292 | * | ||
293 | * Arbitrary Based Buffers: | ||
294 | * Read and write buffers for Internal/External cards | ||
295 | * | ||
296 | */ | ||
297 | { | ||
298 | .name = "SmartCardInfo", | ||
299 | .start = 0x64AD1000, | ||
300 | .end = 0x64AD3800 - 1, | ||
301 | .flags = IORESOURCE_IO, | ||
302 | }, | ||
303 | /* | ||
304 | * | ||
305 | * KAVNET | ||
306 | * NP Reset Vector - must be of the form xxCxxxxx | ||
307 | * NP Image - must be video bank 1 | ||
308 | * NP IPC - must be video bank 2 | ||
309 | */ | ||
310 | { | ||
311 | .name = "NP_Reset_Vector", | ||
312 | .start = 0x27c00000, | ||
313 | .end = 0x27c01000 - 1, | ||
314 | .flags = IORESOURCE_MEM, | ||
315 | }, | ||
316 | { | ||
317 | .name = "NP_Image", | ||
318 | .start = 0x27020000, | ||
319 | .end = 0x27060000 - 1, | ||
320 | .flags = IORESOURCE_MEM, | ||
321 | }, | ||
322 | { | ||
323 | .name = "NP_IPC", | ||
324 | .start = 0x63500000, | ||
325 | .end = 0x63580000 - 1, | ||
326 | .flags = IORESOURCE_IO, | ||
327 | }, | ||
328 | /* | ||
329 | * Add other resources here | ||
330 | */ | ||
331 | { }, | ||
332 | }; | ||
333 | |||
334 | /* | ||
335 | * NON_DVR_CAPABLE CRONUS RESOURCES | ||
336 | */ | ||
337 | struct resource non_dvr_cronus_resources[] __initdata = | ||
338 | { | ||
339 | /* | ||
340 | * | ||
341 | * VIDEO1 / LX1 | ||
342 | * | ||
343 | */ | ||
344 | { | ||
345 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | ||
346 | .start = 0x24000000, | ||
347 | .end = 0x241FFFFF, /* 2MiB */ | ||
348 | .flags = IORESOURCE_MEM, | ||
349 | }, | ||
350 | { | ||
351 | .name = "ST231aMonitor", /* 8KiB block ST231a monitor */ | ||
352 | .start = 0x24200000, | ||
353 | .end = 0x24201FFF, | ||
354 | .flags = IORESOURCE_MEM, | ||
355 | }, | ||
356 | { | ||
357 | .name = "MediaMemory1", | ||
358 | .start = 0x24202000, | ||
359 | .end = 0x25FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
360 | .flags = IORESOURCE_MEM, | ||
361 | }, | ||
362 | /* | ||
363 | * | ||
364 | * VIDEO2 / LX2 | ||
365 | * | ||
366 | */ | ||
367 | { | ||
368 | .name = "ST231bImage", /* Delta-Mu 2 image and ram */ | ||
369 | .start = 0x60000000, | ||
370 | .end = 0x601FFFFF, /* 2MiB */ | ||
371 | .flags = IORESOURCE_IO, | ||
372 | }, | ||
373 | { | ||
374 | .name = "ST231bMonitor", /* 8KiB block ST231b monitor */ | ||
375 | .start = 0x60200000, | ||
376 | .end = 0x60201FFF, | ||
377 | .flags = IORESOURCE_IO, | ||
378 | }, | ||
379 | { | ||
380 | .name = "MediaMemory2", | ||
381 | .start = 0x60202000, | ||
382 | .end = 0x61FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
383 | .flags = IORESOURCE_IO, | ||
384 | }, | ||
385 | /* | ||
386 | * | ||
387 | * Sysaudio Driver | ||
388 | * | ||
389 | * This driver requires: | ||
390 | * | ||
391 | * Arbitrary Based Buffers: | ||
392 | * DSP_Image_Buff - DSP code and data images (1MB) | ||
393 | * ADSC_CPU_PCM_Buff - ADSC CPU PCM buffer (40KB) | ||
394 | * ADSC_AUX_Buff - ADSC AUX buffer (16KB) | ||
395 | * ADSC_Main_Buff - ADSC Main buffer (16KB) | ||
396 | * | ||
397 | */ | ||
398 | { | ||
399 | .name = "DSP_Image_Buff", | ||
400 | .start = 0x00000000, | ||
401 | .end = 0x000FFFFF, | ||
402 | .flags = IORESOURCE_MEM, | ||
403 | }, | ||
404 | { | ||
405 | .name = "ADSC_CPU_PCM_Buff", | ||
406 | .start = 0x00000000, | ||
407 | .end = 0x00009FFF, | ||
408 | .flags = IORESOURCE_MEM, | ||
409 | }, | ||
410 | { | ||
411 | .name = "ADSC_AUX_Buff", | ||
412 | .start = 0x00000000, | ||
413 | .end = 0x00003FFF, | ||
414 | .flags = IORESOURCE_MEM, | ||
415 | }, | ||
416 | { | ||
417 | .name = "ADSC_Main_Buff", | ||
418 | .start = 0x00000000, | ||
419 | .end = 0x00003FFF, | ||
420 | .flags = IORESOURCE_MEM, | ||
421 | }, | ||
422 | /* | ||
423 | * | ||
424 | * STAVEM driver/STAPI | ||
425 | * | ||
426 | * This driver requires: | ||
427 | * | ||
428 | * Arbitrary Based Buffers: | ||
429 | * This memory area is used for allocating buffers for Video decoding | ||
430 | * purposes. Allocation/De-allocation within this buffer is managed | ||
431 | * by the STAVMEM driver of the STAPI. They could be Decimated | ||
432 | * Picture Buffers, Intermediate Buffers, as deemed necessary for | ||
433 | * video decoding purposes, for any video decoders on Zeus. | ||
434 | * | ||
435 | */ | ||
436 | { | ||
437 | .name = "AVMEMPartition0", | ||
438 | .start = 0x63580000, | ||
439 | .end = 0x64180000 - 1, /* 12 MB total */ | ||
440 | .flags = IORESOURCE_IO, | ||
441 | }, | ||
442 | /* | ||
443 | * | ||
444 | * DOCSIS Subsystem | ||
445 | * | ||
446 | * This driver requires: | ||
447 | * | ||
448 | * Arbitrary Based Buffers: | ||
449 | * Docsis - | ||
450 | * | ||
451 | */ | ||
452 | { | ||
453 | .name = "Docsis", | ||
454 | .start = 0x62000000, | ||
455 | .end = 0x62700000 - 1, /* 7 MB total */ | ||
456 | .flags = IORESOURCE_IO, | ||
457 | }, | ||
458 | /* | ||
459 | * | ||
460 | * GHW HAL Driver | ||
461 | * | ||
462 | * This driver requires: | ||
463 | * | ||
464 | * Arbitrary Based Buffers: | ||
465 | * GraphicsHeap - PowerTV Graphics Heap | ||
466 | * | ||
467 | */ | ||
468 | { | ||
469 | .name = "GraphicsHeap", | ||
470 | .start = 0x62700000, | ||
471 | .end = 0x63500000 - 1, /* 14 MB total */ | ||
472 | .flags = IORESOURCE_IO, | ||
473 | }, | ||
474 | /* | ||
475 | * | ||
476 | * multi com buffer area | ||
477 | * | ||
478 | * This driver requires: | ||
479 | * | ||
480 | * Arbitrary Based Buffers: | ||
481 | * Docsis - | ||
482 | * | ||
483 | */ | ||
484 | { | ||
485 | .name = "MulticomSHM", | ||
486 | .start = 0x26000000, | ||
487 | .end = 0x26020000 - 1, | ||
488 | .flags = IORESOURCE_MEM, | ||
489 | }, | ||
490 | /* | ||
491 | * | ||
492 | * DMA Ring buffer | ||
493 | * | ||
494 | * This driver requires: | ||
495 | * | ||
496 | * Arbitrary Based Buffers: | ||
497 | * Docsis - | ||
498 | * | ||
499 | */ | ||
500 | { | ||
501 | .name = "BMM_Buffer", | ||
502 | .start = 0x00000000, | ||
503 | .end = 0x000AA000 - 1, | ||
504 | .flags = IORESOURCE_MEM, | ||
505 | }, | ||
506 | /* | ||
507 | * | ||
508 | * Display bins buffer for unit0 | ||
509 | * | ||
510 | * This driver requires: | ||
511 | * | ||
512 | * Arbitrary Based Buffers: | ||
513 | * Display Bins for unit0 | ||
514 | * | ||
515 | */ | ||
516 | { | ||
517 | .name = "DisplayBins0", | ||
518 | .start = 0x00000000, | ||
519 | .end = 0x00000FFF, /* 4 KB total */ | ||
520 | .flags = IORESOURCE_MEM, | ||
521 | }, | ||
522 | /* | ||
523 | * | ||
524 | * Display bins buffer | ||
525 | * | ||
526 | * This driver requires: | ||
527 | * | ||
528 | * Arbitrary Based Buffers: | ||
529 | * Display Bins for unit1 | ||
530 | * | ||
531 | */ | ||
532 | { | ||
533 | .name = "DisplayBins1", | ||
534 | .start = 0x64AD4000, | ||
535 | .end = 0x64AD5000 - 1, /* 4 KB total */ | ||
536 | .flags = IORESOURCE_IO, | ||
537 | }, | ||
538 | /* | ||
539 | * | ||
540 | * AVFS: player HAL memory | ||
541 | * | ||
542 | * | ||
543 | */ | ||
544 | { | ||
545 | .name = "AvfsDmaMem", | ||
546 | .start = 0x6430E000, | ||
547 | .end = 0x645D2C00 - 1, /* 945K * 3 for playback */ | ||
548 | .flags = IORESOURCE_IO, | ||
549 | }, | ||
550 | /* | ||
551 | * | ||
552 | * PMEM | ||
553 | * | ||
554 | * This driver requires: | ||
555 | * | ||
556 | * Arbitrary Based Buffers: | ||
557 | * Persistent memory for diagnostics. | ||
558 | * | ||
559 | */ | ||
560 | { | ||
561 | .name = "DiagPersistentMemory", | ||
562 | .start = 0x00000000, | ||
563 | .end = 0x10000 - 1, | ||
564 | .flags = IORESOURCE_MEM, | ||
565 | }, | ||
566 | /* | ||
567 | * | ||
568 | * Smartcard | ||
569 | * | ||
570 | * This driver requires: | ||
571 | * | ||
572 | * Arbitrary Based Buffers: | ||
573 | * Read and write buffers for Internal/External cards | ||
574 | * | ||
575 | */ | ||
576 | { | ||
577 | .name = "SmartCardInfo", | ||
578 | .start = 0x64AD1000, | ||
579 | .end = 0x64AD3800 - 1, | ||
580 | .flags = IORESOURCE_IO, | ||
581 | }, | ||
582 | /* | ||
583 | * | ||
584 | * KAVNET | ||
585 | * NP Reset Vector - must be of the form xxCxxxxx | ||
586 | * NP Image - must be video bank 1 | ||
587 | * NP IPC - must be video bank 2 | ||
588 | */ | ||
589 | { | ||
590 | .name = "NP_Reset_Vector", | ||
591 | .start = 0x27c00000, | ||
592 | .end = 0x27c01000 - 1, | ||
593 | .flags = IORESOURCE_MEM, | ||
594 | }, | ||
595 | { | ||
596 | .name = "NP_Image", | ||
597 | .start = 0x27020000, | ||
598 | .end = 0x27060000 - 1, | ||
599 | .flags = IORESOURCE_MEM, | ||
600 | }, | ||
601 | { | ||
602 | .name = "NP_IPC", | ||
603 | .start = 0x63500000, | ||
604 | .end = 0x63580000 - 1, | ||
605 | .flags = IORESOURCE_IO, | ||
606 | }, | ||
607 | { }, | ||
608 | }; | ||
diff --git a/arch/mips/powertv/asic/prealloc-cronuslite.c b/arch/mips/powertv/asic/prealloc-cronuslite.c new file mode 100644 index 000000000000..23a905613c04 --- /dev/null +++ b/arch/mips/powertv/asic/prealloc-cronuslite.c | |||
@@ -0,0 +1,290 @@ | |||
1 | /* | ||
2 | * Memory pre-allocations for Cronus Lite boxes. | ||
3 | * | ||
4 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: Ken Eppinett | ||
21 | * David Schleef <ds@schleef.org> | ||
22 | */ | ||
23 | |||
24 | #include <linux/init.h> | ||
25 | #include <asm/mach-powertv/asic.h> | ||
26 | |||
27 | /* | ||
28 | * NON_DVR_CAPABLE CRONUSLITE RESOURCES | ||
29 | */ | ||
30 | struct resource non_dvr_cronuslite_resources[] __initdata = | ||
31 | { | ||
32 | /* | ||
33 | * | ||
34 | * VIDEO2 / LX2 | ||
35 | * | ||
36 | */ | ||
37 | { | ||
38 | .name = "ST231aImage", /* Delta-Mu 2 image and ram */ | ||
39 | .start = 0x60000000, | ||
40 | .end = 0x601FFFFF, /* 2MiB */ | ||
41 | .flags = IORESOURCE_IO, | ||
42 | }, | ||
43 | { | ||
44 | .name = "ST231aMonitor", /* 8KiB block ST231b monitor */ | ||
45 | .start = 0x60200000, | ||
46 | .end = 0x60201FFF, | ||
47 | .flags = IORESOURCE_IO, | ||
48 | }, | ||
49 | { | ||
50 | .name = "MediaMemory1", | ||
51 | .start = 0x60202000, | ||
52 | .end = 0x61FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
53 | .flags = IORESOURCE_IO, | ||
54 | }, | ||
55 | /* | ||
56 | * | ||
57 | * Sysaudio Driver | ||
58 | * | ||
59 | * This driver requires: | ||
60 | * | ||
61 | * Arbitrary Based Buffers: | ||
62 | * DSP_Image_Buff - DSP code and data images (1MB) | ||
63 | * ADSC_CPU_PCM_Buff - ADSC CPU PCM buffer (40KB) | ||
64 | * ADSC_AUX_Buff - ADSC AUX buffer (16KB) | ||
65 | * ADSC_Main_Buff - ADSC Main buffer (16KB) | ||
66 | * | ||
67 | */ | ||
68 | { | ||
69 | .name = "DSP_Image_Buff", | ||
70 | .start = 0x00000000, | ||
71 | .end = 0x000FFFFF, | ||
72 | .flags = IORESOURCE_MEM, | ||
73 | }, | ||
74 | { | ||
75 | .name = "ADSC_CPU_PCM_Buff", | ||
76 | .start = 0x00000000, | ||
77 | .end = 0x00009FFF, | ||
78 | .flags = IORESOURCE_MEM, | ||
79 | }, | ||
80 | { | ||
81 | .name = "ADSC_AUX_Buff", | ||
82 | .start = 0x00000000, | ||
83 | .end = 0x00003FFF, | ||
84 | .flags = IORESOURCE_MEM, | ||
85 | }, | ||
86 | { | ||
87 | .name = "ADSC_Main_Buff", | ||
88 | .start = 0x00000000, | ||
89 | .end = 0x00003FFF, | ||
90 | .flags = IORESOURCE_MEM, | ||
91 | }, | ||
92 | /* | ||
93 | * | ||
94 | * STAVEM driver/STAPI | ||
95 | * | ||
96 | * This driver requires: | ||
97 | * | ||
98 | * Arbitrary Based Buffers: | ||
99 | * This memory area is used for allocating buffers for Video decoding | ||
100 | * purposes. Allocation/De-allocation within this buffer is managed | ||
101 | * by the STAVMEM driver of the STAPI. They could be Decimated | ||
102 | * Picture Buffers, Intermediate Buffers, as deemed necessary for | ||
103 | * video decoding purposes, for any video decoders on Zeus. | ||
104 | * | ||
105 | */ | ||
106 | { | ||
107 | .name = "AVMEMPartition0", | ||
108 | .start = 0x63580000, | ||
109 | .end = 0x63B80000 - 1, /* 6 MB total */ | ||
110 | .flags = IORESOURCE_IO, | ||
111 | }, | ||
112 | /* | ||
113 | * | ||
114 | * DOCSIS Subsystem | ||
115 | * | ||
116 | * This driver requires: | ||
117 | * | ||
118 | * Arbitrary Based Buffers: | ||
119 | * Docsis - | ||
120 | * | ||
121 | */ | ||
122 | { | ||
123 | .name = "Docsis", | ||
124 | .start = 0x62000000, | ||
125 | .end = 0x62700000 - 1, /* 7 MB total */ | ||
126 | .flags = IORESOURCE_IO, | ||
127 | }, | ||
128 | /* | ||
129 | * | ||
130 | * GHW HAL Driver | ||
131 | * | ||
132 | * This driver requires: | ||
133 | * | ||
134 | * Arbitrary Based Buffers: | ||
135 | * GraphicsHeap - PowerTV Graphics Heap | ||
136 | * | ||
137 | */ | ||
138 | { | ||
139 | .name = "GraphicsHeap", | ||
140 | .start = 0x62700000, | ||
141 | .end = 0x63500000 - 1, /* 14 MB total */ | ||
142 | .flags = IORESOURCE_IO, | ||
143 | }, | ||
144 | /* | ||
145 | * | ||
146 | * multi com buffer area | ||
147 | * | ||
148 | * This driver requires: | ||
149 | * | ||
150 | * Arbitrary Based Buffers: | ||
151 | * Docsis - | ||
152 | * | ||
153 | */ | ||
154 | { | ||
155 | .name = "MulticomSHM", | ||
156 | .start = 0x26000000, | ||
157 | .end = 0x26020000 - 1, | ||
158 | .flags = IORESOURCE_MEM, | ||
159 | }, | ||
160 | /* | ||
161 | * | ||
162 | * DMA Ring buffer | ||
163 | * | ||
164 | * This driver requires: | ||
165 | * | ||
166 | * Arbitrary Based Buffers: | ||
167 | * Docsis - | ||
168 | * | ||
169 | */ | ||
170 | { | ||
171 | .name = "BMM_Buffer", | ||
172 | .start = 0x00000000, | ||
173 | .end = 0x000AA000 - 1, | ||
174 | .flags = IORESOURCE_MEM, | ||
175 | }, | ||
176 | /* | ||
177 | * | ||
178 | * Display bins buffer for unit0 | ||
179 | * | ||
180 | * This driver requires: | ||
181 | * | ||
182 | * Arbitrary Based Buffers: | ||
183 | * Display Bins for unit0 | ||
184 | * | ||
185 | */ | ||
186 | { | ||
187 | .name = "DisplayBins0", | ||
188 | .start = 0x00000000, | ||
189 | .end = 0x00000FFF, /* 4 KB total */ | ||
190 | .flags = IORESOURCE_MEM, | ||
191 | }, | ||
192 | /* | ||
193 | * | ||
194 | * Display bins buffer | ||
195 | * | ||
196 | * This driver requires: | ||
197 | * | ||
198 | * Arbitrary Based Buffers: | ||
199 | * Display Bins for unit1 | ||
200 | * | ||
201 | */ | ||
202 | { | ||
203 | .name = "DisplayBins1", | ||
204 | .start = 0x63B83000, | ||
205 | .end = 0x63B84000 - 1, /* 4 KB total */ | ||
206 | .flags = IORESOURCE_IO, | ||
207 | }, | ||
208 | /* | ||
209 | * | ||
210 | * AVFS: player HAL memory | ||
211 | * | ||
212 | * | ||
213 | */ | ||
214 | { | ||
215 | .name = "AvfsDmaMem", | ||
216 | .start = 0x63B84000, | ||
217 | .end = 0x63E48C00 - 1, /* 945K * 3 for playback */ | ||
218 | .flags = IORESOURCE_IO, | ||
219 | }, | ||
220 | /* | ||
221 | * | ||
222 | * PMEM | ||
223 | * | ||
224 | * This driver requires: | ||
225 | * | ||
226 | * Arbitrary Based Buffers: | ||
227 | * Persistent memory for diagnostics. | ||
228 | * | ||
229 | */ | ||
230 | { | ||
231 | .name = "DiagPersistentMemory", | ||
232 | .start = 0x00000000, | ||
233 | .end = 0x10000 - 1, | ||
234 | .flags = IORESOURCE_MEM, | ||
235 | }, | ||
236 | /* | ||
237 | * | ||
238 | * Smartcard | ||
239 | * | ||
240 | * This driver requires: | ||
241 | * | ||
242 | * Arbitrary Based Buffers: | ||
243 | * Read and write buffers for Internal/External cards | ||
244 | * | ||
245 | */ | ||
246 | { | ||
247 | .name = "SmartCardInfo", | ||
248 | .start = 0x63B80000, | ||
249 | .end = 0x63B82800 - 1, | ||
250 | .flags = IORESOURCE_IO, | ||
251 | }, | ||
252 | /* | ||
253 | * | ||
254 | * KAVNET | ||
255 | * NP Reset Vector - must be of the form xxCxxxxx | ||
256 | * NP Image - must be video bank 1 | ||
257 | * NP IPC - must be video bank 2 | ||
258 | */ | ||
259 | { | ||
260 | .name = "NP_Reset_Vector", | ||
261 | .start = 0x27c00000, | ||
262 | .end = 0x27c01000 - 1, | ||
263 | .flags = IORESOURCE_MEM, | ||
264 | }, | ||
265 | { | ||
266 | .name = "NP_Image", | ||
267 | .start = 0x27020000, | ||
268 | .end = 0x27060000 - 1, | ||
269 | .flags = IORESOURCE_MEM, | ||
270 | }, | ||
271 | { | ||
272 | .name = "NP_IPC", | ||
273 | .start = 0x63500000, | ||
274 | .end = 0x63580000 - 1, | ||
275 | .flags = IORESOURCE_IO, | ||
276 | }, | ||
277 | /* | ||
278 | * NAND Flash | ||
279 | */ | ||
280 | { | ||
281 | .name = "NandFlash", | ||
282 | .start = NAND_FLASH_BASE, | ||
283 | .end = NAND_FLASH_BASE + 0x400 - 1, | ||
284 | .flags = IORESOURCE_IO, | ||
285 | }, | ||
286 | /* | ||
287 | * Add other resources here | ||
288 | */ | ||
289 | { }, | ||
290 | }; | ||
diff --git a/arch/mips/powertv/asic/prealloc-zeus.c b/arch/mips/powertv/asic/prealloc-zeus.c new file mode 100644 index 000000000000..018d4514dbe3 --- /dev/null +++ b/arch/mips/powertv/asic/prealloc-zeus.c | |||
@@ -0,0 +1,459 @@ | |||
1 | /* | ||
2 | * Memory pre-allocations for Zeus boxes. | ||
3 | * | ||
4 | * Copyright (C) 2005-2009 Scientific-Atlanta, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: Ken Eppinett | ||
21 | * David Schleef <ds@schleef.org> | ||
22 | */ | ||
23 | |||
24 | #include <linux/init.h> | ||
25 | #include <asm/mach-powertv/asic.h> | ||
26 | |||
27 | /* | ||
28 | * DVR_CAPABLE RESOURCES | ||
29 | */ | ||
30 | struct resource dvr_zeus_resources[] __initdata = | ||
31 | { | ||
32 | /* | ||
33 | * | ||
34 | * VIDEO1 / LX1 | ||
35 | * | ||
36 | */ | ||
37 | { | ||
38 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | ||
39 | .start = 0x20000000, | ||
40 | .end = 0x201FFFFF, /* 2MiB */ | ||
41 | .flags = IORESOURCE_IO, | ||
42 | }, | ||
43 | { | ||
44 | .name = "ST231aMonitor", /* 8KiB block ST231a monitor */ | ||
45 | .start = 0x20200000, | ||
46 | .end = 0x20201FFF, | ||
47 | .flags = IORESOURCE_IO, | ||
48 | }, | ||
49 | { | ||
50 | .name = "MediaMemory1", | ||
51 | .start = 0x20202000, | ||
52 | .end = 0x21FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
53 | .flags = IORESOURCE_IO, | ||
54 | }, | ||
55 | /* | ||
56 | * | ||
57 | * VIDEO2 / LX2 | ||
58 | * | ||
59 | */ | ||
60 | { | ||
61 | .name = "ST231bImage", /* Delta-Mu 2 image and ram */ | ||
62 | .start = 0x30000000, | ||
63 | .end = 0x301FFFFF, /* 2MiB */ | ||
64 | .flags = IORESOURCE_IO, | ||
65 | }, | ||
66 | { | ||
67 | .name = "ST231bMonitor", /* 8KiB block ST231b monitor */ | ||
68 | .start = 0x30200000, | ||
69 | .end = 0x30201FFF, | ||
70 | .flags = IORESOURCE_IO, | ||
71 | }, | ||
72 | { | ||
73 | .name = "MediaMemory2", | ||
74 | .start = 0x30202000, | ||
75 | .end = 0x31FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
76 | .flags = IORESOURCE_IO, | ||
77 | }, | ||
78 | /* | ||
79 | * | ||
80 | * Sysaudio Driver | ||
81 | * | ||
82 | * This driver requires: | ||
83 | * | ||
84 | * Arbitrary Based Buffers: | ||
85 | * DSP_Image_Buff - DSP code and data images (1MB) | ||
86 | * ADSC_CPU_PCM_Buff - ADSC CPU PCM buffer (40KB) | ||
87 | * ADSC_AUX_Buff - ADSC AUX buffer (16KB) | ||
88 | * ADSC_Main_Buff - ADSC Main buffer (16KB) | ||
89 | * | ||
90 | */ | ||
91 | { | ||
92 | .name = "DSP_Image_Buff", | ||
93 | .start = 0x00000000, | ||
94 | .end = 0x000FFFFF, | ||
95 | .flags = IORESOURCE_MEM, | ||
96 | }, | ||
97 | { | ||
98 | .name = "ADSC_CPU_PCM_Buff", | ||
99 | .start = 0x00000000, | ||
100 | .end = 0x00009FFF, | ||
101 | .flags = IORESOURCE_MEM, | ||
102 | }, | ||
103 | { | ||
104 | .name = "ADSC_AUX_Buff", | ||
105 | .start = 0x00000000, | ||
106 | .end = 0x00003FFF, | ||
107 | .flags = IORESOURCE_MEM, | ||
108 | }, | ||
109 | { | ||
110 | .name = "ADSC_Main_Buff", | ||
111 | .start = 0x00000000, | ||
112 | .end = 0x00003FFF, | ||
113 | .flags = IORESOURCE_MEM, | ||
114 | }, | ||
115 | /* | ||
116 | * | ||
117 | * STAVEM driver/STAPI | ||
118 | * | ||
119 | * This driver requires: | ||
120 | * | ||
121 | * Arbitrary Based Buffers: | ||
122 | * This memory area is used for allocating buffers for Video decoding | ||
123 | * purposes. Allocation/De-allocation within this buffer is managed | ||
124 | * by the STAVMEM driver of the STAPI. They could be Decimated | ||
125 | * Picture Buffers, Intermediate Buffers, as deemed necessary for | ||
126 | * video decoding purposes, for any video decoders on Zeus. | ||
127 | * | ||
128 | */ | ||
129 | { | ||
130 | .name = "AVMEMPartition0", | ||
131 | .start = 0x00000000, | ||
132 | .end = 0x00c00000 - 1, /* 12 MB total */ | ||
133 | .flags = IORESOURCE_MEM, | ||
134 | }, | ||
135 | /* | ||
136 | * | ||
137 | * DOCSIS Subsystem | ||
138 | * | ||
139 | * This driver requires: | ||
140 | * | ||
141 | * Arbitrary Based Buffers: | ||
142 | * Docsis - | ||
143 | * | ||
144 | */ | ||
145 | { | ||
146 | .name = "Docsis", | ||
147 | .start = 0x40100000, | ||
148 | .end = 0x407fffff, | ||
149 | .flags = IORESOURCE_MEM, | ||
150 | }, | ||
151 | /* | ||
152 | * | ||
153 | * GHW HAL Driver | ||
154 | * | ||
155 | * This driver requires: | ||
156 | * | ||
157 | * Arbitrary Based Buffers: | ||
158 | * GraphicsHeap - PowerTV Graphics Heap | ||
159 | * | ||
160 | */ | ||
161 | { | ||
162 | .name = "GraphicsHeap", | ||
163 | .start = 0x46900000, | ||
164 | .end = 0x47700000 - 1, /* 14 MB total */ | ||
165 | .flags = IORESOURCE_MEM, | ||
166 | }, | ||
167 | /* | ||
168 | * | ||
169 | * multi com buffer area | ||
170 | * | ||
171 | * This driver requires: | ||
172 | * | ||
173 | * Arbitrary Based Buffers: | ||
174 | * Docsis - | ||
175 | * | ||
176 | */ | ||
177 | { | ||
178 | .name = "MulticomSHM", | ||
179 | .start = 0x47900000, | ||
180 | .end = 0x47920000 - 1, | ||
181 | .flags = IORESOURCE_MEM, | ||
182 | }, | ||
183 | /* | ||
184 | * | ||
185 | * DMA Ring buffer | ||
186 | * | ||
187 | * This driver requires: | ||
188 | * | ||
189 | * Arbitrary Based Buffers: | ||
190 | * Docsis - | ||
191 | * | ||
192 | */ | ||
193 | { | ||
194 | .name = "BMM_Buffer", | ||
195 | .start = 0x00000000, | ||
196 | .end = 0x00280000 - 1, | ||
197 | .flags = IORESOURCE_MEM, | ||
198 | }, | ||
199 | /* | ||
200 | * | ||
201 | * Display bins buffer for unit0 | ||
202 | * | ||
203 | * This driver requires: | ||
204 | * | ||
205 | * Arbitrary Based Buffers: | ||
206 | * Display Bins for unit0 | ||
207 | * | ||
208 | */ | ||
209 | { | ||
210 | .name = "DisplayBins0", | ||
211 | .start = 0x00000000, | ||
212 | .end = 0x00000FFF, /* 4 KB total */ | ||
213 | .flags = IORESOURCE_MEM, | ||
214 | }, | ||
215 | /* | ||
216 | * | ||
217 | * Display bins buffer | ||
218 | * | ||
219 | * This driver requires: | ||
220 | * | ||
221 | * Arbitrary Based Buffers: | ||
222 | * Display Bins for unit1 | ||
223 | * | ||
224 | */ | ||
225 | { | ||
226 | .name = "DisplayBins1", | ||
227 | .start = 0x00000000, | ||
228 | .end = 0x00000FFF, /* 4 KB total */ | ||
229 | .flags = IORESOURCE_MEM, | ||
230 | }, | ||
231 | /* | ||
232 | * | ||
233 | * ITFS | ||
234 | * | ||
235 | * This driver requires: | ||
236 | * | ||
237 | * Arbitrary Based Buffers: | ||
238 | * Docsis - | ||
239 | * | ||
240 | */ | ||
241 | { | ||
242 | .name = "ITFS", | ||
243 | .start = 0x00000000, | ||
244 | /* 815,104 bytes each for 2 ITFS partitions. */ | ||
245 | .end = 0x0018DFFF, | ||
246 | .flags = IORESOURCE_MEM, | ||
247 | }, | ||
248 | /* | ||
249 | * | ||
250 | * AVFS | ||
251 | * | ||
252 | * This driver requires: | ||
253 | * | ||
254 | * Arbitrary Based Buffers: | ||
255 | * Docsis - | ||
256 | * | ||
257 | */ | ||
258 | { | ||
259 | .name = "AvfsDmaMem", | ||
260 | .start = 0x00000000, | ||
261 | /* (945K * 8) = (128K * 3) 5 playbacks / 3 server */ | ||
262 | .end = 0x007c2000 - 1, | ||
263 | .flags = IORESOURCE_MEM, | ||
264 | }, | ||
265 | { | ||
266 | .name = "AvfsFileSys", | ||
267 | .start = 0x00000000, | ||
268 | .end = 0x00001000 - 1, /* 4K */ | ||
269 | .flags = IORESOURCE_MEM, | ||
270 | }, | ||
271 | /* | ||
272 | * | ||
273 | * PMEM | ||
274 | * | ||
275 | * This driver requires: | ||
276 | * | ||
277 | * Arbitrary Based Buffers: | ||
278 | * Persistent memory for diagnostics. | ||
279 | * | ||
280 | */ | ||
281 | { | ||
282 | .name = "DiagPersistentMemory", | ||
283 | .start = 0x00000000, | ||
284 | .end = 0x10000 - 1, | ||
285 | .flags = IORESOURCE_MEM, | ||
286 | }, | ||
287 | /* | ||
288 | * | ||
289 | * Smartcard | ||
290 | * | ||
291 | * This driver requires: | ||
292 | * | ||
293 | * Arbitrary Based Buffers: | ||
294 | * Read and write buffers for Internal/External cards | ||
295 | * | ||
296 | */ | ||
297 | { | ||
298 | .name = "SmartCardInfo", | ||
299 | .start = 0x00000000, | ||
300 | .end = 0x2800 - 1, | ||
301 | .flags = IORESOURCE_MEM, | ||
302 | }, | ||
303 | /* | ||
304 | * Add other resources here | ||
305 | */ | ||
306 | { }, | ||
307 | }; | ||
308 | |||
309 | /* | ||
310 | * NON_DVR_CAPABLE ZEUS RESOURCES | ||
311 | */ | ||
312 | struct resource non_dvr_zeus_resources[] __initdata = | ||
313 | { | ||
314 | /* | ||
315 | * VIDEO1 / LX1 | ||
316 | */ | ||
317 | { | ||
318 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | ||
319 | .start = 0x20000000, | ||
320 | .end = 0x201FFFFF, /* 2MiB */ | ||
321 | .flags = IORESOURCE_IO, | ||
322 | }, | ||
323 | { | ||
324 | .name = "ST231aMonitor", /* 8KiB block ST231a monitor */ | ||
325 | .start = 0x20200000, | ||
326 | .end = 0x20201FFF, | ||
327 | .flags = IORESOURCE_IO, | ||
328 | }, | ||
329 | { | ||
330 | .name = "MediaMemory1", | ||
331 | .start = 0x20202000, | ||
332 | .end = 0x21FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
333 | .flags = IORESOURCE_IO, | ||
334 | }, | ||
335 | /* | ||
336 | * Sysaudio Driver | ||
337 | */ | ||
338 | { | ||
339 | .name = "DSP_Image_Buff", | ||
340 | .start = 0x00000000, | ||
341 | .end = 0x000FFFFF, | ||
342 | .flags = IORESOURCE_MEM, | ||
343 | }, | ||
344 | { | ||
345 | .name = "ADSC_CPU_PCM_Buff", | ||
346 | .start = 0x00000000, | ||
347 | .end = 0x00009FFF, | ||
348 | .flags = IORESOURCE_MEM, | ||
349 | }, | ||
350 | { | ||
351 | .name = "ADSC_AUX_Buff", | ||
352 | .start = 0x00000000, | ||
353 | .end = 0x00003FFF, | ||
354 | .flags = IORESOURCE_MEM, | ||
355 | }, | ||
356 | { | ||
357 | .name = "ADSC_Main_Buff", | ||
358 | .start = 0x00000000, | ||
359 | .end = 0x00003FFF, | ||
360 | .flags = IORESOURCE_MEM, | ||
361 | }, | ||
362 | /* | ||
363 | * STAVEM driver/STAPI | ||
364 | */ | ||
365 | { | ||
366 | .name = "AVMEMPartition0", | ||
367 | .start = 0x00000000, | ||
368 | .end = 0x00600000 - 1, /* 6 MB total */ | ||
369 | .flags = IORESOURCE_MEM, | ||
370 | }, | ||
371 | /* | ||
372 | * DOCSIS Subsystem | ||
373 | */ | ||
374 | { | ||
375 | .name = "Docsis", | ||
376 | .start = 0x40100000, | ||
377 | .end = 0x407fffff, | ||
378 | .flags = IORESOURCE_MEM, | ||
379 | }, | ||
380 | /* | ||
381 | * GHW HAL Driver | ||
382 | */ | ||
383 | { | ||
384 | .name = "GraphicsHeap", | ||
385 | .start = 0x46900000, | ||
386 | .end = 0x47700000 - 1, /* 14 MB total */ | ||
387 | .flags = IORESOURCE_MEM, | ||
388 | }, | ||
389 | /* | ||
390 | * multi com buffer area | ||
391 | */ | ||
392 | { | ||
393 | .name = "MulticomSHM", | ||
394 | .start = 0x47900000, | ||
395 | .end = 0x47920000 - 1, | ||
396 | .flags = IORESOURCE_MEM, | ||
397 | }, | ||
398 | /* | ||
399 | * DMA Ring buffer | ||
400 | */ | ||
401 | { | ||
402 | .name = "BMM_Buffer", | ||
403 | .start = 0x00000000, | ||
404 | .end = 0x00280000 - 1, | ||
405 | .flags = IORESOURCE_MEM, | ||
406 | }, | ||
407 | /* | ||
408 | * Display bins buffer for unit0 | ||
409 | */ | ||
410 | { | ||
411 | .name = "DisplayBins0", | ||
412 | .start = 0x00000000, | ||
413 | .end = 0x00000FFF, /* 4 KB total */ | ||
414 | .flags = IORESOURCE_MEM, | ||
415 | }, | ||
416 | /* | ||
417 | * | ||
418 | * AVFS: player HAL memory | ||
419 | * | ||
420 | * | ||
421 | */ | ||
422 | { | ||
423 | .name = "AvfsDmaMem", | ||
424 | .start = 0x00000000, | ||
425 | .end = 0x002c4c00 - 1, /* 945K * 3 for playback */ | ||
426 | .flags = IORESOURCE_MEM, | ||
427 | }, | ||
428 | /* | ||
429 | * PMEM | ||
430 | */ | ||
431 | { | ||
432 | .name = "DiagPersistentMemory", | ||
433 | .start = 0x00000000, | ||
434 | .end = 0x10000 - 1, | ||
435 | .flags = IORESOURCE_MEM, | ||
436 | }, | ||
437 | /* | ||
438 | * Smartcard | ||
439 | */ | ||
440 | { | ||
441 | .name = "SmartCardInfo", | ||
442 | .start = 0x00000000, | ||
443 | .end = 0x2800 - 1, | ||
444 | .flags = IORESOURCE_MEM, | ||
445 | }, | ||
446 | /* | ||
447 | * NAND Flash | ||
448 | */ | ||
449 | { | ||
450 | .name = "NandFlash", | ||
451 | .start = NAND_FLASH_BASE, | ||
452 | .end = NAND_FLASH_BASE + 0x400 - 1, | ||
453 | .flags = IORESOURCE_IO, | ||
454 | }, | ||
455 | /* | ||
456 | * Add other resources here | ||
457 | */ | ||
458 | { }, | ||
459 | }; | ||
diff --git a/arch/mips/powertv/init.c b/arch/mips/powertv/init.c new file mode 100644 index 000000000000..0afe227f1d0a --- /dev/null +++ b/arch/mips/powertv/init.c | |||
@@ -0,0 +1,129 @@ | |||
1 | /* | ||
2 | * Copyright (C) 1999, 2000, 2004, 2005 MIPS Technologies, Inc. | ||
3 | * All rights reserved. | ||
4 | * Authors: Carsten Langgaard <carstenl@mips.com> | ||
5 | * Maciej W. Rozycki <macro@mips.com> | ||
6 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
7 | * | ||
8 | * This program is free software; you can distribute it and/or modify it | ||
9 | * under the terms of the GNU General Public License (Version 2) as | ||
10 | * published by the Free Software Foundation. | ||
11 | * | ||
12 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
13 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
14 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
15 | * for more details. | ||
16 | * | ||
17 | * You should have received a copy of the GNU General Public License along | ||
18 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
19 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
20 | * | ||
21 | * PROM library initialisation code. | ||
22 | */ | ||
23 | #include <linux/init.h> | ||
24 | #include <linux/string.h> | ||
25 | #include <linux/kernel.h> | ||
26 | |||
27 | #include <asm/bootinfo.h> | ||
28 | #include <linux/io.h> | ||
29 | #include <asm/system.h> | ||
30 | #include <asm/cacheflush.h> | ||
31 | #include <asm/traps.h> | ||
32 | |||
33 | #include <asm/mips-boards/prom.h> | ||
34 | #include <asm/mips-boards/generic.h> | ||
35 | #include <asm/mach-powertv/asic.h> | ||
36 | |||
37 | static int *_prom_envp; | ||
38 | unsigned long _prom_memsize; | ||
39 | |||
40 | /* | ||
41 | * YAMON (32-bit PROM) pass arguments and environment as 32-bit pointer. | ||
42 | * This macro take care of sign extension, if running in 64-bit mode. | ||
43 | */ | ||
44 | #define prom_envp(index) ((char *)(long)_prom_envp[(index)]) | ||
45 | |||
46 | char *prom_getenv(char *envname) | ||
47 | { | ||
48 | char *result = NULL; | ||
49 | |||
50 | if (_prom_envp != NULL) { | ||
51 | /* | ||
52 | * Return a pointer to the given environment variable. | ||
53 | * In 64-bit mode: we're using 64-bit pointers, but all pointers | ||
54 | * in the PROM structures are only 32-bit, so we need some | ||
55 | * workarounds, if we are running in 64-bit mode. | ||
56 | */ | ||
57 | int i, index = 0; | ||
58 | |||
59 | i = strlen(envname); | ||
60 | |||
61 | while (prom_envp(index)) { | ||
62 | if (strncmp(envname, prom_envp(index), i) == 0) { | ||
63 | result = prom_envp(index + 1); | ||
64 | break; | ||
65 | } | ||
66 | index += 2; | ||
67 | } | ||
68 | } | ||
69 | |||
70 | return result; | ||
71 | } | ||
72 | |||
73 | /* TODO: Verify on linux-mips mailing list that the following two */ | ||
74 | /* functions are correct */ | ||
75 | /* TODO: Copy NMI and EJTAG exception vectors to memory from the */ | ||
76 | /* BootROM exception vectors. Flush their cache entries. test it. */ | ||
77 | |||
78 | static void __init mips_nmi_setup(void) | ||
79 | { | ||
80 | void *base; | ||
81 | #if defined(CONFIG_CPU_MIPS32_R1) | ||
82 | base = cpu_has_veic ? | ||
83 | (void *)(CAC_BASE + 0xa80) : | ||
84 | (void *)(CAC_BASE + 0x380); | ||
85 | #elif defined(CONFIG_CPU_MIPS32_R2) | ||
86 | base = (void *)0xbfc00000; | ||
87 | #else | ||
88 | #error NMI exception handler address not defined | ||
89 | #endif | ||
90 | } | ||
91 | |||
92 | static void __init mips_ejtag_setup(void) | ||
93 | { | ||
94 | void *base; | ||
95 | |||
96 | #if defined(CONFIG_CPU_MIPS32_R1) | ||
97 | base = cpu_has_veic ? | ||
98 | (void *)(CAC_BASE + 0xa00) : | ||
99 | (void *)(CAC_BASE + 0x300); | ||
100 | #elif defined(CONFIG_CPU_MIPS32_R2) | ||
101 | base = (void *)0xbfc00480; | ||
102 | #else | ||
103 | #error EJTAG exception handler address not defined | ||
104 | #endif | ||
105 | } | ||
106 | |||
107 | void __init prom_init(void) | ||
108 | { | ||
109 | int prom_argc; | ||
110 | char *prom_argv; | ||
111 | |||
112 | prom_argc = fw_arg0; | ||
113 | prom_argv = (char *) fw_arg1; | ||
114 | _prom_envp = (int *) fw_arg2; | ||
115 | _prom_memsize = (unsigned long) fw_arg3; | ||
116 | |||
117 | board_nmi_handler_setup = mips_nmi_setup; | ||
118 | board_ejtag_handler_setup = mips_ejtag_setup; | ||
119 | |||
120 | if (prom_argc == 1) | ||
121 | strlcat(arcs_cmdline, prom_argv, COMMAND_LINE_SIZE); | ||
122 | |||
123 | configure_platform(); | ||
124 | prom_meminit(); | ||
125 | |||
126 | #ifndef CONFIG_BOOTLOADER_DRIVER | ||
127 | pr_info("\nBootloader driver isn't loaded...\n"); | ||
128 | #endif | ||
129 | } | ||
diff --git a/arch/mips/powertv/init.h b/arch/mips/powertv/init.h new file mode 100644 index 000000000000..b194c34ca966 --- /dev/null +++ b/arch/mips/powertv/init.h | |||
@@ -0,0 +1,26 @@ | |||
1 | /* | ||
2 | * Definitions from powertv init.c file | ||
3 | * | ||
4 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: David VomLehn | ||
21 | */ | ||
22 | |||
23 | #ifndef _POWERTV_INIT_H | ||
24 | #define _POWERTV_INIT_H | ||
25 | extern unsigned long _prom_memsize; | ||
26 | #endif | ||
diff --git a/arch/mips/powertv/memory.c b/arch/mips/powertv/memory.c new file mode 100644 index 000000000000..f49eb3d0358b --- /dev/null +++ b/arch/mips/powertv/memory.c | |||
@@ -0,0 +1,181 @@ | |||
1 | /* | ||
2 | * Carsten Langgaard, carstenl@mips.com | ||
3 | * Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved. | ||
4 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
5 | * | ||
6 | * This program is free software; you can distribute it and/or modify it | ||
7 | * under the terms of the GNU General Public License (Version 2) as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
11 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
12 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
13 | * for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License along | ||
16 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
17 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
18 | * | ||
19 | * Apparently originally from arch/mips/malta-memory.c. Modified to work | ||
20 | * with the PowerTV bootloader. | ||
21 | */ | ||
22 | #include <linux/init.h> | ||
23 | #include <linux/mm.h> | ||
24 | #include <linux/bootmem.h> | ||
25 | #include <linux/pfn.h> | ||
26 | #include <linux/string.h> | ||
27 | |||
28 | #include <asm/bootinfo.h> | ||
29 | #include <asm/page.h> | ||
30 | #include <asm/sections.h> | ||
31 | |||
32 | #include <asm/mips-boards/prom.h> | ||
33 | |||
34 | #include "init.h" | ||
35 | |||
36 | /* Memory constants */ | ||
37 | #define KIBIBYTE(n) ((n) * 1024) /* Number of kibibytes */ | ||
38 | #define MEBIBYTE(n) ((n) * KIBIBYTE(1024)) /* Number of mebibytes */ | ||
39 | #define DEFAULT_MEMSIZE MEBIBYTE(256) /* If no memsize provided */ | ||
40 | #define LOW_MEM_MAX MEBIBYTE(252) /* Max usable low mem */ | ||
41 | #define RES_BOOTLDR_MEMSIZE MEBIBYTE(1) /* Memory reserved for bldr */ | ||
42 | #define BOOT_MEM_SIZE KIBIBYTE(256) /* Memory reserved for bldr */ | ||
43 | #define PHYS_MEM_START 0x10000000 /* Start of physical memory */ | ||
44 | |||
45 | char __initdata cmdline[COMMAND_LINE_SIZE]; | ||
46 | |||
47 | void __init prom_meminit(void) | ||
48 | { | ||
49 | char *memsize_str; | ||
50 | unsigned long memsize = 0; | ||
51 | unsigned int physend; | ||
52 | char *ptr; | ||
53 | int low_mem; | ||
54 | int high_mem; | ||
55 | |||
56 | /* Check the command line first for a memsize directive */ | ||
57 | strcpy(cmdline, arcs_cmdline); | ||
58 | ptr = strstr(cmdline, "memsize="); | ||
59 | if (ptr && (ptr != cmdline) && (*(ptr - 1) != ' ')) | ||
60 | ptr = strstr(ptr, " memsize="); | ||
61 | |||
62 | if (ptr) { | ||
63 | memsize = memparse(ptr + 8, &ptr); | ||
64 | } else { | ||
65 | /* otherwise look in the environment */ | ||
66 | memsize_str = prom_getenv("memsize"); | ||
67 | |||
68 | if (memsize_str != NULL) { | ||
69 | pr_info("prom memsize = %s\n", memsize_str); | ||
70 | memsize = simple_strtol(memsize_str, NULL, 0); | ||
71 | } | ||
72 | |||
73 | if (memsize == 0) { | ||
74 | if (_prom_memsize != 0) { | ||
75 | memsize = _prom_memsize; | ||
76 | pr_info("_prom_memsize = 0x%lx\n", memsize); | ||
77 | /* add in memory that the bootloader doesn't | ||
78 | * report */ | ||
79 | memsize += BOOT_MEM_SIZE; | ||
80 | } else { | ||
81 | memsize = DEFAULT_MEMSIZE; | ||
82 | pr_info("Memsize not passed by bootloader, " | ||
83 | "defaulting to 0x%lx\n", memsize); | ||
84 | } | ||
85 | } | ||
86 | } | ||
87 | |||
88 | physend = PFN_ALIGN(&_end) - 0x80000000; | ||
89 | if (memsize > LOW_MEM_MAX) { | ||
90 | low_mem = LOW_MEM_MAX; | ||
91 | high_mem = memsize - low_mem; | ||
92 | } else { | ||
93 | low_mem = memsize; | ||
94 | high_mem = 0; | ||
95 | } | ||
96 | |||
97 | /* | ||
98 | * TODO: We will use the hard code for memory configuration until | ||
99 | * the bootloader releases their device tree to us. | ||
100 | */ | ||
101 | /* | ||
102 | * Add the memory reserved for use by the bootloader to the | ||
103 | * memory map. | ||
104 | */ | ||
105 | add_memory_region(PHYS_MEM_START, RES_BOOTLDR_MEMSIZE, | ||
106 | BOOT_MEM_RESERVED); | ||
107 | #ifdef CONFIG_HIGHMEM_256_128 | ||
108 | /* | ||
109 | * Add memory in low for general use by the kernel and its friends | ||
110 | * (like drivers, applications, etc). | ||
111 | */ | ||
112 | add_memory_region(PHYS_MEM_START + RES_BOOTLDR_MEMSIZE, | ||
113 | LOW_MEM_MAX - RES_BOOTLDR_MEMSIZE, BOOT_MEM_RAM); | ||
114 | /* | ||
115 | * Add the memory reserved for reset vector. | ||
116 | */ | ||
117 | add_memory_region(0x1fc00000, MEBIBYTE(4), BOOT_MEM_RESERVED); | ||
118 | /* | ||
119 | * Add the memory reserved. | ||
120 | */ | ||
121 | add_memory_region(0x20000000, MEBIBYTE(1024 + 75), BOOT_MEM_RESERVED); | ||
122 | /* | ||
123 | * Add memory in high for general use by the kernel and its friends | ||
124 | * (like drivers, applications, etc). | ||
125 | * | ||
126 | * 75MB is reserved for devices which are using the memory in high. | ||
127 | */ | ||
128 | add_memory_region(0x60000000 + MEBIBYTE(75), MEBIBYTE(128 - 75), | ||
129 | BOOT_MEM_RAM); | ||
130 | #elif defined CONFIG_HIGHMEM_128_128 | ||
131 | /* | ||
132 | * Add memory in low for general use by the kernel and its friends | ||
133 | * (like drivers, applications, etc). | ||
134 | */ | ||
135 | add_memory_region(PHYS_MEM_START + RES_BOOTLDR_MEMSIZE, | ||
136 | MEBIBYTE(128) - RES_BOOTLDR_MEMSIZE, BOOT_MEM_RAM); | ||
137 | /* | ||
138 | * Add the memory reserved. | ||
139 | */ | ||
140 | add_memory_region(PHYS_MEM_START + MEBIBYTE(128), | ||
141 | MEBIBYTE(128 + 1024 + 75), BOOT_MEM_RESERVED); | ||
142 | /* | ||
143 | * Add memory in high for general use by the kernel and its friends | ||
144 | * (like drivers, applications, etc). | ||
145 | * | ||
146 | * 75MB is reserved for devices which are using the memory in high. | ||
147 | */ | ||
148 | add_memory_region(0x60000000 + MEBIBYTE(75), MEBIBYTE(128 - 75), | ||
149 | BOOT_MEM_RAM); | ||
150 | #else | ||
151 | /* Add low memory regions for either: | ||
152 | * - no-highmemory configuration case -OR- | ||
153 | * - highmemory "HIGHMEM_LOWBANK_ONLY" case | ||
154 | */ | ||
155 | /* | ||
156 | * Add memory for general use by the kernel and its friends | ||
157 | * (like drivers, applications, etc). | ||
158 | */ | ||
159 | add_memory_region(PHYS_MEM_START + RES_BOOTLDR_MEMSIZE, | ||
160 | low_mem - RES_BOOTLDR_MEMSIZE, BOOT_MEM_RAM); | ||
161 | /* | ||
162 | * Add the memory reserved for reset vector. | ||
163 | */ | ||
164 | add_memory_region(0x1fc00000, MEBIBYTE(4), BOOT_MEM_RESERVED); | ||
165 | #endif | ||
166 | } | ||
167 | |||
168 | void __init prom_free_prom_memory(void) | ||
169 | { | ||
170 | unsigned long addr; | ||
171 | int i; | ||
172 | |||
173 | for (i = 0; i < boot_mem_map.nr_map; i++) { | ||
174 | if (boot_mem_map.map[i].type != BOOT_MEM_ROM_DATA) | ||
175 | continue; | ||
176 | |||
177 | addr = boot_mem_map.map[i].addr; | ||
178 | free_init_pages("prom memory", | ||
179 | addr, addr + boot_mem_map.map[i].size); | ||
180 | } | ||
181 | } | ||
diff --git a/arch/mips/powertv/pci/Makefile b/arch/mips/powertv/pci/Makefile new file mode 100644 index 000000000000..f5c62462fc9d --- /dev/null +++ b/arch/mips/powertv/pci/Makefile | |||
@@ -0,0 +1,21 @@ | |||
1 | # | ||
2 | # Copyright (C) 2009 Scientific-Atlanta, Inc. | ||
3 | # | ||
4 | # This program is free software; you can redistribute it and/or modify | ||
5 | # it under the terms of the GNU General Public License as published by | ||
6 | # the Free Software Foundation; either version 2 of the License, or | ||
7 | # (at your option) any later version. | ||
8 | # | ||
9 | # This program is distributed in the hope that it will be useful, | ||
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | # GNU General Public License for more details. | ||
13 | # | ||
14 | # You should have received a copy of the GNU General Public License | ||
15 | # along with this program; if not, write to the Free Software | ||
16 | # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | # | ||
18 | |||
19 | obj-$(CONFIG_PCI) += fixup-powertv.o | ||
20 | |||
21 | EXTRA_CFLAGS += -Wall -Werror | ||
diff --git a/arch/mips/powertv/pci/fixup-powertv.c b/arch/mips/powertv/pci/fixup-powertv.c new file mode 100644 index 000000000000..726bc2e824b3 --- /dev/null +++ b/arch/mips/powertv/pci/fixup-powertv.c | |||
@@ -0,0 +1,36 @@ | |||
1 | #include <linux/init.h> | ||
2 | #include <linux/pci.h> | ||
3 | #include <asm/mach-powertv/interrupts.h> | ||
4 | #include "powertv-pci.h" | ||
5 | |||
6 | int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) | ||
7 | { | ||
8 | return asic_pcie_map_irq(dev, slot, pin); | ||
9 | } | ||
10 | |||
11 | /* Do platform specific device initialization at pci_enable_device() time */ | ||
12 | int pcibios_plat_dev_init(struct pci_dev *dev) | ||
13 | { | ||
14 | return 0; | ||
15 | } | ||
16 | |||
17 | /* | ||
18 | * asic_pcie_map_irq | ||
19 | * | ||
20 | * Parameters: | ||
21 | * *dev - pointer to a pci_dev structure (not used) | ||
22 | * slot - slot number (not used) | ||
23 | * pin - pin number (not used) | ||
24 | * | ||
25 | * Return Value: | ||
26 | * Returns: IRQ number (always the PCI Express IRQ number) | ||
27 | * | ||
28 | * Description: | ||
29 | * asic_pcie_map_irq will return the IRQ number of the PCI Express interrupt. | ||
30 | * | ||
31 | */ | ||
32 | int asic_pcie_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) | ||
33 | { | ||
34 | return irq_pciexp; | ||
35 | } | ||
36 | EXPORT_SYMBOL(asic_pcie_map_irq); | ||
diff --git a/arch/mips/powertv/pci/powertv-pci.h b/arch/mips/powertv/pci/powertv-pci.h new file mode 100644 index 000000000000..1b5886bbd759 --- /dev/null +++ b/arch/mips/powertv/pci/powertv-pci.h | |||
@@ -0,0 +1,31 @@ | |||
1 | /* | ||
2 | * powertv-pci.c | ||
3 | * | ||
4 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | /* | ||
21 | * Local definitions for the powertv PCI code | ||
22 | */ | ||
23 | |||
24 | #ifndef _POWERTV_PCI_POWERTV_PCI_H_ | ||
25 | #define _POWERTV_PCI_POWERTV_PCI_H_ | ||
26 | extern int asic_pcie_map_irq(const struct pci_dev *dev, u8 slot, u8 pin); | ||
27 | extern int asic_pcie_init(void); | ||
28 | extern int asic_pcie_init(void); | ||
29 | |||
30 | extern int log_level; | ||
31 | #endif | ||
diff --git a/arch/mips/powertv/powertv-clock.h b/arch/mips/powertv/powertv-clock.h new file mode 100644 index 000000000000..d94c54311485 --- /dev/null +++ b/arch/mips/powertv/powertv-clock.h | |||
@@ -0,0 +1,26 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
17 | * | ||
18 | * Author: David VomLehn | ||
19 | */ | ||
20 | |||
21 | #ifndef _POWERTV_POWERTV_CLOCK_H | ||
22 | #define _POWERTV_POWERTV_CLOCK_H | ||
23 | extern int powertv_clockevent_init(void); | ||
24 | extern void powertv_clocksource_init(void); | ||
25 | extern unsigned int mips_get_pll_freq(void); | ||
26 | #endif | ||
diff --git a/arch/mips/powertv/powertv_setup.c b/arch/mips/powertv/powertv_setup.c new file mode 100644 index 000000000000..af2cae0a5ab3 --- /dev/null +++ b/arch/mips/powertv/powertv_setup.c | |||
@@ -0,0 +1,326 @@ | |||
1 | /* | ||
2 | * Carsten Langgaard, carstenl@mips.com | ||
3 | * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved. | ||
4 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
5 | * | ||
6 | * This program is free software; you can distribute it and/or modify it | ||
7 | * under the terms of the GNU General Public License (Version 2) as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
11 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
12 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
13 | * for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License along | ||
16 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
17 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
18 | */ | ||
19 | #include <linux/init.h> | ||
20 | #include <linux/sched.h> | ||
21 | #include <linux/ioport.h> | ||
22 | #include <linux/pci.h> | ||
23 | #include <linux/screen_info.h> | ||
24 | #include <linux/notifier.h> | ||
25 | #include <linux/etherdevice.h> | ||
26 | #include <linux/if_ether.h> | ||
27 | #include <linux/ctype.h> | ||
28 | #include <linux/cpu.h> | ||
29 | #include <linux/time.h> | ||
30 | |||
31 | #include <asm/bootinfo.h> | ||
32 | #include <asm/irq.h> | ||
33 | #include <asm/mips-boards/generic.h> | ||
34 | #include <asm/mips-boards/prom.h> | ||
35 | #include <asm/dma.h> | ||
36 | #include <asm/asm.h> | ||
37 | #include <asm/traps.h> | ||
38 | #include <asm/asm-offsets.h> | ||
39 | #include "reset.h" | ||
40 | |||
41 | #define VAL(n) STR(n) | ||
42 | |||
43 | /* | ||
44 | * Macros for loading addresses and storing registers: | ||
45 | * LONG_L_ Stringified version of LONG_L for use in asm() statement | ||
46 | * LONG_S_ Stringified version of LONG_S for use in asm() statement | ||
47 | * PTR_LA_ Stringified version of PTR_LA for use in asm() statement | ||
48 | * REG_SIZE Number of 8-bit bytes in a full width register | ||
49 | */ | ||
50 | #define LONG_L_ VAL(LONG_L) " " | ||
51 | #define LONG_S_ VAL(LONG_S) " " | ||
52 | #define PTR_LA_ VAL(PTR_LA) " " | ||
53 | |||
54 | #ifdef CONFIG_64BIT | ||
55 | #warning TODO: 64-bit code needs to be verified | ||
56 | #define REG_SIZE "8" /* In bytes */ | ||
57 | #endif | ||
58 | |||
59 | #ifdef CONFIG_32BIT | ||
60 | #define REG_SIZE "4" /* In bytes */ | ||
61 | #endif | ||
62 | |||
63 | static void register_panic_notifier(void); | ||
64 | static int panic_handler(struct notifier_block *notifier_block, | ||
65 | unsigned long event, void *cause_string); | ||
66 | |||
67 | const char *get_system_type(void) | ||
68 | { | ||
69 | return "PowerTV"; | ||
70 | } | ||
71 | |||
72 | void __init plat_mem_setup(void) | ||
73 | { | ||
74 | panic_on_oops = 1; | ||
75 | register_panic_notifier(); | ||
76 | |||
77 | #if 0 | ||
78 | mips_pcibios_init(); | ||
79 | #endif | ||
80 | mips_reboot_setup(); | ||
81 | } | ||
82 | |||
83 | /* | ||
84 | * Install a panic notifier for platform-specific diagnostics | ||
85 | */ | ||
86 | static void register_panic_notifier() | ||
87 | { | ||
88 | static struct notifier_block panic_notifier = { | ||
89 | .notifier_call = panic_handler, | ||
90 | .next = NULL, | ||
91 | .priority = INT_MAX | ||
92 | }; | ||
93 | atomic_notifier_chain_register(&panic_notifier_list, &panic_notifier); | ||
94 | } | ||
95 | |||
96 | static int panic_handler(struct notifier_block *notifier_block, | ||
97 | unsigned long event, void *cause_string) | ||
98 | { | ||
99 | struct pt_regs my_regs; | ||
100 | |||
101 | /* Save all of the registers */ | ||
102 | { | ||
103 | unsigned long at, v0, v1; /* Must be on the stack */ | ||
104 | |||
105 | /* Start by saving $at and v0 on the stack. We use $at | ||
106 | * ourselves, but it looks like the compiler may use v0 or v1 | ||
107 | * to load the address of the pt_regs structure. We'll come | ||
108 | * back later to store the registers in the pt_regs | ||
109 | * structure. */ | ||
110 | __asm__ __volatile__ ( | ||
111 | ".set noat\n" | ||
112 | LONG_S_ "$at, %[at]\n" | ||
113 | LONG_S_ "$2, %[v0]\n" | ||
114 | LONG_S_ "$3, %[v1]\n" | ||
115 | : | ||
116 | [at] "=m" (at), | ||
117 | [v0] "=m" (v0), | ||
118 | [v1] "=m" (v1) | ||
119 | : | ||
120 | : "at" | ||
121 | ); | ||
122 | |||
123 | __asm__ __volatile__ ( | ||
124 | ".set noat\n" | ||
125 | "move $at, %[pt_regs]\n" | ||
126 | |||
127 | /* Argument registers */ | ||
128 | LONG_S_ "$4, " VAL(PT_R4) "($at)\n" | ||
129 | LONG_S_ "$5, " VAL(PT_R5) "($at)\n" | ||
130 | LONG_S_ "$6, " VAL(PT_R6) "($at)\n" | ||
131 | LONG_S_ "$7, " VAL(PT_R7) "($at)\n" | ||
132 | |||
133 | /* Temporary regs */ | ||
134 | LONG_S_ "$8, " VAL(PT_R8) "($at)\n" | ||
135 | LONG_S_ "$9, " VAL(PT_R9) "($at)\n" | ||
136 | LONG_S_ "$10, " VAL(PT_R10) "($at)\n" | ||
137 | LONG_S_ "$11, " VAL(PT_R11) "($at)\n" | ||
138 | LONG_S_ "$12, " VAL(PT_R12) "($at)\n" | ||
139 | LONG_S_ "$13, " VAL(PT_R13) "($at)\n" | ||
140 | LONG_S_ "$14, " VAL(PT_R14) "($at)\n" | ||
141 | LONG_S_ "$15, " VAL(PT_R15) "($at)\n" | ||
142 | |||
143 | /* "Saved" registers */ | ||
144 | LONG_S_ "$16, " VAL(PT_R16) "($at)\n" | ||
145 | LONG_S_ "$17, " VAL(PT_R17) "($at)\n" | ||
146 | LONG_S_ "$18, " VAL(PT_R18) "($at)\n" | ||
147 | LONG_S_ "$19, " VAL(PT_R19) "($at)\n" | ||
148 | LONG_S_ "$20, " VAL(PT_R20) "($at)\n" | ||
149 | LONG_S_ "$21, " VAL(PT_R21) "($at)\n" | ||
150 | LONG_S_ "$22, " VAL(PT_R22) "($at)\n" | ||
151 | LONG_S_ "$23, " VAL(PT_R23) "($at)\n" | ||
152 | |||
153 | /* Add'l temp regs */ | ||
154 | LONG_S_ "$24, " VAL(PT_R24) "($at)\n" | ||
155 | LONG_S_ "$25, " VAL(PT_R25) "($at)\n" | ||
156 | |||
157 | /* Kernel temp regs */ | ||
158 | LONG_S_ "$26, " VAL(PT_R26) "($at)\n" | ||
159 | LONG_S_ "$27, " VAL(PT_R27) "($at)\n" | ||
160 | |||
161 | /* Global pointer, stack pointer, frame pointer and | ||
162 | * return address */ | ||
163 | LONG_S_ "$gp, " VAL(PT_R28) "($at)\n" | ||
164 | LONG_S_ "$sp, " VAL(PT_R29) "($at)\n" | ||
165 | LONG_S_ "$fp, " VAL(PT_R30) "($at)\n" | ||
166 | LONG_S_ "$ra, " VAL(PT_R31) "($at)\n" | ||
167 | |||
168 | /* Now we can get the $at and v0 registers back and | ||
169 | * store them */ | ||
170 | LONG_L_ "$8, %[at]\n" | ||
171 | LONG_S_ "$8, " VAL(PT_R1) "($at)\n" | ||
172 | LONG_L_ "$8, %[v0]\n" | ||
173 | LONG_S_ "$8, " VAL(PT_R2) "($at)\n" | ||
174 | LONG_L_ "$8, %[v1]\n" | ||
175 | LONG_S_ "$8, " VAL(PT_R3) "($at)\n" | ||
176 | : | ||
177 | : | ||
178 | [at] "m" (at), | ||
179 | [v0] "m" (v0), | ||
180 | [v1] "m" (v1), | ||
181 | [pt_regs] "r" (&my_regs) | ||
182 | : "at", "t0" | ||
183 | ); | ||
184 | |||
185 | /* Set the current EPC value to be the current location in this | ||
186 | * function */ | ||
187 | __asm__ __volatile__ ( | ||
188 | ".set noat\n" | ||
189 | "1:\n" | ||
190 | PTR_LA_ "$at, 1b\n" | ||
191 | LONG_S_ "$at, %[cp0_epc]\n" | ||
192 | : | ||
193 | [cp0_epc] "=m" (my_regs.cp0_epc) | ||
194 | : | ||
195 | : "at" | ||
196 | ); | ||
197 | |||
198 | my_regs.cp0_cause = read_c0_cause(); | ||
199 | my_regs.cp0_status = read_c0_status(); | ||
200 | } | ||
201 | |||
202 | #ifdef CONFIG_DIAGNOSTICS | ||
203 | failure_report((char *) cause_string, | ||
204 | have_die_regs ? &die_regs : &my_regs); | ||
205 | have_die_regs = false; | ||
206 | #else | ||
207 | pr_crit("I'm feeling a bit sleepy. hmmmmm... perhaps a nap would... " | ||
208 | "zzzz... \n"); | ||
209 | #endif | ||
210 | |||
211 | return NOTIFY_DONE; | ||
212 | } | ||
213 | |||
214 | /* Information about the RF MAC address, if one was supplied on the | ||
215 | * command line. */ | ||
216 | static bool have_rfmac; | ||
217 | static u8 rfmac[ETH_ALEN]; | ||
218 | |||
219 | static int rfmac_param(char *p) | ||
220 | { | ||
221 | u8 *q; | ||
222 | bool is_high_nibble; | ||
223 | int c; | ||
224 | |||
225 | /* Skip a leading "0x", if present */ | ||
226 | if (*p == '0' && *(p+1) == 'x') | ||
227 | p += 2; | ||
228 | |||
229 | q = rfmac; | ||
230 | is_high_nibble = true; | ||
231 | |||
232 | for (c = (unsigned char) *p++; | ||
233 | isxdigit(c) && q - rfmac < ETH_ALEN; | ||
234 | c = (unsigned char) *p++) { | ||
235 | int nibble; | ||
236 | |||
237 | nibble = (isdigit(c) ? (c - '0') : | ||
238 | (isupper(c) ? c - 'A' + 10 : c - 'a' + 10)); | ||
239 | |||
240 | if (is_high_nibble) | ||
241 | *q = nibble << 4; | ||
242 | else | ||
243 | *q++ |= nibble; | ||
244 | |||
245 | is_high_nibble = !is_high_nibble; | ||
246 | } | ||
247 | |||
248 | /* If we parsed all the way to the end of the parameter value and | ||
249 | * parsed all ETH_ALEN bytes, we have a usable RF MAC address */ | ||
250 | have_rfmac = (c == '\0' && q - rfmac == ETH_ALEN); | ||
251 | |||
252 | return 0; | ||
253 | } | ||
254 | |||
255 | early_param("rfmac", rfmac_param); | ||
256 | |||
257 | /* | ||
258 | * Generate an Ethernet MAC address that has a good chance of being unique. | ||
259 | * @addr: Pointer to six-byte array containing the Ethernet address | ||
260 | * Generates an Ethernet MAC address that is highly likely to be unique for | ||
261 | * this particular system on a network with other systems of the same type. | ||
262 | * | ||
263 | * The problem we are solving is that, when random_ether_addr() is used to | ||
264 | * generate MAC addresses at startup, there isn't much entropy for the random | ||
265 | * number generator to use and the addresses it produces are fairly likely to | ||
266 | * be the same as those of other identical systems on the same local network. | ||
267 | * This is true even for relatively small numbers of systems (for the reason | ||
268 | * why, see the Wikipedia entry for "Birthday problem" at: | ||
269 | * http://en.wikipedia.org/wiki/Birthday_problem | ||
270 | * | ||
271 | * The good news is that we already have a MAC address known to be unique, the | ||
272 | * RF MAC address. The bad news is that this address is already in use on the | ||
273 | * RF interface. Worse, the obvious trick, taking the RF MAC address and | ||
274 | * turning on the locally managed bit, has already been used for other devices. | ||
275 | * Still, this does give us something to work with. | ||
276 | * | ||
277 | * The approach we take is: | ||
278 | * 1. If we can't get the RF MAC Address, just call random_ether_addr. | ||
279 | * 2. Use the 24-bit NIC-specific bits of the RF MAC address as the last 24 | ||
280 | * bits of the new address. This is very likely to be unique, except for | ||
281 | * the current box. | ||
282 | * 3. To avoid using addresses already on the current box, we set the top | ||
283 | * six bits of the address with a value different from any currently | ||
284 | * registered Scientific Atlanta organizationally unique identifyer | ||
285 | * (OUI). This avoids duplication with any addresses on the system that | ||
286 | * were generated from valid Scientific Atlanta-registered address by | ||
287 | * simply flipping the locally managed bit. | ||
288 | * 4. We aren't generating a multicast address, so we leave the multicast | ||
289 | * bit off. Since we aren't using a registered address, we have to set | ||
290 | * the locally managed bit. | ||
291 | * 5. We then randomly generate the remaining 16-bits. This does two | ||
292 | * things: | ||
293 | * a. It allows us to call this function for more than one device | ||
294 | * in this system | ||
295 | * b. It ensures that things will probably still work even if | ||
296 | * some device on the device network has a locally managed | ||
297 | * address that matches the top six bits from step 2. | ||
298 | */ | ||
299 | void platform_random_ether_addr(u8 addr[ETH_ALEN]) | ||
300 | { | ||
301 | const int num_random_bytes = 2; | ||
302 | const unsigned char non_sciatl_oui_bits = 0xc0u; | ||
303 | const unsigned char mac_addr_locally_managed = (1 << 1); | ||
304 | |||
305 | if (!have_rfmac) { | ||
306 | pr_warning("rfmac not available on command line; " | ||
307 | "generating random MAC address\n"); | ||
308 | random_ether_addr(addr); | ||
309 | } | ||
310 | |||
311 | else { | ||
312 | int i; | ||
313 | |||
314 | /* Set the first byte to something that won't match a Scientific | ||
315 | * Atlanta OUI, is locally managed, and isn't a multicast | ||
316 | * address */ | ||
317 | addr[0] = non_sciatl_oui_bits | mac_addr_locally_managed; | ||
318 | |||
319 | /* Get some bytes of random address information */ | ||
320 | get_random_bytes(&addr[1], num_random_bytes); | ||
321 | |||
322 | /* Copy over the NIC-specific bits of the RF MAC address */ | ||
323 | for (i = 1 + num_random_bytes; i < ETH_ALEN; i++) | ||
324 | addr[i] = rfmac[i]; | ||
325 | } | ||
326 | } | ||
diff --git a/arch/mips/powertv/reset.c b/arch/mips/powertv/reset.c new file mode 100644 index 000000000000..0007652cb774 --- /dev/null +++ b/arch/mips/powertv/reset.c | |||
@@ -0,0 +1,47 @@ | |||
1 | /* | ||
2 | * Carsten Langgaard, carstenl@mips.com | ||
3 | * Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved. | ||
4 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
5 | * | ||
6 | * This program is free software; you can distribute it and/or modify it | ||
7 | * under the terms of the GNU General Public License (Version 2) as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
11 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
12 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
13 | * for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License along | ||
16 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
17 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | ||
18 | */ | ||
19 | #include <linux/pm.h> | ||
20 | |||
21 | #include <linux/io.h> | ||
22 | #include <asm/reboot.h> /* Not included by linux/reboot.h */ | ||
23 | |||
24 | #ifdef CONFIG_BOOTLOADER_DRIVER | ||
25 | #include <asm/mach-powertv/kbldr.h> | ||
26 | #endif | ||
27 | |||
28 | #include <asm/mach-powertv/asic_regs.h> | ||
29 | #include "reset.h" | ||
30 | |||
31 | static void mips_machine_restart(char *command) | ||
32 | { | ||
33 | #ifdef CONFIG_BOOTLOADER_DRIVER | ||
34 | /* | ||
35 | * Call the bootloader's reset function to ensure | ||
36 | * that persistent data is flushed before hard reset | ||
37 | */ | ||
38 | kbldr_SetCauseAndReset(); | ||
39 | #else | ||
40 | writel(0x1, asic_reg_addr(watchdog)); | ||
41 | #endif | ||
42 | } | ||
43 | |||
44 | void mips_reboot_setup(void) | ||
45 | { | ||
46 | _machine_restart = mips_machine_restart; | ||
47 | } | ||
diff --git a/arch/mips/powertv/reset.h b/arch/mips/powertv/reset.h new file mode 100644 index 000000000000..888fd09e2620 --- /dev/null +++ b/arch/mips/powertv/reset.h | |||
@@ -0,0 +1,26 @@ | |||
1 | /* | ||
2 | * Definitions from powertv reset.c file | ||
3 | * | ||
4 | * Copyright (C) 2009 Cisco Systems, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | * | ||
20 | * Author: David VomLehn | ||
21 | */ | ||
22 | |||
23 | #ifndef _POWERTV_POWERTV_RESET_H | ||
24 | #define _POWERTV_POWERTV_RESET_H | ||
25 | extern void mips_reboot_setup(void); | ||
26 | #endif | ||
diff --git a/arch/mips/mipssim/sim_cmdline.c b/arch/mips/powertv/time.c index 74240e1ce5a5..9fd7b67f2af7 100644 --- a/arch/mips/mipssim/sim_cmdline.c +++ b/arch/mips/powertv/time.c | |||
@@ -1,5 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2005 MIPS Technologies, Inc. All rights reserved. | 2 | * Carsten Langgaard, carstenl@mips.com |
3 | * Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved. | ||
4 | * Portions copyright (C) 2009 Cisco Systems, Inc. | ||
3 | * | 5 | * |
4 | * This program is free software; you can distribute it and/or modify it | 6 | * This program is free software; you can distribute it and/or modify it |
5 | * under the terms of the GNU General Public License (Version 2) as | 7 | * under the terms of the GNU General Public License (Version 2) as |
@@ -14,19 +16,21 @@ | |||
14 | * with this program; if not, write to the Free Software Foundation, Inc., | 16 | * with this program; if not, write to the Free Software Foundation, Inc., |
15 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. | 17 | * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. |
16 | * | 18 | * |
19 | * Setting up the clock on the MIPS boards. | ||
17 | */ | 20 | */ |
21 | |||
18 | #include <linux/init.h> | 22 | #include <linux/init.h> |
19 | #include <linux/string.h> | 23 | #include <asm/mach-powertv/interrupts.h> |
20 | #include <asm/bootinfo.h> | 24 | #include <asm/time.h> |
21 | 25 | ||
22 | extern char arcs_cmdline[]; | 26 | #include "powertv-clock.h" |
23 | 27 | ||
24 | char * __init prom_getcmdline(void) | 28 | unsigned int __cpuinit get_c0_compare_int(void) |
25 | { | 29 | { |
26 | return arcs_cmdline; | 30 | return irq_mips_timer; |
27 | } | 31 | } |
28 | 32 | ||
29 | void __init prom_init_cmdline(void) | 33 | void __init plat_time_init(void) |
30 | { | 34 | { |
31 | /* XXX: Get boot line from environment? */ | 35 | powertv_clocksource_init(); |
32 | } | 36 | } |
diff --git a/arch/mips/rb532/irq.c b/arch/mips/rb532/irq.c index f07882029a90..ea6cec3c1e0d 100644 --- a/arch/mips/rb532/irq.c +++ b/arch/mips/rb532/irq.c | |||
@@ -36,7 +36,6 @@ | |||
36 | #include <linux/interrupt.h> | 36 | #include <linux/interrupt.h> |
37 | #include <linux/ioport.h> | 37 | #include <linux/ioport.h> |
38 | #include <linux/timex.h> | 38 | #include <linux/timex.h> |
39 | #include <linux/slab.h> | ||
40 | #include <linux/random.h> | 39 | #include <linux/random.h> |
41 | #include <linux/delay.h> | 40 | #include <linux/delay.h> |
42 | 41 | ||
diff --git a/arch/mips/rb532/prom.c b/arch/mips/rb532/prom.c index ad5bd1097974..d7c26d00cfef 100644 --- a/arch/mips/rb532/prom.c +++ b/arch/mips/rb532/prom.c | |||
@@ -69,7 +69,7 @@ static inline unsigned long tag2ul(char *arg, const char *tag) | |||
69 | 69 | ||
70 | void __init prom_setup_cmdline(void) | 70 | void __init prom_setup_cmdline(void) |
71 | { | 71 | { |
72 | static char cmd_line[CL_SIZE] __initdata; | 72 | static char cmd_line[COMMAND_LINE_SIZE] __initdata; |
73 | char *cp, *board; | 73 | char *cp, *board; |
74 | int prom_argc; | 74 | int prom_argc; |
75 | char **prom_argv, **prom_envp; | 75 | char **prom_argv, **prom_envp; |
@@ -115,7 +115,7 @@ void __init prom_setup_cmdline(void) | |||
115 | strcpy(cp, arcs_cmdline); | 115 | strcpy(cp, arcs_cmdline); |
116 | cp += strlen(arcs_cmdline); | 116 | cp += strlen(arcs_cmdline); |
117 | } | 117 | } |
118 | cmd_line[CL_SIZE-1] = '\0'; | 118 | cmd_line[COMMAND_LINE_SIZE - 1] = '\0'; |
119 | 119 | ||
120 | strcpy(arcs_cmdline, cmd_line); | 120 | strcpy(arcs_cmdline, cmd_line); |
121 | } | 121 | } |
diff --git a/arch/mips/sgi-ip22/ip22-berr.c b/arch/mips/sgi-ip22/ip22-berr.c index de6a0cc32fea..911d3999c0c7 100644 --- a/arch/mips/sgi-ip22/ip22-berr.c +++ b/arch/mips/sgi-ip22/ip22-berr.c | |||
@@ -89,7 +89,7 @@ static void print_buserr(void) | |||
89 | void ip22_be_interrupt(int irq) | 89 | void ip22_be_interrupt(int irq) |
90 | { | 90 | { |
91 | const int field = 2 * sizeof(unsigned long); | 91 | const int field = 2 * sizeof(unsigned long); |
92 | const struct pt_regs *regs = get_irq_regs(); | 92 | struct pt_regs *regs = get_irq_regs(); |
93 | 93 | ||
94 | save_and_clear_buserr(); | 94 | save_and_clear_buserr(); |
95 | print_buserr(); | 95 | print_buserr(); |
diff --git a/arch/mips/sgi-ip22/ip22-eisa.c b/arch/mips/sgi-ip22/ip22-eisa.c index 1617241d2737..da44ccb20829 100644 --- a/arch/mips/sgi-ip22/ip22-eisa.c +++ b/arch/mips/sgi-ip22/ip22-eisa.c | |||
@@ -50,9 +50,9 @@ | |||
50 | 50 | ||
51 | static char __init *decode_eisa_sig(unsigned long addr) | 51 | static char __init *decode_eisa_sig(unsigned long addr) |
52 | { | 52 | { |
53 | static char sig_str[EISA_SIG_LEN]; | 53 | static char sig_str[EISA_SIG_LEN] __initdata; |
54 | u8 sig[4]; | 54 | u8 sig[4]; |
55 | u16 rev; | 55 | u16 rev; |
56 | int i; | 56 | int i; |
57 | 57 | ||
58 | for (i = 0; i < 4; i++) { | 58 | for (i = 0; i < 4; i++) { |
diff --git a/arch/mips/sgi-ip22/ip22-int.c b/arch/mips/sgi-ip22/ip22-int.c index 0ecd5fe9486e..383f11d7f442 100644 --- a/arch/mips/sgi-ip22/ip22-int.c +++ b/arch/mips/sgi-ip22/ip22-int.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <linux/init.h> | 13 | #include <linux/init.h> |
14 | #include <linux/kernel_stat.h> | 14 | #include <linux/kernel_stat.h> |
15 | #include <linux/interrupt.h> | 15 | #include <linux/interrupt.h> |
16 | #include <linux/ftrace.h> | ||
16 | 17 | ||
17 | #include <asm/irq_cpu.h> | 18 | #include <asm/irq_cpu.h> |
18 | #include <asm/sgi/hpc3.h> | 19 | #include <asm/sgi/hpc3.h> |
@@ -150,7 +151,7 @@ static void indy_local1_irqdispatch(void) | |||
150 | 151 | ||
151 | extern void ip22_be_interrupt(int irq); | 152 | extern void ip22_be_interrupt(int irq); |
152 | 153 | ||
153 | static void indy_buserror_irq(void) | 154 | static void __irq_entry indy_buserror_irq(void) |
154 | { | 155 | { |
155 | int irq = SGI_BUSERR_IRQ; | 156 | int irq = SGI_BUSERR_IRQ; |
156 | 157 | ||
diff --git a/arch/mips/sgi-ip22/ip22-setup.c b/arch/mips/sgi-ip22/ip22-setup.c index b9a931358e23..5deeb68b6c9c 100644 --- a/arch/mips/sgi-ip22/ip22-setup.c +++ b/arch/mips/sgi-ip22/ip22-setup.c | |||
@@ -67,7 +67,7 @@ void __init plat_mem_setup(void) | |||
67 | cserial = ArcGetEnvironmentVariable("ConsoleOut"); | 67 | cserial = ArcGetEnvironmentVariable("ConsoleOut"); |
68 | 68 | ||
69 | if ((ctype && *ctype == 'd') || (cserial && *cserial == 's')) { | 69 | if ((ctype && *ctype == 'd') || (cserial && *cserial == 's')) { |
70 | static char options[8]; | 70 | static char options[8] __initdata; |
71 | char *baud = ArcGetEnvironmentVariable("dbaud"); | 71 | char *baud = ArcGetEnvironmentVariable("dbaud"); |
72 | if (baud) | 72 | if (baud) |
73 | strcpy(options, baud); | 73 | strcpy(options, baud); |
diff --git a/arch/mips/sgi-ip22/ip22-time.c b/arch/mips/sgi-ip22/ip22-time.c index c8f7d2328b24..603fc91c1030 100644 --- a/arch/mips/sgi-ip22/ip22-time.c +++ b/arch/mips/sgi-ip22/ip22-time.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/interrupt.h> | 16 | #include <linux/interrupt.h> |
17 | #include <linux/kernel_stat.h> | 17 | #include <linux/kernel_stat.h> |
18 | #include <linux/time.h> | 18 | #include <linux/time.h> |
19 | #include <linux/ftrace.h> | ||
19 | 20 | ||
20 | #include <asm/cpu.h> | 21 | #include <asm/cpu.h> |
21 | #include <asm/mipsregs.h> | 22 | #include <asm/mipsregs.h> |
@@ -115,7 +116,7 @@ __init void plat_time_init(void) | |||
115 | } | 116 | } |
116 | 117 | ||
117 | /* Generic SGI handler for (spurious) 8254 interrupts */ | 118 | /* Generic SGI handler for (spurious) 8254 interrupts */ |
118 | void indy_8254timer_irq(void) | 119 | void __irq_entry indy_8254timer_irq(void) |
119 | { | 120 | { |
120 | int irq = SGI_8254_0_IRQ; | 121 | int irq = SGI_8254_0_IRQ; |
121 | ULONG cnt; | 122 | ULONG cnt; |
diff --git a/arch/mips/sgi-ip22/ip28-berr.c b/arch/mips/sgi-ip22/ip28-berr.c index 30e12e2ec4b5..88c684e05a3d 100644 --- a/arch/mips/sgi-ip22/ip28-berr.c +++ b/arch/mips/sgi-ip22/ip28-berr.c | |||
@@ -453,7 +453,7 @@ mips_be_fatal: | |||
453 | 453 | ||
454 | void ip22_be_interrupt(int irq) | 454 | void ip22_be_interrupt(int irq) |
455 | { | 455 | { |
456 | const struct pt_regs *regs = get_irq_regs(); | 456 | struct pt_regs *regs = get_irq_regs(); |
457 | 457 | ||
458 | count_be_interrupt++; | 458 | count_be_interrupt++; |
459 | 459 | ||
diff --git a/arch/mips/sgi-ip27/ip27-irq.c b/arch/mips/sgi-ip27/ip27-irq.c index c1c8e40d65d6..6a123ea72de5 100644 --- a/arch/mips/sgi-ip27/ip27-irq.c +++ b/arch/mips/sgi-ip27/ip27-irq.c | |||
@@ -17,7 +17,6 @@ | |||
17 | #include <linux/interrupt.h> | 17 | #include <linux/interrupt.h> |
18 | #include <linux/ioport.h> | 18 | #include <linux/ioport.h> |
19 | #include <linux/timex.h> | 19 | #include <linux/timex.h> |
20 | #include <linux/slab.h> | ||
21 | #include <linux/smp.h> | 20 | #include <linux/smp.h> |
22 | #include <linux/random.h> | 21 | #include <linux/random.h> |
23 | #include <linux/kernel.h> | 22 | #include <linux/kernel.h> |
diff --git a/arch/mips/sgi-ip27/ip27-klnuma.c b/arch/mips/sgi-ip27/ip27-klnuma.c index d9c79d8be81d..c3d30a88daf3 100644 --- a/arch/mips/sgi-ip27/ip27-klnuma.c +++ b/arch/mips/sgi-ip27/ip27-klnuma.c | |||
@@ -133,4 +133,3 @@ pfn_t node_getfirstfree(cnodeid_t cnode) | |||
133 | return (KDM_TO_PHYS(PAGE_ALIGN(SYMMON_STK_ADDR(nasid, 0))) >> | 133 | return (KDM_TO_PHYS(PAGE_ALIGN(SYMMON_STK_ADDR(nasid, 0))) >> |
134 | PAGE_SHIFT); | 134 | PAGE_SHIFT); |
135 | } | 135 | } |
136 | |||
diff --git a/arch/mips/sgi-ip27/ip27-memory.c b/arch/mips/sgi-ip27/ip27-memory.c index f61c164d1e67..bc1297109cc5 100644 --- a/arch/mips/sgi-ip27/ip27-memory.c +++ b/arch/mips/sgi-ip27/ip27-memory.c | |||
@@ -505,5 +505,5 @@ void __init mem_init(void) | |||
505 | (num_physpages - tmp) << (PAGE_SHIFT-10), | 505 | (num_physpages - tmp) << (PAGE_SHIFT-10), |
506 | datasize >> 10, | 506 | datasize >> 10, |
507 | initsize >> 10, | 507 | initsize >> 10, |
508 | (unsigned long) (totalhigh_pages << (PAGE_SHIFT-10))); | 508 | totalhigh_pages << (PAGE_SHIFT-10)); |
509 | } | 509 | } |
diff --git a/arch/mips/sgi-ip27/ip27-nmi.c b/arch/mips/sgi-ip27/ip27-nmi.c index 6c5a630566f9..bc4fa8dd67f3 100644 --- a/arch/mips/sgi-ip27/ip27-nmi.c +++ b/arch/mips/sgi-ip27/ip27-nmi.c | |||
@@ -17,11 +17,10 @@ | |||
17 | #endif | 17 | #endif |
18 | 18 | ||
19 | #define CNODEID_NONE (cnodeid_t)-1 | 19 | #define CNODEID_NONE (cnodeid_t)-1 |
20 | #define enter_panic_mode() spin_lock(&nmi_lock) | ||
21 | 20 | ||
22 | typedef unsigned long machreg_t; | 21 | typedef unsigned long machreg_t; |
23 | 22 | ||
24 | DEFINE_SPINLOCK(nmi_lock); | 23 | static arch_spinlock_t nmi_lock = __ARCH_SPIN_LOCK_UNLOCKED; |
25 | 24 | ||
26 | /* | 25 | /* |
27 | * Lets see what else we need to do here. Set up sp, gp? | 26 | * Lets see what else we need to do here. Set up sp, gp? |
@@ -193,9 +192,9 @@ cont_nmi_dump(void) | |||
193 | atomic_inc(&nmied_cpus); | 192 | atomic_inc(&nmied_cpus); |
194 | #endif | 193 | #endif |
195 | /* | 194 | /* |
196 | * Use enter_panic_mode to allow only 1 cpu to proceed | 195 | * Only allow 1 cpu to proceed |
197 | */ | 196 | */ |
198 | enter_panic_mode(); | 197 | arch_spin_lock(&nmi_lock); |
199 | 198 | ||
200 | #ifdef REAL_NMI_SIGNAL | 199 | #ifdef REAL_NMI_SIGNAL |
201 | /* | 200 | /* |
diff --git a/arch/mips/sgi-ip32/ip32-irq.c b/arch/mips/sgi-ip32/ip32-irq.c index 5c2bf111ca67..eb40824b172a 100644 --- a/arch/mips/sgi-ip32/ip32-irq.c +++ b/arch/mips/sgi-ip32/ip32-irq.c | |||
@@ -15,7 +15,6 @@ | |||
15 | #include <linux/irq.h> | 15 | #include <linux/irq.h> |
16 | #include <linux/bitops.h> | 16 | #include <linux/bitops.h> |
17 | #include <linux/kernel.h> | 17 | #include <linux/kernel.h> |
18 | #include <linux/slab.h> | ||
19 | #include <linux/mm.h> | 18 | #include <linux/mm.h> |
20 | #include <linux/random.h> | 19 | #include <linux/random.h> |
21 | #include <linux/sched.h> | 20 | #include <linux/sched.h> |
@@ -512,10 +511,6 @@ void __init arch_init_irq(void) | |||
512 | "level"); | 511 | "level"); |
513 | break; | 512 | break; |
514 | 513 | ||
515 | case CRIME_GBE0_IRQ ... CRIME_GBE3_IRQ: | ||
516 | set_irq_chip_and_handler_name(irq, | ||
517 | &crime_edge_interrupt, handle_edge_irq, "edge"); | ||
518 | break; | ||
519 | case CRIME_CPUERR_IRQ: | 514 | case CRIME_CPUERR_IRQ: |
520 | case CRIME_MEMERR_IRQ: | 515 | case CRIME_MEMERR_IRQ: |
521 | set_irq_chip_and_handler_name(irq, | 516 | set_irq_chip_and_handler_name(irq, |
@@ -523,12 +518,9 @@ void __init arch_init_irq(void) | |||
523 | "level"); | 518 | "level"); |
524 | break; | 519 | break; |
525 | 520 | ||
521 | case CRIME_GBE0_IRQ ... CRIME_GBE3_IRQ: | ||
526 | case CRIME_RE_EMPTY_E_IRQ ... CRIME_RE_IDLE_E_IRQ: | 522 | case CRIME_RE_EMPTY_E_IRQ ... CRIME_RE_IDLE_E_IRQ: |
527 | case CRIME_SOFT0_IRQ ... CRIME_SOFT2_IRQ: | 523 | case CRIME_SOFT0_IRQ ... CRIME_SOFT2_IRQ: |
528 | set_irq_chip_and_handler_name(irq, | ||
529 | &crime_edge_interrupt, handle_edge_irq, "edge"); | ||
530 | break; | ||
531 | |||
532 | case CRIME_VICE_IRQ: | 524 | case CRIME_VICE_IRQ: |
533 | set_irq_chip_and_handler_name(irq, | 525 | set_irq_chip_and_handler_name(irq, |
534 | &crime_edge_interrupt, handle_edge_irq, "edge"); | 526 | &crime_edge_interrupt, handle_edge_irq, "edge"); |
diff --git a/arch/mips/sgi-ip32/ip32-setup.c b/arch/mips/sgi-ip32/ip32-setup.c index c5a5d4a31b4b..3abd1465ec02 100644 --- a/arch/mips/sgi-ip32/ip32-setup.c +++ b/arch/mips/sgi-ip32/ip32-setup.c | |||
@@ -90,7 +90,7 @@ void __init plat_mem_setup(void) | |||
90 | { | 90 | { |
91 | char* con = ArcGetEnvironmentVariable("console"); | 91 | char* con = ArcGetEnvironmentVariable("console"); |
92 | if (con && *con == 'd') { | 92 | if (con && *con == 'd') { |
93 | static char options[8]; | 93 | static char options[8] __initdata; |
94 | char *baud = ArcGetEnvironmentVariable("dbaud"); | 94 | char *baud = ArcGetEnvironmentVariable("dbaud"); |
95 | if (baud) | 95 | if (baud) |
96 | strcpy(options, baud); | 96 | strcpy(options, baud); |
diff --git a/arch/mips/sibyte/bcm1480/irq.c b/arch/mips/sibyte/bcm1480/irq.c index 4070268aa769..7a8b0a8b643a 100644 --- a/arch/mips/sibyte/bcm1480/irq.c +++ b/arch/mips/sibyte/bcm1480/irq.c | |||
@@ -22,7 +22,6 @@ | |||
22 | #include <linux/smp.h> | 22 | #include <linux/smp.h> |
23 | #include <linux/spinlock.h> | 23 | #include <linux/spinlock.h> |
24 | #include <linux/mm.h> | 24 | #include <linux/mm.h> |
25 | #include <linux/slab.h> | ||
26 | #include <linux/kernel_stat.h> | 25 | #include <linux/kernel_stat.h> |
27 | 26 | ||
28 | #include <asm/errno.h> | 27 | #include <asm/errno.h> |
@@ -73,14 +72,14 @@ static struct irq_chip bcm1480_irq_type = { | |||
73 | /* Store the CPU id (not the logical number) */ | 72 | /* Store the CPU id (not the logical number) */ |
74 | int bcm1480_irq_owner[BCM1480_NR_IRQS]; | 73 | int bcm1480_irq_owner[BCM1480_NR_IRQS]; |
75 | 74 | ||
76 | DEFINE_SPINLOCK(bcm1480_imr_lock); | 75 | static DEFINE_RAW_SPINLOCK(bcm1480_imr_lock); |
77 | 76 | ||
78 | void bcm1480_mask_irq(int cpu, int irq) | 77 | void bcm1480_mask_irq(int cpu, int irq) |
79 | { | 78 | { |
80 | unsigned long flags, hl_spacing; | 79 | unsigned long flags, hl_spacing; |
81 | u64 cur_ints; | 80 | u64 cur_ints; |
82 | 81 | ||
83 | spin_lock_irqsave(&bcm1480_imr_lock, flags); | 82 | raw_spin_lock_irqsave(&bcm1480_imr_lock, flags); |
84 | hl_spacing = 0; | 83 | hl_spacing = 0; |
85 | if ((irq >= BCM1480_NR_IRQS_HALF) && (irq <= BCM1480_NR_IRQS)) { | 84 | if ((irq >= BCM1480_NR_IRQS_HALF) && (irq <= BCM1480_NR_IRQS)) { |
86 | hl_spacing = BCM1480_IMR_HL_SPACING; | 85 | hl_spacing = BCM1480_IMR_HL_SPACING; |
@@ -89,7 +88,7 @@ void bcm1480_mask_irq(int cpu, int irq) | |||
89 | cur_ints = ____raw_readq(IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); | 88 | cur_ints = ____raw_readq(IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); |
90 | cur_ints |= (((u64) 1) << irq); | 89 | cur_ints |= (((u64) 1) << irq); |
91 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); | 90 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); |
92 | spin_unlock_irqrestore(&bcm1480_imr_lock, flags); | 91 | raw_spin_unlock_irqrestore(&bcm1480_imr_lock, flags); |
93 | } | 92 | } |
94 | 93 | ||
95 | void bcm1480_unmask_irq(int cpu, int irq) | 94 | void bcm1480_unmask_irq(int cpu, int irq) |
@@ -97,7 +96,7 @@ void bcm1480_unmask_irq(int cpu, int irq) | |||
97 | unsigned long flags, hl_spacing; | 96 | unsigned long flags, hl_spacing; |
98 | u64 cur_ints; | 97 | u64 cur_ints; |
99 | 98 | ||
100 | spin_lock_irqsave(&bcm1480_imr_lock, flags); | 99 | raw_spin_lock_irqsave(&bcm1480_imr_lock, flags); |
101 | hl_spacing = 0; | 100 | hl_spacing = 0; |
102 | if ((irq >= BCM1480_NR_IRQS_HALF) && (irq <= BCM1480_NR_IRQS)) { | 101 | if ((irq >= BCM1480_NR_IRQS_HALF) && (irq <= BCM1480_NR_IRQS)) { |
103 | hl_spacing = BCM1480_IMR_HL_SPACING; | 102 | hl_spacing = BCM1480_IMR_HL_SPACING; |
@@ -106,7 +105,7 @@ void bcm1480_unmask_irq(int cpu, int irq) | |||
106 | cur_ints = ____raw_readq(IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); | 105 | cur_ints = ____raw_readq(IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); |
107 | cur_ints &= ~(((u64) 1) << irq); | 106 | cur_ints &= ~(((u64) 1) << irq); |
108 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); | 107 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + hl_spacing)); |
109 | spin_unlock_irqrestore(&bcm1480_imr_lock, flags); | 108 | raw_spin_unlock_irqrestore(&bcm1480_imr_lock, flags); |
110 | } | 109 | } |
111 | 110 | ||
112 | #ifdef CONFIG_SMP | 111 | #ifdef CONFIG_SMP |
@@ -123,7 +122,7 @@ static int bcm1480_set_affinity(unsigned int irq, const struct cpumask *mask) | |||
123 | cpu = cpu_logical_map(i); | 122 | cpu = cpu_logical_map(i); |
124 | 123 | ||
125 | /* Protect against other affinity changers and IMR manipulation */ | 124 | /* Protect against other affinity changers and IMR manipulation */ |
126 | spin_lock_irqsave(&bcm1480_imr_lock, flags); | 125 | raw_spin_lock_irqsave(&bcm1480_imr_lock, flags); |
127 | 126 | ||
128 | /* Swizzle each CPU's IMR (but leave the IP selection alone) */ | 127 | /* Swizzle each CPU's IMR (but leave the IP selection alone) */ |
129 | old_cpu = bcm1480_irq_owner[irq]; | 128 | old_cpu = bcm1480_irq_owner[irq]; |
@@ -148,7 +147,7 @@ static int bcm1480_set_affinity(unsigned int irq, const struct cpumask *mask) | |||
148 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + (k*BCM1480_IMR_HL_SPACING))); | 147 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + (k*BCM1480_IMR_HL_SPACING))); |
149 | } | 148 | } |
150 | } | 149 | } |
151 | spin_unlock_irqrestore(&bcm1480_imr_lock, flags); | 150 | raw_spin_unlock_irqrestore(&bcm1480_imr_lock, flags); |
152 | 151 | ||
153 | return 0; | 152 | return 0; |
154 | } | 153 | } |
diff --git a/arch/mips/sibyte/common/cfe.c b/arch/mips/sibyte/common/cfe.c index eb5396cf81bb..6343011e9902 100644 --- a/arch/mips/sibyte/common/cfe.c +++ b/arch/mips/sibyte/common/cfe.c | |||
@@ -287,7 +287,7 @@ void __init prom_init(void) | |||
287 | * boot console | 287 | * boot console |
288 | */ | 288 | */ |
289 | cfe_cons_handle = cfe_getstdhandle(CFE_STDHANDLE_CONSOLE); | 289 | cfe_cons_handle = cfe_getstdhandle(CFE_STDHANDLE_CONSOLE); |
290 | if (cfe_getenv("LINUX_CMDLINE", arcs_cmdline, CL_SIZE) < 0) { | 290 | if (cfe_getenv("LINUX_CMDLINE", arcs_cmdline, COMMAND_LINE_SIZE) < 0) { |
291 | if (argc >= 0) { | 291 | if (argc >= 0) { |
292 | /* The loader should have set the command line */ | 292 | /* The loader should have set the command line */ |
293 | /* too early for panic to do any good */ | 293 | /* too early for panic to do any good */ |
@@ -318,7 +318,7 @@ void __init prom_init(void) | |||
318 | #endif /* CONFIG_BLK_DEV_INITRD */ | 318 | #endif /* CONFIG_BLK_DEV_INITRD */ |
319 | 319 | ||
320 | /* Not sure this is needed, but it's the safe way. */ | 320 | /* Not sure this is needed, but it's the safe way. */ |
321 | arcs_cmdline[CL_SIZE-1] = 0; | 321 | arcs_cmdline[COMMAND_LINE_SIZE-1] = 0; |
322 | 322 | ||
323 | prom_meminit(); | 323 | prom_meminit(); |
324 | 324 | ||
diff --git a/arch/mips/sibyte/common/sb_tbprof.c b/arch/mips/sibyte/common/sb_tbprof.c index 15ea778b5e66..d4ed7a9156f5 100644 --- a/arch/mips/sibyte/common/sb_tbprof.c +++ b/arch/mips/sibyte/common/sb_tbprof.c | |||
@@ -27,8 +27,6 @@ | |||
27 | #include <linux/types.h> | 27 | #include <linux/types.h> |
28 | #include <linux/init.h> | 28 | #include <linux/init.h> |
29 | #include <linux/interrupt.h> | 29 | #include <linux/interrupt.h> |
30 | #include <linux/slab.h> | ||
31 | #include <linux/smp_lock.h> | ||
32 | #include <linux/vmalloc.h> | 30 | #include <linux/vmalloc.h> |
33 | #include <linux/fs.h> | 31 | #include <linux/fs.h> |
34 | #include <linux/errno.h> | 32 | #include <linux/errno.h> |
diff --git a/arch/mips/sibyte/sb1250/irq.c b/arch/mips/sibyte/sb1250/irq.c index 5e7f2016cceb..62371f772553 100644 --- a/arch/mips/sibyte/sb1250/irq.c +++ b/arch/mips/sibyte/sb1250/irq.c | |||
@@ -22,7 +22,6 @@ | |||
22 | #include <linux/spinlock.h> | 22 | #include <linux/spinlock.h> |
23 | #include <linux/smp.h> | 23 | #include <linux/smp.h> |
24 | #include <linux/mm.h> | 24 | #include <linux/mm.h> |
25 | #include <linux/slab.h> | ||
26 | #include <linux/kernel_stat.h> | 25 | #include <linux/kernel_stat.h> |
27 | 26 | ||
28 | #include <asm/errno.h> | 27 | #include <asm/errno.h> |
@@ -72,20 +71,20 @@ static struct irq_chip sb1250_irq_type = { | |||
72 | /* Store the CPU id (not the logical number) */ | 71 | /* Store the CPU id (not the logical number) */ |
73 | int sb1250_irq_owner[SB1250_NR_IRQS]; | 72 | int sb1250_irq_owner[SB1250_NR_IRQS]; |
74 | 73 | ||
75 | DEFINE_SPINLOCK(sb1250_imr_lock); | 74 | static DEFINE_RAW_SPINLOCK(sb1250_imr_lock); |
76 | 75 | ||
77 | void sb1250_mask_irq(int cpu, int irq) | 76 | void sb1250_mask_irq(int cpu, int irq) |
78 | { | 77 | { |
79 | unsigned long flags; | 78 | unsigned long flags; |
80 | u64 cur_ints; | 79 | u64 cur_ints; |
81 | 80 | ||
82 | spin_lock_irqsave(&sb1250_imr_lock, flags); | 81 | raw_spin_lock_irqsave(&sb1250_imr_lock, flags); |
83 | cur_ints = ____raw_readq(IOADDR(A_IMR_MAPPER(cpu) + | 82 | cur_ints = ____raw_readq(IOADDR(A_IMR_MAPPER(cpu) + |
84 | R_IMR_INTERRUPT_MASK)); | 83 | R_IMR_INTERRUPT_MASK)); |
85 | cur_ints |= (((u64) 1) << irq); | 84 | cur_ints |= (((u64) 1) << irq); |
86 | ____raw_writeq(cur_ints, IOADDR(A_IMR_MAPPER(cpu) + | 85 | ____raw_writeq(cur_ints, IOADDR(A_IMR_MAPPER(cpu) + |
87 | R_IMR_INTERRUPT_MASK)); | 86 | R_IMR_INTERRUPT_MASK)); |
88 | spin_unlock_irqrestore(&sb1250_imr_lock, flags); | 87 | raw_spin_unlock_irqrestore(&sb1250_imr_lock, flags); |
89 | } | 88 | } |
90 | 89 | ||
91 | void sb1250_unmask_irq(int cpu, int irq) | 90 | void sb1250_unmask_irq(int cpu, int irq) |
@@ -93,13 +92,13 @@ void sb1250_unmask_irq(int cpu, int irq) | |||
93 | unsigned long flags; | 92 | unsigned long flags; |
94 | u64 cur_ints; | 93 | u64 cur_ints; |
95 | 94 | ||
96 | spin_lock_irqsave(&sb1250_imr_lock, flags); | 95 | raw_spin_lock_irqsave(&sb1250_imr_lock, flags); |
97 | cur_ints = ____raw_readq(IOADDR(A_IMR_MAPPER(cpu) + | 96 | cur_ints = ____raw_readq(IOADDR(A_IMR_MAPPER(cpu) + |
98 | R_IMR_INTERRUPT_MASK)); | 97 | R_IMR_INTERRUPT_MASK)); |
99 | cur_ints &= ~(((u64) 1) << irq); | 98 | cur_ints &= ~(((u64) 1) << irq); |
100 | ____raw_writeq(cur_ints, IOADDR(A_IMR_MAPPER(cpu) + | 99 | ____raw_writeq(cur_ints, IOADDR(A_IMR_MAPPER(cpu) + |
101 | R_IMR_INTERRUPT_MASK)); | 100 | R_IMR_INTERRUPT_MASK)); |
102 | spin_unlock_irqrestore(&sb1250_imr_lock, flags); | 101 | raw_spin_unlock_irqrestore(&sb1250_imr_lock, flags); |
103 | } | 102 | } |
104 | 103 | ||
105 | #ifdef CONFIG_SMP | 104 | #ifdef CONFIG_SMP |
@@ -115,7 +114,7 @@ static int sb1250_set_affinity(unsigned int irq, const struct cpumask *mask) | |||
115 | cpu = cpu_logical_map(i); | 114 | cpu = cpu_logical_map(i); |
116 | 115 | ||
117 | /* Protect against other affinity changers and IMR manipulation */ | 116 | /* Protect against other affinity changers and IMR manipulation */ |
118 | spin_lock_irqsave(&sb1250_imr_lock, flags); | 117 | raw_spin_lock_irqsave(&sb1250_imr_lock, flags); |
119 | 118 | ||
120 | /* Swizzle each CPU's IMR (but leave the IP selection alone) */ | 119 | /* Swizzle each CPU's IMR (but leave the IP selection alone) */ |
121 | old_cpu = sb1250_irq_owner[irq]; | 120 | old_cpu = sb1250_irq_owner[irq]; |
@@ -137,7 +136,7 @@ static int sb1250_set_affinity(unsigned int irq, const struct cpumask *mask) | |||
137 | ____raw_writeq(cur_ints, IOADDR(A_IMR_MAPPER(cpu) + | 136 | ____raw_writeq(cur_ints, IOADDR(A_IMR_MAPPER(cpu) + |
138 | R_IMR_INTERRUPT_MASK)); | 137 | R_IMR_INTERRUPT_MASK)); |
139 | } | 138 | } |
140 | spin_unlock_irqrestore(&sb1250_imr_lock, flags); | 139 | raw_spin_unlock_irqrestore(&sb1250_imr_lock, flags); |
141 | 140 | ||
142 | return 0; | 141 | return 0; |
143 | } | 142 | } |
diff --git a/arch/mips/sibyte/sb1250/setup.c b/arch/mips/sibyte/sb1250/setup.c index 0444da1e23c2..92da3155ce07 100644 --- a/arch/mips/sibyte/sb1250/setup.c +++ b/arch/mips/sibyte/sb1250/setup.c | |||
@@ -87,6 +87,21 @@ static int __init setup_bcm1250(void) | |||
87 | return ret; | 87 | return ret; |
88 | } | 88 | } |
89 | 89 | ||
90 | int sb1250_m3_workaround_needed(void) | ||
91 | { | ||
92 | switch (soc_type) { | ||
93 | case K_SYS_SOC_TYPE_BCM1250: | ||
94 | case K_SYS_SOC_TYPE_BCM1250_ALT: | ||
95 | case K_SYS_SOC_TYPE_BCM1250_ALT2: | ||
96 | case K_SYS_SOC_TYPE_BCM1125: | ||
97 | case K_SYS_SOC_TYPE_BCM1125H: | ||
98 | return soc_pass < K_SYS_REVISION_BCM1250_C0; | ||
99 | |||
100 | default: | ||
101 | return 0; | ||
102 | } | ||
103 | } | ||
104 | |||
90 | static int __init setup_bcm112x(void) | 105 | static int __init setup_bcm112x(void) |
91 | { | 106 | { |
92 | int ret = 0; | 107 | int ret = 0; |
diff --git a/arch/mips/sibyte/swarm/setup.c b/arch/mips/sibyte/swarm/setup.c index 5277aac96b0f..c308989fc464 100644 --- a/arch/mips/sibyte/swarm/setup.c +++ b/arch/mips/sibyte/swarm/setup.c | |||
@@ -145,15 +145,14 @@ void __init plat_mem_setup(void) | |||
145 | 145 | ||
146 | #ifdef CONFIG_VT | 146 | #ifdef CONFIG_VT |
147 | screen_info = (struct screen_info) { | 147 | screen_info = (struct screen_info) { |
148 | 0, 0, /* orig-x, orig-y */ | 148 | .orig_video_page = 52, |
149 | 0, /* unused */ | 149 | .orig_video_mode = 3, |
150 | 52, /* orig_video_page */ | 150 | .orig_video_cols = 80, |
151 | 3, /* orig_video_mode */ | 151 | .flags = 12, |
152 | 80, /* orig_video_cols */ | 152 | .orig_video_ega_bx = 3, |
153 | 4626, 3, 9, /* unused, ega_bx, unused */ | 153 | .orig_video_lines = 25, |
154 | 25, /* orig_video_lines */ | 154 | .orig_video_isVGA = 0x22, |
155 | 0x22, /* orig_video_isVGA */ | 155 | .orig_video_points = 16, |
156 | 16 /* orig_video_points */ | ||
157 | }; | 156 | }; |
158 | /* XXXKW for CFE, get lines/cols from environment */ | 157 | /* XXXKW for CFE, get lines/cols from environment */ |
159 | #endif | 158 | #endif |
diff --git a/arch/mips/sni/a20r.c b/arch/mips/sni/a20r.c index 7dd76fb3b645..e6980892834a 100644 --- a/arch/mips/sni/a20r.c +++ b/arch/mips/sni/a20r.c | |||
@@ -188,7 +188,7 @@ static void end_a20r_irq(unsigned int irq) | |||
188 | } | 188 | } |
189 | 189 | ||
190 | static struct irq_chip a20r_irq_type = { | 190 | static struct irq_chip a20r_irq_type = { |
191 | .typename = "A20R", | 191 | .name = "A20R", |
192 | .ack = mask_a20r_irq, | 192 | .ack = mask_a20r_irq, |
193 | .mask = mask_a20r_irq, | 193 | .mask = mask_a20r_irq, |
194 | .mask_ack = mask_a20r_irq, | 194 | .mask_ack = mask_a20r_irq, |
diff --git a/arch/mips/sni/pcimt.c b/arch/mips/sni/pcimt.c index 74e6c67982fb..51e62bbaa23b 100644 --- a/arch/mips/sni/pcimt.c +++ b/arch/mips/sni/pcimt.c | |||
@@ -214,7 +214,7 @@ static void end_pcimt_irq(unsigned int irq) | |||
214 | } | 214 | } |
215 | 215 | ||
216 | static struct irq_chip pcimt_irq_type = { | 216 | static struct irq_chip pcimt_irq_type = { |
217 | .typename = "PCIMT", | 217 | .name = "PCIMT", |
218 | .ack = disable_pcimt_irq, | 218 | .ack = disable_pcimt_irq, |
219 | .mask = disable_pcimt_irq, | 219 | .mask = disable_pcimt_irq, |
220 | .mask_ack = disable_pcimt_irq, | 220 | .mask_ack = disable_pcimt_irq, |
diff --git a/arch/mips/sni/pcit.c b/arch/mips/sni/pcit.c index 071a9573ac7f..f4699d35858b 100644 --- a/arch/mips/sni/pcit.c +++ b/arch/mips/sni/pcit.c | |||
@@ -176,7 +176,7 @@ void end_pcit_irq(unsigned int irq) | |||
176 | } | 176 | } |
177 | 177 | ||
178 | static struct irq_chip pcit_irq_type = { | 178 | static struct irq_chip pcit_irq_type = { |
179 | .typename = "PCIT", | 179 | .name = "PCIT", |
180 | .ack = disable_pcit_irq, | 180 | .ack = disable_pcit_irq, |
181 | .mask = disable_pcit_irq, | 181 | .mask = disable_pcit_irq, |
182 | .mask_ack = disable_pcit_irq, | 182 | .mask_ack = disable_pcit_irq, |
diff --git a/arch/mips/sni/rm200.c b/arch/mips/sni/rm200.c index 5e687819cbc2..90c558f7c0fa 100644 --- a/arch/mips/sni/rm200.c +++ b/arch/mips/sni/rm200.c | |||
@@ -132,7 +132,7 @@ device_initcall(snirm_setup_devinit); | |||
132 | * readb/writeb to access them | 132 | * readb/writeb to access them |
133 | */ | 133 | */ |
134 | 134 | ||
135 | DEFINE_SPINLOCK(sni_rm200_i8259A_lock); | 135 | static DEFINE_RAW_SPINLOCK(sni_rm200_i8259A_lock); |
136 | #define PIC_CMD 0x00 | 136 | #define PIC_CMD 0x00 |
137 | #define PIC_IMR 0x01 | 137 | #define PIC_IMR 0x01 |
138 | #define PIC_ISR PIC_CMD | 138 | #define PIC_ISR PIC_CMD |
@@ -161,13 +161,13 @@ static void sni_rm200_disable_8259A_irq(unsigned int irq) | |||
161 | 161 | ||
162 | irq -= RM200_I8259A_IRQ_BASE; | 162 | irq -= RM200_I8259A_IRQ_BASE; |
163 | mask = 1 << irq; | 163 | mask = 1 << irq; |
164 | spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); | 164 | raw_spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); |
165 | rm200_cached_irq_mask |= mask; | 165 | rm200_cached_irq_mask |= mask; |
166 | if (irq & 8) | 166 | if (irq & 8) |
167 | writeb(cached_slave_mask, rm200_pic_slave + PIC_IMR); | 167 | writeb(cached_slave_mask, rm200_pic_slave + PIC_IMR); |
168 | else | 168 | else |
169 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); | 169 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); |
170 | spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); | 170 | raw_spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); |
171 | } | 171 | } |
172 | 172 | ||
173 | static void sni_rm200_enable_8259A_irq(unsigned int irq) | 173 | static void sni_rm200_enable_8259A_irq(unsigned int irq) |
@@ -177,13 +177,13 @@ static void sni_rm200_enable_8259A_irq(unsigned int irq) | |||
177 | 177 | ||
178 | irq -= RM200_I8259A_IRQ_BASE; | 178 | irq -= RM200_I8259A_IRQ_BASE; |
179 | mask = ~(1 << irq); | 179 | mask = ~(1 << irq); |
180 | spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); | 180 | raw_spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); |
181 | rm200_cached_irq_mask &= mask; | 181 | rm200_cached_irq_mask &= mask; |
182 | if (irq & 8) | 182 | if (irq & 8) |
183 | writeb(cached_slave_mask, rm200_pic_slave + PIC_IMR); | 183 | writeb(cached_slave_mask, rm200_pic_slave + PIC_IMR); |
184 | else | 184 | else |
185 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); | 185 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); |
186 | spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); | 186 | raw_spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); |
187 | } | 187 | } |
188 | 188 | ||
189 | static inline int sni_rm200_i8259A_irq_real(unsigned int irq) | 189 | static inline int sni_rm200_i8259A_irq_real(unsigned int irq) |
@@ -216,7 +216,7 @@ void sni_rm200_mask_and_ack_8259A(unsigned int irq) | |||
216 | 216 | ||
217 | irq -= RM200_I8259A_IRQ_BASE; | 217 | irq -= RM200_I8259A_IRQ_BASE; |
218 | irqmask = 1 << irq; | 218 | irqmask = 1 << irq; |
219 | spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); | 219 | raw_spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); |
220 | /* | 220 | /* |
221 | * Lightweight spurious IRQ detection. We do not want | 221 | * Lightweight spurious IRQ detection. We do not want |
222 | * to overdo spurious IRQ handling - it's usually a sign | 222 | * to overdo spurious IRQ handling - it's usually a sign |
@@ -247,7 +247,7 @@ handle_real_irq: | |||
247 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); | 247 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); |
248 | writeb(0x60+irq, rm200_pic_master + PIC_CMD); | 248 | writeb(0x60+irq, rm200_pic_master + PIC_CMD); |
249 | } | 249 | } |
250 | spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); | 250 | raw_spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); |
251 | return; | 251 | return; |
252 | 252 | ||
253 | spurious_8259A_irq: | 253 | spurious_8259A_irq: |
@@ -298,7 +298,7 @@ static inline int sni_rm200_i8259_irq(void) | |||
298 | { | 298 | { |
299 | int irq; | 299 | int irq; |
300 | 300 | ||
301 | spin_lock(&sni_rm200_i8259A_lock); | 301 | raw_spin_lock(&sni_rm200_i8259A_lock); |
302 | 302 | ||
303 | /* Perform an interrupt acknowledge cycle on controller 1. */ | 303 | /* Perform an interrupt acknowledge cycle on controller 1. */ |
304 | writeb(0x0C, rm200_pic_master + PIC_CMD); /* prepare for poll */ | 304 | writeb(0x0C, rm200_pic_master + PIC_CMD); /* prepare for poll */ |
@@ -325,7 +325,7 @@ static inline int sni_rm200_i8259_irq(void) | |||
325 | irq = -1; | 325 | irq = -1; |
326 | } | 326 | } |
327 | 327 | ||
328 | spin_unlock(&sni_rm200_i8259A_lock); | 328 | raw_spin_unlock(&sni_rm200_i8259A_lock); |
329 | 329 | ||
330 | return likely(irq >= 0) ? irq + RM200_I8259A_IRQ_BASE : irq; | 330 | return likely(irq >= 0) ? irq + RM200_I8259A_IRQ_BASE : irq; |
331 | } | 331 | } |
@@ -334,7 +334,7 @@ void sni_rm200_init_8259A(void) | |||
334 | { | 334 | { |
335 | unsigned long flags; | 335 | unsigned long flags; |
336 | 336 | ||
337 | spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); | 337 | raw_spin_lock_irqsave(&sni_rm200_i8259A_lock, flags); |
338 | 338 | ||
339 | writeb(0xff, rm200_pic_master + PIC_IMR); | 339 | writeb(0xff, rm200_pic_master + PIC_IMR); |
340 | writeb(0xff, rm200_pic_slave + PIC_IMR); | 340 | writeb(0xff, rm200_pic_slave + PIC_IMR); |
@@ -352,7 +352,7 @@ void sni_rm200_init_8259A(void) | |||
352 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); | 352 | writeb(cached_master_mask, rm200_pic_master + PIC_IMR); |
353 | writeb(cached_slave_mask, rm200_pic_slave + PIC_IMR); | 353 | writeb(cached_slave_mask, rm200_pic_slave + PIC_IMR); |
354 | 354 | ||
355 | spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); | 355 | raw_spin_unlock_irqrestore(&sni_rm200_i8259A_lock, flags); |
356 | } | 356 | } |
357 | 357 | ||
358 | /* | 358 | /* |
@@ -404,7 +404,7 @@ void __init sni_rm200_i8259_irqs(void) | |||
404 | if (!rm200_pic_master) | 404 | if (!rm200_pic_master) |
405 | return; | 405 | return; |
406 | rm200_pic_slave = ioremap_nocache(0x160000a0, 4); | 406 | rm200_pic_slave = ioremap_nocache(0x160000a0, 4); |
407 | if (!rm200_pic_master) { | 407 | if (!rm200_pic_slave) { |
408 | iounmap(rm200_pic_master); | 408 | iounmap(rm200_pic_master); |
409 | return; | 409 | return; |
410 | } | 410 | } |
@@ -449,7 +449,7 @@ void end_rm200_irq(unsigned int irq) | |||
449 | } | 449 | } |
450 | 450 | ||
451 | static struct irq_chip rm200_irq_type = { | 451 | static struct irq_chip rm200_irq_type = { |
452 | .typename = "RM200", | 452 | .name = "RM200", |
453 | .ack = disable_rm200_irq, | 453 | .ack = disable_rm200_irq, |
454 | .mask = disable_rm200_irq, | 454 | .mask = disable_rm200_irq, |
455 | .mask_ack = disable_rm200_irq, | 455 | .mask_ack = disable_rm200_irq, |
diff --git a/arch/mips/sni/setup.c b/arch/mips/sni/setup.c index a49272ce7ef5..d16b462154c3 100644 --- a/arch/mips/sni/setup.c +++ b/arch/mips/sni/setup.c | |||
@@ -60,7 +60,7 @@ static void __init sni_console_setup(void) | |||
60 | char *cdev; | 60 | char *cdev; |
61 | char *baud; | 61 | char *baud; |
62 | int port; | 62 | int port; |
63 | static char options[8]; | 63 | static char options[8] __initdata; |
64 | 64 | ||
65 | cdev = prom_getenv("console_dev"); | 65 | cdev = prom_getenv("console_dev"); |
66 | if (strncmp(cdev, "tty", 3) == 0) { | 66 | if (strncmp(cdev, "tty", 3) == 0) { |
diff --git a/arch/mips/txx9/generic/7segled.c b/arch/mips/txx9/generic/7segled.c index 727ab21b6618..7f8416f86222 100644 --- a/arch/mips/txx9/generic/7segled.c +++ b/arch/mips/txx9/generic/7segled.c | |||
@@ -58,13 +58,16 @@ static ssize_t raw_store(struct sys_device *dev, | |||
58 | static SYSDEV_ATTR(ascii, 0200, NULL, ascii_store); | 58 | static SYSDEV_ATTR(ascii, 0200, NULL, ascii_store); |
59 | static SYSDEV_ATTR(raw, 0200, NULL, raw_store); | 59 | static SYSDEV_ATTR(raw, 0200, NULL, raw_store); |
60 | 60 | ||
61 | static ssize_t map_seg7_show(struct sysdev_class *class, char *buf) | 61 | static ssize_t map_seg7_show(struct sysdev_class *class, |
62 | struct sysdev_class_attribute *attr, | ||
63 | char *buf) | ||
62 | { | 64 | { |
63 | memcpy(buf, &txx9_seg7map, sizeof(txx9_seg7map)); | 65 | memcpy(buf, &txx9_seg7map, sizeof(txx9_seg7map)); |
64 | return sizeof(txx9_seg7map); | 66 | return sizeof(txx9_seg7map); |
65 | } | 67 | } |
66 | 68 | ||
67 | static ssize_t map_seg7_store(struct sysdev_class *class, | 69 | static ssize_t map_seg7_store(struct sysdev_class *class, |
70 | struct sysdev_class_attribute *attr, | ||
68 | const char *buf, size_t size) | 71 | const char *buf, size_t size) |
69 | { | 72 | { |
70 | if (size != sizeof(txx9_seg7map)) | 73 | if (size != sizeof(txx9_seg7map)) |
diff --git a/arch/mips/txx9/generic/pci.c b/arch/mips/txx9/generic/pci.c index 707cfa9c547d..9a0be810cafa 100644 --- a/arch/mips/txx9/generic/pci.c +++ b/arch/mips/txx9/generic/pci.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <asm/txx9/pci.h> | 20 | #include <asm/txx9/pci.h> |
21 | #ifdef CONFIG_TOSHIBA_FPCIB0 | 21 | #ifdef CONFIG_TOSHIBA_FPCIB0 |
22 | #include <linux/interrupt.h> | 22 | #include <linux/interrupt.h> |
23 | #include <linux/slab.h> | ||
23 | #include <asm/i8259.h> | 24 | #include <asm/i8259.h> |
24 | #include <asm/txx9/smsc_fdc37m81x.h> | 25 | #include <asm/txx9/smsc_fdc37m81x.h> |
25 | #endif | 26 | #endif |
diff --git a/arch/mips/txx9/generic/setup.c b/arch/mips/txx9/generic/setup.c index d66802edebb2..adc69291f9e2 100644 --- a/arch/mips/txx9/generic/setup.c +++ b/arch/mips/txx9/generic/setup.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/mtd/physmap.h> | 23 | #include <linux/mtd/physmap.h> |
24 | #include <linux/leds.h> | 24 | #include <linux/leds.h> |
25 | #include <linux/sysdev.h> | 25 | #include <linux/sysdev.h> |
26 | #include <linux/slab.h> | ||
26 | #include <asm/bootinfo.h> | 27 | #include <asm/bootinfo.h> |
27 | #include <asm/time.h> | 28 | #include <asm/time.h> |
28 | #include <asm/reboot.h> | 29 | #include <asm/reboot.h> |
@@ -160,7 +161,6 @@ static void __init prom_init_cmdline(void) | |||
160 | int argc; | 161 | int argc; |
161 | int *argv32; | 162 | int *argv32; |
162 | int i; /* Always ignore the "-c" at argv[0] */ | 163 | int i; /* Always ignore the "-c" at argv[0] */ |
163 | static char builtin[CL_SIZE] __initdata; | ||
164 | 164 | ||
165 | if (fw_arg0 >= CKSEG0 || fw_arg1 < CKSEG0) { | 165 | if (fw_arg0 >= CKSEG0 || fw_arg1 < CKSEG0) { |
166 | /* | 166 | /* |
@@ -174,20 +174,6 @@ static void __init prom_init_cmdline(void) | |||
174 | argv32 = (int *)fw_arg1; | 174 | argv32 = (int *)fw_arg1; |
175 | } | 175 | } |
176 | 176 | ||
177 | /* ignore all built-in args if any f/w args given */ | ||
178 | /* | ||
179 | * But if built-in strings was started with '+', append them | ||
180 | * to command line args. If built-in was started with '-', | ||
181 | * ignore all f/w args. | ||
182 | */ | ||
183 | builtin[0] = '\0'; | ||
184 | if (arcs_cmdline[0] == '+') | ||
185 | strcpy(builtin, arcs_cmdline + 1); | ||
186 | else if (arcs_cmdline[0] == '-') { | ||
187 | strcpy(builtin, arcs_cmdline + 1); | ||
188 | argc = 0; | ||
189 | } else if (argc <= 1) | ||
190 | strcpy(builtin, arcs_cmdline); | ||
191 | arcs_cmdline[0] = '\0'; | 177 | arcs_cmdline[0] = '\0'; |
192 | 178 | ||
193 | for (i = 1; i < argc; i++) { | 179 | for (i = 1; i < argc; i++) { |
@@ -201,12 +187,6 @@ static void __init prom_init_cmdline(void) | |||
201 | } else | 187 | } else |
202 | strcat(arcs_cmdline, str); | 188 | strcat(arcs_cmdline, str); |
203 | } | 189 | } |
204 | /* append saved builtin args */ | ||
205 | if (builtin[0]) { | ||
206 | if (arcs_cmdline[0]) | ||
207 | strcat(arcs_cmdline, " "); | ||
208 | strcat(arcs_cmdline, builtin); | ||
209 | } | ||
210 | } | 190 | } |
211 | 191 | ||
212 | static int txx9_ic_disable __initdata; | 192 | static int txx9_ic_disable __initdata; |
@@ -315,7 +295,7 @@ static inline void txx9_cache_fixup(void) | |||
315 | 295 | ||
316 | static void __init preprocess_cmdline(void) | 296 | static void __init preprocess_cmdline(void) |
317 | { | 297 | { |
318 | static char cmdline[CL_SIZE] __initdata; | 298 | static char cmdline[COMMAND_LINE_SIZE] __initdata; |
319 | char *s; | 299 | char *s; |
320 | 300 | ||
321 | strcpy(cmdline, arcs_cmdline); | 301 | strcpy(cmdline, arcs_cmdline); |
@@ -420,11 +400,6 @@ const char *get_system_type(void) | |||
420 | return txx9_system_type; | 400 | return txx9_system_type; |
421 | } | 401 | } |
422 | 402 | ||
423 | char * __init prom_getcmdline(void) | ||
424 | { | ||
425 | return &(arcs_cmdline[0]); | ||
426 | } | ||
427 | |||
428 | const char *__init prom_getenv(const char *name) | 403 | const char *__init prom_getenv(const char *name) |
429 | { | 404 | { |
430 | const s32 *str; | 405 | const s32 *str; |
@@ -982,6 +957,7 @@ void __init txx9_sramc_init(struct resource *r) | |||
982 | if (!dev->base) | 957 | if (!dev->base) |
983 | goto exit; | 958 | goto exit; |
984 | dev->dev.cls = &txx9_sramc_sysdev_class; | 959 | dev->dev.cls = &txx9_sramc_sysdev_class; |
960 | sysfs_bin_attr_init(&dev->bindata_attr); | ||
985 | dev->bindata_attr.attr.name = "bindata"; | 961 | dev->bindata_attr.attr.name = "bindata"; |
986 | dev->bindata_attr.attr.mode = S_IRUSR | S_IWUSR; | 962 | dev->bindata_attr.attr.mode = S_IRUSR | S_IWUSR; |
987 | dev->bindata_attr.read = txx9_sram_read; | 963 | dev->bindata_attr.read = txx9_sram_read; |
diff --git a/arch/mips/txx9/generic/smsc_fdc37m81x.c b/arch/mips/txx9/generic/smsc_fdc37m81x.c index a2b2d62d88e3..8ebc3848f3ac 100644 --- a/arch/mips/txx9/generic/smsc_fdc37m81x.c +++ b/arch/mips/txx9/generic/smsc_fdc37m81x.c | |||
@@ -117,7 +117,7 @@ unsigned long __init smsc_fdc37m81x_init(unsigned long port) | |||
117 | if (chip_id == SMSC_FDC37M81X_CHIP_ID) | 117 | if (chip_id == SMSC_FDC37M81X_CHIP_ID) |
118 | smsc_fdc37m81x_config_end(); | 118 | smsc_fdc37m81x_config_end(); |
119 | else { | 119 | else { |
120 | printk(KERN_WARNING "%s: unknow chip id 0x%02x\n", __func__, | 120 | printk(KERN_WARNING "%s: unknown chip id 0x%02x\n", __func__, |
121 | chip_id); | 121 | chip_id); |
122 | g_smsc_fdc37m81x_base = 0; | 122 | g_smsc_fdc37m81x_base = 0; |
123 | } | 123 | } |
diff --git a/arch/mips/txx9/generic/spi_eeprom.c b/arch/mips/txx9/generic/spi_eeprom.c index 75c347238f47..103abc13d623 100644 --- a/arch/mips/txx9/generic/spi_eeprom.c +++ b/arch/mips/txx9/generic/spi_eeprom.c | |||
@@ -10,6 +10,7 @@ | |||
10 | * Support for TX4938 in 2.6 - Manish Lachwani (mlachwani@mvista.com) | 10 | * Support for TX4938 in 2.6 - Manish Lachwani (mlachwani@mvista.com) |
11 | */ | 11 | */ |
12 | #include <linux/init.h> | 12 | #include <linux/init.h> |
13 | #include <linux/slab.h> | ||
13 | #include <linux/device.h> | 14 | #include <linux/device.h> |
14 | #include <linux/spi/spi.h> | 15 | #include <linux/spi/spi.h> |
15 | #include <linux/spi/eeprom.h> | 16 | #include <linux/spi/eeprom.h> |
diff --git a/arch/mips/txx9/jmr3927/setup.c b/arch/mips/txx9/jmr3927/setup.c index 25e50a7be387..3206f76f300b 100644 --- a/arch/mips/txx9/jmr3927/setup.c +++ b/arch/mips/txx9/jmr3927/setup.c | |||
@@ -67,8 +67,6 @@ static void jmr3927_board_init(void); | |||
67 | 67 | ||
68 | static void __init jmr3927_mem_setup(void) | 68 | static void __init jmr3927_mem_setup(void) |
69 | { | 69 | { |
70 | char *argptr; | ||
71 | |||
72 | set_io_port_base(JMR3927_PORT_BASE + JMR3927_PCIIO); | 70 | set_io_port_base(JMR3927_PORT_BASE + JMR3927_PCIIO); |
73 | 71 | ||
74 | _machine_restart = jmr3927_machine_restart; | 72 | _machine_restart = jmr3927_machine_restart; |
@@ -97,11 +95,6 @@ static void __init jmr3927_mem_setup(void) | |||
97 | jmr3927_board_init(); | 95 | jmr3927_board_init(); |
98 | 96 | ||
99 | tx3927_sio_init(0, 1 << 1); /* ch1: noCTS */ | 97 | tx3927_sio_init(0, 1 << 1); /* ch1: noCTS */ |
100 | #ifdef CONFIG_SERIAL_TXX9_CONSOLE | ||
101 | argptr = prom_getcmdline(); | ||
102 | if (!strstr(argptr, "console=")) | ||
103 | strcat(argptr, " console=ttyS1,115200"); | ||
104 | #endif | ||
105 | } | 98 | } |
106 | 99 | ||
107 | static void __init jmr3927_pci_setup(void) | 100 | static void __init jmr3927_pci_setup(void) |
diff --git a/arch/mips/txx9/rbtx4927/setup.c b/arch/mips/txx9/rbtx4927/setup.c index ee468eaee4f7..b15adfc2d726 100644 --- a/arch/mips/txx9/rbtx4927/setup.c +++ b/arch/mips/txx9/rbtx4927/setup.c | |||
@@ -187,8 +187,6 @@ static void __init rbtx4937_clock_init(void); | |||
187 | 187 | ||
188 | static void __init rbtx4927_mem_setup(void) | 188 | static void __init rbtx4927_mem_setup(void) |
189 | { | 189 | { |
190 | char *argptr; | ||
191 | |||
192 | if (TX4927_REV_PCODE() == 0x4927) { | 190 | if (TX4927_REV_PCODE() == 0x4927) { |
193 | rbtx4927_clock_init(); | 191 | rbtx4927_clock_init(); |
194 | tx4927_setup(); | 192 | tx4927_setup(); |
@@ -213,11 +211,6 @@ static void __init rbtx4927_mem_setup(void) | |||
213 | gpio_direction_output(15, 1); | 211 | gpio_direction_output(15, 1); |
214 | 212 | ||
215 | tx4927_sio_init(0, 0); | 213 | tx4927_sio_init(0, 0); |
216 | #ifdef CONFIG_SERIAL_TXX9_CONSOLE | ||
217 | argptr = prom_getcmdline(); | ||
218 | if (!strstr(argptr, "console=")) | ||
219 | strcat(argptr, " console=ttyS0,38400"); | ||
220 | #endif | ||
221 | } | 214 | } |
222 | 215 | ||
223 | static void __init rbtx4927_clock_init(void) | 216 | static void __init rbtx4927_clock_init(void) |
diff --git a/arch/mips/txx9/rbtx4938/setup.c b/arch/mips/txx9/rbtx4938/setup.c index d66509b14284..d6e70dab3bd3 100644 --- a/arch/mips/txx9/rbtx4938/setup.c +++ b/arch/mips/txx9/rbtx4938/setup.c | |||
@@ -153,7 +153,6 @@ static void __init rbtx4938_time_init(void) | |||
153 | static void __init rbtx4938_mem_setup(void) | 153 | static void __init rbtx4938_mem_setup(void) |
154 | { | 154 | { |
155 | unsigned long long pcfg; | 155 | unsigned long long pcfg; |
156 | char *argptr; | ||
157 | 156 | ||
158 | if (txx9_master_clock == 0) | 157 | if (txx9_master_clock == 0) |
159 | txx9_master_clock = 25000000; /* 25MHz */ | 158 | txx9_master_clock = 25000000; /* 25MHz */ |
@@ -168,11 +167,6 @@ static void __init rbtx4938_mem_setup(void) | |||
168 | #endif | 167 | #endif |
169 | 168 | ||
170 | tx4938_sio_init(7372800, 0); | 169 | tx4938_sio_init(7372800, 0); |
171 | #ifdef CONFIG_SERIAL_TXX9_CONSOLE | ||
172 | argptr = prom_getcmdline(); | ||
173 | if (!strstr(argptr, "console=")) | ||
174 | strcat(argptr, " console=ttyS0,38400"); | ||
175 | #endif | ||
176 | 170 | ||
177 | #ifdef CONFIG_TOSHIBA_RBTX4938_MPLEX_PIO58_61 | 171 | #ifdef CONFIG_TOSHIBA_RBTX4938_MPLEX_PIO58_61 |
178 | pr_info("PIOSEL: disabling both ATA and NAND selection\n"); | 172 | pr_info("PIOSEL: disabling both ATA and NAND selection\n"); |
diff --git a/arch/mips/txx9/rbtx4939/setup.c b/arch/mips/txx9/rbtx4939/setup.c index b0c241ecf603..7dc0fafbec80 100644 --- a/arch/mips/txx9/rbtx4939/setup.c +++ b/arch/mips/txx9/rbtx4939/setup.c | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <linux/init.h> | 12 | #include <linux/init.h> |
13 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/types.h> | 14 | #include <linux/types.h> |
15 | #include <linux/slab.h> | ||
15 | #include <linux/platform_device.h> | 16 | #include <linux/platform_device.h> |
16 | #include <linux/leds.h> | 17 | #include <linux/leds.h> |
17 | #include <linux/interrupt.h> | 18 | #include <linux/interrupt.h> |
diff --git a/arch/mips/vr41xx/common/icu.c b/arch/mips/vr41xx/common/icu.c index 6d39e222b170..6153b6a05ccf 100644 --- a/arch/mips/vr41xx/common/icu.c +++ b/arch/mips/vr41xx/common/icu.c | |||
@@ -159,9 +159,9 @@ void vr41xx_enable_piuint(uint16_t mask) | |||
159 | 159 | ||
160 | if (current_cpu_type() == CPU_VR4111 || | 160 | if (current_cpu_type() == CPU_VR4111 || |
161 | current_cpu_type() == CPU_VR4121) { | 161 | current_cpu_type() == CPU_VR4121) { |
162 | spin_lock_irqsave(&desc->lock, flags); | 162 | raw_spin_lock_irqsave(&desc->lock, flags); |
163 | icu1_set(MPIUINTREG, mask); | 163 | icu1_set(MPIUINTREG, mask); |
164 | spin_unlock_irqrestore(&desc->lock, flags); | 164 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
165 | } | 165 | } |
166 | } | 166 | } |
167 | 167 | ||
@@ -174,9 +174,9 @@ void vr41xx_disable_piuint(uint16_t mask) | |||
174 | 174 | ||
175 | if (current_cpu_type() == CPU_VR4111 || | 175 | if (current_cpu_type() == CPU_VR4111 || |
176 | current_cpu_type() == CPU_VR4121) { | 176 | current_cpu_type() == CPU_VR4121) { |
177 | spin_lock_irqsave(&desc->lock, flags); | 177 | raw_spin_lock_irqsave(&desc->lock, flags); |
178 | icu1_clear(MPIUINTREG, mask); | 178 | icu1_clear(MPIUINTREG, mask); |
179 | spin_unlock_irqrestore(&desc->lock, flags); | 179 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
180 | } | 180 | } |
181 | } | 181 | } |
182 | 182 | ||
@@ -189,9 +189,9 @@ void vr41xx_enable_aiuint(uint16_t mask) | |||
189 | 189 | ||
190 | if (current_cpu_type() == CPU_VR4111 || | 190 | if (current_cpu_type() == CPU_VR4111 || |
191 | current_cpu_type() == CPU_VR4121) { | 191 | current_cpu_type() == CPU_VR4121) { |
192 | spin_lock_irqsave(&desc->lock, flags); | 192 | raw_spin_lock_irqsave(&desc->lock, flags); |
193 | icu1_set(MAIUINTREG, mask); | 193 | icu1_set(MAIUINTREG, mask); |
194 | spin_unlock_irqrestore(&desc->lock, flags); | 194 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
195 | } | 195 | } |
196 | } | 196 | } |
197 | 197 | ||
@@ -204,9 +204,9 @@ void vr41xx_disable_aiuint(uint16_t mask) | |||
204 | 204 | ||
205 | if (current_cpu_type() == CPU_VR4111 || | 205 | if (current_cpu_type() == CPU_VR4111 || |
206 | current_cpu_type() == CPU_VR4121) { | 206 | current_cpu_type() == CPU_VR4121) { |
207 | spin_lock_irqsave(&desc->lock, flags); | 207 | raw_spin_lock_irqsave(&desc->lock, flags); |
208 | icu1_clear(MAIUINTREG, mask); | 208 | icu1_clear(MAIUINTREG, mask); |
209 | spin_unlock_irqrestore(&desc->lock, flags); | 209 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
210 | } | 210 | } |
211 | } | 211 | } |
212 | 212 | ||
@@ -219,9 +219,9 @@ void vr41xx_enable_kiuint(uint16_t mask) | |||
219 | 219 | ||
220 | if (current_cpu_type() == CPU_VR4111 || | 220 | if (current_cpu_type() == CPU_VR4111 || |
221 | current_cpu_type() == CPU_VR4121) { | 221 | current_cpu_type() == CPU_VR4121) { |
222 | spin_lock_irqsave(&desc->lock, flags); | 222 | raw_spin_lock_irqsave(&desc->lock, flags); |
223 | icu1_set(MKIUINTREG, mask); | 223 | icu1_set(MKIUINTREG, mask); |
224 | spin_unlock_irqrestore(&desc->lock, flags); | 224 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
225 | } | 225 | } |
226 | } | 226 | } |
227 | 227 | ||
@@ -234,9 +234,9 @@ void vr41xx_disable_kiuint(uint16_t mask) | |||
234 | 234 | ||
235 | if (current_cpu_type() == CPU_VR4111 || | 235 | if (current_cpu_type() == CPU_VR4111 || |
236 | current_cpu_type() == CPU_VR4121) { | 236 | current_cpu_type() == CPU_VR4121) { |
237 | spin_lock_irqsave(&desc->lock, flags); | 237 | raw_spin_lock_irqsave(&desc->lock, flags); |
238 | icu1_clear(MKIUINTREG, mask); | 238 | icu1_clear(MKIUINTREG, mask); |
239 | spin_unlock_irqrestore(&desc->lock, flags); | 239 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
240 | } | 240 | } |
241 | } | 241 | } |
242 | 242 | ||
@@ -247,9 +247,9 @@ void vr41xx_enable_macint(uint16_t mask) | |||
247 | struct irq_desc *desc = irq_desc + ETHERNET_IRQ; | 247 | struct irq_desc *desc = irq_desc + ETHERNET_IRQ; |
248 | unsigned long flags; | 248 | unsigned long flags; |
249 | 249 | ||
250 | spin_lock_irqsave(&desc->lock, flags); | 250 | raw_spin_lock_irqsave(&desc->lock, flags); |
251 | icu1_set(MMACINTREG, mask); | 251 | icu1_set(MMACINTREG, mask); |
252 | spin_unlock_irqrestore(&desc->lock, flags); | 252 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
253 | } | 253 | } |
254 | 254 | ||
255 | EXPORT_SYMBOL(vr41xx_enable_macint); | 255 | EXPORT_SYMBOL(vr41xx_enable_macint); |
@@ -259,9 +259,9 @@ void vr41xx_disable_macint(uint16_t mask) | |||
259 | struct irq_desc *desc = irq_desc + ETHERNET_IRQ; | 259 | struct irq_desc *desc = irq_desc + ETHERNET_IRQ; |
260 | unsigned long flags; | 260 | unsigned long flags; |
261 | 261 | ||
262 | spin_lock_irqsave(&desc->lock, flags); | 262 | raw_spin_lock_irqsave(&desc->lock, flags); |
263 | icu1_clear(MMACINTREG, mask); | 263 | icu1_clear(MMACINTREG, mask); |
264 | spin_unlock_irqrestore(&desc->lock, flags); | 264 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
265 | } | 265 | } |
266 | 266 | ||
267 | EXPORT_SYMBOL(vr41xx_disable_macint); | 267 | EXPORT_SYMBOL(vr41xx_disable_macint); |
@@ -271,9 +271,9 @@ void vr41xx_enable_dsiuint(uint16_t mask) | |||
271 | struct irq_desc *desc = irq_desc + DSIU_IRQ; | 271 | struct irq_desc *desc = irq_desc + DSIU_IRQ; |
272 | unsigned long flags; | 272 | unsigned long flags; |
273 | 273 | ||
274 | spin_lock_irqsave(&desc->lock, flags); | 274 | raw_spin_lock_irqsave(&desc->lock, flags); |
275 | icu1_set(MDSIUINTREG, mask); | 275 | icu1_set(MDSIUINTREG, mask); |
276 | spin_unlock_irqrestore(&desc->lock, flags); | 276 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
277 | } | 277 | } |
278 | 278 | ||
279 | EXPORT_SYMBOL(vr41xx_enable_dsiuint); | 279 | EXPORT_SYMBOL(vr41xx_enable_dsiuint); |
@@ -283,9 +283,9 @@ void vr41xx_disable_dsiuint(uint16_t mask) | |||
283 | struct irq_desc *desc = irq_desc + DSIU_IRQ; | 283 | struct irq_desc *desc = irq_desc + DSIU_IRQ; |
284 | unsigned long flags; | 284 | unsigned long flags; |
285 | 285 | ||
286 | spin_lock_irqsave(&desc->lock, flags); | 286 | raw_spin_lock_irqsave(&desc->lock, flags); |
287 | icu1_clear(MDSIUINTREG, mask); | 287 | icu1_clear(MDSIUINTREG, mask); |
288 | spin_unlock_irqrestore(&desc->lock, flags); | 288 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
289 | } | 289 | } |
290 | 290 | ||
291 | EXPORT_SYMBOL(vr41xx_disable_dsiuint); | 291 | EXPORT_SYMBOL(vr41xx_disable_dsiuint); |
@@ -295,9 +295,9 @@ void vr41xx_enable_firint(uint16_t mask) | |||
295 | struct irq_desc *desc = irq_desc + FIR_IRQ; | 295 | struct irq_desc *desc = irq_desc + FIR_IRQ; |
296 | unsigned long flags; | 296 | unsigned long flags; |
297 | 297 | ||
298 | spin_lock_irqsave(&desc->lock, flags); | 298 | raw_spin_lock_irqsave(&desc->lock, flags); |
299 | icu2_set(MFIRINTREG, mask); | 299 | icu2_set(MFIRINTREG, mask); |
300 | spin_unlock_irqrestore(&desc->lock, flags); | 300 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
301 | } | 301 | } |
302 | 302 | ||
303 | EXPORT_SYMBOL(vr41xx_enable_firint); | 303 | EXPORT_SYMBOL(vr41xx_enable_firint); |
@@ -307,9 +307,9 @@ void vr41xx_disable_firint(uint16_t mask) | |||
307 | struct irq_desc *desc = irq_desc + FIR_IRQ; | 307 | struct irq_desc *desc = irq_desc + FIR_IRQ; |
308 | unsigned long flags; | 308 | unsigned long flags; |
309 | 309 | ||
310 | spin_lock_irqsave(&desc->lock, flags); | 310 | raw_spin_lock_irqsave(&desc->lock, flags); |
311 | icu2_clear(MFIRINTREG, mask); | 311 | icu2_clear(MFIRINTREG, mask); |
312 | spin_unlock_irqrestore(&desc->lock, flags); | 312 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
313 | } | 313 | } |
314 | 314 | ||
315 | EXPORT_SYMBOL(vr41xx_disable_firint); | 315 | EXPORT_SYMBOL(vr41xx_disable_firint); |
@@ -322,9 +322,9 @@ void vr41xx_enable_pciint(void) | |||
322 | if (current_cpu_type() == CPU_VR4122 || | 322 | if (current_cpu_type() == CPU_VR4122 || |
323 | current_cpu_type() == CPU_VR4131 || | 323 | current_cpu_type() == CPU_VR4131 || |
324 | current_cpu_type() == CPU_VR4133) { | 324 | current_cpu_type() == CPU_VR4133) { |
325 | spin_lock_irqsave(&desc->lock, flags); | 325 | raw_spin_lock_irqsave(&desc->lock, flags); |
326 | icu2_write(MPCIINTREG, PCIINT0); | 326 | icu2_write(MPCIINTREG, PCIINT0); |
327 | spin_unlock_irqrestore(&desc->lock, flags); | 327 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
328 | } | 328 | } |
329 | } | 329 | } |
330 | 330 | ||
@@ -338,9 +338,9 @@ void vr41xx_disable_pciint(void) | |||
338 | if (current_cpu_type() == CPU_VR4122 || | 338 | if (current_cpu_type() == CPU_VR4122 || |
339 | current_cpu_type() == CPU_VR4131 || | 339 | current_cpu_type() == CPU_VR4131 || |
340 | current_cpu_type() == CPU_VR4133) { | 340 | current_cpu_type() == CPU_VR4133) { |
341 | spin_lock_irqsave(&desc->lock, flags); | 341 | raw_spin_lock_irqsave(&desc->lock, flags); |
342 | icu2_write(MPCIINTREG, 0); | 342 | icu2_write(MPCIINTREG, 0); |
343 | spin_unlock_irqrestore(&desc->lock, flags); | 343 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
344 | } | 344 | } |
345 | } | 345 | } |
346 | 346 | ||
@@ -354,9 +354,9 @@ void vr41xx_enable_scuint(void) | |||
354 | if (current_cpu_type() == CPU_VR4122 || | 354 | if (current_cpu_type() == CPU_VR4122 || |
355 | current_cpu_type() == CPU_VR4131 || | 355 | current_cpu_type() == CPU_VR4131 || |
356 | current_cpu_type() == CPU_VR4133) { | 356 | current_cpu_type() == CPU_VR4133) { |
357 | spin_lock_irqsave(&desc->lock, flags); | 357 | raw_spin_lock_irqsave(&desc->lock, flags); |
358 | icu2_write(MSCUINTREG, SCUINT0); | 358 | icu2_write(MSCUINTREG, SCUINT0); |
359 | spin_unlock_irqrestore(&desc->lock, flags); | 359 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
360 | } | 360 | } |
361 | } | 361 | } |
362 | 362 | ||
@@ -370,9 +370,9 @@ void vr41xx_disable_scuint(void) | |||
370 | if (current_cpu_type() == CPU_VR4122 || | 370 | if (current_cpu_type() == CPU_VR4122 || |
371 | current_cpu_type() == CPU_VR4131 || | 371 | current_cpu_type() == CPU_VR4131 || |
372 | current_cpu_type() == CPU_VR4133) { | 372 | current_cpu_type() == CPU_VR4133) { |
373 | spin_lock_irqsave(&desc->lock, flags); | 373 | raw_spin_lock_irqsave(&desc->lock, flags); |
374 | icu2_write(MSCUINTREG, 0); | 374 | icu2_write(MSCUINTREG, 0); |
375 | spin_unlock_irqrestore(&desc->lock, flags); | 375 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
376 | } | 376 | } |
377 | } | 377 | } |
378 | 378 | ||
@@ -386,9 +386,9 @@ void vr41xx_enable_csiint(uint16_t mask) | |||
386 | if (current_cpu_type() == CPU_VR4122 || | 386 | if (current_cpu_type() == CPU_VR4122 || |
387 | current_cpu_type() == CPU_VR4131 || | 387 | current_cpu_type() == CPU_VR4131 || |
388 | current_cpu_type() == CPU_VR4133) { | 388 | current_cpu_type() == CPU_VR4133) { |
389 | spin_lock_irqsave(&desc->lock, flags); | 389 | raw_spin_lock_irqsave(&desc->lock, flags); |
390 | icu2_set(MCSIINTREG, mask); | 390 | icu2_set(MCSIINTREG, mask); |
391 | spin_unlock_irqrestore(&desc->lock, flags); | 391 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
392 | } | 392 | } |
393 | } | 393 | } |
394 | 394 | ||
@@ -402,9 +402,9 @@ void vr41xx_disable_csiint(uint16_t mask) | |||
402 | if (current_cpu_type() == CPU_VR4122 || | 402 | if (current_cpu_type() == CPU_VR4122 || |
403 | current_cpu_type() == CPU_VR4131 || | 403 | current_cpu_type() == CPU_VR4131 || |
404 | current_cpu_type() == CPU_VR4133) { | 404 | current_cpu_type() == CPU_VR4133) { |
405 | spin_lock_irqsave(&desc->lock, flags); | 405 | raw_spin_lock_irqsave(&desc->lock, flags); |
406 | icu2_clear(MCSIINTREG, mask); | 406 | icu2_clear(MCSIINTREG, mask); |
407 | spin_unlock_irqrestore(&desc->lock, flags); | 407 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
408 | } | 408 | } |
409 | } | 409 | } |
410 | 410 | ||
@@ -418,9 +418,9 @@ void vr41xx_enable_bcuint(void) | |||
418 | if (current_cpu_type() == CPU_VR4122 || | 418 | if (current_cpu_type() == CPU_VR4122 || |
419 | current_cpu_type() == CPU_VR4131 || | 419 | current_cpu_type() == CPU_VR4131 || |
420 | current_cpu_type() == CPU_VR4133) { | 420 | current_cpu_type() == CPU_VR4133) { |
421 | spin_lock_irqsave(&desc->lock, flags); | 421 | raw_spin_lock_irqsave(&desc->lock, flags); |
422 | icu2_write(MBCUINTREG, BCUINTR); | 422 | icu2_write(MBCUINTREG, BCUINTR); |
423 | spin_unlock_irqrestore(&desc->lock, flags); | 423 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
424 | } | 424 | } |
425 | } | 425 | } |
426 | 426 | ||
@@ -434,9 +434,9 @@ void vr41xx_disable_bcuint(void) | |||
434 | if (current_cpu_type() == CPU_VR4122 || | 434 | if (current_cpu_type() == CPU_VR4122 || |
435 | current_cpu_type() == CPU_VR4131 || | 435 | current_cpu_type() == CPU_VR4131 || |
436 | current_cpu_type() == CPU_VR4133) { | 436 | current_cpu_type() == CPU_VR4133) { |
437 | spin_lock_irqsave(&desc->lock, flags); | 437 | raw_spin_lock_irqsave(&desc->lock, flags); |
438 | icu2_write(MBCUINTREG, 0); | 438 | icu2_write(MBCUINTREG, 0); |
439 | spin_unlock_irqrestore(&desc->lock, flags); | 439 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
440 | } | 440 | } |
441 | } | 441 | } |
442 | 442 | ||
@@ -486,7 +486,7 @@ static inline int set_sysint1_assign(unsigned int irq, unsigned char assign) | |||
486 | 486 | ||
487 | pin = SYSINT1_IRQ_TO_PIN(irq); | 487 | pin = SYSINT1_IRQ_TO_PIN(irq); |
488 | 488 | ||
489 | spin_lock_irq(&desc->lock); | 489 | raw_spin_lock_irq(&desc->lock); |
490 | 490 | ||
491 | intassign0 = icu1_read(INTASSIGN0); | 491 | intassign0 = icu1_read(INTASSIGN0); |
492 | intassign1 = icu1_read(INTASSIGN1); | 492 | intassign1 = icu1_read(INTASSIGN1); |
@@ -525,7 +525,7 @@ static inline int set_sysint1_assign(unsigned int irq, unsigned char assign) | |||
525 | intassign1 |= (uint16_t)assign << 9; | 525 | intassign1 |= (uint16_t)assign << 9; |
526 | break; | 526 | break; |
527 | default: | 527 | default: |
528 | spin_unlock_irq(&desc->lock); | 528 | raw_spin_unlock_irq(&desc->lock); |
529 | return -EINVAL; | 529 | return -EINVAL; |
530 | } | 530 | } |
531 | 531 | ||
@@ -533,7 +533,7 @@ static inline int set_sysint1_assign(unsigned int irq, unsigned char assign) | |||
533 | icu1_write(INTASSIGN0, intassign0); | 533 | icu1_write(INTASSIGN0, intassign0); |
534 | icu1_write(INTASSIGN1, intassign1); | 534 | icu1_write(INTASSIGN1, intassign1); |
535 | 535 | ||
536 | spin_unlock_irq(&desc->lock); | 536 | raw_spin_unlock_irq(&desc->lock); |
537 | 537 | ||
538 | return 0; | 538 | return 0; |
539 | } | 539 | } |
@@ -546,7 +546,7 @@ static inline int set_sysint2_assign(unsigned int irq, unsigned char assign) | |||
546 | 546 | ||
547 | pin = SYSINT2_IRQ_TO_PIN(irq); | 547 | pin = SYSINT2_IRQ_TO_PIN(irq); |
548 | 548 | ||
549 | spin_lock_irq(&desc->lock); | 549 | raw_spin_lock_irq(&desc->lock); |
550 | 550 | ||
551 | intassign2 = icu1_read(INTASSIGN2); | 551 | intassign2 = icu1_read(INTASSIGN2); |
552 | intassign3 = icu1_read(INTASSIGN3); | 552 | intassign3 = icu1_read(INTASSIGN3); |
@@ -593,7 +593,7 @@ static inline int set_sysint2_assign(unsigned int irq, unsigned char assign) | |||
593 | intassign3 |= (uint16_t)assign << 12; | 593 | intassign3 |= (uint16_t)assign << 12; |
594 | break; | 594 | break; |
595 | default: | 595 | default: |
596 | spin_unlock_irq(&desc->lock); | 596 | raw_spin_unlock_irq(&desc->lock); |
597 | return -EINVAL; | 597 | return -EINVAL; |
598 | } | 598 | } |
599 | 599 | ||
@@ -601,7 +601,7 @@ static inline int set_sysint2_assign(unsigned int irq, unsigned char assign) | |||
601 | icu1_write(INTASSIGN2, intassign2); | 601 | icu1_write(INTASSIGN2, intassign2); |
602 | icu1_write(INTASSIGN3, intassign3); | 602 | icu1_write(INTASSIGN3, intassign3); |
603 | 603 | ||
604 | spin_unlock_irq(&desc->lock); | 604 | raw_spin_unlock_irq(&desc->lock); |
605 | 605 | ||
606 | return 0; | 606 | return 0; |
607 | } | 607 | } |
diff --git a/arch/mips/vr41xx/common/init.c b/arch/mips/vr41xx/common/init.c index 1386e6f081c8..23916321cc1b 100644 --- a/arch/mips/vr41xx/common/init.c +++ b/arch/mips/vr41xx/common/init.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * init.c, Common initialization routines for NEC VR4100 series. | 2 | * init.c, Common initialization routines for NEC VR4100 series. |
3 | * | 3 | * |
4 | * Copyright (C) 2003-2008 Yoichi Yuasa <yuasa@linux-mips.org> | 4 | * Copyright (C) 2003-2009 Yoichi Yuasa <yuasa@linux-mips.org> |
5 | * | 5 | * |
6 | * This program is free software; you can redistribute it and/or modify | 6 | * This program is free software; you can redistribute it and/or modify |
7 | * it under the terms of the GNU General Public License as published by | 7 | * it under the terms of the GNU General Public License as published by |
@@ -66,9 +66,9 @@ void __init prom_init(void) | |||
66 | argv = (char **)fw_arg1; | 66 | argv = (char **)fw_arg1; |
67 | 67 | ||
68 | for (i = 1; i < argc; i++) { | 68 | for (i = 1; i < argc; i++) { |
69 | strcat(arcs_cmdline, argv[i]); | 69 | strlcat(arcs_cmdline, argv[i], COMMAND_LINE_SIZE); |
70 | if (i < (argc - 1)) | 70 | if (i < (argc - 1)) |
71 | strcat(arcs_cmdline, " "); | 71 | strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE); |
72 | } | 72 | } |
73 | } | 73 | } |
74 | 74 | ||