diff options
Diffstat (limited to 'arch')
98 files changed, 1264 insertions, 901 deletions
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig index 24efdfe277fc..3e2e540a0f2a 100644 --- a/arch/alpha/Kconfig +++ b/arch/alpha/Kconfig | |||
@@ -61,6 +61,9 @@ config ZONE_DMA | |||
61 | config NEED_DMA_MAP_STATE | 61 | config NEED_DMA_MAP_STATE |
62 | def_bool y | 62 | def_bool y |
63 | 63 | ||
64 | config NEED_SG_DMA_LENGTH | ||
65 | def_bool y | ||
66 | |||
64 | config GENERIC_ISA_DMA | 67 | config GENERIC_ISA_DMA |
65 | bool | 68 | bool |
66 | default y | 69 | default y |
diff --git a/arch/alpha/include/asm/scatterlist.h b/arch/alpha/include/asm/scatterlist.h index 440747ca6349..5728c52a7412 100644 --- a/arch/alpha/include/asm/scatterlist.h +++ b/arch/alpha/include/asm/scatterlist.h | |||
@@ -1,24 +1,7 @@ | |||
1 | #ifndef _ALPHA_SCATTERLIST_H | 1 | #ifndef _ALPHA_SCATTERLIST_H |
2 | #define _ALPHA_SCATTERLIST_H | 2 | #define _ALPHA_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm/page.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | #include <asm/types.h> | ||
6 | |||
7 | struct scatterlist { | ||
8 | #ifdef CONFIG_DEBUG_SG | ||
9 | unsigned long sg_magic; | ||
10 | #endif | ||
11 | unsigned long page_link; | ||
12 | unsigned int offset; | ||
13 | |||
14 | unsigned int length; | ||
15 | |||
16 | dma_addr_t dma_address; | ||
17 | __u32 dma_length; | ||
18 | }; | ||
19 | |||
20 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
21 | #define sg_dma_len(sg) ((sg)->dma_length) | ||
22 | 5 | ||
23 | #define ISA_DMA_THRESHOLD (~0UL) | 6 | #define ISA_DMA_THRESHOLD (~0UL) |
24 | 7 | ||
diff --git a/arch/alpha/math-emu/sfp-util.h b/arch/alpha/math-emu/sfp-util.h index d4c6ae7fee47..f53707f77455 100644 --- a/arch/alpha/math-emu/sfp-util.h +++ b/arch/alpha/math-emu/sfp-util.h | |||
@@ -28,3 +28,8 @@ extern unsigned long __udiv_qrnnd (unsigned long *, unsigned long, | |||
28 | #define UDIV_NEEDS_NORMALIZATION 1 | 28 | #define UDIV_NEEDS_NORMALIZATION 1 |
29 | 29 | ||
30 | #define abort() goto bad_insn | 30 | #define abort() goto bad_insn |
31 | |||
32 | #ifndef __LITTLE_ENDIAN | ||
33 | #define __LITTLE_ENDIAN -1 | ||
34 | #endif | ||
35 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
diff --git a/arch/arm/configs/s3c2410_defconfig b/arch/arm/configs/s3c2410_defconfig index 9236475e7131..43af89c027d9 100644 --- a/arch/arm/configs/s3c2410_defconfig +++ b/arch/arm/configs/s3c2410_defconfig | |||
@@ -1,12 +1,14 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.34 | 3 | # Linux kernel version: 2.6.34 |
4 | # Sat May 22 03:17:31 2010 | 4 | # Wed May 26 19:04:29 2010 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_HAVE_PWM=y | 7 | CONFIG_HAVE_PWM=y |
8 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 8 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
9 | CONFIG_GENERIC_GPIO=y | 9 | CONFIG_GENERIC_GPIO=y |
10 | CONFIG_GENERIC_TIME=y | ||
11 | CONFIG_ARCH_USES_GETTIMEOFFSET=y | ||
10 | CONFIG_HAVE_PROC_CPU=y | 12 | CONFIG_HAVE_PROC_CPU=y |
11 | CONFIG_NO_IOPORT=y | 13 | CONFIG_NO_IOPORT=y |
12 | CONFIG_GENERIC_HARDIRQS=y | 14 | CONFIG_GENERIC_HARDIRQS=y |
@@ -35,6 +37,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
35 | CONFIG_LOCALVERSION="" | 37 | CONFIG_LOCALVERSION="" |
36 | CONFIG_LOCALVERSION_AUTO=y | 38 | CONFIG_LOCALVERSION_AUTO=y |
37 | CONFIG_HAVE_KERNEL_GZIP=y | 39 | CONFIG_HAVE_KERNEL_GZIP=y |
40 | CONFIG_HAVE_KERNEL_LZMA=y | ||
38 | CONFIG_HAVE_KERNEL_LZO=y | 41 | CONFIG_HAVE_KERNEL_LZO=y |
39 | CONFIG_KERNEL_GZIP=y | 42 | CONFIG_KERNEL_GZIP=y |
40 | # CONFIG_KERNEL_BZIP2 is not set | 43 | # CONFIG_KERNEL_BZIP2 is not set |
@@ -186,9 +189,11 @@ CONFIG_MMU=y | |||
186 | # CONFIG_ARCH_INTEGRATOR is not set | 189 | # CONFIG_ARCH_INTEGRATOR is not set |
187 | # CONFIG_ARCH_REALVIEW is not set | 190 | # CONFIG_ARCH_REALVIEW is not set |
188 | # CONFIG_ARCH_VERSATILE is not set | 191 | # CONFIG_ARCH_VERSATILE is not set |
192 | # CONFIG_ARCH_VEXPRESS is not set | ||
189 | # CONFIG_ARCH_AT91 is not set | 193 | # CONFIG_ARCH_AT91 is not set |
190 | # CONFIG_ARCH_BCMRING is not set | 194 | # CONFIG_ARCH_BCMRING is not set |
191 | # CONFIG_ARCH_CLPS711X is not set | 195 | # CONFIG_ARCH_CLPS711X is not set |
196 | # CONFIG_ARCH_CNS3XXX is not set | ||
192 | # CONFIG_ARCH_GEMINI is not set | 197 | # CONFIG_ARCH_GEMINI is not set |
193 | # CONFIG_ARCH_EBSA110 is not set | 198 | # CONFIG_ARCH_EBSA110 is not set |
194 | # CONFIG_ARCH_EP93XX is not set | 199 | # CONFIG_ARCH_EP93XX is not set |
@@ -224,7 +229,7 @@ CONFIG_ARCH_S3C2410=y | |||
224 | # CONFIG_ARCH_S3C64XX is not set | 229 | # CONFIG_ARCH_S3C64XX is not set |
225 | # CONFIG_ARCH_S5P6440 is not set | 230 | # CONFIG_ARCH_S5P6440 is not set |
226 | # CONFIG_ARCH_S5P6442 is not set | 231 | # CONFIG_ARCH_S5P6442 is not set |
227 | # CONFIG_ARCH_S5PC1XX is not set | 232 | # CONFIG_ARCH_S5PC100 is not set |
228 | # CONFIG_ARCH_S5PV210 is not set | 233 | # CONFIG_ARCH_S5PV210 is not set |
229 | # CONFIG_ARCH_SHARK is not set | 234 | # CONFIG_ARCH_SHARK is not set |
230 | # CONFIG_ARCH_LH7A40X is not set | 235 | # CONFIG_ARCH_LH7A40X is not set |
@@ -233,6 +238,7 @@ CONFIG_ARCH_S3C2410=y | |||
233 | # CONFIG_ARCH_NOMADIK is not set | 238 | # CONFIG_ARCH_NOMADIK is not set |
234 | # CONFIG_ARCH_DAVINCI is not set | 239 | # CONFIG_ARCH_DAVINCI is not set |
235 | # CONFIG_ARCH_OMAP is not set | 240 | # CONFIG_ARCH_OMAP is not set |
241 | # CONFIG_PLAT_SPEAR is not set | ||
236 | CONFIG_PLAT_SAMSUNG=y | 242 | CONFIG_PLAT_SAMSUNG=y |
237 | 243 | ||
238 | # | 244 | # |
@@ -243,11 +249,15 @@ CONFIG_S3C_BOOT_ERROR_RESET=y | |||
243 | CONFIG_S3C_BOOT_UART_FORCE_FIFO=y | 249 | CONFIG_S3C_BOOT_UART_FORCE_FIFO=y |
244 | CONFIG_S3C_LOWLEVEL_UART_PORT=0 | 250 | CONFIG_S3C_LOWLEVEL_UART_PORT=0 |
245 | CONFIG_SAMSUNG_CLKSRC=y | 251 | CONFIG_SAMSUNG_CLKSRC=y |
252 | CONFIG_S3C_GPIO_CFG_S3C24XX=y | ||
253 | CONFIG_S3C_GPIO_PULL_UP=y | ||
246 | CONFIG_SAMSUNG_GPIO_EXTRA=0 | 254 | CONFIG_SAMSUNG_GPIO_EXTRA=0 |
247 | CONFIG_S3C_GPIO_SPACE=0 | 255 | CONFIG_S3C_GPIO_SPACE=0 |
248 | CONFIG_S3C_ADC=y | 256 | CONFIG_S3C_ADC=y |
249 | CONFIG_S3C_DEV_HSMMC=y | 257 | CONFIG_S3C_DEV_HSMMC=y |
258 | CONFIG_S3C_DEV_HWMON=y | ||
250 | CONFIG_S3C_DEV_USB_HOST=y | 259 | CONFIG_S3C_DEV_USB_HOST=y |
260 | CONFIG_S3C_DEV_WDT=y | ||
251 | CONFIG_S3C_DEV_NAND=y | 261 | CONFIG_S3C_DEV_NAND=y |
252 | CONFIG_S3C_DMA=y | 262 | CONFIG_S3C_DMA=y |
253 | 263 | ||
@@ -260,6 +270,7 @@ CONFIG_PLAT_S3C24XX=y | |||
260 | CONFIG_CPU_LLSERIAL_S3C2410=y | 270 | CONFIG_CPU_LLSERIAL_S3C2410=y |
261 | CONFIG_CPU_LLSERIAL_S3C2440=y | 271 | CONFIG_CPU_LLSERIAL_S3C2440=y |
262 | CONFIG_S3C2410_CLOCK=y | 272 | CONFIG_S3C2410_CLOCK=y |
273 | CONFIG_S3C2443_CLOCK=y | ||
263 | CONFIG_S3C24XX_DCLK=y | 274 | CONFIG_S3C24XX_DCLK=y |
264 | CONFIG_S3C24XX_PWM=y | 275 | CONFIG_S3C24XX_PWM=y |
265 | CONFIG_S3C24XX_GPIO_EXTRA=128 | 276 | CONFIG_S3C24XX_GPIO_EXTRA=128 |
@@ -270,6 +281,7 @@ CONFIG_S3C2410_DMA=y | |||
270 | # CONFIG_S3C2410_DMA_DEBUG is not set | 281 | # CONFIG_S3C2410_DMA_DEBUG is not set |
271 | CONFIG_MACH_SMDK=y | 282 | CONFIG_MACH_SMDK=y |
272 | CONFIG_S3C24XX_SIMTEC_AUDIO=y | 283 | CONFIG_S3C24XX_SIMTEC_AUDIO=y |
284 | CONFIG_S3C2410_SETUP_TS=y | ||
273 | 285 | ||
274 | # | 286 | # |
275 | # S3C2400 Machines | 287 | # S3C2400 Machines |
@@ -289,6 +301,7 @@ CONFIG_ARCH_H1940=y | |||
289 | # CONFIG_H1940BT is not set | 301 | # CONFIG_H1940BT is not set |
290 | CONFIG_PM_H1940=y | 302 | CONFIG_PM_H1940=y |
291 | CONFIG_MACH_N30=y | 303 | CONFIG_MACH_N30=y |
304 | CONFIG_MACH_N35=y | ||
292 | CONFIG_ARCH_BAST=y | 305 | CONFIG_ARCH_BAST=y |
293 | CONFIG_MACH_OTOM=y | 306 | CONFIG_MACH_OTOM=y |
294 | CONFIG_MACH_AML_M5900=y | 307 | CONFIG_MACH_AML_M5900=y |
@@ -309,6 +322,11 @@ CONFIG_MACH_SMDK2413=y | |||
309 | CONFIG_MACH_S3C2413=y | 322 | CONFIG_MACH_S3C2413=y |
310 | CONFIG_MACH_SMDK2412=y | 323 | CONFIG_MACH_SMDK2412=y |
311 | CONFIG_MACH_VSTMS=y | 324 | CONFIG_MACH_VSTMS=y |
325 | |||
326 | # | ||
327 | # S3C2416 Machines | ||
328 | # | ||
329 | # CONFIG_MACH_SMDK2416 is not set | ||
312 | CONFIG_CPU_S3C2440=y | 330 | CONFIG_CPU_S3C2440=y |
313 | CONFIG_CPU_S3C2442=y | 331 | CONFIG_CPU_S3C2442=y |
314 | CONFIG_CPU_S3C244X=y | 332 | CONFIG_CPU_S3C244X=y |
@@ -330,6 +348,7 @@ CONFIG_SMDK2440_CPU2440=y | |||
330 | CONFIG_SMDK2440_CPU2442=y | 348 | CONFIG_SMDK2440_CPU2442=y |
331 | CONFIG_MACH_AT2440EVB=y | 349 | CONFIG_MACH_AT2440EVB=y |
332 | CONFIG_MACH_MINI2440=y | 350 | CONFIG_MACH_MINI2440=y |
351 | # CONFIG_MACH_RX1950 is not set | ||
333 | CONFIG_CPU_S3C2443=y | 352 | CONFIG_CPU_S3C2443=y |
334 | CONFIG_S3C2443_DMA=y | 353 | CONFIG_S3C2443_DMA=y |
335 | 354 | ||
@@ -410,6 +429,7 @@ CONFIG_ALIGNMENT_TRAP=y | |||
410 | CONFIG_ZBOOT_ROM_TEXT=0x0 | 429 | CONFIG_ZBOOT_ROM_TEXT=0x0 |
411 | CONFIG_ZBOOT_ROM_BSS=0x0 | 430 | CONFIG_ZBOOT_ROM_BSS=0x0 |
412 | CONFIG_CMDLINE="root=/dev/hda1 ro init=/bin/bash console=ttySAC0" | 431 | CONFIG_CMDLINE="root=/dev/hda1 ro init=/bin/bash console=ttySAC0" |
432 | # CONFIG_CMDLINE_FORCE is not set | ||
413 | # CONFIG_XIP_KERNEL is not set | 433 | # CONFIG_XIP_KERNEL is not set |
414 | # CONFIG_KEXEC is not set | 434 | # CONFIG_KEXEC is not set |
415 | 435 | ||
@@ -509,7 +529,9 @@ CONFIG_TCP_CONG_ILLINOIS=m | |||
509 | # CONFIG_DEFAULT_BIC is not set | 529 | # CONFIG_DEFAULT_BIC is not set |
510 | CONFIG_DEFAULT_CUBIC=y | 530 | CONFIG_DEFAULT_CUBIC=y |
511 | # CONFIG_DEFAULT_HTCP is not set | 531 | # CONFIG_DEFAULT_HTCP is not set |
532 | # CONFIG_DEFAULT_HYBLA is not set | ||
512 | # CONFIG_DEFAULT_VEGAS is not set | 533 | # CONFIG_DEFAULT_VEGAS is not set |
534 | # CONFIG_DEFAULT_VENO is not set | ||
513 | # CONFIG_DEFAULT_WESTWOOD is not set | 535 | # CONFIG_DEFAULT_WESTWOOD is not set |
514 | # CONFIG_DEFAULT_RENO is not set | 536 | # CONFIG_DEFAULT_RENO is not set |
515 | CONFIG_DEFAULT_TCP_CONG="cubic" | 537 | CONFIG_DEFAULT_TCP_CONG="cubic" |
@@ -566,6 +588,16 @@ CONFIG_NF_CONNTRACK_TFTP=m | |||
566 | CONFIG_NF_CT_NETLINK=m | 588 | CONFIG_NF_CT_NETLINK=m |
567 | # CONFIG_NETFILTER_TPROXY is not set | 589 | # CONFIG_NETFILTER_TPROXY is not set |
568 | CONFIG_NETFILTER_XTABLES=m | 590 | CONFIG_NETFILTER_XTABLES=m |
591 | |||
592 | # | ||
593 | # Xtables combined modules | ||
594 | # | ||
595 | CONFIG_NETFILTER_XT_MARK=m | ||
596 | CONFIG_NETFILTER_XT_CONNMARK=m | ||
597 | |||
598 | # | ||
599 | # Xtables targets | ||
600 | # | ||
569 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | 601 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m |
570 | CONFIG_NETFILTER_XT_TARGET_CONNMARK=m | 602 | CONFIG_NETFILTER_XT_TARGET_CONNMARK=m |
571 | # CONFIG_NETFILTER_XT_TARGET_CT is not set | 603 | # CONFIG_NETFILTER_XT_TARGET_CT is not set |
@@ -577,9 +609,14 @@ CONFIG_NETFILTER_XT_TARGET_NFLOG=m | |||
577 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | 609 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m |
578 | # CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set | 610 | # CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set |
579 | CONFIG_NETFILTER_XT_TARGET_RATEEST=m | 611 | CONFIG_NETFILTER_XT_TARGET_RATEEST=m |
612 | # CONFIG_NETFILTER_XT_TARGET_TEE is not set | ||
580 | # CONFIG_NETFILTER_XT_TARGET_TRACE is not set | 613 | # CONFIG_NETFILTER_XT_TARGET_TRACE is not set |
581 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m | 614 | CONFIG_NETFILTER_XT_TARGET_TCPMSS=m |
582 | # CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set | 615 | # CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set |
616 | |||
617 | # | ||
618 | # Xtables matches | ||
619 | # | ||
583 | CONFIG_NETFILTER_XT_MATCH_CLUSTER=m | 620 | CONFIG_NETFILTER_XT_MATCH_CLUSTER=m |
584 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | 621 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m |
585 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | 622 | CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m |
@@ -598,6 +635,7 @@ CONFIG_NETFILTER_XT_MATCH_LIMIT=m | |||
598 | CONFIG_NETFILTER_XT_MATCH_MAC=m | 635 | CONFIG_NETFILTER_XT_MATCH_MAC=m |
599 | CONFIG_NETFILTER_XT_MATCH_MARK=m | 636 | CONFIG_NETFILTER_XT_MATCH_MARK=m |
600 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | 637 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m |
638 | # CONFIG_NETFILTER_XT_MATCH_OSF is not set | ||
601 | CONFIG_NETFILTER_XT_MATCH_OWNER=m | 639 | CONFIG_NETFILTER_XT_MATCH_OWNER=m |
602 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | 640 | CONFIG_NETFILTER_XT_MATCH_POLICY=m |
603 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | 641 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m |
@@ -605,7 +643,6 @@ CONFIG_NETFILTER_XT_MATCH_QUOTA=m | |||
605 | CONFIG_NETFILTER_XT_MATCH_RATEEST=m | 643 | CONFIG_NETFILTER_XT_MATCH_RATEEST=m |
606 | CONFIG_NETFILTER_XT_MATCH_REALM=m | 644 | CONFIG_NETFILTER_XT_MATCH_REALM=m |
607 | CONFIG_NETFILTER_XT_MATCH_RECENT=m | 645 | CONFIG_NETFILTER_XT_MATCH_RECENT=m |
608 | # CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set | ||
609 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | 646 | CONFIG_NETFILTER_XT_MATCH_SCTP=m |
610 | CONFIG_NETFILTER_XT_MATCH_STATE=m | 647 | CONFIG_NETFILTER_XT_MATCH_STATE=m |
611 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | 648 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m |
@@ -613,7 +650,6 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m | |||
613 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | 650 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m |
614 | CONFIG_NETFILTER_XT_MATCH_TIME=m | 651 | CONFIG_NETFILTER_XT_MATCH_TIME=m |
615 | CONFIG_NETFILTER_XT_MATCH_U32=m | 652 | CONFIG_NETFILTER_XT_MATCH_U32=m |
616 | # CONFIG_NETFILTER_XT_MATCH_OSF is not set | ||
617 | CONFIG_IP_VS=m | 653 | CONFIG_IP_VS=m |
618 | # CONFIG_IP_VS_IPV6 is not set | 654 | # CONFIG_IP_VS_IPV6 is not set |
619 | # CONFIG_IP_VS_DEBUG is not set | 655 | # CONFIG_IP_VS_DEBUG is not set |
@@ -713,6 +749,7 @@ CONFIG_IP6_NF_RAW=m | |||
713 | # CONFIG_RDS is not set | 749 | # CONFIG_RDS is not set |
714 | # CONFIG_TIPC is not set | 750 | # CONFIG_TIPC is not set |
715 | # CONFIG_ATM is not set | 751 | # CONFIG_ATM is not set |
752 | # CONFIG_L2TP is not set | ||
716 | # CONFIG_BRIDGE is not set | 753 | # CONFIG_BRIDGE is not set |
717 | # CONFIG_NET_DSA is not set | 754 | # CONFIG_NET_DSA is not set |
718 | # CONFIG_VLAN_8021Q is not set | 755 | # CONFIG_VLAN_8021Q is not set |
@@ -739,6 +776,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
739 | # CONFIG_IRDA is not set | 776 | # CONFIG_IRDA is not set |
740 | CONFIG_BT=m | 777 | CONFIG_BT=m |
741 | CONFIG_BT_L2CAP=m | 778 | CONFIG_BT_L2CAP=m |
779 | # CONFIG_BT_L2CAP_EXT_FEATURES is not set | ||
742 | CONFIG_BT_SCO=m | 780 | CONFIG_BT_SCO=m |
743 | CONFIG_BT_RFCOMM=m | 781 | CONFIG_BT_RFCOMM=m |
744 | CONFIG_BT_RFCOMM_TTY=y | 782 | CONFIG_BT_RFCOMM_TTY=y |
@@ -775,6 +813,7 @@ CONFIG_CFG80211_WEXT=y | |||
775 | CONFIG_WIRELESS_EXT_SYSFS=y | 813 | CONFIG_WIRELESS_EXT_SYSFS=y |
776 | # CONFIG_LIB80211 is not set | 814 | # CONFIG_LIB80211 is not set |
777 | CONFIG_MAC80211=m | 815 | CONFIG_MAC80211=m |
816 | CONFIG_MAC80211_HAS_RC=y | ||
778 | CONFIG_MAC80211_RC_MINSTREL=y | 817 | CONFIG_MAC80211_RC_MINSTREL=y |
779 | # CONFIG_MAC80211_RC_DEFAULT_PID is not set | 818 | # CONFIG_MAC80211_RC_DEFAULT_PID is not set |
780 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y | 819 | CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y |
@@ -785,6 +824,7 @@ CONFIG_MAC80211_LEDS=y | |||
785 | # CONFIG_WIMAX is not set | 824 | # CONFIG_WIMAX is not set |
786 | # CONFIG_RFKILL is not set | 825 | # CONFIG_RFKILL is not set |
787 | # CONFIG_NET_9P is not set | 826 | # CONFIG_NET_9P is not set |
827 | # CONFIG_CAIF is not set | ||
788 | 828 | ||
789 | # | 829 | # |
790 | # Device Drivers | 830 | # Device Drivers |
@@ -828,6 +868,7 @@ CONFIG_MTD_BLOCK=y | |||
828 | # CONFIG_INFTL is not set | 868 | # CONFIG_INFTL is not set |
829 | # CONFIG_RFD_FTL is not set | 869 | # CONFIG_RFD_FTL is not set |
830 | # CONFIG_SSFDC is not set | 870 | # CONFIG_SSFDC is not set |
871 | # CONFIG_SM_FTL is not set | ||
831 | # CONFIG_MTD_OOPS is not set | 872 | # CONFIG_MTD_OOPS is not set |
832 | 873 | ||
833 | # | 874 | # |
@@ -882,9 +923,12 @@ CONFIG_MTD_ROM=y | |||
882 | # CONFIG_MTD_DOC2001 is not set | 923 | # CONFIG_MTD_DOC2001 is not set |
883 | # CONFIG_MTD_DOC2001PLUS is not set | 924 | # CONFIG_MTD_DOC2001PLUS is not set |
884 | CONFIG_MTD_NAND=y | 925 | CONFIG_MTD_NAND=y |
885 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | 926 | CONFIG_MTD_NAND_ECC=y |
886 | # CONFIG_MTD_NAND_ECC_SMC is not set | 927 | # CONFIG_MTD_NAND_ECC_SMC is not set |
928 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | ||
929 | # CONFIG_MTD_SM_COMMON is not set | ||
887 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set | 930 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set |
931 | CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR=0xFF108018 | ||
888 | # CONFIG_MTD_NAND_GPIO is not set | 932 | # CONFIG_MTD_NAND_GPIO is not set |
889 | CONFIG_MTD_NAND_IDS=y | 933 | CONFIG_MTD_NAND_IDS=y |
890 | CONFIG_MTD_NAND_S3C2410=y | 934 | CONFIG_MTD_NAND_S3C2410=y |
@@ -1149,6 +1193,7 @@ CONFIG_KEYBOARD_ATKBD=y | |||
1149 | # CONFIG_QT2160 is not set | 1193 | # CONFIG_QT2160 is not set |
1150 | # CONFIG_KEYBOARD_LKKBD is not set | 1194 | # CONFIG_KEYBOARD_LKKBD is not set |
1151 | # CONFIG_KEYBOARD_GPIO is not set | 1195 | # CONFIG_KEYBOARD_GPIO is not set |
1196 | # CONFIG_KEYBOARD_TCA6416 is not set | ||
1152 | # CONFIG_KEYBOARD_MATRIX is not set | 1197 | # CONFIG_KEYBOARD_MATRIX is not set |
1153 | # CONFIG_KEYBOARD_LM8323 is not set | 1198 | # CONFIG_KEYBOARD_LM8323 is not set |
1154 | # CONFIG_KEYBOARD_MAX7359 is not set | 1199 | # CONFIG_KEYBOARD_MAX7359 is not set |
@@ -1212,6 +1257,7 @@ CONFIG_INPUT_TOUCHSCREEN=y | |||
1212 | # CONFIG_TOUCHSCREEN_AD7879_SPI is not set | 1257 | # CONFIG_TOUCHSCREEN_AD7879_SPI is not set |
1213 | # CONFIG_TOUCHSCREEN_AD7879 is not set | 1258 | # CONFIG_TOUCHSCREEN_AD7879 is not set |
1214 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set | 1259 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set |
1260 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set | ||
1215 | # CONFIG_TOUCHSCREEN_EETI is not set | 1261 | # CONFIG_TOUCHSCREEN_EETI is not set |
1216 | # CONFIG_TOUCHSCREEN_FUJITSU is not set | 1262 | # CONFIG_TOUCHSCREEN_FUJITSU is not set |
1217 | # CONFIG_TOUCHSCREEN_S3C2410 is not set | 1263 | # CONFIG_TOUCHSCREEN_S3C2410 is not set |
@@ -1248,6 +1294,7 @@ CONFIG_TOUCHSCREEN_USB_NEXIO=y | |||
1248 | # CONFIG_TOUCHSCREEN_TSC2007 is not set | 1294 | # CONFIG_TOUCHSCREEN_TSC2007 is not set |
1249 | # CONFIG_TOUCHSCREEN_W90X900 is not set | 1295 | # CONFIG_TOUCHSCREEN_W90X900 is not set |
1250 | CONFIG_INPUT_MISC=y | 1296 | CONFIG_INPUT_MISC=y |
1297 | # CONFIG_INPUT_AD714X is not set | ||
1251 | CONFIG_INPUT_ATI_REMOTE=m | 1298 | CONFIG_INPUT_ATI_REMOTE=m |
1252 | CONFIG_INPUT_ATI_REMOTE2=m | 1299 | CONFIG_INPUT_ATI_REMOTE2=m |
1253 | CONFIG_INPUT_KEYSPAN_REMOTE=m | 1300 | CONFIG_INPUT_KEYSPAN_REMOTE=m |
@@ -1255,6 +1302,7 @@ CONFIG_INPUT_POWERMATE=m | |||
1255 | CONFIG_INPUT_YEALINK=m | 1302 | CONFIG_INPUT_YEALINK=m |
1256 | CONFIG_INPUT_CM109=m | 1303 | CONFIG_INPUT_CM109=m |
1257 | CONFIG_INPUT_UINPUT=m | 1304 | CONFIG_INPUT_UINPUT=m |
1305 | # CONFIG_INPUT_PCF8574 is not set | ||
1258 | CONFIG_INPUT_GPIO_ROTARY_ENCODER=m | 1306 | CONFIG_INPUT_GPIO_ROTARY_ENCODER=m |
1259 | 1307 | ||
1260 | # | 1308 | # |
@@ -1287,6 +1335,7 @@ CONFIG_SERIAL_NONSTANDARD=y | |||
1287 | # CONFIG_MOXA_INTELLIO is not set | 1335 | # CONFIG_MOXA_INTELLIO is not set |
1288 | # CONFIG_MOXA_SMARTIO is not set | 1336 | # CONFIG_MOXA_SMARTIO is not set |
1289 | # CONFIG_N_HDLC is not set | 1337 | # CONFIG_N_HDLC is not set |
1338 | # CONFIG_N_GSM is not set | ||
1290 | # CONFIG_RISCOM8 is not set | 1339 | # CONFIG_RISCOM8 is not set |
1291 | # CONFIG_SPECIALIX is not set | 1340 | # CONFIG_SPECIALIX is not set |
1292 | # CONFIG_STALDRV is not set | 1341 | # CONFIG_STALDRV is not set |
@@ -1324,6 +1373,8 @@ CONFIG_SERIAL_S3C2440=y | |||
1324 | CONFIG_SERIAL_CORE=y | 1373 | CONFIG_SERIAL_CORE=y |
1325 | CONFIG_SERIAL_CORE_CONSOLE=y | 1374 | CONFIG_SERIAL_CORE_CONSOLE=y |
1326 | # CONFIG_SERIAL_TIMBERDALE is not set | 1375 | # CONFIG_SERIAL_TIMBERDALE is not set |
1376 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | ||
1377 | # CONFIG_SERIAL_ALTERA_UART is not set | ||
1327 | CONFIG_UNIX98_PTYS=y | 1378 | CONFIG_UNIX98_PTYS=y |
1328 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 1379 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
1329 | CONFIG_LEGACY_PTYS=y | 1380 | CONFIG_LEGACY_PTYS=y |
@@ -1499,6 +1550,7 @@ CONFIG_SENSORS_LM85=m | |||
1499 | # CONFIG_SENSORS_SMSC47M192 is not set | 1550 | # CONFIG_SENSORS_SMSC47M192 is not set |
1500 | # CONFIG_SENSORS_SMSC47B397 is not set | 1551 | # CONFIG_SENSORS_SMSC47B397 is not set |
1501 | # CONFIG_SENSORS_ADS7828 is not set | 1552 | # CONFIG_SENSORS_ADS7828 is not set |
1553 | # CONFIG_SENSORS_ADS7871 is not set | ||
1502 | # CONFIG_SENSORS_AMC6821 is not set | 1554 | # CONFIG_SENSORS_AMC6821 is not set |
1503 | # CONFIG_SENSORS_THMC50 is not set | 1555 | # CONFIG_SENSORS_THMC50 is not set |
1504 | # CONFIG_SENSORS_TMP401 is not set | 1556 | # CONFIG_SENSORS_TMP401 is not set |
@@ -1836,10 +1888,12 @@ CONFIG_USB_SERIAL_PL2303=y | |||
1836 | # CONFIG_USB_SERIAL_TI is not set | 1888 | # CONFIG_USB_SERIAL_TI is not set |
1837 | # CONFIG_USB_SERIAL_CYBERJACK is not set | 1889 | # CONFIG_USB_SERIAL_CYBERJACK is not set |
1838 | # CONFIG_USB_SERIAL_XIRCOM is not set | 1890 | # CONFIG_USB_SERIAL_XIRCOM is not set |
1891 | CONFIG_USB_SERIAL_WWAN=m | ||
1839 | CONFIG_USB_SERIAL_OPTION=m | 1892 | CONFIG_USB_SERIAL_OPTION=m |
1840 | # CONFIG_USB_SERIAL_OMNINET is not set | 1893 | # CONFIG_USB_SERIAL_OMNINET is not set |
1841 | # CONFIG_USB_SERIAL_OPTICON is not set | 1894 | # CONFIG_USB_SERIAL_OPTICON is not set |
1842 | # CONFIG_USB_SERIAL_VIVOPAY_SERIAL is not set | 1895 | # CONFIG_USB_SERIAL_VIVOPAY_SERIAL is not set |
1896 | # CONFIG_USB_SERIAL_ZIO is not set | ||
1843 | # CONFIG_USB_SERIAL_DEBUG is not set | 1897 | # CONFIG_USB_SERIAL_DEBUG is not set |
1844 | 1898 | ||
1845 | # | 1899 | # |
@@ -1999,10 +2053,6 @@ CONFIG_RTC_DRV_S3C=y | |||
1999 | # CONFIG_DMADEVICES is not set | 2053 | # CONFIG_DMADEVICES is not set |
2000 | # CONFIG_AUXDISPLAY is not set | 2054 | # CONFIG_AUXDISPLAY is not set |
2001 | # CONFIG_UIO is not set | 2055 | # CONFIG_UIO is not set |
2002 | |||
2003 | # | ||
2004 | # TI VLYNQ | ||
2005 | # | ||
2006 | # CONFIG_STAGING is not set | 2056 | # CONFIG_STAGING is not set |
2007 | 2057 | ||
2008 | # | 2058 | # |
@@ -2274,6 +2324,7 @@ CONFIG_HAVE_FUNCTION_TRACER=y | |||
2274 | CONFIG_TRACING_SUPPORT=y | 2324 | CONFIG_TRACING_SUPPORT=y |
2275 | CONFIG_FTRACE=y | 2325 | CONFIG_FTRACE=y |
2276 | # CONFIG_FUNCTION_TRACER is not set | 2326 | # CONFIG_FUNCTION_TRACER is not set |
2327 | # CONFIG_IRQSOFF_TRACER is not set | ||
2277 | # CONFIG_SCHED_TRACER is not set | 2328 | # CONFIG_SCHED_TRACER is not set |
2278 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | 2329 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set |
2279 | # CONFIG_BOOT_TRACER is not set | 2330 | # CONFIG_BOOT_TRACER is not set |
@@ -2284,6 +2335,7 @@ CONFIG_BRANCH_PROFILE_NONE=y | |||
2284 | # CONFIG_KMEMTRACE is not set | 2335 | # CONFIG_KMEMTRACE is not set |
2285 | # CONFIG_WORKQUEUE_TRACER is not set | 2336 | # CONFIG_WORKQUEUE_TRACER is not set |
2286 | # CONFIG_BLK_DEV_IO_TRACE is not set | 2337 | # CONFIG_BLK_DEV_IO_TRACE is not set |
2338 | # CONFIG_ATOMIC64_SELFTEST is not set | ||
2287 | # CONFIG_SAMPLES is not set | 2339 | # CONFIG_SAMPLES is not set |
2288 | CONFIG_HAVE_ARCH_KGDB=y | 2340 | CONFIG_HAVE_ARCH_KGDB=y |
2289 | # CONFIG_KGDB is not set | 2341 | # CONFIG_KGDB is not set |
diff --git a/arch/arm/configs/s3c6400_defconfig b/arch/arm/configs/s3c6400_defconfig index a3a9993e5cd0..7d8b4cf3858c 100644 --- a/arch/arm/configs/s3c6400_defconfig +++ b/arch/arm/configs/s3c6400_defconfig | |||
@@ -1,11 +1,13 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.34 | 3 | # Linux kernel version: 2.6.34 |
4 | # Sat May 22 03:17:32 2010 | 4 | # Wed May 26 19:04:30 2010 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_GENERIC_GPIO=y | 8 | CONFIG_GENERIC_GPIO=y |
9 | CONFIG_GENERIC_TIME=y | ||
10 | CONFIG_ARCH_USES_GETTIMEOFFSET=y | ||
9 | CONFIG_HAVE_PROC_CPU=y | 11 | CONFIG_HAVE_PROC_CPU=y |
10 | CONFIG_NO_IOPORT=y | 12 | CONFIG_NO_IOPORT=y |
11 | CONFIG_GENERIC_HARDIRQS=y | 13 | CONFIG_GENERIC_HARDIRQS=y |
@@ -34,6 +36,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
34 | CONFIG_LOCALVERSION="" | 36 | CONFIG_LOCALVERSION="" |
35 | CONFIG_LOCALVERSION_AUTO=y | 37 | CONFIG_LOCALVERSION_AUTO=y |
36 | CONFIG_HAVE_KERNEL_GZIP=y | 38 | CONFIG_HAVE_KERNEL_GZIP=y |
39 | CONFIG_HAVE_KERNEL_LZMA=y | ||
37 | CONFIG_HAVE_KERNEL_LZO=y | 40 | CONFIG_HAVE_KERNEL_LZO=y |
38 | CONFIG_KERNEL_GZIP=y | 41 | CONFIG_KERNEL_GZIP=y |
39 | # CONFIG_KERNEL_BZIP2 is not set | 42 | # CONFIG_KERNEL_BZIP2 is not set |
@@ -179,9 +182,11 @@ CONFIG_MMU=y | |||
179 | # CONFIG_ARCH_INTEGRATOR is not set | 182 | # CONFIG_ARCH_INTEGRATOR is not set |
180 | # CONFIG_ARCH_REALVIEW is not set | 183 | # CONFIG_ARCH_REALVIEW is not set |
181 | # CONFIG_ARCH_VERSATILE is not set | 184 | # CONFIG_ARCH_VERSATILE is not set |
185 | # CONFIG_ARCH_VEXPRESS is not set | ||
182 | # CONFIG_ARCH_AT91 is not set | 186 | # CONFIG_ARCH_AT91 is not set |
183 | # CONFIG_ARCH_BCMRING is not set | 187 | # CONFIG_ARCH_BCMRING is not set |
184 | # CONFIG_ARCH_CLPS711X is not set | 188 | # CONFIG_ARCH_CLPS711X is not set |
189 | # CONFIG_ARCH_CNS3XXX is not set | ||
185 | # CONFIG_ARCH_GEMINI is not set | 190 | # CONFIG_ARCH_GEMINI is not set |
186 | # CONFIG_ARCH_EBSA110 is not set | 191 | # CONFIG_ARCH_EBSA110 is not set |
187 | # CONFIG_ARCH_EP93XX is not set | 192 | # CONFIG_ARCH_EP93XX is not set |
@@ -217,7 +222,7 @@ CONFIG_MMU=y | |||
217 | CONFIG_ARCH_S3C64XX=y | 222 | CONFIG_ARCH_S3C64XX=y |
218 | # CONFIG_ARCH_S5P6440 is not set | 223 | # CONFIG_ARCH_S5P6440 is not set |
219 | # CONFIG_ARCH_S5P6442 is not set | 224 | # CONFIG_ARCH_S5P6442 is not set |
220 | # CONFIG_ARCH_S5PC1XX is not set | 225 | # CONFIG_ARCH_S5PC100 is not set |
221 | # CONFIG_ARCH_S5PV210 is not set | 226 | # CONFIG_ARCH_S5PV210 is not set |
222 | # CONFIG_ARCH_SHARK is not set | 227 | # CONFIG_ARCH_SHARK is not set |
223 | # CONFIG_ARCH_LH7A40X is not set | 228 | # CONFIG_ARCH_LH7A40X is not set |
@@ -226,6 +231,7 @@ CONFIG_ARCH_S3C64XX=y | |||
226 | # CONFIG_ARCH_NOMADIK is not set | 231 | # CONFIG_ARCH_NOMADIK is not set |
227 | # CONFIG_ARCH_DAVINCI is not set | 232 | # CONFIG_ARCH_DAVINCI is not set |
228 | # CONFIG_ARCH_OMAP is not set | 233 | # CONFIG_ARCH_OMAP is not set |
234 | # CONFIG_PLAT_SPEAR is not set | ||
229 | CONFIG_PLAT_SAMSUNG=y | 235 | CONFIG_PLAT_SAMSUNG=y |
230 | 236 | ||
231 | # | 237 | # |
@@ -251,7 +257,10 @@ CONFIG_S3C_DEV_I2C1=y | |||
251 | CONFIG_S3C_DEV_FB=y | 257 | CONFIG_S3C_DEV_FB=y |
252 | CONFIG_S3C_DEV_USB_HOST=y | 258 | CONFIG_S3C_DEV_USB_HOST=y |
253 | CONFIG_S3C_DEV_USB_HSOTG=y | 259 | CONFIG_S3C_DEV_USB_HSOTG=y |
260 | CONFIG_S3C_DEV_WDT=y | ||
254 | CONFIG_S3C_DEV_NAND=y | 261 | CONFIG_S3C_DEV_NAND=y |
262 | CONFIG_SAMSUNG_DEV_ADC=y | ||
263 | CONFIG_SAMSUNG_DEV_TS=y | ||
255 | CONFIG_S3C_DMA=y | 264 | CONFIG_S3C_DMA=y |
256 | 265 | ||
257 | # | 266 | # |
@@ -260,6 +269,7 @@ CONFIG_S3C_DMA=y | |||
260 | # CONFIG_SAMSUNG_PM_DEBUG is not set | 269 | # CONFIG_SAMSUNG_PM_DEBUG is not set |
261 | # CONFIG_S3C_PM_DEBUG_LED_SMDK is not set | 270 | # CONFIG_S3C_PM_DEBUG_LED_SMDK is not set |
262 | # CONFIG_SAMSUNG_PM_CHECK is not set | 271 | # CONFIG_SAMSUNG_PM_CHECK is not set |
272 | CONFIG_SAMSUNG_WAKEMASK=y | ||
263 | CONFIG_PLAT_S3C64XX=y | 273 | CONFIG_PLAT_S3C64XX=y |
264 | CONFIG_CPU_S3C6410=y | 274 | CONFIG_CPU_S3C6410=y |
265 | CONFIG_S3C64XX_DMA=y | 275 | CONFIG_S3C64XX_DMA=y |
@@ -277,6 +287,8 @@ CONFIG_SMDK6410_SD_CH0=y | |||
277 | # CONFIG_SMDK6410_WM1192_EV1 is not set | 287 | # CONFIG_SMDK6410_WM1192_EV1 is not set |
278 | # CONFIG_MACH_NCP is not set | 288 | # CONFIG_MACH_NCP is not set |
279 | # CONFIG_MACH_HMT is not set | 289 | # CONFIG_MACH_HMT is not set |
290 | # CONFIG_MACH_SMARTQ5 is not set | ||
291 | # CONFIG_MACH_SMARTQ7 is not set | ||
280 | 292 | ||
281 | # | 293 | # |
282 | # Processor Type | 294 | # Processor Type |
@@ -302,6 +314,7 @@ CONFIG_ARM_THUMB=y | |||
302 | # CONFIG_CPU_DCACHE_DISABLE is not set | 314 | # CONFIG_CPU_DCACHE_DISABLE is not set |
303 | # CONFIG_CPU_BPREDICT_DISABLE is not set | 315 | # CONFIG_CPU_BPREDICT_DISABLE is not set |
304 | CONFIG_ARM_L1_CACHE_SHIFT=5 | 316 | CONFIG_ARM_L1_CACHE_SHIFT=5 |
317 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y | ||
305 | CONFIG_CPU_HAS_PMU=y | 318 | CONFIG_CPU_HAS_PMU=y |
306 | # CONFIG_ARM_ERRATA_411920 is not set | 319 | # CONFIG_ARM_ERRATA_411920 is not set |
307 | CONFIG_ARM_VIC=y | 320 | CONFIG_ARM_VIC=y |
@@ -352,6 +365,7 @@ CONFIG_ALIGNMENT_TRAP=y | |||
352 | CONFIG_ZBOOT_ROM_TEXT=0 | 365 | CONFIG_ZBOOT_ROM_TEXT=0 |
353 | CONFIG_ZBOOT_ROM_BSS=0 | 366 | CONFIG_ZBOOT_ROM_BSS=0 |
354 | CONFIG_CMDLINE="console=ttySAC0,115200 root=/dev/ram init=/linuxrc initrd=0x51000000,6M ramdisk_size=6144" | 367 | CONFIG_CMDLINE="console=ttySAC0,115200 root=/dev/ram init=/linuxrc initrd=0x51000000,6M ramdisk_size=6144" |
368 | # CONFIG_CMDLINE_FORCE is not set | ||
355 | # CONFIG_XIP_KERNEL is not set | 369 | # CONFIG_XIP_KERNEL is not set |
356 | # CONFIG_KEXEC is not set | 370 | # CONFIG_KEXEC is not set |
357 | 371 | ||
@@ -430,6 +444,7 @@ CONFIG_MTD=y | |||
430 | # CONFIG_INFTL is not set | 444 | # CONFIG_INFTL is not set |
431 | # CONFIG_RFD_FTL is not set | 445 | # CONFIG_RFD_FTL is not set |
432 | # CONFIG_SSFDC is not set | 446 | # CONFIG_SSFDC is not set |
447 | # CONFIG_SM_FTL is not set | ||
433 | # CONFIG_MTD_OOPS is not set | 448 | # CONFIG_MTD_OOPS is not set |
434 | 449 | ||
435 | # | 450 | # |
@@ -472,9 +487,12 @@ CONFIG_MTD_CFI_I2=y | |||
472 | # CONFIG_MTD_DOC2001 is not set | 487 | # CONFIG_MTD_DOC2001 is not set |
473 | # CONFIG_MTD_DOC2001PLUS is not set | 488 | # CONFIG_MTD_DOC2001PLUS is not set |
474 | CONFIG_MTD_NAND=y | 489 | CONFIG_MTD_NAND=y |
475 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | 490 | CONFIG_MTD_NAND_ECC=y |
476 | # CONFIG_MTD_NAND_ECC_SMC is not set | 491 | # CONFIG_MTD_NAND_ECC_SMC is not set |
492 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | ||
493 | # CONFIG_MTD_SM_COMMON is not set | ||
477 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set | 494 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set |
495 | CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR=0xFF108018 | ||
478 | # CONFIG_MTD_NAND_GPIO is not set | 496 | # CONFIG_MTD_NAND_GPIO is not set |
479 | CONFIG_MTD_NAND_IDS=y | 497 | CONFIG_MTD_NAND_IDS=y |
480 | CONFIG_MTD_NAND_S3C2410=y | 498 | CONFIG_MTD_NAND_S3C2410=y |
@@ -569,6 +587,7 @@ CONFIG_KEYBOARD_ATKBD=y | |||
569 | # CONFIG_QT2160 is not set | 587 | # CONFIG_QT2160 is not set |
570 | # CONFIG_KEYBOARD_LKKBD is not set | 588 | # CONFIG_KEYBOARD_LKKBD is not set |
571 | # CONFIG_KEYBOARD_GPIO is not set | 589 | # CONFIG_KEYBOARD_GPIO is not set |
590 | # CONFIG_KEYBOARD_TCA6416 is not set | ||
572 | # CONFIG_KEYBOARD_MATRIX is not set | 591 | # CONFIG_KEYBOARD_MATRIX is not set |
573 | # CONFIG_KEYBOARD_MAX7359 is not set | 592 | # CONFIG_KEYBOARD_MAX7359 is not set |
574 | # CONFIG_KEYBOARD_NEWTON is not set | 593 | # CONFIG_KEYBOARD_NEWTON is not set |
@@ -638,6 +657,8 @@ CONFIG_SERIAL_S3C6400=y | |||
638 | CONFIG_SERIAL_CORE=y | 657 | CONFIG_SERIAL_CORE=y |
639 | CONFIG_SERIAL_CORE_CONSOLE=y | 658 | CONFIG_SERIAL_CORE_CONSOLE=y |
640 | # CONFIG_SERIAL_TIMBERDALE is not set | 659 | # CONFIG_SERIAL_TIMBERDALE is not set |
660 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | ||
661 | # CONFIG_SERIAL_ALTERA_UART is not set | ||
641 | CONFIG_UNIX98_PTYS=y | 662 | CONFIG_UNIX98_PTYS=y |
642 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 663 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
643 | CONFIG_LEGACY_PTYS=y | 664 | CONFIG_LEGACY_PTYS=y |
@@ -791,6 +812,7 @@ CONFIG_HWMON=y | |||
791 | # CONFIG_SENSORS_LIS3_I2C is not set | 812 | # CONFIG_SENSORS_LIS3_I2C is not set |
792 | # CONFIG_THERMAL is not set | 813 | # CONFIG_THERMAL is not set |
793 | # CONFIG_WATCHDOG is not set | 814 | # CONFIG_WATCHDOG is not set |
815 | CONFIG_HAVE_S3C2410_WATCHDOG=y | ||
794 | CONFIG_SSB_POSSIBLE=y | 816 | CONFIG_SSB_POSSIBLE=y |
795 | 817 | ||
796 | # | 818 | # |
@@ -877,6 +899,7 @@ CONFIG_SND_SOC=m | |||
877 | CONFIG_SND_SOC_AC97_BUS=y | 899 | CONFIG_SND_SOC_AC97_BUS=y |
878 | CONFIG_SND_S3C24XX_SOC=m | 900 | CONFIG_SND_S3C24XX_SOC=m |
879 | CONFIG_SND_S3C_SOC_AC97=m | 901 | CONFIG_SND_S3C_SOC_AC97=m |
902 | # CONFIG_SND_S3C64XX_SOC_WM8580 is not set | ||
880 | CONFIG_SND_SOC_SMDK_WM9713=m | 903 | CONFIG_SND_SOC_SMDK_WM9713=m |
881 | CONFIG_SND_SOC_I2C_AND_SPI=m | 904 | CONFIG_SND_SOC_I2C_AND_SPI=m |
882 | # CONFIG_SND_SOC_ALL_CODECS is not set | 905 | # CONFIG_SND_SOC_ALL_CODECS is not set |
@@ -936,10 +959,6 @@ CONFIG_RTC_LIB=y | |||
936 | # CONFIG_DMADEVICES is not set | 959 | # CONFIG_DMADEVICES is not set |
937 | # CONFIG_AUXDISPLAY is not set | 960 | # CONFIG_AUXDISPLAY is not set |
938 | # CONFIG_UIO is not set | 961 | # CONFIG_UIO is not set |
939 | |||
940 | # | ||
941 | # TI VLYNQ | ||
942 | # | ||
943 | # CONFIG_STAGING is not set | 962 | # CONFIG_STAGING is not set |
944 | 963 | ||
945 | # | 964 | # |
@@ -1096,6 +1115,7 @@ CONFIG_HAVE_FUNCTION_TRACER=y | |||
1096 | CONFIG_TRACING_SUPPORT=y | 1115 | CONFIG_TRACING_SUPPORT=y |
1097 | CONFIG_FTRACE=y | 1116 | CONFIG_FTRACE=y |
1098 | # CONFIG_FUNCTION_TRACER is not set | 1117 | # CONFIG_FUNCTION_TRACER is not set |
1118 | # CONFIG_IRQSOFF_TRACER is not set | ||
1099 | # CONFIG_SCHED_TRACER is not set | 1119 | # CONFIG_SCHED_TRACER is not set |
1100 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | 1120 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set |
1101 | # CONFIG_BOOT_TRACER is not set | 1121 | # CONFIG_BOOT_TRACER is not set |
@@ -1106,6 +1126,7 @@ CONFIG_BRANCH_PROFILE_NONE=y | |||
1106 | # CONFIG_KMEMTRACE is not set | 1126 | # CONFIG_KMEMTRACE is not set |
1107 | # CONFIG_WORKQUEUE_TRACER is not set | 1127 | # CONFIG_WORKQUEUE_TRACER is not set |
1108 | # CONFIG_BLK_DEV_IO_TRACE is not set | 1128 | # CONFIG_BLK_DEV_IO_TRACE is not set |
1129 | # CONFIG_ATOMIC64_SELFTEST is not set | ||
1109 | # CONFIG_SAMPLES is not set | 1130 | # CONFIG_SAMPLES is not set |
1110 | CONFIG_HAVE_ARCH_KGDB=y | 1131 | CONFIG_HAVE_ARCH_KGDB=y |
1111 | # CONFIG_KGDB is not set | 1132 | # CONFIG_KGDB is not set |
diff --git a/arch/arm/configs/s5p6440_defconfig b/arch/arm/configs/s5p6440_defconfig index 619bfab3ab39..532e987beb4d 100644 --- a/arch/arm/configs/s5p6440_defconfig +++ b/arch/arm/configs/s5p6440_defconfig | |||
@@ -1,11 +1,13 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.34 | 3 | # Linux kernel version: 2.6.34 |
4 | # Sat May 22 03:18:18 2010 | 4 | # Wed May 26 19:04:32 2010 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_GENERIC_GPIO=y | 8 | CONFIG_GENERIC_GPIO=y |
9 | CONFIG_GENERIC_TIME=y | ||
10 | CONFIG_ARCH_USES_GETTIMEOFFSET=y | ||
9 | CONFIG_HAVE_PROC_CPU=y | 11 | CONFIG_HAVE_PROC_CPU=y |
10 | CONFIG_NO_IOPORT=y | 12 | CONFIG_NO_IOPORT=y |
11 | CONFIG_GENERIC_HARDIRQS=y | 13 | CONFIG_GENERIC_HARDIRQS=y |
@@ -33,6 +35,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
33 | CONFIG_LOCALVERSION="" | 35 | CONFIG_LOCALVERSION="" |
34 | CONFIG_LOCALVERSION_AUTO=y | 36 | CONFIG_LOCALVERSION_AUTO=y |
35 | CONFIG_HAVE_KERNEL_GZIP=y | 37 | CONFIG_HAVE_KERNEL_GZIP=y |
38 | CONFIG_HAVE_KERNEL_LZMA=y | ||
36 | CONFIG_HAVE_KERNEL_LZO=y | 39 | CONFIG_HAVE_KERNEL_LZO=y |
37 | CONFIG_KERNEL_GZIP=y | 40 | CONFIG_KERNEL_GZIP=y |
38 | # CONFIG_KERNEL_BZIP2 is not set | 41 | # CONFIG_KERNEL_BZIP2 is not set |
@@ -178,9 +181,11 @@ CONFIG_MMU=y | |||
178 | # CONFIG_ARCH_INTEGRATOR is not set | 181 | # CONFIG_ARCH_INTEGRATOR is not set |
179 | # CONFIG_ARCH_REALVIEW is not set | 182 | # CONFIG_ARCH_REALVIEW is not set |
180 | # CONFIG_ARCH_VERSATILE is not set | 183 | # CONFIG_ARCH_VERSATILE is not set |
184 | # CONFIG_ARCH_VEXPRESS is not set | ||
181 | # CONFIG_ARCH_AT91 is not set | 185 | # CONFIG_ARCH_AT91 is not set |
182 | # CONFIG_ARCH_BCMRING is not set | 186 | # CONFIG_ARCH_BCMRING is not set |
183 | # CONFIG_ARCH_CLPS711X is not set | 187 | # CONFIG_ARCH_CLPS711X is not set |
188 | # CONFIG_ARCH_CNS3XXX is not set | ||
184 | # CONFIG_ARCH_GEMINI is not set | 189 | # CONFIG_ARCH_GEMINI is not set |
185 | # CONFIG_ARCH_EBSA110 is not set | 190 | # CONFIG_ARCH_EBSA110 is not set |
186 | # CONFIG_ARCH_EP93XX is not set | 191 | # CONFIG_ARCH_EP93XX is not set |
@@ -216,7 +221,7 @@ CONFIG_MMU=y | |||
216 | # CONFIG_ARCH_S3C64XX is not set | 221 | # CONFIG_ARCH_S3C64XX is not set |
217 | CONFIG_ARCH_S5P6440=y | 222 | CONFIG_ARCH_S5P6440=y |
218 | # CONFIG_ARCH_S5P6442 is not set | 223 | # CONFIG_ARCH_S5P6442 is not set |
219 | # CONFIG_ARCH_S5PC1XX is not set | 224 | # CONFIG_ARCH_S5PC100 is not set |
220 | # CONFIG_ARCH_S5PV210 is not set | 225 | # CONFIG_ARCH_S5PV210 is not set |
221 | # CONFIG_ARCH_SHARK is not set | 226 | # CONFIG_ARCH_SHARK is not set |
222 | # CONFIG_ARCH_LH7A40X is not set | 227 | # CONFIG_ARCH_LH7A40X is not set |
@@ -225,6 +230,7 @@ CONFIG_ARCH_S5P6440=y | |||
225 | # CONFIG_ARCH_NOMADIK is not set | 230 | # CONFIG_ARCH_NOMADIK is not set |
226 | # CONFIG_ARCH_DAVINCI is not set | 231 | # CONFIG_ARCH_DAVINCI is not set |
227 | # CONFIG_ARCH_OMAP is not set | 232 | # CONFIG_ARCH_OMAP is not set |
233 | # CONFIG_PLAT_SPEAR is not set | ||
228 | CONFIG_PLAT_SAMSUNG=y | 234 | CONFIG_PLAT_SAMSUNG=y |
229 | 235 | ||
230 | # | 236 | # |
@@ -240,10 +246,15 @@ CONFIG_SAMSUNG_GPIOLIB_4BIT=y | |||
240 | CONFIG_S3C_GPIO_CFG_S3C24XX=y | 246 | CONFIG_S3C_GPIO_CFG_S3C24XX=y |
241 | CONFIG_S3C_GPIO_CFG_S3C64XX=y | 247 | CONFIG_S3C_GPIO_CFG_S3C64XX=y |
242 | CONFIG_S3C_GPIO_PULL_UPDOWN=y | 248 | CONFIG_S3C_GPIO_PULL_UPDOWN=y |
249 | CONFIG_S5P_GPIO_DRVSTR=y | ||
243 | CONFIG_SAMSUNG_GPIO_EXTRA=0 | 250 | CONFIG_SAMSUNG_GPIO_EXTRA=0 |
244 | CONFIG_S3C_GPIO_SPACE=0 | 251 | CONFIG_S3C_GPIO_SPACE=0 |
245 | CONFIG_S3C_GPIO_TRACK=y | 252 | CONFIG_S3C_GPIO_TRACK=y |
246 | # CONFIG_S3C_ADC is not set | 253 | # CONFIG_S3C_ADC is not set |
254 | CONFIG_S3C_DEV_WDT=y | ||
255 | CONFIG_SAMSUNG_DEV_ADC=y | ||
256 | CONFIG_SAMSUNG_DEV_TS=y | ||
257 | CONFIG_S3C_PL330_DMA=y | ||
247 | 258 | ||
248 | # | 259 | # |
249 | # Power management | 260 | # Power management |
@@ -276,10 +287,12 @@ CONFIG_ARM_THUMB=y | |||
276 | # CONFIG_CPU_DCACHE_DISABLE is not set | 287 | # CONFIG_CPU_DCACHE_DISABLE is not set |
277 | # CONFIG_CPU_BPREDICT_DISABLE is not set | 288 | # CONFIG_CPU_BPREDICT_DISABLE is not set |
278 | CONFIG_ARM_L1_CACHE_SHIFT=5 | 289 | CONFIG_ARM_L1_CACHE_SHIFT=5 |
290 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y | ||
279 | CONFIG_CPU_HAS_PMU=y | 291 | CONFIG_CPU_HAS_PMU=y |
280 | # CONFIG_ARM_ERRATA_411920 is not set | 292 | # CONFIG_ARM_ERRATA_411920 is not set |
281 | CONFIG_ARM_VIC=y | 293 | CONFIG_ARM_VIC=y |
282 | CONFIG_ARM_VIC_NR=2 | 294 | CONFIG_ARM_VIC_NR=2 |
295 | CONFIG_PL330=y | ||
283 | 296 | ||
284 | # | 297 | # |
285 | # Bus support | 298 | # Bus support |
@@ -326,6 +339,7 @@ CONFIG_ALIGNMENT_TRAP=y | |||
326 | CONFIG_ZBOOT_ROM_TEXT=0 | 339 | CONFIG_ZBOOT_ROM_TEXT=0 |
327 | CONFIG_ZBOOT_ROM_BSS=0 | 340 | CONFIG_ZBOOT_ROM_BSS=0 |
328 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" | 341 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" |
342 | # CONFIG_CMDLINE_FORCE is not set | ||
329 | # CONFIG_XIP_KERNEL is not set | 343 | # CONFIG_XIP_KERNEL is not set |
330 | # CONFIG_KEXEC is not set | 344 | # CONFIG_KEXEC is not set |
331 | 345 | ||
@@ -490,7 +504,9 @@ CONFIG_MOUSE_PS2_TRACKPOINT=y | |||
490 | CONFIG_INPUT_TOUCHSCREEN=y | 504 | CONFIG_INPUT_TOUCHSCREEN=y |
491 | # CONFIG_TOUCHSCREEN_AD7879 is not set | 505 | # CONFIG_TOUCHSCREEN_AD7879 is not set |
492 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set | 506 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set |
507 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set | ||
493 | # CONFIG_TOUCHSCREEN_FUJITSU is not set | 508 | # CONFIG_TOUCHSCREEN_FUJITSU is not set |
509 | # CONFIG_TOUCHSCREEN_S3C2410 is not set | ||
494 | # CONFIG_TOUCHSCREEN_GUNZE is not set | 510 | # CONFIG_TOUCHSCREEN_GUNZE is not set |
495 | # CONFIG_TOUCHSCREEN_ELO is not set | 511 | # CONFIG_TOUCHSCREEN_ELO is not set |
496 | # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set | 512 | # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set |
@@ -546,6 +562,8 @@ CONFIG_SERIAL_S3C6400=y | |||
546 | CONFIG_SERIAL_CORE=y | 562 | CONFIG_SERIAL_CORE=y |
547 | CONFIG_SERIAL_CORE_CONSOLE=y | 563 | CONFIG_SERIAL_CORE_CONSOLE=y |
548 | # CONFIG_SERIAL_TIMBERDALE is not set | 564 | # CONFIG_SERIAL_TIMBERDALE is not set |
565 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | ||
566 | # CONFIG_SERIAL_ALTERA_UART is not set | ||
549 | CONFIG_UNIX98_PTYS=y | 567 | CONFIG_UNIX98_PTYS=y |
550 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 568 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
551 | CONFIG_LEGACY_PTYS=y | 569 | CONFIG_LEGACY_PTYS=y |
@@ -593,6 +611,7 @@ CONFIG_GPIOLIB=y | |||
593 | # CONFIG_HWMON is not set | 611 | # CONFIG_HWMON is not set |
594 | # CONFIG_THERMAL is not set | 612 | # CONFIG_THERMAL is not set |
595 | # CONFIG_WATCHDOG is not set | 613 | # CONFIG_WATCHDOG is not set |
614 | CONFIG_HAVE_S3C2410_WATCHDOG=y | ||
596 | CONFIG_SSB_POSSIBLE=y | 615 | CONFIG_SSB_POSSIBLE=y |
597 | 616 | ||
598 | # | 617 | # |
@@ -649,10 +668,6 @@ CONFIG_RTC_LIB=y | |||
649 | # CONFIG_DMADEVICES is not set | 668 | # CONFIG_DMADEVICES is not set |
650 | # CONFIG_AUXDISPLAY is not set | 669 | # CONFIG_AUXDISPLAY is not set |
651 | # CONFIG_UIO is not set | 670 | # CONFIG_UIO is not set |
652 | |||
653 | # | ||
654 | # TI VLYNQ | ||
655 | # | ||
656 | # CONFIG_STAGING is not set | 671 | # CONFIG_STAGING is not set |
657 | 672 | ||
658 | # | 673 | # |
@@ -850,6 +865,7 @@ CONFIG_HAVE_FUNCTION_TRACER=y | |||
850 | CONFIG_TRACING_SUPPORT=y | 865 | CONFIG_TRACING_SUPPORT=y |
851 | CONFIG_FTRACE=y | 866 | CONFIG_FTRACE=y |
852 | # CONFIG_FUNCTION_TRACER is not set | 867 | # CONFIG_FUNCTION_TRACER is not set |
868 | # CONFIG_IRQSOFF_TRACER is not set | ||
853 | # CONFIG_SCHED_TRACER is not set | 869 | # CONFIG_SCHED_TRACER is not set |
854 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | 870 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set |
855 | # CONFIG_BOOT_TRACER is not set | 871 | # CONFIG_BOOT_TRACER is not set |
@@ -860,6 +876,7 @@ CONFIG_BRANCH_PROFILE_NONE=y | |||
860 | # CONFIG_KMEMTRACE is not set | 876 | # CONFIG_KMEMTRACE is not set |
861 | # CONFIG_WORKQUEUE_TRACER is not set | 877 | # CONFIG_WORKQUEUE_TRACER is not set |
862 | # CONFIG_BLK_DEV_IO_TRACE is not set | 878 | # CONFIG_BLK_DEV_IO_TRACE is not set |
879 | # CONFIG_ATOMIC64_SELFTEST is not set | ||
863 | # CONFIG_SAMPLES is not set | 880 | # CONFIG_SAMPLES is not set |
864 | CONFIG_HAVE_ARCH_KGDB=y | 881 | CONFIG_HAVE_ARCH_KGDB=y |
865 | # CONFIG_KGDB is not set | 882 | # CONFIG_KGDB is not set |
diff --git a/arch/arm/configs/s5p6442_defconfig b/arch/arm/configs/s5p6442_defconfig index d7ea27509cf4..068219b360f5 100644 --- a/arch/arm/configs/s5p6442_defconfig +++ b/arch/arm/configs/s5p6442_defconfig | |||
@@ -1,11 +1,13 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.34 | 3 | # Linux kernel version: 2.6.34 |
4 | # Sat May 22 03:18:19 2010 | 4 | # Wed May 26 19:04:34 2010 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_GENERIC_GPIO=y | 8 | CONFIG_GENERIC_GPIO=y |
9 | CONFIG_GENERIC_TIME=y | ||
10 | CONFIG_ARCH_USES_GETTIMEOFFSET=y | ||
9 | CONFIG_HAVE_PROC_CPU=y | 11 | CONFIG_HAVE_PROC_CPU=y |
10 | CONFIG_NO_IOPORT=y | 12 | CONFIG_NO_IOPORT=y |
11 | CONFIG_GENERIC_HARDIRQS=y | 13 | CONFIG_GENERIC_HARDIRQS=y |
@@ -33,6 +35,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
33 | CONFIG_LOCALVERSION="" | 35 | CONFIG_LOCALVERSION="" |
34 | CONFIG_LOCALVERSION_AUTO=y | 36 | CONFIG_LOCALVERSION_AUTO=y |
35 | CONFIG_HAVE_KERNEL_GZIP=y | 37 | CONFIG_HAVE_KERNEL_GZIP=y |
38 | CONFIG_HAVE_KERNEL_LZMA=y | ||
36 | CONFIG_HAVE_KERNEL_LZO=y | 39 | CONFIG_HAVE_KERNEL_LZO=y |
37 | CONFIG_KERNEL_GZIP=y | 40 | CONFIG_KERNEL_GZIP=y |
38 | # CONFIG_KERNEL_BZIP2 is not set | 41 | # CONFIG_KERNEL_BZIP2 is not set |
@@ -178,9 +181,11 @@ CONFIG_MMU=y | |||
178 | # CONFIG_ARCH_INTEGRATOR is not set | 181 | # CONFIG_ARCH_INTEGRATOR is not set |
179 | # CONFIG_ARCH_REALVIEW is not set | 182 | # CONFIG_ARCH_REALVIEW is not set |
180 | # CONFIG_ARCH_VERSATILE is not set | 183 | # CONFIG_ARCH_VERSATILE is not set |
184 | # CONFIG_ARCH_VEXPRESS is not set | ||
181 | # CONFIG_ARCH_AT91 is not set | 185 | # CONFIG_ARCH_AT91 is not set |
182 | # CONFIG_ARCH_BCMRING is not set | 186 | # CONFIG_ARCH_BCMRING is not set |
183 | # CONFIG_ARCH_CLPS711X is not set | 187 | # CONFIG_ARCH_CLPS711X is not set |
188 | # CONFIG_ARCH_CNS3XXX is not set | ||
184 | # CONFIG_ARCH_GEMINI is not set | 189 | # CONFIG_ARCH_GEMINI is not set |
185 | # CONFIG_ARCH_EBSA110 is not set | 190 | # CONFIG_ARCH_EBSA110 is not set |
186 | # CONFIG_ARCH_EP93XX is not set | 191 | # CONFIG_ARCH_EP93XX is not set |
@@ -216,7 +221,7 @@ CONFIG_MMU=y | |||
216 | # CONFIG_ARCH_S3C64XX is not set | 221 | # CONFIG_ARCH_S3C64XX is not set |
217 | # CONFIG_ARCH_S5P6440 is not set | 222 | # CONFIG_ARCH_S5P6440 is not set |
218 | CONFIG_ARCH_S5P6442=y | 223 | CONFIG_ARCH_S5P6442=y |
219 | # CONFIG_ARCH_S5PC1XX is not set | 224 | # CONFIG_ARCH_S5PC100 is not set |
220 | # CONFIG_ARCH_S5PV210 is not set | 225 | # CONFIG_ARCH_S5PV210 is not set |
221 | # CONFIG_ARCH_SHARK is not set | 226 | # CONFIG_ARCH_SHARK is not set |
222 | # CONFIG_ARCH_LH7A40X is not set | 227 | # CONFIG_ARCH_LH7A40X is not set |
@@ -225,6 +230,7 @@ CONFIG_ARCH_S5P6442=y | |||
225 | # CONFIG_ARCH_NOMADIK is not set | 230 | # CONFIG_ARCH_NOMADIK is not set |
226 | # CONFIG_ARCH_DAVINCI is not set | 231 | # CONFIG_ARCH_DAVINCI is not set |
227 | # CONFIG_ARCH_OMAP is not set | 232 | # CONFIG_ARCH_OMAP is not set |
233 | # CONFIG_PLAT_SPEAR is not set | ||
228 | CONFIG_PLAT_SAMSUNG=y | 234 | CONFIG_PLAT_SAMSUNG=y |
229 | 235 | ||
230 | # | 236 | # |
@@ -240,10 +246,12 @@ CONFIG_SAMSUNG_GPIOLIB_4BIT=y | |||
240 | CONFIG_S3C_GPIO_CFG_S3C24XX=y | 246 | CONFIG_S3C_GPIO_CFG_S3C24XX=y |
241 | CONFIG_S3C_GPIO_CFG_S3C64XX=y | 247 | CONFIG_S3C_GPIO_CFG_S3C64XX=y |
242 | CONFIG_S3C_GPIO_PULL_UPDOWN=y | 248 | CONFIG_S3C_GPIO_PULL_UPDOWN=y |
249 | CONFIG_S5P_GPIO_DRVSTR=y | ||
243 | CONFIG_SAMSUNG_GPIO_EXTRA=0 | 250 | CONFIG_SAMSUNG_GPIO_EXTRA=0 |
244 | CONFIG_S3C_GPIO_SPACE=0 | 251 | CONFIG_S3C_GPIO_SPACE=0 |
245 | CONFIG_S3C_GPIO_TRACK=y | 252 | CONFIG_S3C_GPIO_TRACK=y |
246 | # CONFIG_S3C_ADC is not set | 253 | # CONFIG_S3C_ADC is not set |
254 | CONFIG_S3C_PL330_DMA=y | ||
247 | 255 | ||
248 | # | 256 | # |
249 | # Power management | 257 | # Power management |
@@ -276,10 +284,12 @@ CONFIG_ARM_THUMB=y | |||
276 | # CONFIG_CPU_DCACHE_DISABLE is not set | 284 | # CONFIG_CPU_DCACHE_DISABLE is not set |
277 | # CONFIG_CPU_BPREDICT_DISABLE is not set | 285 | # CONFIG_CPU_BPREDICT_DISABLE is not set |
278 | CONFIG_ARM_L1_CACHE_SHIFT=5 | 286 | CONFIG_ARM_L1_CACHE_SHIFT=5 |
287 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y | ||
279 | CONFIG_CPU_HAS_PMU=y | 288 | CONFIG_CPU_HAS_PMU=y |
280 | # CONFIG_ARM_ERRATA_411920 is not set | 289 | # CONFIG_ARM_ERRATA_411920 is not set |
281 | CONFIG_ARM_VIC=y | 290 | CONFIG_ARM_VIC=y |
282 | CONFIG_ARM_VIC_NR=2 | 291 | CONFIG_ARM_VIC_NR=2 |
292 | CONFIG_PL330=y | ||
283 | 293 | ||
284 | # | 294 | # |
285 | # Bus support | 295 | # Bus support |
@@ -326,6 +336,7 @@ CONFIG_ALIGNMENT_TRAP=y | |||
326 | CONFIG_ZBOOT_ROM_TEXT=0 | 336 | CONFIG_ZBOOT_ROM_TEXT=0 |
327 | CONFIG_ZBOOT_ROM_BSS=0 | 337 | CONFIG_ZBOOT_ROM_BSS=0 |
328 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" | 338 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" |
339 | # CONFIG_CMDLINE_FORCE is not set | ||
329 | # CONFIG_XIP_KERNEL is not set | 340 | # CONFIG_XIP_KERNEL is not set |
330 | # CONFIG_KEXEC is not set | 341 | # CONFIG_KEXEC is not set |
331 | 342 | ||
@@ -471,6 +482,7 @@ CONFIG_INPUT_EVDEV=y | |||
471 | CONFIG_INPUT_TOUCHSCREEN=y | 482 | CONFIG_INPUT_TOUCHSCREEN=y |
472 | # CONFIG_TOUCHSCREEN_AD7879 is not set | 483 | # CONFIG_TOUCHSCREEN_AD7879 is not set |
473 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set | 484 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set |
485 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set | ||
474 | # CONFIG_TOUCHSCREEN_FUJITSU is not set | 486 | # CONFIG_TOUCHSCREEN_FUJITSU is not set |
475 | # CONFIG_TOUCHSCREEN_GUNZE is not set | 487 | # CONFIG_TOUCHSCREEN_GUNZE is not set |
476 | # CONFIG_TOUCHSCREEN_ELO is not set | 488 | # CONFIG_TOUCHSCREEN_ELO is not set |
@@ -525,6 +537,8 @@ CONFIG_SERIAL_S5PV210=y | |||
525 | CONFIG_SERIAL_CORE=y | 537 | CONFIG_SERIAL_CORE=y |
526 | CONFIG_SERIAL_CORE_CONSOLE=y | 538 | CONFIG_SERIAL_CORE_CONSOLE=y |
527 | # CONFIG_SERIAL_TIMBERDALE is not set | 539 | # CONFIG_SERIAL_TIMBERDALE is not set |
540 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | ||
541 | # CONFIG_SERIAL_ALTERA_UART is not set | ||
528 | CONFIG_UNIX98_PTYS=y | 542 | CONFIG_UNIX98_PTYS=y |
529 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 543 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
530 | CONFIG_LEGACY_PTYS=y | 544 | CONFIG_LEGACY_PTYS=y |
@@ -624,10 +638,6 @@ CONFIG_RTC_LIB=y | |||
624 | # CONFIG_DMADEVICES is not set | 638 | # CONFIG_DMADEVICES is not set |
625 | # CONFIG_AUXDISPLAY is not set | 639 | # CONFIG_AUXDISPLAY is not set |
626 | # CONFIG_UIO is not set | 640 | # CONFIG_UIO is not set |
627 | |||
628 | # | ||
629 | # TI VLYNQ | ||
630 | # | ||
631 | # CONFIG_STAGING is not set | 641 | # CONFIG_STAGING is not set |
632 | 642 | ||
633 | # | 643 | # |
@@ -836,6 +846,7 @@ CONFIG_HAVE_FUNCTION_TRACER=y | |||
836 | CONFIG_TRACING_SUPPORT=y | 846 | CONFIG_TRACING_SUPPORT=y |
837 | CONFIG_FTRACE=y | 847 | CONFIG_FTRACE=y |
838 | # CONFIG_FUNCTION_TRACER is not set | 848 | # CONFIG_FUNCTION_TRACER is not set |
849 | # CONFIG_IRQSOFF_TRACER is not set | ||
839 | # CONFIG_SCHED_TRACER is not set | 850 | # CONFIG_SCHED_TRACER is not set |
840 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | 851 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set |
841 | # CONFIG_BOOT_TRACER is not set | 852 | # CONFIG_BOOT_TRACER is not set |
@@ -846,6 +857,7 @@ CONFIG_BRANCH_PROFILE_NONE=y | |||
846 | # CONFIG_KMEMTRACE is not set | 857 | # CONFIG_KMEMTRACE is not set |
847 | # CONFIG_WORKQUEUE_TRACER is not set | 858 | # CONFIG_WORKQUEUE_TRACER is not set |
848 | # CONFIG_BLK_DEV_IO_TRACE is not set | 859 | # CONFIG_BLK_DEV_IO_TRACE is not set |
860 | # CONFIG_ATOMIC64_SELFTEST is not set | ||
849 | # CONFIG_SAMPLES is not set | 861 | # CONFIG_SAMPLES is not set |
850 | CONFIG_HAVE_ARCH_KGDB=y | 862 | CONFIG_HAVE_ARCH_KGDB=y |
851 | # CONFIG_KGDB is not set | 863 | # CONFIG_KGDB is not set |
diff --git a/arch/arm/configs/s5pc100_defconfig b/arch/arm/configs/s5pc100_defconfig index 2053be6c9af1..ebc6245b9fca 100644 --- a/arch/arm/configs/s5pc100_defconfig +++ b/arch/arm/configs/s5pc100_defconfig | |||
@@ -1,12 +1,14 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.30 | 3 | # Linux kernel version: 2.6.34 |
4 | # Wed Jul 1 15:53:07 2009 | 4 | # Wed May 26 19:04:35 2010 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_GENERIC_GPIO=y | 8 | CONFIG_GENERIC_GPIO=y |
9 | CONFIG_MMU=y | 9 | CONFIG_GENERIC_TIME=y |
10 | CONFIG_ARCH_USES_GETTIMEOFFSET=y | ||
11 | CONFIG_HAVE_PROC_CPU=y | ||
10 | CONFIG_NO_IOPORT=y | 12 | CONFIG_NO_IOPORT=y |
11 | CONFIG_GENERIC_HARDIRQS=y | 13 | CONFIG_GENERIC_HARDIRQS=y |
12 | CONFIG_STACKTRACE_SUPPORT=y | 14 | CONFIG_STACKTRACE_SUPPORT=y |
@@ -18,7 +20,9 @@ CONFIG_GENERIC_IRQ_PROBE=y | |||
18 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 20 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
19 | CONFIG_GENERIC_HWEIGHT=y | 21 | CONFIG_GENERIC_HWEIGHT=y |
20 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 22 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
23 | CONFIG_NEED_DMA_MAP_STATE=y | ||
21 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | 24 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y |
25 | CONFIG_ARM_L1_CACHE_SHIFT_6=y | ||
22 | CONFIG_VECTORS_BASE=0xffff0000 | 26 | CONFIG_VECTORS_BASE=0xffff0000 |
23 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 27 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
24 | CONFIG_CONSTRUCTORS=y | 28 | CONFIG_CONSTRUCTORS=y |
@@ -31,6 +35,13 @@ CONFIG_BROKEN_ON_SMP=y | |||
31 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 35 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
32 | CONFIG_LOCALVERSION="" | 36 | CONFIG_LOCALVERSION="" |
33 | CONFIG_LOCALVERSION_AUTO=y | 37 | CONFIG_LOCALVERSION_AUTO=y |
38 | CONFIG_HAVE_KERNEL_GZIP=y | ||
39 | CONFIG_HAVE_KERNEL_LZMA=y | ||
40 | CONFIG_HAVE_KERNEL_LZO=y | ||
41 | CONFIG_KERNEL_GZIP=y | ||
42 | # CONFIG_KERNEL_BZIP2 is not set | ||
43 | # CONFIG_KERNEL_LZMA is not set | ||
44 | # CONFIG_KERNEL_LZO is not set | ||
34 | CONFIG_SWAP=y | 45 | CONFIG_SWAP=y |
35 | # CONFIG_SYSVIPC is not set | 46 | # CONFIG_SYSVIPC is not set |
36 | # CONFIG_BSD_PROCESS_ACCT is not set | 47 | # CONFIG_BSD_PROCESS_ACCT is not set |
@@ -38,14 +49,15 @@ CONFIG_SWAP=y | |||
38 | # | 49 | # |
39 | # RCU Subsystem | 50 | # RCU Subsystem |
40 | # | 51 | # |
41 | CONFIG_CLASSIC_RCU=y | 52 | CONFIG_TREE_RCU=y |
42 | # CONFIG_TREE_RCU is not set | 53 | # CONFIG_TREE_PREEMPT_RCU is not set |
43 | # CONFIG_PREEMPT_RCU is not set | 54 | # CONFIG_TINY_RCU is not set |
55 | # CONFIG_RCU_TRACE is not set | ||
56 | CONFIG_RCU_FANOUT=32 | ||
57 | # CONFIG_RCU_FANOUT_EXACT is not set | ||
44 | # CONFIG_TREE_RCU_TRACE is not set | 58 | # CONFIG_TREE_RCU_TRACE is not set |
45 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
46 | # CONFIG_IKCONFIG is not set | 59 | # CONFIG_IKCONFIG is not set |
47 | CONFIG_LOG_BUF_SHIFT=17 | 60 | CONFIG_LOG_BUF_SHIFT=17 |
48 | # CONFIG_GROUP_SCHED is not set | ||
49 | # CONFIG_CGROUPS is not set | 61 | # CONFIG_CGROUPS is not set |
50 | CONFIG_SYSFS_DEPRECATED=y | 62 | CONFIG_SYSFS_DEPRECATED=y |
51 | CONFIG_SYSFS_DEPRECATED_V2=y | 63 | CONFIG_SYSFS_DEPRECATED_V2=y |
@@ -59,6 +71,7 @@ CONFIG_INITRAMFS_SOURCE="" | |||
59 | CONFIG_RD_GZIP=y | 71 | CONFIG_RD_GZIP=y |
60 | CONFIG_RD_BZIP2=y | 72 | CONFIG_RD_BZIP2=y |
61 | CONFIG_RD_LZMA=y | 73 | CONFIG_RD_LZMA=y |
74 | CONFIG_RD_LZO=y | ||
62 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 75 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
63 | CONFIG_SYSCTL=y | 76 | CONFIG_SYSCTL=y |
64 | CONFIG_ANON_INODES=y | 77 | CONFIG_ANON_INODES=y |
@@ -80,19 +93,21 @@ CONFIG_TIMERFD=y | |||
80 | CONFIG_EVENTFD=y | 93 | CONFIG_EVENTFD=y |
81 | CONFIG_SHMEM=y | 94 | CONFIG_SHMEM=y |
82 | CONFIG_AIO=y | 95 | CONFIG_AIO=y |
96 | CONFIG_HAVE_PERF_EVENTS=y | ||
97 | CONFIG_PERF_USE_VMALLOC=y | ||
83 | 98 | ||
84 | # | 99 | # |
85 | # Performance Counters | 100 | # Kernel Performance Events And Counters |
86 | # | 101 | # |
102 | # CONFIG_PERF_EVENTS is not set | ||
103 | # CONFIG_PERF_COUNTERS is not set | ||
87 | CONFIG_VM_EVENT_COUNTERS=y | 104 | CONFIG_VM_EVENT_COUNTERS=y |
88 | CONFIG_SLUB_DEBUG=y | 105 | CONFIG_SLUB_DEBUG=y |
89 | # CONFIG_STRIP_ASM_SYMS is not set | ||
90 | CONFIG_COMPAT_BRK=y | 106 | CONFIG_COMPAT_BRK=y |
91 | # CONFIG_SLAB is not set | 107 | # CONFIG_SLAB is not set |
92 | CONFIG_SLUB=y | 108 | CONFIG_SLUB=y |
93 | # CONFIG_SLOB is not set | 109 | # CONFIG_SLOB is not set |
94 | # CONFIG_PROFILING is not set | 110 | # CONFIG_PROFILING is not set |
95 | # CONFIG_MARKERS is not set | ||
96 | CONFIG_HAVE_OPROFILE=y | 111 | CONFIG_HAVE_OPROFILE=y |
97 | # CONFIG_KPROBES is not set | 112 | # CONFIG_KPROBES is not set |
98 | CONFIG_HAVE_KPROBES=y | 113 | CONFIG_HAVE_KPROBES=y |
@@ -122,25 +137,56 @@ CONFIG_LBDAF=y | |||
122 | # IO Schedulers | 137 | # IO Schedulers |
123 | # | 138 | # |
124 | CONFIG_IOSCHED_NOOP=y | 139 | CONFIG_IOSCHED_NOOP=y |
125 | CONFIG_IOSCHED_AS=y | ||
126 | CONFIG_IOSCHED_DEADLINE=y | 140 | CONFIG_IOSCHED_DEADLINE=y |
127 | CONFIG_IOSCHED_CFQ=y | 141 | CONFIG_IOSCHED_CFQ=y |
128 | # CONFIG_DEFAULT_AS is not set | ||
129 | # CONFIG_DEFAULT_DEADLINE is not set | 142 | # CONFIG_DEFAULT_DEADLINE is not set |
130 | CONFIG_DEFAULT_CFQ=y | 143 | CONFIG_DEFAULT_CFQ=y |
131 | # CONFIG_DEFAULT_NOOP is not set | 144 | # CONFIG_DEFAULT_NOOP is not set |
132 | CONFIG_DEFAULT_IOSCHED="cfq" | 145 | CONFIG_DEFAULT_IOSCHED="cfq" |
146 | # CONFIG_INLINE_SPIN_TRYLOCK is not set | ||
147 | # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set | ||
148 | # CONFIG_INLINE_SPIN_LOCK is not set | ||
149 | # CONFIG_INLINE_SPIN_LOCK_BH is not set | ||
150 | # CONFIG_INLINE_SPIN_LOCK_IRQ is not set | ||
151 | # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set | ||
152 | # CONFIG_INLINE_SPIN_UNLOCK is not set | ||
153 | # CONFIG_INLINE_SPIN_UNLOCK_BH is not set | ||
154 | # CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set | ||
155 | # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set | ||
156 | # CONFIG_INLINE_READ_TRYLOCK is not set | ||
157 | # CONFIG_INLINE_READ_LOCK is not set | ||
158 | # CONFIG_INLINE_READ_LOCK_BH is not set | ||
159 | # CONFIG_INLINE_READ_LOCK_IRQ is not set | ||
160 | # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set | ||
161 | # CONFIG_INLINE_READ_UNLOCK is not set | ||
162 | # CONFIG_INLINE_READ_UNLOCK_BH is not set | ||
163 | # CONFIG_INLINE_READ_UNLOCK_IRQ is not set | ||
164 | # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set | ||
165 | # CONFIG_INLINE_WRITE_TRYLOCK is not set | ||
166 | # CONFIG_INLINE_WRITE_LOCK is not set | ||
167 | # CONFIG_INLINE_WRITE_LOCK_BH is not set | ||
168 | # CONFIG_INLINE_WRITE_LOCK_IRQ is not set | ||
169 | # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set | ||
170 | # CONFIG_INLINE_WRITE_UNLOCK is not set | ||
171 | # CONFIG_INLINE_WRITE_UNLOCK_BH is not set | ||
172 | # CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set | ||
173 | # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set | ||
174 | # CONFIG_MUTEX_SPIN_ON_OWNER is not set | ||
133 | # CONFIG_FREEZER is not set | 175 | # CONFIG_FREEZER is not set |
134 | 176 | ||
135 | # | 177 | # |
136 | # System Type | 178 | # System Type |
137 | # | 179 | # |
180 | CONFIG_MMU=y | ||
138 | # CONFIG_ARCH_AAEC2000 is not set | 181 | # CONFIG_ARCH_AAEC2000 is not set |
139 | # CONFIG_ARCH_INTEGRATOR is not set | 182 | # CONFIG_ARCH_INTEGRATOR is not set |
140 | # CONFIG_ARCH_REALVIEW is not set | 183 | # CONFIG_ARCH_REALVIEW is not set |
141 | # CONFIG_ARCH_VERSATILE is not set | 184 | # CONFIG_ARCH_VERSATILE is not set |
185 | # CONFIG_ARCH_VEXPRESS is not set | ||
142 | # CONFIG_ARCH_AT91 is not set | 186 | # CONFIG_ARCH_AT91 is not set |
187 | # CONFIG_ARCH_BCMRING is not set | ||
143 | # CONFIG_ARCH_CLPS711X is not set | 188 | # CONFIG_ARCH_CLPS711X is not set |
189 | # CONFIG_ARCH_CNS3XXX is not set | ||
144 | # CONFIG_ARCH_GEMINI is not set | 190 | # CONFIG_ARCH_GEMINI is not set |
145 | # CONFIG_ARCH_EBSA110 is not set | 191 | # CONFIG_ARCH_EBSA110 is not set |
146 | # CONFIG_ARCH_EP93XX is not set | 192 | # CONFIG_ARCH_EP93XX is not set |
@@ -156,6 +202,7 @@ CONFIG_DEFAULT_IOSCHED="cfq" | |||
156 | # CONFIG_ARCH_IXP2000 is not set | 202 | # CONFIG_ARCH_IXP2000 is not set |
157 | # CONFIG_ARCH_IXP4XX is not set | 203 | # CONFIG_ARCH_IXP4XX is not set |
158 | # CONFIG_ARCH_L7200 is not set | 204 | # CONFIG_ARCH_L7200 is not set |
205 | # CONFIG_ARCH_DOVE is not set | ||
159 | # CONFIG_ARCH_KIRKWOOD is not set | 206 | # CONFIG_ARCH_KIRKWOOD is not set |
160 | # CONFIG_ARCH_LOKI is not set | 207 | # CONFIG_ARCH_LOKI is not set |
161 | # CONFIG_ARCH_MV78XX0 is not set | 208 | # CONFIG_ARCH_MV78XX0 is not set |
@@ -164,39 +211,64 @@ CONFIG_DEFAULT_IOSCHED="cfq" | |||
164 | # CONFIG_ARCH_KS8695 is not set | 211 | # CONFIG_ARCH_KS8695 is not set |
165 | # CONFIG_ARCH_NS9XXX is not set | 212 | # CONFIG_ARCH_NS9XXX is not set |
166 | # CONFIG_ARCH_W90X900 is not set | 213 | # CONFIG_ARCH_W90X900 is not set |
214 | # CONFIG_ARCH_NUC93X is not set | ||
167 | # CONFIG_ARCH_PNX4008 is not set | 215 | # CONFIG_ARCH_PNX4008 is not set |
168 | # CONFIG_ARCH_PXA is not set | 216 | # CONFIG_ARCH_PXA is not set |
169 | # CONFIG_ARCH_MSM is not set | 217 | # CONFIG_ARCH_MSM is not set |
218 | # CONFIG_ARCH_SHMOBILE is not set | ||
170 | # CONFIG_ARCH_RPC is not set | 219 | # CONFIG_ARCH_RPC is not set |
171 | # CONFIG_ARCH_SA1100 is not set | 220 | # CONFIG_ARCH_SA1100 is not set |
172 | # CONFIG_ARCH_S3C2410 is not set | 221 | # CONFIG_ARCH_S3C2410 is not set |
173 | # CONFIG_ARCH_S3C64XX is not set | 222 | # CONFIG_ARCH_S3C64XX is not set |
223 | # CONFIG_ARCH_S5P6440 is not set | ||
224 | # CONFIG_ARCH_S5P6442 is not set | ||
174 | CONFIG_ARCH_S5PC100=y | 225 | CONFIG_ARCH_S5PC100=y |
226 | # CONFIG_ARCH_S5PV210 is not set | ||
175 | # CONFIG_ARCH_SHARK is not set | 227 | # CONFIG_ARCH_SHARK is not set |
176 | # CONFIG_ARCH_LH7A40X is not set | 228 | # CONFIG_ARCH_LH7A40X is not set |
177 | # CONFIG_ARCH_U300 is not set | 229 | # CONFIG_ARCH_U300 is not set |
230 | # CONFIG_ARCH_U8500 is not set | ||
231 | # CONFIG_ARCH_NOMADIK is not set | ||
178 | # CONFIG_ARCH_DAVINCI is not set | 232 | # CONFIG_ARCH_DAVINCI is not set |
179 | # CONFIG_ARCH_OMAP is not set | 233 | # CONFIG_ARCH_OMAP is not set |
180 | CONFIG_PLAT_S3C=y | 234 | # CONFIG_PLAT_SPEAR is not set |
235 | CONFIG_PLAT_SAMSUNG=y | ||
181 | 236 | ||
182 | # | 237 | # |
183 | # Boot options | 238 | # Boot options |
184 | # | 239 | # |
185 | # CONFIG_S3C_BOOT_ERROR_RESET is not set | 240 | # CONFIG_S3C_BOOT_ERROR_RESET is not set |
186 | CONFIG_S3C_BOOT_UART_FORCE_FIFO=y | 241 | CONFIG_S3C_BOOT_UART_FORCE_FIFO=y |
242 | CONFIG_S3C_LOWLEVEL_UART_PORT=0 | ||
243 | CONFIG_SAMSUNG_CLKSRC=y | ||
244 | CONFIG_SAMSUNG_IRQ_VIC_TIMER=y | ||
245 | CONFIG_SAMSUNG_IRQ_UART=y | ||
246 | CONFIG_SAMSUNG_GPIOLIB_4BIT=y | ||
247 | CONFIG_S3C_GPIO_CFG_S3C24XX=y | ||
248 | CONFIG_S3C_GPIO_CFG_S3C64XX=y | ||
249 | CONFIG_S3C_GPIO_PULL_UPDOWN=y | ||
250 | CONFIG_S5P_GPIO_DRVSTR=y | ||
251 | CONFIG_SAMSUNG_GPIO_EXTRA=0 | ||
252 | CONFIG_S3C_GPIO_SPACE=0 | ||
253 | CONFIG_S3C_GPIO_TRACK=y | ||
254 | # CONFIG_S3C_ADC is not set | ||
255 | CONFIG_S3C_DEV_HSMMC=y | ||
256 | CONFIG_S3C_DEV_HSMMC1=y | ||
257 | CONFIG_S3C_DEV_HSMMC2=y | ||
258 | CONFIG_S3C_DEV_I2C1=y | ||
259 | CONFIG_S3C_DEV_FB=y | ||
260 | CONFIG_S3C_PL330_DMA=y | ||
187 | 261 | ||
188 | # | 262 | # |
189 | # Power management | 263 | # Power management |
190 | # | 264 | # |
191 | CONFIG_S3C_LOWLEVEL_UART_PORT=0 | 265 | CONFIG_PLAT_S5P=y |
192 | CONFIG_S3C_GPIO_SPACE=0 | 266 | CONFIG_S5P_EXT_INT=y |
193 | CONFIG_S3C_GPIO_TRACK=y | ||
194 | CONFIG_S3C_GPIO_PULL_UPDOWN=y | ||
195 | CONFIG_PLAT_S5PC1XX=y | ||
196 | CONFIG_CPU_S5PC100_INIT=y | ||
197 | CONFIG_CPU_S5PC100_CLOCK=y | ||
198 | CONFIG_S5PC100_SETUP_I2C0=y | ||
199 | CONFIG_CPU_S5PC100=y | 267 | CONFIG_CPU_S5PC100=y |
268 | CONFIG_S5PC100_SETUP_FB_24BPP=y | ||
269 | CONFIG_S5PC100_SETUP_I2C1=y | ||
270 | CONFIG_S5PC100_SETUP_SDHCI=y | ||
271 | CONFIG_S5PC100_SETUP_SDHCI_GPIO=y | ||
200 | CONFIG_MACH_SMDKC100=y | 272 | CONFIG_MACH_SMDKC100=y |
201 | 273 | ||
202 | # | 274 | # |
@@ -206,7 +278,7 @@ CONFIG_CPU_32v6K=y | |||
206 | CONFIG_CPU_V7=y | 278 | CONFIG_CPU_V7=y |
207 | CONFIG_CPU_32v7=y | 279 | CONFIG_CPU_32v7=y |
208 | CONFIG_CPU_ABRT_EV7=y | 280 | CONFIG_CPU_ABRT_EV7=y |
209 | CONFIG_CPU_PABRT_IFAR=y | 281 | CONFIG_CPU_PABRT_V7=y |
210 | CONFIG_CPU_CACHE_V7=y | 282 | CONFIG_CPU_CACHE_V7=y |
211 | CONFIG_CPU_CACHE_VIPT=y | 283 | CONFIG_CPU_CACHE_VIPT=y |
212 | CONFIG_CPU_COPY_V6=y | 284 | CONFIG_CPU_COPY_V6=y |
@@ -224,11 +296,15 @@ CONFIG_ARM_THUMB=y | |||
224 | # CONFIG_CPU_DCACHE_DISABLE is not set | 296 | # CONFIG_CPU_DCACHE_DISABLE is not set |
225 | # CONFIG_CPU_BPREDICT_DISABLE is not set | 297 | # CONFIG_CPU_BPREDICT_DISABLE is not set |
226 | CONFIG_HAS_TLS_REG=y | 298 | CONFIG_HAS_TLS_REG=y |
299 | CONFIG_ARM_L1_CACHE_SHIFT=6 | ||
300 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y | ||
301 | CONFIG_CPU_HAS_PMU=y | ||
227 | # CONFIG_ARM_ERRATA_430973 is not set | 302 | # CONFIG_ARM_ERRATA_430973 is not set |
228 | # CONFIG_ARM_ERRATA_458693 is not set | 303 | # CONFIG_ARM_ERRATA_458693 is not set |
229 | # CONFIG_ARM_ERRATA_460075 is not set | 304 | # CONFIG_ARM_ERRATA_460075 is not set |
230 | CONFIG_ARM_VIC=y | 305 | CONFIG_ARM_VIC=y |
231 | CONFIG_ARM_VIC_NR=2 | 306 | CONFIG_ARM_VIC_NR=2 |
307 | CONFIG_PL330=y | ||
232 | 308 | ||
233 | # | 309 | # |
234 | # Bus support | 310 | # Bus support |
@@ -244,8 +320,11 @@ CONFIG_VMSPLIT_3G=y | |||
244 | # CONFIG_VMSPLIT_2G is not set | 320 | # CONFIG_VMSPLIT_2G is not set |
245 | # CONFIG_VMSPLIT_1G is not set | 321 | # CONFIG_VMSPLIT_1G is not set |
246 | CONFIG_PAGE_OFFSET=0xC0000000 | 322 | CONFIG_PAGE_OFFSET=0xC0000000 |
323 | CONFIG_PREEMPT_NONE=y | ||
324 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
247 | # CONFIG_PREEMPT is not set | 325 | # CONFIG_PREEMPT is not set |
248 | CONFIG_HZ=100 | 326 | CONFIG_HZ=100 |
327 | # CONFIG_THUMB2_KERNEL is not set | ||
249 | CONFIG_AEABI=y | 328 | CONFIG_AEABI=y |
250 | CONFIG_OABI_COMPAT=y | 329 | CONFIG_OABI_COMPAT=y |
251 | # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set | 330 | # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set |
@@ -258,12 +337,11 @@ CONFIG_FLATMEM_MANUAL=y | |||
258 | CONFIG_FLATMEM=y | 337 | CONFIG_FLATMEM=y |
259 | CONFIG_FLAT_NODE_MEM_MAP=y | 338 | CONFIG_FLAT_NODE_MEM_MAP=y |
260 | CONFIG_PAGEFLAGS_EXTENDED=y | 339 | CONFIG_PAGEFLAGS_EXTENDED=y |
261 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 340 | CONFIG_SPLIT_PTLOCK_CPUS=999999 |
262 | # CONFIG_PHYS_ADDR_T_64BIT is not set | 341 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
263 | CONFIG_ZONE_DMA_FLAG=0 | 342 | CONFIG_ZONE_DMA_FLAG=0 |
264 | CONFIG_VIRT_TO_BUS=y | 343 | CONFIG_VIRT_TO_BUS=y |
265 | CONFIG_HAVE_MLOCK=y | 344 | # CONFIG_KSM is not set |
266 | CONFIG_HAVE_MLOCKED_PAGE_BIT=y | ||
267 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | 345 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 |
268 | CONFIG_ALIGNMENT_TRAP=y | 346 | CONFIG_ALIGNMENT_TRAP=y |
269 | # CONFIG_UACCESS_WITH_MEMCPY is not set | 347 | # CONFIG_UACCESS_WITH_MEMCPY is not set |
@@ -274,6 +352,7 @@ CONFIG_ALIGNMENT_TRAP=y | |||
274 | CONFIG_ZBOOT_ROM_TEXT=0 | 352 | CONFIG_ZBOOT_ROM_TEXT=0 |
275 | CONFIG_ZBOOT_ROM_BSS=0 | 353 | CONFIG_ZBOOT_ROM_BSS=0 |
276 | CONFIG_CMDLINE="root=/dev/mtdblock2 rootfstype=cramfs init=/linuxrc console=ttySAC2,115200 mem=128M" | 354 | CONFIG_CMDLINE="root=/dev/mtdblock2 rootfstype=cramfs init=/linuxrc console=ttySAC2,115200 mem=128M" |
355 | # CONFIG_CMDLINE_FORCE is not set | ||
277 | # CONFIG_XIP_KERNEL is not set | 356 | # CONFIG_XIP_KERNEL is not set |
278 | # CONFIG_KEXEC is not set | 357 | # CONFIG_KEXEC is not set |
279 | 358 | ||
@@ -317,6 +396,7 @@ CONFIG_ARCH_SUSPEND_POSSIBLE=y | |||
317 | # Generic Driver Options | 396 | # Generic Driver Options |
318 | # | 397 | # |
319 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | 398 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" |
399 | # CONFIG_DEVTMPFS is not set | ||
320 | CONFIG_STANDALONE=y | 400 | CONFIG_STANDALONE=y |
321 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 401 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
322 | CONFIG_FW_LOADER=y | 402 | CONFIG_FW_LOADER=y |
@@ -331,6 +411,10 @@ CONFIG_BLK_DEV=y | |||
331 | # CONFIG_BLK_DEV_COW_COMMON is not set | 411 | # CONFIG_BLK_DEV_COW_COMMON is not set |
332 | CONFIG_BLK_DEV_LOOP=y | 412 | CONFIG_BLK_DEV_LOOP=y |
333 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 413 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
414 | |||
415 | # | ||
416 | # DRBD disabled because PROC_FS, INET or CONNECTOR not selected | ||
417 | # | ||
334 | CONFIG_BLK_DEV_RAM=y | 418 | CONFIG_BLK_DEV_RAM=y |
335 | CONFIG_BLK_DEV_RAM_COUNT=16 | 419 | CONFIG_BLK_DEV_RAM_COUNT=16 |
336 | CONFIG_BLK_DEV_RAM_SIZE=8192 | 420 | CONFIG_BLK_DEV_RAM_SIZE=8192 |
@@ -338,9 +422,12 @@ CONFIG_BLK_DEV_RAM_SIZE=8192 | |||
338 | # CONFIG_CDROM_PKTCDVD is not set | 422 | # CONFIG_CDROM_PKTCDVD is not set |
339 | # CONFIG_MG_DISK is not set | 423 | # CONFIG_MG_DISK is not set |
340 | CONFIG_MISC_DEVICES=y | 424 | CONFIG_MISC_DEVICES=y |
425 | # CONFIG_AD525X_DPOT is not set | ||
341 | # CONFIG_ICS932S401 is not set | 426 | # CONFIG_ICS932S401 is not set |
342 | # CONFIG_ENCLOSURE_SERVICES is not set | 427 | # CONFIG_ENCLOSURE_SERVICES is not set |
343 | # CONFIG_ISL29003 is not set | 428 | # CONFIG_ISL29003 is not set |
429 | # CONFIG_SENSORS_TSL2550 is not set | ||
430 | # CONFIG_DS1682 is not set | ||
344 | # CONFIG_C2PORT is not set | 431 | # CONFIG_C2PORT is not set |
345 | 432 | ||
346 | # | 433 | # |
@@ -350,18 +437,21 @@ CONFIG_EEPROM_AT24=y | |||
350 | # CONFIG_EEPROM_LEGACY is not set | 437 | # CONFIG_EEPROM_LEGACY is not set |
351 | # CONFIG_EEPROM_MAX6875 is not set | 438 | # CONFIG_EEPROM_MAX6875 is not set |
352 | # CONFIG_EEPROM_93CX6 is not set | 439 | # CONFIG_EEPROM_93CX6 is not set |
440 | # CONFIG_IWMC3200TOP is not set | ||
353 | CONFIG_HAVE_IDE=y | 441 | CONFIG_HAVE_IDE=y |
354 | # CONFIG_IDE is not set | 442 | # CONFIG_IDE is not set |
355 | 443 | ||
356 | # | 444 | # |
357 | # SCSI device support | 445 | # SCSI device support |
358 | # | 446 | # |
447 | CONFIG_SCSI_MOD=y | ||
359 | # CONFIG_RAID_ATTRS is not set | 448 | # CONFIG_RAID_ATTRS is not set |
360 | # CONFIG_SCSI is not set | 449 | # CONFIG_SCSI is not set |
361 | # CONFIG_SCSI_DMA is not set | 450 | # CONFIG_SCSI_DMA is not set |
362 | # CONFIG_SCSI_NETLINK is not set | 451 | # CONFIG_SCSI_NETLINK is not set |
363 | # CONFIG_ATA is not set | 452 | # CONFIG_ATA is not set |
364 | # CONFIG_MD is not set | 453 | # CONFIG_MD is not set |
454 | # CONFIG_PHONE is not set | ||
365 | 455 | ||
366 | # | 456 | # |
367 | # Input device support | 457 | # Input device support |
@@ -369,6 +459,7 @@ CONFIG_HAVE_IDE=y | |||
369 | CONFIG_INPUT=y | 459 | CONFIG_INPUT=y |
370 | # CONFIG_INPUT_FF_MEMLESS is not set | 460 | # CONFIG_INPUT_FF_MEMLESS is not set |
371 | # CONFIG_INPUT_POLLDEV is not set | 461 | # CONFIG_INPUT_POLLDEV is not set |
462 | # CONFIG_INPUT_SPARSEKMAP is not set | ||
372 | 463 | ||
373 | # | 464 | # |
374 | # Userland interfaces | 465 | # Userland interfaces |
@@ -385,13 +476,19 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | |||
385 | # Input Device Drivers | 476 | # Input Device Drivers |
386 | # | 477 | # |
387 | CONFIG_INPUT_KEYBOARD=y | 478 | CONFIG_INPUT_KEYBOARD=y |
479 | # CONFIG_KEYBOARD_ADP5588 is not set | ||
388 | CONFIG_KEYBOARD_ATKBD=y | 480 | CONFIG_KEYBOARD_ATKBD=y |
389 | # CONFIG_KEYBOARD_SUNKBD is not set | 481 | # CONFIG_QT2160 is not set |
390 | # CONFIG_KEYBOARD_LKKBD is not set | 482 | # CONFIG_KEYBOARD_LKKBD is not set |
391 | # CONFIG_KEYBOARD_XTKBD is not set | 483 | # CONFIG_KEYBOARD_GPIO is not set |
484 | # CONFIG_KEYBOARD_TCA6416 is not set | ||
485 | # CONFIG_KEYBOARD_MATRIX is not set | ||
486 | # CONFIG_KEYBOARD_MAX7359 is not set | ||
392 | # CONFIG_KEYBOARD_NEWTON is not set | 487 | # CONFIG_KEYBOARD_NEWTON is not set |
488 | # CONFIG_KEYBOARD_OPENCORES is not set | ||
393 | # CONFIG_KEYBOARD_STOWAWAY is not set | 489 | # CONFIG_KEYBOARD_STOWAWAY is not set |
394 | # CONFIG_KEYBOARD_GPIO is not set | 490 | # CONFIG_KEYBOARD_SUNKBD is not set |
491 | # CONFIG_KEYBOARD_XTKBD is not set | ||
395 | CONFIG_INPUT_MOUSE=y | 492 | CONFIG_INPUT_MOUSE=y |
396 | CONFIG_MOUSE_PS2=y | 493 | CONFIG_MOUSE_PS2=y |
397 | CONFIG_MOUSE_PS2_ALPS=y | 494 | CONFIG_MOUSE_PS2_ALPS=y |
@@ -399,6 +496,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y | |||
399 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 496 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
400 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 497 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
401 | # CONFIG_MOUSE_PS2_ELANTECH is not set | 498 | # CONFIG_MOUSE_PS2_ELANTECH is not set |
499 | # CONFIG_MOUSE_PS2_SENTELIC is not set | ||
402 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 500 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
403 | # CONFIG_MOUSE_SERIAL is not set | 501 | # CONFIG_MOUSE_SERIAL is not set |
404 | # CONFIG_MOUSE_APPLETOUCH is not set | 502 | # CONFIG_MOUSE_APPLETOUCH is not set |
@@ -418,6 +516,7 @@ CONFIG_SERIO=y | |||
418 | CONFIG_SERIO_SERPORT=y | 516 | CONFIG_SERIO_SERPORT=y |
419 | CONFIG_SERIO_LIBPS2=y | 517 | CONFIG_SERIO_LIBPS2=y |
420 | # CONFIG_SERIO_RAW is not set | 518 | # CONFIG_SERIO_RAW is not set |
519 | # CONFIG_SERIO_ALTERA_PS2 is not set | ||
421 | # CONFIG_GAMEPORT is not set | 520 | # CONFIG_GAMEPORT is not set |
422 | 521 | ||
423 | # | 522 | # |
@@ -444,11 +543,16 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | |||
444 | # Non-8250 serial port support | 543 | # Non-8250 serial port support |
445 | # | 544 | # |
446 | CONFIG_SERIAL_SAMSUNG=y | 545 | CONFIG_SERIAL_SAMSUNG=y |
447 | CONFIG_SERIAL_SAMSUNG_UARTS=3 | 546 | CONFIG_SERIAL_SAMSUNG_UARTS_4=y |
547 | CONFIG_SERIAL_SAMSUNG_UARTS=4 | ||
448 | # CONFIG_SERIAL_SAMSUNG_DEBUG is not set | 548 | # CONFIG_SERIAL_SAMSUNG_DEBUG is not set |
449 | CONFIG_SERIAL_SAMSUNG_CONSOLE=y | 549 | CONFIG_SERIAL_SAMSUNG_CONSOLE=y |
550 | CONFIG_SERIAL_S3C6400=y | ||
450 | CONFIG_SERIAL_CORE=y | 551 | CONFIG_SERIAL_CORE=y |
451 | CONFIG_SERIAL_CORE_CONSOLE=y | 552 | CONFIG_SERIAL_CORE_CONSOLE=y |
553 | # CONFIG_SERIAL_TIMBERDALE is not set | ||
554 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | ||
555 | # CONFIG_SERIAL_ALTERA_UART is not set | ||
452 | CONFIG_UNIX98_PTYS=y | 556 | CONFIG_UNIX98_PTYS=y |
453 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 557 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
454 | CONFIG_LEGACY_PTYS=y | 558 | CONFIG_LEGACY_PTYS=y |
@@ -461,6 +565,7 @@ CONFIG_HW_RANDOM=y | |||
461 | # CONFIG_TCG_TPM is not set | 565 | # CONFIG_TCG_TPM is not set |
462 | CONFIG_I2C=y | 566 | CONFIG_I2C=y |
463 | CONFIG_I2C_BOARDINFO=y | 567 | CONFIG_I2C_BOARDINFO=y |
568 | CONFIG_I2C_COMPAT=y | ||
464 | CONFIG_I2C_CHARDEV=y | 569 | CONFIG_I2C_CHARDEV=y |
465 | CONFIG_I2C_HELPER_AUTO=y | 570 | CONFIG_I2C_HELPER_AUTO=y |
466 | 571 | ||
@@ -471,9 +576,11 @@ CONFIG_I2C_HELPER_AUTO=y | |||
471 | # | 576 | # |
472 | # I2C system bus drivers (mostly embedded / system-on-chip) | 577 | # I2C system bus drivers (mostly embedded / system-on-chip) |
473 | # | 578 | # |
579 | # CONFIG_I2C_DESIGNWARE is not set | ||
474 | # CONFIG_I2C_GPIO is not set | 580 | # CONFIG_I2C_GPIO is not set |
475 | # CONFIG_I2C_OCORES is not set | 581 | # CONFIG_I2C_OCORES is not set |
476 | # CONFIG_I2C_SIMTEC is not set | 582 | # CONFIG_I2C_SIMTEC is not set |
583 | # CONFIG_I2C_XILINX is not set | ||
477 | 584 | ||
478 | # | 585 | # |
479 | # External I2C/SMBus adapter drivers | 586 | # External I2C/SMBus adapter drivers |
@@ -486,20 +593,15 @@ CONFIG_I2C_HELPER_AUTO=y | |||
486 | # | 593 | # |
487 | # CONFIG_I2C_PCA_PLATFORM is not set | 594 | # CONFIG_I2C_PCA_PLATFORM is not set |
488 | # CONFIG_I2C_STUB is not set | 595 | # CONFIG_I2C_STUB is not set |
489 | |||
490 | # | ||
491 | # Miscellaneous I2C Chip support | ||
492 | # | ||
493 | # CONFIG_DS1682 is not set | ||
494 | # CONFIG_SENSORS_PCF8574 is not set | ||
495 | # CONFIG_PCF8575 is not set | ||
496 | # CONFIG_SENSORS_PCA9539 is not set | ||
497 | # CONFIG_SENSORS_TSL2550 is not set | ||
498 | # CONFIG_I2C_DEBUG_CORE is not set | 596 | # CONFIG_I2C_DEBUG_CORE is not set |
499 | # CONFIG_I2C_DEBUG_ALGO is not set | 597 | # CONFIG_I2C_DEBUG_ALGO is not set |
500 | # CONFIG_I2C_DEBUG_BUS is not set | 598 | # CONFIG_I2C_DEBUG_BUS is not set |
501 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
502 | # CONFIG_SPI is not set | 599 | # CONFIG_SPI is not set |
600 | |||
601 | # | ||
602 | # PPS support | ||
603 | # | ||
604 | # CONFIG_PPS is not set | ||
503 | CONFIG_ARCH_REQUIRE_GPIOLIB=y | 605 | CONFIG_ARCH_REQUIRE_GPIOLIB=y |
504 | CONFIG_GPIOLIB=y | 606 | CONFIG_GPIOLIB=y |
505 | # CONFIG_DEBUG_GPIO is not set | 607 | # CONFIG_DEBUG_GPIO is not set |
@@ -508,13 +610,16 @@ CONFIG_GPIOLIB=y | |||
508 | # | 610 | # |
509 | # Memory mapped GPIO expanders: | 611 | # Memory mapped GPIO expanders: |
510 | # | 612 | # |
613 | # CONFIG_GPIO_IT8761E is not set | ||
511 | 614 | ||
512 | # | 615 | # |
513 | # I2C GPIO expanders: | 616 | # I2C GPIO expanders: |
514 | # | 617 | # |
618 | # CONFIG_GPIO_MAX7300 is not set | ||
515 | # CONFIG_GPIO_MAX732X is not set | 619 | # CONFIG_GPIO_MAX732X is not set |
516 | # CONFIG_GPIO_PCA953X is not set | 620 | # CONFIG_GPIO_PCA953X is not set |
517 | # CONFIG_GPIO_PCF857X is not set | 621 | # CONFIG_GPIO_PCF857X is not set |
622 | # CONFIG_GPIO_ADP5588 is not set | ||
518 | 623 | ||
519 | # | 624 | # |
520 | # PCI GPIO expanders: | 625 | # PCI GPIO expanders: |
@@ -523,10 +628,19 @@ CONFIG_GPIOLIB=y | |||
523 | # | 628 | # |
524 | # SPI GPIO expanders: | 629 | # SPI GPIO expanders: |
525 | # | 630 | # |
631 | |||
632 | # | ||
633 | # AC97 GPIO expanders: | ||
634 | # | ||
526 | # CONFIG_W1 is not set | 635 | # CONFIG_W1 is not set |
527 | # CONFIG_POWER_SUPPLY is not set | 636 | # CONFIG_POWER_SUPPLY is not set |
528 | CONFIG_HWMON=y | 637 | CONFIG_HWMON=y |
529 | # CONFIG_HWMON_VID is not set | 638 | # CONFIG_HWMON_VID is not set |
639 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
640 | |||
641 | # | ||
642 | # Native drivers | ||
643 | # | ||
530 | # CONFIG_SENSORS_AD7414 is not set | 644 | # CONFIG_SENSORS_AD7414 is not set |
531 | # CONFIG_SENSORS_AD7418 is not set | 645 | # CONFIG_SENSORS_AD7418 is not set |
532 | # CONFIG_SENSORS_ADM1021 is not set | 646 | # CONFIG_SENSORS_ADM1021 is not set |
@@ -535,10 +649,11 @@ CONFIG_HWMON=y | |||
535 | # CONFIG_SENSORS_ADM1029 is not set | 649 | # CONFIG_SENSORS_ADM1029 is not set |
536 | # CONFIG_SENSORS_ADM1031 is not set | 650 | # CONFIG_SENSORS_ADM1031 is not set |
537 | # CONFIG_SENSORS_ADM9240 is not set | 651 | # CONFIG_SENSORS_ADM9240 is not set |
652 | # CONFIG_SENSORS_ADT7411 is not set | ||
538 | # CONFIG_SENSORS_ADT7462 is not set | 653 | # CONFIG_SENSORS_ADT7462 is not set |
539 | # CONFIG_SENSORS_ADT7470 is not set | 654 | # CONFIG_SENSORS_ADT7470 is not set |
540 | # CONFIG_SENSORS_ADT7473 is not set | ||
541 | # CONFIG_SENSORS_ADT7475 is not set | 655 | # CONFIG_SENSORS_ADT7475 is not set |
656 | # CONFIG_SENSORS_ASC7621 is not set | ||
542 | # CONFIG_SENSORS_ATXP1 is not set | 657 | # CONFIG_SENSORS_ATXP1 is not set |
543 | # CONFIG_SENSORS_DS1621 is not set | 658 | # CONFIG_SENSORS_DS1621 is not set |
544 | # CONFIG_SENSORS_F71805F is not set | 659 | # CONFIG_SENSORS_F71805F is not set |
@@ -549,6 +664,7 @@ CONFIG_HWMON=y | |||
549 | # CONFIG_SENSORS_GL520SM is not set | 664 | # CONFIG_SENSORS_GL520SM is not set |
550 | # CONFIG_SENSORS_IT87 is not set | 665 | # CONFIG_SENSORS_IT87 is not set |
551 | # CONFIG_SENSORS_LM63 is not set | 666 | # CONFIG_SENSORS_LM63 is not set |
667 | # CONFIG_SENSORS_LM73 is not set | ||
552 | # CONFIG_SENSORS_LM75 is not set | 668 | # CONFIG_SENSORS_LM75 is not set |
553 | # CONFIG_SENSORS_LM77 is not set | 669 | # CONFIG_SENSORS_LM77 is not set |
554 | # CONFIG_SENSORS_LM78 is not set | 670 | # CONFIG_SENSORS_LM78 is not set |
@@ -573,8 +689,10 @@ CONFIG_HWMON=y | |||
573 | # CONFIG_SENSORS_SMSC47M192 is not set | 689 | # CONFIG_SENSORS_SMSC47M192 is not set |
574 | # CONFIG_SENSORS_SMSC47B397 is not set | 690 | # CONFIG_SENSORS_SMSC47B397 is not set |
575 | # CONFIG_SENSORS_ADS7828 is not set | 691 | # CONFIG_SENSORS_ADS7828 is not set |
692 | # CONFIG_SENSORS_AMC6821 is not set | ||
576 | # CONFIG_SENSORS_THMC50 is not set | 693 | # CONFIG_SENSORS_THMC50 is not set |
577 | # CONFIG_SENSORS_TMP401 is not set | 694 | # CONFIG_SENSORS_TMP401 is not set |
695 | # CONFIG_SENSORS_TMP421 is not set | ||
578 | # CONFIG_SENSORS_VT1211 is not set | 696 | # CONFIG_SENSORS_VT1211 is not set |
579 | # CONFIG_SENSORS_W83781D is not set | 697 | # CONFIG_SENSORS_W83781D is not set |
580 | # CONFIG_SENSORS_W83791D is not set | 698 | # CONFIG_SENSORS_W83791D is not set |
@@ -584,9 +702,8 @@ CONFIG_HWMON=y | |||
584 | # CONFIG_SENSORS_W83L786NG is not set | 702 | # CONFIG_SENSORS_W83L786NG is not set |
585 | # CONFIG_SENSORS_W83627HF is not set | 703 | # CONFIG_SENSORS_W83627HF is not set |
586 | # CONFIG_SENSORS_W83627EHF is not set | 704 | # CONFIG_SENSORS_W83627EHF is not set |
587 | # CONFIG_HWMON_DEBUG_CHIP is not set | 705 | # CONFIG_SENSORS_LIS3_I2C is not set |
588 | # CONFIG_THERMAL is not set | 706 | # CONFIG_THERMAL is not set |
589 | # CONFIG_THERMAL_HWMON is not set | ||
590 | # CONFIG_WATCHDOG is not set | 707 | # CONFIG_WATCHDOG is not set |
591 | CONFIG_SSB_POSSIBLE=y | 708 | CONFIG_SSB_POSSIBLE=y |
592 | 709 | ||
@@ -599,10 +716,12 @@ CONFIG_SSB_POSSIBLE=y | |||
599 | # Multifunction device drivers | 716 | # Multifunction device drivers |
600 | # | 717 | # |
601 | # CONFIG_MFD_CORE is not set | 718 | # CONFIG_MFD_CORE is not set |
719 | # CONFIG_MFD_88PM860X is not set | ||
602 | # CONFIG_MFD_SM501 is not set | 720 | # CONFIG_MFD_SM501 is not set |
603 | # CONFIG_MFD_ASIC3 is not set | 721 | # CONFIG_MFD_ASIC3 is not set |
604 | # CONFIG_HTC_EGPIO is not set | 722 | # CONFIG_HTC_EGPIO is not set |
605 | # CONFIG_HTC_PASIC3 is not set | 723 | # CONFIG_HTC_PASIC3 is not set |
724 | # CONFIG_HTC_I2CPLD is not set | ||
606 | # CONFIG_TPS65010 is not set | 725 | # CONFIG_TPS65010 is not set |
607 | # CONFIG_TWL4030_CORE is not set | 726 | # CONFIG_TWL4030_CORE is not set |
608 | # CONFIG_MFD_TMIO is not set | 727 | # CONFIG_MFD_TMIO is not set |
@@ -610,10 +729,15 @@ CONFIG_SSB_POSSIBLE=y | |||
610 | # CONFIG_MFD_TC6387XB is not set | 729 | # CONFIG_MFD_TC6387XB is not set |
611 | # CONFIG_MFD_TC6393XB is not set | 730 | # CONFIG_MFD_TC6393XB is not set |
612 | # CONFIG_PMIC_DA903X is not set | 731 | # CONFIG_PMIC_DA903X is not set |
732 | # CONFIG_PMIC_ADP5520 is not set | ||
733 | # CONFIG_MFD_MAX8925 is not set | ||
613 | # CONFIG_MFD_WM8400 is not set | 734 | # CONFIG_MFD_WM8400 is not set |
735 | # CONFIG_MFD_WM831X is not set | ||
614 | # CONFIG_MFD_WM8350_I2C is not set | 736 | # CONFIG_MFD_WM8350_I2C is not set |
737 | # CONFIG_MFD_WM8994 is not set | ||
615 | # CONFIG_MFD_PCF50633 is not set | 738 | # CONFIG_MFD_PCF50633 is not set |
616 | # CONFIG_AB3100_CORE is not set | 739 | # CONFIG_AB3100_CORE is not set |
740 | # CONFIG_REGULATOR is not set | ||
617 | # CONFIG_MEDIA_SUPPORT is not set | 741 | # CONFIG_MEDIA_SUPPORT is not set |
618 | 742 | ||
619 | # | 743 | # |
@@ -637,7 +761,6 @@ CONFIG_DUMMY_CONSOLE=y | |||
637 | # CONFIG_SOUND is not set | 761 | # CONFIG_SOUND is not set |
638 | CONFIG_HID_SUPPORT=y | 762 | CONFIG_HID_SUPPORT=y |
639 | CONFIG_HID=y | 763 | CONFIG_HID=y |
640 | CONFIG_HID_DEBUG=y | ||
641 | # CONFIG_HIDRAW is not set | 764 | # CONFIG_HIDRAW is not set |
642 | # CONFIG_HID_PID is not set | 765 | # CONFIG_HID_PID is not set |
643 | 766 | ||
@@ -680,13 +803,12 @@ CONFIG_SDIO_UART=y | |||
680 | CONFIG_MMC_SDHCI=y | 803 | CONFIG_MMC_SDHCI=y |
681 | # CONFIG_MMC_SDHCI_PLTFM is not set | 804 | # CONFIG_MMC_SDHCI_PLTFM is not set |
682 | # CONFIG_MEMSTICK is not set | 805 | # CONFIG_MEMSTICK is not set |
683 | # CONFIG_ACCESSIBILITY is not set | ||
684 | # CONFIG_NEW_LEDS is not set | 806 | # CONFIG_NEW_LEDS is not set |
807 | # CONFIG_ACCESSIBILITY is not set | ||
685 | CONFIG_RTC_LIB=y | 808 | CONFIG_RTC_LIB=y |
686 | # CONFIG_RTC_CLASS is not set | 809 | # CONFIG_RTC_CLASS is not set |
687 | # CONFIG_DMADEVICES is not set | 810 | # CONFIG_DMADEVICES is not set |
688 | # CONFIG_AUXDISPLAY is not set | 811 | # CONFIG_AUXDISPLAY is not set |
689 | # CONFIG_REGULATOR is not set | ||
690 | # CONFIG_UIO is not set | 812 | # CONFIG_UIO is not set |
691 | # CONFIG_STAGING is not set | 813 | # CONFIG_STAGING is not set |
692 | 814 | ||
@@ -710,6 +832,7 @@ CONFIG_FS_POSIX_ACL=y | |||
710 | # CONFIG_XFS_FS is not set | 832 | # CONFIG_XFS_FS is not set |
711 | # CONFIG_GFS2_FS is not set | 833 | # CONFIG_GFS2_FS is not set |
712 | # CONFIG_BTRFS_FS is not set | 834 | # CONFIG_BTRFS_FS is not set |
835 | # CONFIG_NILFS2_FS is not set | ||
713 | CONFIG_FILE_LOCKING=y | 836 | CONFIG_FILE_LOCKING=y |
714 | CONFIG_FSNOTIFY=y | 837 | CONFIG_FSNOTIFY=y |
715 | CONFIG_DNOTIFY=y | 838 | CONFIG_DNOTIFY=y |
@@ -758,6 +881,7 @@ CONFIG_MISC_FILESYSTEMS=y | |||
758 | # CONFIG_BEFS_FS is not set | 881 | # CONFIG_BEFS_FS is not set |
759 | # CONFIG_BFS_FS is not set | 882 | # CONFIG_BFS_FS is not set |
760 | # CONFIG_EFS_FS is not set | 883 | # CONFIG_EFS_FS is not set |
884 | # CONFIG_LOGFS is not set | ||
761 | CONFIG_CRAMFS=y | 885 | CONFIG_CRAMFS=y |
762 | # CONFIG_SQUASHFS is not set | 886 | # CONFIG_SQUASHFS is not set |
763 | # CONFIG_VXFS_FS is not set | 887 | # CONFIG_VXFS_FS is not set |
@@ -772,7 +896,6 @@ CONFIG_ROMFS_BACKED_BY_BLOCK=y | |||
772 | CONFIG_ROMFS_ON_BLOCK=y | 896 | CONFIG_ROMFS_ON_BLOCK=y |
773 | # CONFIG_SYSV_FS is not set | 897 | # CONFIG_SYSV_FS is not set |
774 | # CONFIG_UFS_FS is not set | 898 | # CONFIG_UFS_FS is not set |
775 | # CONFIG_NILFS2_FS is not set | ||
776 | 899 | ||
777 | # | 900 | # |
778 | # Partition Types | 901 | # Partition Types |
@@ -789,6 +912,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y | |||
789 | CONFIG_ENABLE_MUST_CHECK=y | 912 | CONFIG_ENABLE_MUST_CHECK=y |
790 | CONFIG_FRAME_WARN=1024 | 913 | CONFIG_FRAME_WARN=1024 |
791 | CONFIG_MAGIC_SYSRQ=y | 914 | CONFIG_MAGIC_SYSRQ=y |
915 | # CONFIG_STRIP_ASM_SYMS is not set | ||
792 | # CONFIG_UNUSED_SYMBOLS is not set | 916 | # CONFIG_UNUSED_SYMBOLS is not set |
793 | # CONFIG_DEBUG_FS is not set | 917 | # CONFIG_DEBUG_FS is not set |
794 | # CONFIG_HEADERS_CHECK is not set | 918 | # CONFIG_HEADERS_CHECK is not set |
@@ -826,11 +950,13 @@ CONFIG_DEBUG_MEMORY_INIT=y | |||
826 | # CONFIG_DEBUG_LIST is not set | 950 | # CONFIG_DEBUG_LIST is not set |
827 | # CONFIG_DEBUG_SG is not set | 951 | # CONFIG_DEBUG_SG is not set |
828 | # CONFIG_DEBUG_NOTIFIERS is not set | 952 | # CONFIG_DEBUG_NOTIFIERS is not set |
953 | # CONFIG_DEBUG_CREDENTIALS is not set | ||
829 | # CONFIG_BOOT_PRINTK_DELAY is not set | 954 | # CONFIG_BOOT_PRINTK_DELAY is not set |
830 | # CONFIG_RCU_TORTURE_TEST is not set | 955 | # CONFIG_RCU_TORTURE_TEST is not set |
831 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | 956 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set |
832 | # CONFIG_BACKTRACE_SELF_TEST is not set | 957 | # CONFIG_BACKTRACE_SELF_TEST is not set |
833 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | 958 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set |
959 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set | ||
834 | # CONFIG_FAULT_INJECTION is not set | 960 | # CONFIG_FAULT_INJECTION is not set |
835 | # CONFIG_LATENCYTOP is not set | 961 | # CONFIG_LATENCYTOP is not set |
836 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 962 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
@@ -839,6 +965,7 @@ CONFIG_HAVE_FUNCTION_TRACER=y | |||
839 | CONFIG_TRACING_SUPPORT=y | 965 | CONFIG_TRACING_SUPPORT=y |
840 | CONFIG_FTRACE=y | 966 | CONFIG_FTRACE=y |
841 | # CONFIG_FUNCTION_TRACER is not set | 967 | # CONFIG_FUNCTION_TRACER is not set |
968 | # CONFIG_IRQSOFF_TRACER is not set | ||
842 | # CONFIG_SCHED_TRACER is not set | 969 | # CONFIG_SCHED_TRACER is not set |
843 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | 970 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set |
844 | # CONFIG_BOOT_TRACER is not set | 971 | # CONFIG_BOOT_TRACER is not set |
@@ -849,6 +976,7 @@ CONFIG_BRANCH_PROFILE_NONE=y | |||
849 | # CONFIG_KMEMTRACE is not set | 976 | # CONFIG_KMEMTRACE is not set |
850 | # CONFIG_WORKQUEUE_TRACER is not set | 977 | # CONFIG_WORKQUEUE_TRACER is not set |
851 | # CONFIG_BLK_DEV_IO_TRACE is not set | 978 | # CONFIG_BLK_DEV_IO_TRACE is not set |
979 | # CONFIG_ATOMIC64_SELFTEST is not set | ||
852 | # CONFIG_SAMPLES is not set | 980 | # CONFIG_SAMPLES is not set |
853 | CONFIG_HAVE_ARCH_KGDB=y | 981 | CONFIG_HAVE_ARCH_KGDB=y |
854 | # CONFIG_KGDB is not set | 982 | # CONFIG_KGDB is not set |
@@ -857,8 +985,9 @@ CONFIG_DEBUG_USER=y | |||
857 | CONFIG_DEBUG_ERRORS=y | 985 | CONFIG_DEBUG_ERRORS=y |
858 | # CONFIG_DEBUG_STACK_USAGE is not set | 986 | # CONFIG_DEBUG_STACK_USAGE is not set |
859 | CONFIG_DEBUG_LL=y | 987 | CONFIG_DEBUG_LL=y |
988 | # CONFIG_EARLY_PRINTK is not set | ||
860 | # CONFIG_DEBUG_ICEDCC is not set | 989 | # CONFIG_DEBUG_ICEDCC is not set |
861 | CONFIG_DEBUG_S3C_PORT=y | 990 | # CONFIG_OC_ETM is not set |
862 | CONFIG_DEBUG_S3C_UART=0 | 991 | CONFIG_DEBUG_S3C_UART=0 |
863 | 992 | ||
864 | # | 993 | # |
@@ -867,7 +996,11 @@ CONFIG_DEBUG_S3C_UART=0 | |||
867 | # CONFIG_KEYS is not set | 996 | # CONFIG_KEYS is not set |
868 | # CONFIG_SECURITY is not set | 997 | # CONFIG_SECURITY is not set |
869 | # CONFIG_SECURITYFS is not set | 998 | # CONFIG_SECURITYFS is not set |
870 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | 999 | # CONFIG_DEFAULT_SECURITY_SELINUX is not set |
1000 | # CONFIG_DEFAULT_SECURITY_SMACK is not set | ||
1001 | # CONFIG_DEFAULT_SECURITY_TOMOYO is not set | ||
1002 | CONFIG_DEFAULT_SECURITY_DAC=y | ||
1003 | CONFIG_DEFAULT_SECURITY="" | ||
871 | # CONFIG_CRYPTO is not set | 1004 | # CONFIG_CRYPTO is not set |
872 | # CONFIG_BINARY_PRINTF is not set | 1005 | # CONFIG_BINARY_PRINTF is not set |
873 | 1006 | ||
@@ -884,8 +1017,10 @@ CONFIG_CRC32=y | |||
884 | # CONFIG_CRC7 is not set | 1017 | # CONFIG_CRC7 is not set |
885 | # CONFIG_LIBCRC32C is not set | 1018 | # CONFIG_LIBCRC32C is not set |
886 | CONFIG_ZLIB_INFLATE=y | 1019 | CONFIG_ZLIB_INFLATE=y |
1020 | CONFIG_LZO_DECOMPRESS=y | ||
887 | CONFIG_DECOMPRESS_GZIP=y | 1021 | CONFIG_DECOMPRESS_GZIP=y |
888 | CONFIG_DECOMPRESS_BZIP2=y | 1022 | CONFIG_DECOMPRESS_BZIP2=y |
889 | CONFIG_DECOMPRESS_LZMA=y | 1023 | CONFIG_DECOMPRESS_LZMA=y |
1024 | CONFIG_DECOMPRESS_LZO=y | ||
890 | CONFIG_HAS_IOMEM=y | 1025 | CONFIG_HAS_IOMEM=y |
891 | CONFIG_HAS_DMA=y | 1026 | CONFIG_HAS_DMA=y |
diff --git a/arch/arm/configs/s5pc110_defconfig b/arch/arm/configs/s5pc110_defconfig index 796cb78498c3..c4de360b0f69 100644 --- a/arch/arm/configs/s5pc110_defconfig +++ b/arch/arm/configs/s5pc110_defconfig | |||
@@ -1,11 +1,13 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.34 | 3 | # Linux kernel version: 2.6.34 |
4 | # Sat May 22 03:18:21 2010 | 4 | # Wed May 26 19:04:37 2010 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_GENERIC_GPIO=y | 8 | CONFIG_GENERIC_GPIO=y |
9 | CONFIG_GENERIC_TIME=y | ||
10 | CONFIG_ARCH_USES_GETTIMEOFFSET=y | ||
9 | CONFIG_HAVE_PROC_CPU=y | 11 | CONFIG_HAVE_PROC_CPU=y |
10 | CONFIG_NO_IOPORT=y | 12 | CONFIG_NO_IOPORT=y |
11 | CONFIG_GENERIC_HARDIRQS=y | 13 | CONFIG_GENERIC_HARDIRQS=y |
@@ -35,6 +37,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
35 | CONFIG_LOCALVERSION="" | 37 | CONFIG_LOCALVERSION="" |
36 | CONFIG_LOCALVERSION_AUTO=y | 38 | CONFIG_LOCALVERSION_AUTO=y |
37 | CONFIG_HAVE_KERNEL_GZIP=y | 39 | CONFIG_HAVE_KERNEL_GZIP=y |
40 | CONFIG_HAVE_KERNEL_LZMA=y | ||
38 | CONFIG_HAVE_KERNEL_LZO=y | 41 | CONFIG_HAVE_KERNEL_LZO=y |
39 | CONFIG_KERNEL_GZIP=y | 42 | CONFIG_KERNEL_GZIP=y |
40 | # CONFIG_KERNEL_BZIP2 is not set | 43 | # CONFIG_KERNEL_BZIP2 is not set |
@@ -180,9 +183,11 @@ CONFIG_MMU=y | |||
180 | # CONFIG_ARCH_INTEGRATOR is not set | 183 | # CONFIG_ARCH_INTEGRATOR is not set |
181 | # CONFIG_ARCH_REALVIEW is not set | 184 | # CONFIG_ARCH_REALVIEW is not set |
182 | # CONFIG_ARCH_VERSATILE is not set | 185 | # CONFIG_ARCH_VERSATILE is not set |
186 | # CONFIG_ARCH_VEXPRESS is not set | ||
183 | # CONFIG_ARCH_AT91 is not set | 187 | # CONFIG_ARCH_AT91 is not set |
184 | # CONFIG_ARCH_BCMRING is not set | 188 | # CONFIG_ARCH_BCMRING is not set |
185 | # CONFIG_ARCH_CLPS711X is not set | 189 | # CONFIG_ARCH_CLPS711X is not set |
190 | # CONFIG_ARCH_CNS3XXX is not set | ||
186 | # CONFIG_ARCH_GEMINI is not set | 191 | # CONFIG_ARCH_GEMINI is not set |
187 | # CONFIG_ARCH_EBSA110 is not set | 192 | # CONFIG_ARCH_EBSA110 is not set |
188 | # CONFIG_ARCH_EP93XX is not set | 193 | # CONFIG_ARCH_EP93XX is not set |
@@ -218,7 +223,7 @@ CONFIG_MMU=y | |||
218 | # CONFIG_ARCH_S3C64XX is not set | 223 | # CONFIG_ARCH_S3C64XX is not set |
219 | # CONFIG_ARCH_S5P6440 is not set | 224 | # CONFIG_ARCH_S5P6440 is not set |
220 | # CONFIG_ARCH_S5P6442 is not set | 225 | # CONFIG_ARCH_S5P6442 is not set |
221 | # CONFIG_ARCH_S5PC1XX is not set | 226 | # CONFIG_ARCH_S5PC100 is not set |
222 | CONFIG_ARCH_S5PV210=y | 227 | CONFIG_ARCH_S5PV210=y |
223 | # CONFIG_ARCH_SHARK is not set | 228 | # CONFIG_ARCH_SHARK is not set |
224 | # CONFIG_ARCH_LH7A40X is not set | 229 | # CONFIG_ARCH_LH7A40X is not set |
@@ -227,6 +232,7 @@ CONFIG_ARCH_S5PV210=y | |||
227 | # CONFIG_ARCH_NOMADIK is not set | 232 | # CONFIG_ARCH_NOMADIK is not set |
228 | # CONFIG_ARCH_DAVINCI is not set | 233 | # CONFIG_ARCH_DAVINCI is not set |
229 | # CONFIG_ARCH_OMAP is not set | 234 | # CONFIG_ARCH_OMAP is not set |
235 | # CONFIG_PLAT_SPEAR is not set | ||
230 | CONFIG_PLAT_SAMSUNG=y | 236 | CONFIG_PLAT_SAMSUNG=y |
231 | 237 | ||
232 | # | 238 | # |
@@ -242,16 +248,22 @@ CONFIG_SAMSUNG_GPIOLIB_4BIT=y | |||
242 | CONFIG_S3C_GPIO_CFG_S3C24XX=y | 248 | CONFIG_S3C_GPIO_CFG_S3C24XX=y |
243 | CONFIG_S3C_GPIO_CFG_S3C64XX=y | 249 | CONFIG_S3C_GPIO_CFG_S3C64XX=y |
244 | CONFIG_S3C_GPIO_PULL_UPDOWN=y | 250 | CONFIG_S3C_GPIO_PULL_UPDOWN=y |
251 | CONFIG_S5P_GPIO_DRVSTR=y | ||
245 | CONFIG_SAMSUNG_GPIO_EXTRA=0 | 252 | CONFIG_SAMSUNG_GPIO_EXTRA=0 |
246 | CONFIG_S3C_GPIO_SPACE=0 | 253 | CONFIG_S3C_GPIO_SPACE=0 |
247 | CONFIG_S3C_GPIO_TRACK=y | 254 | CONFIG_S3C_GPIO_TRACK=y |
248 | # CONFIG_S3C_ADC is not set | 255 | # CONFIG_S3C_ADC is not set |
256 | CONFIG_S3C_DEV_WDT=y | ||
257 | CONFIG_S3C_PL330_DMA=y | ||
249 | 258 | ||
250 | # | 259 | # |
251 | # Power management | 260 | # Power management |
252 | # | 261 | # |
253 | CONFIG_PLAT_S5P=y | 262 | CONFIG_PLAT_S5P=y |
263 | CONFIG_S5P_EXT_INT=y | ||
254 | CONFIG_CPU_S5PV210=y | 264 | CONFIG_CPU_S5PV210=y |
265 | # CONFIG_MACH_AQUILA is not set | ||
266 | # CONFIG_MACH_GONI is not set | ||
255 | # CONFIG_MACH_SMDKV210 is not set | 267 | # CONFIG_MACH_SMDKV210 is not set |
256 | CONFIG_MACH_SMDKC110=y | 268 | CONFIG_MACH_SMDKC110=y |
257 | 269 | ||
@@ -281,12 +293,14 @@ CONFIG_ARM_THUMB=y | |||
281 | # CONFIG_CPU_BPREDICT_DISABLE is not set | 293 | # CONFIG_CPU_BPREDICT_DISABLE is not set |
282 | CONFIG_HAS_TLS_REG=y | 294 | CONFIG_HAS_TLS_REG=y |
283 | CONFIG_ARM_L1_CACHE_SHIFT=6 | 295 | CONFIG_ARM_L1_CACHE_SHIFT=6 |
296 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y | ||
284 | CONFIG_CPU_HAS_PMU=y | 297 | CONFIG_CPU_HAS_PMU=y |
285 | # CONFIG_ARM_ERRATA_430973 is not set | 298 | # CONFIG_ARM_ERRATA_430973 is not set |
286 | # CONFIG_ARM_ERRATA_458693 is not set | 299 | # CONFIG_ARM_ERRATA_458693 is not set |
287 | # CONFIG_ARM_ERRATA_460075 is not set | 300 | # CONFIG_ARM_ERRATA_460075 is not set |
288 | CONFIG_ARM_VIC=y | 301 | CONFIG_ARM_VIC=y |
289 | CONFIG_ARM_VIC_NR=2 | 302 | CONFIG_ARM_VIC_NR=2 |
303 | CONFIG_PL330=y | ||
290 | 304 | ||
291 | # | 305 | # |
292 | # Bus support | 306 | # Bus support |
@@ -335,6 +349,7 @@ CONFIG_ALIGNMENT_TRAP=y | |||
335 | CONFIG_ZBOOT_ROM_TEXT=0 | 349 | CONFIG_ZBOOT_ROM_TEXT=0 |
336 | CONFIG_ZBOOT_ROM_BSS=0 | 350 | CONFIG_ZBOOT_ROM_BSS=0 |
337 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" | 351 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" |
352 | # CONFIG_CMDLINE_FORCE is not set | ||
338 | # CONFIG_XIP_KERNEL is not set | 353 | # CONFIG_XIP_KERNEL is not set |
339 | # CONFIG_KEXEC is not set | 354 | # CONFIG_KEXEC is not set |
340 | 355 | ||
@@ -481,6 +496,7 @@ CONFIG_INPUT_EVDEV=y | |||
481 | CONFIG_INPUT_TOUCHSCREEN=y | 496 | CONFIG_INPUT_TOUCHSCREEN=y |
482 | # CONFIG_TOUCHSCREEN_AD7879 is not set | 497 | # CONFIG_TOUCHSCREEN_AD7879 is not set |
483 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set | 498 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set |
499 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set | ||
484 | # CONFIG_TOUCHSCREEN_FUJITSU is not set | 500 | # CONFIG_TOUCHSCREEN_FUJITSU is not set |
485 | # CONFIG_TOUCHSCREEN_GUNZE is not set | 501 | # CONFIG_TOUCHSCREEN_GUNZE is not set |
486 | # CONFIG_TOUCHSCREEN_ELO is not set | 502 | # CONFIG_TOUCHSCREEN_ELO is not set |
@@ -536,6 +552,8 @@ CONFIG_SERIAL_S5PV210=y | |||
536 | CONFIG_SERIAL_CORE=y | 552 | CONFIG_SERIAL_CORE=y |
537 | CONFIG_SERIAL_CORE_CONSOLE=y | 553 | CONFIG_SERIAL_CORE_CONSOLE=y |
538 | # CONFIG_SERIAL_TIMBERDALE is not set | 554 | # CONFIG_SERIAL_TIMBERDALE is not set |
555 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | ||
556 | # CONFIG_SERIAL_ALTERA_UART is not set | ||
539 | CONFIG_UNIX98_PTYS=y | 557 | CONFIG_UNIX98_PTYS=y |
540 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 558 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
541 | CONFIG_LEGACY_PTYS=y | 559 | CONFIG_LEGACY_PTYS=y |
@@ -583,6 +601,7 @@ CONFIG_GPIOLIB=y | |||
583 | # CONFIG_HWMON is not set | 601 | # CONFIG_HWMON is not set |
584 | # CONFIG_THERMAL is not set | 602 | # CONFIG_THERMAL is not set |
585 | # CONFIG_WATCHDOG is not set | 603 | # CONFIG_WATCHDOG is not set |
604 | CONFIG_HAVE_S3C2410_WATCHDOG=y | ||
586 | CONFIG_SSB_POSSIBLE=y | 605 | CONFIG_SSB_POSSIBLE=y |
587 | 606 | ||
588 | # | 607 | # |
@@ -635,10 +654,6 @@ CONFIG_RTC_LIB=y | |||
635 | # CONFIG_DMADEVICES is not set | 654 | # CONFIG_DMADEVICES is not set |
636 | # CONFIG_AUXDISPLAY is not set | 655 | # CONFIG_AUXDISPLAY is not set |
637 | # CONFIG_UIO is not set | 656 | # CONFIG_UIO is not set |
638 | |||
639 | # | ||
640 | # TI VLYNQ | ||
641 | # | ||
642 | # CONFIG_STAGING is not set | 657 | # CONFIG_STAGING is not set |
643 | 658 | ||
644 | # | 659 | # |
@@ -847,6 +862,8 @@ CONFIG_HAVE_FUNCTION_TRACER=y | |||
847 | CONFIG_TRACING_SUPPORT=y | 862 | CONFIG_TRACING_SUPPORT=y |
848 | CONFIG_FTRACE=y | 863 | CONFIG_FTRACE=y |
849 | # CONFIG_FUNCTION_TRACER is not set | 864 | # CONFIG_FUNCTION_TRACER is not set |
865 | # CONFIG_IRQSOFF_TRACER is not set | ||
866 | # CONFIG_PREEMPT_TRACER is not set | ||
850 | # CONFIG_SCHED_TRACER is not set | 867 | # CONFIG_SCHED_TRACER is not set |
851 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | 868 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set |
852 | # CONFIG_BOOT_TRACER is not set | 869 | # CONFIG_BOOT_TRACER is not set |
@@ -857,6 +874,7 @@ CONFIG_BRANCH_PROFILE_NONE=y | |||
857 | # CONFIG_KMEMTRACE is not set | 874 | # CONFIG_KMEMTRACE is not set |
858 | # CONFIG_WORKQUEUE_TRACER is not set | 875 | # CONFIG_WORKQUEUE_TRACER is not set |
859 | # CONFIG_BLK_DEV_IO_TRACE is not set | 876 | # CONFIG_BLK_DEV_IO_TRACE is not set |
877 | # CONFIG_ATOMIC64_SELFTEST is not set | ||
860 | # CONFIG_SAMPLES is not set | 878 | # CONFIG_SAMPLES is not set |
861 | CONFIG_HAVE_ARCH_KGDB=y | 879 | CONFIG_HAVE_ARCH_KGDB=y |
862 | # CONFIG_KGDB is not set | 880 | # CONFIG_KGDB is not set |
diff --git a/arch/arm/configs/s5pv210_defconfig b/arch/arm/configs/s5pv210_defconfig index 6831dab97d96..e2f5bce29828 100644 --- a/arch/arm/configs/s5pv210_defconfig +++ b/arch/arm/configs/s5pv210_defconfig | |||
@@ -1,11 +1,13 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.34 | 3 | # Linux kernel version: 2.6.34 |
4 | # Sat May 22 03:18:22 2010 | 4 | # Wed May 26 19:04:39 2010 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_GENERIC_GPIO=y | 8 | CONFIG_GENERIC_GPIO=y |
9 | CONFIG_GENERIC_TIME=y | ||
10 | CONFIG_ARCH_USES_GETTIMEOFFSET=y | ||
9 | CONFIG_HAVE_PROC_CPU=y | 11 | CONFIG_HAVE_PROC_CPU=y |
10 | CONFIG_NO_IOPORT=y | 12 | CONFIG_NO_IOPORT=y |
11 | CONFIG_GENERIC_HARDIRQS=y | 13 | CONFIG_GENERIC_HARDIRQS=y |
@@ -35,6 +37,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
35 | CONFIG_LOCALVERSION="" | 37 | CONFIG_LOCALVERSION="" |
36 | CONFIG_LOCALVERSION_AUTO=y | 38 | CONFIG_LOCALVERSION_AUTO=y |
37 | CONFIG_HAVE_KERNEL_GZIP=y | 39 | CONFIG_HAVE_KERNEL_GZIP=y |
40 | CONFIG_HAVE_KERNEL_LZMA=y | ||
38 | CONFIG_HAVE_KERNEL_LZO=y | 41 | CONFIG_HAVE_KERNEL_LZO=y |
39 | CONFIG_KERNEL_GZIP=y | 42 | CONFIG_KERNEL_GZIP=y |
40 | # CONFIG_KERNEL_BZIP2 is not set | 43 | # CONFIG_KERNEL_BZIP2 is not set |
@@ -180,9 +183,11 @@ CONFIG_MMU=y | |||
180 | # CONFIG_ARCH_INTEGRATOR is not set | 183 | # CONFIG_ARCH_INTEGRATOR is not set |
181 | # CONFIG_ARCH_REALVIEW is not set | 184 | # CONFIG_ARCH_REALVIEW is not set |
182 | # CONFIG_ARCH_VERSATILE is not set | 185 | # CONFIG_ARCH_VERSATILE is not set |
186 | # CONFIG_ARCH_VEXPRESS is not set | ||
183 | # CONFIG_ARCH_AT91 is not set | 187 | # CONFIG_ARCH_AT91 is not set |
184 | # CONFIG_ARCH_BCMRING is not set | 188 | # CONFIG_ARCH_BCMRING is not set |
185 | # CONFIG_ARCH_CLPS711X is not set | 189 | # CONFIG_ARCH_CLPS711X is not set |
190 | # CONFIG_ARCH_CNS3XXX is not set | ||
186 | # CONFIG_ARCH_GEMINI is not set | 191 | # CONFIG_ARCH_GEMINI is not set |
187 | # CONFIG_ARCH_EBSA110 is not set | 192 | # CONFIG_ARCH_EBSA110 is not set |
188 | # CONFIG_ARCH_EP93XX is not set | 193 | # CONFIG_ARCH_EP93XX is not set |
@@ -218,7 +223,7 @@ CONFIG_MMU=y | |||
218 | # CONFIG_ARCH_S3C64XX is not set | 223 | # CONFIG_ARCH_S3C64XX is not set |
219 | # CONFIG_ARCH_S5P6440 is not set | 224 | # CONFIG_ARCH_S5P6440 is not set |
220 | # CONFIG_ARCH_S5P6442 is not set | 225 | # CONFIG_ARCH_S5P6442 is not set |
221 | # CONFIG_ARCH_S5PC1XX is not set | 226 | # CONFIG_ARCH_S5PC100 is not set |
222 | CONFIG_ARCH_S5PV210=y | 227 | CONFIG_ARCH_S5PV210=y |
223 | # CONFIG_ARCH_SHARK is not set | 228 | # CONFIG_ARCH_SHARK is not set |
224 | # CONFIG_ARCH_LH7A40X is not set | 229 | # CONFIG_ARCH_LH7A40X is not set |
@@ -227,6 +232,7 @@ CONFIG_ARCH_S5PV210=y | |||
227 | # CONFIG_ARCH_NOMADIK is not set | 232 | # CONFIG_ARCH_NOMADIK is not set |
228 | # CONFIG_ARCH_DAVINCI is not set | 233 | # CONFIG_ARCH_DAVINCI is not set |
229 | # CONFIG_ARCH_OMAP is not set | 234 | # CONFIG_ARCH_OMAP is not set |
235 | # CONFIG_PLAT_SPEAR is not set | ||
230 | CONFIG_PLAT_SAMSUNG=y | 236 | CONFIG_PLAT_SAMSUNG=y |
231 | 237 | ||
232 | # | 238 | # |
@@ -242,16 +248,24 @@ CONFIG_SAMSUNG_GPIOLIB_4BIT=y | |||
242 | CONFIG_S3C_GPIO_CFG_S3C24XX=y | 248 | CONFIG_S3C_GPIO_CFG_S3C24XX=y |
243 | CONFIG_S3C_GPIO_CFG_S3C64XX=y | 249 | CONFIG_S3C_GPIO_CFG_S3C64XX=y |
244 | CONFIG_S3C_GPIO_PULL_UPDOWN=y | 250 | CONFIG_S3C_GPIO_PULL_UPDOWN=y |
251 | CONFIG_S5P_GPIO_DRVSTR=y | ||
245 | CONFIG_SAMSUNG_GPIO_EXTRA=0 | 252 | CONFIG_SAMSUNG_GPIO_EXTRA=0 |
246 | CONFIG_S3C_GPIO_SPACE=0 | 253 | CONFIG_S3C_GPIO_SPACE=0 |
247 | CONFIG_S3C_GPIO_TRACK=y | 254 | CONFIG_S3C_GPIO_TRACK=y |
248 | # CONFIG_S3C_ADC is not set | 255 | # CONFIG_S3C_ADC is not set |
256 | CONFIG_S3C_DEV_WDT=y | ||
257 | CONFIG_SAMSUNG_DEV_ADC=y | ||
258 | CONFIG_SAMSUNG_DEV_TS=y | ||
259 | CONFIG_S3C_PL330_DMA=y | ||
249 | 260 | ||
250 | # | 261 | # |
251 | # Power management | 262 | # Power management |
252 | # | 263 | # |
253 | CONFIG_PLAT_S5P=y | 264 | CONFIG_PLAT_S5P=y |
265 | CONFIG_S5P_EXT_INT=y | ||
254 | CONFIG_CPU_S5PV210=y | 266 | CONFIG_CPU_S5PV210=y |
267 | # CONFIG_MACH_AQUILA is not set | ||
268 | # CONFIG_MACH_GONI is not set | ||
255 | CONFIG_MACH_SMDKV210=y | 269 | CONFIG_MACH_SMDKV210=y |
256 | # CONFIG_MACH_SMDKC110 is not set | 270 | # CONFIG_MACH_SMDKC110 is not set |
257 | 271 | ||
@@ -281,12 +295,14 @@ CONFIG_ARM_THUMB=y | |||
281 | # CONFIG_CPU_BPREDICT_DISABLE is not set | 295 | # CONFIG_CPU_BPREDICT_DISABLE is not set |
282 | CONFIG_HAS_TLS_REG=y | 296 | CONFIG_HAS_TLS_REG=y |
283 | CONFIG_ARM_L1_CACHE_SHIFT=6 | 297 | CONFIG_ARM_L1_CACHE_SHIFT=6 |
298 | CONFIG_ARM_DMA_MEM_BUFFERABLE=y | ||
284 | CONFIG_CPU_HAS_PMU=y | 299 | CONFIG_CPU_HAS_PMU=y |
285 | # CONFIG_ARM_ERRATA_430973 is not set | 300 | # CONFIG_ARM_ERRATA_430973 is not set |
286 | # CONFIG_ARM_ERRATA_458693 is not set | 301 | # CONFIG_ARM_ERRATA_458693 is not set |
287 | # CONFIG_ARM_ERRATA_460075 is not set | 302 | # CONFIG_ARM_ERRATA_460075 is not set |
288 | CONFIG_ARM_VIC=y | 303 | CONFIG_ARM_VIC=y |
289 | CONFIG_ARM_VIC_NR=2 | 304 | CONFIG_ARM_VIC_NR=2 |
305 | CONFIG_PL330=y | ||
290 | 306 | ||
291 | # | 307 | # |
292 | # Bus support | 308 | # Bus support |
@@ -335,6 +351,7 @@ CONFIG_ALIGNMENT_TRAP=y | |||
335 | CONFIG_ZBOOT_ROM_TEXT=0 | 351 | CONFIG_ZBOOT_ROM_TEXT=0 |
336 | CONFIG_ZBOOT_ROM_BSS=0 | 352 | CONFIG_ZBOOT_ROM_BSS=0 |
337 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" | 353 | CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x20800000,8M console=ttySAC1,115200 init=/linuxrc" |
354 | # CONFIG_CMDLINE_FORCE is not set | ||
338 | # CONFIG_XIP_KERNEL is not set | 355 | # CONFIG_XIP_KERNEL is not set |
339 | # CONFIG_KEXEC is not set | 356 | # CONFIG_KEXEC is not set |
340 | 357 | ||
@@ -481,7 +498,9 @@ CONFIG_INPUT_EVDEV=y | |||
481 | CONFIG_INPUT_TOUCHSCREEN=y | 498 | CONFIG_INPUT_TOUCHSCREEN=y |
482 | # CONFIG_TOUCHSCREEN_AD7879 is not set | 499 | # CONFIG_TOUCHSCREEN_AD7879 is not set |
483 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set | 500 | # CONFIG_TOUCHSCREEN_DYNAPRO is not set |
501 | # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set | ||
484 | # CONFIG_TOUCHSCREEN_FUJITSU is not set | 502 | # CONFIG_TOUCHSCREEN_FUJITSU is not set |
503 | # CONFIG_TOUCHSCREEN_S3C2410 is not set | ||
485 | # CONFIG_TOUCHSCREEN_GUNZE is not set | 504 | # CONFIG_TOUCHSCREEN_GUNZE is not set |
486 | # CONFIG_TOUCHSCREEN_ELO is not set | 505 | # CONFIG_TOUCHSCREEN_ELO is not set |
487 | # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set | 506 | # CONFIG_TOUCHSCREEN_WACOM_W8001 is not set |
@@ -536,6 +555,8 @@ CONFIG_SERIAL_S5PV210=y | |||
536 | CONFIG_SERIAL_CORE=y | 555 | CONFIG_SERIAL_CORE=y |
537 | CONFIG_SERIAL_CORE_CONSOLE=y | 556 | CONFIG_SERIAL_CORE_CONSOLE=y |
538 | # CONFIG_SERIAL_TIMBERDALE is not set | 557 | # CONFIG_SERIAL_TIMBERDALE is not set |
558 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set | ||
559 | # CONFIG_SERIAL_ALTERA_UART is not set | ||
539 | CONFIG_UNIX98_PTYS=y | 560 | CONFIG_UNIX98_PTYS=y |
540 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 561 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
541 | CONFIG_LEGACY_PTYS=y | 562 | CONFIG_LEGACY_PTYS=y |
@@ -583,6 +604,7 @@ CONFIG_GPIOLIB=y | |||
583 | # CONFIG_HWMON is not set | 604 | # CONFIG_HWMON is not set |
584 | # CONFIG_THERMAL is not set | 605 | # CONFIG_THERMAL is not set |
585 | # CONFIG_WATCHDOG is not set | 606 | # CONFIG_WATCHDOG is not set |
607 | CONFIG_HAVE_S3C2410_WATCHDOG=y | ||
586 | CONFIG_SSB_POSSIBLE=y | 608 | CONFIG_SSB_POSSIBLE=y |
587 | 609 | ||
588 | # | 610 | # |
@@ -635,10 +657,6 @@ CONFIG_RTC_LIB=y | |||
635 | # CONFIG_DMADEVICES is not set | 657 | # CONFIG_DMADEVICES is not set |
636 | # CONFIG_AUXDISPLAY is not set | 658 | # CONFIG_AUXDISPLAY is not set |
637 | # CONFIG_UIO is not set | 659 | # CONFIG_UIO is not set |
638 | |||
639 | # | ||
640 | # TI VLYNQ | ||
641 | # | ||
642 | # CONFIG_STAGING is not set | 660 | # CONFIG_STAGING is not set |
643 | 661 | ||
644 | # | 662 | # |
@@ -847,6 +865,8 @@ CONFIG_HAVE_FUNCTION_TRACER=y | |||
847 | CONFIG_TRACING_SUPPORT=y | 865 | CONFIG_TRACING_SUPPORT=y |
848 | CONFIG_FTRACE=y | 866 | CONFIG_FTRACE=y |
849 | # CONFIG_FUNCTION_TRACER is not set | 867 | # CONFIG_FUNCTION_TRACER is not set |
868 | # CONFIG_IRQSOFF_TRACER is not set | ||
869 | # CONFIG_PREEMPT_TRACER is not set | ||
850 | # CONFIG_SCHED_TRACER is not set | 870 | # CONFIG_SCHED_TRACER is not set |
851 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set | 871 | # CONFIG_ENABLE_DEFAULT_TRACERS is not set |
852 | # CONFIG_BOOT_TRACER is not set | 872 | # CONFIG_BOOT_TRACER is not set |
@@ -857,6 +877,7 @@ CONFIG_BRANCH_PROFILE_NONE=y | |||
857 | # CONFIG_KMEMTRACE is not set | 877 | # CONFIG_KMEMTRACE is not set |
858 | # CONFIG_WORKQUEUE_TRACER is not set | 878 | # CONFIG_WORKQUEUE_TRACER is not set |
859 | # CONFIG_BLK_DEV_IO_TRACE is not set | 879 | # CONFIG_BLK_DEV_IO_TRACE is not set |
880 | # CONFIG_ATOMIC64_SELFTEST is not set | ||
860 | # CONFIG_SAMPLES is not set | 881 | # CONFIG_SAMPLES is not set |
861 | CONFIG_HAVE_ARCH_KGDB=y | 882 | CONFIG_HAVE_ARCH_KGDB=y |
862 | # CONFIG_KGDB is not set | 883 | # CONFIG_KGDB is not set |
diff --git a/arch/arm/include/asm/scatterlist.h b/arch/arm/include/asm/scatterlist.h index bcda59f39941..2f87870d9347 100644 --- a/arch/arm/include/asm/scatterlist.h +++ b/arch/arm/include/asm/scatterlist.h | |||
@@ -3,9 +3,6 @@ | |||
3 | 3 | ||
4 | #include <asm/memory.h> | 4 | #include <asm/memory.h> |
5 | #include <asm/types.h> | 5 | #include <asm/types.h> |
6 | |||
7 | #include <asm-generic/scatterlist.h> | 6 | #include <asm-generic/scatterlist.h> |
8 | 7 | ||
9 | #undef ARCH_HAS_SG_CHAIN | ||
10 | |||
11 | #endif /* _ASMARM_SCATTERLIST_H */ | 8 | #endif /* _ASMARM_SCATTERLIST_H */ |
diff --git a/arch/arm/mach-davinci/include/mach/mmc.h b/arch/arm/mach-davinci/include/mach/mmc.h index 5a85e24f3673..d4f1e9675069 100644 --- a/arch/arm/mach-davinci/include/mach/mmc.h +++ b/arch/arm/mach-davinci/include/mach/mmc.h | |||
@@ -22,6 +22,9 @@ struct davinci_mmc_config { | |||
22 | 22 | ||
23 | /* Version of the MMC/SD controller */ | 23 | /* Version of the MMC/SD controller */ |
24 | u8 version; | 24 | u8 version; |
25 | |||
26 | /* Number of sg segments */ | ||
27 | u8 nr_sg; | ||
25 | }; | 28 | }; |
26 | void davinci_setup_mmc(int module, struct davinci_mmc_config *config); | 29 | void davinci_setup_mmc(int module, struct davinci_mmc_config *config); |
27 | 30 | ||
diff --git a/arch/arm/mach-mx3/mach-mx31moboard.c b/arch/arm/mach-mx3/mach-mx31moboard.c index 33a8d35498a7..62b5e40165df 100644 --- a/arch/arm/mach-mx3/mach-mx31moboard.c +++ b/arch/arm/mach-mx3/mach-mx31moboard.c | |||
@@ -220,11 +220,54 @@ static struct mc13783_regulator_init_data moboard_regulators[] = { | |||
220 | }, | 220 | }, |
221 | }; | 221 | }; |
222 | 222 | ||
223 | static struct mc13783_led_platform_data moboard_led[] = { | ||
224 | { | ||
225 | .id = MC13783_LED_R1, | ||
226 | .name = "coreboard-led-4:red", | ||
227 | .max_current = 2, | ||
228 | }, | ||
229 | { | ||
230 | .id = MC13783_LED_G1, | ||
231 | .name = "coreboard-led-4:green", | ||
232 | .max_current = 2, | ||
233 | }, | ||
234 | { | ||
235 | .id = MC13783_LED_B1, | ||
236 | .name = "coreboard-led-4:blue", | ||
237 | .max_current = 2, | ||
238 | }, | ||
239 | { | ||
240 | .id = MC13783_LED_R2, | ||
241 | .name = "coreboard-led-5:red", | ||
242 | .max_current = 3, | ||
243 | }, | ||
244 | { | ||
245 | .id = MC13783_LED_G2, | ||
246 | .name = "coreboard-led-5:green", | ||
247 | .max_current = 3, | ||
248 | }, | ||
249 | { | ||
250 | .id = MC13783_LED_B2, | ||
251 | .name = "coreboard-led-5:blue", | ||
252 | .max_current = 3, | ||
253 | }, | ||
254 | }; | ||
255 | |||
256 | static struct mc13783_leds_platform_data moboard_leds = { | ||
257 | .num_leds = ARRAY_SIZE(moboard_led), | ||
258 | .led = moboard_led, | ||
259 | .flags = MC13783_LED_SLEWLIMTC, | ||
260 | .abmode = MC13783_LED_AB_DISABLED, | ||
261 | .tc1_period = MC13783_LED_PERIOD_10MS, | ||
262 | .tc2_period = MC13783_LED_PERIOD_10MS, | ||
263 | }; | ||
264 | |||
223 | static struct mc13783_platform_data moboard_pmic = { | 265 | static struct mc13783_platform_data moboard_pmic = { |
224 | .regulators = moboard_regulators, | 266 | .regulators = moboard_regulators, |
225 | .num_regulators = ARRAY_SIZE(moboard_regulators), | 267 | .num_regulators = ARRAY_SIZE(moboard_regulators), |
268 | .leds = &moboard_leds, | ||
226 | .flags = MC13783_USE_REGULATOR | MC13783_USE_RTC | | 269 | .flags = MC13783_USE_REGULATOR | MC13783_USE_RTC | |
227 | MC13783_USE_ADC, | 270 | MC13783_USE_ADC | MC13783_USE_LED, |
228 | }; | 271 | }; |
229 | 272 | ||
230 | static struct spi_board_info moboard_spi_board_info[] __initdata = { | 273 | static struct spi_board_info moboard_spi_board_info[] __initdata = { |
diff --git a/arch/arm/mach-omap2/board-3430sdp.c b/arch/arm/mach-omap2/board-3430sdp.c index e7d629b3c76a..f474a80b8867 100644 --- a/arch/arm/mach-omap2/board-3430sdp.c +++ b/arch/arm/mach-omap2/board-3430sdp.c | |||
@@ -137,9 +137,7 @@ static void ads7846_dev_init(void) | |||
137 | } | 137 | } |
138 | 138 | ||
139 | gpio_direction_input(ts_gpio); | 139 | gpio_direction_input(ts_gpio); |
140 | 140 | gpio_set_debounce(ts_gpio, 310); | |
141 | omap_set_gpio_debounce(ts_gpio, 1); | ||
142 | omap_set_gpio_debounce_time(ts_gpio, 0xa); | ||
143 | } | 141 | } |
144 | 142 | ||
145 | static int ads7846_get_pendown_state(void) | 143 | static int ads7846_get_pendown_state(void) |
diff --git a/arch/arm/mach-omap2/board-ldp.c b/arch/arm/mach-omap2/board-ldp.c index 5fcb52e71298..fefd7e6e9779 100644 --- a/arch/arm/mach-omap2/board-ldp.c +++ b/arch/arm/mach-omap2/board-ldp.c | |||
@@ -209,8 +209,7 @@ static void ads7846_dev_init(void) | |||
209 | } | 209 | } |
210 | 210 | ||
211 | gpio_direction_input(ts_gpio); | 211 | gpio_direction_input(ts_gpio); |
212 | omap_set_gpio_debounce(ts_gpio, 1); | 212 | gpio_set_debounce(ts_gpio, 310); |
213 | omap_set_gpio_debounce_time(ts_gpio, 0xa); | ||
214 | } | 213 | } |
215 | 214 | ||
216 | static int ads7846_get_pendown_state(void) | 215 | static int ads7846_get_pendown_state(void) |
diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c index 81bba194b030..b95261013812 100644 --- a/arch/arm/mach-omap2/board-omap3evm.c +++ b/arch/arm/mach-omap2/board-omap3evm.c | |||
@@ -579,9 +579,7 @@ static void ads7846_dev_init(void) | |||
579 | printk(KERN_ERR "can't get ads7846 pen down GPIO\n"); | 579 | printk(KERN_ERR "can't get ads7846 pen down GPIO\n"); |
580 | 580 | ||
581 | gpio_direction_input(OMAP3_EVM_TS_GPIO); | 581 | gpio_direction_input(OMAP3_EVM_TS_GPIO); |
582 | 582 | gpio_set_debounce(OMAP3_EVM_TS_GPIO, 310); | |
583 | omap_set_gpio_debounce(OMAP3_EVM_TS_GPIO, 1); | ||
584 | omap_set_gpio_debounce_time(OMAP3_EVM_TS_GPIO, 0xa); | ||
585 | } | 583 | } |
586 | 584 | ||
587 | static int ads7846_get_pendown_state(void) | 585 | static int ads7846_get_pendown_state(void) |
diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c index 395d049bf010..db06dc910ba7 100644 --- a/arch/arm/mach-omap2/board-omap3pandora.c +++ b/arch/arm/mach-omap2/board-omap3pandora.c | |||
@@ -130,8 +130,8 @@ static struct platform_device pandora_keys_gpio = { | |||
130 | static void __init pandora_keys_gpio_init(void) | 130 | static void __init pandora_keys_gpio_init(void) |
131 | { | 131 | { |
132 | /* set debounce time for GPIO banks 4 and 6 */ | 132 | /* set debounce time for GPIO banks 4 and 6 */ |
133 | omap_set_gpio_debounce_time(32 * 3, GPIO_DEBOUNCE_TIME); | 133 | gpio_set_debounce(32 * 3, GPIO_DEBOUNCE_TIME); |
134 | omap_set_gpio_debounce_time(32 * 5, GPIO_DEBOUNCE_TIME); | 134 | gpio_set_debounce(32 * 5, GPIO_DEBOUNCE_TIME); |
135 | } | 135 | } |
136 | 136 | ||
137 | static int board_keymap[] = { | 137 | static int board_keymap[] = { |
diff --git a/arch/arm/mach-omap2/board-omap3touchbook.c b/arch/arm/mach-omap2/board-omap3touchbook.c index 2504d41f923e..2f5f8233dd5b 100644 --- a/arch/arm/mach-omap2/board-omap3touchbook.c +++ b/arch/arm/mach-omap2/board-omap3touchbook.c | |||
@@ -328,8 +328,7 @@ static void __init omap3_ads7846_init(void) | |||
328 | } | 328 | } |
329 | 329 | ||
330 | gpio_direction_input(OMAP3_TS_GPIO); | 330 | gpio_direction_input(OMAP3_TS_GPIO); |
331 | omap_set_gpio_debounce(OMAP3_TS_GPIO, 1); | 331 | gpio_set_debounce(OMAP3_TS_GPIO, 310); |
332 | omap_set_gpio_debounce_time(OMAP3_TS_GPIO, 0xa); | ||
333 | } | 332 | } |
334 | 333 | ||
335 | static struct ads7846_platform_data ads7846_config = { | 334 | static struct ads7846_platform_data ads7846_config = { |
diff --git a/arch/arm/mach-orion5x/dns323-setup.c b/arch/arm/mach-orion5x/dns323-setup.c index 685f34a9634b..fe0de1698edc 100644 --- a/arch/arm/mach-orion5x/dns323-setup.c +++ b/arch/arm/mach-orion5x/dns323-setup.c | |||
@@ -240,22 +240,23 @@ error_fail: | |||
240 | 240 | ||
241 | #define ORION_BLINK_HALF_PERIOD 100 /* ms */ | 241 | #define ORION_BLINK_HALF_PERIOD 100 /* ms */ |
242 | 242 | ||
243 | static int dns323_gpio_blink_set(unsigned gpio, | 243 | static int dns323_gpio_blink_set(unsigned gpio, int state, |
244 | unsigned long *delay_on, unsigned long *delay_off) | 244 | unsigned long *delay_on, unsigned long *delay_off) |
245 | { | 245 | { |
246 | static int value = 0; | ||
247 | 246 | ||
248 | if (!*delay_on && !*delay_off) | 247 | if (delay_on && delay_off && !*delay_on && !*delay_off) |
249 | *delay_on = *delay_off = ORION_BLINK_HALF_PERIOD; | 248 | *delay_on = *delay_off = ORION_BLINK_HALF_PERIOD; |
250 | 249 | ||
251 | if (ORION_BLINK_HALF_PERIOD == *delay_on | 250 | switch(state) { |
252 | && ORION_BLINK_HALF_PERIOD == *delay_off) { | 251 | case GPIO_LED_NO_BLINK_LOW: |
253 | value = !value; | 252 | case GPIO_LED_NO_BLINK_HIGH: |
254 | orion_gpio_set_blink(gpio, value); | 253 | orion_gpio_set_blink(gpio, 0); |
255 | return 0; | 254 | gpio_set_value(gpio, state); |
255 | break; | ||
256 | case GPIO_LED_BLINK: | ||
257 | orion_gpio_set_blink(gpio, 1); | ||
256 | } | 258 | } |
257 | 259 | return 0; | |
258 | return -EINVAL; | ||
259 | } | 260 | } |
260 | 261 | ||
261 | static struct gpio_led dns323_leds[] = { | 262 | static struct gpio_led dns323_leds[] = { |
@@ -263,6 +264,7 @@ static struct gpio_led dns323_leds[] = { | |||
263 | .name = "power:blue", | 264 | .name = "power:blue", |
264 | .gpio = DNS323_GPIO_LED_POWER2, | 265 | .gpio = DNS323_GPIO_LED_POWER2, |
265 | .default_trigger = "timer", | 266 | .default_trigger = "timer", |
267 | .active_low = 1, | ||
266 | }, { | 268 | }, { |
267 | .name = "right:amber", | 269 | .name = "right:amber", |
268 | .gpio = DNS323_GPIO_LED_RIGHT_AMBER, | 270 | .gpio = DNS323_GPIO_LED_RIGHT_AMBER, |
diff --git a/arch/arm/mach-s5p6440/include/mach/irqs.h b/arch/arm/mach-s5p6440/include/mach/irqs.h index a4b9b40d18f2..911854d9ad42 100644 --- a/arch/arm/mach-s5p6440/include/mach/irqs.h +++ b/arch/arm/mach-s5p6440/include/mach/irqs.h | |||
@@ -72,7 +72,14 @@ | |||
72 | #define S5P_IRQ_EINT_BASE (S5P_IRQ_VIC1(31) + 6) | 72 | #define S5P_IRQ_EINT_BASE (S5P_IRQ_VIC1(31) + 6) |
73 | 73 | ||
74 | #define S5P_EINT(x) ((x) + S5P_IRQ_EINT_BASE) | 74 | #define S5P_EINT(x) ((x) + S5P_IRQ_EINT_BASE) |
75 | #define IRQ_EINT(x) S5P_EINT(x) | 75 | |
76 | #define S5P_EINT_BASE1 (S5P_IRQ_EINT_BASE) | ||
77 | /* | ||
78 | * S5P6440 has 0-15 external interrupts in group 0. Only these can be used | ||
79 | * to wake up from sleep. If request is beyond this range, by mistake, a large | ||
80 | * return value for an irq number should be indication of something amiss. | ||
81 | */ | ||
82 | #define S5P_EINT_BASE2 (0xf0000000) | ||
76 | 83 | ||
77 | /* | 84 | /* |
78 | * Next the external interrupt groups. These are similar to the IRQ_EINT(x) | 85 | * Next the external interrupt groups. These are similar to the IRQ_EINT(x) |
diff --git a/arch/arm/mach-s5p6442/include/mach/irqs.h b/arch/arm/mach-s5p6442/include/mach/irqs.h index da665809f6e4..02c23749c023 100644 --- a/arch/arm/mach-s5p6442/include/mach/irqs.h +++ b/arch/arm/mach-s5p6442/include/mach/irqs.h | |||
@@ -77,8 +77,9 @@ | |||
77 | 77 | ||
78 | #define S5P_IRQ_EINT_BASE (IRQ_VIC_END + 1) | 78 | #define S5P_IRQ_EINT_BASE (IRQ_VIC_END + 1) |
79 | 79 | ||
80 | #define IRQ_EINT(x) ((x) < 16 ? S5P_IRQ_VIC0(x) : \ | 80 | #define S5P_EINT_BASE1 (S5P_IRQ_VIC0(0)) |
81 | (S5P_IRQ_EINT_BASE + (x)-16)) | 81 | #define S5P_EINT_BASE2 (S5P_IRQ_EINT_BASE) |
82 | |||
82 | /* Set the default NR_IRQS */ | 83 | /* Set the default NR_IRQS */ |
83 | 84 | ||
84 | #define NR_IRQS (IRQ_EINT(31) + 1) | 85 | #define NR_IRQS (IRQ_EINT(31) + 1) |
diff --git a/arch/arm/mach-s5pc100/include/mach/irqs.h b/arch/arm/mach-s5pc100/include/mach/irqs.h index 15066df3ced9..28aa551dc3a8 100644 --- a/arch/arm/mach-s5pc100/include/mach/irqs.h +++ b/arch/arm/mach-s5pc100/include/mach/irqs.h | |||
@@ -100,9 +100,6 @@ | |||
100 | #define S5P_EINT_BASE1 (S5P_IRQ_VIC0(0)) | 100 | #define S5P_EINT_BASE1 (S5P_IRQ_VIC0(0)) |
101 | #define S5P_EINT_BASE2 (IRQ_VIC_END + 1) | 101 | #define S5P_EINT_BASE2 (IRQ_VIC_END + 1) |
102 | 102 | ||
103 | #define IRQ_EINT(x) ((x) < 16 ? S5P_IRQ_VIC0(x) : \ | ||
104 | (S5P_EINT_BASE2 + (x) - 16)) | ||
105 | |||
106 | #define S3C_IRQ_GPIO_BASE (IRQ_EINT(31) + 1) | 103 | #define S3C_IRQ_GPIO_BASE (IRQ_EINT(31) + 1) |
107 | #define S3C_IRQ_GPIO(x) (S3C_IRQ_GPIO_BASE + (x)) | 104 | #define S3C_IRQ_GPIO(x) (S3C_IRQ_GPIO_BASE + (x)) |
108 | 105 | ||
diff --git a/arch/arm/mach-s5pc100/include/mach/regs-gpio.h b/arch/arm/mach-s5pc100/include/mach/regs-gpio.h index 763edebdd577..dd6295e1251d 100644 --- a/arch/arm/mach-s5pc100/include/mach/regs-gpio.h +++ b/arch/arm/mach-s5pc100/include/mach/regs-gpio.h | |||
@@ -60,12 +60,9 @@ | |||
60 | #define S5PC100EINT30PEND (S5P_VA_GPIO + 0xF40) | 60 | #define S5PC100EINT30PEND (S5P_VA_GPIO + 0xF40) |
61 | #define S5P_EINT_PEND(x) (S5PC100EINT30PEND + ((x) * 0x4)) | 61 | #define S5P_EINT_PEND(x) (S5PC100EINT30PEND + ((x) * 0x4)) |
62 | 62 | ||
63 | #define eint_offset(irq) ((irq) < IRQ_EINT16_31 ? ((irq) - IRQ_EINT(0)) : \ | 63 | #define EINT_REG_NR(x) (EINT_OFFSET(x) >> 3) |
64 | (((irq) - S5P_EINT_BASE2))) | ||
65 | 64 | ||
66 | #define EINT_REG_NR(x) (eint_offset(x) >> 3) | 65 | #define eint_irq_to_bit(irq) (1 << (EINT_OFFSET(irq) & 0x7)) |
67 | |||
68 | #define eint_irq_to_bit(irq) (1 << (eint_offset(irq) & 0x7)) | ||
69 | 66 | ||
70 | /* values for S5P_EXTINT0 */ | 67 | /* values for S5P_EXTINT0 */ |
71 | #define S5P_EXTINT_LOWLEV (0x00) | 68 | #define S5P_EXTINT_LOWLEV (0x00) |
diff --git a/arch/arm/mach-s5pv210/include/mach/irqs.h b/arch/arm/mach-s5pv210/include/mach/irqs.h index 92fc6c7fc064..96895378ea27 100644 --- a/arch/arm/mach-s5pv210/include/mach/irqs.h +++ b/arch/arm/mach-s5pv210/include/mach/irqs.h | |||
@@ -118,22 +118,12 @@ | |||
118 | #define IRQ_MDNIE3 S5P_IRQ_VIC3(8) | 118 | #define IRQ_MDNIE3 S5P_IRQ_VIC3(8) |
119 | #define IRQ_VIC_END S5P_IRQ_VIC3(31) | 119 | #define IRQ_VIC_END S5P_IRQ_VIC3(31) |
120 | 120 | ||
121 | #define S5P_EINT_16_31_BASE (IRQ_VIC_END + 1) | 121 | #define S5P_EINT_BASE1 (S5P_IRQ_VIC0(0)) |
122 | 122 | #define S5P_EINT_BASE2 (IRQ_VIC_END + 1) | |
123 | #define EINT_MODE S3C_GPIO_SFN(0xf) | ||
124 | |||
125 | #define IRQ_EINT(x) ((x) < 16 ? ((x) + S5P_IRQ_VIC0(0)) \ | ||
126 | : ((x) + S5P_EINT_16_31_BASE)) | ||
127 | 123 | ||
128 | /* Set the default NR_IRQS */ | 124 | /* Set the default NR_IRQS */ |
129 | |||
130 | #define NR_IRQS (IRQ_EINT(31) + 1) | 125 | #define NR_IRQS (IRQ_EINT(31) + 1) |
131 | 126 | ||
132 | #define EINT_GPIO_0(x) S5PV210_GPH0(x) | ||
133 | #define EINT_GPIO_1(x) S5PV210_GPH1(x) | ||
134 | #define EINT_GPIO_2(x) S5PV210_GPH2(x) | ||
135 | #define EINT_GPIO_3(x) S5PV210_GPH3(x) | ||
136 | |||
137 | /* Compatibility */ | 127 | /* Compatibility */ |
138 | #define IRQ_LCD_FIFO IRQ_LCD0 | 128 | #define IRQ_LCD_FIFO IRQ_LCD0 |
139 | #define IRQ_LCD_VSYNC IRQ_LCD1 | 129 | #define IRQ_LCD_VSYNC IRQ_LCD1 |
diff --git a/arch/arm/mach-s5pv210/include/mach/regs-gpio.h b/arch/arm/mach-s5pv210/include/mach/regs-gpio.h index 6d068091c36c..49e029b4978a 100644 --- a/arch/arm/mach-s5pv210/include/mach/regs-gpio.h +++ b/arch/arm/mach-s5pv210/include/mach/regs-gpio.h | |||
@@ -27,12 +27,9 @@ | |||
27 | #define S5PV210_EINT30PEND (S5P_VA_GPIO + 0xF40) | 27 | #define S5PV210_EINT30PEND (S5P_VA_GPIO + 0xF40) |
28 | #define S5P_EINT_PEND(x) (S5PV210_EINT30PEND + ((x) * 0x4)) | 28 | #define S5P_EINT_PEND(x) (S5PV210_EINT30PEND + ((x) * 0x4)) |
29 | 29 | ||
30 | #define eint_offset(irq) ((irq) < IRQ_EINT16_31 ? ((irq) - IRQ_EINT(0)) \ | 30 | #define EINT_REG_NR(x) (EINT_OFFSET(x) >> 3) |
31 | : ((irq) - S5P_EINT_16_31_BASE)) | ||
32 | 31 | ||
33 | #define EINT_REG_NR(x) (eint_offset(x) >> 3) | 32 | #define eint_irq_to_bit(irq) (1 << (EINT_OFFSET(irq) & 0x7)) |
34 | |||
35 | #define eint_irq_to_bit(irq) (1 << (eint_offset(irq) & 0x7)) | ||
36 | 33 | ||
37 | /* values for S5P_EXTINT0 */ | 34 | /* values for S5P_EXTINT0 */ |
38 | #define S5P_EXTINT_LOWLEV (0x00) | 35 | #define S5P_EXTINT_LOWLEV (0x00) |
@@ -41,4 +38,11 @@ | |||
41 | #define S5P_EXTINT_RISEEDGE (0x03) | 38 | #define S5P_EXTINT_RISEEDGE (0x03) |
42 | #define S5P_EXTINT_BOTHEDGE (0x04) | 39 | #define S5P_EXTINT_BOTHEDGE (0x04) |
43 | 40 | ||
41 | #define EINT_MODE S3C_GPIO_SFN(0xf) | ||
42 | |||
43 | #define EINT_GPIO_0(x) S5PV210_GPH0(x) | ||
44 | #define EINT_GPIO_1(x) S5PV210_GPH1(x) | ||
45 | #define EINT_GPIO_2(x) S5PV210_GPH2(x) | ||
46 | #define EINT_GPIO_3(x) S5PV210_GPH3(x) | ||
47 | |||
44 | #endif /* __ASM_ARCH_REGS_GPIO_H */ | 48 | #endif /* __ASM_ARCH_REGS_GPIO_H */ |
diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c index dc2ac42d6319..393e9219a5b6 100644 --- a/arch/arm/plat-omap/gpio.c +++ b/arch/arm/plat-omap/gpio.c | |||
@@ -624,79 +624,58 @@ do { \ | |||
624 | __raw_writel(l, base + reg); \ | 624 | __raw_writel(l, base + reg); \ |
625 | } while(0) | 625 | } while(0) |
626 | 626 | ||
627 | void omap_set_gpio_debounce(int gpio, int enable) | 627 | /** |
628 | * _set_gpio_debounce - low level gpio debounce time | ||
629 | * @bank: the gpio bank we're acting upon | ||
630 | * @gpio: the gpio number on this @gpio | ||
631 | * @debounce: debounce time to use | ||
632 | * | ||
633 | * OMAP's debounce time is in 31us steps so we need | ||
634 | * to convert and round up to the closest unit. | ||
635 | */ | ||
636 | static void _set_gpio_debounce(struct gpio_bank *bank, unsigned gpio, | ||
637 | unsigned debounce) | ||
628 | { | 638 | { |
629 | struct gpio_bank *bank; | 639 | void __iomem *reg = bank->base; |
630 | void __iomem *reg; | 640 | u32 val; |
631 | unsigned long flags; | 641 | u32 l; |
632 | u32 val, l = 1 << get_gpio_index(gpio); | 642 | |
643 | if (debounce < 32) | ||
644 | debounce = 0x01; | ||
645 | else if (debounce > 7936) | ||
646 | debounce = 0xff; | ||
647 | else | ||
648 | debounce = (debounce / 0x1f) - 1; | ||
633 | 649 | ||
634 | if (cpu_class_is_omap1()) | 650 | l = 1 << get_gpio_index(gpio); |
635 | return; | ||
636 | 651 | ||
637 | bank = get_gpio_bank(gpio); | 652 | if (cpu_is_omap44xx()) |
638 | reg = bank->base; | 653 | reg += OMAP4_GPIO_DEBOUNCINGTIME; |
654 | else | ||
655 | reg += OMAP24XX_GPIO_DEBOUNCE_VAL; | ||
656 | |||
657 | __raw_writel(debounce, reg); | ||
639 | 658 | ||
659 | reg = bank->base; | ||
640 | if (cpu_is_omap44xx()) | 660 | if (cpu_is_omap44xx()) |
641 | reg += OMAP4_GPIO_DEBOUNCENABLE; | 661 | reg += OMAP4_GPIO_DEBOUNCENABLE; |
642 | else | 662 | else |
643 | reg += OMAP24XX_GPIO_DEBOUNCE_EN; | 663 | reg += OMAP24XX_GPIO_DEBOUNCE_EN; |
644 | 664 | ||
645 | if (!(bank->mod_usage & l)) { | ||
646 | printk(KERN_ERR "GPIO %d not requested\n", gpio); | ||
647 | return; | ||
648 | } | ||
649 | |||
650 | spin_lock_irqsave(&bank->lock, flags); | ||
651 | val = __raw_readl(reg); | 665 | val = __raw_readl(reg); |
652 | 666 | ||
653 | if (enable && !(val & l)) | 667 | if (debounce) { |
654 | val |= l; | 668 | val |= l; |
655 | else if (!enable && (val & l)) | 669 | if (cpu_is_omap34xx() || cpu_is_omap44xx()) |
656 | val &= ~l; | ||
657 | else | ||
658 | goto done; | ||
659 | |||
660 | if (cpu_is_omap34xx() || cpu_is_omap44xx()) { | ||
661 | bank->dbck_enable_mask = val; | ||
662 | if (enable) | ||
663 | clk_enable(bank->dbck); | 670 | clk_enable(bank->dbck); |
664 | else | 671 | } else { |
672 | val &= ~l; | ||
673 | if (cpu_is_omap34xx() || cpu_is_omap44xx()) | ||
665 | clk_disable(bank->dbck); | 674 | clk_disable(bank->dbck); |
666 | } | 675 | } |
667 | 676 | ||
668 | __raw_writel(val, reg); | 677 | __raw_writel(val, reg); |
669 | done: | ||
670 | spin_unlock_irqrestore(&bank->lock, flags); | ||
671 | } | 678 | } |
672 | EXPORT_SYMBOL(omap_set_gpio_debounce); | ||
673 | |||
674 | void omap_set_gpio_debounce_time(int gpio, int enc_time) | ||
675 | { | ||
676 | struct gpio_bank *bank; | ||
677 | void __iomem *reg; | ||
678 | |||
679 | if (cpu_class_is_omap1()) | ||
680 | return; | ||
681 | |||
682 | bank = get_gpio_bank(gpio); | ||
683 | reg = bank->base; | ||
684 | |||
685 | if (!bank->mod_usage) { | ||
686 | printk(KERN_ERR "GPIO not requested\n"); | ||
687 | return; | ||
688 | } | ||
689 | |||
690 | enc_time &= 0xff; | ||
691 | |||
692 | if (cpu_is_omap44xx()) | ||
693 | reg += OMAP4_GPIO_DEBOUNCINGTIME; | ||
694 | else | ||
695 | reg += OMAP24XX_GPIO_DEBOUNCE_VAL; | ||
696 | |||
697 | __raw_writel(enc_time, reg); | ||
698 | } | ||
699 | EXPORT_SYMBOL(omap_set_gpio_debounce_time); | ||
700 | 679 | ||
701 | #ifdef CONFIG_ARCH_OMAP2PLUS | 680 | #ifdef CONFIG_ARCH_OMAP2PLUS |
702 | static inline void set_24xx_gpio_triggering(struct gpio_bank *bank, int gpio, | 681 | static inline void set_24xx_gpio_triggering(struct gpio_bank *bank, int gpio, |
@@ -1656,6 +1635,20 @@ static int gpio_output(struct gpio_chip *chip, unsigned offset, int value) | |||
1656 | return 0; | 1635 | return 0; |
1657 | } | 1636 | } |
1658 | 1637 | ||
1638 | static int gpio_debounce(struct gpio_chip *chip, unsigned offset, | ||
1639 | unsigned debounce) | ||
1640 | { | ||
1641 | struct gpio_bank *bank; | ||
1642 | unsigned long flags; | ||
1643 | |||
1644 | bank = container_of(chip, struct gpio_bank, chip); | ||
1645 | spin_lock_irqsave(&bank->lock, flags); | ||
1646 | _set_gpio_debounce(bank, offset, debounce); | ||
1647 | spin_unlock_irqrestore(&bank->lock, flags); | ||
1648 | |||
1649 | return 0; | ||
1650 | } | ||
1651 | |||
1659 | static void gpio_set(struct gpio_chip *chip, unsigned offset, int value) | 1652 | static void gpio_set(struct gpio_chip *chip, unsigned offset, int value) |
1660 | { | 1653 | { |
1661 | struct gpio_bank *bank; | 1654 | struct gpio_bank *bank; |
@@ -1909,6 +1902,7 @@ static int __init _omap_gpio_init(void) | |||
1909 | bank->chip.direction_input = gpio_input; | 1902 | bank->chip.direction_input = gpio_input; |
1910 | bank->chip.get = gpio_get; | 1903 | bank->chip.get = gpio_get; |
1911 | bank->chip.direction_output = gpio_output; | 1904 | bank->chip.direction_output = gpio_output; |
1905 | bank->chip.set_debounce = gpio_debounce; | ||
1912 | bank->chip.set = gpio_set; | 1906 | bank->chip.set = gpio_set; |
1913 | bank->chip.to_irq = gpio_2irq; | 1907 | bank->chip.to_irq = gpio_2irq; |
1914 | if (bank_is_mpuio(bank)) { | 1908 | if (bank_is_mpuio(bank)) { |
diff --git a/arch/arm/plat-s5p/Kconfig b/arch/arm/plat-s5p/Kconfig index 5cb2dd1da632..11d6a1bbd90d 100644 --- a/arch/arm/plat-s5p/Kconfig +++ b/arch/arm/plat-s5p/Kconfig | |||
@@ -29,3 +29,4 @@ config S5P_EXT_INT | |||
29 | bool | 29 | bool |
30 | help | 30 | help |
31 | Use the external interrupts (other than GPIO interrupts.) | 31 | Use the external interrupts (other than GPIO interrupts.) |
32 | Note: Do not choose this for S5P6440. | ||
diff --git a/arch/arm/plat-s5p/include/plat/irqs.h b/arch/arm/plat-s5p/include/plat/irqs.h index 9ff3d718be39..3fb3a3a17465 100644 --- a/arch/arm/plat-s5p/include/plat/irqs.h +++ b/arch/arm/plat-s5p/include/plat/irqs.h | |||
@@ -87,4 +87,11 @@ | |||
87 | #define IRQ_TIMER3 S5P_TIMER_IRQ(3) | 87 | #define IRQ_TIMER3 S5P_TIMER_IRQ(3) |
88 | #define IRQ_TIMER4 S5P_TIMER_IRQ(4) | 88 | #define IRQ_TIMER4 S5P_TIMER_IRQ(4) |
89 | 89 | ||
90 | #define IRQ_EINT(x) ((x) < 16 ? ((x) + S5P_EINT_BASE1) \ | ||
91 | : ((x) - 16 + S5P_EINT_BASE2)) | ||
92 | |||
93 | #define EINT_OFFSET(irq) ((irq) < S5P_EINT_BASE2 ? \ | ||
94 | ((irq) - S5P_EINT_BASE1) : \ | ||
95 | ((irq) + 16 - S5P_EINT_BASE2)) | ||
96 | |||
90 | #endif /* __ASM_PLAT_S5P_IRQS_H */ | 97 | #endif /* __ASM_PLAT_S5P_IRQS_H */ |
diff --git a/arch/arm/plat-s5p/irq-eint.c b/arch/arm/plat-s5p/irq-eint.c index eaa70aa0127b..e56c8075df97 100644 --- a/arch/arm/plat-s5p/irq-eint.c +++ b/arch/arm/plat-s5p/irq-eint.c | |||
@@ -60,7 +60,7 @@ static void s5p_irq_eint_maskack(unsigned int irq) | |||
60 | 60 | ||
61 | static int s5p_irq_eint_set_type(unsigned int irq, unsigned int type) | 61 | static int s5p_irq_eint_set_type(unsigned int irq, unsigned int type) |
62 | { | 62 | { |
63 | int offs = eint_offset(irq); | 63 | int offs = EINT_OFFSET(irq); |
64 | int shift; | 64 | int shift; |
65 | u32 ctrl, mask; | 65 | u32 ctrl, mask; |
66 | u32 newvalue = 0; | 66 | u32 newvalue = 0; |
@@ -139,17 +139,16 @@ static struct irq_chip s5p_irq_eint = { | |||
139 | */ | 139 | */ |
140 | static inline void s5p_irq_demux_eint(unsigned int start) | 140 | static inline void s5p_irq_demux_eint(unsigned int start) |
141 | { | 141 | { |
142 | u32 status; | 142 | u32 status = __raw_readl(S5P_EINT_PEND(EINT_REG_NR(start))); |
143 | u32 mask = __raw_readl(S5P_EINT_MASK(EINT_REG_NR(start))); | 143 | u32 mask = __raw_readl(S5P_EINT_MASK(EINT_REG_NR(start))); |
144 | unsigned int irq; | 144 | unsigned int irq; |
145 | 145 | ||
146 | status = __raw_readl(S5P_EINT_PEND(EINT_REG_NR(start))); | ||
147 | status &= ~mask; | 146 | status &= ~mask; |
148 | status &= 0xff; | 147 | status &= 0xff; |
149 | 148 | ||
150 | while (status) { | 149 | while (status) { |
151 | irq = fls(status); | 150 | irq = fls(status) - 1; |
152 | generic_handle_irq(irq - 1 + start); | 151 | generic_handle_irq(irq + start); |
153 | status &= ~(1 << irq); | 152 | status &= ~(1 << irq); |
154 | } | 153 | } |
155 | } | 154 | } |
@@ -162,12 +161,18 @@ static void s5p_irq_demux_eint16_31(unsigned int irq, struct irq_desc *desc) | |||
162 | 161 | ||
163 | static inline void s5p_irq_vic_eint_mask(unsigned int irq) | 162 | static inline void s5p_irq_vic_eint_mask(unsigned int irq) |
164 | { | 163 | { |
164 | void __iomem *base = get_irq_chip_data(irq); | ||
165 | |||
165 | s5p_irq_eint_mask(irq); | 166 | s5p_irq_eint_mask(irq); |
167 | writel(1 << EINT_OFFSET(irq), base + VIC_INT_ENABLE_CLEAR); | ||
166 | } | 168 | } |
167 | 169 | ||
168 | static void s5p_irq_vic_eint_unmask(unsigned int irq) | 170 | static void s5p_irq_vic_eint_unmask(unsigned int irq) |
169 | { | 171 | { |
172 | void __iomem *base = get_irq_chip_data(irq); | ||
173 | |||
170 | s5p_irq_eint_unmask(irq); | 174 | s5p_irq_eint_unmask(irq); |
175 | writel(1 << EINT_OFFSET(irq), base + VIC_INT_ENABLE); | ||
171 | } | 176 | } |
172 | 177 | ||
173 | static inline void s5p_irq_vic_eint_ack(unsigned int irq) | 178 | static inline void s5p_irq_vic_eint_ack(unsigned int irq) |
diff --git a/arch/avr32/include/asm/scatterlist.h b/arch/avr32/include/asm/scatterlist.h index 377320e3bd17..06394e5ead6c 100644 --- a/arch/avr32/include/asm/scatterlist.h +++ b/arch/avr32/include/asm/scatterlist.h | |||
@@ -1,25 +1,7 @@ | |||
1 | #ifndef __ASM_AVR32_SCATTERLIST_H | 1 | #ifndef __ASM_AVR32_SCATTERLIST_H |
2 | #define __ASM_AVR32_SCATTERLIST_H | 2 | #define __ASM_AVR32_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm/types.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | struct scatterlist { | ||
7 | #ifdef CONFIG_DEBUG_SG | ||
8 | unsigned long sg_magic; | ||
9 | #endif | ||
10 | unsigned long page_link; | ||
11 | unsigned int offset; | ||
12 | dma_addr_t dma_address; | ||
13 | unsigned int length; | ||
14 | }; | ||
15 | |||
16 | /* These macros should be used after a pci_map_sg call has been done | ||
17 | * to get bus addresses of each of the SG entries and their lengths. | ||
18 | * You should only work with the number of sg entries pci_map_sg | ||
19 | * returns. | ||
20 | */ | ||
21 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
22 | #define sg_dma_len(sg) ((sg)->length) | ||
23 | 5 | ||
24 | #define ISA_DMA_THRESHOLD (0xffffffff) | 6 | #define ISA_DMA_THRESHOLD (0xffffffff) |
25 | 7 | ||
diff --git a/arch/blackfin/include/asm/scatterlist.h b/arch/blackfin/include/asm/scatterlist.h index 04f448711cd0..64d41d34ab0b 100644 --- a/arch/blackfin/include/asm/scatterlist.h +++ b/arch/blackfin/include/asm/scatterlist.h | |||
@@ -1,27 +1,7 @@ | |||
1 | #ifndef _BLACKFIN_SCATTERLIST_H | 1 | #ifndef _BLACKFIN_SCATTERLIST_H |
2 | #define _BLACKFIN_SCATTERLIST_H | 2 | #define _BLACKFIN_SCATTERLIST_H |
3 | 3 | ||
4 | #include <linux/mm.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | struct scatterlist { | ||
7 | #ifdef CONFIG_DEBUG_SG | ||
8 | unsigned long sg_magic; | ||
9 | #endif | ||
10 | unsigned long page_link; | ||
11 | unsigned int offset; | ||
12 | dma_addr_t dma_address; | ||
13 | unsigned int length; | ||
14 | }; | ||
15 | |||
16 | /* | ||
17 | * These macros should be used after a pci_map_sg call has been done | ||
18 | * to get bus addresses of each of the SG entries and their lengths. | ||
19 | * You should only work with the number of sg entries pci_map_sg | ||
20 | * returns, or alternatively stop on the first sg_dma_len(sg) which | ||
21 | * is 0. | ||
22 | */ | ||
23 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
24 | #define sg_dma_len(sg) ((sg)->length) | ||
25 | 5 | ||
26 | #define ISA_DMA_THRESHOLD (0xffffffff) | 6 | #define ISA_DMA_THRESHOLD (0xffffffff) |
27 | 7 | ||
diff --git a/arch/blackfin/kernel/ptrace.c b/arch/blackfin/kernel/ptrace.c index 43eb969405d1..6ec77685df52 100644 --- a/arch/blackfin/kernel/ptrace.c +++ b/arch/blackfin/kernel/ptrace.c | |||
@@ -292,28 +292,6 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
292 | break; | 292 | break; |
293 | } | 293 | } |
294 | 294 | ||
295 | #ifdef CONFIG_BINFMT_ELF_FDPIC | ||
296 | case PTRACE_GETFDPIC: { | ||
297 | unsigned long tmp = 0; | ||
298 | |||
299 | switch (addr) { | ||
300 | case_PTRACE_GETFDPIC_EXEC: | ||
301 | case PTRACE_GETFDPIC_EXEC: | ||
302 | tmp = child->mm->context.exec_fdpic_loadmap; | ||
303 | break; | ||
304 | case_PTRACE_GETFDPIC_INTERP: | ||
305 | case PTRACE_GETFDPIC_INTERP: | ||
306 | tmp = child->mm->context.interp_fdpic_loadmap; | ||
307 | break; | ||
308 | default: | ||
309 | break; | ||
310 | } | ||
311 | |||
312 | ret = put_user(tmp, datap); | ||
313 | break; | ||
314 | } | ||
315 | #endif | ||
316 | |||
317 | /* when I and D space are separate, this will have to be fixed. */ | 295 | /* when I and D space are separate, this will have to be fixed. */ |
318 | case PTRACE_POKEDATA: | 296 | case PTRACE_POKEDATA: |
319 | pr_debug("ptrace: PTRACE_PEEKDATA\n"); | 297 | pr_debug("ptrace: PTRACE_PEEKDATA\n"); |
@@ -357,8 +335,14 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
357 | case PTRACE_PEEKUSR: | 335 | case PTRACE_PEEKUSR: |
358 | switch (addr) { | 336 | switch (addr) { |
359 | #ifdef CONFIG_BINFMT_ELF_FDPIC /* backwards compat */ | 337 | #ifdef CONFIG_BINFMT_ELF_FDPIC /* backwards compat */ |
360 | case PT_FDPIC_EXEC: goto case_PTRACE_GETFDPIC_EXEC; | 338 | case PT_FDPIC_EXEC: |
361 | case PT_FDPIC_INTERP: goto case_PTRACE_GETFDPIC_INTERP; | 339 | request = PTRACE_GETFDPIC; |
340 | addr = PTRACE_GETFDPIC_EXEC; | ||
341 | goto case_default; | ||
342 | case PT_FDPIC_INTERP: | ||
343 | request = PTRACE_GETFDPIC; | ||
344 | addr = PTRACE_GETFDPIC_INTERP; | ||
345 | goto case_default; | ||
362 | #endif | 346 | #endif |
363 | default: | 347 | default: |
364 | ret = get_reg(child, addr, datap); | 348 | ret = get_reg(child, addr, datap); |
@@ -385,6 +369,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
385 | 0, sizeof(struct pt_regs), | 369 | 0, sizeof(struct pt_regs), |
386 | (const void __user *)data); | 370 | (const void __user *)data); |
387 | 371 | ||
372 | case_default: | ||
388 | default: | 373 | default: |
389 | ret = ptrace_request(child, request, addr, data); | 374 | ret = ptrace_request(child, request, addr, data); |
390 | break; | 375 | break; |
diff --git a/arch/cris/include/asm/scatterlist.h b/arch/cris/include/asm/scatterlist.h index faff53ad1f96..249a7842ff5f 100644 --- a/arch/cris/include/asm/scatterlist.h +++ b/arch/cris/include/asm/scatterlist.h | |||
@@ -1,22 +1,7 @@ | |||
1 | #ifndef __ASM_CRIS_SCATTERLIST_H | 1 | #ifndef __ASM_CRIS_SCATTERLIST_H |
2 | #define __ASM_CRIS_SCATTERLIST_H | 2 | #define __ASM_CRIS_SCATTERLIST_H |
3 | 3 | ||
4 | struct scatterlist { | 4 | #include <asm-generic/scatterlist.h> |
5 | #ifdef CONFIG_DEBUG_SG | ||
6 | unsigned long sg_magic; | ||
7 | #endif | ||
8 | char * address; /* Location data is to be transferred to */ | ||
9 | unsigned int length; | ||
10 | |||
11 | /* The following is i386 highmem junk - not used by us */ | ||
12 | unsigned long page_link; | ||
13 | unsigned int offset;/* for highmem, page offset */ | ||
14 | |||
15 | }; | ||
16 | |||
17 | #define sg_dma_address(sg) ((sg)->address) | ||
18 | #define sg_dma_len(sg) ((sg)->length) | ||
19 | /* i386 junk */ | ||
20 | 5 | ||
21 | #define ISA_DMA_THRESHOLD (0x1fffffff) | 6 | #define ISA_DMA_THRESHOLD (0x1fffffff) |
22 | 7 | ||
diff --git a/arch/frv/include/asm/scatterlist.h b/arch/frv/include/asm/scatterlist.h index 4bca8a28546c..1614bfd7e3a4 100644 --- a/arch/frv/include/asm/scatterlist.h +++ b/arch/frv/include/asm/scatterlist.h | |||
@@ -1,45 +1,7 @@ | |||
1 | #ifndef _ASM_SCATTERLIST_H | 1 | #ifndef _ASM_SCATTERLIST_H |
2 | #define _ASM_SCATTERLIST_H | 2 | #define _ASM_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm/types.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | /* | ||
7 | * Drivers must set either ->address or (preferred) page and ->offset | ||
8 | * to indicate where data must be transferred to/from. | ||
9 | * | ||
10 | * Using page is recommended since it handles highmem data as well as | ||
11 | * low mem. ->address is restricted to data which has a virtual mapping, and | ||
12 | * it will go away in the future. Updating to page can be automated very | ||
13 | * easily -- something like | ||
14 | * | ||
15 | * sg->address = some_ptr; | ||
16 | * | ||
17 | * can be rewritten as | ||
18 | * | ||
19 | * sg_set_buf(sg, some_ptr, length); | ||
20 | * | ||
21 | * and that's it. There's no excuse for not highmem enabling YOUR driver. /jens | ||
22 | */ | ||
23 | struct scatterlist { | ||
24 | #ifdef CONFIG_DEBUG_SG | ||
25 | unsigned long sg_magic; | ||
26 | #endif | ||
27 | unsigned long page_link; | ||
28 | unsigned int offset; /* for highmem, page offset */ | ||
29 | |||
30 | dma_addr_t dma_address; | ||
31 | unsigned int length; | ||
32 | }; | ||
33 | |||
34 | /* | ||
35 | * These macros should be used after a pci_map_sg call has been done | ||
36 | * to get bus addresses of each of the SG entries and their lengths. | ||
37 | * You should only work with the number of sg entries pci_map_sg | ||
38 | * returns, or alternatively stop on the first sg_dma_len(sg) which | ||
39 | * is 0. | ||
40 | */ | ||
41 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
42 | #define sg_dma_len(sg) ((sg)->length) | ||
43 | 5 | ||
44 | #define ISA_DMA_THRESHOLD (0xffffffffUL) | 6 | #define ISA_DMA_THRESHOLD (0xffffffffUL) |
45 | 7 | ||
diff --git a/arch/frv/kernel/ptrace.c b/arch/frv/kernel/ptrace.c index 60eeed3694c0..fac028936a04 100644 --- a/arch/frv/kernel/ptrace.c +++ b/arch/frv/kernel/ptrace.c | |||
@@ -344,26 +344,6 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
344 | 0, sizeof(child->thread.user->f), | 344 | 0, sizeof(child->thread.user->f), |
345 | (const void __user *)data); | 345 | (const void __user *)data); |
346 | 346 | ||
347 | case PTRACE_GETFDPIC: | ||
348 | tmp = 0; | ||
349 | switch (addr) { | ||
350 | case PTRACE_GETFDPIC_EXEC: | ||
351 | tmp = child->mm->context.exec_fdpic_loadmap; | ||
352 | break; | ||
353 | case PTRACE_GETFDPIC_INTERP: | ||
354 | tmp = child->mm->context.interp_fdpic_loadmap; | ||
355 | break; | ||
356 | default: | ||
357 | break; | ||
358 | } | ||
359 | |||
360 | ret = 0; | ||
361 | if (put_user(tmp, (unsigned long *) data)) { | ||
362 | ret = -EFAULT; | ||
363 | break; | ||
364 | } | ||
365 | break; | ||
366 | |||
367 | default: | 347 | default: |
368 | ret = ptrace_request(child, request, addr, data); | 348 | ret = ptrace_request(child, request, addr, data); |
369 | break; | 349 | break; |
diff --git a/arch/frv/kernel/sysctl.c b/arch/frv/kernel/sysctl.c index 71abd1510a59..6c155d69da29 100644 --- a/arch/frv/kernel/sysctl.c +++ b/arch/frv/kernel/sysctl.c | |||
@@ -46,8 +46,9 @@ static void frv_change_dcache_mode(unsigned long newmode) | |||
46 | /* | 46 | /* |
47 | * handle requests to dynamically switch the write caching mode delivered by /proc | 47 | * handle requests to dynamically switch the write caching mode delivered by /proc |
48 | */ | 48 | */ |
49 | static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp, | 49 | static int procctl_frv_cachemode(ctl_table *table, int write, |
50 | void __user *buffer, size_t *lenp, loff_t *ppos) | 50 | void __user *buffer, size_t *lenp, |
51 | loff_t *ppos) | ||
51 | { | 52 | { |
52 | unsigned long hsr0; | 53 | unsigned long hsr0; |
53 | char buff[8]; | 54 | char buff[8]; |
@@ -84,7 +85,7 @@ static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp, | |||
84 | } | 85 | } |
85 | 86 | ||
86 | /* read the state */ | 87 | /* read the state */ |
87 | if (filp->f_pos > 0) { | 88 | if (*ppos > 0) { |
88 | *lenp = 0; | 89 | *lenp = 0; |
89 | return 0; | 90 | return 0; |
90 | } | 91 | } |
@@ -110,7 +111,7 @@ static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp, | |||
110 | return -EFAULT; | 111 | return -EFAULT; |
111 | 112 | ||
112 | *lenp = len; | 113 | *lenp = len; |
113 | filp->f_pos = len; | 114 | *ppos = len; |
114 | return 0; | 115 | return 0; |
115 | 116 | ||
116 | } /* end procctl_frv_cachemode() */ | 117 | } /* end procctl_frv_cachemode() */ |
@@ -120,8 +121,9 @@ static int procctl_frv_cachemode(ctl_table *table, int write, struct file *filp, | |||
120 | * permit the mm_struct the nominated process is using have its MMU context ID pinned | 121 | * permit the mm_struct the nominated process is using have its MMU context ID pinned |
121 | */ | 122 | */ |
122 | #ifdef CONFIG_MMU | 123 | #ifdef CONFIG_MMU |
123 | static int procctl_frv_pin_cxnr(ctl_table *table, int write, struct file *filp, | 124 | static int procctl_frv_pin_cxnr(ctl_table *table, int write, |
124 | void __user *buffer, size_t *lenp, loff_t *ppos) | 125 | void __user *buffer, size_t *lenp, |
126 | loff_t *ppos) | ||
125 | { | 127 | { |
126 | pid_t pid; | 128 | pid_t pid; |
127 | char buff[16], *p; | 129 | char buff[16], *p; |
@@ -150,7 +152,7 @@ static int procctl_frv_pin_cxnr(ctl_table *table, int write, struct file *filp, | |||
150 | } | 152 | } |
151 | 153 | ||
152 | /* read the currently pinned CXN */ | 154 | /* read the currently pinned CXN */ |
153 | if (filp->f_pos > 0) { | 155 | if (*ppos > 0) { |
154 | *lenp = 0; | 156 | *lenp = 0; |
155 | return 0; | 157 | return 0; |
156 | } | 158 | } |
@@ -163,7 +165,7 @@ static int procctl_frv_pin_cxnr(ctl_table *table, int write, struct file *filp, | |||
163 | return -EFAULT; | 165 | return -EFAULT; |
164 | 166 | ||
165 | *lenp = len; | 167 | *lenp = len; |
166 | filp->f_pos = len; | 168 | *ppos = len; |
167 | return 0; | 169 | return 0; |
168 | 170 | ||
169 | } /* end procctl_frv_pin_cxnr() */ | 171 | } /* end procctl_frv_pin_cxnr() */ |
diff --git a/arch/h8300/include/asm/scatterlist.h b/arch/h8300/include/asm/scatterlist.h index d3ecdd87ac90..de08a4a2cc1c 100644 --- a/arch/h8300/include/asm/scatterlist.h +++ b/arch/h8300/include/asm/scatterlist.h | |||
@@ -1,17 +1,7 @@ | |||
1 | #ifndef _H8300_SCATTERLIST_H | 1 | #ifndef _H8300_SCATTERLIST_H |
2 | #define _H8300_SCATTERLIST_H | 2 | #define _H8300_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm/types.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | struct scatterlist { | ||
7 | #ifdef CONFIG_DEBUG_SG | ||
8 | unsigned long sg_magic; | ||
9 | #endif | ||
10 | unsigned long page_link; | ||
11 | unsigned int offset; | ||
12 | dma_addr_t dma_address; | ||
13 | unsigned int length; | ||
14 | }; | ||
15 | 5 | ||
16 | #define ISA_DMA_THRESHOLD (0xffffffff) | 6 | #define ISA_DMA_THRESHOLD (0xffffffff) |
17 | 7 | ||
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig index 9676100b83ee..95610820041e 100644 --- a/arch/ia64/Kconfig +++ b/arch/ia64/Kconfig | |||
@@ -56,6 +56,9 @@ config MMU | |||
56 | config NEED_DMA_MAP_STATE | 56 | config NEED_DMA_MAP_STATE |
57 | def_bool y | 57 | def_bool y |
58 | 58 | ||
59 | config NEED_SG_DMA_LENGTH | ||
60 | def_bool y | ||
61 | |||
59 | config SWIOTLB | 62 | config SWIOTLB |
60 | bool | 63 | bool |
61 | 64 | ||
@@ -495,6 +498,14 @@ config HAVE_ARCH_NODEDATA_EXTENSION | |||
495 | def_bool y | 498 | def_bool y |
496 | depends on NUMA | 499 | depends on NUMA |
497 | 500 | ||
501 | config USE_PERCPU_NUMA_NODE_ID | ||
502 | def_bool y | ||
503 | depends on NUMA | ||
504 | |||
505 | config HAVE_MEMORYLESS_NODES | ||
506 | def_bool y | ||
507 | depends on NUMA | ||
508 | |||
498 | config ARCH_PROC_KCORE_TEXT | 509 | config ARCH_PROC_KCORE_TEXT |
499 | def_bool y | 510 | def_bool y |
500 | depends on PROC_KCORE | 511 | depends on PROC_KCORE |
diff --git a/arch/ia64/include/asm/scatterlist.h b/arch/ia64/include/asm/scatterlist.h index d8e98961dec7..f299a4fb25c8 100644 --- a/arch/ia64/include/asm/scatterlist.h +++ b/arch/ia64/include/asm/scatterlist.h | |||
@@ -1,6 +1,7 @@ | |||
1 | #ifndef _ASM_IA64_SCATTERLIST_H | 1 | #ifndef _ASM_IA64_SCATTERLIST_H |
2 | #define _ASM_IA64_SCATTERLIST_H | 2 | #define _ASM_IA64_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm-generic/scatterlist.h> | ||
4 | /* | 5 | /* |
5 | * It used to be that ISA_DMA_THRESHOLD had something to do with the | 6 | * It used to be that ISA_DMA_THRESHOLD had something to do with the |
6 | * DMA-limits of ISA-devices. Nowadays, its only remaining use (apart | 7 | * DMA-limits of ISA-devices. Nowadays, its only remaining use (apart |
@@ -10,7 +11,6 @@ | |||
10 | * that's 4GB - 1. | 11 | * that's 4GB - 1. |
11 | */ | 12 | */ |
12 | #define ISA_DMA_THRESHOLD 0xffffffff | 13 | #define ISA_DMA_THRESHOLD 0xffffffff |
13 | 14 | #define ARCH_HAS_SG_CHAIN | |
14 | #include <asm-generic/scatterlist.h> | ||
15 | 15 | ||
16 | #endif /* _ASM_IA64_SCATTERLIST_H */ | 16 | #endif /* _ASM_IA64_SCATTERLIST_H */ |
diff --git a/arch/ia64/include/asm/topology.h b/arch/ia64/include/asm/topology.h index d323071d0f91..09f646753d1a 100644 --- a/arch/ia64/include/asm/topology.h +++ b/arch/ia64/include/asm/topology.h | |||
@@ -26,11 +26,6 @@ | |||
26 | #define RECLAIM_DISTANCE 15 | 26 | #define RECLAIM_DISTANCE 15 |
27 | 27 | ||
28 | /* | 28 | /* |
29 | * Returns the number of the node containing CPU 'cpu' | ||
30 | */ | ||
31 | #define cpu_to_node(cpu) (int)(cpu_to_node_map[cpu]) | ||
32 | |||
33 | /* | ||
34 | * Returns a bitmask of CPUs on Node 'node'. | 29 | * Returns a bitmask of CPUs on Node 'node'. |
35 | */ | 30 | */ |
36 | #define cpumask_of_node(node) ((node) == -1 ? \ | 31 | #define cpumask_of_node(node) ((node) == -1 ? \ |
diff --git a/arch/ia64/kernel/pci-swiotlb.c b/arch/ia64/kernel/pci-swiotlb.c index 3095654f9ab3..d9485d952ed0 100644 --- a/arch/ia64/kernel/pci-swiotlb.c +++ b/arch/ia64/kernel/pci-swiotlb.c | |||
@@ -31,8 +31,6 @@ struct dma_map_ops swiotlb_dma_ops = { | |||
31 | .unmap_sg = swiotlb_unmap_sg_attrs, | 31 | .unmap_sg = swiotlb_unmap_sg_attrs, |
32 | .sync_single_for_cpu = swiotlb_sync_single_for_cpu, | 32 | .sync_single_for_cpu = swiotlb_sync_single_for_cpu, |
33 | .sync_single_for_device = swiotlb_sync_single_for_device, | 33 | .sync_single_for_device = swiotlb_sync_single_for_device, |
34 | .sync_single_range_for_cpu = swiotlb_sync_single_range_for_cpu, | ||
35 | .sync_single_range_for_device = swiotlb_sync_single_range_for_device, | ||
36 | .sync_sg_for_cpu = swiotlb_sync_sg_for_cpu, | 34 | .sync_sg_for_cpu = swiotlb_sync_sg_for_cpu, |
37 | .sync_sg_for_device = swiotlb_sync_sg_for_device, | 35 | .sync_sg_for_device = swiotlb_sync_sg_for_device, |
38 | .dma_supported = swiotlb_dma_supported, | 36 | .dma_supported = swiotlb_dma_supported, |
diff --git a/arch/ia64/kernel/ptrace.c b/arch/ia64/kernel/ptrace.c index 0dec7f702448..7c7909f9bc93 100644 --- a/arch/ia64/kernel/ptrace.c +++ b/arch/ia64/kernel/ptrace.c | |||
@@ -638,7 +638,7 @@ ptrace_attach_sync_user_rbs (struct task_struct *child) | |||
638 | */ | 638 | */ |
639 | 639 | ||
640 | read_lock(&tasklist_lock); | 640 | read_lock(&tasklist_lock); |
641 | if (child->signal) { | 641 | if (child->sighand) { |
642 | spin_lock_irq(&child->sighand->siglock); | 642 | spin_lock_irq(&child->sighand->siglock); |
643 | if (child->state == TASK_STOPPED && | 643 | if (child->state == TASK_STOPPED && |
644 | !test_and_set_tsk_thread_flag(child, TIF_RESTORE_RSE)) { | 644 | !test_and_set_tsk_thread_flag(child, TIF_RESTORE_RSE)) { |
@@ -662,7 +662,7 @@ ptrace_attach_sync_user_rbs (struct task_struct *child) | |||
662 | * job control stop, so that SIGCONT can be used to wake it up. | 662 | * job control stop, so that SIGCONT can be used to wake it up. |
663 | */ | 663 | */ |
664 | read_lock(&tasklist_lock); | 664 | read_lock(&tasklist_lock); |
665 | if (child->signal) { | 665 | if (child->sighand) { |
666 | spin_lock_irq(&child->sighand->siglock); | 666 | spin_lock_irq(&child->sighand->siglock); |
667 | if (child->state == TASK_TRACED && | 667 | if (child->state == TASK_TRACED && |
668 | (child->signal->flags & SIGNAL_STOP_STOPPED)) { | 668 | (child->signal->flags & SIGNAL_STOP_STOPPED)) { |
diff --git a/arch/ia64/kernel/smpboot.c b/arch/ia64/kernel/smpboot.c index e5230b2ff2c5..518e876a410d 100644 --- a/arch/ia64/kernel/smpboot.c +++ b/arch/ia64/kernel/smpboot.c | |||
@@ -390,6 +390,12 @@ smp_callin (void) | |||
390 | 390 | ||
391 | fix_b0_for_bsp(); | 391 | fix_b0_for_bsp(); |
392 | 392 | ||
393 | /* | ||
394 | * numa_node_id() works after this. | ||
395 | */ | ||
396 | set_numa_node(cpu_to_node_map[cpuid]); | ||
397 | set_numa_mem(local_memory_node(cpu_to_node_map[cpuid])); | ||
398 | |||
393 | ipi_call_lock_irq(); | 399 | ipi_call_lock_irq(); |
394 | spin_lock(&vector_lock); | 400 | spin_lock(&vector_lock); |
395 | /* Setup the per cpu irq handling data structures */ | 401 | /* Setup the per cpu irq handling data structures */ |
@@ -632,6 +638,7 @@ void __devinit smp_prepare_boot_cpu(void) | |||
632 | { | 638 | { |
633 | cpu_set(smp_processor_id(), cpu_online_map); | 639 | cpu_set(smp_processor_id(), cpu_online_map); |
634 | cpu_set(smp_processor_id(), cpu_callin_map); | 640 | cpu_set(smp_processor_id(), cpu_callin_map); |
641 | set_numa_node(cpu_to_node_map[smp_processor_id()]); | ||
635 | per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE; | 642 | per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE; |
636 | paravirt_post_smp_prepare_boot_cpu(); | 643 | paravirt_post_smp_prepare_boot_cpu(); |
637 | } | 644 | } |
diff --git a/arch/m32r/include/asm/scatterlist.h b/arch/m32r/include/asm/scatterlist.h index 1ed372c73d0b..aeeddd8dac17 100644 --- a/arch/m32r/include/asm/scatterlist.h +++ b/arch/m32r/include/asm/scatterlist.h | |||
@@ -1,20 +1,7 @@ | |||
1 | #ifndef _ASM_M32R_SCATTERLIST_H | 1 | #ifndef _ASM_M32R_SCATTERLIST_H |
2 | #define _ASM_M32R_SCATTERLIST_H | 2 | #define _ASM_M32R_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm/types.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | struct scatterlist { | ||
7 | #ifdef CONFIG_DEBUG_SG | ||
8 | unsigned long sg_magic; | ||
9 | #endif | ||
10 | char * address; /* Location data is to be transferred to, NULL for | ||
11 | * highmem page */ | ||
12 | unsigned long page_link; | ||
13 | unsigned int offset;/* for highmem, page offset */ | ||
14 | |||
15 | dma_addr_t dma_address; | ||
16 | unsigned int length; | ||
17 | }; | ||
18 | 5 | ||
19 | #define ISA_DMA_THRESHOLD (0x1fffffff) | 6 | #define ISA_DMA_THRESHOLD (0x1fffffff) |
20 | 7 | ||
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig index b5da298ba61d..2e3737b92ffc 100644 --- a/arch/m68k/Kconfig +++ b/arch/m68k/Kconfig | |||
@@ -7,6 +7,7 @@ config M68K | |||
7 | default y | 7 | default y |
8 | select HAVE_AOUT | 8 | select HAVE_AOUT |
9 | select HAVE_IDE | 9 | select HAVE_IDE |
10 | select GENERIC_ATOMIC64 | ||
10 | 11 | ||
11 | config MMU | 12 | config MMU |
12 | bool | 13 | bool |
diff --git a/arch/m68k/amiga/config.c b/arch/m68k/amiga/config.c index d2cc35d98532..b1577f741fa8 100644 --- a/arch/m68k/amiga/config.c +++ b/arch/m68k/amiga/config.c | |||
@@ -97,10 +97,6 @@ static void amiga_get_model(char *model); | |||
97 | static void amiga_get_hardware_list(struct seq_file *m); | 97 | static void amiga_get_hardware_list(struct seq_file *m); |
98 | /* amiga specific timer functions */ | 98 | /* amiga specific timer functions */ |
99 | static unsigned long amiga_gettimeoffset(void); | 99 | static unsigned long amiga_gettimeoffset(void); |
100 | static int a3000_hwclk(int, struct rtc_time *); | ||
101 | static int a2000_hwclk(int, struct rtc_time *); | ||
102 | static int amiga_set_clock_mmss(unsigned long); | ||
103 | static unsigned int amiga_get_ss(void); | ||
104 | extern void amiga_mksound(unsigned int count, unsigned int ticks); | 100 | extern void amiga_mksound(unsigned int count, unsigned int ticks); |
105 | static void amiga_reset(void); | 101 | static void amiga_reset(void); |
106 | extern void amiga_init_sound(void); | 102 | extern void amiga_init_sound(void); |
@@ -138,10 +134,6 @@ static struct { | |||
138 | } | 134 | } |
139 | }; | 135 | }; |
140 | 136 | ||
141 | static struct resource rtc_resource = { | ||
142 | .start = 0x00dc0000, .end = 0x00dcffff | ||
143 | }; | ||
144 | |||
145 | static struct resource ram_resource[NUM_MEMINFO]; | 137 | static struct resource ram_resource[NUM_MEMINFO]; |
146 | 138 | ||
147 | 139 | ||
@@ -387,15 +379,6 @@ void __init config_amiga(void) | |||
387 | mach_get_model = amiga_get_model; | 379 | mach_get_model = amiga_get_model; |
388 | mach_get_hardware_list = amiga_get_hardware_list; | 380 | mach_get_hardware_list = amiga_get_hardware_list; |
389 | mach_gettimeoffset = amiga_gettimeoffset; | 381 | mach_gettimeoffset = amiga_gettimeoffset; |
390 | if (AMIGAHW_PRESENT(A3000_CLK)) { | ||
391 | mach_hwclk = a3000_hwclk; | ||
392 | rtc_resource.name = "A3000 RTC"; | ||
393 | request_resource(&iomem_resource, &rtc_resource); | ||
394 | } else /* if (AMIGAHW_PRESENT(A2000_CLK)) */ { | ||
395 | mach_hwclk = a2000_hwclk; | ||
396 | rtc_resource.name = "A2000 RTC"; | ||
397 | request_resource(&iomem_resource, &rtc_resource); | ||
398 | } | ||
399 | 382 | ||
400 | /* | 383 | /* |
401 | * default MAX_DMA=0xffffffff on all machines. If we don't do so, the SCSI | 384 | * default MAX_DMA=0xffffffff on all machines. If we don't do so, the SCSI |
@@ -404,8 +387,6 @@ void __init config_amiga(void) | |||
404 | */ | 387 | */ |
405 | mach_max_dma_address = 0xffffffff; | 388 | mach_max_dma_address = 0xffffffff; |
406 | 389 | ||
407 | mach_set_clock_mmss = amiga_set_clock_mmss; | ||
408 | mach_get_ss = amiga_get_ss; | ||
409 | mach_reset = amiga_reset; | 390 | mach_reset = amiga_reset; |
410 | #if defined(CONFIG_INPUT_M68K_BEEP) || defined(CONFIG_INPUT_M68K_BEEP_MODULE) | 391 | #if defined(CONFIG_INPUT_M68K_BEEP) || defined(CONFIG_INPUT_M68K_BEEP_MODULE) |
411 | mach_beep = amiga_mksound; | 392 | mach_beep = amiga_mksound; |
@@ -530,161 +511,6 @@ static unsigned long amiga_gettimeoffset(void) | |||
530 | return ticks + offset; | 511 | return ticks + offset; |
531 | } | 512 | } |
532 | 513 | ||
533 | static int a3000_hwclk(int op, struct rtc_time *t) | ||
534 | { | ||
535 | tod_3000.cntrl1 = TOD3000_CNTRL1_HOLD; | ||
536 | |||
537 | if (!op) { /* read */ | ||
538 | t->tm_sec = tod_3000.second1 * 10 + tod_3000.second2; | ||
539 | t->tm_min = tod_3000.minute1 * 10 + tod_3000.minute2; | ||
540 | t->tm_hour = tod_3000.hour1 * 10 + tod_3000.hour2; | ||
541 | t->tm_mday = tod_3000.day1 * 10 + tod_3000.day2; | ||
542 | t->tm_wday = tod_3000.weekday; | ||
543 | t->tm_mon = tod_3000.month1 * 10 + tod_3000.month2 - 1; | ||
544 | t->tm_year = tod_3000.year1 * 10 + tod_3000.year2; | ||
545 | if (t->tm_year <= 69) | ||
546 | t->tm_year += 100; | ||
547 | } else { | ||
548 | tod_3000.second1 = t->tm_sec / 10; | ||
549 | tod_3000.second2 = t->tm_sec % 10; | ||
550 | tod_3000.minute1 = t->tm_min / 10; | ||
551 | tod_3000.minute2 = t->tm_min % 10; | ||
552 | tod_3000.hour1 = t->tm_hour / 10; | ||
553 | tod_3000.hour2 = t->tm_hour % 10; | ||
554 | tod_3000.day1 = t->tm_mday / 10; | ||
555 | tod_3000.day2 = t->tm_mday % 10; | ||
556 | if (t->tm_wday != -1) | ||
557 | tod_3000.weekday = t->tm_wday; | ||
558 | tod_3000.month1 = (t->tm_mon + 1) / 10; | ||
559 | tod_3000.month2 = (t->tm_mon + 1) % 10; | ||
560 | if (t->tm_year >= 100) | ||
561 | t->tm_year -= 100; | ||
562 | tod_3000.year1 = t->tm_year / 10; | ||
563 | tod_3000.year2 = t->tm_year % 10; | ||
564 | } | ||
565 | |||
566 | tod_3000.cntrl1 = TOD3000_CNTRL1_FREE; | ||
567 | |||
568 | return 0; | ||
569 | } | ||
570 | |||
571 | static int a2000_hwclk(int op, struct rtc_time *t) | ||
572 | { | ||
573 | int cnt = 5; | ||
574 | |||
575 | tod_2000.cntrl1 = TOD2000_CNTRL1_HOLD; | ||
576 | |||
577 | while ((tod_2000.cntrl1 & TOD2000_CNTRL1_BUSY) && cnt) { | ||
578 | tod_2000.cntrl1 &= ~TOD2000_CNTRL1_HOLD; | ||
579 | udelay(70); | ||
580 | tod_2000.cntrl1 |= TOD2000_CNTRL1_HOLD; | ||
581 | --cnt; | ||
582 | } | ||
583 | |||
584 | if (!cnt) | ||
585 | printk(KERN_INFO "hwclk: timed out waiting for RTC (0x%x)\n", | ||
586 | tod_2000.cntrl1); | ||
587 | |||
588 | if (!op) { /* read */ | ||
589 | t->tm_sec = tod_2000.second1 * 10 + tod_2000.second2; | ||
590 | t->tm_min = tod_2000.minute1 * 10 + tod_2000.minute2; | ||
591 | t->tm_hour = (tod_2000.hour1 & 3) * 10 + tod_2000.hour2; | ||
592 | t->tm_mday = tod_2000.day1 * 10 + tod_2000.day2; | ||
593 | t->tm_wday = tod_2000.weekday; | ||
594 | t->tm_mon = tod_2000.month1 * 10 + tod_2000.month2 - 1; | ||
595 | t->tm_year = tod_2000.year1 * 10 + tod_2000.year2; | ||
596 | if (t->tm_year <= 69) | ||
597 | t->tm_year += 100; | ||
598 | |||
599 | if (!(tod_2000.cntrl3 & TOD2000_CNTRL3_24HMODE)) { | ||
600 | if (!(tod_2000.hour1 & TOD2000_HOUR1_PM) && t->tm_hour == 12) | ||
601 | t->tm_hour = 0; | ||
602 | else if ((tod_2000.hour1 & TOD2000_HOUR1_PM) && t->tm_hour != 12) | ||
603 | t->tm_hour += 12; | ||
604 | } | ||
605 | } else { | ||
606 | tod_2000.second1 = t->tm_sec / 10; | ||
607 | tod_2000.second2 = t->tm_sec % 10; | ||
608 | tod_2000.minute1 = t->tm_min / 10; | ||
609 | tod_2000.minute2 = t->tm_min % 10; | ||
610 | if (tod_2000.cntrl3 & TOD2000_CNTRL3_24HMODE) | ||
611 | tod_2000.hour1 = t->tm_hour / 10; | ||
612 | else if (t->tm_hour >= 12) | ||
613 | tod_2000.hour1 = TOD2000_HOUR1_PM + | ||
614 | (t->tm_hour - 12) / 10; | ||
615 | else | ||
616 | tod_2000.hour1 = t->tm_hour / 10; | ||
617 | tod_2000.hour2 = t->tm_hour % 10; | ||
618 | tod_2000.day1 = t->tm_mday / 10; | ||
619 | tod_2000.day2 = t->tm_mday % 10; | ||
620 | if (t->tm_wday != -1) | ||
621 | tod_2000.weekday = t->tm_wday; | ||
622 | tod_2000.month1 = (t->tm_mon + 1) / 10; | ||
623 | tod_2000.month2 = (t->tm_mon + 1) % 10; | ||
624 | if (t->tm_year >= 100) | ||
625 | t->tm_year -= 100; | ||
626 | tod_2000.year1 = t->tm_year / 10; | ||
627 | tod_2000.year2 = t->tm_year % 10; | ||
628 | } | ||
629 | |||
630 | tod_2000.cntrl1 &= ~TOD2000_CNTRL1_HOLD; | ||
631 | |||
632 | return 0; | ||
633 | } | ||
634 | |||
635 | static int amiga_set_clock_mmss(unsigned long nowtime) | ||
636 | { | ||
637 | short real_seconds = nowtime % 60, real_minutes = (nowtime / 60) % 60; | ||
638 | |||
639 | if (AMIGAHW_PRESENT(A3000_CLK)) { | ||
640 | tod_3000.cntrl1 = TOD3000_CNTRL1_HOLD; | ||
641 | |||
642 | tod_3000.second1 = real_seconds / 10; | ||
643 | tod_3000.second2 = real_seconds % 10; | ||
644 | tod_3000.minute1 = real_minutes / 10; | ||
645 | tod_3000.minute2 = real_minutes % 10; | ||
646 | |||
647 | tod_3000.cntrl1 = TOD3000_CNTRL1_FREE; | ||
648 | } else /* if (AMIGAHW_PRESENT(A2000_CLK)) */ { | ||
649 | int cnt = 5; | ||
650 | |||
651 | tod_2000.cntrl1 |= TOD2000_CNTRL1_HOLD; | ||
652 | |||
653 | while ((tod_2000.cntrl1 & TOD2000_CNTRL1_BUSY) && cnt) { | ||
654 | tod_2000.cntrl1 &= ~TOD2000_CNTRL1_HOLD; | ||
655 | udelay(70); | ||
656 | tod_2000.cntrl1 |= TOD2000_CNTRL1_HOLD; | ||
657 | --cnt; | ||
658 | } | ||
659 | |||
660 | if (!cnt) | ||
661 | printk(KERN_INFO "set_clock_mmss: timed out waiting for RTC (0x%x)\n", tod_2000.cntrl1); | ||
662 | |||
663 | tod_2000.second1 = real_seconds / 10; | ||
664 | tod_2000.second2 = real_seconds % 10; | ||
665 | tod_2000.minute1 = real_minutes / 10; | ||
666 | tod_2000.minute2 = real_minutes % 10; | ||
667 | |||
668 | tod_2000.cntrl1 &= ~TOD2000_CNTRL1_HOLD; | ||
669 | } | ||
670 | |||
671 | return 0; | ||
672 | } | ||
673 | |||
674 | static unsigned int amiga_get_ss(void) | ||
675 | { | ||
676 | unsigned int s; | ||
677 | |||
678 | if (AMIGAHW_PRESENT(A3000_CLK)) { | ||
679 | tod_3000.cntrl1 = TOD3000_CNTRL1_HOLD; | ||
680 | s = tod_3000.second1 * 10 + tod_3000.second2; | ||
681 | tod_3000.cntrl1 = TOD3000_CNTRL1_FREE; | ||
682 | } else /* if (AMIGAHW_PRESENT(A2000_CLK)) */ { | ||
683 | s = tod_2000.second1 * 10 + tod_2000.second2; | ||
684 | } | ||
685 | return s; | ||
686 | } | ||
687 | |||
688 | static NORET_TYPE void amiga_reset(void) | 514 | static NORET_TYPE void amiga_reset(void) |
689 | ATTRIB_NORET; | 515 | ATTRIB_NORET; |
690 | 516 | ||
diff --git a/arch/m68k/amiga/platform.c b/arch/m68k/amiga/platform.c index 38f18bf14737..7fd8b41723ea 100644 --- a/arch/m68k/amiga/platform.c +++ b/arch/m68k/amiga/platform.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/zorro.h> | 11 | #include <linux/zorro.h> |
12 | 12 | ||
13 | #include <asm/amigahw.h> | 13 | #include <asm/amigahw.h> |
14 | #include <asm/amigayle.h> | ||
14 | 15 | ||
15 | 16 | ||
16 | #ifdef CONFIG_ZORRO | 17 | #ifdef CONFIG_ZORRO |
@@ -55,11 +56,77 @@ static int __init amiga_init_bus(void) | |||
55 | 56 | ||
56 | subsys_initcall(amiga_init_bus); | 57 | subsys_initcall(amiga_init_bus); |
57 | 58 | ||
58 | #endif /* CONFIG_ZORRO */ | 59 | |
60 | static int z_dev_present(zorro_id id) | ||
61 | { | ||
62 | unsigned int i; | ||
63 | |||
64 | for (i = 0; i < zorro_num_autocon; i++) | ||
65 | if (zorro_autocon[i].rom.er_Manufacturer == ZORRO_MANUF(id) && | ||
66 | zorro_autocon[i].rom.er_Product == ZORRO_PROD(id)) | ||
67 | return 1; | ||
68 | |||
69 | return 0; | ||
70 | } | ||
71 | |||
72 | #else /* !CONFIG_ZORRO */ | ||
73 | |||
74 | static inline int z_dev_present(zorro_id id) { return 0; } | ||
75 | |||
76 | #endif /* !CONFIG_ZORRO */ | ||
77 | |||
78 | |||
79 | static const struct resource a3000_scsi_resource __initconst = { | ||
80 | .start = 0xdd0000, | ||
81 | .end = 0xdd00ff, | ||
82 | .flags = IORESOURCE_MEM, | ||
83 | }; | ||
84 | |||
85 | |||
86 | static const struct resource a4000t_scsi_resource __initconst = { | ||
87 | .start = 0xdd0000, | ||
88 | .end = 0xdd0fff, | ||
89 | .flags = IORESOURCE_MEM, | ||
90 | }; | ||
91 | |||
92 | |||
93 | static const struct resource a1200_ide_resource __initconst = { | ||
94 | .start = 0xda0000, | ||
95 | .end = 0xda1fff, | ||
96 | .flags = IORESOURCE_MEM, | ||
97 | }; | ||
98 | |||
99 | static const struct gayle_ide_platform_data a1200_ide_pdata __initconst = { | ||
100 | .base = 0xda0000, | ||
101 | .irqport = 0xda9000, | ||
102 | .explicit_ack = 1, | ||
103 | }; | ||
104 | |||
105 | |||
106 | static const struct resource a4000_ide_resource __initconst = { | ||
107 | .start = 0xdd2000, | ||
108 | .end = 0xdd3fff, | ||
109 | .flags = IORESOURCE_MEM, | ||
110 | }; | ||
111 | |||
112 | static const struct gayle_ide_platform_data a4000_ide_pdata __initconst = { | ||
113 | .base = 0xdd2020, | ||
114 | .irqport = 0xdd3020, | ||
115 | .explicit_ack = 0, | ||
116 | }; | ||
117 | |||
118 | |||
119 | static const struct resource amiga_rtc_resource __initconst = { | ||
120 | .start = 0x00dc0000, | ||
121 | .end = 0x00dcffff, | ||
122 | .flags = IORESOURCE_MEM, | ||
123 | }; | ||
59 | 124 | ||
60 | 125 | ||
61 | static int __init amiga_init_devices(void) | 126 | static int __init amiga_init_devices(void) |
62 | { | 127 | { |
128 | struct platform_device *pdev; | ||
129 | |||
63 | if (!MACH_IS_AMIGA) | 130 | if (!MACH_IS_AMIGA) |
64 | return -ENODEV; | 131 | return -ENODEV; |
65 | 132 | ||
@@ -77,6 +144,53 @@ static int __init amiga_init_devices(void) | |||
77 | if (AMIGAHW_PRESENT(AMI_FLOPPY)) | 144 | if (AMIGAHW_PRESENT(AMI_FLOPPY)) |
78 | platform_device_register_simple("amiga-floppy", -1, NULL, 0); | 145 | platform_device_register_simple("amiga-floppy", -1, NULL, 0); |
79 | 146 | ||
147 | if (AMIGAHW_PRESENT(A3000_SCSI)) | ||
148 | platform_device_register_simple("amiga-a3000-scsi", -1, | ||
149 | &a3000_scsi_resource, 1); | ||
150 | |||
151 | if (AMIGAHW_PRESENT(A4000_SCSI)) | ||
152 | platform_device_register_simple("amiga-a4000t-scsi", -1, | ||
153 | &a4000t_scsi_resource, 1); | ||
154 | |||
155 | if (AMIGAHW_PRESENT(A1200_IDE) || | ||
156 | z_dev_present(ZORRO_PROD_MTEC_VIPER_MK_V_E_MATRIX_530_SCSI_IDE)) { | ||
157 | pdev = platform_device_register_simple("amiga-gayle-ide", -1, | ||
158 | &a1200_ide_resource, 1); | ||
159 | platform_device_add_data(pdev, &a1200_ide_pdata, | ||
160 | sizeof(a1200_ide_pdata)); | ||
161 | } | ||
162 | |||
163 | if (AMIGAHW_PRESENT(A4000_IDE)) { | ||
164 | pdev = platform_device_register_simple("amiga-gayle-ide", -1, | ||
165 | &a4000_ide_resource, 1); | ||
166 | platform_device_add_data(pdev, &a4000_ide_pdata, | ||
167 | sizeof(a4000_ide_pdata)); | ||
168 | } | ||
169 | |||
170 | |||
171 | /* other I/O hardware */ | ||
172 | if (AMIGAHW_PRESENT(AMI_KEYBOARD)) | ||
173 | platform_device_register_simple("amiga-keyboard", -1, NULL, 0); | ||
174 | |||
175 | if (AMIGAHW_PRESENT(AMI_MOUSE)) | ||
176 | platform_device_register_simple("amiga-mouse", -1, NULL, 0); | ||
177 | |||
178 | if (AMIGAHW_PRESENT(AMI_SERIAL)) | ||
179 | platform_device_register_simple("amiga-serial", -1, NULL, 0); | ||
180 | |||
181 | if (AMIGAHW_PRESENT(AMI_PARALLEL)) | ||
182 | platform_device_register_simple("amiga-parallel", -1, NULL, 0); | ||
183 | |||
184 | |||
185 | /* real time clocks */ | ||
186 | if (AMIGAHW_PRESENT(A2000_CLK)) | ||
187 | platform_device_register_simple("rtc-msm6242", -1, | ||
188 | &amiga_rtc_resource, 1); | ||
189 | |||
190 | if (AMIGAHW_PRESENT(A3000_CLK)) | ||
191 | platform_device_register_simple("rtc-rp5c01", -1, | ||
192 | &amiga_rtc_resource, 1); | ||
193 | |||
80 | return 0; | 194 | return 0; |
81 | } | 195 | } |
82 | 196 | ||
diff --git a/arch/m68k/include/asm/amigayle.h b/arch/m68k/include/asm/amigayle.h index bb5a6aa329f3..a01453d9c231 100644 --- a/arch/m68k/include/asm/amigayle.h +++ b/arch/m68k/include/asm/amigayle.h | |||
@@ -104,4 +104,10 @@ struct GAYLE { | |||
104 | #define GAYLE_CFG_250NS 0x00 | 104 | #define GAYLE_CFG_250NS 0x00 |
105 | #define GAYLE_CFG_720NS 0x0c | 105 | #define GAYLE_CFG_720NS 0x0c |
106 | 106 | ||
107 | struct gayle_ide_platform_data { | ||
108 | unsigned long base; | ||
109 | unsigned long irqport; | ||
110 | int explicit_ack; /* A1200 IDE needs explicit ack */ | ||
111 | }; | ||
112 | |||
107 | #endif /* asm-m68k/amigayle.h */ | 113 | #endif /* asm-m68k/amigayle.h */ |
diff --git a/arch/m68k/include/asm/atomic.h b/arch/m68k/include/asm/atomic.h index 8d29145ebb27..eab36dcacf6c 100644 --- a/arch/m68k/include/asm/atomic.h +++ b/arch/m68k/include/asm/atomic.h | |||
@@ -3,3 +3,5 @@ | |||
3 | #else | 3 | #else |
4 | #include "atomic_mm.h" | 4 | #include "atomic_mm.h" |
5 | #endif | 5 | #endif |
6 | |||
7 | #include <asm-generic/atomic64.h> | ||
diff --git a/arch/m68k/include/asm/cache.h b/arch/m68k/include/asm/cache.h index fed3fd30de7e..ecafbe1718c3 100644 --- a/arch/m68k/include/asm/cache.h +++ b/arch/m68k/include/asm/cache.h | |||
@@ -8,4 +8,6 @@ | |||
8 | #define L1_CACHE_SHIFT 4 | 8 | #define L1_CACHE_SHIFT 4 |
9 | #define L1_CACHE_BYTES (1<< L1_CACHE_SHIFT) | 9 | #define L1_CACHE_BYTES (1<< L1_CACHE_SHIFT) |
10 | 10 | ||
11 | #define ARCH_KMALLOC_MINALIGN L1_CACHE_BYTES | ||
12 | |||
11 | #endif | 13 | #endif |
diff --git a/arch/m68k/include/asm/scatterlist.h b/arch/m68k/include/asm/scatterlist.h index e27ad902b1cf..175da06c6b95 100644 --- a/arch/m68k/include/asm/scatterlist.h +++ b/arch/m68k/include/asm/scatterlist.h | |||
@@ -1,23 +1,9 @@ | |||
1 | #ifndef _M68K_SCATTERLIST_H | 1 | #ifndef _M68K_SCATTERLIST_H |
2 | #define _M68K_SCATTERLIST_H | 2 | #define _M68K_SCATTERLIST_H |
3 | 3 | ||
4 | #include <linux/types.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | struct scatterlist { | ||
7 | #ifdef CONFIG_DEBUG_SG | ||
8 | unsigned long sg_magic; | ||
9 | #endif | ||
10 | unsigned long page_link; | ||
11 | unsigned int offset; | ||
12 | unsigned int length; | ||
13 | |||
14 | dma_addr_t dma_address; /* A place to hang host-specific addresses at. */ | ||
15 | }; | ||
16 | 5 | ||
17 | /* This is bogus and should go away. */ | 6 | /* This is bogus and should go away. */ |
18 | #define ISA_DMA_THRESHOLD (0x00ffffff) | 7 | #define ISA_DMA_THRESHOLD (0x00ffffff) |
19 | 8 | ||
20 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
21 | #define sg_dma_len(sg) ((sg)->length) | ||
22 | |||
23 | #endif /* !(_M68K_SCATTERLIST_H) */ | 9 | #endif /* !(_M68K_SCATTERLIST_H) */ |
diff --git a/arch/microblaze/include/asm/scatterlist.h b/arch/microblaze/include/asm/scatterlist.h index 35d786fe93ae..dc4a8900cc80 100644 --- a/arch/microblaze/include/asm/scatterlist.h +++ b/arch/microblaze/include/asm/scatterlist.h | |||
@@ -1 +1,3 @@ | |||
1 | #include <asm-generic/scatterlist.h> | 1 | #include <asm-generic/scatterlist.h> |
2 | |||
3 | #define ISA_DMA_THRESHOLD (~0UL) | ||
diff --git a/arch/mips/include/asm/scatterlist.h b/arch/mips/include/asm/scatterlist.h index 83d69fe17c9f..9af65e79be36 100644 --- a/arch/mips/include/asm/scatterlist.h +++ b/arch/mips/include/asm/scatterlist.h | |||
@@ -1,27 +1,7 @@ | |||
1 | #ifndef __ASM_SCATTERLIST_H | 1 | #ifndef __ASM_SCATTERLIST_H |
2 | #define __ASM_SCATTERLIST_H | 2 | #define __ASM_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm/types.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | struct scatterlist { | ||
7 | #ifdef CONFIG_DEBUG_SG | ||
8 | unsigned long sg_magic; | ||
9 | #endif | ||
10 | unsigned long page_link; | ||
11 | unsigned int offset; | ||
12 | dma_addr_t dma_address; | ||
13 | unsigned int length; | ||
14 | }; | ||
15 | |||
16 | /* | ||
17 | * These macros should be used after a pci_map_sg call has been done | ||
18 | * to get bus addresses of each of the SG entries and their lengths. | ||
19 | * You should only work with the number of sg entries pci_map_sg | ||
20 | * returns, or alternatively stop on the first sg_dma_len(sg) which | ||
21 | * is 0. | ||
22 | */ | ||
23 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
24 | #define sg_dma_len(sg) ((sg)->length) | ||
25 | 5 | ||
26 | #define ISA_DMA_THRESHOLD (0x00ffffffUL) | 6 | #define ISA_DMA_THRESHOLD (0x00ffffffUL) |
27 | 7 | ||
diff --git a/arch/mn10300/include/asm/scatterlist.h b/arch/mn10300/include/asm/scatterlist.h index 67535901b9ff..7bd00b9e030d 100644 --- a/arch/mn10300/include/asm/scatterlist.h +++ b/arch/mn10300/include/asm/scatterlist.h | |||
@@ -11,45 +11,8 @@ | |||
11 | #ifndef _ASM_SCATTERLIST_H | 11 | #ifndef _ASM_SCATTERLIST_H |
12 | #define _ASM_SCATTERLIST_H | 12 | #define _ASM_SCATTERLIST_H |
13 | 13 | ||
14 | #include <asm/types.h> | 14 | #include <asm-generic/scatterlist.h> |
15 | |||
16 | /* | ||
17 | * Drivers must set either ->address or (preferred) page and ->offset | ||
18 | * to indicate where data must be transferred to/from. | ||
19 | * | ||
20 | * Using page is recommended since it handles highmem data as well as | ||
21 | * low mem. ->address is restricted to data which has a virtual mapping, and | ||
22 | * it will go away in the future. Updating to page can be automated very | ||
23 | * easily -- something like | ||
24 | * | ||
25 | * sg->address = some_ptr; | ||
26 | * | ||
27 | * can be rewritten as | ||
28 | * | ||
29 | * sg_set_page(virt_to_page(some_ptr)); | ||
30 | * sg->offset = (unsigned long) some_ptr & ~PAGE_MASK; | ||
31 | * | ||
32 | * and that's it. There's no excuse for not highmem enabling YOUR driver. /jens | ||
33 | */ | ||
34 | struct scatterlist { | ||
35 | #ifdef CONFIG_DEBUG_SG | ||
36 | unsigned long sg_magic; | ||
37 | #endif | ||
38 | unsigned long page_link; | ||
39 | unsigned int offset; /* for highmem, page offset */ | ||
40 | dma_addr_t dma_address; | ||
41 | unsigned int length; | ||
42 | }; | ||
43 | 15 | ||
44 | #define ISA_DMA_THRESHOLD (0x00ffffff) | 16 | #define ISA_DMA_THRESHOLD (0x00ffffff) |
45 | 17 | ||
46 | /* | ||
47 | * These macros should be used after a pci_map_sg call has been done | ||
48 | * to get bus addresses of each of the SG entries and their lengths. | ||
49 | * You should only work with the number of sg entries pci_map_sg | ||
50 | * returns. | ||
51 | */ | ||
52 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
53 | #define sg_dma_len(sg) ((sg)->length) | ||
54 | |||
55 | #endif /* _ASM_SCATTERLIST_H */ | 18 | #endif /* _ASM_SCATTERLIST_H */ |
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig index 9c4da3d63bfb..05a366a5c4d5 100644 --- a/arch/parisc/Kconfig +++ b/arch/parisc/Kconfig | |||
@@ -98,6 +98,9 @@ config STACKTRACE_SUPPORT | |||
98 | config NEED_DMA_MAP_STATE | 98 | config NEED_DMA_MAP_STATE |
99 | def_bool y | 99 | def_bool y |
100 | 100 | ||
101 | config NEED_SG_DMA_LENGTH | ||
102 | def_bool y | ||
103 | |||
101 | config ISA_DMA_API | 104 | config ISA_DMA_API |
102 | bool | 105 | bool |
103 | 106 | ||
diff --git a/arch/parisc/include/asm/scatterlist.h b/arch/parisc/include/asm/scatterlist.h index 62269b31ebf4..2c3b79b54b28 100644 --- a/arch/parisc/include/asm/scatterlist.h +++ b/arch/parisc/include/asm/scatterlist.h | |||
@@ -3,25 +3,9 @@ | |||
3 | 3 | ||
4 | #include <asm/page.h> | 4 | #include <asm/page.h> |
5 | #include <asm/types.h> | 5 | #include <asm/types.h> |
6 | 6 | #include <asm-generic/scatterlist.h> | |
7 | struct scatterlist { | ||
8 | #ifdef CONFIG_DEBUG_SG | ||
9 | unsigned long sg_magic; | ||
10 | #endif | ||
11 | unsigned long page_link; | ||
12 | unsigned int offset; | ||
13 | |||
14 | unsigned int length; | ||
15 | |||
16 | /* an IOVA can be 64-bits on some PA-Risc platforms. */ | ||
17 | dma_addr_t iova; /* I/O Virtual Address */ | ||
18 | __u32 iova_length; /* bytes mapped */ | ||
19 | }; | ||
20 | |||
21 | #define sg_virt_addr(sg) ((unsigned long)sg_virt(sg)) | ||
22 | #define sg_dma_address(sg) ((sg)->iova) | ||
23 | #define sg_dma_len(sg) ((sg)->iova_length) | ||
24 | 7 | ||
25 | #define ISA_DMA_THRESHOLD (~0UL) | 8 | #define ISA_DMA_THRESHOLD (~0UL) |
9 | #define sg_virt_addr(sg) ((unsigned long)sg_virt(sg)) | ||
26 | 10 | ||
27 | #endif /* _ASM_PARISC_SCATTERLIST_H */ | 11 | #endif /* _ASM_PARISC_SCATTERLIST_H */ |
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index c4c4549c22bb..66a315e06dce 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig | |||
@@ -663,6 +663,9 @@ config ZONE_DMA | |||
663 | config NEED_DMA_MAP_STATE | 663 | config NEED_DMA_MAP_STATE |
664 | def_bool (PPC64 || NOT_COHERENT_CACHE) | 664 | def_bool (PPC64 || NOT_COHERENT_CACHE) |
665 | 665 | ||
666 | config NEED_SG_DMA_LENGTH | ||
667 | def_bool y | ||
668 | |||
666 | config GENERIC_ISA_DMA | 669 | config GENERIC_ISA_DMA |
667 | bool | 670 | bool |
668 | depends on PPC64 || POWER4 || 6xx && !CPM2 | 671 | depends on PPC64 || POWER4 || 6xx && !CPM2 |
diff --git a/arch/powerpc/include/asm/scatterlist.h b/arch/powerpc/include/asm/scatterlist.h index 912bf597870f..34cc78fd0ef4 100644 --- a/arch/powerpc/include/asm/scatterlist.h +++ b/arch/powerpc/include/asm/scatterlist.h | |||
@@ -9,38 +9,12 @@ | |||
9 | * 2 of the License, or (at your option) any later version. | 9 | * 2 of the License, or (at your option) any later version. |
10 | */ | 10 | */ |
11 | 11 | ||
12 | #ifdef __KERNEL__ | ||
13 | #include <linux/types.h> | ||
14 | #include <asm/dma.h> | 12 | #include <asm/dma.h> |
15 | 13 | #include <asm-generic/scatterlist.h> | |
16 | struct scatterlist { | ||
17 | #ifdef CONFIG_DEBUG_SG | ||
18 | unsigned long sg_magic; | ||
19 | #endif | ||
20 | unsigned long page_link; | ||
21 | unsigned int offset; | ||
22 | unsigned int length; | ||
23 | |||
24 | /* For TCE or SWIOTLB support */ | ||
25 | dma_addr_t dma_address; | ||
26 | u32 dma_length; | ||
27 | }; | ||
28 | |||
29 | /* | ||
30 | * These macros should be used after a dma_map_sg call has been done | ||
31 | * to get bus addresses of each of the SG entries and their lengths. | ||
32 | * You should only work with the number of sg entries pci_map_sg | ||
33 | * returns, or alternatively stop on the first sg_dma_len(sg) which | ||
34 | * is 0. | ||
35 | */ | ||
36 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
37 | #define sg_dma_len(sg) ((sg)->dma_length) | ||
38 | 14 | ||
39 | #ifdef __powerpc64__ | 15 | #ifdef __powerpc64__ |
40 | #define ISA_DMA_THRESHOLD (~0UL) | 16 | #define ISA_DMA_THRESHOLD (~0UL) |
41 | #endif | 17 | #endif |
42 | |||
43 | #define ARCH_HAS_SG_CHAIN | 18 | #define ARCH_HAS_SG_CHAIN |
44 | 19 | ||
45 | #endif /* __KERNEL__ */ | ||
46 | #endif /* _ASM_POWERPC_SCATTERLIST_H */ | 20 | #endif /* _ASM_POWERPC_SCATTERLIST_H */ |
diff --git a/arch/powerpc/include/asm/sfp-machine.h b/arch/powerpc/include/asm/sfp-machine.h index 8b8fab91ad1e..3a7a67a0d006 100644 --- a/arch/powerpc/include/asm/sfp-machine.h +++ b/arch/powerpc/include/asm/sfp-machine.h | |||
@@ -353,6 +353,12 @@ | |||
353 | #define abort() \ | 353 | #define abort() \ |
354 | return 0 | 354 | return 0 |
355 | 355 | ||
356 | #ifdef __BIG_ENDIAN | ||
357 | #define __BYTE_ORDER __BIG_ENDIAN | ||
358 | #else | ||
359 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
360 | #endif | ||
361 | |||
356 | /* Exception flags. */ | 362 | /* Exception flags. */ |
357 | #define EFLAG_INVALID (1 << (31 - 2)) | 363 | #define EFLAG_INVALID (1 << (31 - 2)) |
358 | #define EFLAG_OVERFLOW (1 << (31 - 3)) | 364 | #define EFLAG_OVERFLOW (1 << (31 - 3)) |
diff --git a/arch/powerpc/kernel/dma-swiotlb.c b/arch/powerpc/kernel/dma-swiotlb.c index 4ff4da2c238b..e7fe218b8697 100644 --- a/arch/powerpc/kernel/dma-swiotlb.c +++ b/arch/powerpc/kernel/dma-swiotlb.c | |||
@@ -39,8 +39,8 @@ struct dma_map_ops swiotlb_dma_ops = { | |||
39 | .dma_supported = swiotlb_dma_supported, | 39 | .dma_supported = swiotlb_dma_supported, |
40 | .map_page = swiotlb_map_page, | 40 | .map_page = swiotlb_map_page, |
41 | .unmap_page = swiotlb_unmap_page, | 41 | .unmap_page = swiotlb_unmap_page, |
42 | .sync_single_range_for_cpu = swiotlb_sync_single_range_for_cpu, | 42 | .sync_single_for_cpu = swiotlb_sync_single_for_cpu, |
43 | .sync_single_range_for_device = swiotlb_sync_single_range_for_device, | 43 | .sync_single_for_device = swiotlb_sync_single_for_device, |
44 | .sync_sg_for_cpu = swiotlb_sync_sg_for_cpu, | 44 | .sync_sg_for_cpu = swiotlb_sync_sg_for_cpu, |
45 | .sync_sg_for_device = swiotlb_sync_sg_for_device, | 45 | .sync_sg_for_device = swiotlb_sync_sg_for_device, |
46 | .mapping_error = swiotlb_dma_mapping_error, | 46 | .mapping_error = swiotlb_dma_mapping_error, |
diff --git a/arch/powerpc/kernel/dma.c b/arch/powerpc/kernel/dma.c index 6c1df5757cd6..8d1de6f31d5a 100644 --- a/arch/powerpc/kernel/dma.c +++ b/arch/powerpc/kernel/dma.c | |||
@@ -127,11 +127,11 @@ static inline void dma_direct_sync_sg(struct device *dev, | |||
127 | __dma_sync_page(sg_page(sg), sg->offset, sg->length, direction); | 127 | __dma_sync_page(sg_page(sg), sg->offset, sg->length, direction); |
128 | } | 128 | } |
129 | 129 | ||
130 | static inline void dma_direct_sync_single_range(struct device *dev, | 130 | static inline void dma_direct_sync_single(struct device *dev, |
131 | dma_addr_t dma_handle, unsigned long offset, size_t size, | 131 | dma_addr_t dma_handle, size_t size, |
132 | enum dma_data_direction direction) | 132 | enum dma_data_direction direction) |
133 | { | 133 | { |
134 | __dma_sync(bus_to_virt(dma_handle+offset), size, direction); | 134 | __dma_sync(bus_to_virt(dma_handle), size, direction); |
135 | } | 135 | } |
136 | #endif | 136 | #endif |
137 | 137 | ||
@@ -144,8 +144,8 @@ struct dma_map_ops dma_direct_ops = { | |||
144 | .map_page = dma_direct_map_page, | 144 | .map_page = dma_direct_map_page, |
145 | .unmap_page = dma_direct_unmap_page, | 145 | .unmap_page = dma_direct_unmap_page, |
146 | #ifdef CONFIG_NOT_COHERENT_CACHE | 146 | #ifdef CONFIG_NOT_COHERENT_CACHE |
147 | .sync_single_range_for_cpu = dma_direct_sync_single_range, | 147 | .sync_single_for_cpu = dma_direct_sync_single, |
148 | .sync_single_range_for_device = dma_direct_sync_single_range, | 148 | .sync_single_for_device = dma_direct_sync_single, |
149 | .sync_sg_for_cpu = dma_direct_sync_sg, | 149 | .sync_sg_for_cpu = dma_direct_sync_sg, |
150 | .sync_sg_for_device = dma_direct_sync_sg, | 150 | .sync_sg_for_device = dma_direct_sync_sg, |
151 | #endif | 151 | #endif |
diff --git a/arch/powerpc/sysdev/fsl_rio.c b/arch/powerpc/sysdev/fsl_rio.c index 6a1fde0d22b0..cd37e49e7034 100644 --- a/arch/powerpc/sysdev/fsl_rio.c +++ b/arch/powerpc/sysdev/fsl_rio.c | |||
@@ -1,6 +1,15 @@ | |||
1 | /* | 1 | /* |
2 | * Freescale MPC85xx/MPC86xx RapidIO support | 2 | * Freescale MPC85xx/MPC86xx RapidIO support |
3 | * | 3 | * |
4 | * Copyright 2009 Sysgo AG | ||
5 | * Thomas Moll <thomas.moll@sysgo.com> | ||
6 | * - fixed maintenance access routines, check for aligned access | ||
7 | * | ||
8 | * Copyright 2009 Integrated Device Technology, Inc. | ||
9 | * Alex Bounine <alexandre.bounine@idt.com> | ||
10 | * - Added Port-Write message handling | ||
11 | * - Added Machine Check exception handling | ||
12 | * | ||
4 | * Copyright (C) 2007, 2008 Freescale Semiconductor, Inc. | 13 | * Copyright (C) 2007, 2008 Freescale Semiconductor, Inc. |
5 | * Zhang Wei <wei.zhang@freescale.com> | 14 | * Zhang Wei <wei.zhang@freescale.com> |
6 | * | 15 | * |
@@ -24,19 +33,30 @@ | |||
24 | #include <linux/of_platform.h> | 33 | #include <linux/of_platform.h> |
25 | #include <linux/delay.h> | 34 | #include <linux/delay.h> |
26 | #include <linux/slab.h> | 35 | #include <linux/slab.h> |
36 | #include <linux/kfifo.h> | ||
27 | 37 | ||
28 | #include <asm/io.h> | 38 | #include <asm/io.h> |
39 | #include <asm/machdep.h> | ||
40 | #include <asm/uaccess.h> | ||
41 | |||
42 | #undef DEBUG_PW /* Port-Write debugging */ | ||
29 | 43 | ||
30 | /* RapidIO definition irq, which read from OF-tree */ | 44 | /* RapidIO definition irq, which read from OF-tree */ |
31 | #define IRQ_RIO_BELL(m) (((struct rio_priv *)(m->priv))->bellirq) | 45 | #define IRQ_RIO_BELL(m) (((struct rio_priv *)(m->priv))->bellirq) |
32 | #define IRQ_RIO_TX(m) (((struct rio_priv *)(m->priv))->txirq) | 46 | #define IRQ_RIO_TX(m) (((struct rio_priv *)(m->priv))->txirq) |
33 | #define IRQ_RIO_RX(m) (((struct rio_priv *)(m->priv))->rxirq) | 47 | #define IRQ_RIO_RX(m) (((struct rio_priv *)(m->priv))->rxirq) |
48 | #define IRQ_RIO_PW(m) (((struct rio_priv *)(m->priv))->pwirq) | ||
34 | 49 | ||
35 | #define RIO_ATMU_REGS_OFFSET 0x10c00 | 50 | #define RIO_ATMU_REGS_OFFSET 0x10c00 |
36 | #define RIO_P_MSG_REGS_OFFSET 0x11000 | 51 | #define RIO_P_MSG_REGS_OFFSET 0x11000 |
37 | #define RIO_S_MSG_REGS_OFFSET 0x13000 | 52 | #define RIO_S_MSG_REGS_OFFSET 0x13000 |
38 | #define RIO_ESCSR 0x158 | 53 | #define RIO_ESCSR 0x158 |
39 | #define RIO_CCSR 0x15c | 54 | #define RIO_CCSR 0x15c |
55 | #define RIO_LTLEDCSR 0x0608 | ||
56 | #define RIO_LTLEDCSR_IER 0x80000000 | ||
57 | #define RIO_LTLEDCSR_PRT 0x01000000 | ||
58 | #define RIO_LTLEECSR 0x060c | ||
59 | #define RIO_EPWISR 0x10010 | ||
40 | #define RIO_ISR_AACR 0x10120 | 60 | #define RIO_ISR_AACR 0x10120 |
41 | #define RIO_ISR_AACR_AA 0x1 /* Accept All ID */ | 61 | #define RIO_ISR_AACR_AA 0x1 /* Accept All ID */ |
42 | #define RIO_MAINT_WIN_SIZE 0x400000 | 62 | #define RIO_MAINT_WIN_SIZE 0x400000 |
@@ -55,6 +75,18 @@ | |||
55 | #define RIO_MSG_ISR_QFI 0x00000010 | 75 | #define RIO_MSG_ISR_QFI 0x00000010 |
56 | #define RIO_MSG_ISR_DIQI 0x00000001 | 76 | #define RIO_MSG_ISR_DIQI 0x00000001 |
57 | 77 | ||
78 | #define RIO_IPWMR_SEN 0x00100000 | ||
79 | #define RIO_IPWMR_QFIE 0x00000100 | ||
80 | #define RIO_IPWMR_EIE 0x00000020 | ||
81 | #define RIO_IPWMR_CQ 0x00000002 | ||
82 | #define RIO_IPWMR_PWE 0x00000001 | ||
83 | |||
84 | #define RIO_IPWSR_QF 0x00100000 | ||
85 | #define RIO_IPWSR_TE 0x00000080 | ||
86 | #define RIO_IPWSR_QFI 0x00000010 | ||
87 | #define RIO_IPWSR_PWD 0x00000008 | ||
88 | #define RIO_IPWSR_PWB 0x00000004 | ||
89 | |||
58 | #define RIO_MSG_DESC_SIZE 32 | 90 | #define RIO_MSG_DESC_SIZE 32 |
59 | #define RIO_MSG_BUFFER_SIZE 4096 | 91 | #define RIO_MSG_BUFFER_SIZE 4096 |
60 | #define RIO_MIN_TX_RING_SIZE 2 | 92 | #define RIO_MIN_TX_RING_SIZE 2 |
@@ -121,7 +153,7 @@ struct rio_msg_regs { | |||
121 | u32 pad10[26]; | 153 | u32 pad10[26]; |
122 | u32 pwmr; | 154 | u32 pwmr; |
123 | u32 pwsr; | 155 | u32 pwsr; |
124 | u32 pad11; | 156 | u32 epwqbar; |
125 | u32 pwqbar; | 157 | u32 pwqbar; |
126 | }; | 158 | }; |
127 | 159 | ||
@@ -160,6 +192,14 @@ struct rio_msg_rx_ring { | |||
160 | void *dev_id; | 192 | void *dev_id; |
161 | }; | 193 | }; |
162 | 194 | ||
195 | struct rio_port_write_msg { | ||
196 | void *virt; | ||
197 | dma_addr_t phys; | ||
198 | u32 msg_count; | ||
199 | u32 err_count; | ||
200 | u32 discard_count; | ||
201 | }; | ||
202 | |||
163 | struct rio_priv { | 203 | struct rio_priv { |
164 | struct device *dev; | 204 | struct device *dev; |
165 | void __iomem *regs_win; | 205 | void __iomem *regs_win; |
@@ -172,11 +212,64 @@ struct rio_priv { | |||
172 | struct rio_dbell_ring dbell_ring; | 212 | struct rio_dbell_ring dbell_ring; |
173 | struct rio_msg_tx_ring msg_tx_ring; | 213 | struct rio_msg_tx_ring msg_tx_ring; |
174 | struct rio_msg_rx_ring msg_rx_ring; | 214 | struct rio_msg_rx_ring msg_rx_ring; |
215 | struct rio_port_write_msg port_write_msg; | ||
175 | int bellirq; | 216 | int bellirq; |
176 | int txirq; | 217 | int txirq; |
177 | int rxirq; | 218 | int rxirq; |
219 | int pwirq; | ||
220 | struct work_struct pw_work; | ||
221 | struct kfifo pw_fifo; | ||
222 | spinlock_t pw_fifo_lock; | ||
178 | }; | 223 | }; |
179 | 224 | ||
225 | #define __fsl_read_rio_config(x, addr, err, op) \ | ||
226 | __asm__ __volatile__( \ | ||
227 | "1: "op" %1,0(%2)\n" \ | ||
228 | " eieio\n" \ | ||
229 | "2:\n" \ | ||
230 | ".section .fixup,\"ax\"\n" \ | ||
231 | "3: li %1,-1\n" \ | ||
232 | " li %0,%3\n" \ | ||
233 | " b 2b\n" \ | ||
234 | ".section __ex_table,\"a\"\n" \ | ||
235 | " .align 2\n" \ | ||
236 | " .long 1b,3b\n" \ | ||
237 | ".text" \ | ||
238 | : "=r" (err), "=r" (x) \ | ||
239 | : "b" (addr), "i" (-EFAULT), "0" (err)) | ||
240 | |||
241 | static void __iomem *rio_regs_win; | ||
242 | |||
243 | static int (*saved_mcheck_exception)(struct pt_regs *regs); | ||
244 | |||
245 | static int fsl_rio_mcheck_exception(struct pt_regs *regs) | ||
246 | { | ||
247 | const struct exception_table_entry *entry = NULL; | ||
248 | unsigned long reason = (mfspr(SPRN_MCSR) & MCSR_MASK); | ||
249 | |||
250 | if (reason & MCSR_BUS_RBERR) { | ||
251 | reason = in_be32((u32 *)(rio_regs_win + RIO_LTLEDCSR)); | ||
252 | if (reason & (RIO_LTLEDCSR_IER | RIO_LTLEDCSR_PRT)) { | ||
253 | /* Check if we are prepared to handle this fault */ | ||
254 | entry = search_exception_tables(regs->nip); | ||
255 | if (entry) { | ||
256 | pr_debug("RIO: %s - MC Exception handled\n", | ||
257 | __func__); | ||
258 | out_be32((u32 *)(rio_regs_win + RIO_LTLEDCSR), | ||
259 | 0); | ||
260 | regs->msr |= MSR_RI; | ||
261 | regs->nip = entry->fixup; | ||
262 | return 1; | ||
263 | } | ||
264 | } | ||
265 | } | ||
266 | |||
267 | if (saved_mcheck_exception) | ||
268 | return saved_mcheck_exception(regs); | ||
269 | else | ||
270 | return cur_cpu_spec->machine_check(regs); | ||
271 | } | ||
272 | |||
180 | /** | 273 | /** |
181 | * fsl_rio_doorbell_send - Send a MPC85xx doorbell message | 274 | * fsl_rio_doorbell_send - Send a MPC85xx doorbell message |
182 | * @mport: RapidIO master port info | 275 | * @mport: RapidIO master port info |
@@ -277,27 +370,44 @@ fsl_rio_config_read(struct rio_mport *mport, int index, u16 destid, | |||
277 | { | 370 | { |
278 | struct rio_priv *priv = mport->priv; | 371 | struct rio_priv *priv = mport->priv; |
279 | u8 *data; | 372 | u8 *data; |
373 | u32 rval, err = 0; | ||
280 | 374 | ||
281 | pr_debug | 375 | pr_debug |
282 | ("fsl_rio_config_read: index %d destid %d hopcount %d offset %8.8x len %d\n", | 376 | ("fsl_rio_config_read: index %d destid %d hopcount %d offset %8.8x len %d\n", |
283 | index, destid, hopcount, offset, len); | 377 | index, destid, hopcount, offset, len); |
378 | |||
379 | /* 16MB maintenance window possible */ | ||
380 | /* allow only aligned access to maintenance registers */ | ||
381 | if (offset > (0x1000000 - len) || !IS_ALIGNED(offset, len)) | ||
382 | return -EINVAL; | ||
383 | |||
284 | out_be32(&priv->maint_atmu_regs->rowtar, | 384 | out_be32(&priv->maint_atmu_regs->rowtar, |
285 | (destid << 22) | (hopcount << 12) | ((offset & ~0x3) >> 9)); | 385 | (destid << 22) | (hopcount << 12) | (offset >> 12)); |
386 | out_be32(&priv->maint_atmu_regs->rowtear, (destid >> 10)); | ||
286 | 387 | ||
287 | data = (u8 *) priv->maint_win + offset; | 388 | data = (u8 *) priv->maint_win + (offset & (RIO_MAINT_WIN_SIZE - 1)); |
288 | switch (len) { | 389 | switch (len) { |
289 | case 1: | 390 | case 1: |
290 | *val = in_8((u8 *) data); | 391 | __fsl_read_rio_config(rval, data, err, "lbz"); |
291 | break; | 392 | break; |
292 | case 2: | 393 | case 2: |
293 | *val = in_be16((u16 *) data); | 394 | __fsl_read_rio_config(rval, data, err, "lhz"); |
294 | break; | 395 | break; |
295 | default: | 396 | case 4: |
296 | *val = in_be32((u32 *) data); | 397 | __fsl_read_rio_config(rval, data, err, "lwz"); |
297 | break; | 398 | break; |
399 | default: | ||
400 | return -EINVAL; | ||
298 | } | 401 | } |
299 | 402 | ||
300 | return 0; | 403 | if (err) { |
404 | pr_debug("RIO: cfg_read error %d for %x:%x:%x\n", | ||
405 | err, destid, hopcount, offset); | ||
406 | } | ||
407 | |||
408 | *val = rval; | ||
409 | |||
410 | return err; | ||
301 | } | 411 | } |
302 | 412 | ||
303 | /** | 413 | /** |
@@ -322,10 +432,17 @@ fsl_rio_config_write(struct rio_mport *mport, int index, u16 destid, | |||
322 | pr_debug | 432 | pr_debug |
323 | ("fsl_rio_config_write: index %d destid %d hopcount %d offset %8.8x len %d val %8.8x\n", | 433 | ("fsl_rio_config_write: index %d destid %d hopcount %d offset %8.8x len %d val %8.8x\n", |
324 | index, destid, hopcount, offset, len, val); | 434 | index, destid, hopcount, offset, len, val); |
435 | |||
436 | /* 16MB maintenance windows possible */ | ||
437 | /* allow only aligned access to maintenance registers */ | ||
438 | if (offset > (0x1000000 - len) || !IS_ALIGNED(offset, len)) | ||
439 | return -EINVAL; | ||
440 | |||
325 | out_be32(&priv->maint_atmu_regs->rowtar, | 441 | out_be32(&priv->maint_atmu_regs->rowtar, |
326 | (destid << 22) | (hopcount << 12) | ((offset & ~0x3) >> 9)); | 442 | (destid << 22) | (hopcount << 12) | (offset >> 12)); |
443 | out_be32(&priv->maint_atmu_regs->rowtear, (destid >> 10)); | ||
327 | 444 | ||
328 | data = (u8 *) priv->maint_win + offset; | 445 | data = (u8 *) priv->maint_win + (offset & (RIO_MAINT_WIN_SIZE - 1)); |
329 | switch (len) { | 446 | switch (len) { |
330 | case 1: | 447 | case 1: |
331 | out_8((u8 *) data, val); | 448 | out_8((u8 *) data, val); |
@@ -333,9 +450,11 @@ fsl_rio_config_write(struct rio_mport *mport, int index, u16 destid, | |||
333 | case 2: | 450 | case 2: |
334 | out_be16((u16 *) data, val); | 451 | out_be16((u16 *) data, val); |
335 | break; | 452 | break; |
336 | default: | 453 | case 4: |
337 | out_be32((u32 *) data, val); | 454 | out_be32((u32 *) data, val); |
338 | break; | 455 | break; |
456 | default: | ||
457 | return -EINVAL; | ||
339 | } | 458 | } |
340 | 459 | ||
341 | return 0; | 460 | return 0; |
@@ -930,6 +1049,223 @@ static int fsl_rio_doorbell_init(struct rio_mport *mport) | |||
930 | return rc; | 1049 | return rc; |
931 | } | 1050 | } |
932 | 1051 | ||
1052 | /** | ||
1053 | * fsl_rio_port_write_handler - MPC85xx port write interrupt handler | ||
1054 | * @irq: Linux interrupt number | ||
1055 | * @dev_instance: Pointer to interrupt-specific data | ||
1056 | * | ||
1057 | * Handles port write interrupts. Parses a list of registered | ||
1058 | * port write event handlers and executes a matching event handler. | ||
1059 | */ | ||
1060 | static irqreturn_t | ||
1061 | fsl_rio_port_write_handler(int irq, void *dev_instance) | ||
1062 | { | ||
1063 | u32 ipwmr, ipwsr; | ||
1064 | struct rio_mport *port = (struct rio_mport *)dev_instance; | ||
1065 | struct rio_priv *priv = port->priv; | ||
1066 | u32 epwisr, tmp; | ||
1067 | |||
1068 | ipwmr = in_be32(&priv->msg_regs->pwmr); | ||
1069 | ipwsr = in_be32(&priv->msg_regs->pwsr); | ||
1070 | |||
1071 | epwisr = in_be32(priv->regs_win + RIO_EPWISR); | ||
1072 | if (epwisr & 0x80000000) { | ||
1073 | tmp = in_be32(priv->regs_win + RIO_LTLEDCSR); | ||
1074 | pr_info("RIO_LTLEDCSR = 0x%x\n", tmp); | ||
1075 | out_be32(priv->regs_win + RIO_LTLEDCSR, 0); | ||
1076 | } | ||
1077 | |||
1078 | if (!(epwisr & 0x00000001)) | ||
1079 | return IRQ_HANDLED; | ||
1080 | |||
1081 | #ifdef DEBUG_PW | ||
1082 | pr_debug("PW Int->IPWMR: 0x%08x IPWSR: 0x%08x (", ipwmr, ipwsr); | ||
1083 | if (ipwsr & RIO_IPWSR_QF) | ||
1084 | pr_debug(" QF"); | ||
1085 | if (ipwsr & RIO_IPWSR_TE) | ||
1086 | pr_debug(" TE"); | ||
1087 | if (ipwsr & RIO_IPWSR_QFI) | ||
1088 | pr_debug(" QFI"); | ||
1089 | if (ipwsr & RIO_IPWSR_PWD) | ||
1090 | pr_debug(" PWD"); | ||
1091 | if (ipwsr & RIO_IPWSR_PWB) | ||
1092 | pr_debug(" PWB"); | ||
1093 | pr_debug(" )\n"); | ||
1094 | #endif | ||
1095 | out_be32(&priv->msg_regs->pwsr, | ||
1096 | ipwsr & (RIO_IPWSR_TE | RIO_IPWSR_QFI | RIO_IPWSR_PWD)); | ||
1097 | |||
1098 | if ((ipwmr & RIO_IPWMR_EIE) && (ipwsr & RIO_IPWSR_TE)) { | ||
1099 | priv->port_write_msg.err_count++; | ||
1100 | pr_info("RIO: Port-Write Transaction Err (%d)\n", | ||
1101 | priv->port_write_msg.err_count); | ||
1102 | } | ||
1103 | if (ipwsr & RIO_IPWSR_PWD) { | ||
1104 | priv->port_write_msg.discard_count++; | ||
1105 | pr_info("RIO: Port Discarded Port-Write Msg(s) (%d)\n", | ||
1106 | priv->port_write_msg.discard_count); | ||
1107 | } | ||
1108 | |||
1109 | /* Schedule deferred processing if PW was received */ | ||
1110 | if (ipwsr & RIO_IPWSR_QFI) { | ||
1111 | /* Save PW message (if there is room in FIFO), | ||
1112 | * otherwise discard it. | ||
1113 | */ | ||
1114 | if (kfifo_avail(&priv->pw_fifo) >= RIO_PW_MSG_SIZE) { | ||
1115 | priv->port_write_msg.msg_count++; | ||
1116 | kfifo_in(&priv->pw_fifo, priv->port_write_msg.virt, | ||
1117 | RIO_PW_MSG_SIZE); | ||
1118 | } else { | ||
1119 | priv->port_write_msg.discard_count++; | ||
1120 | pr_info("RIO: ISR Discarded Port-Write Msg(s) (%d)\n", | ||
1121 | priv->port_write_msg.discard_count); | ||
1122 | } | ||
1123 | schedule_work(&priv->pw_work); | ||
1124 | } | ||
1125 | |||
1126 | /* Issue Clear Queue command. This allows another | ||
1127 | * port-write to be received. | ||
1128 | */ | ||
1129 | out_be32(&priv->msg_regs->pwmr, ipwmr | RIO_IPWMR_CQ); | ||
1130 | |||
1131 | return IRQ_HANDLED; | ||
1132 | } | ||
1133 | |||
1134 | static void fsl_pw_dpc(struct work_struct *work) | ||
1135 | { | ||
1136 | struct rio_priv *priv = container_of(work, struct rio_priv, pw_work); | ||
1137 | unsigned long flags; | ||
1138 | u32 msg_buffer[RIO_PW_MSG_SIZE/sizeof(u32)]; | ||
1139 | |||
1140 | /* | ||
1141 | * Process port-write messages | ||
1142 | */ | ||
1143 | spin_lock_irqsave(&priv->pw_fifo_lock, flags); | ||
1144 | while (kfifo_out(&priv->pw_fifo, (unsigned char *)msg_buffer, | ||
1145 | RIO_PW_MSG_SIZE)) { | ||
1146 | /* Process one message */ | ||
1147 | spin_unlock_irqrestore(&priv->pw_fifo_lock, flags); | ||
1148 | #ifdef DEBUG_PW | ||
1149 | { | ||
1150 | u32 i; | ||
1151 | pr_debug("%s : Port-Write Message:", __func__); | ||
1152 | for (i = 0; i < RIO_PW_MSG_SIZE/sizeof(u32); i++) { | ||
1153 | if ((i%4) == 0) | ||
1154 | pr_debug("\n0x%02x: 0x%08x", i*4, | ||
1155 | msg_buffer[i]); | ||
1156 | else | ||
1157 | pr_debug(" 0x%08x", msg_buffer[i]); | ||
1158 | } | ||
1159 | pr_debug("\n"); | ||
1160 | } | ||
1161 | #endif | ||
1162 | /* Pass the port-write message to RIO core for processing */ | ||
1163 | rio_inb_pwrite_handler((union rio_pw_msg *)msg_buffer); | ||
1164 | spin_lock_irqsave(&priv->pw_fifo_lock, flags); | ||
1165 | } | ||
1166 | spin_unlock_irqrestore(&priv->pw_fifo_lock, flags); | ||
1167 | } | ||
1168 | |||
1169 | /** | ||
1170 | * fsl_rio_pw_enable - enable/disable port-write interface init | ||
1171 | * @mport: Master port implementing the port write unit | ||
1172 | * @enable: 1=enable; 0=disable port-write message handling | ||
1173 | */ | ||
1174 | static int fsl_rio_pw_enable(struct rio_mport *mport, int enable) | ||
1175 | { | ||
1176 | struct rio_priv *priv = mport->priv; | ||
1177 | u32 rval; | ||
1178 | |||
1179 | rval = in_be32(&priv->msg_regs->pwmr); | ||
1180 | |||
1181 | if (enable) | ||
1182 | rval |= RIO_IPWMR_PWE; | ||
1183 | else | ||
1184 | rval &= ~RIO_IPWMR_PWE; | ||
1185 | |||
1186 | out_be32(&priv->msg_regs->pwmr, rval); | ||
1187 | |||
1188 | return 0; | ||
1189 | } | ||
1190 | |||
1191 | /** | ||
1192 | * fsl_rio_port_write_init - MPC85xx port write interface init | ||
1193 | * @mport: Master port implementing the port write unit | ||
1194 | * | ||
1195 | * Initializes port write unit hardware and DMA buffer | ||
1196 | * ring. Called from fsl_rio_setup(). Returns %0 on success | ||
1197 | * or %-ENOMEM on failure. | ||
1198 | */ | ||
1199 | static int fsl_rio_port_write_init(struct rio_mport *mport) | ||
1200 | { | ||
1201 | struct rio_priv *priv = mport->priv; | ||
1202 | int rc = 0; | ||
1203 | |||
1204 | /* Following configurations require a disabled port write controller */ | ||
1205 | out_be32(&priv->msg_regs->pwmr, | ||
1206 | in_be32(&priv->msg_regs->pwmr) & ~RIO_IPWMR_PWE); | ||
1207 | |||
1208 | /* Initialize port write */ | ||
1209 | priv->port_write_msg.virt = dma_alloc_coherent(priv->dev, | ||
1210 | RIO_PW_MSG_SIZE, | ||
1211 | &priv->port_write_msg.phys, GFP_KERNEL); | ||
1212 | if (!priv->port_write_msg.virt) { | ||
1213 | pr_err("RIO: unable allocate port write queue\n"); | ||
1214 | return -ENOMEM; | ||
1215 | } | ||
1216 | |||
1217 | priv->port_write_msg.err_count = 0; | ||
1218 | priv->port_write_msg.discard_count = 0; | ||
1219 | |||
1220 | /* Point dequeue/enqueue pointers at first entry */ | ||
1221 | out_be32(&priv->msg_regs->epwqbar, 0); | ||
1222 | out_be32(&priv->msg_regs->pwqbar, (u32) priv->port_write_msg.phys); | ||
1223 | |||
1224 | pr_debug("EIPWQBAR: 0x%08x IPWQBAR: 0x%08x\n", | ||
1225 | in_be32(&priv->msg_regs->epwqbar), | ||
1226 | in_be32(&priv->msg_regs->pwqbar)); | ||
1227 | |||
1228 | /* Clear interrupt status IPWSR */ | ||
1229 | out_be32(&priv->msg_regs->pwsr, | ||
1230 | (RIO_IPWSR_TE | RIO_IPWSR_QFI | RIO_IPWSR_PWD)); | ||
1231 | |||
1232 | /* Configure port write contoller for snooping enable all reporting, | ||
1233 | clear queue full */ | ||
1234 | out_be32(&priv->msg_regs->pwmr, | ||
1235 | RIO_IPWMR_SEN | RIO_IPWMR_QFIE | RIO_IPWMR_EIE | RIO_IPWMR_CQ); | ||
1236 | |||
1237 | |||
1238 | /* Hook up port-write handler */ | ||
1239 | rc = request_irq(IRQ_RIO_PW(mport), fsl_rio_port_write_handler, 0, | ||
1240 | "port-write", (void *)mport); | ||
1241 | if (rc < 0) { | ||
1242 | pr_err("MPC85xx RIO: unable to request inbound doorbell irq"); | ||
1243 | goto err_out; | ||
1244 | } | ||
1245 | |||
1246 | INIT_WORK(&priv->pw_work, fsl_pw_dpc); | ||
1247 | spin_lock_init(&priv->pw_fifo_lock); | ||
1248 | if (kfifo_alloc(&priv->pw_fifo, RIO_PW_MSG_SIZE * 32, GFP_KERNEL)) { | ||
1249 | pr_err("FIFO allocation failed\n"); | ||
1250 | rc = -ENOMEM; | ||
1251 | goto err_out_irq; | ||
1252 | } | ||
1253 | |||
1254 | pr_debug("IPWMR: 0x%08x IPWSR: 0x%08x\n", | ||
1255 | in_be32(&priv->msg_regs->pwmr), | ||
1256 | in_be32(&priv->msg_regs->pwsr)); | ||
1257 | |||
1258 | return rc; | ||
1259 | |||
1260 | err_out_irq: | ||
1261 | free_irq(IRQ_RIO_PW(mport), (void *)mport); | ||
1262 | err_out: | ||
1263 | dma_free_coherent(priv->dev, RIO_PW_MSG_SIZE, | ||
1264 | priv->port_write_msg.virt, | ||
1265 | priv->port_write_msg.phys); | ||
1266 | return rc; | ||
1267 | } | ||
1268 | |||
933 | static char *cmdline = NULL; | 1269 | static char *cmdline = NULL; |
934 | 1270 | ||
935 | static int fsl_rio_get_hdid(int index) | 1271 | static int fsl_rio_get_hdid(int index) |
@@ -1057,7 +1393,7 @@ int fsl_rio_setup(struct of_device *dev) | |||
1057 | dev_info(&dev->dev, "LAW start 0x%016llx, size 0x%016llx.\n", | 1393 | dev_info(&dev->dev, "LAW start 0x%016llx, size 0x%016llx.\n", |
1058 | law_start, law_size); | 1394 | law_start, law_size); |
1059 | 1395 | ||
1060 | ops = kmalloc(sizeof(struct rio_ops), GFP_KERNEL); | 1396 | ops = kzalloc(sizeof(struct rio_ops), GFP_KERNEL); |
1061 | if (!ops) { | 1397 | if (!ops) { |
1062 | rc = -ENOMEM; | 1398 | rc = -ENOMEM; |
1063 | goto err_ops; | 1399 | goto err_ops; |
@@ -1067,6 +1403,7 @@ int fsl_rio_setup(struct of_device *dev) | |||
1067 | ops->cread = fsl_rio_config_read; | 1403 | ops->cread = fsl_rio_config_read; |
1068 | ops->cwrite = fsl_rio_config_write; | 1404 | ops->cwrite = fsl_rio_config_write; |
1069 | ops->dsend = fsl_rio_doorbell_send; | 1405 | ops->dsend = fsl_rio_doorbell_send; |
1406 | ops->pwenable = fsl_rio_pw_enable; | ||
1070 | 1407 | ||
1071 | port = kzalloc(sizeof(struct rio_mport), GFP_KERNEL); | 1408 | port = kzalloc(sizeof(struct rio_mport), GFP_KERNEL); |
1072 | if (!port) { | 1409 | if (!port) { |
@@ -1089,11 +1426,12 @@ int fsl_rio_setup(struct of_device *dev) | |||
1089 | port->iores.flags = IORESOURCE_MEM; | 1426 | port->iores.flags = IORESOURCE_MEM; |
1090 | port->iores.name = "rio_io_win"; | 1427 | port->iores.name = "rio_io_win"; |
1091 | 1428 | ||
1429 | priv->pwirq = irq_of_parse_and_map(dev->node, 0); | ||
1092 | priv->bellirq = irq_of_parse_and_map(dev->dev.of_node, 2); | 1430 | priv->bellirq = irq_of_parse_and_map(dev->dev.of_node, 2); |
1093 | priv->txirq = irq_of_parse_and_map(dev->dev.of_node, 3); | 1431 | priv->txirq = irq_of_parse_and_map(dev->dev.of_node, 3); |
1094 | priv->rxirq = irq_of_parse_and_map(dev->dev.of_node, 4); | 1432 | priv->rxirq = irq_of_parse_and_map(dev->dev.of_node, 4); |
1095 | dev_info(&dev->dev, "bellirq: %d, txirq: %d, rxirq %d\n", priv->bellirq, | 1433 | dev_info(&dev->dev, "pwirq: %d, bellirq: %d, txirq: %d, rxirq %d\n", |
1096 | priv->txirq, priv->rxirq); | 1434 | priv->pwirq, priv->bellirq, priv->txirq, priv->rxirq); |
1097 | 1435 | ||
1098 | rio_init_dbell_res(&port->riores[RIO_DOORBELL_RESOURCE], 0, 0xffff); | 1436 | rio_init_dbell_res(&port->riores[RIO_DOORBELL_RESOURCE], 0, 0xffff); |
1099 | rio_init_mbox_res(&port->riores[RIO_INB_MBOX_RESOURCE], 0, 0); | 1437 | rio_init_mbox_res(&port->riores[RIO_INB_MBOX_RESOURCE], 0, 0); |
@@ -1109,6 +1447,7 @@ int fsl_rio_setup(struct of_device *dev) | |||
1109 | rio_register_mport(port); | 1447 | rio_register_mport(port); |
1110 | 1448 | ||
1111 | priv->regs_win = ioremap(regs.start, regs.end - regs.start + 1); | 1449 | priv->regs_win = ioremap(regs.start, regs.end - regs.start + 1); |
1450 | rio_regs_win = priv->regs_win; | ||
1112 | 1451 | ||
1113 | /* Probe the master port phy type */ | 1452 | /* Probe the master port phy type */ |
1114 | ccsr = in_be32(priv->regs_win + RIO_CCSR); | 1453 | ccsr = in_be32(priv->regs_win + RIO_CCSR); |
@@ -1166,7 +1505,8 @@ int fsl_rio_setup(struct of_device *dev) | |||
1166 | 1505 | ||
1167 | /* Configure maintenance transaction window */ | 1506 | /* Configure maintenance transaction window */ |
1168 | out_be32(&priv->maint_atmu_regs->rowbar, law_start >> 12); | 1507 | out_be32(&priv->maint_atmu_regs->rowbar, law_start >> 12); |
1169 | out_be32(&priv->maint_atmu_regs->rowar, 0x80077015); /* 4M */ | 1508 | out_be32(&priv->maint_atmu_regs->rowar, |
1509 | 0x80077000 | (ilog2(RIO_MAINT_WIN_SIZE) - 1)); | ||
1170 | 1510 | ||
1171 | priv->maint_win = ioremap(law_start, RIO_MAINT_WIN_SIZE); | 1511 | priv->maint_win = ioremap(law_start, RIO_MAINT_WIN_SIZE); |
1172 | 1512 | ||
@@ -1175,6 +1515,12 @@ int fsl_rio_setup(struct of_device *dev) | |||
1175 | (law_start + RIO_MAINT_WIN_SIZE) >> 12); | 1515 | (law_start + RIO_MAINT_WIN_SIZE) >> 12); |
1176 | out_be32(&priv->dbell_atmu_regs->rowar, 0x8004200b); /* 4k */ | 1516 | out_be32(&priv->dbell_atmu_regs->rowar, 0x8004200b); /* 4k */ |
1177 | fsl_rio_doorbell_init(port); | 1517 | fsl_rio_doorbell_init(port); |
1518 | fsl_rio_port_write_init(port); | ||
1519 | |||
1520 | saved_mcheck_exception = ppc_md.machine_check_exception; | ||
1521 | ppc_md.machine_check_exception = fsl_rio_mcheck_exception; | ||
1522 | /* Ensure that RFXE is set */ | ||
1523 | mtspr(SPRN_HID1, (mfspr(SPRN_HID1) | 0x20000)); | ||
1178 | 1524 | ||
1179 | return 0; | 1525 | return 0; |
1180 | err: | 1526 | err: |
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 79d0ca086820..bee1c0f794cf 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig | |||
@@ -102,6 +102,7 @@ config S390 | |||
102 | select HAVE_KERNEL_GZIP | 102 | select HAVE_KERNEL_GZIP |
103 | select HAVE_KERNEL_BZIP2 | 103 | select HAVE_KERNEL_BZIP2 |
104 | select HAVE_KERNEL_LZMA | 104 | select HAVE_KERNEL_LZMA |
105 | select HAVE_KERNEL_LZO | ||
105 | select ARCH_INLINE_SPIN_TRYLOCK | 106 | select ARCH_INLINE_SPIN_TRYLOCK |
106 | select ARCH_INLINE_SPIN_TRYLOCK_BH | 107 | select ARCH_INLINE_SPIN_TRYLOCK_BH |
107 | select ARCH_INLINE_SPIN_LOCK | 108 | select ARCH_INLINE_SPIN_LOCK |
@@ -479,13 +480,6 @@ config CMM | |||
479 | Everybody who wants to run Linux under VM should select this | 480 | Everybody who wants to run Linux under VM should select this |
480 | option. | 481 | option. |
481 | 482 | ||
482 | config CMM_PROC | ||
483 | bool "/proc interface to cooperative memory management" | ||
484 | depends on CMM | ||
485 | help | ||
486 | Select this option to enable the /proc interface to the | ||
487 | cooperative memory management. | ||
488 | |||
489 | config CMM_IUCV | 483 | config CMM_IUCV |
490 | bool "IUCV special message interface to cooperative memory management" | 484 | bool "IUCV special message interface to cooperative memory management" |
491 | depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV) | 485 | depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV) |
diff --git a/arch/s390/boot/compressed/Makefile b/arch/s390/boot/compressed/Makefile index 6e4a67ad07e1..1c999f726a58 100644 --- a/arch/s390/boot/compressed/Makefile +++ b/arch/s390/boot/compressed/Makefile | |||
@@ -7,7 +7,7 @@ | |||
7 | BITS := $(if $(CONFIG_64BIT),64,31) | 7 | BITS := $(if $(CONFIG_64BIT),64,31) |
8 | 8 | ||
9 | targets := vmlinux.lds vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 \ | 9 | targets := vmlinux.lds vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 \ |
10 | vmlinux.bin.lzma misc.o piggy.o sizes.h head$(BITS).o | 10 | vmlinux.bin.lzma vmlinux.bin.lzo misc.o piggy.o sizes.h head$(BITS).o |
11 | 11 | ||
12 | KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2 | 12 | KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2 |
13 | KBUILD_CFLAGS += $(cflags-y) | 13 | KBUILD_CFLAGS += $(cflags-y) |
@@ -47,6 +47,7 @@ vmlinux.bin.all-y := $(obj)/vmlinux.bin | |||
47 | suffix-$(CONFIG_KERNEL_GZIP) := gz | 47 | suffix-$(CONFIG_KERNEL_GZIP) := gz |
48 | suffix-$(CONFIG_KERNEL_BZIP2) := bz2 | 48 | suffix-$(CONFIG_KERNEL_BZIP2) := bz2 |
49 | suffix-$(CONFIG_KERNEL_LZMA) := lzma | 49 | suffix-$(CONFIG_KERNEL_LZMA) := lzma |
50 | suffix-$(CONFIG_KERNEL_LZO) := lzo | ||
50 | 51 | ||
51 | $(obj)/vmlinux.bin.gz: $(vmlinux.bin.all-y) | 52 | $(obj)/vmlinux.bin.gz: $(vmlinux.bin.all-y) |
52 | $(call if_changed,gzip) | 53 | $(call if_changed,gzip) |
@@ -54,6 +55,8 @@ $(obj)/vmlinux.bin.bz2: $(vmlinux.bin.all-y) | |||
54 | $(call if_changed,bzip2) | 55 | $(call if_changed,bzip2) |
55 | $(obj)/vmlinux.bin.lzma: $(vmlinux.bin.all-y) | 56 | $(obj)/vmlinux.bin.lzma: $(vmlinux.bin.all-y) |
56 | $(call if_changed,lzma) | 57 | $(call if_changed,lzma) |
58 | $(obj)/vmlinux.bin.lzo: $(vmlinux.bin.all-y) | ||
59 | $(call if_changed,lzo) | ||
57 | 60 | ||
58 | LDFLAGS_piggy.o := -r --format binary --oformat $(LD_BFD) -T | 61 | LDFLAGS_piggy.o := -r --format binary --oformat $(LD_BFD) -T |
59 | $(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.$(suffix-y) | 62 | $(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.$(suffix-y) |
diff --git a/arch/s390/boot/compressed/misc.c b/arch/s390/boot/compressed/misc.c index 14e0479d3888..0851eb1e919e 100644 --- a/arch/s390/boot/compressed/misc.c +++ b/arch/s390/boot/compressed/misc.c | |||
@@ -50,6 +50,10 @@ static unsigned long free_mem_end_ptr; | |||
50 | #include "../../../../lib/decompress_unlzma.c" | 50 | #include "../../../../lib/decompress_unlzma.c" |
51 | #endif | 51 | #endif |
52 | 52 | ||
53 | #ifdef CONFIG_KERNEL_LZO | ||
54 | #include "../../../../lib/decompress_unlzo.c" | ||
55 | #endif | ||
56 | |||
53 | extern _sclp_print_early(const char *); | 57 | extern _sclp_print_early(const char *); |
54 | 58 | ||
55 | int puts(const char *s) | 59 | int puts(const char *s) |
diff --git a/arch/s390/include/asm/atomic.h b/arch/s390/include/asm/atomic.h index 451bfbb9db3d..76daea117181 100644 --- a/arch/s390/include/asm/atomic.h +++ b/arch/s390/include/asm/atomic.h | |||
@@ -15,6 +15,7 @@ | |||
15 | 15 | ||
16 | #include <linux/compiler.h> | 16 | #include <linux/compiler.h> |
17 | #include <linux/types.h> | 17 | #include <linux/types.h> |
18 | #include <asm/system.h> | ||
18 | 19 | ||
19 | #define ATOMIC_INIT(i) { (i) } | 20 | #define ATOMIC_INIT(i) { (i) } |
20 | 21 | ||
@@ -274,6 +275,7 @@ static inline void atomic64_clear_mask(unsigned long long mask, atomic64_t *v) | |||
274 | static inline int atomic64_add_unless(atomic64_t *v, long long a, long long u) | 275 | static inline int atomic64_add_unless(atomic64_t *v, long long a, long long u) |
275 | { | 276 | { |
276 | long long c, old; | 277 | long long c, old; |
278 | |||
277 | c = atomic64_read(v); | 279 | c = atomic64_read(v); |
278 | for (;;) { | 280 | for (;;) { |
279 | if (unlikely(c == u)) | 281 | if (unlikely(c == u)) |
@@ -286,6 +288,23 @@ static inline int atomic64_add_unless(atomic64_t *v, long long a, long long u) | |||
286 | return c != u; | 288 | return c != u; |
287 | } | 289 | } |
288 | 290 | ||
291 | static inline long long atomic64_dec_if_positive(atomic64_t *v) | ||
292 | { | ||
293 | long long c, old, dec; | ||
294 | |||
295 | c = atomic64_read(v); | ||
296 | for (;;) { | ||
297 | dec = c - 1; | ||
298 | if (unlikely(dec < 0)) | ||
299 | break; | ||
300 | old = atomic64_cmpxchg((v), c, dec); | ||
301 | if (likely(old == c)) | ||
302 | break; | ||
303 | c = old; | ||
304 | } | ||
305 | return dec; | ||
306 | } | ||
307 | |||
289 | #define atomic64_add(_i, _v) atomic64_add_return(_i, _v) | 308 | #define atomic64_add(_i, _v) atomic64_add_return(_i, _v) |
290 | #define atomic64_add_negative(_i, _v) (atomic64_add_return(_i, _v) < 0) | 309 | #define atomic64_add_negative(_i, _v) (atomic64_add_return(_i, _v) < 0) |
291 | #define atomic64_inc(_v) atomic64_add_return(1, _v) | 310 | #define atomic64_inc(_v) atomic64_add_return(1, _v) |
diff --git a/arch/s390/include/asm/ccwdev.h b/arch/s390/include/asm/ccwdev.h index f4bd346a52d3..1c0030f9b890 100644 --- a/arch/s390/include/asm/ccwdev.h +++ b/arch/s390/include/asm/ccwdev.h | |||
@@ -91,6 +91,14 @@ struct ccw_device { | |||
91 | void (*handler) (struct ccw_device *, unsigned long, struct irb *); | 91 | void (*handler) (struct ccw_device *, unsigned long, struct irb *); |
92 | }; | 92 | }; |
93 | 93 | ||
94 | /* | ||
95 | * Possible CIO actions triggered by the unit check handler. | ||
96 | */ | ||
97 | enum uc_todo { | ||
98 | UC_TODO_RETRY, | ||
99 | UC_TODO_RETRY_ON_NEW_PATH, | ||
100 | UC_TODO_STOP | ||
101 | }; | ||
94 | 102 | ||
95 | /** | 103 | /** |
96 | * struct ccw driver - device driver for channel attached devices | 104 | * struct ccw driver - device driver for channel attached devices |
@@ -107,6 +115,7 @@ struct ccw_device { | |||
107 | * @freeze: callback for freezing during hibernation snapshotting | 115 | * @freeze: callback for freezing during hibernation snapshotting |
108 | * @thaw: undo work done in @freeze | 116 | * @thaw: undo work done in @freeze |
109 | * @restore: callback for restoring after hibernation | 117 | * @restore: callback for restoring after hibernation |
118 | * @uc_handler: callback for unit check handler | ||
110 | * @driver: embedded device driver structure | 119 | * @driver: embedded device driver structure |
111 | * @name: device driver name | 120 | * @name: device driver name |
112 | */ | 121 | */ |
@@ -124,6 +133,7 @@ struct ccw_driver { | |||
124 | int (*freeze)(struct ccw_device *); | 133 | int (*freeze)(struct ccw_device *); |
125 | int (*thaw) (struct ccw_device *); | 134 | int (*thaw) (struct ccw_device *); |
126 | int (*restore)(struct ccw_device *); | 135 | int (*restore)(struct ccw_device *); |
136 | enum uc_todo (*uc_handler) (struct ccw_device *, struct irb *); | ||
127 | struct device_driver driver; | 137 | struct device_driver driver; |
128 | char *name; | 138 | char *name; |
129 | }; | 139 | }; |
diff --git a/arch/s390/include/asm/scatterlist.h b/arch/s390/include/asm/scatterlist.h index 35d786fe93ae..be44d94cba54 100644 --- a/arch/s390/include/asm/scatterlist.h +++ b/arch/s390/include/asm/scatterlist.h | |||
@@ -1 +1,3 @@ | |||
1 | #define ISA_DMA_THRESHOLD (~0UL) | ||
2 | |||
1 | #include <asm-generic/scatterlist.h> | 3 | #include <asm-generic/scatterlist.h> |
diff --git a/arch/s390/include/asm/sfp-util.h b/arch/s390/include/asm/sfp-util.h index 7d43fee17e32..0addc6466d95 100644 --- a/arch/s390/include/asm/sfp-util.h +++ b/arch/s390/include/asm/sfp-util.h | |||
@@ -73,3 +73,5 @@ extern unsigned long __udiv_qrnnd (unsigned int *, unsigned int, | |||
73 | #define UDIV_NEEDS_NORMALIZATION 0 | 73 | #define UDIV_NEEDS_NORMALIZATION 0 |
74 | 74 | ||
75 | #define abort() return 0 | 75 | #define abort() return 0 |
76 | |||
77 | #define __BYTE_ORDER __BIG_ENDIAN | ||
diff --git a/arch/s390/kernel/asm-offsets.c b/arch/s390/kernel/asm-offsets.c index d9b490a2716e..5232278d79ad 100644 --- a/arch/s390/kernel/asm-offsets.c +++ b/arch/s390/kernel/asm-offsets.c | |||
@@ -132,8 +132,6 @@ int main(void) | |||
132 | DEFINE(__LC_MCCK_CLOCK, offsetof(struct _lowcore, mcck_clock)); | 132 | DEFINE(__LC_MCCK_CLOCK, offsetof(struct _lowcore, mcck_clock)); |
133 | DEFINE(__LC_MACHINE_FLAGS, offsetof(struct _lowcore, machine_flags)); | 133 | DEFINE(__LC_MACHINE_FLAGS, offsetof(struct _lowcore, machine_flags)); |
134 | DEFINE(__LC_FTRACE_FUNC, offsetof(struct _lowcore, ftrace_func)); | 134 | DEFINE(__LC_FTRACE_FUNC, offsetof(struct _lowcore, ftrace_func)); |
135 | DEFINE(__LC_SIE_HOOK, offsetof(struct _lowcore, sie_hook)); | ||
136 | DEFINE(__LC_CMF_HPP, offsetof(struct _lowcore, cmf_hpp)); | ||
137 | DEFINE(__LC_IRB, offsetof(struct _lowcore, irb)); | 135 | DEFINE(__LC_IRB, offsetof(struct _lowcore, irb)); |
138 | DEFINE(__LC_CPU_TIMER_SAVE_AREA, offsetof(struct _lowcore, cpu_timer_save_area)); | 136 | DEFINE(__LC_CPU_TIMER_SAVE_AREA, offsetof(struct _lowcore, cpu_timer_save_area)); |
139 | DEFINE(__LC_CLOCK_COMP_SAVE_AREA, offsetof(struct _lowcore, clock_comp_save_area)); | 137 | DEFINE(__LC_CLOCK_COMP_SAVE_AREA, offsetof(struct _lowcore, clock_comp_save_area)); |
@@ -154,6 +152,8 @@ int main(void) | |||
154 | DEFINE(__LC_FP_CREG_SAVE_AREA, offsetof(struct _lowcore, fpt_creg_save_area)); | 152 | DEFINE(__LC_FP_CREG_SAVE_AREA, offsetof(struct _lowcore, fpt_creg_save_area)); |
155 | DEFINE(__LC_LAST_BREAK, offsetof(struct _lowcore, breaking_event_addr)); | 153 | DEFINE(__LC_LAST_BREAK, offsetof(struct _lowcore, breaking_event_addr)); |
156 | DEFINE(__LC_VDSO_PER_CPU, offsetof(struct _lowcore, vdso_per_cpu_data)); | 154 | DEFINE(__LC_VDSO_PER_CPU, offsetof(struct _lowcore, vdso_per_cpu_data)); |
155 | DEFINE(__LC_SIE_HOOK, offsetof(struct _lowcore, sie_hook)); | ||
156 | DEFINE(__LC_CMF_HPP, offsetof(struct _lowcore, cmf_hpp)); | ||
157 | #endif /* CONFIG_32BIT */ | 157 | #endif /* CONFIG_32BIT */ |
158 | return 0; | 158 | return 0; |
159 | } | 159 | } |
diff --git a/arch/s390/kernel/entry64.S b/arch/s390/kernel/entry64.S index 178d92536d90..e7192e1cb678 100644 --- a/arch/s390/kernel/entry64.S +++ b/arch/s390/kernel/entry64.S | |||
@@ -65,7 +65,7 @@ _TIF_SYSCALL = (_TIF_SYSCALL_TRACE>>8 | _TIF_SYSCALL_AUDIT>>8 | \ | |||
65 | ltgr %r3,%r3 | 65 | ltgr %r3,%r3 |
66 | jz 0f | 66 | jz 0f |
67 | basr %r14,%r3 | 67 | basr %r14,%r3 |
68 | 0: | 68 | 0: |
69 | #endif | 69 | #endif |
70 | .endm | 70 | .endm |
71 | 71 | ||
diff --git a/arch/s390/kernel/kprobes.c b/arch/s390/kernel/kprobes.c index 3d34eef5a2c3..2a3d2bf6f083 100644 --- a/arch/s390/kernel/kprobes.c +++ b/arch/s390/kernel/kprobes.c | |||
@@ -63,6 +63,8 @@ int __kprobes is_prohibited_opcode(kprobe_opcode_t *instruction) | |||
63 | case 0x0b: /* bsm */ | 63 | case 0x0b: /* bsm */ |
64 | case 0x83: /* diag */ | 64 | case 0x83: /* diag */ |
65 | case 0x44: /* ex */ | 65 | case 0x44: /* ex */ |
66 | case 0xac: /* stnsm */ | ||
67 | case 0xad: /* stosm */ | ||
66 | return -EINVAL; | 68 | return -EINVAL; |
67 | } | 69 | } |
68 | switch (*(__u16 *) instruction) { | 70 | switch (*(__u16 *) instruction) { |
@@ -72,6 +74,7 @@ int __kprobes is_prohibited_opcode(kprobe_opcode_t *instruction) | |||
72 | case 0xb258: /* bsg */ | 74 | case 0xb258: /* bsg */ |
73 | case 0xb218: /* pc */ | 75 | case 0xb218: /* pc */ |
74 | case 0xb228: /* pt */ | 76 | case 0xb228: /* pt */ |
77 | case 0xb98d: /* epsw */ | ||
75 | return -EINVAL; | 78 | return -EINVAL; |
76 | } | 79 | } |
77 | return 0; | 80 | return 0; |
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c index 7d893248d265..c8e8e1354e1d 100644 --- a/arch/s390/kernel/setup.c +++ b/arch/s390/kernel/setup.c | |||
@@ -401,7 +401,6 @@ setup_lowcore(void) | |||
401 | lc->io_new_psw.mask = psw_kernel_bits; | 401 | lc->io_new_psw.mask = psw_kernel_bits; |
402 | lc->io_new_psw.addr = PSW_ADDR_AMODE | (unsigned long) io_int_handler; | 402 | lc->io_new_psw.addr = PSW_ADDR_AMODE | (unsigned long) io_int_handler; |
403 | lc->clock_comparator = -1ULL; | 403 | lc->clock_comparator = -1ULL; |
404 | lc->cmf_hpp = -1ULL; | ||
405 | lc->kernel_stack = ((unsigned long) &init_thread_union) + THREAD_SIZE; | 404 | lc->kernel_stack = ((unsigned long) &init_thread_union) + THREAD_SIZE; |
406 | lc->async_stack = (unsigned long) | 405 | lc->async_stack = (unsigned long) |
407 | __alloc_bootmem(ASYNC_SIZE, ASYNC_SIZE, 0) + ASYNC_SIZE; | 406 | __alloc_bootmem(ASYNC_SIZE, ASYNC_SIZE, 0) + ASYNC_SIZE; |
@@ -418,6 +417,7 @@ setup_lowcore(void) | |||
418 | __ctl_set_bit(14, 29); | 417 | __ctl_set_bit(14, 29); |
419 | } | 418 | } |
420 | #else | 419 | #else |
420 | lc->cmf_hpp = -1ULL; | ||
421 | lc->vdso_per_cpu_data = (unsigned long) &lc->paste[0]; | 421 | lc->vdso_per_cpu_data = (unsigned long) &lc->paste[0]; |
422 | #endif | 422 | #endif |
423 | lc->sync_enter_timer = S390_lowcore.sync_enter_timer; | 423 | lc->sync_enter_timer = S390_lowcore.sync_enter_timer; |
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c index e4d98de83dd8..541053ed234e 100644 --- a/arch/s390/kernel/smp.c +++ b/arch/s390/kernel/smp.c | |||
@@ -944,21 +944,21 @@ static int __cpuinit smp_cpu_notify(struct notifier_block *self, | |||
944 | struct cpu *c = &per_cpu(cpu_devices, cpu); | 944 | struct cpu *c = &per_cpu(cpu_devices, cpu); |
945 | struct sys_device *s = &c->sysdev; | 945 | struct sys_device *s = &c->sysdev; |
946 | struct s390_idle_data *idle; | 946 | struct s390_idle_data *idle; |
947 | int err = 0; | ||
947 | 948 | ||
948 | switch (action) { | 949 | switch (action) { |
949 | case CPU_ONLINE: | 950 | case CPU_ONLINE: |
950 | case CPU_ONLINE_FROZEN: | 951 | case CPU_ONLINE_FROZEN: |
951 | idle = &per_cpu(s390_idle, cpu); | 952 | idle = &per_cpu(s390_idle, cpu); |
952 | memset(idle, 0, sizeof(struct s390_idle_data)); | 953 | memset(idle, 0, sizeof(struct s390_idle_data)); |
953 | if (sysfs_create_group(&s->kobj, &cpu_online_attr_group)) | 954 | err = sysfs_create_group(&s->kobj, &cpu_online_attr_group); |
954 | return NOTIFY_BAD; | ||
955 | break; | 955 | break; |
956 | case CPU_DEAD: | 956 | case CPU_DEAD: |
957 | case CPU_DEAD_FROZEN: | 957 | case CPU_DEAD_FROZEN: |
958 | sysfs_remove_group(&s->kobj, &cpu_online_attr_group); | 958 | sysfs_remove_group(&s->kobj, &cpu_online_attr_group); |
959 | break; | 959 | break; |
960 | } | 960 | } |
961 | return NOTIFY_OK; | 961 | return notifier_from_errno(err); |
962 | } | 962 | } |
963 | 963 | ||
964 | static struct notifier_block __cpuinitdata smp_cpu_nb = { | 964 | static struct notifier_block __cpuinitdata smp_cpu_nb = { |
diff --git a/arch/s390/kvm/Kconfig b/arch/s390/kvm/Kconfig index 2f4b687cc7fa..a7251580891c 100644 --- a/arch/s390/kvm/Kconfig +++ b/arch/s390/kvm/Kconfig | |||
@@ -33,17 +33,6 @@ config KVM | |||
33 | 33 | ||
34 | If unsure, say N. | 34 | If unsure, say N. |
35 | 35 | ||
36 | config KVM_AWARE_CMF | ||
37 | depends on KVM | ||
38 | bool "KVM aware sampling" | ||
39 | ---help--- | ||
40 | This option enhances the sampling data from the CPU Measurement | ||
41 | Facility with additional information, that allows to distinguish | ||
42 | guest(s) and host when using the kernel based virtual machine | ||
43 | functionality. | ||
44 | |||
45 | If unsure, say N. | ||
46 | |||
47 | # OK, it's a little counter-intuitive to do this, but it puts it neatly under | 36 | # OK, it's a little counter-intuitive to do this, but it puts it neatly under |
48 | # the virtualization menu. | 37 | # the virtualization menu. |
49 | source drivers/vhost/Kconfig | 38 | source drivers/vhost/Kconfig |
diff --git a/arch/s390/kvm/sie64a.S b/arch/s390/kvm/sie64a.S index 31646bd0e469..7e9d30d567b0 100644 --- a/arch/s390/kvm/sie64a.S +++ b/arch/s390/kvm/sie64a.S | |||
@@ -32,12 +32,10 @@ SPI_PSW = STACK_FRAME_OVERHEAD + __PT_PSW | |||
32 | 32 | ||
33 | 33 | ||
34 | .macro SPP newpp | 34 | .macro SPP newpp |
35 | #ifdef CONFIG_KVM_AWARE_CMF | ||
36 | tm __LC_MACHINE_FLAGS+6,0x20 # MACHINE_FLAG_SPP | 35 | tm __LC_MACHINE_FLAGS+6,0x20 # MACHINE_FLAG_SPP |
37 | jz 0f | 36 | jz 0f |
38 | .insn s,0xb2800000,\newpp | 37 | .insn s,0xb2800000,\newpp |
39 | 0: | 38 | 0: |
40 | #endif | ||
41 | .endm | 39 | .endm |
42 | 40 | ||
43 | sie_irq_handler: | 41 | sie_irq_handler: |
diff --git a/arch/s390/mm/cmm.c b/arch/s390/mm/cmm.c index f87b34731e1d..eb6a2ef5f82e 100644 --- a/arch/s390/mm/cmm.c +++ b/arch/s390/mm/cmm.c | |||
@@ -1,11 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * arch/s390/mm/cmm.c | 2 | * Collaborative memory management interface. |
3 | * | 3 | * |
4 | * S390 version | 4 | * Copyright IBM Corp 2003,2010 |
5 | * Copyright (C) 2003 IBM Deutschland Entwicklung GmbH, IBM Corporation | 5 | * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>, |
6 | * Author(s): Martin Schwidefsky (schwidefsky@de.ibm.com) | ||
7 | * | 6 | * |
8 | * Collaborative memory management interface. | ||
9 | */ | 7 | */ |
10 | 8 | ||
11 | #include <linux/errno.h> | 9 | #include <linux/errno.h> |
@@ -20,9 +18,9 @@ | |||
20 | #include <linux/kthread.h> | 18 | #include <linux/kthread.h> |
21 | #include <linux/oom.h> | 19 | #include <linux/oom.h> |
22 | #include <linux/suspend.h> | 20 | #include <linux/suspend.h> |
21 | #include <linux/uaccess.h> | ||
23 | 22 | ||
24 | #include <asm/pgalloc.h> | 23 | #include <asm/pgalloc.h> |
25 | #include <asm/uaccess.h> | ||
26 | #include <asm/diag.h> | 24 | #include <asm/diag.h> |
27 | 25 | ||
28 | static char *sender = "VMRMSVM"; | 26 | static char *sender = "VMRMSVM"; |
@@ -53,14 +51,14 @@ static struct cmm_page_array *cmm_timed_page_list; | |||
53 | static DEFINE_SPINLOCK(cmm_lock); | 51 | static DEFINE_SPINLOCK(cmm_lock); |
54 | 52 | ||
55 | static struct task_struct *cmm_thread_ptr; | 53 | static struct task_struct *cmm_thread_ptr; |
56 | static wait_queue_head_t cmm_thread_wait; | 54 | static DECLARE_WAIT_QUEUE_HEAD(cmm_thread_wait); |
57 | static struct timer_list cmm_timer; | 55 | static DEFINE_TIMER(cmm_timer, NULL, 0, 0); |
58 | 56 | ||
59 | static void cmm_timer_fn(unsigned long); | 57 | static void cmm_timer_fn(unsigned long); |
60 | static void cmm_set_timer(void); | 58 | static void cmm_set_timer(void); |
61 | 59 | ||
62 | static long | 60 | static long cmm_alloc_pages(long nr, long *counter, |
63 | cmm_alloc_pages(long nr, long *counter, struct cmm_page_array **list) | 61 | struct cmm_page_array **list) |
64 | { | 62 | { |
65 | struct cmm_page_array *pa, *npa; | 63 | struct cmm_page_array *pa, *npa; |
66 | unsigned long addr; | 64 | unsigned long addr; |
@@ -99,8 +97,7 @@ cmm_alloc_pages(long nr, long *counter, struct cmm_page_array **list) | |||
99 | return nr; | 97 | return nr; |
100 | } | 98 | } |
101 | 99 | ||
102 | static long | 100 | static long cmm_free_pages(long nr, long *counter, struct cmm_page_array **list) |
103 | cmm_free_pages(long nr, long *counter, struct cmm_page_array **list) | ||
104 | { | 101 | { |
105 | struct cmm_page_array *pa; | 102 | struct cmm_page_array *pa; |
106 | unsigned long addr; | 103 | unsigned long addr; |
@@ -140,11 +137,10 @@ static int cmm_oom_notify(struct notifier_block *self, | |||
140 | } | 137 | } |
141 | 138 | ||
142 | static struct notifier_block cmm_oom_nb = { | 139 | static struct notifier_block cmm_oom_nb = { |
143 | .notifier_call = cmm_oom_notify | 140 | .notifier_call = cmm_oom_notify, |
144 | }; | 141 | }; |
145 | 142 | ||
146 | static int | 143 | static int cmm_thread(void *dummy) |
147 | cmm_thread(void *dummy) | ||
148 | { | 144 | { |
149 | int rc; | 145 | int rc; |
150 | 146 | ||
@@ -170,7 +166,7 @@ cmm_thread(void *dummy) | |||
170 | cmm_timed_pages_target = cmm_timed_pages; | 166 | cmm_timed_pages_target = cmm_timed_pages; |
171 | } else if (cmm_timed_pages_target < cmm_timed_pages) { | 167 | } else if (cmm_timed_pages_target < cmm_timed_pages) { |
172 | cmm_free_pages(1, &cmm_timed_pages, | 168 | cmm_free_pages(1, &cmm_timed_pages, |
173 | &cmm_timed_page_list); | 169 | &cmm_timed_page_list); |
174 | } | 170 | } |
175 | if (cmm_timed_pages > 0 && !timer_pending(&cmm_timer)) | 171 | if (cmm_timed_pages > 0 && !timer_pending(&cmm_timer)) |
176 | cmm_set_timer(); | 172 | cmm_set_timer(); |
@@ -178,14 +174,12 @@ cmm_thread(void *dummy) | |||
178 | return 0; | 174 | return 0; |
179 | } | 175 | } |
180 | 176 | ||
181 | static void | 177 | static void cmm_kick_thread(void) |
182 | cmm_kick_thread(void) | ||
183 | { | 178 | { |
184 | wake_up(&cmm_thread_wait); | 179 | wake_up(&cmm_thread_wait); |
185 | } | 180 | } |
186 | 181 | ||
187 | static void | 182 | static void cmm_set_timer(void) |
188 | cmm_set_timer(void) | ||
189 | { | 183 | { |
190 | if (cmm_timed_pages_target <= 0 || cmm_timeout_seconds <= 0) { | 184 | if (cmm_timed_pages_target <= 0 || cmm_timeout_seconds <= 0) { |
191 | if (timer_pending(&cmm_timer)) | 185 | if (timer_pending(&cmm_timer)) |
@@ -202,8 +196,7 @@ cmm_set_timer(void) | |||
202 | add_timer(&cmm_timer); | 196 | add_timer(&cmm_timer); |
203 | } | 197 | } |
204 | 198 | ||
205 | static void | 199 | static void cmm_timer_fn(unsigned long ignored) |
206 | cmm_timer_fn(unsigned long ignored) | ||
207 | { | 200 | { |
208 | long nr; | 201 | long nr; |
209 | 202 | ||
@@ -216,57 +209,49 @@ cmm_timer_fn(unsigned long ignored) | |||
216 | cmm_set_timer(); | 209 | cmm_set_timer(); |
217 | } | 210 | } |
218 | 211 | ||
219 | void | 212 | static void cmm_set_pages(long nr) |
220 | cmm_set_pages(long nr) | ||
221 | { | 213 | { |
222 | cmm_pages_target = nr; | 214 | cmm_pages_target = nr; |
223 | cmm_kick_thread(); | 215 | cmm_kick_thread(); |
224 | } | 216 | } |
225 | 217 | ||
226 | long | 218 | static long cmm_get_pages(void) |
227 | cmm_get_pages(void) | ||
228 | { | 219 | { |
229 | return cmm_pages; | 220 | return cmm_pages; |
230 | } | 221 | } |
231 | 222 | ||
232 | void | 223 | static void cmm_add_timed_pages(long nr) |
233 | cmm_add_timed_pages(long nr) | ||
234 | { | 224 | { |
235 | cmm_timed_pages_target += nr; | 225 | cmm_timed_pages_target += nr; |
236 | cmm_kick_thread(); | 226 | cmm_kick_thread(); |
237 | } | 227 | } |
238 | 228 | ||
239 | long | 229 | static long cmm_get_timed_pages(void) |
240 | cmm_get_timed_pages(void) | ||
241 | { | 230 | { |
242 | return cmm_timed_pages; | 231 | return cmm_timed_pages; |
243 | } | 232 | } |
244 | 233 | ||
245 | void | 234 | static void cmm_set_timeout(long nr, long seconds) |
246 | cmm_set_timeout(long nr, long seconds) | ||
247 | { | 235 | { |
248 | cmm_timeout_pages = nr; | 236 | cmm_timeout_pages = nr; |
249 | cmm_timeout_seconds = seconds; | 237 | cmm_timeout_seconds = seconds; |
250 | cmm_set_timer(); | 238 | cmm_set_timer(); |
251 | } | 239 | } |
252 | 240 | ||
253 | static int | 241 | static int cmm_skip_blanks(char *cp, char **endp) |
254 | cmm_skip_blanks(char *cp, char **endp) | ||
255 | { | 242 | { |
256 | char *str; | 243 | char *str; |
257 | 244 | ||
258 | for (str = cp; *str == ' ' || *str == '\t'; str++); | 245 | for (str = cp; *str == ' ' || *str == '\t'; str++) |
246 | ; | ||
259 | *endp = str; | 247 | *endp = str; |
260 | return str != cp; | 248 | return str != cp; |
261 | } | 249 | } |
262 | 250 | ||
263 | #ifdef CONFIG_CMM_PROC | ||
264 | |||
265 | static struct ctl_table cmm_table[]; | 251 | static struct ctl_table cmm_table[]; |
266 | 252 | ||
267 | static int | 253 | static int cmm_pages_handler(ctl_table *ctl, int write, void __user *buffer, |
268 | cmm_pages_handler(ctl_table *ctl, int write, | 254 | size_t *lenp, loff_t *ppos) |
269 | void __user *buffer, size_t *lenp, loff_t *ppos) | ||
270 | { | 255 | { |
271 | char buf[16], *p; | 256 | char buf[16], *p; |
272 | long nr; | 257 | long nr; |
@@ -305,9 +290,8 @@ cmm_pages_handler(ctl_table *ctl, int write, | |||
305 | return 0; | 290 | return 0; |
306 | } | 291 | } |
307 | 292 | ||
308 | static int | 293 | static int cmm_timeout_handler(ctl_table *ctl, int write, void __user *buffer, |
309 | cmm_timeout_handler(ctl_table *ctl, int write, | 294 | size_t *lenp, loff_t *ppos) |
310 | void __user *buffer, size_t *lenp, loff_t *ppos) | ||
311 | { | 295 | { |
312 | char buf[64], *p; | 296 | char buf[64], *p; |
313 | long nr, seconds; | 297 | long nr, seconds; |
@@ -370,12 +354,10 @@ static struct ctl_table cmm_dir_table[] = { | |||
370 | }, | 354 | }, |
371 | { } | 355 | { } |
372 | }; | 356 | }; |
373 | #endif | ||
374 | 357 | ||
375 | #ifdef CONFIG_CMM_IUCV | 358 | #ifdef CONFIG_CMM_IUCV |
376 | #define SMSG_PREFIX "CMM" | 359 | #define SMSG_PREFIX "CMM" |
377 | static void | 360 | static void cmm_smsg_target(const char *from, char *msg) |
378 | cmm_smsg_target(const char *from, char *msg) | ||
379 | { | 361 | { |
380 | long nr, seconds; | 362 | long nr, seconds; |
381 | 363 | ||
@@ -445,16 +427,13 @@ static struct notifier_block cmm_power_notifier = { | |||
445 | .notifier_call = cmm_power_event, | 427 | .notifier_call = cmm_power_event, |
446 | }; | 428 | }; |
447 | 429 | ||
448 | static int | 430 | static int cmm_init(void) |
449 | cmm_init (void) | ||
450 | { | 431 | { |
451 | int rc = -ENOMEM; | 432 | int rc = -ENOMEM; |
452 | 433 | ||
453 | #ifdef CONFIG_CMM_PROC | ||
454 | cmm_sysctl_header = register_sysctl_table(cmm_dir_table); | 434 | cmm_sysctl_header = register_sysctl_table(cmm_dir_table); |
455 | if (!cmm_sysctl_header) | 435 | if (!cmm_sysctl_header) |
456 | goto out_sysctl; | 436 | goto out_sysctl; |
457 | #endif | ||
458 | #ifdef CONFIG_CMM_IUCV | 437 | #ifdef CONFIG_CMM_IUCV |
459 | rc = smsg_register_callback(SMSG_PREFIX, cmm_smsg_target); | 438 | rc = smsg_register_callback(SMSG_PREFIX, cmm_smsg_target); |
460 | if (rc < 0) | 439 | if (rc < 0) |
@@ -466,8 +445,6 @@ cmm_init (void) | |||
466 | rc = register_pm_notifier(&cmm_power_notifier); | 445 | rc = register_pm_notifier(&cmm_power_notifier); |
467 | if (rc) | 446 | if (rc) |
468 | goto out_pm; | 447 | goto out_pm; |
469 | init_waitqueue_head(&cmm_thread_wait); | ||
470 | init_timer(&cmm_timer); | ||
471 | cmm_thread_ptr = kthread_run(cmm_thread, NULL, "cmmthread"); | 448 | cmm_thread_ptr = kthread_run(cmm_thread, NULL, "cmmthread"); |
472 | rc = IS_ERR(cmm_thread_ptr) ? PTR_ERR(cmm_thread_ptr) : 0; | 449 | rc = IS_ERR(cmm_thread_ptr) ? PTR_ERR(cmm_thread_ptr) : 0; |
473 | if (rc) | 450 | if (rc) |
@@ -483,36 +460,26 @@ out_oom_notify: | |||
483 | smsg_unregister_callback(SMSG_PREFIX, cmm_smsg_target); | 460 | smsg_unregister_callback(SMSG_PREFIX, cmm_smsg_target); |
484 | out_smsg: | 461 | out_smsg: |
485 | #endif | 462 | #endif |
486 | #ifdef CONFIG_CMM_PROC | ||
487 | unregister_sysctl_table(cmm_sysctl_header); | 463 | unregister_sysctl_table(cmm_sysctl_header); |
488 | out_sysctl: | 464 | out_sysctl: |
489 | #endif | 465 | del_timer_sync(&cmm_timer); |
490 | return rc; | 466 | return rc; |
491 | } | 467 | } |
468 | module_init(cmm_init); | ||
492 | 469 | ||
493 | static void | 470 | static void cmm_exit(void) |
494 | cmm_exit(void) | ||
495 | { | 471 | { |
496 | kthread_stop(cmm_thread_ptr); | ||
497 | unregister_pm_notifier(&cmm_power_notifier); | ||
498 | unregister_oom_notifier(&cmm_oom_nb); | ||
499 | cmm_free_pages(cmm_pages, &cmm_pages, &cmm_page_list); | ||
500 | cmm_free_pages(cmm_timed_pages, &cmm_timed_pages, &cmm_timed_page_list); | ||
501 | #ifdef CONFIG_CMM_PROC | ||
502 | unregister_sysctl_table(cmm_sysctl_header); | 472 | unregister_sysctl_table(cmm_sysctl_header); |
503 | #endif | ||
504 | #ifdef CONFIG_CMM_IUCV | 473 | #ifdef CONFIG_CMM_IUCV |
505 | smsg_unregister_callback(SMSG_PREFIX, cmm_smsg_target); | 474 | smsg_unregister_callback(SMSG_PREFIX, cmm_smsg_target); |
506 | #endif | 475 | #endif |
476 | unregister_pm_notifier(&cmm_power_notifier); | ||
477 | unregister_oom_notifier(&cmm_oom_nb); | ||
478 | kthread_stop(cmm_thread_ptr); | ||
479 | del_timer_sync(&cmm_timer); | ||
480 | cmm_free_pages(cmm_pages, &cmm_pages, &cmm_page_list); | ||
481 | cmm_free_pages(cmm_timed_pages, &cmm_timed_pages, &cmm_timed_page_list); | ||
507 | } | 482 | } |
508 | |||
509 | module_init(cmm_init); | ||
510 | module_exit(cmm_exit); | 483 | module_exit(cmm_exit); |
511 | 484 | ||
512 | EXPORT_SYMBOL(cmm_set_pages); | ||
513 | EXPORT_SYMBOL(cmm_get_pages); | ||
514 | EXPORT_SYMBOL(cmm_add_timed_pages); | ||
515 | EXPORT_SYMBOL(cmm_get_timed_pages); | ||
516 | EXPORT_SYMBOL(cmm_set_timeout); | ||
517 | |||
518 | MODULE_LICENSE("GPL"); | 485 | MODULE_LICENSE("GPL"); |
diff --git a/arch/score/include/asm/scatterlist.h b/arch/score/include/asm/scatterlist.h index 9f533b8362c7..4fa1a6658215 100644 --- a/arch/score/include/asm/scatterlist.h +++ b/arch/score/include/asm/scatterlist.h | |||
@@ -1,6 +1,8 @@ | |||
1 | #ifndef _ASM_SCORE_SCATTERLIST_H | 1 | #ifndef _ASM_SCORE_SCATTERLIST_H |
2 | #define _ASM_SCORE_SCATTERLIST_H | 2 | #define _ASM_SCORE_SCATTERLIST_H |
3 | 3 | ||
4 | #define ISA_DMA_THRESHOLD (~0UL) | ||
5 | |||
4 | #include <asm-generic/scatterlist.h> | 6 | #include <asm-generic/scatterlist.h> |
5 | 7 | ||
6 | #endif /* _ASM_SCORE_SCATTERLIST_H */ | 8 | #endif /* _ASM_SCORE_SCATTERLIST_H */ |
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 0e318c905eea..c5ee4ce60b57 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig | |||
@@ -186,6 +186,9 @@ config DMA_NONCOHERENT | |||
186 | config NEED_DMA_MAP_STATE | 186 | config NEED_DMA_MAP_STATE |
187 | def_bool DMA_NONCOHERENT | 187 | def_bool DMA_NONCOHERENT |
188 | 188 | ||
189 | config NEED_SG_DMA_LENGTH | ||
190 | def_bool y | ||
191 | |||
189 | source "init/Kconfig" | 192 | source "init/Kconfig" |
190 | 193 | ||
191 | source "kernel/Kconfig.freezer" | 194 | source "kernel/Kconfig.freezer" |
diff --git a/arch/sh/kernel/ptrace_32.c b/arch/sh/kernel/ptrace_32.c index d4104ce9fe53..6c4bbba2a675 100644 --- a/arch/sh/kernel/ptrace_32.c +++ b/arch/sh/kernel/ptrace_32.c | |||
@@ -436,29 +436,6 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
436 | 0, sizeof(struct pt_dspregs), | 436 | 0, sizeof(struct pt_dspregs), |
437 | (const void __user *)data); | 437 | (const void __user *)data); |
438 | #endif | 438 | #endif |
439 | #ifdef CONFIG_BINFMT_ELF_FDPIC | ||
440 | case PTRACE_GETFDPIC: { | ||
441 | unsigned long tmp = 0; | ||
442 | |||
443 | switch (addr) { | ||
444 | case PTRACE_GETFDPIC_EXEC: | ||
445 | tmp = child->mm->context.exec_fdpic_loadmap; | ||
446 | break; | ||
447 | case PTRACE_GETFDPIC_INTERP: | ||
448 | tmp = child->mm->context.interp_fdpic_loadmap; | ||
449 | break; | ||
450 | default: | ||
451 | break; | ||
452 | } | ||
453 | |||
454 | ret = 0; | ||
455 | if (put_user(tmp, datap)) { | ||
456 | ret = -EFAULT; | ||
457 | break; | ||
458 | } | ||
459 | break; | ||
460 | } | ||
461 | #endif | ||
462 | default: | 439 | default: |
463 | ret = ptrace_request(child, request, addr, data); | 440 | ret = ptrace_request(child, request, addr, data); |
464 | break; | 441 | break; |
diff --git a/arch/sh/math-emu/sfp-util.h b/arch/sh/math-emu/sfp-util.h index e8526021892f..8ae1bd310ad0 100644 --- a/arch/sh/math-emu/sfp-util.h +++ b/arch/sh/math-emu/sfp-util.h | |||
@@ -66,3 +66,7 @@ | |||
66 | } while (0) | 66 | } while (0) |
67 | 67 | ||
68 | #define abort() return 0 | 68 | #define abort() return 0 |
69 | |||
70 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
71 | |||
72 | |||
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index d6781ce687e2..6f1470baa314 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig | |||
@@ -133,6 +133,9 @@ config ZONE_DMA | |||
133 | config NEED_DMA_MAP_STATE | 133 | config NEED_DMA_MAP_STATE |
134 | def_bool y | 134 | def_bool y |
135 | 135 | ||
136 | config NEED_SG_DMA_LENGTH | ||
137 | def_bool y | ||
138 | |||
136 | config GENERIC_ISA_DMA | 139 | config GENERIC_ISA_DMA |
137 | bool | 140 | bool |
138 | default y if SPARC32 | 141 | default y if SPARC32 |
diff --git a/arch/sparc/include/asm/scatterlist.h b/arch/sparc/include/asm/scatterlist.h index d1120257b033..433e45f05fd4 100644 --- a/arch/sparc/include/asm/scatterlist.h +++ b/arch/sparc/include/asm/scatterlist.h | |||
@@ -1,8 +1,9 @@ | |||
1 | #ifndef _SPARC_SCATTERLIST_H | 1 | #ifndef _SPARC_SCATTERLIST_H |
2 | #define _SPARC_SCATTERLIST_H | 2 | #define _SPARC_SCATTERLIST_H |
3 | 3 | ||
4 | #define sg_dma_len(sg) ((sg)->dma_length) | ||
5 | |||
6 | #include <asm-generic/scatterlist.h> | 4 | #include <asm-generic/scatterlist.h> |
7 | 5 | ||
6 | #define ISA_DMA_THRESHOLD (~0UL) | ||
7 | #define ARCH_HAS_SG_CHAIN | ||
8 | |||
8 | #endif /* !(_SPARC_SCATTERLIST_H) */ | 9 | #endif /* !(_SPARC_SCATTERLIST_H) */ |
diff --git a/arch/sparc/math-emu/sfp-util_32.h b/arch/sparc/math-emu/sfp-util_32.h index 0ea35afbb914..d1b2aff3c259 100644 --- a/arch/sparc/math-emu/sfp-util_32.h +++ b/arch/sparc/math-emu/sfp-util_32.h | |||
@@ -107,3 +107,9 @@ | |||
107 | 107 | ||
108 | #define abort() \ | 108 | #define abort() \ |
109 | return 0 | 109 | return 0 |
110 | |||
111 | #ifdef __BIG_ENDIAN | ||
112 | #define __BYTE_ORDER __BIG_ENDIAN | ||
113 | #else | ||
114 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
115 | #endif | ||
diff --git a/arch/sparc/math-emu/sfp-util_64.h b/arch/sparc/math-emu/sfp-util_64.h index d17c9bc72181..425d3cf01af4 100644 --- a/arch/sparc/math-emu/sfp-util_64.h +++ b/arch/sparc/math-emu/sfp-util_64.h | |||
@@ -112,3 +112,9 @@ | |||
112 | 112 | ||
113 | #define abort() \ | 113 | #define abort() \ |
114 | return 0 | 114 | return 0 |
115 | |||
116 | #ifdef __BIG_ENDIAN | ||
117 | #define __BYTE_ORDER __BIG_ENDIAN | ||
118 | #else | ||
119 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
120 | #endif | ||
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index e0c619c55b4e..dcb0593b4a66 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -109,6 +109,9 @@ config SBUS | |||
109 | config NEED_DMA_MAP_STATE | 109 | config NEED_DMA_MAP_STATE |
110 | def_bool (X86_64 || DMAR || DMA_API_DEBUG) | 110 | def_bool (X86_64 || DMAR || DMA_API_DEBUG) |
111 | 111 | ||
112 | config NEED_SG_DMA_LENGTH | ||
113 | def_bool y | ||
114 | |||
112 | config GENERIC_ISA_DMA | 115 | config GENERIC_ISA_DMA |
113 | def_bool y | 116 | def_bool y |
114 | 117 | ||
@@ -1703,6 +1706,10 @@ config HAVE_ARCH_EARLY_PFN_TO_NID | |||
1703 | def_bool X86_64 | 1706 | def_bool X86_64 |
1704 | depends on NUMA | 1707 | depends on NUMA |
1705 | 1708 | ||
1709 | config USE_PERCPU_NUMA_NODE_ID | ||
1710 | def_bool X86_64 | ||
1711 | depends on NUMA | ||
1712 | |||
1706 | menu "Power management and ACPI options" | 1713 | menu "Power management and ACPI options" |
1707 | 1714 | ||
1708 | config ARCH_HIBERNATION_HEADER | 1715 | config ARCH_HIBERNATION_HEADER |
diff --git a/arch/x86/boot/compressed/relocs.c b/arch/x86/boot/compressed/relocs.c index 7b1aaa20c7b5..89bbf4e4d05d 100644 --- a/arch/x86/boot/compressed/relocs.c +++ b/arch/x86/boot/compressed/relocs.c | |||
@@ -195,11 +195,11 @@ static const char *sym_name(const char *sym_strtab, Elf32_Sym *sym) | |||
195 | 195 | ||
196 | 196 | ||
197 | 197 | ||
198 | #if __BYTE_ORDER == __LITTLE_ENDIAN | 198 | #if BYTE_ORDER == LITTLE_ENDIAN |
199 | #define le16_to_cpu(val) (val) | 199 | #define le16_to_cpu(val) (val) |
200 | #define le32_to_cpu(val) (val) | 200 | #define le32_to_cpu(val) (val) |
201 | #endif | 201 | #endif |
202 | #if __BYTE_ORDER == __BIG_ENDIAN | 202 | #if BYTE_ORDER == BIG_ENDIAN |
203 | #define le16_to_cpu(val) bswap_16(val) | 203 | #define le16_to_cpu(val) bswap_16(val) |
204 | #define le32_to_cpu(val) bswap_32(val) | 204 | #define le32_to_cpu(val) bswap_32(val) |
205 | #endif | 205 | #endif |
diff --git a/arch/x86/include/asm/scatterlist.h b/arch/x86/include/asm/scatterlist.h index 75af592677ec..fb0b1874396f 100644 --- a/arch/x86/include/asm/scatterlist.h +++ b/arch/x86/include/asm/scatterlist.h | |||
@@ -1,8 +1,9 @@ | |||
1 | #ifndef _ASM_X86_SCATTERLIST_H | 1 | #ifndef _ASM_X86_SCATTERLIST_H |
2 | #define _ASM_X86_SCATTERLIST_H | 2 | #define _ASM_X86_SCATTERLIST_H |
3 | 3 | ||
4 | #define ISA_DMA_THRESHOLD (0x00ffffff) | ||
5 | |||
6 | #include <asm-generic/scatterlist.h> | 4 | #include <asm-generic/scatterlist.h> |
7 | 5 | ||
6 | #define ISA_DMA_THRESHOLD (0x00ffffff) | ||
7 | #define ARCH_HAS_SG_CHAIN | ||
8 | |||
8 | #endif /* _ASM_X86_SCATTERLIST_H */ | 9 | #endif /* _ASM_X86_SCATTERLIST_H */ |
diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h index c5087d796587..21899cc31e52 100644 --- a/arch/x86/include/asm/topology.h +++ b/arch/x86/include/asm/topology.h | |||
@@ -53,33 +53,29 @@ | |||
53 | extern int cpu_to_node_map[]; | 53 | extern int cpu_to_node_map[]; |
54 | 54 | ||
55 | /* Returns the number of the node containing CPU 'cpu' */ | 55 | /* Returns the number of the node containing CPU 'cpu' */ |
56 | static inline int cpu_to_node(int cpu) | 56 | static inline int __cpu_to_node(int cpu) |
57 | { | 57 | { |
58 | return cpu_to_node_map[cpu]; | 58 | return cpu_to_node_map[cpu]; |
59 | } | 59 | } |
60 | #define early_cpu_to_node(cpu) cpu_to_node(cpu) | 60 | #define early_cpu_to_node __cpu_to_node |
61 | #define cpu_to_node __cpu_to_node | ||
61 | 62 | ||
62 | #else /* CONFIG_X86_64 */ | 63 | #else /* CONFIG_X86_64 */ |
63 | 64 | ||
64 | /* Mappings between logical cpu number and node number */ | 65 | /* Mappings between logical cpu number and node number */ |
65 | DECLARE_EARLY_PER_CPU(int, x86_cpu_to_node_map); | 66 | DECLARE_EARLY_PER_CPU(int, x86_cpu_to_node_map); |
66 | 67 | ||
67 | /* Returns the number of the current Node. */ | ||
68 | DECLARE_PER_CPU(int, node_number); | ||
69 | #define numa_node_id() percpu_read(node_number) | ||
70 | |||
71 | #ifdef CONFIG_DEBUG_PER_CPU_MAPS | 68 | #ifdef CONFIG_DEBUG_PER_CPU_MAPS |
72 | extern int cpu_to_node(int cpu); | 69 | /* |
70 | * override generic percpu implementation of cpu_to_node | ||
71 | */ | ||
72 | extern int __cpu_to_node(int cpu); | ||
73 | #define cpu_to_node __cpu_to_node | ||
74 | |||
73 | extern int early_cpu_to_node(int cpu); | 75 | extern int early_cpu_to_node(int cpu); |
74 | 76 | ||
75 | #else /* !CONFIG_DEBUG_PER_CPU_MAPS */ | 77 | #else /* !CONFIG_DEBUG_PER_CPU_MAPS */ |
76 | 78 | ||
77 | /* Returns the number of the node containing CPU 'cpu' */ | ||
78 | static inline int cpu_to_node(int cpu) | ||
79 | { | ||
80 | return per_cpu(x86_cpu_to_node_map, cpu); | ||
81 | } | ||
82 | |||
83 | /* Same function but used if called before per_cpu areas are setup */ | 79 | /* Same function but used if called before per_cpu areas are setup */ |
84 | static inline int early_cpu_to_node(int cpu) | 80 | static inline int early_cpu_to_node(int cpu) |
85 | { | 81 | { |
@@ -170,6 +166,10 @@ static inline int numa_node_id(void) | |||
170 | { | 166 | { |
171 | return 0; | 167 | return 0; |
172 | } | 168 | } |
169 | /* | ||
170 | * indicate override: | ||
171 | */ | ||
172 | #define numa_node_id numa_node_id | ||
173 | 173 | ||
174 | static inline int early_cpu_to_node(int cpu) | 174 | static inline int early_cpu_to_node(int cpu) |
175 | { | 175 | { |
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c index cc83a002786e..68e4a6f2211e 100644 --- a/arch/x86/kernel/cpu/common.c +++ b/arch/x86/kernel/cpu/common.c | |||
@@ -1121,9 +1121,9 @@ void __cpuinit cpu_init(void) | |||
1121 | oist = &per_cpu(orig_ist, cpu); | 1121 | oist = &per_cpu(orig_ist, cpu); |
1122 | 1122 | ||
1123 | #ifdef CONFIG_NUMA | 1123 | #ifdef CONFIG_NUMA |
1124 | if (cpu != 0 && percpu_read(node_number) == 0 && | 1124 | if (cpu != 0 && percpu_read(numa_node) == 0 && |
1125 | cpu_to_node(cpu) != NUMA_NO_NODE) | 1125 | early_cpu_to_node(cpu) != NUMA_NO_NODE) |
1126 | percpu_write(node_number, cpu_to_node(cpu)); | 1126 | set_numa_node(early_cpu_to_node(cpu)); |
1127 | #endif | 1127 | #endif |
1128 | 1128 | ||
1129 | me = current; | 1129 | me = current; |
diff --git a/arch/x86/kernel/cpu/mcheck/therm_throt.c b/arch/x86/kernel/cpu/mcheck/therm_throt.c index 81c499eceb21..e1a0a3bf9716 100644 --- a/arch/x86/kernel/cpu/mcheck/therm_throt.c +++ b/arch/x86/kernel/cpu/mcheck/therm_throt.c | |||
@@ -190,7 +190,7 @@ thermal_throttle_cpu_callback(struct notifier_block *nfb, | |||
190 | mutex_unlock(&therm_cpu_lock); | 190 | mutex_unlock(&therm_cpu_lock); |
191 | break; | 191 | break; |
192 | } | 192 | } |
193 | return err ? NOTIFY_BAD : NOTIFY_OK; | 193 | return notifier_from_errno(err); |
194 | } | 194 | } |
195 | 195 | ||
196 | static struct notifier_block thermal_throttle_cpu_notifier __cpuinitdata = | 196 | static struct notifier_block thermal_throttle_cpu_notifier __cpuinitdata = |
diff --git a/arch/x86/kernel/cpuid.c b/arch/x86/kernel/cpuid.c index 8b862d5900fe..1b7b31ab7d86 100644 --- a/arch/x86/kernel/cpuid.c +++ b/arch/x86/kernel/cpuid.c | |||
@@ -170,7 +170,7 @@ static int __cpuinit cpuid_class_cpu_callback(struct notifier_block *nfb, | |||
170 | cpuid_device_destroy(cpu); | 170 | cpuid_device_destroy(cpu); |
171 | break; | 171 | break; |
172 | } | 172 | } |
173 | return err ? NOTIFY_BAD : NOTIFY_OK; | 173 | return notifier_from_errno(err); |
174 | } | 174 | } |
175 | 175 | ||
176 | static struct notifier_block __refdata cpuid_class_cpu_notifier = | 176 | static struct notifier_block __refdata cpuid_class_cpu_notifier = |
diff --git a/arch/x86/kernel/msr.c b/arch/x86/kernel/msr.c index 4d4468e9f47c..7bf2dc4c8f70 100644 --- a/arch/x86/kernel/msr.c +++ b/arch/x86/kernel/msr.c | |||
@@ -230,7 +230,7 @@ static int __cpuinit msr_class_cpu_callback(struct notifier_block *nfb, | |||
230 | msr_device_destroy(cpu); | 230 | msr_device_destroy(cpu); |
231 | break; | 231 | break; |
232 | } | 232 | } |
233 | return err ? NOTIFY_BAD : NOTIFY_OK; | 233 | return notifier_from_errno(err); |
234 | } | 234 | } |
235 | 235 | ||
236 | static struct notifier_block __refdata msr_class_cpu_notifier = { | 236 | static struct notifier_block __refdata msr_class_cpu_notifier = { |
diff --git a/arch/x86/kernel/pci-swiotlb.c b/arch/x86/kernel/pci-swiotlb.c index 7d2829dde20e..a5bc528d4328 100644 --- a/arch/x86/kernel/pci-swiotlb.c +++ b/arch/x86/kernel/pci-swiotlb.c | |||
@@ -31,8 +31,6 @@ static struct dma_map_ops swiotlb_dma_ops = { | |||
31 | .free_coherent = swiotlb_free_coherent, | 31 | .free_coherent = swiotlb_free_coherent, |
32 | .sync_single_for_cpu = swiotlb_sync_single_for_cpu, | 32 | .sync_single_for_cpu = swiotlb_sync_single_for_cpu, |
33 | .sync_single_for_device = swiotlb_sync_single_for_device, | 33 | .sync_single_for_device = swiotlb_sync_single_for_device, |
34 | .sync_single_range_for_cpu = swiotlb_sync_single_range_for_cpu, | ||
35 | .sync_single_range_for_device = swiotlb_sync_single_range_for_device, | ||
36 | .sync_sg_for_cpu = swiotlb_sync_sg_for_cpu, | 34 | .sync_sg_for_cpu = swiotlb_sync_sg_for_cpu, |
37 | .sync_sg_for_device = swiotlb_sync_sg_for_device, | 35 | .sync_sg_for_device = swiotlb_sync_sg_for_device, |
38 | .map_sg = swiotlb_map_sg_attrs, | 36 | .map_sg = swiotlb_map_sg_attrs, |
diff --git a/arch/x86/kernel/setup_percpu.c b/arch/x86/kernel/setup_percpu.c index ef6370b00e70..a867940a6dfc 100644 --- a/arch/x86/kernel/setup_percpu.c +++ b/arch/x86/kernel/setup_percpu.c | |||
@@ -265,10 +265,10 @@ void __init setup_per_cpu_areas(void) | |||
265 | 265 | ||
266 | #if defined(CONFIG_X86_64) && defined(CONFIG_NUMA) | 266 | #if defined(CONFIG_X86_64) && defined(CONFIG_NUMA) |
267 | /* | 267 | /* |
268 | * make sure boot cpu node_number is right, when boot cpu is on the | 268 | * make sure boot cpu numa_node is right, when boot cpu is on the |
269 | * node that doesn't have mem installed | 269 | * node that doesn't have mem installed |
270 | */ | 270 | */ |
271 | per_cpu(node_number, boot_cpu_id) = cpu_to_node(boot_cpu_id); | 271 | set_cpu_numa_node(boot_cpu_id, early_cpu_to_node(boot_cpu_id)); |
272 | #endif | 272 | #endif |
273 | 273 | ||
274 | /* Setup node to cpumask map */ | 274 | /* Setup node to cpumask map */ |
diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c index 550df481accd..10c27bb1e95f 100644 --- a/arch/x86/mm/numa.c +++ b/arch/x86/mm/numa.c | |||
@@ -2,6 +2,7 @@ | |||
2 | #include <linux/topology.h> | 2 | #include <linux/topology.h> |
3 | #include <linux/module.h> | 3 | #include <linux/module.h> |
4 | #include <linux/bootmem.h> | 4 | #include <linux/bootmem.h> |
5 | #include <linux/random.h> | ||
5 | 6 | ||
6 | #ifdef CONFIG_DEBUG_PER_CPU_MAPS | 7 | #ifdef CONFIG_DEBUG_PER_CPU_MAPS |
7 | # define DBG(x...) printk(KERN_DEBUG x) | 8 | # define DBG(x...) printk(KERN_DEBUG x) |
@@ -65,3 +66,19 @@ const struct cpumask *cpumask_of_node(int node) | |||
65 | } | 66 | } |
66 | EXPORT_SYMBOL(cpumask_of_node); | 67 | EXPORT_SYMBOL(cpumask_of_node); |
67 | #endif | 68 | #endif |
69 | |||
70 | /* | ||
71 | * Return the bit number of a random bit set in the nodemask. | ||
72 | * (returns -1 if nodemask is empty) | ||
73 | */ | ||
74 | int __node_random(const nodemask_t *maskp) | ||
75 | { | ||
76 | int w, bit = -1; | ||
77 | |||
78 | w = nodes_weight(*maskp); | ||
79 | if (w) | ||
80 | bit = bitmap_ord_to_pos(maskp->bits, | ||
81 | get_random_int() % w, MAX_NUMNODES); | ||
82 | return bit; | ||
83 | } | ||
84 | EXPORT_SYMBOL(__node_random); | ||
diff --git a/arch/x86/mm/numa_64.c b/arch/x86/mm/numa_64.c index 8948f47fde05..a7bcc23ef96c 100644 --- a/arch/x86/mm/numa_64.c +++ b/arch/x86/mm/numa_64.c | |||
@@ -33,9 +33,6 @@ int numa_off __initdata; | |||
33 | static unsigned long __initdata nodemap_addr; | 33 | static unsigned long __initdata nodemap_addr; |
34 | static unsigned long __initdata nodemap_size; | 34 | static unsigned long __initdata nodemap_size; |
35 | 35 | ||
36 | DEFINE_PER_CPU(int, node_number) = 0; | ||
37 | EXPORT_PER_CPU_SYMBOL(node_number); | ||
38 | |||
39 | /* | 36 | /* |
40 | * Map cpu index to node index | 37 | * Map cpu index to node index |
41 | */ | 38 | */ |
@@ -809,7 +806,7 @@ void __cpuinit numa_set_node(int cpu, int node) | |||
809 | per_cpu(x86_cpu_to_node_map, cpu) = node; | 806 | per_cpu(x86_cpu_to_node_map, cpu) = node; |
810 | 807 | ||
811 | if (node != NUMA_NO_NODE) | 808 | if (node != NUMA_NO_NODE) |
812 | per_cpu(node_number, cpu) = node; | 809 | set_cpu_numa_node(cpu, node); |
813 | } | 810 | } |
814 | 811 | ||
815 | void __cpuinit numa_clear_node(int cpu) | 812 | void __cpuinit numa_clear_node(int cpu) |
@@ -867,7 +864,7 @@ void __cpuinit numa_remove_cpu(int cpu) | |||
867 | numa_set_cpumask(cpu, 0); | 864 | numa_set_cpumask(cpu, 0); |
868 | } | 865 | } |
869 | 866 | ||
870 | int cpu_to_node(int cpu) | 867 | int __cpu_to_node(int cpu) |
871 | { | 868 | { |
872 | if (early_per_cpu_ptr(x86_cpu_to_node_map)) { | 869 | if (early_per_cpu_ptr(x86_cpu_to_node_map)) { |
873 | printk(KERN_WARNING | 870 | printk(KERN_WARNING |
@@ -877,7 +874,7 @@ int cpu_to_node(int cpu) | |||
877 | } | 874 | } |
878 | return per_cpu(x86_cpu_to_node_map, cpu); | 875 | return per_cpu(x86_cpu_to_node_map, cpu); |
879 | } | 876 | } |
880 | EXPORT_SYMBOL(cpu_to_node); | 877 | EXPORT_SYMBOL(__cpu_to_node); |
881 | 878 | ||
882 | /* | 879 | /* |
883 | * Same function as cpu_to_node() but used if called before the | 880 | * Same function as cpu_to_node() but used if called before the |
diff --git a/arch/xtensa/include/asm/scatterlist.h b/arch/xtensa/include/asm/scatterlist.h index 810080bb0a2b..b1f9fdc1d5ba 100644 --- a/arch/xtensa/include/asm/scatterlist.h +++ b/arch/xtensa/include/asm/scatterlist.h | |||
@@ -11,28 +11,7 @@ | |||
11 | #ifndef _XTENSA_SCATTERLIST_H | 11 | #ifndef _XTENSA_SCATTERLIST_H |
12 | #define _XTENSA_SCATTERLIST_H | 12 | #define _XTENSA_SCATTERLIST_H |
13 | 13 | ||
14 | #include <asm/types.h> | 14 | #include <asm-generic/scatterlist.h> |
15 | |||
16 | struct scatterlist { | ||
17 | #ifdef CONFIG_DEBUG_SG | ||
18 | unsigned long sg_magic; | ||
19 | #endif | ||
20 | unsigned long page_link; | ||
21 | unsigned int offset; | ||
22 | dma_addr_t dma_address; | ||
23 | unsigned int length; | ||
24 | }; | ||
25 | |||
26 | /* | ||
27 | * These macros should be used after a pci_map_sg call has been done | ||
28 | * to get bus addresses of each of the SG entries and their lengths. | ||
29 | * You should only work with the number of sg entries pci_map_sg | ||
30 | * returns, or alternatively stop on the first sg_dma_len(sg) which | ||
31 | * is 0. | ||
32 | */ | ||
33 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
34 | #define sg_dma_len(sg) ((sg)->length) | ||
35 | |||
36 | 15 | ||
37 | #define ISA_DMA_THRESHOLD (~0UL) | 16 | #define ISA_DMA_THRESHOLD (~0UL) |
38 | 17 | ||