diff options
author | Dave Jones <davej@redhat.com> | 2005-11-29 15:48:34 -0500 |
---|---|---|
committer | Dave Jones <davej@redhat.com> | 2005-11-29 15:48:34 -0500 |
commit | be37bdbce7ceaacf4f20c6cc759efbe75ebd1196 (patch) | |
tree | f1a42fb5a4a17eea41d47d2c002fa303009f5523 /arch | |
parent | 019a61b99338d0ac05de25317b85da88e7ec4b35 (diff) | |
parent | d70aa5e4b54aa7e704c886838715ac8a45d5750f (diff) |
Merge ../linus
Diffstat (limited to 'arch')
54 files changed, 355 insertions, 1220 deletions
diff --git a/arch/arm/configs/corgi_defconfig b/arch/arm/configs/corgi_defconfig index 24987c89609a..06229026f78b 100644 --- a/arch/arm/configs/corgi_defconfig +++ b/arch/arm/configs/corgi_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.14-rc3 | 3 | # Linux kernel version: 2.6.15-rc2 |
4 | # Sun Oct 9 15:46:42 2005 | 4 | # Mon Nov 28 10:30:09 2005 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
@@ -64,6 +64,23 @@ CONFIG_OBSOLETE_MODPARM=y | |||
64 | CONFIG_KMOD=y | 64 | CONFIG_KMOD=y |
65 | 65 | ||
66 | # | 66 | # |
67 | # Block layer | ||
68 | # | ||
69 | |||
70 | # | ||
71 | # IO Schedulers | ||
72 | # | ||
73 | CONFIG_IOSCHED_NOOP=y | ||
74 | CONFIG_IOSCHED_AS=y | ||
75 | CONFIG_IOSCHED_DEADLINE=y | ||
76 | CONFIG_IOSCHED_CFQ=y | ||
77 | CONFIG_DEFAULT_AS=y | ||
78 | # CONFIG_DEFAULT_DEADLINE is not set | ||
79 | # CONFIG_DEFAULT_CFQ is not set | ||
80 | # CONFIG_DEFAULT_NOOP is not set | ||
81 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
82 | |||
83 | # | ||
67 | # System Type | 84 | # System Type |
68 | # | 85 | # |
69 | # CONFIG_ARCH_CLPS7500 is not set | 86 | # CONFIG_ARCH_CLPS7500 is not set |
@@ -85,6 +102,7 @@ CONFIG_ARCH_PXA=y | |||
85 | # CONFIG_ARCH_LH7A40X is not set | 102 | # CONFIG_ARCH_LH7A40X is not set |
86 | # CONFIG_ARCH_OMAP is not set | 103 | # CONFIG_ARCH_OMAP is not set |
87 | # CONFIG_ARCH_VERSATILE is not set | 104 | # CONFIG_ARCH_VERSATILE is not set |
105 | # CONFIG_ARCH_REALVIEW is not set | ||
88 | # CONFIG_ARCH_IMX is not set | 106 | # CONFIG_ARCH_IMX is not set |
89 | # CONFIG_ARCH_H720X is not set | 107 | # CONFIG_ARCH_H720X is not set |
90 | # CONFIG_ARCH_AAEC2000 is not set | 108 | # CONFIG_ARCH_AAEC2000 is not set |
@@ -98,12 +116,14 @@ CONFIG_ARCH_PXA=y | |||
98 | CONFIG_PXA_SHARPSL=y | 116 | CONFIG_PXA_SHARPSL=y |
99 | CONFIG_PXA_SHARPSL_25x=y | 117 | CONFIG_PXA_SHARPSL_25x=y |
100 | # CONFIG_PXA_SHARPSL_27x is not set | 118 | # CONFIG_PXA_SHARPSL_27x is not set |
101 | # CONFIG_MACH_POODLE is not set | 119 | CONFIG_MACH_POODLE=y |
102 | CONFIG_MACH_CORGI=y | 120 | CONFIG_MACH_CORGI=y |
103 | CONFIG_MACH_SHEPHERD=y | 121 | CONFIG_MACH_SHEPHERD=y |
104 | CONFIG_MACH_HUSKY=y | 122 | CONFIG_MACH_HUSKY=y |
123 | CONFIG_MACH_TOSA=y | ||
105 | CONFIG_PXA25x=y | 124 | CONFIG_PXA25x=y |
106 | CONFIG_PXA_SHARP_C7xx=y | 125 | CONFIG_PXA_SHARP_C7xx=y |
126 | CONFIG_PXA_SSP=y | ||
107 | 127 | ||
108 | # | 128 | # |
109 | # Processor Type | 129 | # Processor Type |
@@ -155,6 +175,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
155 | CONFIG_FLATMEM=y | 175 | CONFIG_FLATMEM=y |
156 | CONFIG_FLAT_NODE_MEM_MAP=y | 176 | CONFIG_FLAT_NODE_MEM_MAP=y |
157 | # CONFIG_SPARSEMEM_STATIC is not set | 177 | # CONFIG_SPARSEMEM_STATIC is not set |
178 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | ||
158 | CONFIG_ALIGNMENT_TRAP=y | 179 | CONFIG_ALIGNMENT_TRAP=y |
159 | 180 | ||
160 | # | 181 | # |
@@ -235,6 +256,10 @@ CONFIG_INET6_TUNNEL=m | |||
235 | CONFIG_IPV6_TUNNEL=m | 256 | CONFIG_IPV6_TUNNEL=m |
236 | CONFIG_NETFILTER=y | 257 | CONFIG_NETFILTER=y |
237 | # CONFIG_NETFILTER_DEBUG is not set | 258 | # CONFIG_NETFILTER_DEBUG is not set |
259 | |||
260 | # | ||
261 | # Core Netfilter Configuration | ||
262 | # | ||
238 | # CONFIG_NETFILTER_NETLINK is not set | 263 | # CONFIG_NETFILTER_NETLINK is not set |
239 | 264 | ||
240 | # | 265 | # |
@@ -356,6 +381,10 @@ CONFIG_IP6_NF_RAW=m | |||
356 | # CONFIG_NET_DIVERT is not set | 381 | # CONFIG_NET_DIVERT is not set |
357 | # CONFIG_ECONET is not set | 382 | # CONFIG_ECONET is not set |
358 | # CONFIG_WAN_ROUTER is not set | 383 | # CONFIG_WAN_ROUTER is not set |
384 | |||
385 | # | ||
386 | # QoS and/or fair queueing | ||
387 | # | ||
359 | # CONFIG_NET_SCHED is not set | 388 | # CONFIG_NET_SCHED is not set |
360 | CONFIG_NET_CLS_ROUTE=y | 389 | CONFIG_NET_CLS_ROUTE=y |
361 | 390 | ||
@@ -413,6 +442,7 @@ CONFIG_IRCOMM=m | |||
413 | # CONFIG_SMC_IRCC_FIR is not set | 442 | # CONFIG_SMC_IRCC_FIR is not set |
414 | # CONFIG_ALI_FIR is not set | 443 | # CONFIG_ALI_FIR is not set |
415 | # CONFIG_VIA_FIR is not set | 444 | # CONFIG_VIA_FIR is not set |
445 | CONFIG_PXA_FICP=m | ||
416 | CONFIG_BT=m | 446 | CONFIG_BT=m |
417 | CONFIG_BT_L2CAP=m | 447 | CONFIG_BT_L2CAP=m |
418 | CONFIG_BT_SCO=m | 448 | CONFIG_BT_SCO=m |
@@ -431,7 +461,6 @@ CONFIG_BT_HCIUSB=m | |||
431 | CONFIG_BT_HCIUART=m | 461 | CONFIG_BT_HCIUART=m |
432 | CONFIG_BT_HCIUART_H4=y | 462 | CONFIG_BT_HCIUART_H4=y |
433 | CONFIG_BT_HCIUART_BCSP=y | 463 | CONFIG_BT_HCIUART_BCSP=y |
434 | CONFIG_BT_HCIUART_BCSP_TXCRC=y | ||
435 | CONFIG_BT_HCIBCM203X=m | 464 | CONFIG_BT_HCIBCM203X=m |
436 | CONFIG_BT_HCIBPA10X=m | 465 | CONFIG_BT_HCIBPA10X=m |
437 | CONFIG_BT_HCIBFUSB=m | 466 | CONFIG_BT_HCIBFUSB=m |
@@ -459,6 +488,11 @@ CONFIG_FW_LOADER=y | |||
459 | # CONFIG_DEBUG_DRIVER is not set | 488 | # CONFIG_DEBUG_DRIVER is not set |
460 | 489 | ||
461 | # | 490 | # |
491 | # Connector - unified userspace <-> kernelspace linker | ||
492 | # | ||
493 | # CONFIG_CONNECTOR is not set | ||
494 | |||
495 | # | ||
462 | # Memory Technology Devices (MTD) | 496 | # Memory Technology Devices (MTD) |
463 | # | 497 | # |
464 | CONFIG_MTD=y | 498 | CONFIG_MTD=y |
@@ -477,6 +511,7 @@ CONFIG_MTD_BLOCK=y | |||
477 | # CONFIG_FTL is not set | 511 | # CONFIG_FTL is not set |
478 | # CONFIG_NFTL is not set | 512 | # CONFIG_NFTL is not set |
479 | # CONFIG_INFTL is not set | 513 | # CONFIG_INFTL is not set |
514 | # CONFIG_RFD_FTL is not set | ||
480 | 515 | ||
481 | # | 516 | # |
482 | # RAM/ROM/Flash chip drivers | 517 | # RAM/ROM/Flash chip drivers |
@@ -532,6 +567,11 @@ CONFIG_MTD_NAND_SHARPSL=y | |||
532 | # CONFIG_MTD_NAND_NANDSIM is not set | 567 | # CONFIG_MTD_NAND_NANDSIM is not set |
533 | 568 | ||
534 | # | 569 | # |
570 | # OneNAND Flash Device Drivers | ||
571 | # | ||
572 | # CONFIG_MTD_ONENAND is not set | ||
573 | |||
574 | # | ||
535 | # Parallel port support | 575 | # Parallel port support |
536 | # | 576 | # |
537 | # CONFIG_PARPORT is not set | 577 | # CONFIG_PARPORT is not set |
@@ -551,14 +591,6 @@ CONFIG_BLK_DEV_LOOP=y | |||
551 | # CONFIG_BLK_DEV_RAM is not set | 591 | # CONFIG_BLK_DEV_RAM is not set |
552 | CONFIG_BLK_DEV_RAM_COUNT=16 | 592 | CONFIG_BLK_DEV_RAM_COUNT=16 |
553 | # CONFIG_CDROM_PKTCDVD is not set | 593 | # CONFIG_CDROM_PKTCDVD is not set |
554 | |||
555 | # | ||
556 | # IO Schedulers | ||
557 | # | ||
558 | CONFIG_IOSCHED_NOOP=y | ||
559 | CONFIG_IOSCHED_AS=y | ||
560 | CONFIG_IOSCHED_DEADLINE=y | ||
561 | CONFIG_IOSCHED_CFQ=y | ||
562 | # CONFIG_ATA_OVER_ETH is not set | 594 | # CONFIG_ATA_OVER_ETH is not set |
563 | 595 | ||
564 | # | 596 | # |
@@ -625,6 +657,7 @@ CONFIG_SCSI_MULTI_LUN=y | |||
625 | # | 657 | # |
626 | # SCSI low-level drivers | 658 | # SCSI low-level drivers |
627 | # | 659 | # |
660 | # CONFIG_ISCSI_TCP is not set | ||
628 | # CONFIG_SCSI_SATA is not set | 661 | # CONFIG_SCSI_SATA is not set |
629 | # CONFIG_SCSI_DEBUG is not set | 662 | # CONFIG_SCSI_DEBUG is not set |
630 | 663 | ||
@@ -748,6 +781,7 @@ CONFIG_PPP_ASYNC=m | |||
748 | # CONFIG_PPP_SYNC_TTY is not set | 781 | # CONFIG_PPP_SYNC_TTY is not set |
749 | # CONFIG_PPP_DEFLATE is not set | 782 | # CONFIG_PPP_DEFLATE is not set |
750 | CONFIG_PPP_BSDCOMP=m | 783 | CONFIG_PPP_BSDCOMP=m |
784 | # CONFIG_PPP_MPPE is not set | ||
751 | # CONFIG_PPPOE is not set | 785 | # CONFIG_PPPOE is not set |
752 | # CONFIG_SLIP is not set | 786 | # CONFIG_SLIP is not set |
753 | # CONFIG_SHAPER is not set | 787 | # CONFIG_SHAPER is not set |
@@ -850,11 +884,15 @@ CONFIG_UNIX98_PTYS=y | |||
850 | # PCMCIA character devices | 884 | # PCMCIA character devices |
851 | # | 885 | # |
852 | # CONFIG_SYNCLINK_CS is not set | 886 | # CONFIG_SYNCLINK_CS is not set |
887 | # CONFIG_CARDMAN_4000 is not set | ||
888 | # CONFIG_CARDMAN_4040 is not set | ||
853 | # CONFIG_RAW_DRIVER is not set | 889 | # CONFIG_RAW_DRIVER is not set |
854 | 890 | ||
855 | # | 891 | # |
856 | # TPM devices | 892 | # TPM devices |
857 | # | 893 | # |
894 | # CONFIG_TCG_TPM is not set | ||
895 | # CONFIG_TELCLOCK is not set | ||
858 | 896 | ||
859 | # | 897 | # |
860 | # I2C support | 898 | # I2C support |
@@ -889,6 +927,7 @@ CONFIG_I2C_PXA=y | |||
889 | # CONFIG_SENSORS_PCF8591 is not set | 927 | # CONFIG_SENSORS_PCF8591 is not set |
890 | # CONFIG_SENSORS_RTC8564 is not set | 928 | # CONFIG_SENSORS_RTC8564 is not set |
891 | # CONFIG_SENSORS_MAX6875 is not set | 929 | # CONFIG_SENSORS_MAX6875 is not set |
930 | # CONFIG_RTC_X1205_I2C is not set | ||
892 | # CONFIG_I2C_DEBUG_CORE is not set | 931 | # CONFIG_I2C_DEBUG_CORE is not set |
893 | # CONFIG_I2C_DEBUG_ALGO is not set | 932 | # CONFIG_I2C_DEBUG_ALGO is not set |
894 | # CONFIG_I2C_DEBUG_BUS is not set | 933 | # CONFIG_I2C_DEBUG_BUS is not set |
@@ -957,7 +996,10 @@ CONFIG_VIDEO_DEV=m | |||
957 | # CONFIG_VIDEO_SAA5246A is not set | 996 | # CONFIG_VIDEO_SAA5246A is not set |
958 | # CONFIG_VIDEO_SAA5249 is not set | 997 | # CONFIG_VIDEO_SAA5249 is not set |
959 | # CONFIG_TUNER_3036 is not set | 998 | # CONFIG_TUNER_3036 is not set |
999 | # CONFIG_VIDEO_EM28XX is not set | ||
960 | # CONFIG_VIDEO_OVCAMCHIP is not set | 1000 | # CONFIG_VIDEO_OVCAMCHIP is not set |
1001 | # CONFIG_VIDEO_AUDIO_DECODER is not set | ||
1002 | # CONFIG_VIDEO_DECODER is not set | ||
961 | 1003 | ||
962 | # | 1004 | # |
963 | # Radio Adapters | 1005 | # Radio Adapters |
@@ -976,13 +1018,12 @@ CONFIG_FB=y | |||
976 | CONFIG_FB_CFB_FILLRECT=y | 1018 | CONFIG_FB_CFB_FILLRECT=y |
977 | CONFIG_FB_CFB_COPYAREA=y | 1019 | CONFIG_FB_CFB_COPYAREA=y |
978 | CONFIG_FB_CFB_IMAGEBLIT=y | 1020 | CONFIG_FB_CFB_IMAGEBLIT=y |
979 | CONFIG_FB_SOFT_CURSOR=y | ||
980 | # CONFIG_FB_MACMODES is not set | 1021 | # CONFIG_FB_MACMODES is not set |
981 | # CONFIG_FB_MODE_HELPERS is not set | 1022 | # CONFIG_FB_MODE_HELPERS is not set |
982 | # CONFIG_FB_TILEBLITTING is not set | 1023 | # CONFIG_FB_TILEBLITTING is not set |
1024 | # CONFIG_FB_S1D13XXX is not set | ||
983 | # CONFIG_FB_PXA is not set | 1025 | # CONFIG_FB_PXA is not set |
984 | CONFIG_FB_W100=y | 1026 | CONFIG_FB_W100=y |
985 | # CONFIG_FB_S1D13XXX is not set | ||
986 | # CONFIG_FB_VIRTUAL is not set | 1027 | # CONFIG_FB_VIRTUAL is not set |
987 | 1028 | ||
988 | # | 1029 | # |
@@ -991,6 +1032,7 @@ CONFIG_FB_W100=y | |||
991 | # CONFIG_VGA_CONSOLE is not set | 1032 | # CONFIG_VGA_CONSOLE is not set |
992 | CONFIG_DUMMY_CONSOLE=y | 1033 | CONFIG_DUMMY_CONSOLE=y |
993 | CONFIG_FRAMEBUFFER_CONSOLE=y | 1034 | CONFIG_FRAMEBUFFER_CONSOLE=y |
1035 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
994 | CONFIG_FONTS=y | 1036 | CONFIG_FONTS=y |
995 | CONFIG_FONT_8x8=y | 1037 | CONFIG_FONT_8x8=y |
996 | CONFIG_FONT_8x16=y | 1038 | CONFIG_FONT_8x16=y |
@@ -1087,15 +1129,15 @@ CONFIG_USB_SL811_CS=m | |||
1087 | # USB Device Class drivers | 1129 | # USB Device Class drivers |
1088 | # | 1130 | # |
1089 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set | 1131 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set |
1132 | CONFIG_USB_ACM=m | ||
1133 | CONFIG_USB_PRINTER=m | ||
1090 | 1134 | ||
1091 | # | 1135 | # |
1092 | # USB Bluetooth TTY can only be used with disabled Bluetooth subsystem | 1136 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
1093 | # | 1137 | # |
1094 | CONFIG_USB_ACM=m | ||
1095 | CONFIG_USB_PRINTER=m | ||
1096 | 1138 | ||
1097 | # | 1139 | # |
1098 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 1140 | # may also be needed; see USB_STORAGE Help for more information |
1099 | # | 1141 | # |
1100 | CONFIG_USB_STORAGE=m | 1142 | CONFIG_USB_STORAGE=m |
1101 | # CONFIG_USB_STORAGE_DEBUG is not set | 1143 | # CONFIG_USB_STORAGE_DEBUG is not set |
@@ -1107,7 +1149,6 @@ CONFIG_USB_STORAGE=m | |||
1107 | # CONFIG_USB_STORAGE_SDDR09 is not set | 1149 | # CONFIG_USB_STORAGE_SDDR09 is not set |
1108 | # CONFIG_USB_STORAGE_SDDR55 is not set | 1150 | # CONFIG_USB_STORAGE_SDDR55 is not set |
1109 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 1151 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
1110 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
1111 | 1152 | ||
1112 | # | 1153 | # |
1113 | # USB Input Devices | 1154 | # USB Input Devices |
@@ -1185,6 +1226,7 @@ CONFIG_USB_MON=y | |||
1185 | CONFIG_USB_SERIAL=m | 1226 | CONFIG_USB_SERIAL=m |
1186 | CONFIG_USB_SERIAL_GENERIC=y | 1227 | CONFIG_USB_SERIAL_GENERIC=y |
1187 | # CONFIG_USB_SERIAL_AIRPRIME is not set | 1228 | # CONFIG_USB_SERIAL_AIRPRIME is not set |
1229 | # CONFIG_USB_SERIAL_ANYDATA is not set | ||
1188 | CONFIG_USB_SERIAL_BELKIN=m | 1230 | CONFIG_USB_SERIAL_BELKIN=m |
1189 | # CONFIG_USB_SERIAL_WHITEHEAT is not set | 1231 | # CONFIG_USB_SERIAL_WHITEHEAT is not set |
1190 | CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m | 1232 | CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m |
@@ -1340,6 +1382,7 @@ CONFIG_RAMFS=y | |||
1340 | CONFIG_JFFS2_FS=y | 1382 | CONFIG_JFFS2_FS=y |
1341 | CONFIG_JFFS2_FS_DEBUG=0 | 1383 | CONFIG_JFFS2_FS_DEBUG=0 |
1342 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 1384 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
1385 | CONFIG_JFFS2_SUMMARY=y | ||
1343 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | 1386 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y |
1344 | CONFIG_JFFS2_ZLIB=y | 1387 | CONFIG_JFFS2_ZLIB=y |
1345 | CONFIG_JFFS2_RTIME=y | 1388 | CONFIG_JFFS2_RTIME=y |
@@ -1466,7 +1509,9 @@ CONFIG_DETECT_SOFTLOCKUP=y | |||
1466 | CONFIG_DEBUG_BUGVERBOSE=y | 1509 | CONFIG_DEBUG_BUGVERBOSE=y |
1467 | # CONFIG_DEBUG_INFO is not set | 1510 | # CONFIG_DEBUG_INFO is not set |
1468 | # CONFIG_DEBUG_FS is not set | 1511 | # CONFIG_DEBUG_FS is not set |
1512 | # CONFIG_DEBUG_VM is not set | ||
1469 | CONFIG_FRAME_POINTER=y | 1513 | CONFIG_FRAME_POINTER=y |
1514 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1470 | # CONFIG_DEBUG_USER is not set | 1515 | # CONFIG_DEBUG_USER is not set |
1471 | # CONFIG_DEBUG_WAITQ is not set | 1516 | # CONFIG_DEBUG_WAITQ is not set |
1472 | CONFIG_DEBUG_ERRORS=y | 1517 | CONFIG_DEBUG_ERRORS=y |
diff --git a/arch/arm/configs/poodle_defconfig b/arch/arm/configs/poodle_defconfig deleted file mode 100644 index 72822907759f..000000000000 --- a/arch/arm/configs/poodle_defconfig +++ /dev/null | |||
@@ -1,1015 +0,0 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.14-rc3 | ||
4 | # Sun Oct 9 17:04:29 2005 | ||
5 | # | ||
6 | CONFIG_ARM=y | ||
7 | CONFIG_MMU=y | ||
8 | CONFIG_UID16=y | ||
9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
10 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
11 | |||
12 | # | ||
13 | # Code maturity level options | ||
14 | # | ||
15 | CONFIG_EXPERIMENTAL=y | ||
16 | CONFIG_CLEAN_COMPILE=y | ||
17 | CONFIG_BROKEN_ON_SMP=y | ||
18 | CONFIG_LOCK_KERNEL=y | ||
19 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
20 | |||
21 | # | ||
22 | # General setup | ||
23 | # | ||
24 | CONFIG_LOCALVERSION="" | ||
25 | CONFIG_LOCALVERSION_AUTO=y | ||
26 | CONFIG_SWAP=y | ||
27 | CONFIG_SYSVIPC=y | ||
28 | # CONFIG_POSIX_MQUEUE is not set | ||
29 | CONFIG_BSD_PROCESS_ACCT=y | ||
30 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | ||
31 | CONFIG_SYSCTL=y | ||
32 | # CONFIG_AUDIT is not set | ||
33 | CONFIG_HOTPLUG=y | ||
34 | CONFIG_KOBJECT_UEVENT=y | ||
35 | # CONFIG_IKCONFIG is not set | ||
36 | CONFIG_INITRAMFS_SOURCE="" | ||
37 | CONFIG_EMBEDDED=y | ||
38 | CONFIG_KALLSYMS=y | ||
39 | # CONFIG_KALLSYMS_ALL is not set | ||
40 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
41 | CONFIG_PRINTK=y | ||
42 | CONFIG_BUG=y | ||
43 | CONFIG_BASE_FULL=y | ||
44 | CONFIG_FUTEX=y | ||
45 | CONFIG_EPOLL=y | ||
46 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
47 | CONFIG_SHMEM=y | ||
48 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
49 | CONFIG_CC_ALIGN_LABELS=0 | ||
50 | CONFIG_CC_ALIGN_LOOPS=0 | ||
51 | CONFIG_CC_ALIGN_JUMPS=0 | ||
52 | # CONFIG_TINY_SHMEM is not set | ||
53 | CONFIG_BASE_SMALL=0 | ||
54 | |||
55 | # | ||
56 | # Loadable module support | ||
57 | # | ||
58 | CONFIG_MODULES=y | ||
59 | CONFIG_MODULE_UNLOAD=y | ||
60 | CONFIG_MODULE_FORCE_UNLOAD=y | ||
61 | CONFIG_OBSOLETE_MODPARM=y | ||
62 | CONFIG_MODVERSIONS=y | ||
63 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
64 | CONFIG_KMOD=y | ||
65 | |||
66 | # | ||
67 | # System Type | ||
68 | # | ||
69 | # CONFIG_ARCH_CLPS7500 is not set | ||
70 | # CONFIG_ARCH_CLPS711X is not set | ||
71 | # CONFIG_ARCH_CO285 is not set | ||
72 | # CONFIG_ARCH_EBSA110 is not set | ||
73 | # CONFIG_ARCH_CAMELOT is not set | ||
74 | # CONFIG_ARCH_FOOTBRIDGE is not set | ||
75 | # CONFIG_ARCH_INTEGRATOR is not set | ||
76 | # CONFIG_ARCH_IOP3XX is not set | ||
77 | # CONFIG_ARCH_IXP4XX is not set | ||
78 | # CONFIG_ARCH_IXP2000 is not set | ||
79 | # CONFIG_ARCH_L7200 is not set | ||
80 | CONFIG_ARCH_PXA=y | ||
81 | # CONFIG_ARCH_RPC is not set | ||
82 | # CONFIG_ARCH_SA1100 is not set | ||
83 | # CONFIG_ARCH_S3C2410 is not set | ||
84 | # CONFIG_ARCH_SHARK is not set | ||
85 | # CONFIG_ARCH_LH7A40X is not set | ||
86 | # CONFIG_ARCH_OMAP is not set | ||
87 | # CONFIG_ARCH_VERSATILE is not set | ||
88 | # CONFIG_ARCH_IMX is not set | ||
89 | # CONFIG_ARCH_H720X is not set | ||
90 | # CONFIG_ARCH_AAEC2000 is not set | ||
91 | |||
92 | # | ||
93 | # Intel PXA2xx Implementations | ||
94 | # | ||
95 | # CONFIG_ARCH_LUBBOCK is not set | ||
96 | # CONFIG_MACH_MAINSTONE is not set | ||
97 | # CONFIG_ARCH_PXA_IDP is not set | ||
98 | CONFIG_PXA_SHARPSL=y | ||
99 | CONFIG_PXA_SHARPSL_25x=y | ||
100 | # CONFIG_PXA_SHARPSL_27x is not set | ||
101 | CONFIG_MACH_POODLE=y | ||
102 | # CONFIG_MACH_CORGI is not set | ||
103 | # CONFIG_MACH_SHEPHERD is not set | ||
104 | # CONFIG_MACH_HUSKY is not set | ||
105 | CONFIG_PXA25x=y | ||
106 | |||
107 | # | ||
108 | # Processor Type | ||
109 | # | ||
110 | CONFIG_CPU_32=y | ||
111 | CONFIG_CPU_XSCALE=y | ||
112 | CONFIG_CPU_32v5=y | ||
113 | CONFIG_CPU_ABRT_EV5T=y | ||
114 | CONFIG_CPU_CACHE_VIVT=y | ||
115 | CONFIG_CPU_TLB_V4WBI=y | ||
116 | |||
117 | # | ||
118 | # Processor Features | ||
119 | # | ||
120 | CONFIG_ARM_THUMB=y | ||
121 | CONFIG_XSCALE_PMU=y | ||
122 | CONFIG_SHARP_LOCOMO=y | ||
123 | CONFIG_SHARP_PARAM=y | ||
124 | CONFIG_SHARP_SCOOP=y | ||
125 | |||
126 | # | ||
127 | # Bus support | ||
128 | # | ||
129 | CONFIG_ISA_DMA_API=y | ||
130 | |||
131 | # | ||
132 | # PCCARD (PCMCIA/CardBus) support | ||
133 | # | ||
134 | CONFIG_PCCARD=y | ||
135 | # CONFIG_PCMCIA_DEBUG is not set | ||
136 | CONFIG_PCMCIA=y | ||
137 | CONFIG_PCMCIA_LOAD_CIS=y | ||
138 | CONFIG_PCMCIA_IOCTL=y | ||
139 | |||
140 | # | ||
141 | # PC-card bridges | ||
142 | # | ||
143 | CONFIG_PCMCIA_PXA2XX=y | ||
144 | |||
145 | # | ||
146 | # Kernel Features | ||
147 | # | ||
148 | CONFIG_PREEMPT=y | ||
149 | # CONFIG_NO_IDLE_HZ is not set | ||
150 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | ||
151 | CONFIG_SELECT_MEMORY_MODEL=y | ||
152 | CONFIG_FLATMEM_MANUAL=y | ||
153 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
154 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
155 | CONFIG_FLATMEM=y | ||
156 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
157 | # CONFIG_SPARSEMEM_STATIC is not set | ||
158 | CONFIG_ALIGNMENT_TRAP=y | ||
159 | |||
160 | # | ||
161 | # Boot options | ||
162 | # | ||
163 | CONFIG_ZBOOT_ROM_TEXT=0x0 | ||
164 | CONFIG_ZBOOT_ROM_BSS=0x0 | ||
165 | CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 debug" | ||
166 | # CONFIG_XIP_KERNEL is not set | ||
167 | |||
168 | # | ||
169 | # Floating point emulation | ||
170 | # | ||
171 | |||
172 | # | ||
173 | # At least one emulation must be selected | ||
174 | # | ||
175 | CONFIG_FPE_NWFPE=y | ||
176 | # CONFIG_FPE_NWFPE_XP is not set | ||
177 | # CONFIG_FPE_FASTFPE is not set | ||
178 | |||
179 | # | ||
180 | # Userspace binary formats | ||
181 | # | ||
182 | CONFIG_BINFMT_ELF=y | ||
183 | CONFIG_BINFMT_AOUT=m | ||
184 | CONFIG_BINFMT_MISC=m | ||
185 | # CONFIG_ARTHUR is not set | ||
186 | |||
187 | # | ||
188 | # Power management options | ||
189 | # | ||
190 | CONFIG_PM=y | ||
191 | CONFIG_APM=y | ||
192 | |||
193 | # | ||
194 | # Networking | ||
195 | # | ||
196 | CONFIG_NET=y | ||
197 | |||
198 | # | ||
199 | # Networking options | ||
200 | # | ||
201 | CONFIG_PACKET=y | ||
202 | CONFIG_PACKET_MMAP=y | ||
203 | CONFIG_UNIX=y | ||
204 | # CONFIG_NET_KEY is not set | ||
205 | CONFIG_INET=y | ||
206 | # CONFIG_IP_MULTICAST is not set | ||
207 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
208 | CONFIG_IP_FIB_HASH=y | ||
209 | # CONFIG_IP_PNP is not set | ||
210 | # CONFIG_NET_IPIP is not set | ||
211 | # CONFIG_NET_IPGRE is not set | ||
212 | # CONFIG_ARPD is not set | ||
213 | CONFIG_SYN_COOKIES=y | ||
214 | # CONFIG_INET_AH is not set | ||
215 | # CONFIG_INET_ESP is not set | ||
216 | # CONFIG_INET_IPCOMP is not set | ||
217 | # CONFIG_INET_TUNNEL is not set | ||
218 | CONFIG_INET_DIAG=y | ||
219 | CONFIG_INET_TCP_DIAG=y | ||
220 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
221 | CONFIG_TCP_CONG_BIC=y | ||
222 | # CONFIG_IPV6 is not set | ||
223 | # CONFIG_NETFILTER is not set | ||
224 | |||
225 | # | ||
226 | # DCCP Configuration (EXPERIMENTAL) | ||
227 | # | ||
228 | # CONFIG_IP_DCCP is not set | ||
229 | |||
230 | # | ||
231 | # SCTP Configuration (EXPERIMENTAL) | ||
232 | # | ||
233 | # CONFIG_IP_SCTP is not set | ||
234 | # CONFIG_ATM is not set | ||
235 | # CONFIG_BRIDGE is not set | ||
236 | # CONFIG_VLAN_8021Q is not set | ||
237 | # CONFIG_DECNET is not set | ||
238 | # CONFIG_LLC2 is not set | ||
239 | # CONFIG_IPX is not set | ||
240 | # CONFIG_ATALK is not set | ||
241 | # CONFIG_X25 is not set | ||
242 | # CONFIG_LAPB is not set | ||
243 | # CONFIG_NET_DIVERT is not set | ||
244 | # CONFIG_ECONET is not set | ||
245 | # CONFIG_WAN_ROUTER is not set | ||
246 | # CONFIG_NET_SCHED is not set | ||
247 | # CONFIG_NET_CLS_ROUTE is not set | ||
248 | |||
249 | # | ||
250 | # Network testing | ||
251 | # | ||
252 | # CONFIG_NET_PKTGEN is not set | ||
253 | # CONFIG_HAMRADIO is not set | ||
254 | # CONFIG_IRDA is not set | ||
255 | # CONFIG_BT is not set | ||
256 | # CONFIG_IEEE80211 is not set | ||
257 | |||
258 | # | ||
259 | # Device Drivers | ||
260 | # | ||
261 | |||
262 | # | ||
263 | # Generic Driver Options | ||
264 | # | ||
265 | CONFIG_STANDALONE=y | ||
266 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
267 | CONFIG_FW_LOADER=y | ||
268 | # CONFIG_DEBUG_DRIVER is not set | ||
269 | |||
270 | # | ||
271 | # Memory Technology Devices (MTD) | ||
272 | # | ||
273 | CONFIG_MTD=y | ||
274 | # CONFIG_MTD_DEBUG is not set | ||
275 | # CONFIG_MTD_CONCAT is not set | ||
276 | CONFIG_MTD_PARTITIONS=y | ||
277 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
278 | # CONFIG_MTD_CMDLINE_PARTS is not set | ||
279 | # CONFIG_MTD_AFS_PARTS is not set | ||
280 | |||
281 | # | ||
282 | # User Modules And Translation Layers | ||
283 | # | ||
284 | CONFIG_MTD_CHAR=y | ||
285 | CONFIG_MTD_BLOCK=y | ||
286 | # CONFIG_FTL is not set | ||
287 | # CONFIG_NFTL is not set | ||
288 | # CONFIG_INFTL is not set | ||
289 | |||
290 | # | ||
291 | # RAM/ROM/Flash chip drivers | ||
292 | # | ||
293 | # CONFIG_MTD_CFI is not set | ||
294 | # CONFIG_MTD_JEDECPROBE is not set | ||
295 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
296 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
297 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
298 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
299 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
300 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
301 | CONFIG_MTD_CFI_I1=y | ||
302 | CONFIG_MTD_CFI_I2=y | ||
303 | # CONFIG_MTD_CFI_I4 is not set | ||
304 | # CONFIG_MTD_CFI_I8 is not set | ||
305 | # CONFIG_MTD_RAM is not set | ||
306 | # CONFIG_MTD_ROM is not set | ||
307 | # CONFIG_MTD_ABSENT is not set | ||
308 | |||
309 | # | ||
310 | # Mapping drivers for chip access | ||
311 | # | ||
312 | CONFIG_MTD_COMPLEX_MAPPINGS=y | ||
313 | CONFIG_MTD_SHARP_SL=y | ||
314 | # CONFIG_MTD_PLATRAM is not set | ||
315 | |||
316 | # | ||
317 | # Self-contained MTD device drivers | ||
318 | # | ||
319 | # CONFIG_MTD_SLRAM is not set | ||
320 | # CONFIG_MTD_PHRAM is not set | ||
321 | # CONFIG_MTD_MTDRAM is not set | ||
322 | # CONFIG_MTD_BLKMTD is not set | ||
323 | # CONFIG_MTD_BLOCK2MTD is not set | ||
324 | |||
325 | # | ||
326 | # Disk-On-Chip Device Drivers | ||
327 | # | ||
328 | # CONFIG_MTD_DOC2000 is not set | ||
329 | # CONFIG_MTD_DOC2001 is not set | ||
330 | # CONFIG_MTD_DOC2001PLUS is not set | ||
331 | |||
332 | # | ||
333 | # NAND Flash Device Drivers | ||
334 | # | ||
335 | CONFIG_MTD_NAND=y | ||
336 | CONFIG_MTD_NAND_VERIFY_WRITE=y | ||
337 | # CONFIG_MTD_NAND_H1900 is not set | ||
338 | CONFIG_MTD_NAND_IDS=y | ||
339 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
340 | CONFIG_MTD_NAND_SHARPSL=y | ||
341 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
342 | |||
343 | # | ||
344 | # Parallel port support | ||
345 | # | ||
346 | # CONFIG_PARPORT is not set | ||
347 | |||
348 | # | ||
349 | # Plug and Play support | ||
350 | # | ||
351 | |||
352 | # | ||
353 | # Block devices | ||
354 | # | ||
355 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
356 | CONFIG_BLK_DEV_LOOP=y | ||
357 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
358 | # CONFIG_BLK_DEV_NBD is not set | ||
359 | # CONFIG_BLK_DEV_RAM is not set | ||
360 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
361 | # CONFIG_CDROM_PKTCDVD is not set | ||
362 | |||
363 | # | ||
364 | # IO Schedulers | ||
365 | # | ||
366 | CONFIG_IOSCHED_NOOP=y | ||
367 | CONFIG_IOSCHED_AS=y | ||
368 | CONFIG_IOSCHED_DEADLINE=y | ||
369 | CONFIG_IOSCHED_CFQ=y | ||
370 | # CONFIG_ATA_OVER_ETH is not set | ||
371 | |||
372 | # | ||
373 | # ATA/ATAPI/MFM/RLL support | ||
374 | # | ||
375 | CONFIG_IDE=y | ||
376 | CONFIG_BLK_DEV_IDE=y | ||
377 | |||
378 | # | ||
379 | # Please see Documentation/ide.txt for help/info on IDE drives | ||
380 | # | ||
381 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
382 | CONFIG_BLK_DEV_IDEDISK=y | ||
383 | # CONFIG_IDEDISK_MULTI_MODE is not set | ||
384 | CONFIG_BLK_DEV_IDECS=y | ||
385 | # CONFIG_BLK_DEV_IDECD is not set | ||
386 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
387 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
388 | # CONFIG_IDE_TASK_IOCTL is not set | ||
389 | |||
390 | # | ||
391 | # IDE chipset support/bugfixes | ||
392 | # | ||
393 | CONFIG_IDE_GENERIC=y | ||
394 | # CONFIG_IDE_ARM is not set | ||
395 | # CONFIG_BLK_DEV_IDEDMA is not set | ||
396 | # CONFIG_IDEDMA_AUTO is not set | ||
397 | # CONFIG_BLK_DEV_HD is not set | ||
398 | |||
399 | # | ||
400 | # SCSI device support | ||
401 | # | ||
402 | # CONFIG_RAID_ATTRS is not set | ||
403 | # CONFIG_SCSI is not set | ||
404 | |||
405 | # | ||
406 | # Multi-device support (RAID and LVM) | ||
407 | # | ||
408 | # CONFIG_MD is not set | ||
409 | |||
410 | # | ||
411 | # Fusion MPT device support | ||
412 | # | ||
413 | # CONFIG_FUSION is not set | ||
414 | |||
415 | # | ||
416 | # IEEE 1394 (FireWire) support | ||
417 | # | ||
418 | |||
419 | # | ||
420 | # I2O device support | ||
421 | # | ||
422 | |||
423 | # | ||
424 | # Network device support | ||
425 | # | ||
426 | CONFIG_NETDEVICES=y | ||
427 | # CONFIG_DUMMY is not set | ||
428 | # CONFIG_BONDING is not set | ||
429 | # CONFIG_EQUALIZER is not set | ||
430 | # CONFIG_TUN is not set | ||
431 | |||
432 | # | ||
433 | # PHY device support | ||
434 | # | ||
435 | # CONFIG_PHYLIB is not set | ||
436 | |||
437 | # | ||
438 | # Ethernet (10 or 100Mbit) | ||
439 | # | ||
440 | CONFIG_NET_ETHERNET=y | ||
441 | # CONFIG_MII is not set | ||
442 | # CONFIG_SMC91X is not set | ||
443 | # CONFIG_DM9000 is not set | ||
444 | |||
445 | # | ||
446 | # Ethernet (1000 Mbit) | ||
447 | # | ||
448 | |||
449 | # | ||
450 | # Ethernet (10000 Mbit) | ||
451 | # | ||
452 | |||
453 | # | ||
454 | # Token Ring devices | ||
455 | # | ||
456 | |||
457 | # | ||
458 | # Wireless LAN (non-hamradio) | ||
459 | # | ||
460 | CONFIG_NET_RADIO=y | ||
461 | |||
462 | # | ||
463 | # Obsolete Wireless cards support (pre-802.11) | ||
464 | # | ||
465 | # CONFIG_STRIP is not set | ||
466 | # CONFIG_PCMCIA_WAVELAN is not set | ||
467 | # CONFIG_PCMCIA_NETWAVE is not set | ||
468 | |||
469 | # | ||
470 | # Wireless 802.11 Frequency Hopping cards support | ||
471 | # | ||
472 | # CONFIG_PCMCIA_RAYCS is not set | ||
473 | |||
474 | # | ||
475 | # Wireless 802.11b ISA/PCI cards support | ||
476 | # | ||
477 | # CONFIG_HERMES is not set | ||
478 | # CONFIG_ATMEL is not set | ||
479 | |||
480 | # | ||
481 | # Wireless 802.11b Pcmcia/Cardbus cards support | ||
482 | # | ||
483 | # CONFIG_AIRO_CS is not set | ||
484 | # CONFIG_PCMCIA_WL3501 is not set | ||
485 | # CONFIG_HOSTAP is not set | ||
486 | CONFIG_NET_WIRELESS=y | ||
487 | |||
488 | # | ||
489 | # PCMCIA network device support | ||
490 | # | ||
491 | CONFIG_NET_PCMCIA=y | ||
492 | # CONFIG_PCMCIA_3C589 is not set | ||
493 | # CONFIG_PCMCIA_3C574 is not set | ||
494 | # CONFIG_PCMCIA_FMVJ18X is not set | ||
495 | CONFIG_PCMCIA_PCNET=y | ||
496 | # CONFIG_PCMCIA_NMCLAN is not set | ||
497 | # CONFIG_PCMCIA_SMC91C92 is not set | ||
498 | # CONFIG_PCMCIA_XIRC2PS is not set | ||
499 | # CONFIG_PCMCIA_AXNET is not set | ||
500 | |||
501 | # | ||
502 | # Wan interfaces | ||
503 | # | ||
504 | # CONFIG_WAN is not set | ||
505 | CONFIG_PPP=m | ||
506 | # CONFIG_PPP_MULTILINK is not set | ||
507 | # CONFIG_PPP_FILTER is not set | ||
508 | CONFIG_PPP_ASYNC=m | ||
509 | # CONFIG_PPP_SYNC_TTY is not set | ||
510 | # CONFIG_PPP_DEFLATE is not set | ||
511 | CONFIG_PPP_BSDCOMP=m | ||
512 | # CONFIG_PPPOE is not set | ||
513 | # CONFIG_SLIP is not set | ||
514 | # CONFIG_SHAPER is not set | ||
515 | # CONFIG_NETCONSOLE is not set | ||
516 | # CONFIG_NETPOLL is not set | ||
517 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
518 | |||
519 | # | ||
520 | # ISDN subsystem | ||
521 | # | ||
522 | # CONFIG_ISDN is not set | ||
523 | |||
524 | # | ||
525 | # Input device support | ||
526 | # | ||
527 | CONFIG_INPUT=y | ||
528 | |||
529 | # | ||
530 | # Userland interfaces | ||
531 | # | ||
532 | # CONFIG_INPUT_MOUSEDEV is not set | ||
533 | # CONFIG_INPUT_JOYDEV is not set | ||
534 | CONFIG_INPUT_TSDEV=y | ||
535 | CONFIG_INPUT_TSDEV_SCREEN_X=240 | ||
536 | CONFIG_INPUT_TSDEV_SCREEN_Y=320 | ||
537 | CONFIG_INPUT_EVDEV=y | ||
538 | CONFIG_INPUT_EVBUG=y | ||
539 | |||
540 | # | ||
541 | # Input Device Drivers | ||
542 | # | ||
543 | CONFIG_INPUT_KEYBOARD=y | ||
544 | # CONFIG_KEYBOARD_ATKBD is not set | ||
545 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
546 | # CONFIG_KEYBOARD_LKKBD is not set | ||
547 | CONFIG_KEYBOARD_LOCOMO=y | ||
548 | # CONFIG_KEYBOARD_XTKBD is not set | ||
549 | # CONFIG_KEYBOARD_NEWTON is not set | ||
550 | # CONFIG_KEYBOARD_CORGI is not set | ||
551 | CONFIG_KEYBOARD_SPITZ=y | ||
552 | # CONFIG_INPUT_MOUSE is not set | ||
553 | # CONFIG_INPUT_JOYSTICK is not set | ||
554 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
555 | # CONFIG_INPUT_MISC is not set | ||
556 | |||
557 | # | ||
558 | # Hardware I/O ports | ||
559 | # | ||
560 | # CONFIG_SERIO is not set | ||
561 | # CONFIG_GAMEPORT is not set | ||
562 | |||
563 | # | ||
564 | # Character devices | ||
565 | # | ||
566 | CONFIG_VT=y | ||
567 | CONFIG_VT_CONSOLE=y | ||
568 | CONFIG_HW_CONSOLE=y | ||
569 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
570 | |||
571 | # | ||
572 | # Serial drivers | ||
573 | # | ||
574 | # CONFIG_SERIAL_8250 is not set | ||
575 | |||
576 | # | ||
577 | # Non-8250 serial port support | ||
578 | # | ||
579 | CONFIG_SERIAL_PXA=y | ||
580 | CONFIG_SERIAL_PXA_CONSOLE=y | ||
581 | CONFIG_SERIAL_CORE=y | ||
582 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
583 | CONFIG_UNIX98_PTYS=y | ||
584 | # CONFIG_LEGACY_PTYS is not set | ||
585 | |||
586 | # | ||
587 | # IPMI | ||
588 | # | ||
589 | # CONFIG_IPMI_HANDLER is not set | ||
590 | |||
591 | # | ||
592 | # Watchdog Cards | ||
593 | # | ||
594 | # CONFIG_WATCHDOG is not set | ||
595 | # CONFIG_NVRAM is not set | ||
596 | # CONFIG_RTC is not set | ||
597 | # CONFIG_DTLK is not set | ||
598 | # CONFIG_R3964 is not set | ||
599 | |||
600 | # | ||
601 | # Ftape, the floppy tape device driver | ||
602 | # | ||
603 | |||
604 | # | ||
605 | # PCMCIA character devices | ||
606 | # | ||
607 | # CONFIG_SYNCLINK_CS is not set | ||
608 | # CONFIG_RAW_DRIVER is not set | ||
609 | |||
610 | # | ||
611 | # TPM devices | ||
612 | # | ||
613 | |||
614 | # | ||
615 | # I2C support | ||
616 | # | ||
617 | CONFIG_I2C=y | ||
618 | # CONFIG_I2C_CHARDEV is not set | ||
619 | |||
620 | # | ||
621 | # I2C Algorithms | ||
622 | # | ||
623 | CONFIG_I2C_ALGOBIT=y | ||
624 | # CONFIG_I2C_ALGOPCF is not set | ||
625 | # CONFIG_I2C_ALGOPCA is not set | ||
626 | |||
627 | # | ||
628 | # I2C Hardware Bus support | ||
629 | # | ||
630 | # CONFIG_I2C_PXA is not set | ||
631 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
632 | # CONFIG_I2C_STUB is not set | ||
633 | # CONFIG_I2C_PCA_ISA is not set | ||
634 | |||
635 | # | ||
636 | # Miscellaneous I2C Chip support | ||
637 | # | ||
638 | # CONFIG_SENSORS_DS1337 is not set | ||
639 | # CONFIG_SENSORS_DS1374 is not set | ||
640 | # CONFIG_SENSORS_EEPROM is not set | ||
641 | # CONFIG_SENSORS_PCF8574 is not set | ||
642 | # CONFIG_SENSORS_PCA9539 is not set | ||
643 | # CONFIG_SENSORS_PCF8591 is not set | ||
644 | # CONFIG_SENSORS_RTC8564 is not set | ||
645 | # CONFIG_SENSORS_MAX6875 is not set | ||
646 | CONFIG_I2C_DEBUG_CORE=y | ||
647 | CONFIG_I2C_DEBUG_ALGO=y | ||
648 | CONFIG_I2C_DEBUG_BUS=y | ||
649 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
650 | |||
651 | # | ||
652 | # Hardware Monitoring support | ||
653 | # | ||
654 | CONFIG_HWMON=y | ||
655 | # CONFIG_HWMON_VID is not set | ||
656 | # CONFIG_SENSORS_ADM1021 is not set | ||
657 | # CONFIG_SENSORS_ADM1025 is not set | ||
658 | # CONFIG_SENSORS_ADM1026 is not set | ||
659 | # CONFIG_SENSORS_ADM1031 is not set | ||
660 | # CONFIG_SENSORS_ADM9240 is not set | ||
661 | # CONFIG_SENSORS_ASB100 is not set | ||
662 | # CONFIG_SENSORS_ATXP1 is not set | ||
663 | # CONFIG_SENSORS_DS1621 is not set | ||
664 | # CONFIG_SENSORS_FSCHER is not set | ||
665 | # CONFIG_SENSORS_FSCPOS is not set | ||
666 | # CONFIG_SENSORS_GL518SM is not set | ||
667 | # CONFIG_SENSORS_GL520SM is not set | ||
668 | # CONFIG_SENSORS_IT87 is not set | ||
669 | # CONFIG_SENSORS_LM63 is not set | ||
670 | # CONFIG_SENSORS_LM75 is not set | ||
671 | # CONFIG_SENSORS_LM77 is not set | ||
672 | # CONFIG_SENSORS_LM78 is not set | ||
673 | # CONFIG_SENSORS_LM80 is not set | ||
674 | # CONFIG_SENSORS_LM83 is not set | ||
675 | # CONFIG_SENSORS_LM85 is not set | ||
676 | # CONFIG_SENSORS_LM87 is not set | ||
677 | # CONFIG_SENSORS_LM90 is not set | ||
678 | # CONFIG_SENSORS_LM92 is not set | ||
679 | # CONFIG_SENSORS_MAX1619 is not set | ||
680 | # CONFIG_SENSORS_PC87360 is not set | ||
681 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
682 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
683 | # CONFIG_SENSORS_W83781D is not set | ||
684 | # CONFIG_SENSORS_W83792D is not set | ||
685 | # CONFIG_SENSORS_W83L785TS is not set | ||
686 | # CONFIG_SENSORS_W83627HF is not set | ||
687 | # CONFIG_SENSORS_W83627EHF is not set | ||
688 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
689 | |||
690 | # | ||
691 | # Misc devices | ||
692 | # | ||
693 | |||
694 | # | ||
695 | # Multimedia Capabilities Port drivers | ||
696 | # | ||
697 | |||
698 | # | ||
699 | # Multimedia devices | ||
700 | # | ||
701 | CONFIG_VIDEO_DEV=m | ||
702 | |||
703 | # | ||
704 | # Video For Linux | ||
705 | # | ||
706 | |||
707 | # | ||
708 | # Video Adapters | ||
709 | # | ||
710 | # CONFIG_VIDEO_CPIA is not set | ||
711 | # CONFIG_VIDEO_SAA5246A is not set | ||
712 | # CONFIG_VIDEO_SAA5249 is not set | ||
713 | # CONFIG_TUNER_3036 is not set | ||
714 | # CONFIG_VIDEO_OVCAMCHIP is not set | ||
715 | |||
716 | # | ||
717 | # Radio Adapters | ||
718 | # | ||
719 | # CONFIG_RADIO_MAESTRO is not set | ||
720 | |||
721 | # | ||
722 | # Digital Video Broadcasting Devices | ||
723 | # | ||
724 | # CONFIG_DVB is not set | ||
725 | |||
726 | # | ||
727 | # Graphics support | ||
728 | # | ||
729 | CONFIG_FB=y | ||
730 | CONFIG_FB_CFB_FILLRECT=y | ||
731 | CONFIG_FB_CFB_COPYAREA=y | ||
732 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
733 | CONFIG_FB_SOFT_CURSOR=y | ||
734 | # CONFIG_FB_MACMODES is not set | ||
735 | CONFIG_FB_MODE_HELPERS=y | ||
736 | # CONFIG_FB_TILEBLITTING is not set | ||
737 | CONFIG_FB_PXA=y | ||
738 | # CONFIG_FB_W100 is not set | ||
739 | # CONFIG_FB_PXA_PARAMETERS is not set | ||
740 | # CONFIG_FB_S1D13XXX is not set | ||
741 | # CONFIG_FB_VIRTUAL is not set | ||
742 | |||
743 | # | ||
744 | # Console display driver support | ||
745 | # | ||
746 | # CONFIG_VGA_CONSOLE is not set | ||
747 | CONFIG_DUMMY_CONSOLE=y | ||
748 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
749 | CONFIG_FONTS=y | ||
750 | CONFIG_FONT_8x8=y | ||
751 | # CONFIG_FONT_8x16 is not set | ||
752 | # CONFIG_FONT_6x11 is not set | ||
753 | # CONFIG_FONT_7x14 is not set | ||
754 | # CONFIG_FONT_PEARL_8x8 is not set | ||
755 | # CONFIG_FONT_ACORN_8x8 is not set | ||
756 | # CONFIG_FONT_MINI_4x6 is not set | ||
757 | # CONFIG_FONT_SUN8x16 is not set | ||
758 | # CONFIG_FONT_SUN12x22 is not set | ||
759 | # CONFIG_FONT_10x18 is not set | ||
760 | |||
761 | # | ||
762 | # Logo configuration | ||
763 | # | ||
764 | # CONFIG_LOGO is not set | ||
765 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
766 | |||
767 | # | ||
768 | # Sound | ||
769 | # | ||
770 | # CONFIG_SOUND is not set | ||
771 | |||
772 | # | ||
773 | # USB support | ||
774 | # | ||
775 | CONFIG_USB_ARCH_HAS_HCD=y | ||
776 | # CONFIG_USB_ARCH_HAS_OHCI is not set | ||
777 | # CONFIG_USB is not set | ||
778 | |||
779 | # | ||
780 | # USB Gadget Support | ||
781 | # | ||
782 | CONFIG_USB_GADGET=y | ||
783 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | ||
784 | CONFIG_USB_GADGET_SELECTED=y | ||
785 | # CONFIG_USB_GADGET_NET2280 is not set | ||
786 | CONFIG_USB_GADGET_PXA2XX=y | ||
787 | CONFIG_USB_PXA2XX=y | ||
788 | # CONFIG_USB_PXA2XX_SMALL is not set | ||
789 | # CONFIG_USB_GADGET_GOKU is not set | ||
790 | # CONFIG_USB_GADGET_LH7A40X is not set | ||
791 | # CONFIG_USB_GADGET_OMAP is not set | ||
792 | # CONFIG_USB_GADGET_DUMMY_HCD is not set | ||
793 | # CONFIG_USB_GADGET_DUALSPEED is not set | ||
794 | # CONFIG_USB_ZERO is not set | ||
795 | CONFIG_USB_ETH=y | ||
796 | CONFIG_USB_ETH_RNDIS=y | ||
797 | # CONFIG_USB_GADGETFS is not set | ||
798 | # CONFIG_USB_FILE_STORAGE is not set | ||
799 | # CONFIG_USB_G_SERIAL is not set | ||
800 | |||
801 | # | ||
802 | # MMC/SD Card support | ||
803 | # | ||
804 | CONFIG_MMC=y | ||
805 | CONFIG_MMC_DEBUG=y | ||
806 | CONFIG_MMC_BLOCK=y | ||
807 | CONFIG_MMC_PXA=y | ||
808 | # CONFIG_MMC_WBSD is not set | ||
809 | |||
810 | # | ||
811 | # File systems | ||
812 | # | ||
813 | CONFIG_EXT2_FS=y | ||
814 | CONFIG_EXT2_FS_XATTR=y | ||
815 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
816 | CONFIG_EXT2_FS_SECURITY=y | ||
817 | # CONFIG_EXT2_FS_XIP is not set | ||
818 | # CONFIG_EXT3_FS is not set | ||
819 | # CONFIG_JBD is not set | ||
820 | CONFIG_FS_MBCACHE=y | ||
821 | # CONFIG_REISERFS_FS is not set | ||
822 | # CONFIG_JFS_FS is not set | ||
823 | CONFIG_FS_POSIX_ACL=y | ||
824 | # CONFIG_XFS_FS is not set | ||
825 | # CONFIG_MINIX_FS is not set | ||
826 | # CONFIG_ROMFS_FS is not set | ||
827 | CONFIG_INOTIFY=y | ||
828 | # CONFIG_QUOTA is not set | ||
829 | CONFIG_DNOTIFY=y | ||
830 | # CONFIG_AUTOFS_FS is not set | ||
831 | # CONFIG_AUTOFS4_FS is not set | ||
832 | # CONFIG_FUSE_FS is not set | ||
833 | |||
834 | # | ||
835 | # CD-ROM/DVD Filesystems | ||
836 | # | ||
837 | # CONFIG_ISO9660_FS is not set | ||
838 | # CONFIG_UDF_FS is not set | ||
839 | |||
840 | # | ||
841 | # DOS/FAT/NT Filesystems | ||
842 | # | ||
843 | CONFIG_FAT_FS=y | ||
844 | CONFIG_MSDOS_FS=y | ||
845 | CONFIG_VFAT_FS=y | ||
846 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
847 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
848 | # CONFIG_NTFS_FS is not set | ||
849 | |||
850 | # | ||
851 | # Pseudo filesystems | ||
852 | # | ||
853 | CONFIG_PROC_FS=y | ||
854 | CONFIG_SYSFS=y | ||
855 | CONFIG_TMPFS=y | ||
856 | # CONFIG_HUGETLB_PAGE is not set | ||
857 | CONFIG_RAMFS=y | ||
858 | # CONFIG_RELAYFS_FS is not set | ||
859 | |||
860 | # | ||
861 | # Miscellaneous filesystems | ||
862 | # | ||
863 | # CONFIG_ADFS_FS is not set | ||
864 | # CONFIG_AFFS_FS is not set | ||
865 | # CONFIG_HFS_FS is not set | ||
866 | # CONFIG_HFSPLUS_FS is not set | ||
867 | # CONFIG_BEFS_FS is not set | ||
868 | # CONFIG_BFS_FS is not set | ||
869 | # CONFIG_EFS_FS is not set | ||
870 | # CONFIG_JFFS_FS is not set | ||
871 | CONFIG_JFFS2_FS=y | ||
872 | CONFIG_JFFS2_FS_DEBUG=0 | ||
873 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
874 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
875 | CONFIG_JFFS2_ZLIB=y | ||
876 | CONFIG_JFFS2_RTIME=y | ||
877 | CONFIG_JFFS2_RUBIN=y | ||
878 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
879 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
880 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
881 | CONFIG_CRAMFS=m | ||
882 | # CONFIG_VXFS_FS is not set | ||
883 | # CONFIG_HPFS_FS is not set | ||
884 | # CONFIG_QNX4FS_FS is not set | ||
885 | # CONFIG_SYSV_FS is not set | ||
886 | # CONFIG_UFS_FS is not set | ||
887 | |||
888 | # | ||
889 | # Network File Systems | ||
890 | # | ||
891 | # CONFIG_NFS_FS is not set | ||
892 | # CONFIG_NFSD is not set | ||
893 | # CONFIG_SMB_FS is not set | ||
894 | # CONFIG_CIFS is not set | ||
895 | # CONFIG_NCP_FS is not set | ||
896 | # CONFIG_CODA_FS is not set | ||
897 | # CONFIG_AFS_FS is not set | ||
898 | # CONFIG_9P_FS is not set | ||
899 | |||
900 | # | ||
901 | # Partition Types | ||
902 | # | ||
903 | CONFIG_PARTITION_ADVANCED=y | ||
904 | # CONFIG_ACORN_PARTITION is not set | ||
905 | # CONFIG_OSF_PARTITION is not set | ||
906 | # CONFIG_AMIGA_PARTITION is not set | ||
907 | # CONFIG_ATARI_PARTITION is not set | ||
908 | # CONFIG_MAC_PARTITION is not set | ||
909 | CONFIG_MSDOS_PARTITION=y | ||
910 | # CONFIG_BSD_DISKLABEL is not set | ||
911 | # CONFIG_MINIX_SUBPARTITION is not set | ||
912 | # CONFIG_SOLARIS_X86_PARTITION is not set | ||
913 | # CONFIG_UNIXWARE_DISKLABEL is not set | ||
914 | # CONFIG_LDM_PARTITION is not set | ||
915 | # CONFIG_SGI_PARTITION is not set | ||
916 | # CONFIG_ULTRIX_PARTITION is not set | ||
917 | # CONFIG_SUN_PARTITION is not set | ||
918 | # CONFIG_EFI_PARTITION is not set | ||
919 | |||
920 | # | ||
921 | # Native Language Support | ||
922 | # | ||
923 | CONFIG_NLS=y | ||
924 | CONFIG_NLS_DEFAULT="cp437" | ||
925 | CONFIG_NLS_CODEPAGE_437=y | ||
926 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
927 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
928 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
929 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
930 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
931 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
932 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
933 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
934 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
935 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
936 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
937 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
938 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
939 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
940 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
941 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
942 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
943 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
944 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
945 | # CONFIG_NLS_ISO8859_8 is not set | ||
946 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
947 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
948 | CONFIG_NLS_ASCII=y | ||
949 | CONFIG_NLS_ISO8859_1=y | ||
950 | # CONFIG_NLS_ISO8859_2 is not set | ||
951 | # CONFIG_NLS_ISO8859_3 is not set | ||
952 | # CONFIG_NLS_ISO8859_4 is not set | ||
953 | # CONFIG_NLS_ISO8859_5 is not set | ||
954 | # CONFIG_NLS_ISO8859_6 is not set | ||
955 | # CONFIG_NLS_ISO8859_7 is not set | ||
956 | # CONFIG_NLS_ISO8859_9 is not set | ||
957 | # CONFIG_NLS_ISO8859_13 is not set | ||
958 | # CONFIG_NLS_ISO8859_14 is not set | ||
959 | # CONFIG_NLS_ISO8859_15 is not set | ||
960 | # CONFIG_NLS_KOI8_R is not set | ||
961 | # CONFIG_NLS_KOI8_U is not set | ||
962 | CONFIG_NLS_UTF8=y | ||
963 | |||
964 | # | ||
965 | # Profiling support | ||
966 | # | ||
967 | # CONFIG_PROFILING is not set | ||
968 | |||
969 | # | ||
970 | # Kernel hacking | ||
971 | # | ||
972 | # CONFIG_PRINTK_TIME is not set | ||
973 | CONFIG_DEBUG_KERNEL=y | ||
974 | CONFIG_MAGIC_SYSRQ=y | ||
975 | CONFIG_LOG_BUF_SHIFT=14 | ||
976 | CONFIG_DETECT_SOFTLOCKUP=y | ||
977 | # CONFIG_SCHEDSTATS is not set | ||
978 | # CONFIG_DEBUG_SLAB is not set | ||
979 | CONFIG_DEBUG_PREEMPT=y | ||
980 | # CONFIG_DEBUG_SPINLOCK is not set | ||
981 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
982 | # CONFIG_DEBUG_KOBJECT is not set | ||
983 | # CONFIG_DEBUG_BUGVERBOSE is not set | ||
984 | # CONFIG_DEBUG_INFO is not set | ||
985 | # CONFIG_DEBUG_FS is not set | ||
986 | CONFIG_FRAME_POINTER=y | ||
987 | # CONFIG_DEBUG_USER is not set | ||
988 | # CONFIG_DEBUG_WAITQ is not set | ||
989 | CONFIG_DEBUG_ERRORS=y | ||
990 | # CONFIG_DEBUG_LL is not set | ||
991 | |||
992 | # | ||
993 | # Security options | ||
994 | # | ||
995 | # CONFIG_KEYS is not set | ||
996 | # CONFIG_SECURITY is not set | ||
997 | |||
998 | # | ||
999 | # Cryptographic options | ||
1000 | # | ||
1001 | # CONFIG_CRYPTO is not set | ||
1002 | |||
1003 | # | ||
1004 | # Hardware crypto devices | ||
1005 | # | ||
1006 | |||
1007 | # | ||
1008 | # Library routines | ||
1009 | # | ||
1010 | CONFIG_CRC_CCITT=y | ||
1011 | # CONFIG_CRC16 is not set | ||
1012 | CONFIG_CRC32=y | ||
1013 | # CONFIG_LIBCRC32C is not set | ||
1014 | CONFIG_ZLIB_INFLATE=y | ||
1015 | CONFIG_ZLIB_DEFLATE=y | ||
diff --git a/arch/arm/configs/spitz_defconfig b/arch/arm/configs/spitz_defconfig index 900e04f8e38c..18e9beaec465 100644 --- a/arch/arm/configs/spitz_defconfig +++ b/arch/arm/configs/spitz_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.14-rc3 | 3 | # Linux kernel version: 2.6.15-rc2 |
4 | # Sun Oct 9 17:11:19 2005 | 4 | # Mon Nov 28 10:26:52 2005 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
@@ -64,6 +64,23 @@ CONFIG_OBSOLETE_MODPARM=y | |||
64 | CONFIG_KMOD=y | 64 | CONFIG_KMOD=y |
65 | 65 | ||
66 | # | 66 | # |
67 | # Block layer | ||
68 | # | ||
69 | |||
70 | # | ||
71 | # IO Schedulers | ||
72 | # | ||
73 | CONFIG_IOSCHED_NOOP=y | ||
74 | CONFIG_IOSCHED_AS=y | ||
75 | CONFIG_IOSCHED_DEADLINE=y | ||
76 | CONFIG_IOSCHED_CFQ=y | ||
77 | CONFIG_DEFAULT_AS=y | ||
78 | # CONFIG_DEFAULT_DEADLINE is not set | ||
79 | # CONFIG_DEFAULT_CFQ is not set | ||
80 | # CONFIG_DEFAULT_NOOP is not set | ||
81 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
82 | |||
83 | # | ||
67 | # System Type | 84 | # System Type |
68 | # | 85 | # |
69 | # CONFIG_ARCH_CLPS7500 is not set | 86 | # CONFIG_ARCH_CLPS7500 is not set |
@@ -85,6 +102,7 @@ CONFIG_ARCH_PXA=y | |||
85 | # CONFIG_ARCH_LH7A40X is not set | 102 | # CONFIG_ARCH_LH7A40X is not set |
86 | # CONFIG_ARCH_OMAP is not set | 103 | # CONFIG_ARCH_OMAP is not set |
87 | # CONFIG_ARCH_VERSATILE is not set | 104 | # CONFIG_ARCH_VERSATILE is not set |
105 | # CONFIG_ARCH_REALVIEW is not set | ||
88 | # CONFIG_ARCH_IMX is not set | 106 | # CONFIG_ARCH_IMX is not set |
89 | # CONFIG_ARCH_H720X is not set | 107 | # CONFIG_ARCH_H720X is not set |
90 | # CONFIG_ARCH_AAEC2000 is not set | 108 | # CONFIG_ARCH_AAEC2000 is not set |
@@ -98,10 +116,13 @@ CONFIG_ARCH_PXA=y | |||
98 | CONFIG_PXA_SHARPSL=y | 116 | CONFIG_PXA_SHARPSL=y |
99 | # CONFIG_PXA_SHARPSL_25x is not set | 117 | # CONFIG_PXA_SHARPSL_25x is not set |
100 | CONFIG_PXA_SHARPSL_27x=y | 118 | CONFIG_PXA_SHARPSL_27x=y |
119 | CONFIG_MACH_AKITA=y | ||
101 | CONFIG_MACH_SPITZ=y | 120 | CONFIG_MACH_SPITZ=y |
102 | CONFIG_MACH_BORZOI=y | 121 | CONFIG_MACH_BORZOI=y |
103 | CONFIG_PXA27x=y | 122 | CONFIG_PXA27x=y |
123 | CONFIG_IWMMXT=y | ||
104 | CONFIG_PXA_SHARP_Cxx00=y | 124 | CONFIG_PXA_SHARP_Cxx00=y |
125 | CONFIG_PXA_SSP=y | ||
105 | 126 | ||
106 | # | 127 | # |
107 | # Processor Type | 128 | # Processor Type |
@@ -153,6 +174,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
153 | CONFIG_FLATMEM=y | 174 | CONFIG_FLATMEM=y |
154 | CONFIG_FLAT_NODE_MEM_MAP=y | 175 | CONFIG_FLAT_NODE_MEM_MAP=y |
155 | # CONFIG_SPARSEMEM_STATIC is not set | 176 | # CONFIG_SPARSEMEM_STATIC is not set |
177 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | ||
156 | CONFIG_ALIGNMENT_TRAP=y | 178 | CONFIG_ALIGNMENT_TRAP=y |
157 | 179 | ||
158 | # | 180 | # |
@@ -233,6 +255,10 @@ CONFIG_INET6_TUNNEL=m | |||
233 | CONFIG_IPV6_TUNNEL=m | 255 | CONFIG_IPV6_TUNNEL=m |
234 | CONFIG_NETFILTER=y | 256 | CONFIG_NETFILTER=y |
235 | # CONFIG_NETFILTER_DEBUG is not set | 257 | # CONFIG_NETFILTER_DEBUG is not set |
258 | |||
259 | # | ||
260 | # Core Netfilter Configuration | ||
261 | # | ||
236 | # CONFIG_NETFILTER_NETLINK is not set | 262 | # CONFIG_NETFILTER_NETLINK is not set |
237 | 263 | ||
238 | # | 264 | # |
@@ -354,6 +380,10 @@ CONFIG_IP6_NF_RAW=m | |||
354 | # CONFIG_NET_DIVERT is not set | 380 | # CONFIG_NET_DIVERT is not set |
355 | # CONFIG_ECONET is not set | 381 | # CONFIG_ECONET is not set |
356 | # CONFIG_WAN_ROUTER is not set | 382 | # CONFIG_WAN_ROUTER is not set |
383 | |||
384 | # | ||
385 | # QoS and/or fair queueing | ||
386 | # | ||
357 | # CONFIG_NET_SCHED is not set | 387 | # CONFIG_NET_SCHED is not set |
358 | CONFIG_NET_CLS_ROUTE=y | 388 | CONFIG_NET_CLS_ROUTE=y |
359 | 389 | ||
@@ -411,6 +441,7 @@ CONFIG_IRCOMM=m | |||
411 | # CONFIG_SMC_IRCC_FIR is not set | 441 | # CONFIG_SMC_IRCC_FIR is not set |
412 | # CONFIG_ALI_FIR is not set | 442 | # CONFIG_ALI_FIR is not set |
413 | # CONFIG_VIA_FIR is not set | 443 | # CONFIG_VIA_FIR is not set |
444 | CONFIG_PXA_FICP=m | ||
414 | CONFIG_BT=m | 445 | CONFIG_BT=m |
415 | CONFIG_BT_L2CAP=m | 446 | CONFIG_BT_L2CAP=m |
416 | CONFIG_BT_SCO=m | 447 | CONFIG_BT_SCO=m |
@@ -429,7 +460,6 @@ CONFIG_BT_HCIUSB=m | |||
429 | CONFIG_BT_HCIUART=m | 460 | CONFIG_BT_HCIUART=m |
430 | CONFIG_BT_HCIUART_H4=y | 461 | CONFIG_BT_HCIUART_H4=y |
431 | CONFIG_BT_HCIUART_BCSP=y | 462 | CONFIG_BT_HCIUART_BCSP=y |
432 | CONFIG_BT_HCIUART_BCSP_TXCRC=y | ||
433 | CONFIG_BT_HCIBCM203X=m | 463 | CONFIG_BT_HCIBCM203X=m |
434 | CONFIG_BT_HCIBPA10X=m | 464 | CONFIG_BT_HCIBPA10X=m |
435 | CONFIG_BT_HCIBFUSB=m | 465 | CONFIG_BT_HCIBFUSB=m |
@@ -457,6 +487,11 @@ CONFIG_FW_LOADER=y | |||
457 | # CONFIG_DEBUG_DRIVER is not set | 487 | # CONFIG_DEBUG_DRIVER is not set |
458 | 488 | ||
459 | # | 489 | # |
490 | # Connector - unified userspace <-> kernelspace linker | ||
491 | # | ||
492 | # CONFIG_CONNECTOR is not set | ||
493 | |||
494 | # | ||
460 | # Memory Technology Devices (MTD) | 495 | # Memory Technology Devices (MTD) |
461 | # | 496 | # |
462 | CONFIG_MTD=y | 497 | CONFIG_MTD=y |
@@ -475,6 +510,7 @@ CONFIG_MTD_BLOCK=y | |||
475 | # CONFIG_FTL is not set | 510 | # CONFIG_FTL is not set |
476 | # CONFIG_NFTL is not set | 511 | # CONFIG_NFTL is not set |
477 | # CONFIG_INFTL is not set | 512 | # CONFIG_INFTL is not set |
513 | # CONFIG_RFD_FTL is not set | ||
478 | 514 | ||
479 | # | 515 | # |
480 | # RAM/ROM/Flash chip drivers | 516 | # RAM/ROM/Flash chip drivers |
@@ -530,6 +566,11 @@ CONFIG_MTD_NAND_SHARPSL=y | |||
530 | # CONFIG_MTD_NAND_NANDSIM is not set | 566 | # CONFIG_MTD_NAND_NANDSIM is not set |
531 | 567 | ||
532 | # | 568 | # |
569 | # OneNAND Flash Device Drivers | ||
570 | # | ||
571 | # CONFIG_MTD_ONENAND is not set | ||
572 | |||
573 | # | ||
533 | # Parallel port support | 574 | # Parallel port support |
534 | # | 575 | # |
535 | # CONFIG_PARPORT is not set | 576 | # CONFIG_PARPORT is not set |
@@ -549,14 +590,6 @@ CONFIG_BLK_DEV_LOOP=y | |||
549 | # CONFIG_BLK_DEV_RAM is not set | 590 | # CONFIG_BLK_DEV_RAM is not set |
550 | CONFIG_BLK_DEV_RAM_COUNT=16 | 591 | CONFIG_BLK_DEV_RAM_COUNT=16 |
551 | # CONFIG_CDROM_PKTCDVD is not set | 592 | # CONFIG_CDROM_PKTCDVD is not set |
552 | |||
553 | # | ||
554 | # IO Schedulers | ||
555 | # | ||
556 | CONFIG_IOSCHED_NOOP=y | ||
557 | CONFIG_IOSCHED_AS=y | ||
558 | CONFIG_IOSCHED_DEADLINE=y | ||
559 | CONFIG_IOSCHED_CFQ=y | ||
560 | # CONFIG_ATA_OVER_ETH is not set | 593 | # CONFIG_ATA_OVER_ETH is not set |
561 | 594 | ||
562 | # | 595 | # |
@@ -623,6 +656,7 @@ CONFIG_SCSI_MULTI_LUN=y | |||
623 | # | 656 | # |
624 | # SCSI low-level drivers | 657 | # SCSI low-level drivers |
625 | # | 658 | # |
659 | # CONFIG_ISCSI_TCP is not set | ||
626 | # CONFIG_SCSI_SATA is not set | 660 | # CONFIG_SCSI_SATA is not set |
627 | # CONFIG_SCSI_DEBUG is not set | 661 | # CONFIG_SCSI_DEBUG is not set |
628 | 662 | ||
@@ -746,6 +780,7 @@ CONFIG_PPP_ASYNC=m | |||
746 | # CONFIG_PPP_SYNC_TTY is not set | 780 | # CONFIG_PPP_SYNC_TTY is not set |
747 | # CONFIG_PPP_DEFLATE is not set | 781 | # CONFIG_PPP_DEFLATE is not set |
748 | CONFIG_PPP_BSDCOMP=m | 782 | CONFIG_PPP_BSDCOMP=m |
783 | # CONFIG_PPP_MPPE is not set | ||
749 | # CONFIG_PPPOE is not set | 784 | # CONFIG_PPPOE is not set |
750 | # CONFIG_SLIP is not set | 785 | # CONFIG_SLIP is not set |
751 | # CONFIG_SHAPER is not set | 786 | # CONFIG_SHAPER is not set |
@@ -771,6 +806,7 @@ CONFIG_INPUT=y | |||
771 | # CONFIG_INPUT_TSDEV is not set | 806 | # CONFIG_INPUT_TSDEV is not set |
772 | CONFIG_INPUT_EVDEV=y | 807 | CONFIG_INPUT_EVDEV=y |
773 | # CONFIG_INPUT_EVBUG is not set | 808 | # CONFIG_INPUT_EVBUG is not set |
809 | # CONFIG_INPUT_POWER is not set | ||
774 | 810 | ||
775 | # | 811 | # |
776 | # Input Device Drivers | 812 | # Input Device Drivers |
@@ -848,11 +884,15 @@ CONFIG_UNIX98_PTYS=y | |||
848 | # PCMCIA character devices | 884 | # PCMCIA character devices |
849 | # | 885 | # |
850 | # CONFIG_SYNCLINK_CS is not set | 886 | # CONFIG_SYNCLINK_CS is not set |
887 | # CONFIG_CARDMAN_4000 is not set | ||
888 | # CONFIG_CARDMAN_4040 is not set | ||
851 | # CONFIG_RAW_DRIVER is not set | 889 | # CONFIG_RAW_DRIVER is not set |
852 | 890 | ||
853 | # | 891 | # |
854 | # TPM devices | 892 | # TPM devices |
855 | # | 893 | # |
894 | # CONFIG_TCG_TPM is not set | ||
895 | # CONFIG_TELCLOCK is not set | ||
856 | 896 | ||
857 | # | 897 | # |
858 | # I2C support | 898 | # I2C support |
@@ -891,14 +931,13 @@ CONFIG_FB=y | |||
891 | CONFIG_FB_CFB_FILLRECT=y | 931 | CONFIG_FB_CFB_FILLRECT=y |
892 | CONFIG_FB_CFB_COPYAREA=y | 932 | CONFIG_FB_CFB_COPYAREA=y |
893 | CONFIG_FB_CFB_IMAGEBLIT=y | 933 | CONFIG_FB_CFB_IMAGEBLIT=y |
894 | CONFIG_FB_SOFT_CURSOR=y | ||
895 | # CONFIG_FB_MACMODES is not set | 934 | # CONFIG_FB_MACMODES is not set |
896 | # CONFIG_FB_MODE_HELPERS is not set | 935 | # CONFIG_FB_MODE_HELPERS is not set |
897 | # CONFIG_FB_TILEBLITTING is not set | 936 | # CONFIG_FB_TILEBLITTING is not set |
937 | # CONFIG_FB_S1D13XXX is not set | ||
898 | CONFIG_FB_PXA=y | 938 | CONFIG_FB_PXA=y |
899 | # CONFIG_FB_W100 is not set | ||
900 | # CONFIG_FB_PXA_PARAMETERS is not set | 939 | # CONFIG_FB_PXA_PARAMETERS is not set |
901 | # CONFIG_FB_S1D13XXX is not set | 940 | # CONFIG_FB_W100 is not set |
902 | # CONFIG_FB_VIRTUAL is not set | 941 | # CONFIG_FB_VIRTUAL is not set |
903 | 942 | ||
904 | # | 943 | # |
@@ -907,6 +946,7 @@ CONFIG_FB_PXA=y | |||
907 | # CONFIG_VGA_CONSOLE is not set | 946 | # CONFIG_VGA_CONSOLE is not set |
908 | CONFIG_DUMMY_CONSOLE=y | 947 | CONFIG_DUMMY_CONSOLE=y |
909 | CONFIG_FRAMEBUFFER_CONSOLE=y | 948 | CONFIG_FRAMEBUFFER_CONSOLE=y |
949 | CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y | ||
910 | CONFIG_FONTS=y | 950 | CONFIG_FONTS=y |
911 | CONFIG_FONT_8x8=y | 951 | CONFIG_FONT_8x8=y |
912 | CONFIG_FONT_8x16=y | 952 | CONFIG_FONT_8x16=y |
@@ -965,15 +1005,15 @@ CONFIG_USB_SL811_CS=m | |||
965 | # | 1005 | # |
966 | # USB Device Class drivers | 1006 | # USB Device Class drivers |
967 | # | 1007 | # |
1008 | CONFIG_USB_ACM=m | ||
1009 | CONFIG_USB_PRINTER=m | ||
968 | 1010 | ||
969 | # | 1011 | # |
970 | # USB Bluetooth TTY can only be used with disabled Bluetooth subsystem | 1012 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
971 | # | 1013 | # |
972 | CONFIG_USB_ACM=m | ||
973 | CONFIG_USB_PRINTER=m | ||
974 | 1014 | ||
975 | # | 1015 | # |
976 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 1016 | # may also be needed; see USB_STORAGE Help for more information |
977 | # | 1017 | # |
978 | CONFIG_USB_STORAGE=m | 1018 | CONFIG_USB_STORAGE=m |
979 | # CONFIG_USB_STORAGE_DEBUG is not set | 1019 | # CONFIG_USB_STORAGE_DEBUG is not set |
@@ -985,7 +1025,6 @@ CONFIG_USB_STORAGE=m | |||
985 | # CONFIG_USB_STORAGE_SDDR09 is not set | 1025 | # CONFIG_USB_STORAGE_SDDR09 is not set |
986 | # CONFIG_USB_STORAGE_SDDR55 is not set | 1026 | # CONFIG_USB_STORAGE_SDDR55 is not set |
987 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 1027 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
988 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
989 | 1028 | ||
990 | # | 1029 | # |
991 | # USB Input Devices | 1030 | # USB Input Devices |
@@ -1058,6 +1097,7 @@ CONFIG_USB_MON=y | |||
1058 | CONFIG_USB_SERIAL=m | 1097 | CONFIG_USB_SERIAL=m |
1059 | CONFIG_USB_SERIAL_GENERIC=y | 1098 | CONFIG_USB_SERIAL_GENERIC=y |
1060 | # CONFIG_USB_SERIAL_AIRPRIME is not set | 1099 | # CONFIG_USB_SERIAL_AIRPRIME is not set |
1100 | # CONFIG_USB_SERIAL_ANYDATA is not set | ||
1061 | CONFIG_USB_SERIAL_BELKIN=m | 1101 | CONFIG_USB_SERIAL_BELKIN=m |
1062 | # CONFIG_USB_SERIAL_WHITEHEAT is not set | 1102 | # CONFIG_USB_SERIAL_WHITEHEAT is not set |
1063 | CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m | 1103 | CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m |
@@ -1218,6 +1258,7 @@ CONFIG_RAMFS=y | |||
1218 | CONFIG_JFFS2_FS=y | 1258 | CONFIG_JFFS2_FS=y |
1219 | CONFIG_JFFS2_FS_DEBUG=0 | 1259 | CONFIG_JFFS2_FS_DEBUG=0 |
1220 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 1260 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
1261 | CONFIG_JFFS2_SUMMARY=y | ||
1221 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | 1262 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y |
1222 | CONFIG_JFFS2_ZLIB=y | 1263 | CONFIG_JFFS2_ZLIB=y |
1223 | CONFIG_JFFS2_RTIME=y | 1264 | CONFIG_JFFS2_RTIME=y |
@@ -1344,7 +1385,9 @@ CONFIG_DETECT_SOFTLOCKUP=y | |||
1344 | CONFIG_DEBUG_BUGVERBOSE=y | 1385 | CONFIG_DEBUG_BUGVERBOSE=y |
1345 | # CONFIG_DEBUG_INFO is not set | 1386 | # CONFIG_DEBUG_INFO is not set |
1346 | # CONFIG_DEBUG_FS is not set | 1387 | # CONFIG_DEBUG_FS is not set |
1388 | # CONFIG_DEBUG_VM is not set | ||
1347 | CONFIG_FRAME_POINTER=y | 1389 | CONFIG_FRAME_POINTER=y |
1390 | # CONFIG_RCU_TORTURE_TEST is not set | ||
1348 | # CONFIG_DEBUG_USER is not set | 1391 | # CONFIG_DEBUG_USER is not set |
1349 | # CONFIG_DEBUG_WAITQ is not set | 1392 | # CONFIG_DEBUG_WAITQ is not set |
1350 | CONFIG_DEBUG_ERRORS=y | 1393 | CONFIG_DEBUG_ERRORS=y |
diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S index 8d8748407cbe..d7d69fd7039f 100644 --- a/arch/arm/kernel/head.S +++ b/arch/arm/kernel/head.S | |||
@@ -17,7 +17,6 @@ | |||
17 | 17 | ||
18 | #include <asm/assembler.h> | 18 | #include <asm/assembler.h> |
19 | #include <asm/domain.h> | 19 | #include <asm/domain.h> |
20 | #include <asm/mach-types.h> | ||
21 | #include <asm/procinfo.h> | 20 | #include <asm/procinfo.h> |
22 | #include <asm/ptrace.h> | 21 | #include <asm/ptrace.h> |
23 | #include <asm/asm-offsets.h> | 22 | #include <asm/asm-offsets.h> |
@@ -83,7 +82,7 @@ ENTRY(stext) | |||
83 | @ and irqs disabled | 82 | @ and irqs disabled |
84 | bl __lookup_processor_type @ r5=procinfo r9=cpuid | 83 | bl __lookup_processor_type @ r5=procinfo r9=cpuid |
85 | movs r10, r5 @ invalid processor (r5=0)? | 84 | movs r10, r5 @ invalid processor (r5=0)? |
86 | beq __error_p @ yes, error 'p' | 85 | beq __error_p @ yes, error 'p' |
87 | bl __lookup_machine_type @ r5=machinfo | 86 | bl __lookup_machine_type @ r5=machinfo |
88 | movs r8, r5 @ invalid machine (r5=0)? | 87 | movs r8, r5 @ invalid machine (r5=0)? |
89 | beq __error_a @ yes, error 'a' | 88 | beq __error_a @ yes, error 'a' |
@@ -343,16 +342,12 @@ __create_page_tables: | |||
343 | bne 1b | 342 | bne 1b |
344 | #if defined(CONFIG_ARCH_NETWINDER) || defined(CONFIG_ARCH_CATS) | 343 | #if defined(CONFIG_ARCH_NETWINDER) || defined(CONFIG_ARCH_CATS) |
345 | /* | 344 | /* |
346 | * If we're using the NetWinder, we need to map in | 345 | * If we're using the NetWinder or CATS, we also need to map |
347 | * the 16550-type serial port for the debug messages | 346 | * in the 16550-type serial port for the debug messages |
348 | */ | 347 | */ |
349 | teq r1, #MACH_TYPE_NETWINDER | ||
350 | teqne r1, #MACH_TYPE_CATS | ||
351 | bne 1f | ||
352 | add r0, r4, #0xff000000 >> 18 | 348 | add r0, r4, #0xff000000 >> 18 |
353 | orr r3, r7, #0x7c000000 | 349 | orr r3, r7, #0x7c000000 |
354 | str r3, [r0] | 350 | str r3, [r0] |
355 | 1: | ||
356 | #endif | 351 | #endif |
357 | #ifdef CONFIG_ARCH_RPC | 352 | #ifdef CONFIG_ARCH_RPC |
358 | /* | 353 | /* |
diff --git a/arch/arm/mach-clps7500/core.c b/arch/arm/mach-clps7500/core.c index 0364ba4b539e..d869af0023f8 100644 --- a/arch/arm/mach-clps7500/core.c +++ b/arch/arm/mach-clps7500/core.c | |||
@@ -260,7 +260,7 @@ static void __init clps7500_init_irq(void) | |||
260 | 260 | ||
261 | static struct map_desc cl7500_io_desc[] __initdata = { | 261 | static struct map_desc cl7500_io_desc[] __initdata = { |
262 | { /* IO space */ | 262 | { /* IO space */ |
263 | .virtual = IO_BASE, | 263 | .virtual = (unsigned long)IO_BASE, |
264 | .pfn = __phys_to_pfn(IO_START), | 264 | .pfn = __phys_to_pfn(IO_START), |
265 | .length = IO_SIZE, | 265 | .length = IO_SIZE, |
266 | .type = MT_DEVICE | 266 | .type = MT_DEVICE |
diff --git a/arch/arm/mach-pxa/Kconfig b/arch/arm/mach-pxa/Kconfig index cd506646801a..526acbc32067 100644 --- a/arch/arm/mach-pxa/Kconfig +++ b/arch/arm/mach-pxa/Kconfig | |||
@@ -44,6 +44,7 @@ config PXA_SHARPSL_25x | |||
44 | config PXA_SHARPSL_27x | 44 | config PXA_SHARPSL_27x |
45 | bool "Sharp PXA270 models (SL-Cxx00)" | 45 | bool "Sharp PXA270 models (SL-Cxx00)" |
46 | select PXA27x | 46 | select PXA27x |
47 | select IWMMXT | ||
47 | 48 | ||
48 | endchoice | 49 | endchoice |
49 | 50 | ||
@@ -60,7 +61,6 @@ config MACH_CORGI | |||
60 | bool "Enable Sharp SL-C700 (Corgi) Support" | 61 | bool "Enable Sharp SL-C700 (Corgi) Support" |
61 | depends PXA_SHARPSL_25x | 62 | depends PXA_SHARPSL_25x |
62 | select PXA_SHARP_C7xx | 63 | select PXA_SHARP_C7xx |
63 | select PXA_SSP | ||
64 | 64 | ||
65 | config MACH_SHEPHERD | 65 | config MACH_SHEPHERD |
66 | bool "Enable Sharp SL-C750 (Shepherd) Support" | 66 | bool "Enable Sharp SL-C750 (Shepherd) Support" |
@@ -90,7 +90,7 @@ config MACH_BORZOI | |||
90 | 90 | ||
91 | config MACH_TOSA | 91 | config MACH_TOSA |
92 | bool "Enable Sharp SL-6000x (Tosa) Support" | 92 | bool "Enable Sharp SL-6000x (Tosa) Support" |
93 | depends PXA_SHARPSL | 93 | depends PXA_SHARPSL_25x |
94 | 94 | ||
95 | config PXA25x | 95 | config PXA25x |
96 | bool | 96 | bool |
diff --git a/arch/arm/mach-pxa/tosa.c b/arch/arm/mach-pxa/tosa.c index c312054dfb88..e4f92efc616e 100644 --- a/arch/arm/mach-pxa/tosa.c +++ b/arch/arm/mach-pxa/tosa.c | |||
@@ -14,7 +14,7 @@ | |||
14 | 14 | ||
15 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/device.h> | 17 | #include <linux/platform_device.h> |
18 | #include <linux/major.h> | 18 | #include <linux/major.h> |
19 | #include <linux/fs.h> | 19 | #include <linux/fs.h> |
20 | #include <linux/interrupt.h> | 20 | #include <linux/interrupt.h> |
diff --git a/arch/arm/mach-realview/core.c b/arch/arm/mach-realview/core.c index e2c6fa23d3cd..af6580f1ceb8 100644 --- a/arch/arm/mach-realview/core.c +++ b/arch/arm/mach-realview/core.c | |||
@@ -30,7 +30,6 @@ | |||
30 | #include <asm/io.h> | 30 | #include <asm/io.h> |
31 | #include <asm/irq.h> | 31 | #include <asm/irq.h> |
32 | #include <asm/leds.h> | 32 | #include <asm/leds.h> |
33 | #include <asm/mach-types.h> | ||
34 | #include <asm/hardware/amba.h> | 33 | #include <asm/hardware/amba.h> |
35 | #include <asm/hardware/amba_clcd.h> | 34 | #include <asm/hardware/amba_clcd.h> |
36 | #include <asm/hardware/arm_timer.h> | 35 | #include <asm/hardware/arm_timer.h> |
diff --git a/arch/arm/mach-sa1100/assabet.c b/arch/arm/mach-sa1100/assabet.c index 75efb5da5b6d..a66ac61233a2 100644 --- a/arch/arm/mach-sa1100/assabet.c +++ b/arch/arm/mach-sa1100/assabet.c | |||
@@ -293,7 +293,8 @@ static void __init get_assabet_scr(void) | |||
293 | GPDR |= 0x3fc; /* Configure GPIO 9:2 as outputs */ | 293 | GPDR |= 0x3fc; /* Configure GPIO 9:2 as outputs */ |
294 | GPSR = 0x3fc; /* Write 0xFF to GPIO 9:2 */ | 294 | GPSR = 0x3fc; /* Write 0xFF to GPIO 9:2 */ |
295 | GPDR &= ~(0x3fc); /* Configure GPIO 9:2 as inputs */ | 295 | GPDR &= ~(0x3fc); /* Configure GPIO 9:2 as inputs */ |
296 | for(i = 100; i--; scr = GPLR); /* Read GPIO 9:2 */ | 296 | for(i = 100; i--; ) /* Read GPIO 9:2 */ |
297 | scr = GPLR; | ||
297 | GPDR |= 0x3fc; /* restore correct pin direction */ | 298 | GPDR |= 0x3fc; /* restore correct pin direction */ |
298 | scr &= 0x3fc; /* save as system configuration byte. */ | 299 | scr &= 0x3fc; /* save as system configuration byte. */ |
299 | SCR_value = scr; | 300 | SCR_value = scr; |
diff --git a/arch/arm/mm/consistent.c b/arch/arm/mm/consistent.c index 47b0b767f080..dbfe9e891f01 100644 --- a/arch/arm/mm/consistent.c +++ b/arch/arm/mm/consistent.c | |||
@@ -66,6 +66,7 @@ struct vm_region { | |||
66 | unsigned long vm_start; | 66 | unsigned long vm_start; |
67 | unsigned long vm_end; | 67 | unsigned long vm_end; |
68 | struct page *vm_pages; | 68 | struct page *vm_pages; |
69 | int vm_active; | ||
69 | }; | 70 | }; |
70 | 71 | ||
71 | static struct vm_region consistent_head = { | 72 | static struct vm_region consistent_head = { |
@@ -104,6 +105,7 @@ vm_region_alloc(struct vm_region *head, size_t size, gfp_t gfp) | |||
104 | list_add_tail(&new->vm_list, &c->vm_list); | 105 | list_add_tail(&new->vm_list, &c->vm_list); |
105 | new->vm_start = addr; | 106 | new->vm_start = addr; |
106 | new->vm_end = addr + size; | 107 | new->vm_end = addr + size; |
108 | new->vm_active = 1; | ||
107 | 109 | ||
108 | spin_unlock_irqrestore(&consistent_lock, flags); | 110 | spin_unlock_irqrestore(&consistent_lock, flags); |
109 | return new; | 111 | return new; |
@@ -120,7 +122,7 @@ static struct vm_region *vm_region_find(struct vm_region *head, unsigned long ad | |||
120 | struct vm_region *c; | 122 | struct vm_region *c; |
121 | 123 | ||
122 | list_for_each_entry(c, &head->vm_list, vm_list) { | 124 | list_for_each_entry(c, &head->vm_list, vm_list) { |
123 | if (c->vm_start == addr) | 125 | if (c->vm_active && c->vm_start == addr) |
124 | goto out; | 126 | goto out; |
125 | } | 127 | } |
126 | c = NULL; | 128 | c = NULL; |
@@ -319,6 +321,7 @@ EXPORT_SYMBOL(dma_mmap_writecombine); | |||
319 | 321 | ||
320 | /* | 322 | /* |
321 | * free a page as defined by the above mapping. | 323 | * free a page as defined by the above mapping. |
324 | * Must not be called with IRQs disabled. | ||
322 | */ | 325 | */ |
323 | void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr_t handle) | 326 | void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr_t handle) |
324 | { | 327 | { |
@@ -326,14 +329,18 @@ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr | |||
326 | unsigned long flags, addr; | 329 | unsigned long flags, addr; |
327 | pte_t *ptep; | 330 | pte_t *ptep; |
328 | 331 | ||
332 | WARN_ON(irqs_disabled()); | ||
333 | |||
329 | size = PAGE_ALIGN(size); | 334 | size = PAGE_ALIGN(size); |
330 | 335 | ||
331 | spin_lock_irqsave(&consistent_lock, flags); | 336 | spin_lock_irqsave(&consistent_lock, flags); |
332 | |||
333 | c = vm_region_find(&consistent_head, (unsigned long)cpu_addr); | 337 | c = vm_region_find(&consistent_head, (unsigned long)cpu_addr); |
334 | if (!c) | 338 | if (!c) |
335 | goto no_area; | 339 | goto no_area; |
336 | 340 | ||
341 | c->vm_active = 0; | ||
342 | spin_unlock_irqrestore(&consistent_lock, flags); | ||
343 | |||
337 | if ((c->vm_end - c->vm_start) != size) { | 344 | if ((c->vm_end - c->vm_start) != size) { |
338 | printk(KERN_ERR "%s: freeing wrong coherent size (%ld != %d)\n", | 345 | printk(KERN_ERR "%s: freeing wrong coherent size (%ld != %d)\n", |
339 | __func__, c->vm_end - c->vm_start, size); | 346 | __func__, c->vm_end - c->vm_start, size); |
@@ -372,8 +379,8 @@ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr | |||
372 | 379 | ||
373 | flush_tlb_kernel_range(c->vm_start, c->vm_end); | 380 | flush_tlb_kernel_range(c->vm_start, c->vm_end); |
374 | 381 | ||
382 | spin_lock_irqsave(&consistent_lock, flags); | ||
375 | list_del(&c->vm_list); | 383 | list_del(&c->vm_list); |
376 | |||
377 | spin_unlock_irqrestore(&consistent_lock, flags); | 384 | spin_unlock_irqrestore(&consistent_lock, flags); |
378 | 385 | ||
379 | kfree(c); | 386 | kfree(c); |
diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types index 048c9c19aa4f..465487470d0e 100644 --- a/arch/arm/tools/mach-types +++ b/arch/arm/tools/mach-types | |||
@@ -12,7 +12,7 @@ | |||
12 | # | 12 | # |
13 | # http://www.arm.linux.org.uk/developer/machines/?action=new | 13 | # http://www.arm.linux.org.uk/developer/machines/?action=new |
14 | # | 14 | # |
15 | # Last update: Fri Nov 11 21:55:04 2005 | 15 | # Last update: Fri Nov 25 14:43:04 2005 |
16 | # | 16 | # |
17 | # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number | 17 | # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number |
18 | # | 18 | # |
@@ -857,12 +857,12 @@ osiris MACH_OSIRIS OSIRIS 842 | |||
857 | maestro MACH_MAESTRO MAESTRO 843 | 857 | maestro MACH_MAESTRO MAESTRO 843 |
858 | tunge2 MACH_TUNGE2 TUNGE2 844 | 858 | tunge2 MACH_TUNGE2 TUNGE2 844 |
859 | ixbbm MACH_IXBBM IXBBM 845 | 859 | ixbbm MACH_IXBBM IXBBM 845 |
860 | mx27 MACH_MX27 MX27 846 | 860 | mx27ads MACH_MX27 MX27 846 |
861 | ax8004 MACH_AX8004 AX8004 847 | 861 | ax8004 MACH_AX8004 AX8004 847 |
862 | at91sam9261ek MACH_AT91SAM9261EK AT91SAM9261EK 848 | 862 | at91sam9261ek MACH_AT91SAM9261EK AT91SAM9261EK 848 |
863 | loft MACH_LOFT LOFT 849 | 863 | loft MACH_LOFT LOFT 849 |
864 | magpie MACH_MAGPIE MAGPIE 850 | 864 | magpie MACH_MAGPIE MAGPIE 850 |
865 | mx21 MACH_MX21 MX21 851 | 865 | mx21ads MACH_MX21 MX21 851 |
866 | mb87m3400 MACH_MB87M3400 MB87M3400 852 | 866 | mb87m3400 MACH_MB87M3400 MB87M3400 852 |
867 | mguard_delta MACH_MGUARD_DELTA MGUARD_DELTA 853 | 867 | mguard_delta MACH_MGUARD_DELTA MGUARD_DELTA 853 |
868 | davinci_dvdp MACH_DAVINCI_DVDP DAVINCI_DVDP 854 | 868 | davinci_dvdp MACH_DAVINCI_DVDP DAVINCI_DVDP 854 |
@@ -897,10 +897,16 @@ omi_board MACH_OMI_BOARD OMI_BOARD 882 | |||
897 | mx21civ MACH_MX21CIV MX21CIV 883 | 897 | mx21civ MACH_MX21CIV MX21CIV 883 |
898 | mahi_cdac MACH_MAHI_CDAC MAHI_CDAC 884 | 898 | mahi_cdac MACH_MAHI_CDAC MAHI_CDAC 884 |
899 | xscale_palmtx MACH_XSCALE_PALMTX XSCALE_PALMTX 885 | 899 | xscale_palmtx MACH_XSCALE_PALMTX XSCALE_PALMTX 885 |
900 | arch_s3c2413 MACH_ARCH_S3C2413 ARCH_S3C2413 886 | ||
901 | s3c2413 MACH_S3C2413 S3C2413 887 | 900 | s3c2413 MACH_S3C2413 S3C2413 887 |
902 | samsys_ep0 MACH_SAMSYS_EP0 SAMSYS_EP0 888 | 901 | samsys_ep0 MACH_SAMSYS_EP0 SAMSYS_EP0 888 |
903 | wg302v1 MACH_WG302V1 WG302V1 889 | 902 | wg302v1 MACH_WG302V1 WG302V1 889 |
904 | wg302v2 MACH_WG302V2 WG302V2 890 | 903 | wg302v2 MACH_WG302V2 WG302V2 890 |
905 | eb42x MACH_EB42X EB42X 891 | 904 | eb42x MACH_EB42X EB42X 891 |
906 | iq331es MACH_IQ331ES IQ331ES 892 | 905 | iq331es MACH_IQ331ES IQ331ES 892 |
906 | cosydsp MACH_COSYDSP COSYDSP 893 | ||
907 | uplat7d MACH_UPLAT7D UPLAT7D 894 | ||
908 | ptdavinci MACH_PTDAVINCI PTDAVINCI 895 | ||
909 | mbus MACH_MBUS MBUS 896 | ||
910 | nadia2vb MACH_NADIA2VB NADIA2VB 897 | ||
911 | r1000 MACH_R1000 R1000 898 | ||
912 | hw90250 MACH_HW90250 HW90250 899 | ||
diff --git a/arch/frv/kernel/semaphore.c b/arch/frv/kernel/semaphore.c index 5cba9c1f2b3d..7971d680ae29 100644 --- a/arch/frv/kernel/semaphore.c +++ b/arch/frv/kernel/semaphore.c | |||
@@ -20,7 +20,7 @@ struct sem_waiter { | |||
20 | struct task_struct *task; | 20 | struct task_struct *task; |
21 | }; | 21 | }; |
22 | 22 | ||
23 | #if SEM_DEBUG | 23 | #if SEMAPHORE_DEBUG |
24 | void semtrace(struct semaphore *sem, const char *str) | 24 | void semtrace(struct semaphore *sem, const char *str) |
25 | { | 25 | { |
26 | if (sem->debug) | 26 | if (sem->debug) |
diff --git a/arch/frv/mb93090-mb00/pci-irq.c b/arch/frv/mb93090-mb00/pci-irq.c index af981bda015c..24622d89b1ca 100644 --- a/arch/frv/mb93090-mb00/pci-irq.c +++ b/arch/frv/mb93090-mb00/pci-irq.c | |||
@@ -60,7 +60,7 @@ void __init pcibios_fixup_irqs(void) | |||
60 | } | 60 | } |
61 | } | 61 | } |
62 | 62 | ||
63 | void __init pcibios_penalize_isa_irq(int irq, int active) | 63 | void __init pcibios_penalize_isa_irq(int irq) |
64 | { | 64 | { |
65 | } | 65 | } |
66 | 66 | ||
diff --git a/arch/frv/mm/init.c b/arch/frv/mm/init.c index 79433159b5f0..765088ea8a50 100644 --- a/arch/frv/mm/init.c +++ b/arch/frv/mm/init.c | |||
@@ -108,7 +108,7 @@ void __init paging_init(void) | |||
108 | 108 | ||
109 | memset((void *) empty_zero_page, 0, PAGE_SIZE); | 109 | memset((void *) empty_zero_page, 0, PAGE_SIZE); |
110 | 110 | ||
111 | #if CONFIG_HIGHMEM | 111 | #ifdef CONFIG_HIGHMEM |
112 | if (num_physpages - num_mappedpages) { | 112 | if (num_physpages - num_mappedpages) { |
113 | pgd_t *pge; | 113 | pgd_t *pge; |
114 | pud_t *pue; | 114 | pud_t *pue; |
diff --git a/arch/frv/mm/pgalloc.c b/arch/frv/mm/pgalloc.c index 2c67dfe5a6b3..f76dd03ddd99 100644 --- a/arch/frv/mm/pgalloc.c +++ b/arch/frv/mm/pgalloc.c | |||
@@ -85,7 +85,7 @@ static inline void pgd_list_add(pgd_t *pgd) | |||
85 | struct page *page = virt_to_page(pgd); | 85 | struct page *page = virt_to_page(pgd); |
86 | page->index = (unsigned long) pgd_list; | 86 | page->index = (unsigned long) pgd_list; |
87 | if (pgd_list) | 87 | if (pgd_list) |
88 | pgd_list->private = (unsigned long) &page->index; | 88 | set_page_private(pgd_list, (unsigned long) &page->index); |
89 | pgd_list = page; | 89 | pgd_list = page; |
90 | set_page_private(page, (unsigned long)&pgd_list); | 90 | set_page_private(page, (unsigned long)&pgd_list); |
91 | } | 91 | } |
@@ -94,10 +94,10 @@ static inline void pgd_list_del(pgd_t *pgd) | |||
94 | { | 94 | { |
95 | struct page *next, **pprev, *page = virt_to_page(pgd); | 95 | struct page *next, **pprev, *page = virt_to_page(pgd); |
96 | next = (struct page *) page->index; | 96 | next = (struct page *) page->index; |
97 | pprev = (struct page **)page_private(page); | 97 | pprev = (struct page **) page_private(page); |
98 | *pprev = next; | 98 | *pprev = next; |
99 | if (next) | 99 | if (next) |
100 | next->private = (unsigned long) pprev; | 100 | set_page_private(next, (unsigned long) pprev); |
101 | } | 101 | } |
102 | 102 | ||
103 | void pgd_ctor(void *pgd, kmem_cache_t *cache, unsigned long unused) | 103 | void pgd_ctor(void *pgd, kmem_cache_t *cache, unsigned long unused) |
diff --git a/arch/i386/kernel/process.c b/arch/i386/kernel/process.c index 1cb261f225d5..df6c2bcde067 100644 --- a/arch/i386/kernel/process.c +++ b/arch/i386/kernel/process.c | |||
@@ -393,13 +393,6 @@ void flush_thread(void) | |||
393 | { | 393 | { |
394 | struct task_struct *tsk = current; | 394 | struct task_struct *tsk = current; |
395 | 395 | ||
396 | /* | ||
397 | * Remove function-return probe instances associated with this task | ||
398 | * and put them back on the free list. Do not insert an exit probe for | ||
399 | * this function, it will be disabled by kprobe_flush_task if you do. | ||
400 | */ | ||
401 | kprobe_flush_task(tsk); | ||
402 | |||
403 | memset(tsk->thread.debugreg, 0, sizeof(unsigned long)*8); | 396 | memset(tsk->thread.debugreg, 0, sizeof(unsigned long)*8); |
404 | memset(tsk->thread.tls_array, 0, sizeof(tsk->thread.tls_array)); | 397 | memset(tsk->thread.tls_array, 0, sizeof(tsk->thread.tls_array)); |
405 | /* | 398 | /* |
diff --git a/arch/i386/pci/common.c b/arch/i386/pci/common.c index c96bea14b98f..f6bc48da4d2a 100644 --- a/arch/i386/pci/common.c +++ b/arch/i386/pci/common.c | |||
@@ -132,7 +132,7 @@ struct pci_bus * __devinit pcibios_scan_root(int busnum) | |||
132 | } | 132 | } |
133 | } | 133 | } |
134 | 134 | ||
135 | printk("PCI: Probing PCI hardware (bus %02x)\n", busnum); | 135 | printk(KERN_DEBUG "PCI: Probing PCI hardware (bus %02x)\n", busnum); |
136 | 136 | ||
137 | return pci_scan_bus_parented(NULL, busnum, &pci_root_ops, NULL); | 137 | return pci_scan_bus_parented(NULL, busnum, &pci_root_ops, NULL); |
138 | } | 138 | } |
@@ -144,7 +144,7 @@ static int __init pcibios_init(void) | |||
144 | struct cpuinfo_x86 *c = &boot_cpu_data; | 144 | struct cpuinfo_x86 *c = &boot_cpu_data; |
145 | 145 | ||
146 | if (!raw_pci_ops) { | 146 | if (!raw_pci_ops) { |
147 | printk("PCI: System does not support PCI\n"); | 147 | printk(KERN_WARNING "PCI: System does not support PCI\n"); |
148 | return 0; | 148 | return 0; |
149 | } | 149 | } |
150 | 150 | ||
diff --git a/arch/i386/pci/direct.c b/arch/i386/pci/direct.c index 30b7e9b4f6a2..94331d6be7a3 100644 --- a/arch/i386/pci/direct.c +++ b/arch/i386/pci/direct.c | |||
@@ -201,7 +201,7 @@ static int __init pci_sanity_check(struct pci_raw_ops *o) | |||
201 | return 1; | 201 | return 1; |
202 | } | 202 | } |
203 | 203 | ||
204 | DBG("PCI: Sanity check failed\n"); | 204 | DBG(KERN_WARNING "PCI: Sanity check failed\n"); |
205 | return 0; | 205 | return 0; |
206 | } | 206 | } |
207 | 207 | ||
diff --git a/arch/i386/pci/i386.c b/arch/i386/pci/i386.c index 6d6338500c3c..ed2c8c899bd3 100644 --- a/arch/i386/pci/i386.c +++ b/arch/i386/pci/i386.c | |||
@@ -221,6 +221,11 @@ int pcibios_enable_resources(struct pci_dev *dev, int mask) | |||
221 | continue; | 221 | continue; |
222 | 222 | ||
223 | r = &dev->resource[idx]; | 223 | r = &dev->resource[idx]; |
224 | if (!(r->flags & (IORESOURCE_IO | IORESOURCE_MEM))) | ||
225 | continue; | ||
226 | if ((idx == PCI_ROM_RESOURCE) && | ||
227 | (!(r->flags & IORESOURCE_ROM_ENABLE))) | ||
228 | continue; | ||
224 | if (!r->start && r->end) { | 229 | if (!r->start && r->end) { |
225 | printk(KERN_ERR "PCI: Device %s not available because of resource collisions\n", pci_name(dev)); | 230 | printk(KERN_ERR "PCI: Device %s not available because of resource collisions\n", pci_name(dev)); |
226 | return -EINVAL; | 231 | return -EINVAL; |
@@ -230,8 +235,6 @@ int pcibios_enable_resources(struct pci_dev *dev, int mask) | |||
230 | if (r->flags & IORESOURCE_MEM) | 235 | if (r->flags & IORESOURCE_MEM) |
231 | cmd |= PCI_COMMAND_MEMORY; | 236 | cmd |= PCI_COMMAND_MEMORY; |
232 | } | 237 | } |
233 | if (dev->resource[PCI_ROM_RESOURCE].start) | ||
234 | cmd |= PCI_COMMAND_MEMORY; | ||
235 | if (cmd != old_cmd) { | 238 | if (cmd != old_cmd) { |
236 | printk("PCI: Enabling device %s (%04x -> %04x)\n", pci_name(dev), old_cmd, cmd); | 239 | printk("PCI: Enabling device %s (%04x -> %04x)\n", pci_name(dev), old_cmd, cmd); |
237 | pci_write_config_word(dev, PCI_COMMAND, cmd); | 240 | pci_write_config_word(dev, PCI_COMMAND, cmd); |
diff --git a/arch/ia64/kernel/process.c b/arch/ia64/kernel/process.c index 4305d2ba76f6..2e33665d9c18 100644 --- a/arch/ia64/kernel/process.c +++ b/arch/ia64/kernel/process.c | |||
@@ -718,13 +718,6 @@ kernel_thread_helper (int (*fn)(void *), void *arg) | |||
718 | void | 718 | void |
719 | flush_thread (void) | 719 | flush_thread (void) |
720 | { | 720 | { |
721 | /* | ||
722 | * Remove function-return probe instances associated with this task | ||
723 | * and put them back on the free list. Do not insert an exit probe for | ||
724 | * this function, it will be disabled by kprobe_flush_task if you do. | ||
725 | */ | ||
726 | kprobe_flush_task(current); | ||
727 | |||
728 | /* drop floating-point and debug-register state if it exists: */ | 721 | /* drop floating-point and debug-register state if it exists: */ |
729 | current->thread.flags &= ~(IA64_THREAD_FPH_VALID | IA64_THREAD_DBG_VALID); | 722 | current->thread.flags &= ~(IA64_THREAD_FPH_VALID | IA64_THREAD_DBG_VALID); |
730 | ia64_drop_fpu(current); | 723 | ia64_drop_fpu(current); |
diff --git a/arch/ia64/sn/kernel/bte.c b/arch/ia64/sn/kernel/bte.c index d71f4de44f79..dd73c0cb754b 100644 --- a/arch/ia64/sn/kernel/bte.c +++ b/arch/ia64/sn/kernel/bte.c | |||
@@ -137,6 +137,7 @@ retry_bteop: | |||
137 | bte = bte_if_on_node(nasid_to_try[nasid_index],bte_if_index); | 137 | bte = bte_if_on_node(nasid_to_try[nasid_index],bte_if_index); |
138 | 138 | ||
139 | if (bte == NULL) { | 139 | if (bte == NULL) { |
140 | nasid_index++; | ||
140 | continue; | 141 | continue; |
141 | } | 142 | } |
142 | 143 | ||
diff --git a/arch/ia64/sn/kernel/sn2/sn2_smp.c b/arch/ia64/sn/kernel/sn2/sn2_smp.c index 49b530c39a42..5d54f5f4e926 100644 --- a/arch/ia64/sn/kernel/sn2/sn2_smp.c +++ b/arch/ia64/sn/kernel/sn2/sn2_smp.c | |||
@@ -492,6 +492,9 @@ static struct proc_dir_entry *proc_sn2_ptc; | |||
492 | 492 | ||
493 | static int __init sn2_ptc_init(void) | 493 | static int __init sn2_ptc_init(void) |
494 | { | 494 | { |
495 | if (!ia64_platform_is("sn2")) | ||
496 | return -ENOSYS; | ||
497 | |||
495 | if (!(proc_sn2_ptc = create_proc_entry(PTC_BASENAME, 0444, NULL))) { | 498 | if (!(proc_sn2_ptc = create_proc_entry(PTC_BASENAME, 0444, NULL))) { |
496 | printk(KERN_ERR "unable to create %s proc entry", PTC_BASENAME); | 499 | printk(KERN_ERR "unable to create %s proc entry", PTC_BASENAME); |
497 | return -EINVAL; | 500 | return -EINVAL; |
diff --git a/arch/ia64/sn/kernel/sn2/sn_hwperf.c b/arch/ia64/sn/kernel/sn2/sn_hwperf.c index 6c6fbca3229c..19b54fbcd7ea 100644 --- a/arch/ia64/sn/kernel/sn2/sn_hwperf.c +++ b/arch/ia64/sn/kernel/sn2/sn_hwperf.c | |||
@@ -743,13 +743,14 @@ sn_hwperf_ioctl(struct inode *in, struct file *fp, u32 op, u64 arg) | |||
743 | if ((r = sn_hwperf_enum_objects(&nobj, &objs)) == 0) { | 743 | if ((r = sn_hwperf_enum_objects(&nobj, &objs)) == 0) { |
744 | memset(p, 0, a.sz); | 744 | memset(p, 0, a.sz); |
745 | for (i = 0; i < nobj; i++) { | 745 | for (i = 0; i < nobj; i++) { |
746 | int cpuobj_index = 0; | ||
746 | if (!SN_HWPERF_IS_NODE(objs + i)) | 747 | if (!SN_HWPERF_IS_NODE(objs + i)) |
747 | continue; | 748 | continue; |
748 | node = sn_hwperf_obj_to_cnode(objs + i); | 749 | node = sn_hwperf_obj_to_cnode(objs + i); |
749 | for_each_online_cpu(j) { | 750 | for_each_online_cpu(j) { |
750 | if (node != cpu_to_node(j)) | 751 | if (node != cpu_to_node(j)) |
751 | continue; | 752 | continue; |
752 | cpuobj = (struct sn_hwperf_object_info *) p + j; | 753 | cpuobj = (struct sn_hwperf_object_info *) p + cpuobj_index++; |
753 | slice = 'a' + cpuid_to_slice(j); | 754 | slice = 'a' + cpuid_to_slice(j); |
754 | cdata = cpu_data(j); | 755 | cdata = cpu_data(j); |
755 | cpuobj->id = j; | 756 | cpuobj->id = j; |
diff --git a/arch/m32r/kernel/io_mappi3.c b/arch/m32r/kernel/io_mappi3.c index 6716ffea769a..f80321a58764 100644 --- a/arch/m32r/kernel/io_mappi3.c +++ b/arch/m32r/kernel/io_mappi3.c | |||
@@ -36,12 +36,13 @@ static inline void *_port2addr(unsigned long port) | |||
36 | return (void *)(port + NONCACHE_OFFSET); | 36 | return (void *)(port + NONCACHE_OFFSET); |
37 | } | 37 | } |
38 | 38 | ||
39 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 39 | #if defined(CONFIG_IDE) |
40 | static inline void *__port2addr_ata(unsigned long port) | 40 | static inline void *__port2addr_ata(unsigned long port) |
41 | { | 41 | { |
42 | static int dummy_reg; | 42 | static int dummy_reg; |
43 | 43 | ||
44 | switch (port) { | 44 | switch (port) { |
45 | /* IDE0 CF */ | ||
45 | case 0x1f0: return (void *)0xb4002000; | 46 | case 0x1f0: return (void *)0xb4002000; |
46 | case 0x1f1: return (void *)0xb4012800; | 47 | case 0x1f1: return (void *)0xb4012800; |
47 | case 0x1f2: return (void *)0xb4012002; | 48 | case 0x1f2: return (void *)0xb4012002; |
@@ -51,6 +52,17 @@ static inline void *__port2addr_ata(unsigned long port) | |||
51 | case 0x1f6: return (void *)0xb4012006; | 52 | case 0x1f6: return (void *)0xb4012006; |
52 | case 0x1f7: return (void *)0xb4012806; | 53 | case 0x1f7: return (void *)0xb4012806; |
53 | case 0x3f6: return (void *)0xb401200e; | 54 | case 0x3f6: return (void *)0xb401200e; |
55 | /* IDE1 IDE */ | ||
56 | case 0x170: return (void *)0xb4810000; /* Data 16bit */ | ||
57 | case 0x171: return (void *)0xb4810002; /* Features / Error */ | ||
58 | case 0x172: return (void *)0xb4810004; /* Sector count */ | ||
59 | case 0x173: return (void *)0xb4810006; /* Sector number */ | ||
60 | case 0x174: return (void *)0xb4810008; /* Cylinder low */ | ||
61 | case 0x175: return (void *)0xb481000a; /* Cylinder high */ | ||
62 | case 0x176: return (void *)0xb481000c; /* Device head */ | ||
63 | case 0x177: return (void *)0xb481000e; /* Command */ | ||
64 | case 0x376: return (void *)0xb480800c; /* Device control / Alt status */ | ||
65 | |||
54 | default: return (void *)&dummy_reg; | 66 | default: return (void *)&dummy_reg; |
55 | } | 67 | } |
56 | } | 68 | } |
@@ -108,8 +120,9 @@ unsigned char _inb(unsigned long port) | |||
108 | { | 120 | { |
109 | if (port >= LAN_IOSTART && port < LAN_IOEND) | 121 | if (port >= LAN_IOSTART && port < LAN_IOEND) |
110 | return _ne_inb(PORT2ADDR_NE(port)); | 122 | return _ne_inb(PORT2ADDR_NE(port)); |
111 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 123 | #if defined(CONFIG_IDE) |
112 | else if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 124 | else if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
125 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
113 | return *(volatile unsigned char *)__port2addr_ata(port); | 126 | return *(volatile unsigned char *)__port2addr_ata(port); |
114 | } | 127 | } |
115 | #endif | 128 | #endif |
@@ -127,8 +140,9 @@ unsigned short _inw(unsigned long port) | |||
127 | { | 140 | { |
128 | if (port >= LAN_IOSTART && port < LAN_IOEND) | 141 | if (port >= LAN_IOSTART && port < LAN_IOEND) |
129 | return _ne_inw(PORT2ADDR_NE(port)); | 142 | return _ne_inw(PORT2ADDR_NE(port)); |
130 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 143 | #if defined(CONFIG_IDE) |
131 | else if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 144 | else if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
145 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
132 | return *(volatile unsigned short *)__port2addr_ata(port); | 146 | return *(volatile unsigned short *)__port2addr_ata(port); |
133 | } | 147 | } |
134 | #endif | 148 | #endif |
@@ -185,8 +199,9 @@ void _outb(unsigned char b, unsigned long port) | |||
185 | if (port >= LAN_IOSTART && port < LAN_IOEND) | 199 | if (port >= LAN_IOSTART && port < LAN_IOEND) |
186 | _ne_outb(b, PORT2ADDR_NE(port)); | 200 | _ne_outb(b, PORT2ADDR_NE(port)); |
187 | else | 201 | else |
188 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 202 | #if defined(CONFIG_IDE) |
189 | if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 203 | if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
204 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
190 | *(volatile unsigned char *)__port2addr_ata(port) = b; | 205 | *(volatile unsigned char *)__port2addr_ata(port) = b; |
191 | } else | 206 | } else |
192 | #endif | 207 | #endif |
@@ -203,8 +218,9 @@ void _outw(unsigned short w, unsigned long port) | |||
203 | if (port >= LAN_IOSTART && port < LAN_IOEND) | 218 | if (port >= LAN_IOSTART && port < LAN_IOEND) |
204 | _ne_outw(w, PORT2ADDR_NE(port)); | 219 | _ne_outw(w, PORT2ADDR_NE(port)); |
205 | else | 220 | else |
206 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 221 | #if defined(CONFIG_IDE) |
207 | if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 222 | if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
223 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
208 | *(volatile unsigned short *)__port2addr_ata(port) = w; | 224 | *(volatile unsigned short *)__port2addr_ata(port) = w; |
209 | } else | 225 | } else |
210 | #endif | 226 | #endif |
@@ -253,8 +269,9 @@ void _insb(unsigned int port, void * addr, unsigned long count) | |||
253 | { | 269 | { |
254 | if (port >= LAN_IOSTART && port < LAN_IOEND) | 270 | if (port >= LAN_IOSTART && port < LAN_IOEND) |
255 | _ne_insb(PORT2ADDR_NE(port), addr, count); | 271 | _ne_insb(PORT2ADDR_NE(port), addr, count); |
256 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 272 | #if defined(CONFIG_IDE) |
257 | else if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 273 | else if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
274 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
258 | unsigned char *buf = addr; | 275 | unsigned char *buf = addr; |
259 | unsigned char *portp = __port2addr_ata(port); | 276 | unsigned char *portp = __port2addr_ata(port); |
260 | while (count--) | 277 | while (count--) |
@@ -289,8 +306,9 @@ void _insw(unsigned int port, void * addr, unsigned long count) | |||
289 | pcc_ioread_word(9, port, (void *)addr, sizeof(unsigned short), | 306 | pcc_ioread_word(9, port, (void *)addr, sizeof(unsigned short), |
290 | count, 1); | 307 | count, 1); |
291 | #endif | 308 | #endif |
292 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 309 | #if defined(CONFIG_IDE) |
293 | } else if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 310 | } else if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
311 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
294 | portp = __port2addr_ata(port); | 312 | portp = __port2addr_ata(port); |
295 | while (count--) | 313 | while (count--) |
296 | *buf++ = *(volatile unsigned short *)portp; | 314 | *buf++ = *(volatile unsigned short *)portp; |
@@ -321,8 +339,9 @@ void _outsb(unsigned int port, const void * addr, unsigned long count) | |||
321 | portp = PORT2ADDR_NE(port); | 339 | portp = PORT2ADDR_NE(port); |
322 | while (count--) | 340 | while (count--) |
323 | _ne_outb(*buf++, portp); | 341 | _ne_outb(*buf++, portp); |
324 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 342 | #if defined(CONFIG_IDE) |
325 | } else if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 343 | } else if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
344 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
326 | portp = __port2addr_ata(port); | 345 | portp = __port2addr_ata(port); |
327 | while (count--) | 346 | while (count--) |
328 | *(volatile unsigned char *)portp = *buf++; | 347 | *(volatile unsigned char *)portp = *buf++; |
@@ -348,8 +367,9 @@ void _outsw(unsigned int port, const void * addr, unsigned long count) | |||
348 | portp = PORT2ADDR_NE(port); | 367 | portp = PORT2ADDR_NE(port); |
349 | while (count--) | 368 | while (count--) |
350 | *(volatile unsigned short *)portp = *buf++; | 369 | *(volatile unsigned short *)portp = *buf++; |
351 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 370 | #if defined(CONFIG_IDE) |
352 | } else if ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) { | 371 | } else if ( ((port >= 0x170 && port <=0x177) || port == 0x376) || |
372 | ((port >= 0x1f0 && port <=0x1f7) || port == 0x3f6) ){ | ||
353 | portp = __port2addr_ata(port); | 373 | portp = __port2addr_ata(port); |
354 | while (count--) | 374 | while (count--) |
355 | *(volatile unsigned short *)portp = *buf++; | 375 | *(volatile unsigned short *)portp = *buf++; |
diff --git a/arch/m32r/kernel/setup_mappi3.c b/arch/m32r/kernel/setup_mappi3.c index 9c79341a7b45..f6ecdf7f555c 100644 --- a/arch/m32r/kernel/setup_mappi3.c +++ b/arch/m32r/kernel/setup_mappi3.c | |||
@@ -151,7 +151,7 @@ void __init init_IRQ(void) | |||
151 | disable_mappi3_irq(M32R_IRQ_INT1); | 151 | disable_mappi3_irq(M32R_IRQ_INT1); |
152 | #endif /* CONFIG_USB */ | 152 | #endif /* CONFIG_USB */ |
153 | 153 | ||
154 | /* ICUCR40: CFC IREQ */ | 154 | /* CFC IREQ */ |
155 | irq_desc[PLD_IRQ_CFIREQ].status = IRQ_DISABLED; | 155 | irq_desc[PLD_IRQ_CFIREQ].status = IRQ_DISABLED; |
156 | irq_desc[PLD_IRQ_CFIREQ].handler = &mappi3_irq_type; | 156 | irq_desc[PLD_IRQ_CFIREQ].handler = &mappi3_irq_type; |
157 | irq_desc[PLD_IRQ_CFIREQ].action = 0; | 157 | irq_desc[PLD_IRQ_CFIREQ].action = 0; |
@@ -160,7 +160,7 @@ void __init init_IRQ(void) | |||
160 | disable_mappi3_irq(PLD_IRQ_CFIREQ); | 160 | disable_mappi3_irq(PLD_IRQ_CFIREQ); |
161 | 161 | ||
162 | #if defined(CONFIG_M32R_CFC) | 162 | #if defined(CONFIG_M32R_CFC) |
163 | /* ICUCR41: CFC Insert */ | 163 | /* ICUCR41: CFC Insert & eject */ |
164 | irq_desc[PLD_IRQ_CFC_INSERT].status = IRQ_DISABLED; | 164 | irq_desc[PLD_IRQ_CFC_INSERT].status = IRQ_DISABLED; |
165 | irq_desc[PLD_IRQ_CFC_INSERT].handler = &mappi3_irq_type; | 165 | irq_desc[PLD_IRQ_CFC_INSERT].handler = &mappi3_irq_type; |
166 | irq_desc[PLD_IRQ_CFC_INSERT].action = 0; | 166 | irq_desc[PLD_IRQ_CFC_INSERT].action = 0; |
@@ -168,14 +168,16 @@ void __init init_IRQ(void) | |||
168 | icu_data[PLD_IRQ_CFC_INSERT].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD00; | 168 | icu_data[PLD_IRQ_CFC_INSERT].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD00; |
169 | disable_mappi3_irq(PLD_IRQ_CFC_INSERT); | 169 | disable_mappi3_irq(PLD_IRQ_CFC_INSERT); |
170 | 170 | ||
171 | /* ICUCR42: CFC Eject */ | ||
172 | irq_desc[PLD_IRQ_CFC_EJECT].status = IRQ_DISABLED; | ||
173 | irq_desc[PLD_IRQ_CFC_EJECT].handler = &mappi3_irq_type; | ||
174 | irq_desc[PLD_IRQ_CFC_EJECT].action = 0; | ||
175 | irq_desc[PLD_IRQ_CFC_EJECT].depth = 1; /* disable nested irq */ | ||
176 | icu_data[PLD_IRQ_CFC_EJECT].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD10; | ||
177 | disable_mappi3_irq(PLD_IRQ_CFC_EJECT); | ||
178 | #endif /* CONFIG_M32R_CFC */ | 171 | #endif /* CONFIG_M32R_CFC */ |
172 | |||
173 | /* IDE IREQ */ | ||
174 | irq_desc[PLD_IRQ_IDEIREQ].status = IRQ_DISABLED; | ||
175 | irq_desc[PLD_IRQ_IDEIREQ].handler = &mappi3_irq_type; | ||
176 | irq_desc[PLD_IRQ_IDEIREQ].action = 0; | ||
177 | irq_desc[PLD_IRQ_IDEIREQ].depth = 1; /* disable nested irq */ | ||
178 | icu_data[PLD_IRQ_IDEIREQ].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD10; | ||
179 | disable_mappi3_irq(PLD_IRQ_IDEIREQ); | ||
180 | |||
179 | } | 181 | } |
180 | 182 | ||
181 | #if defined(CONFIG_SMC91X) | 183 | #if defined(CONFIG_SMC91X) |
diff --git a/arch/m32r/kernel/sys_m32r.c b/arch/m32r/kernel/sys_m32r.c index e0500e12c5fb..fe55b28d3725 100644 --- a/arch/m32r/kernel/sys_m32r.c +++ b/arch/m32r/kernel/sys_m32r.c | |||
@@ -41,7 +41,8 @@ asmlinkage int sys_tas(int *addr) | |||
41 | return -EFAULT; | 41 | return -EFAULT; |
42 | local_irq_save(flags); | 42 | local_irq_save(flags); |
43 | oldval = *addr; | 43 | oldval = *addr; |
44 | *addr = 1; | 44 | if (!oldval) |
45 | *addr = 1; | ||
45 | local_irq_restore(flags); | 46 | local_irq_restore(flags); |
46 | return oldval; | 47 | return oldval; |
47 | } | 48 | } |
@@ -59,7 +60,8 @@ asmlinkage int sys_tas(int *addr) | |||
59 | 60 | ||
60 | _raw_spin_lock(&tas_lock); | 61 | _raw_spin_lock(&tas_lock); |
61 | oldval = *addr; | 62 | oldval = *addr; |
62 | *addr = 1; | 63 | if (!oldval) |
64 | *addr = 1; | ||
63 | _raw_spin_unlock(&tas_lock); | 65 | _raw_spin_unlock(&tas_lock); |
64 | 66 | ||
65 | return oldval; | 67 | return oldval; |
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile index 98f67c78d1bd..a13eb575f834 100644 --- a/arch/powerpc/Makefile +++ b/arch/powerpc/Makefile | |||
@@ -61,15 +61,17 @@ endif | |||
61 | LDFLAGS_vmlinux := -Bstatic | 61 | LDFLAGS_vmlinux := -Bstatic |
62 | 62 | ||
63 | # The -Iarch/$(ARCH)/include is temporary while we are merging | 63 | # The -Iarch/$(ARCH)/include is temporary while we are merging |
64 | CPPFLAGS += -Iarch/$(ARCH) -Iarch/$(ARCH)/include | 64 | CPPFLAGS-$(CONFIG_PPC32) := -Iarch/$(ARCH) -Iarch/$(ARCH)/include |
65 | AFLAGS += -Iarch/$(ARCH) | 65 | AFLAGS-$(CONFIG_PPC32) := -Iarch/$(ARCH) |
66 | CFLAGS += -Iarch/$(ARCH) -msoft-float -pipe | ||
67 | CFLAGS-$(CONFIG_PPC64) := -mminimal-toc -mtraceback=none -mcall-aixdesc | 66 | CFLAGS-$(CONFIG_PPC64) := -mminimal-toc -mtraceback=none -mcall-aixdesc |
68 | CFLAGS-$(CONFIG_PPC32) := -ffixed-r2 -mmultiple | 67 | CFLAGS-$(CONFIG_PPC32) := -Iarch/$(ARCH) -ffixed-r2 -mmultiple |
69 | CFLAGS += $(CFLAGS-y) | 68 | CPPFLAGS += $(CPPFLAGS-y) |
69 | AFLAGS += $(AFLAGS-y) | ||
70 | CFLAGS += -msoft-float -pipe $(CFLAGS-y) | ||
70 | CPP = $(CC) -E $(CFLAGS) | 71 | CPP = $(CC) -E $(CFLAGS) |
71 | # Temporary hack until we have migrated to asm-powerpc | 72 | # Temporary hack until we have migrated to asm-powerpc |
72 | LINUXINCLUDE += -Iarch/$(ARCH)/include | 73 | LINUXINCLUDE-$(CONFIG_PPC32) := -Iarch/$(ARCH)/include |
74 | LINUXINCLUDE += $(LINUXINCLUDE-y) | ||
73 | 75 | ||
74 | CHECKFLAGS += -m$(SZ) -D__powerpc__ -D__powerpc$(SZ)__ | 76 | CHECKFLAGS += -m$(SZ) -D__powerpc__ -D__powerpc$(SZ)__ |
75 | 77 | ||
@@ -173,11 +175,13 @@ archclean: | |||
173 | 175 | ||
174 | archprepare: checkbin | 176 | archprepare: checkbin |
175 | 177 | ||
178 | ifeq ($(CONFIG_PPC32),y) | ||
176 | # Temporary hack until we have migrated to asm-powerpc | 179 | # Temporary hack until we have migrated to asm-powerpc |
177 | include/asm: arch/$(ARCH)/include/asm | 180 | include/asm: arch/$(ARCH)/include/asm |
178 | arch/$(ARCH)/include/asm: FORCE | 181 | arch/$(ARCH)/include/asm: FORCE |
179 | $(Q)if [ ! -d arch/$(ARCH)/include ]; then mkdir -p arch/$(ARCH)/include; fi | 182 | $(Q)if [ ! -d arch/$(ARCH)/include ]; then mkdir -p arch/$(ARCH)/include; fi |
180 | $(Q)ln -fsn $(srctree)/include/asm-$(OLDARCH) arch/$(ARCH)/include/asm | 183 | $(Q)ln -fsn $(srctree)/include/asm-$(OLDARCH) arch/$(ARCH)/include/asm |
184 | endif | ||
181 | 185 | ||
182 | # Use the file '.tmp_gas_check' for binutils tests, as gas won't output | 186 | # Use the file '.tmp_gas_check' for binutils tests, as gas won't output |
183 | # to stdout and these checks are run even on install targets. | 187 | # to stdout and these checks are run even on install targets. |
diff --git a/arch/powerpc/kernel/ppc_ksyms.c b/arch/powerpc/kernel/ppc_ksyms.c index af4d1bc9a2eb..94db25708456 100644 --- a/arch/powerpc/kernel/ppc_ksyms.c +++ b/arch/powerpc/kernel/ppc_ksyms.c | |||
@@ -163,15 +163,13 @@ EXPORT_SYMBOL(giveup_altivec); | |||
163 | EXPORT_SYMBOL(giveup_spe); | 163 | EXPORT_SYMBOL(giveup_spe); |
164 | #endif /* CONFIG_SPE */ | 164 | #endif /* CONFIG_SPE */ |
165 | 165 | ||
166 | #ifdef CONFIG_PPC64 | 166 | #ifndef CONFIG_PPC64 |
167 | EXPORT_SYMBOL(__flush_icache_range); | ||
168 | #else | ||
169 | EXPORT_SYMBOL(flush_instruction_cache); | 167 | EXPORT_SYMBOL(flush_instruction_cache); |
170 | EXPORT_SYMBOL(flush_icache_range); | ||
171 | EXPORT_SYMBOL(flush_tlb_kernel_range); | 168 | EXPORT_SYMBOL(flush_tlb_kernel_range); |
172 | EXPORT_SYMBOL(flush_tlb_page); | 169 | EXPORT_SYMBOL(flush_tlb_page); |
173 | EXPORT_SYMBOL(_tlbie); | 170 | EXPORT_SYMBOL(_tlbie); |
174 | #endif | 171 | #endif |
172 | EXPORT_SYMBOL(__flush_icache_range); | ||
175 | EXPORT_SYMBOL(flush_dcache_range); | 173 | EXPORT_SYMBOL(flush_dcache_range); |
176 | 174 | ||
177 | #ifdef CONFIG_SMP | 175 | #ifdef CONFIG_SMP |
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c index de69fb37c731..a5a7542a8ff3 100644 --- a/arch/powerpc/kernel/process.c +++ b/arch/powerpc/kernel/process.c | |||
@@ -457,7 +457,6 @@ void flush_thread(void) | |||
457 | if (t->flags & _TIF_ABI_PENDING) | 457 | if (t->flags & _TIF_ABI_PENDING) |
458 | t->flags ^= (_TIF_ABI_PENDING | _TIF_32BIT); | 458 | t->flags ^= (_TIF_ABI_PENDING | _TIF_32BIT); |
459 | #endif | 459 | #endif |
460 | kprobe_flush_task(current); | ||
461 | 460 | ||
462 | #ifndef CONFIG_SMP | 461 | #ifndef CONFIG_SMP |
463 | if (last_task_used_math == current) | 462 | if (last_task_used_math == current) |
diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c index 0d4d8bec0df4..f0c47dab0903 100644 --- a/arch/powerpc/kernel/vdso.c +++ b/arch/powerpc/kernel/vdso.c | |||
@@ -145,8 +145,7 @@ static void dump_vdso_pages(struct vm_area_struct * vma) | |||
145 | struct page *pg = virt_to_page(vdso32_kbase + | 145 | struct page *pg = virt_to_page(vdso32_kbase + |
146 | i*PAGE_SIZE); | 146 | i*PAGE_SIZE); |
147 | struct page *upg = (vma && vma->vm_mm) ? | 147 | struct page *upg = (vma && vma->vm_mm) ? |
148 | follow_page(vma->vm_mm, vma->vm_start + | 148 | follow_page(vma, vma->vm_start + i*PAGE_SIZE, 0) |
149 | i*PAGE_SIZE, 0) | ||
150 | : NULL; | 149 | : NULL; |
151 | dump_one_vdso_page(pg, upg); | 150 | dump_one_vdso_page(pg, upg); |
152 | } | 151 | } |
@@ -157,8 +156,7 @@ static void dump_vdso_pages(struct vm_area_struct * vma) | |||
157 | struct page *pg = virt_to_page(vdso64_kbase + | 156 | struct page *pg = virt_to_page(vdso64_kbase + |
158 | i*PAGE_SIZE); | 157 | i*PAGE_SIZE); |
159 | struct page *upg = (vma && vma->vm_mm) ? | 158 | struct page *upg = (vma && vma->vm_mm) ? |
160 | follow_page(vma->vm_mm, vma->vm_start + | 159 | follow_page(vma, vma->vm_start + i*PAGE_SIZE, 0) |
161 | i*PAGE_SIZE, 0) | ||
162 | : NULL; | 160 | : NULL; |
163 | dump_one_vdso_page(pg, upg); | 161 | dump_one_vdso_page(pg, upg); |
164 | } | 162 | } |
@@ -285,8 +283,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, | |||
285 | * It's fine to use that for setting breakpoints in the vDSO code | 283 | * It's fine to use that for setting breakpoints in the vDSO code |
286 | * pages though | 284 | * pages though |
287 | */ | 285 | */ |
288 | vma->vm_flags = VM_READ | VM_EXEC | VM_MAYREAD | VM_MAYWRITE | | 286 | vma->vm_flags = VM_READ | VM_EXEC | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC; |
289 | VM_MAYEXEC | VM_RESERVED; | ||
290 | vma->vm_flags |= mm->def_flags; | 287 | vma->vm_flags |= mm->def_flags; |
291 | vma->vm_page_prot = protection_map[vma->vm_flags & 0x7]; | 288 | vma->vm_page_prot = protection_map[vma->vm_flags & 0x7]; |
292 | vma->vm_ops = &vdso_vmops; | 289 | vma->vm_ops = &vdso_vmops; |
diff --git a/arch/powerpc/mm/4xx_mmu.c b/arch/powerpc/mm/4xx_mmu.c index b7bcbc232f39..4d006aa1a0d1 100644 --- a/arch/powerpc/mm/4xx_mmu.c +++ b/arch/powerpc/mm/4xx_mmu.c | |||
@@ -110,13 +110,11 @@ unsigned long __init mmu_mapin_ram(void) | |||
110 | pmd_t *pmdp; | 110 | pmd_t *pmdp; |
111 | unsigned long val = p | _PMD_SIZE_16M | _PAGE_HWEXEC | _PAGE_HWWRITE; | 111 | unsigned long val = p | _PMD_SIZE_16M | _PAGE_HWEXEC | _PAGE_HWWRITE; |
112 | 112 | ||
113 | spin_lock(&init_mm.page_table_lock); | ||
114 | pmdp = pmd_offset(pgd_offset_k(v), v); | 113 | pmdp = pmd_offset(pgd_offset_k(v), v); |
115 | pmd_val(*pmdp++) = val; | 114 | pmd_val(*pmdp++) = val; |
116 | pmd_val(*pmdp++) = val; | 115 | pmd_val(*pmdp++) = val; |
117 | pmd_val(*pmdp++) = val; | 116 | pmd_val(*pmdp++) = val; |
118 | pmd_val(*pmdp++) = val; | 117 | pmd_val(*pmdp++) = val; |
119 | spin_unlock(&init_mm.page_table_lock); | ||
120 | 118 | ||
121 | v += LARGE_PAGE_SIZE_16M; | 119 | v += LARGE_PAGE_SIZE_16M; |
122 | p += LARGE_PAGE_SIZE_16M; | 120 | p += LARGE_PAGE_SIZE_16M; |
@@ -127,10 +125,8 @@ unsigned long __init mmu_mapin_ram(void) | |||
127 | pmd_t *pmdp; | 125 | pmd_t *pmdp; |
128 | unsigned long val = p | _PMD_SIZE_4M | _PAGE_HWEXEC | _PAGE_HWWRITE; | 126 | unsigned long val = p | _PMD_SIZE_4M | _PAGE_HWEXEC | _PAGE_HWWRITE; |
129 | 127 | ||
130 | spin_lock(&init_mm.page_table_lock); | ||
131 | pmdp = pmd_offset(pgd_offset_k(v), v); | 128 | pmdp = pmd_offset(pgd_offset_k(v), v); |
132 | pmd_val(*pmdp) = val; | 129 | pmd_val(*pmdp) = val; |
133 | spin_unlock(&init_mm.page_table_lock); | ||
134 | 130 | ||
135 | v += LARGE_PAGE_SIZE_4M; | 131 | v += LARGE_PAGE_SIZE_4M; |
136 | p += LARGE_PAGE_SIZE_4M; | 132 | p += LARGE_PAGE_SIZE_4M; |
diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c index 426c269e552e..6bc9dbad7dea 100644 --- a/arch/powerpc/mm/hugetlbpage.c +++ b/arch/powerpc/mm/hugetlbpage.c | |||
@@ -287,15 +287,15 @@ static int open_high_hpage_areas(struct mm_struct *mm, u16 newareas) | |||
287 | 287 | ||
288 | int prepare_hugepage_range(unsigned long addr, unsigned long len) | 288 | int prepare_hugepage_range(unsigned long addr, unsigned long len) |
289 | { | 289 | { |
290 | int err; | 290 | int err = 0; |
291 | 291 | ||
292 | if ( (addr+len) < addr ) | 292 | if ( (addr+len) < addr ) |
293 | return -EINVAL; | 293 | return -EINVAL; |
294 | 294 | ||
295 | if ((addr + len) < 0x100000000UL) | 295 | if (addr < 0x100000000UL) |
296 | err = open_low_hpage_areas(current->mm, | 296 | err = open_low_hpage_areas(current->mm, |
297 | LOW_ESID_MASK(addr, len)); | 297 | LOW_ESID_MASK(addr, len)); |
298 | else | 298 | if ((addr + len) > 0x100000000UL) |
299 | err = open_high_hpage_areas(current->mm, | 299 | err = open_high_hpage_areas(current->mm, |
300 | HTLB_AREA_MASK(addr, len)); | 300 | HTLB_AREA_MASK(addr, len)); |
301 | if (err) { | 301 | if (err) { |
@@ -754,9 +754,7 @@ repeat: | |||
754 | } | 754 | } |
755 | 755 | ||
756 | /* | 756 | /* |
757 | * No need to use ldarx/stdcx here because all who | 757 | * No need to use ldarx/stdcx here |
758 | * might be updating the pte will hold the | ||
759 | * page_table_lock | ||
760 | */ | 758 | */ |
761 | *ptep = __pte(new_pte & ~_PAGE_BUSY); | 759 | *ptep = __pte(new_pte & ~_PAGE_BUSY); |
762 | 760 | ||
diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c index 4bd7b0a70996..ed6ed2e30dac 100644 --- a/arch/powerpc/mm/mem.c +++ b/arch/powerpc/mm/mem.c | |||
@@ -495,7 +495,7 @@ EXPORT_SYMBOL(flush_icache_user_range); | |||
495 | * We use it to preload an HPTE into the hash table corresponding to | 495 | * We use it to preload an HPTE into the hash table corresponding to |
496 | * the updated linux PTE. | 496 | * the updated linux PTE. |
497 | * | 497 | * |
498 | * This must always be called with the mm->page_table_lock held | 498 | * This must always be called with the pte lock held. |
499 | */ | 499 | */ |
500 | void update_mmu_cache(struct vm_area_struct *vma, unsigned long address, | 500 | void update_mmu_cache(struct vm_area_struct *vma, unsigned long address, |
501 | pte_t pte) | 501 | pte_t pte) |
diff --git a/arch/powerpc/mm/tlb_32.c b/arch/powerpc/mm/tlb_32.c index 6c3dc3c44c86..ad580f3742e5 100644 --- a/arch/powerpc/mm/tlb_32.c +++ b/arch/powerpc/mm/tlb_32.c | |||
@@ -149,6 +149,12 @@ void flush_tlb_mm(struct mm_struct *mm) | |||
149 | return; | 149 | return; |
150 | } | 150 | } |
151 | 151 | ||
152 | /* | ||
153 | * It is safe to go down the mm's list of vmas when called | ||
154 | * from dup_mmap, holding mmap_sem. It would also be safe from | ||
155 | * unmap_region or exit_mmap, but not from vmtruncate on SMP - | ||
156 | * but it seems dup_mmap is the only SMP case which gets here. | ||
157 | */ | ||
152 | for (mp = mm->mmap; mp != NULL; mp = mp->vm_next) | 158 | for (mp = mm->mmap; mp != NULL; mp = mp->vm_next) |
153 | flush_range(mp->vm_mm, mp->vm_start, mp->vm_end); | 159 | flush_range(mp->vm_mm, mp->vm_start, mp->vm_end); |
154 | FINISH_FLUSH; | 160 | FINISH_FLUSH; |
diff --git a/arch/powerpc/mm/tlb_64.c b/arch/powerpc/mm/tlb_64.c index 53e31b834ace..859d29a0cac5 100644 --- a/arch/powerpc/mm/tlb_64.c +++ b/arch/powerpc/mm/tlb_64.c | |||
@@ -95,7 +95,7 @@ static void pte_free_submit(struct pte_freelist_batch *batch) | |||
95 | 95 | ||
96 | void pgtable_free_tlb(struct mmu_gather *tlb, pgtable_free_t pgf) | 96 | void pgtable_free_tlb(struct mmu_gather *tlb, pgtable_free_t pgf) |
97 | { | 97 | { |
98 | /* This is safe as we are holding page_table_lock */ | 98 | /* This is safe since tlb_gather_mmu has disabled preemption */ |
99 | cpumask_t local_cpumask = cpumask_of_cpu(smp_processor_id()); | 99 | cpumask_t local_cpumask = cpumask_of_cpu(smp_processor_id()); |
100 | struct pte_freelist_batch **batchp = &__get_cpu_var(pte_freelist_cur); | 100 | struct pte_freelist_batch **batchp = &__get_cpu_var(pte_freelist_cur); |
101 | 101 | ||
@@ -206,7 +206,7 @@ void __flush_tlb_pending(struct ppc64_tlb_batch *batch) | |||
206 | 206 | ||
207 | void pte_free_finish(void) | 207 | void pte_free_finish(void) |
208 | { | 208 | { |
209 | /* This is safe as we are holding page_table_lock */ | 209 | /* This is safe since tlb_gather_mmu has disabled preemption */ |
210 | struct pte_freelist_batch **batchp = &__get_cpu_var(pte_freelist_cur); | 210 | struct pte_freelist_batch **batchp = &__get_cpu_var(pte_freelist_cur); |
211 | 211 | ||
212 | if (*batchp == NULL) | 212 | if (*batchp == NULL) |
diff --git a/arch/powerpc/platforms/iseries/iommu.c b/arch/powerpc/platforms/iseries/iommu.c index bf081b345820..2b54eeb2c899 100644 --- a/arch/powerpc/platforms/iseries/iommu.c +++ b/arch/powerpc/platforms/iseries/iommu.c | |||
@@ -3,7 +3,7 @@ | |||
3 | * | 3 | * |
4 | * Rewrite, cleanup: | 4 | * Rewrite, cleanup: |
5 | * | 5 | * |
6 | * Copyright (C) 2004 Olof Johansson <olof@austin.ibm.com>, IBM Corporation | 6 | * Copyright (C) 2004 Olof Johansson <olof@lixom.net>, IBM Corporation |
7 | * | 7 | * |
8 | * Dynamic DMA mapping support, iSeries-specific parts. | 8 | * Dynamic DMA mapping support, iSeries-specific parts. |
9 | * | 9 | * |
diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c index 97ba5214417f..c78f2b290a73 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c | |||
@@ -5,7 +5,7 @@ | |||
5 | * | 5 | * |
6 | * Rewrite, cleanup: | 6 | * Rewrite, cleanup: |
7 | * | 7 | * |
8 | * Copyright (C) 2004 Olof Johansson <olof@austin.ibm.com>, IBM Corporation | 8 | * Copyright (C) 2004 Olof Johansson <olof@lixom.net>, IBM Corporation |
9 | * | 9 | * |
10 | * Dynamic DMA mapping support, pSeries-specific parts, both SMP and LPAR. | 10 | * Dynamic DMA mapping support, pSeries-specific parts, both SMP and LPAR. |
11 | * | 11 | * |
diff --git a/arch/powerpc/sysdev/dart.h b/arch/powerpc/sysdev/dart.h index ea8f0d9eed8a..33ed9ed7fc1e 100644 --- a/arch/powerpc/sysdev/dart.h +++ b/arch/powerpc/sysdev/dart.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2004 Olof Johansson <olof@austin.ibm.com>, IBM Corporation | 2 | * Copyright (C) 2004 Olof Johansson <olof@lixom.net>, IBM Corporation |
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 |
diff --git a/arch/powerpc/sysdev/u3_iommu.c b/arch/powerpc/sysdev/u3_iommu.c index f32baf7f4693..5c1a26a6d00c 100644 --- a/arch/powerpc/sysdev/u3_iommu.c +++ b/arch/powerpc/sysdev/u3_iommu.c | |||
@@ -1,11 +1,11 @@ | |||
1 | /* | 1 | /* |
2 | * arch/powerpc/sysdev/u3_iommu.c | 2 | * arch/powerpc/sysdev/u3_iommu.c |
3 | * | 3 | * |
4 | * Copyright (C) 2004 Olof Johansson <olof@austin.ibm.com>, IBM Corporation | 4 | * Copyright (C) 2004 Olof Johansson <olof@lixom.net>, IBM Corporation |
5 | * | 5 | * |
6 | * Based on pSeries_iommu.c: | 6 | * Based on pSeries_iommu.c: |
7 | * Copyright (C) 2001 Mike Corrigan & Dave Engebretsen, IBM Corporation | 7 | * Copyright (C) 2001 Mike Corrigan & Dave Engebretsen, IBM Corporation |
8 | * Copyright (C) 2004 Olof Johansson <olof@austin.ibm.com>, IBM Corporation | 8 | * Copyright (C) 2004 Olof Johansson <olof@lixom.net>, IBM Corporation |
9 | * | 9 | * |
10 | * Dynamic DMA mapping support, Apple U3 & IBM CPC925 "DART" iommu. | 10 | * Dynamic DMA mapping support, Apple U3 & IBM CPC925 "DART" iommu. |
11 | * | 11 | * |
diff --git a/arch/ppc/kernel/ppc_ksyms.c b/arch/ppc/kernel/ppc_ksyms.c index 66073f775193..bb6a5c6a64be 100644 --- a/arch/ppc/kernel/ppc_ksyms.c +++ b/arch/ppc/kernel/ppc_ksyms.c | |||
@@ -184,7 +184,7 @@ EXPORT_SYMBOL(kernel_thread); | |||
184 | 184 | ||
185 | EXPORT_SYMBOL(flush_instruction_cache); | 185 | EXPORT_SYMBOL(flush_instruction_cache); |
186 | EXPORT_SYMBOL(giveup_fpu); | 186 | EXPORT_SYMBOL(giveup_fpu); |
187 | EXPORT_SYMBOL(flush_icache_range); | 187 | EXPORT_SYMBOL(__flush_icache_range); |
188 | EXPORT_SYMBOL(flush_dcache_range); | 188 | EXPORT_SYMBOL(flush_dcache_range); |
189 | EXPORT_SYMBOL(flush_icache_user_range); | 189 | EXPORT_SYMBOL(flush_icache_user_range); |
190 | EXPORT_SYMBOL(flush_dcache_page); | 190 | EXPORT_SYMBOL(flush_dcache_page); |
diff --git a/arch/sparc/kernel/ioport.c b/arch/sparc/kernel/ioport.c index d0f2bd227c4c..d39c9f206271 100644 --- a/arch/sparc/kernel/ioport.c +++ b/arch/sparc/kernel/ioport.c | |||
@@ -252,7 +252,7 @@ void *sbus_alloc_consistent(struct sbus_dev *sdev, long len, u32 *dma_addrp) | |||
252 | } | 252 | } |
253 | 253 | ||
254 | order = get_order(len_total); | 254 | order = get_order(len_total); |
255 | if ((va = __get_free_pages(GFP_KERNEL, order)) == 0) | 255 | if ((va = __get_free_pages(GFP_KERNEL|__GFP_COMP, order)) == 0) |
256 | goto err_nopages; | 256 | goto err_nopages; |
257 | 257 | ||
258 | if ((res = kmalloc(sizeof(struct resource), GFP_KERNEL)) == NULL) | 258 | if ((res = kmalloc(sizeof(struct resource), GFP_KERNEL)) == NULL) |
diff --git a/arch/sparc/mm/generic.c b/arch/sparc/mm/generic.c index 9604893ffdbd..2cb0728cee05 100644 --- a/arch/sparc/mm/generic.c +++ b/arch/sparc/mm/generic.c | |||
@@ -32,9 +32,7 @@ static inline void io_remap_pte_range(struct mm_struct *mm, pte_t * pte, unsigne | |||
32 | if (end > PMD_SIZE) | 32 | if (end > PMD_SIZE) |
33 | end = PMD_SIZE; | 33 | end = PMD_SIZE; |
34 | do { | 34 | do { |
35 | pte_t oldpage = *pte; | 35 | set_pte_at(mm, address, pte, mk_pte_io(offset, prot, space)); |
36 | pte_clear(mm, address, pte); | ||
37 | set_pte(pte, mk_pte_io(offset, prot, space)); | ||
38 | address += PAGE_SIZE; | 36 | address += PAGE_SIZE; |
39 | offset += PAGE_SIZE; | 37 | offset += PAGE_SIZE; |
40 | pte++; | 38 | pte++; |
@@ -63,7 +61,7 @@ static inline int io_remap_pmd_range(struct mm_struct *mm, pmd_t * pmd, unsigned | |||
63 | } | 61 | } |
64 | 62 | ||
65 | int io_remap_pfn_range(struct vm_area_struct *vma, unsigned long from, | 63 | int io_remap_pfn_range(struct vm_area_struct *vma, unsigned long from, |
66 | unsigned long pfn, unsigned long size, pgprot_t prot) | 64 | unsigned long pfn, unsigned long size, pgprot_t prot) |
67 | { | 65 | { |
68 | int error = 0; | 66 | int error = 0; |
69 | pgd_t * dir; | 67 | pgd_t * dir; |
@@ -74,7 +72,9 @@ int io_remap_pfn_range(struct vm_area_struct *vma, unsigned long from, | |||
74 | unsigned long offset = GET_PFN(pfn) << PAGE_SHIFT; | 72 | unsigned long offset = GET_PFN(pfn) << PAGE_SHIFT; |
75 | 73 | ||
76 | /* See comment in mm/memory.c remap_pfn_range */ | 74 | /* See comment in mm/memory.c remap_pfn_range */ |
77 | vma->vm_flags |= VM_IO | VM_RESERVED; | 75 | vma->vm_flags |= VM_IO | VM_RESERVED | VM_PFNMAP; |
76 | vma->vm_pgoff = (offset >> PAGE_SHIFT) | | ||
77 | ((unsigned long)space << 28UL); | ||
78 | 78 | ||
79 | prot = __pgprot(pg_iobits); | 79 | prot = __pgprot(pg_iobits); |
80 | offset -= from; | 80 | offset -= from; |
diff --git a/arch/sparc64/kernel/sbus.c b/arch/sparc64/kernel/sbus.c index 96b825055668..d95a1bcf163d 100644 --- a/arch/sparc64/kernel/sbus.c +++ b/arch/sparc64/kernel/sbus.c | |||
@@ -327,7 +327,7 @@ void *sbus_alloc_consistent(struct sbus_dev *sdev, size_t size, dma_addr_t *dvma | |||
327 | order = get_order(size); | 327 | order = get_order(size); |
328 | if (order >= 10) | 328 | if (order >= 10) |
329 | return NULL; | 329 | return NULL; |
330 | first_page = __get_free_pages(GFP_KERNEL, order); | 330 | first_page = __get_free_pages(GFP_KERNEL|__GFP_COMP, order); |
331 | if (first_page == 0UL) | 331 | if (first_page == 0UL) |
332 | return NULL; | 332 | return NULL; |
333 | memset((char *)first_page, 0, PAGE_SIZE << order); | 333 | memset((char *)first_page, 0, PAGE_SIZE << order); |
diff --git a/arch/sparc64/mm/generic.c b/arch/sparc64/mm/generic.c index 112c316e7cd2..d9396c1721cd 100644 --- a/arch/sparc64/mm/generic.c +++ b/arch/sparc64/mm/generic.c | |||
@@ -15,6 +15,15 @@ | |||
15 | #include <asm/page.h> | 15 | #include <asm/page.h> |
16 | #include <asm/tlbflush.h> | 16 | #include <asm/tlbflush.h> |
17 | 17 | ||
18 | static inline pte_t mk_pte_io(unsigned long page, pgprot_t prot, int space) | ||
19 | { | ||
20 | pte_t pte; | ||
21 | pte_val(pte) = (((page) | pgprot_val(prot) | _PAGE_E) & | ||
22 | ~(unsigned long)_PAGE_CACHE); | ||
23 | pte_val(pte) |= (((unsigned long)space) << 32); | ||
24 | return pte; | ||
25 | } | ||
26 | |||
18 | /* Remap IO memory, the same way as remap_pfn_range(), but use | 27 | /* Remap IO memory, the same way as remap_pfn_range(), but use |
19 | * the obio memory space. | 28 | * the obio memory space. |
20 | * | 29 | * |
@@ -126,9 +135,13 @@ int io_remap_pfn_range(struct vm_area_struct *vma, unsigned long from, | |||
126 | struct mm_struct *mm = vma->vm_mm; | 135 | struct mm_struct *mm = vma->vm_mm; |
127 | int space = GET_IOSPACE(pfn); | 136 | int space = GET_IOSPACE(pfn); |
128 | unsigned long offset = GET_PFN(pfn) << PAGE_SHIFT; | 137 | unsigned long offset = GET_PFN(pfn) << PAGE_SHIFT; |
138 | unsigned long phys_base; | ||
139 | |||
140 | phys_base = offset | (((unsigned long) space) << 32UL); | ||
129 | 141 | ||
130 | /* See comment in mm/memory.c remap_pfn_range */ | 142 | /* See comment in mm/memory.c remap_pfn_range */ |
131 | vma->vm_flags |= VM_IO | VM_RESERVED; | 143 | vma->vm_flags |= VM_IO | VM_RESERVED | VM_PFNMAP; |
144 | vma->vm_pgoff = phys_base >> PAGE_SHIFT; | ||
132 | 145 | ||
133 | prot = __pgprot(pg_iobits); | 146 | prot = __pgprot(pg_iobits); |
134 | offset -= from; | 147 | offset -= from; |
diff --git a/arch/um/Makefile b/arch/um/Makefile index e55d32e903bc..1b12feeba368 100644 --- a/arch/um/Makefile +++ b/arch/um/Makefile | |||
@@ -17,7 +17,7 @@ core-y += $(ARCH_DIR)/kernel/ \ | |||
17 | 17 | ||
18 | # Have to precede the include because the included Makefiles reference them. | 18 | # Have to precede the include because the included Makefiles reference them. |
19 | SYMLINK_HEADERS := archparam.h system.h sigcontext.h processor.h ptrace.h \ | 19 | SYMLINK_HEADERS := archparam.h system.h sigcontext.h processor.h ptrace.h \ |
20 | module.h vm-flags.h elf.h | 20 | module.h vm-flags.h elf.h ldt.h |
21 | SYMLINK_HEADERS := $(foreach header,$(SYMLINK_HEADERS),include/asm-um/$(header)) | 21 | SYMLINK_HEADERS := $(foreach header,$(SYMLINK_HEADERS),include/asm-um/$(header)) |
22 | 22 | ||
23 | # XXX: The "os" symlink is only used by arch/um/include/os.h, which includes | 23 | # XXX: The "os" symlink is only used by arch/um/include/os.h, which includes |
diff --git a/arch/um/include/sysdep-i386/stub.h b/arch/um/include/sysdep-i386/stub.h index a49ceb199ee5..6ba8cbbe0d36 100644 --- a/arch/um/include/sysdep-i386/stub.h +++ b/arch/um/include/sysdep-i386/stub.h | |||
@@ -16,6 +16,15 @@ extern void stub_clone_handler(void); | |||
16 | #define STUB_MMAP_NR __NR_mmap2 | 16 | #define STUB_MMAP_NR __NR_mmap2 |
17 | #define MMAP_OFFSET(o) ((o) >> PAGE_SHIFT) | 17 | #define MMAP_OFFSET(o) ((o) >> PAGE_SHIFT) |
18 | 18 | ||
19 | static inline long stub_syscall0(long syscall) | ||
20 | { | ||
21 | long ret; | ||
22 | |||
23 | __asm__ volatile ("int $0x80" : "=a" (ret) : "0" (syscall)); | ||
24 | |||
25 | return ret; | ||
26 | } | ||
27 | |||
19 | static inline long stub_syscall1(long syscall, long arg1) | 28 | static inline long stub_syscall1(long syscall, long arg1) |
20 | { | 29 | { |
21 | long ret; | 30 | long ret; |
diff --git a/arch/um/include/sysdep-x86_64/stub.h b/arch/um/include/sysdep-x86_64/stub.h index 2bd6e7a97286..c41689c13dc9 100644 --- a/arch/um/include/sysdep-x86_64/stub.h +++ b/arch/um/include/sysdep-x86_64/stub.h | |||
@@ -6,7 +6,6 @@ | |||
6 | #ifndef __SYSDEP_STUB_H | 6 | #ifndef __SYSDEP_STUB_H |
7 | #define __SYSDEP_STUB_H | 7 | #define __SYSDEP_STUB_H |
8 | 8 | ||
9 | #include <asm/ptrace.h> | ||
10 | #include <asm/unistd.h> | 9 | #include <asm/unistd.h> |
11 | #include <sysdep/ptrace_user.h> | 10 | #include <sysdep/ptrace_user.h> |
12 | 11 | ||
@@ -20,6 +19,17 @@ extern void stub_clone_handler(void); | |||
20 | #define __syscall_clobber "r11","rcx","memory" | 19 | #define __syscall_clobber "r11","rcx","memory" |
21 | #define __syscall "syscall" | 20 | #define __syscall "syscall" |
22 | 21 | ||
22 | static inline long stub_syscall0(long syscall) | ||
23 | { | ||
24 | long ret; | ||
25 | |||
26 | __asm__ volatile (__syscall | ||
27 | : "=a" (ret) | ||
28 | : "0" (syscall) : __syscall_clobber ); | ||
29 | |||
30 | return ret; | ||
31 | } | ||
32 | |||
23 | static inline long stub_syscall2(long syscall, long arg1, long arg2) | 33 | static inline long stub_syscall2(long syscall, long arg1, long arg2) |
24 | { | 34 | { |
25 | long ret; | 35 | long ret; |
diff --git a/arch/um/kernel/skas/clone.c b/arch/um/kernel/skas/clone.c index 4dc55f10cd18..cb37ce9124a6 100644 --- a/arch/um/kernel/skas/clone.c +++ b/arch/um/kernel/skas/clone.c | |||
@@ -9,18 +9,24 @@ | |||
9 | #include "stub-data.h" | 9 | #include "stub-data.h" |
10 | #include "uml-config.h" | 10 | #include "uml-config.h" |
11 | #include "sysdep/stub.h" | 11 | #include "sysdep/stub.h" |
12 | #include "kern_constants.h" | ||
12 | 13 | ||
13 | /* This is in a separate file because it needs to be compiled with any | 14 | /* This is in a separate file because it needs to be compiled with any |
14 | * extraneous gcc flags (-pg, -fprofile-arcs, -ftest-coverage) disabled | 15 | * extraneous gcc flags (-pg, -fprofile-arcs, -ftest-coverage) disabled |
16 | * | ||
17 | * Use UM_KERN_PAGE_SIZE instead of PAGE_SIZE because that calls getpagesize | ||
18 | * on some systems. | ||
15 | */ | 19 | */ |
20 | |||
21 | #define STUB_DATA(field) (((struct stub_data *) UML_CONFIG_STUB_DATA)->field) | ||
22 | |||
16 | void __attribute__ ((__section__ (".__syscall_stub"))) | 23 | void __attribute__ ((__section__ (".__syscall_stub"))) |
17 | stub_clone_handler(void) | 24 | stub_clone_handler(void) |
18 | { | 25 | { |
19 | long err; | 26 | long err; |
20 | struct stub_data *from = (struct stub_data *) UML_CONFIG_STUB_DATA; | ||
21 | 27 | ||
22 | err = stub_syscall2(__NR_clone, CLONE_PARENT | CLONE_FILES | SIGCHLD, | 28 | err = stub_syscall2(__NR_clone, CLONE_PARENT | CLONE_FILES | SIGCHLD, |
23 | UML_CONFIG_STUB_DATA + PAGE_SIZE / 2 - | 29 | UML_CONFIG_STUB_DATA + UM_KERN_PAGE_SIZE / 2 - |
24 | sizeof(void *)); | 30 | sizeof(void *)); |
25 | if(err != 0) | 31 | if(err != 0) |
26 | goto out; | 32 | goto out; |
@@ -30,15 +36,16 @@ stub_clone_handler(void) | |||
30 | goto out; | 36 | goto out; |
31 | 37 | ||
32 | err = stub_syscall3(__NR_setitimer, ITIMER_VIRTUAL, | 38 | err = stub_syscall3(__NR_setitimer, ITIMER_VIRTUAL, |
33 | (long) &from->timer, 0); | 39 | (long) &STUB_DATA(timer), 0); |
34 | if(err) | 40 | if(err) |
35 | goto out; | 41 | goto out; |
36 | 42 | ||
37 | err = stub_syscall6(STUB_MMAP_NR, UML_CONFIG_STUB_DATA, PAGE_SIZE, | 43 | err = stub_syscall6(STUB_MMAP_NR, UML_CONFIG_STUB_DATA, |
38 | PROT_READ | PROT_WRITE, MAP_FIXED | MAP_SHARED, | 44 | UM_KERN_PAGE_SIZE, PROT_READ | PROT_WRITE, |
39 | from->fd, from->offset); | 45 | MAP_FIXED | MAP_SHARED, STUB_DATA(fd), |
46 | STUB_DATA(offset)); | ||
40 | out: | 47 | out: |
41 | /* save current result. Parent: pid; child: retcode of mmap */ | 48 | /* save current result. Parent: pid; child: retcode of mmap */ |
42 | from->err = err; | 49 | STUB_DATA(err) = err; |
43 | trap_myself(); | 50 | trap_myself(); |
44 | } | 51 | } |
diff --git a/arch/um/sys-i386/Makefile b/arch/um/sys-i386/Makefile index 6dfeb70f6957..150059dbee12 100644 --- a/arch/um/sys-i386/Makefile +++ b/arch/um/sys-i386/Makefile | |||
@@ -5,7 +5,7 @@ obj-y = bitops.o bugs.o checksum.o delay.o fault.o ksyms.o ldt.o ptrace.o \ | |||
5 | obj-$(CONFIG_HIGHMEM) += highmem.o | 5 | obj-$(CONFIG_HIGHMEM) += highmem.o |
6 | obj-$(CONFIG_MODULES) += module.o | 6 | obj-$(CONFIG_MODULES) += module.o |
7 | 7 | ||
8 | USER_OBJS := bugs.o ptrace_user.o sigcontext.o fault.o | 8 | USER_OBJS := bugs.o ptrace_user.o sigcontext.o fault.o stub_segv.o |
9 | 9 | ||
10 | SYMLINKS = bitops.c semaphore.c highmem.c module.c | 10 | SYMLINKS = bitops.c semaphore.c highmem.c module.c |
11 | 11 | ||
diff --git a/arch/um/sys-i386/ldt.c b/arch/um/sys-i386/ldt.c index 6360f1c958d0..17746b4c08ff 100644 --- a/arch/um/sys-i386/ldt.c +++ b/arch/um/sys-i386/ldt.c | |||
@@ -228,7 +228,7 @@ static int read_ldt(void __user * ptr, unsigned long bytecount) | |||
228 | size = LDT_ENTRY_SIZE*LDT_DIRECT_ENTRIES; | 228 | size = LDT_ENTRY_SIZE*LDT_DIRECT_ENTRIES; |
229 | if(size > bytecount) | 229 | if(size > bytecount) |
230 | size = bytecount; | 230 | size = bytecount; |
231 | if(copy_to_user(ptr, ldt->entries, size)) | 231 | if(copy_to_user(ptr, ldt->u.entries, size)) |
232 | err = -EFAULT; | 232 | err = -EFAULT; |
233 | bytecount -= size; | 233 | bytecount -= size; |
234 | ptr += size; | 234 | ptr += size; |
@@ -239,7 +239,7 @@ static int read_ldt(void __user * ptr, unsigned long bytecount) | |||
239 | size = PAGE_SIZE; | 239 | size = PAGE_SIZE; |
240 | if(size > bytecount) | 240 | if(size > bytecount) |
241 | size = bytecount; | 241 | size = bytecount; |
242 | if(copy_to_user(ptr, ldt->pages[i], size)){ | 242 | if(copy_to_user(ptr, ldt->u.pages[i], size)){ |
243 | err = -EFAULT; | 243 | err = -EFAULT; |
244 | break; | 244 | break; |
245 | } | 245 | } |
@@ -321,10 +321,11 @@ static int write_ldt(void __user * ptr, unsigned long bytecount, int func) | |||
321 | i*LDT_ENTRIES_PER_PAGE <= ldt_info.entry_number; | 321 | i*LDT_ENTRIES_PER_PAGE <= ldt_info.entry_number; |
322 | i++){ | 322 | i++){ |
323 | if(i == 0) | 323 | if(i == 0) |
324 | memcpy(&entry0, ldt->entries, sizeof(entry0)); | 324 | memcpy(&entry0, ldt->u.entries, |
325 | ldt->pages[i] = (struct ldt_entry *) | 325 | sizeof(entry0)); |
326 | __get_free_page(GFP_KERNEL|__GFP_ZERO); | 326 | ldt->u.pages[i] = (struct ldt_entry *) |
327 | if(!ldt->pages[i]){ | 327 | __get_free_page(GFP_KERNEL|__GFP_ZERO); |
328 | if(!ldt->u.pages[i]){ | ||
328 | err = -ENOMEM; | 329 | err = -ENOMEM; |
329 | /* Undo the change in host */ | 330 | /* Undo the change in host */ |
330 | memset(&ldt_info, 0, sizeof(ldt_info)); | 331 | memset(&ldt_info, 0, sizeof(ldt_info)); |
@@ -332,8 +333,9 @@ static int write_ldt(void __user * ptr, unsigned long bytecount, int func) | |||
332 | goto out_unlock; | 333 | goto out_unlock; |
333 | } | 334 | } |
334 | if(i == 0) { | 335 | if(i == 0) { |
335 | memcpy(ldt->pages[0], &entry0, sizeof(entry0)); | 336 | memcpy(ldt->u.pages[0], &entry0, |
336 | memcpy(ldt->pages[0]+1, ldt->entries+1, | 337 | sizeof(entry0)); |
338 | memcpy(ldt->u.pages[0]+1, ldt->u.entries+1, | ||
337 | sizeof(entry0)*(LDT_DIRECT_ENTRIES-1)); | 339 | sizeof(entry0)*(LDT_DIRECT_ENTRIES-1)); |
338 | } | 340 | } |
339 | ldt->entry_count = (i + 1) * LDT_ENTRIES_PER_PAGE; | 341 | ldt->entry_count = (i + 1) * LDT_ENTRIES_PER_PAGE; |
@@ -343,9 +345,9 @@ static int write_ldt(void __user * ptr, unsigned long bytecount, int func) | |||
343 | ldt->entry_count = ldt_info.entry_number + 1; | 345 | ldt->entry_count = ldt_info.entry_number + 1; |
344 | 346 | ||
345 | if(ldt->entry_count <= LDT_DIRECT_ENTRIES) | 347 | if(ldt->entry_count <= LDT_DIRECT_ENTRIES) |
346 | ldt_p = ldt->entries + ldt_info.entry_number; | 348 | ldt_p = ldt->u.entries + ldt_info.entry_number; |
347 | else | 349 | else |
348 | ldt_p = ldt->pages[ldt_info.entry_number/LDT_ENTRIES_PER_PAGE] + | 350 | ldt_p = ldt->u.pages[ldt_info.entry_number/LDT_ENTRIES_PER_PAGE] + |
349 | ldt_info.entry_number%LDT_ENTRIES_PER_PAGE; | 351 | ldt_info.entry_number%LDT_ENTRIES_PER_PAGE; |
350 | 352 | ||
351 | if(ldt_info.base_addr == 0 && ldt_info.limit == 0 && | 353 | if(ldt_info.base_addr == 0 && ldt_info.limit == 0 && |
@@ -501,8 +503,8 @@ long init_new_ldt(struct mmu_context_skas * new_mm, | |||
501 | */ | 503 | */ |
502 | down(&from_mm->ldt.semaphore); | 504 | down(&from_mm->ldt.semaphore); |
503 | if(from_mm->ldt.entry_count <= LDT_DIRECT_ENTRIES){ | 505 | if(from_mm->ldt.entry_count <= LDT_DIRECT_ENTRIES){ |
504 | memcpy(new_mm->ldt.entries, from_mm->ldt.entries, | 506 | memcpy(new_mm->ldt.u.entries, from_mm->ldt.u.entries, |
505 | sizeof(new_mm->ldt.entries)); | 507 | sizeof(new_mm->ldt.u.entries)); |
506 | } | 508 | } |
507 | else{ | 509 | else{ |
508 | i = from_mm->ldt.entry_count / LDT_ENTRIES_PER_PAGE; | 510 | i = from_mm->ldt.entry_count / LDT_ENTRIES_PER_PAGE; |
@@ -512,9 +514,10 @@ long init_new_ldt(struct mmu_context_skas * new_mm, | |||
512 | err = -ENOMEM; | 514 | err = -ENOMEM; |
513 | break; | 515 | break; |
514 | } | 516 | } |
515 | new_mm->ldt.pages[i] = (struct ldt_entry*)page; | 517 | new_mm->ldt.u.pages[i] = |
516 | memcpy(new_mm->ldt.pages[i], | 518 | (struct ldt_entry *) page; |
517 | from_mm->ldt.pages[i], PAGE_SIZE); | 519 | memcpy(new_mm->ldt.u.pages[i], |
520 | from_mm->ldt.u.pages[i], PAGE_SIZE); | ||
518 | } | 521 | } |
519 | } | 522 | } |
520 | new_mm->ldt.entry_count = from_mm->ldt.entry_count; | 523 | new_mm->ldt.entry_count = from_mm->ldt.entry_count; |
@@ -532,7 +535,7 @@ void free_ldt(struct mmu_context_skas * mm) | |||
532 | if(!ptrace_ldt && mm->ldt.entry_count > LDT_DIRECT_ENTRIES){ | 535 | if(!ptrace_ldt && mm->ldt.entry_count > LDT_DIRECT_ENTRIES){ |
533 | i = mm->ldt.entry_count / LDT_ENTRIES_PER_PAGE; | 536 | i = mm->ldt.entry_count / LDT_ENTRIES_PER_PAGE; |
534 | while(i-- > 0){ | 537 | while(i-- > 0){ |
535 | free_page((long )mm->ldt.pages[i]); | 538 | free_page((long )mm->ldt.u.pages[i]); |
536 | } | 539 | } |
537 | } | 540 | } |
538 | mm->ldt.entry_count = 0; | 541 | mm->ldt.entry_count = 0; |
diff --git a/arch/um/sys-i386/stub_segv.c b/arch/um/sys-i386/stub_segv.c index 1e88b275edac..a37f672ec964 100644 --- a/arch/um/sys-i386/stub_segv.c +++ b/arch/um/sys-i386/stub_segv.c | |||
@@ -3,9 +3,11 @@ | |||
3 | * Licensed under the GPL | 3 | * Licensed under the GPL |
4 | */ | 4 | */ |
5 | 5 | ||
6 | #include <asm/signal.h> | 6 | #include <signal.h> |
7 | #include <sys/select.h> /* The only way I can see to get sigset_t */ | ||
7 | #include <asm/unistd.h> | 8 | #include <asm/unistd.h> |
8 | #include "uml-config.h" | 9 | #include "uml-config.h" |
10 | #include "sysdep/stub.h" | ||
9 | #include "sysdep/sigcontext.h" | 11 | #include "sysdep/sigcontext.h" |
10 | #include "sysdep/faultinfo.h" | 12 | #include "sysdep/faultinfo.h" |
11 | 13 | ||
@@ -13,13 +15,14 @@ void __attribute__ ((__section__ (".__syscall_stub"))) | |||
13 | stub_segv_handler(int sig) | 15 | stub_segv_handler(int sig) |
14 | { | 16 | { |
15 | struct sigcontext *sc = (struct sigcontext *) (&sig + 1); | 17 | struct sigcontext *sc = (struct sigcontext *) (&sig + 1); |
18 | int pid; | ||
16 | 19 | ||
17 | GET_FAULTINFO_FROM_SC(*((struct faultinfo *) UML_CONFIG_STUB_DATA), | 20 | GET_FAULTINFO_FROM_SC(*((struct faultinfo *) UML_CONFIG_STUB_DATA), |
18 | sc); | 21 | sc); |
19 | 22 | ||
20 | __asm__("movl %0, %%eax ; int $0x80": : "g" (__NR_getpid)); | 23 | pid = stub_syscall0(__NR_getpid); |
21 | __asm__("movl %%eax, %%ebx ; movl %0, %%eax ; movl %1, %%ecx ;" | 24 | stub_syscall2(__NR_kill, pid, SIGUSR1); |
22 | "int $0x80": : "g" (__NR_kill), "g" (SIGUSR1)); | 25 | |
23 | /* Load pointer to sigcontext into esp, since we need to leave | 26 | /* Load pointer to sigcontext into esp, since we need to leave |
24 | * the stack in its original form when we do the sigreturn here, by | 27 | * the stack in its original form when we do the sigreturn here, by |
25 | * hand. | 28 | * hand. |
diff --git a/arch/um/sys-x86_64/Makefile b/arch/um/sys-x86_64/Makefile index ea977df395a1..00b2025427df 100644 --- a/arch/um/sys-x86_64/Makefile +++ b/arch/um/sys-x86_64/Makefile | |||
@@ -12,7 +12,7 @@ lib-y = bitops.o bugs.o csum-partial.o delay.o fault.o ldt.o mem.o memcpy.o \ | |||
12 | obj-y := ksyms.o | 12 | obj-y := ksyms.o |
13 | obj-$(CONFIG_MODULES) += module.o um_module.o | 13 | obj-$(CONFIG_MODULES) += module.o um_module.o |
14 | 14 | ||
15 | USER_OBJS := ptrace_user.o sigcontext.o | 15 | USER_OBJS := ptrace_user.o sigcontext.o stub_segv.o |
16 | 16 | ||
17 | SYMLINKS = bitops.c csum-copy.S csum-partial.c csum-wrappers.c ldt.c memcpy.S \ | 17 | SYMLINKS = bitops.c csum-copy.S csum-partial.c csum-wrappers.c ldt.c memcpy.S \ |
18 | thunk.S module.c | 18 | thunk.S module.c |
diff --git a/arch/um/sys-x86_64/stub_segv.c b/arch/um/sys-x86_64/stub_segv.c index d1e53bdf2e85..a27099533198 100644 --- a/arch/um/sys-x86_64/stub_segv.c +++ b/arch/um/sys-x86_64/stub_segv.c | |||
@@ -3,14 +3,14 @@ | |||
3 | * Licensed under the GPL | 3 | * Licensed under the GPL |
4 | */ | 4 | */ |
5 | 5 | ||
6 | #include <asm/signal.h> | 6 | #include <stddef.h> |
7 | #include <signal.h> | ||
7 | #include <linux/compiler.h> | 8 | #include <linux/compiler.h> |
8 | #include <asm/unistd.h> | 9 | #include <asm/unistd.h> |
9 | #include <asm/ucontext.h> | ||
10 | #include "uml-config.h" | 10 | #include "uml-config.h" |
11 | #include "sysdep/sigcontext.h" | 11 | #include "sysdep/sigcontext.h" |
12 | #include "sysdep/faultinfo.h" | 12 | #include "sysdep/faultinfo.h" |
13 | #include <stddef.h> | 13 | #include "sysdep/stub.h" |
14 | 14 | ||
15 | /* Copied from sys-x86_64/signal.c - Can't find an equivalent definition | 15 | /* Copied from sys-x86_64/signal.c - Can't find an equivalent definition |
16 | * in the libc headers anywhere. | 16 | * in the libc headers anywhere. |
@@ -31,21 +31,21 @@ void __attribute__ ((__section__ (".__syscall_stub"))) | |||
31 | stub_segv_handler(int sig) | 31 | stub_segv_handler(int sig) |
32 | { | 32 | { |
33 | struct ucontext *uc; | 33 | struct ucontext *uc; |
34 | int pid; | ||
34 | 35 | ||
35 | __asm__("movq %%rdx, %0" : "=g" (uc) :); | 36 | __asm__("movq %%rdx, %0" : "=g" (uc) :); |
36 | GET_FAULTINFO_FROM_SC(*((struct faultinfo *) UML_CONFIG_STUB_DATA), | 37 | GET_FAULTINFO_FROM_SC(*((struct faultinfo *) UML_CONFIG_STUB_DATA), |
37 | &uc->uc_mcontext); | 38 | &uc->uc_mcontext); |
38 | 39 | ||
39 | __asm__("movq %0, %%rax ; syscall": : "g" (__NR_getpid)); | 40 | pid = stub_syscall0(__NR_getpid); |
40 | __asm__("movq %%rax, %%rdi ; movq %0, %%rax ; movq %1, %%rsi ;" | 41 | stub_syscall2(__NR_kill, pid, SIGUSR1); |
41 | "syscall": : "g" (__NR_kill), "g" (SIGUSR1) : | 42 | |
42 | "%rdi", "%rax", "%rsi"); | ||
43 | /* sys_sigreturn expects that the stack pointer will be 8 bytes into | 43 | /* sys_sigreturn expects that the stack pointer will be 8 bytes into |
44 | * the signal frame. So, we use the ucontext pointer, which we know | 44 | * the signal frame. So, we use the ucontext pointer, which we know |
45 | * already, to get the signal frame pointer, and add 8 to that. | 45 | * already, to get the signal frame pointer, and add 8 to that. |
46 | */ | 46 | */ |
47 | __asm__("movq %0, %%rsp": : | 47 | __asm__("movq %0, %%rsp; movq %1, %%rax ; syscall": : |
48 | "g" ((unsigned long) container_of(uc, struct rt_sigframe, | 48 | "g" ((unsigned long) container_of(uc, struct rt_sigframe, |
49 | uc) + 8)); | 49 | uc) + 8), |
50 | __asm__("movq %0, %%rax ; syscall" : : "g" (__NR_rt_sigreturn)); | 50 | "g" (__NR_rt_sigreturn)); |
51 | } | 51 | } |
diff --git a/arch/x86_64/kernel/process.c b/arch/x86_64/kernel/process.c index 5afd63e8cef7..7519fc520eb3 100644 --- a/arch/x86_64/kernel/process.c +++ b/arch/x86_64/kernel/process.c | |||
@@ -351,13 +351,6 @@ void flush_thread(void) | |||
351 | struct task_struct *tsk = current; | 351 | struct task_struct *tsk = current; |
352 | struct thread_info *t = current_thread_info(); | 352 | struct thread_info *t = current_thread_info(); |
353 | 353 | ||
354 | /* | ||
355 | * Remove function-return probe instances associated with this task | ||
356 | * and put them back on the free list. Do not insert an exit probe for | ||
357 | * this function, it will be disabled by kprobe_flush_task if you do. | ||
358 | */ | ||
359 | kprobe_flush_task(tsk); | ||
360 | |||
361 | if (t->flags & _TIF_ABI_PENDING) | 354 | if (t->flags & _TIF_ABI_PENDING) |
362 | t->flags ^= (_TIF_ABI_PENDING | _TIF_IA32); | 355 | t->flags ^= (_TIF_ABI_PENDING | _TIF_IA32); |
363 | 356 | ||