aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/configs/kirkwood_defconfig260
-rw-r--r--arch/arm/configs/orion5x_defconfig278
-rw-r--r--arch/arm/include/asm/unistd.h9
-rw-r--r--arch/arm/kernel/entry-armv.S7
-rw-r--r--arch/arm/kernel/head-common.S2
-rw-r--r--arch/arm/kernel/traps.c4
-rw-r--r--arch/arm/mach-ep93xx/micro9.c1
-rw-r--r--arch/arm/mach-kirkwood/addr-map.c2
-rw-r--r--arch/arm/mach-kirkwood/common.c2
-rw-r--r--arch/arm/mach-kirkwood/include/mach/io.h2
-rw-r--r--arch/arm/mach-kirkwood/include/mach/kirkwood.h1
-rw-r--r--arch/arm/mach-kirkwood/openrd_base-setup.c12
-rw-r--r--arch/arm/mach-kirkwood/pcie.c6
-rw-r--r--arch/arm/mach-ks8695/include/mach/regs-switch.h2
-rw-r--r--arch/arm/mach-mv78xx0/common.c2
-rw-r--r--arch/arm/mach-mv78xx0/include/mach/mv78xx0.h1
-rw-r--r--arch/arm/mach-pxa/irq.c11
-rw-r--r--arch/arm/mach-pxa/palmtc.c8
-rw-r--r--arch/arm/mach-pxa/spitz.c39
-rw-r--r--block/cfq-iosched.c19
-rw-r--r--drivers/ata/ahci.c40
-rw-r--r--drivers/ata/libata-core.c9
-rw-r--r--drivers/ata/sata_via.c1
-rw-r--r--drivers/gpu/drm/i915/i915_dma.c3
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h39
-rw-r--r--drivers/gpu/drm/i915/i915_reg.h30
-rw-r--r--drivers/gpu/drm/i915/i915_suspend.c305
-rw-r--r--drivers/gpu/drm/i915/intel_bios.c14
-rw-r--r--drivers/gpu/drm/i915/intel_display.c178
-rw-r--r--drivers/gpu/drm/i915/intel_dp.c2
-rw-r--r--drivers/gpu/drm/i915/intel_lvds.c10
-rw-r--r--fs/bio.c28
-rw-r--r--mm/backing-dev.c3
33 files changed, 981 insertions, 349 deletions
diff --git a/arch/arm/configs/kirkwood_defconfig b/arch/arm/configs/kirkwood_defconfig
index af74cc2de8b6..bcfade33bca9 100644
--- a/arch/arm/configs/kirkwood_defconfig
+++ b/arch/arm/configs/kirkwood_defconfig
@@ -1,15 +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.30-rc4 3# Linux kernel version: 2.6.32-rc6
4# Mon May 4 11:58:57 2009 4# Sat Nov 7 20:31:18 2009
5# 5#
6CONFIG_ARM=y 6CONFIG_ARM=y
7CONFIG_SYS_SUPPORTS_APM_EMULATION=y 7CONFIG_SYS_SUPPORTS_APM_EMULATION=y
8CONFIG_GENERIC_GPIO=y 8CONFIG_GENERIC_GPIO=y
9CONFIG_GENERIC_TIME=y 9CONFIG_GENERIC_TIME=y
10CONFIG_GENERIC_CLOCKEVENTS=y 10CONFIG_GENERIC_CLOCKEVENTS=y
11CONFIG_MMU=y
12# CONFIG_NO_IOPORT is not set
13CONFIG_GENERIC_HARDIRQS=y 11CONFIG_GENERIC_HARDIRQS=y
14CONFIG_STACKTRACE_SUPPORT=y 12CONFIG_STACKTRACE_SUPPORT=y
15CONFIG_HAVE_LATENCYTOP_SUPPORT=y 13CONFIG_HAVE_LATENCYTOP_SUPPORT=y
@@ -18,13 +16,12 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
18CONFIG_HARDIRQS_SW_RESEND=y 16CONFIG_HARDIRQS_SW_RESEND=y
19CONFIG_GENERIC_IRQ_PROBE=y 17CONFIG_GENERIC_IRQ_PROBE=y
20CONFIG_RWSEM_GENERIC_SPINLOCK=y 18CONFIG_RWSEM_GENERIC_SPINLOCK=y
21# CONFIG_ARCH_HAS_ILOG2_U32 is not set
22# CONFIG_ARCH_HAS_ILOG2_U64 is not set
23CONFIG_GENERIC_HWEIGHT=y 19CONFIG_GENERIC_HWEIGHT=y
24CONFIG_GENERIC_CALIBRATE_DELAY=y 20CONFIG_GENERIC_CALIBRATE_DELAY=y
25CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 21CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
26CONFIG_VECTORS_BASE=0xffff0000 22CONFIG_VECTORS_BASE=0xffff0000
27CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 23CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
24CONFIG_CONSTRUCTORS=y
28 25
29# 26#
30# General setup 27# General setup
@@ -46,11 +43,12 @@ CONFIG_SYSVIPC_SYSCTL=y
46# 43#
47# RCU Subsystem 44# RCU Subsystem
48# 45#
49CONFIG_CLASSIC_RCU=y 46CONFIG_TREE_RCU=y
50# CONFIG_TREE_RCU is not set 47# CONFIG_TREE_PREEMPT_RCU is not set
51# CONFIG_PREEMPT_RCU is not set 48# CONFIG_RCU_TRACE is not set
49CONFIG_RCU_FANOUT=32
50# CONFIG_RCU_FANOUT_EXACT is not set
52# CONFIG_TREE_RCU_TRACE is not set 51# CONFIG_TREE_RCU_TRACE is not set
53# CONFIG_PREEMPT_RCU_TRACE is not set
54# CONFIG_IKCONFIG is not set 52# CONFIG_IKCONFIG is not set
55CONFIG_LOG_BUF_SHIFT=19 53CONFIG_LOG_BUF_SHIFT=19
56# CONFIG_GROUP_SCHED is not set 54# CONFIG_GROUP_SCHED is not set
@@ -73,7 +71,6 @@ CONFIG_SYSCTL_SYSCALL=y
73CONFIG_KALLSYMS=y 71CONFIG_KALLSYMS=y
74# CONFIG_KALLSYMS_ALL is not set 72# CONFIG_KALLSYMS_ALL is not set
75# CONFIG_KALLSYMS_EXTRA_PASS is not set 73# CONFIG_KALLSYMS_EXTRA_PASS is not set
76# CONFIG_STRIP_ASM_SYMS is not set
77CONFIG_HOTPLUG=y 74CONFIG_HOTPLUG=y
78CONFIG_PRINTK=y 75CONFIG_PRINTK=y
79CONFIG_BUG=y 76CONFIG_BUG=y
@@ -86,6 +83,10 @@ CONFIG_TIMERFD=y
86CONFIG_EVENTFD=y 83CONFIG_EVENTFD=y
87CONFIG_SHMEM=y 84CONFIG_SHMEM=y
88CONFIG_AIO=y 85CONFIG_AIO=y
86
87#
88# Kernel Performance Events And Counters
89#
89CONFIG_VM_EVENT_COUNTERS=y 90CONFIG_VM_EVENT_COUNTERS=y
90CONFIG_PCI_QUIRKS=y 91CONFIG_PCI_QUIRKS=y
91CONFIG_SLUB_DEBUG=y 92CONFIG_SLUB_DEBUG=y
@@ -95,13 +96,17 @@ CONFIG_SLUB=y
95# CONFIG_SLOB is not set 96# CONFIG_SLOB is not set
96CONFIG_PROFILING=y 97CONFIG_PROFILING=y
97CONFIG_TRACEPOINTS=y 98CONFIG_TRACEPOINTS=y
98# CONFIG_MARKERS is not set
99CONFIG_OPROFILE=y 99CONFIG_OPROFILE=y
100CONFIG_HAVE_OPROFILE=y 100CONFIG_HAVE_OPROFILE=y
101CONFIG_KPROBES=y 101CONFIG_KPROBES=y
102CONFIG_KRETPROBES=y 102CONFIG_KRETPROBES=y
103CONFIG_HAVE_KPROBES=y 103CONFIG_HAVE_KPROBES=y
104CONFIG_HAVE_KRETPROBES=y 104CONFIG_HAVE_KRETPROBES=y
105
106#
107# GCOV-based kernel profiling
108#
109# CONFIG_GCOV_KERNEL is not set
105# CONFIG_SLOW_WORK is not set 110# CONFIG_SLOW_WORK is not set
106CONFIG_HAVE_GENERIC_DMA_COHERENT=y 111CONFIG_HAVE_GENERIC_DMA_COHERENT=y
107CONFIG_SLABINFO=y 112CONFIG_SLABINFO=y
@@ -114,7 +119,7 @@ CONFIG_MODULE_UNLOAD=y
114# CONFIG_MODVERSIONS is not set 119# CONFIG_MODVERSIONS is not set
115# CONFIG_MODULE_SRCVERSION_ALL is not set 120# CONFIG_MODULE_SRCVERSION_ALL is not set
116CONFIG_BLOCK=y 121CONFIG_BLOCK=y
117# CONFIG_LBD is not set 122CONFIG_LBDAF=y
118# CONFIG_BLK_DEV_BSG is not set 123# CONFIG_BLK_DEV_BSG is not set
119# CONFIG_BLK_DEV_INTEGRITY is not set 124# CONFIG_BLK_DEV_INTEGRITY is not set
120 125
@@ -135,19 +140,22 @@ CONFIG_DEFAULT_IOSCHED="cfq"
135# 140#
136# System Type 141# System Type
137# 142#
143CONFIG_MMU=y
138# CONFIG_ARCH_AAEC2000 is not set 144# CONFIG_ARCH_AAEC2000 is not set
139# CONFIG_ARCH_INTEGRATOR is not set 145# CONFIG_ARCH_INTEGRATOR is not set
140# CONFIG_ARCH_REALVIEW is not set 146# CONFIG_ARCH_REALVIEW is not set
141# CONFIG_ARCH_VERSATILE is not set 147# CONFIG_ARCH_VERSATILE is not set
142# CONFIG_ARCH_AT91 is not set 148# CONFIG_ARCH_AT91 is not set
143# CONFIG_ARCH_CLPS711X is not set 149# CONFIG_ARCH_CLPS711X is not set
150# CONFIG_ARCH_GEMINI is not set
144# CONFIG_ARCH_EBSA110 is not set 151# CONFIG_ARCH_EBSA110 is not set
145# CONFIG_ARCH_EP93XX is not set 152# CONFIG_ARCH_EP93XX is not set
146# CONFIG_ARCH_GEMINI is not set
147# CONFIG_ARCH_FOOTBRIDGE is not set 153# CONFIG_ARCH_FOOTBRIDGE is not set
154# CONFIG_ARCH_MXC is not set
155# CONFIG_ARCH_STMP3XXX is not set
148# CONFIG_ARCH_NETX is not set 156# CONFIG_ARCH_NETX is not set
149# CONFIG_ARCH_H720X is not set 157# CONFIG_ARCH_H720X is not set
150# CONFIG_ARCH_IMX is not set 158# CONFIG_ARCH_NOMADIK is not set
151# CONFIG_ARCH_IOP13XX is not set 159# CONFIG_ARCH_IOP13XX is not set
152# CONFIG_ARCH_IOP32X is not set 160# CONFIG_ARCH_IOP32X is not set
153# CONFIG_ARCH_IOP33X is not set 161# CONFIG_ARCH_IOP33X is not set
@@ -156,25 +164,27 @@ CONFIG_DEFAULT_IOSCHED="cfq"
156# CONFIG_ARCH_IXP4XX is not set 164# CONFIG_ARCH_IXP4XX is not set
157# CONFIG_ARCH_L7200 is not set 165# CONFIG_ARCH_L7200 is not set
158CONFIG_ARCH_KIRKWOOD=y 166CONFIG_ARCH_KIRKWOOD=y
159# CONFIG_ARCH_KS8695 is not set
160# CONFIG_ARCH_NS9XXX is not set
161# CONFIG_ARCH_LOKI is not set 167# CONFIG_ARCH_LOKI is not set
162# CONFIG_ARCH_MV78XX0 is not set 168# CONFIG_ARCH_MV78XX0 is not set
163# CONFIG_ARCH_MXC is not set
164# CONFIG_ARCH_ORION5X is not set 169# CONFIG_ARCH_ORION5X is not set
170# CONFIG_ARCH_MMP is not set
171# CONFIG_ARCH_KS8695 is not set
172# CONFIG_ARCH_NS9XXX is not set
173# CONFIG_ARCH_W90X900 is not set
165# CONFIG_ARCH_PNX4008 is not set 174# CONFIG_ARCH_PNX4008 is not set
166# CONFIG_ARCH_PXA is not set 175# CONFIG_ARCH_PXA is not set
167# CONFIG_ARCH_MMP is not set 176# CONFIG_ARCH_MSM is not set
168# CONFIG_ARCH_RPC is not set 177# CONFIG_ARCH_RPC is not set
169# CONFIG_ARCH_SA1100 is not set 178# CONFIG_ARCH_SA1100 is not set
170# CONFIG_ARCH_S3C2410 is not set 179# CONFIG_ARCH_S3C2410 is not set
171# CONFIG_ARCH_S3C64XX is not set 180# CONFIG_ARCH_S3C64XX is not set
181# CONFIG_ARCH_S5PC1XX is not set
172# CONFIG_ARCH_SHARK is not set 182# CONFIG_ARCH_SHARK is not set
173# CONFIG_ARCH_LH7A40X is not set 183# CONFIG_ARCH_LH7A40X is not set
184# CONFIG_ARCH_U300 is not set
174# CONFIG_ARCH_DAVINCI is not set 185# CONFIG_ARCH_DAVINCI is not set
175# CONFIG_ARCH_OMAP is not set 186# CONFIG_ARCH_OMAP is not set
176# CONFIG_ARCH_MSM is not set 187# CONFIG_ARCH_BCMRING is not set
177# CONFIG_ARCH_W90X900 is not set
178 188
179# 189#
180# Marvell Kirkwood Implementations 190# Marvell Kirkwood Implementations
@@ -185,6 +195,7 @@ CONFIG_MACH_RD88F6281=y
185CONFIG_MACH_MV88F6281GTW_GE=y 195CONFIG_MACH_MV88F6281GTW_GE=y
186CONFIG_MACH_SHEEVAPLUG=y 196CONFIG_MACH_SHEEVAPLUG=y
187CONFIG_MACH_TS219=y 197CONFIG_MACH_TS219=y
198CONFIG_MACH_OPENRD_BASE=y
188CONFIG_PLAT_ORION=y 199CONFIG_PLAT_ORION=y
189 200
190# 201#
@@ -195,7 +206,7 @@ CONFIG_CPU_FEROCEON=y
195# CONFIG_CPU_FEROCEON_OLD_ID is not set 206# CONFIG_CPU_FEROCEON_OLD_ID is not set
196CONFIG_CPU_32v5=y 207CONFIG_CPU_32v5=y
197CONFIG_CPU_ABRT_EV5T=y 208CONFIG_CPU_ABRT_EV5T=y
198CONFIG_CPU_PABRT_NOIFAR=y 209CONFIG_CPU_PABRT_LEGACY=y
199CONFIG_CPU_CACHE_VIVT=y 210CONFIG_CPU_CACHE_VIVT=y
200CONFIG_CPU_COPY_FEROCEON=y 211CONFIG_CPU_COPY_FEROCEON=y
201CONFIG_CPU_TLB_FEROCEON=y 212CONFIG_CPU_TLB_FEROCEON=y
@@ -211,6 +222,7 @@ CONFIG_ARM_THUMB=y
211CONFIG_OUTER_CACHE=y 222CONFIG_OUTER_CACHE=y
212CONFIG_CACHE_FEROCEON_L2=y 223CONFIG_CACHE_FEROCEON_L2=y
213# CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set 224# CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set
225CONFIG_ARM_L1_CACHE_SHIFT=5
214 226
215# 227#
216# Bus support 228# Bus support
@@ -235,11 +247,12 @@ CONFIG_VMSPLIT_3G=y
235# CONFIG_VMSPLIT_2G is not set 247# CONFIG_VMSPLIT_2G is not set
236# CONFIG_VMSPLIT_1G is not set 248# CONFIG_VMSPLIT_1G is not set
237CONFIG_PAGE_OFFSET=0xC0000000 249CONFIG_PAGE_OFFSET=0xC0000000
250# CONFIG_PREEMPT_NONE is not set
251# CONFIG_PREEMPT_VOLUNTARY is not set
238CONFIG_PREEMPT=y 252CONFIG_PREEMPT=y
239CONFIG_HZ=100 253CONFIG_HZ=100
240CONFIG_AEABI=y 254CONFIG_AEABI=y
241# CONFIG_OABI_COMPAT is not set 255# CONFIG_OABI_COMPAT is not set
242CONFIG_ARCH_FLATMEM_HAS_HOLES=y
243# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set 256# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
244# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set 257# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
245# CONFIG_HIGHMEM is not set 258# CONFIG_HIGHMEM is not set
@@ -254,10 +267,12 @@ CONFIG_SPLIT_PTLOCK_CPUS=4096
254# CONFIG_PHYS_ADDR_T_64BIT is not set 267# CONFIG_PHYS_ADDR_T_64BIT is not set
255CONFIG_ZONE_DMA_FLAG=0 268CONFIG_ZONE_DMA_FLAG=0
256CONFIG_VIRT_TO_BUS=y 269CONFIG_VIRT_TO_BUS=y
257CONFIG_UNEVICTABLE_LRU=y
258CONFIG_HAVE_MLOCK=y 270CONFIG_HAVE_MLOCK=y
259CONFIG_HAVE_MLOCKED_PAGE_BIT=y 271CONFIG_HAVE_MLOCKED_PAGE_BIT=y
272# CONFIG_KSM is not set
273CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
260CONFIG_ALIGNMENT_TRAP=y 274CONFIG_ALIGNMENT_TRAP=y
275CONFIG_UACCESS_WITH_MEMCPY=y
261 276
262# 277#
263# Boot options 278# Boot options
@@ -345,6 +360,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
345# CONFIG_NETFILTER is not set 360# CONFIG_NETFILTER is not set
346# CONFIG_IP_DCCP is not set 361# CONFIG_IP_DCCP is not set
347# CONFIG_IP_SCTP is not set 362# CONFIG_IP_SCTP is not set
363# CONFIG_RDS is not set
348# CONFIG_TIPC is not set 364# CONFIG_TIPC is not set
349# CONFIG_ATM is not set 365# CONFIG_ATM is not set
350# CONFIG_BRIDGE is not set 366# CONFIG_BRIDGE is not set
@@ -367,6 +383,7 @@ CONFIG_NET_DSA_MV88E6123_61_65=y
367# CONFIG_ECONET is not set 383# CONFIG_ECONET is not set
368# CONFIG_WAN_ROUTER is not set 384# CONFIG_WAN_ROUTER is not set
369# CONFIG_PHONET is not set 385# CONFIG_PHONET is not set
386# CONFIG_IEEE802154 is not set
370# CONFIG_NET_SCHED is not set 387# CONFIG_NET_SCHED is not set
371# CONFIG_DCB is not set 388# CONFIG_DCB is not set
372 389
@@ -383,17 +400,18 @@ CONFIG_NET_PKTGEN=m
383# CONFIG_AF_RXRPC is not set 400# CONFIG_AF_RXRPC is not set
384CONFIG_WIRELESS=y 401CONFIG_WIRELESS=y
385CONFIG_CFG80211=y 402CONFIG_CFG80211=y
403# CONFIG_NL80211_TESTMODE is not set
404# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
386# CONFIG_CFG80211_REG_DEBUG is not set 405# CONFIG_CFG80211_REG_DEBUG is not set
406CONFIG_CFG80211_DEFAULT_PS=y
407CONFIG_CFG80211_DEFAULT_PS_VALUE=1
408# CONFIG_CFG80211_DEBUGFS is not set
387CONFIG_WIRELESS_OLD_REGULATORY=y 409CONFIG_WIRELESS_OLD_REGULATORY=y
388CONFIG_WIRELESS_EXT=y 410CONFIG_WIRELESS_EXT=y
389CONFIG_WIRELESS_EXT_SYSFS=y 411CONFIG_WIRELESS_EXT_SYSFS=y
390CONFIG_LIB80211=y 412CONFIG_LIB80211=y
391# CONFIG_LIB80211_DEBUG is not set 413# CONFIG_LIB80211_DEBUG is not set
392CONFIG_MAC80211=y 414CONFIG_MAC80211=y
393
394#
395# Rate control algorithm selection
396#
397CONFIG_MAC80211_RC_MINSTREL=y 415CONFIG_MAC80211_RC_MINSTREL=y
398# CONFIG_MAC80211_RC_DEFAULT_PID is not set 416# CONFIG_MAC80211_RC_DEFAULT_PID is not set
399CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y 417CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
@@ -414,6 +432,7 @@ CONFIG_MAC80211_RC_DEFAULT="minstrel"
414# Generic Driver Options 432# Generic Driver Options
415# 433#
416CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 434CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
435# CONFIG_DEVTMPFS is not set
417CONFIG_STANDALONE=y 436CONFIG_STANDALONE=y
418CONFIG_PREVENT_FIRMWARE_BUILD=y 437CONFIG_PREVENT_FIRMWARE_BUILD=y
419CONFIG_FW_LOADER=y 438CONFIG_FW_LOADER=y
@@ -425,9 +444,9 @@ CONFIG_EXTRA_FIRMWARE=""
425# CONFIG_CONNECTOR is not set 444# CONFIG_CONNECTOR is not set
426CONFIG_MTD=y 445CONFIG_MTD=y
427# CONFIG_MTD_DEBUG is not set 446# CONFIG_MTD_DEBUG is not set
447# CONFIG_MTD_TESTS is not set
428# CONFIG_MTD_CONCAT is not set 448# CONFIG_MTD_CONCAT is not set
429CONFIG_MTD_PARTITIONS=y 449CONFIG_MTD_PARTITIONS=y
430# CONFIG_MTD_TESTS is not set
431# CONFIG_MTD_REDBOOT_PARTS is not set 450# CONFIG_MTD_REDBOOT_PARTS is not set
432CONFIG_MTD_CMDLINE_PARTS=y 451CONFIG_MTD_CMDLINE_PARTS=y
433# CONFIG_MTD_AFS_PARTS is not set 452# CONFIG_MTD_AFS_PARTS is not set
@@ -494,6 +513,7 @@ CONFIG_MTD_PHYSMAP=y
494# CONFIG_MTD_DATAFLASH is not set 513# CONFIG_MTD_DATAFLASH is not set
495CONFIG_MTD_M25P80=y 514CONFIG_MTD_M25P80=y
496CONFIG_M25PXX_USE_FAST_READ=y 515CONFIG_M25PXX_USE_FAST_READ=y
516# CONFIG_MTD_SST25L is not set
497# CONFIG_MTD_SLRAM is not set 517# CONFIG_MTD_SLRAM is not set
498# CONFIG_MTD_PHRAM is not set 518# CONFIG_MTD_PHRAM is not set
499# CONFIG_MTD_MTDRAM is not set 519# CONFIG_MTD_MTDRAM is not set
@@ -543,6 +563,7 @@ CONFIG_BLK_DEV_LOOP=y
543# CONFIG_BLK_DEV_RAM is not set 563# CONFIG_BLK_DEV_RAM is not set
544# CONFIG_CDROM_PKTCDVD is not set 564# CONFIG_CDROM_PKTCDVD is not set
545# CONFIG_ATA_OVER_ETH is not set 565# CONFIG_ATA_OVER_ETH is not set
566# CONFIG_MG_DISK is not set
546# CONFIG_MISC_DEVICES is not set 567# CONFIG_MISC_DEVICES is not set
547CONFIG_HAVE_IDE=y 568CONFIG_HAVE_IDE=y
548# CONFIG_IDE is not set 569# CONFIG_IDE is not set
@@ -567,10 +588,6 @@ CONFIG_BLK_DEV_SR=m
567# CONFIG_BLK_DEV_SR_VENDOR is not set 588# CONFIG_BLK_DEV_SR_VENDOR is not set
568CONFIG_CHR_DEV_SG=m 589CONFIG_CHR_DEV_SG=m
569# CONFIG_CHR_DEV_SCH is not set 590# CONFIG_CHR_DEV_SCH is not set
570
571#
572# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
573#
574# CONFIG_SCSI_MULTI_LUN is not set 591# CONFIG_SCSI_MULTI_LUN is not set
575# CONFIG_SCSI_CONSTANTS is not set 592# CONFIG_SCSI_CONSTANTS is not set
576# CONFIG_SCSI_LOGGING is not set 593# CONFIG_SCSI_LOGGING is not set
@@ -587,6 +604,8 @@ CONFIG_SCSI_WAIT_SCAN=m
587# CONFIG_SCSI_SRP_ATTRS is not set 604# CONFIG_SCSI_SRP_ATTRS is not set
588CONFIG_SCSI_LOWLEVEL=y 605CONFIG_SCSI_LOWLEVEL=y
589# CONFIG_ISCSI_TCP is not set 606# CONFIG_ISCSI_TCP is not set
607# CONFIG_SCSI_BNX2_ISCSI is not set
608# CONFIG_BE2ISCSI is not set
590# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 609# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
591# CONFIG_SCSI_3W_9XXX is not set 610# CONFIG_SCSI_3W_9XXX is not set
592# CONFIG_SCSI_ACARD is not set 611# CONFIG_SCSI_ACARD is not set
@@ -595,6 +614,7 @@ CONFIG_SCSI_LOWLEVEL=y
595# CONFIG_SCSI_AIC7XXX_OLD is not set 614# CONFIG_SCSI_AIC7XXX_OLD is not set
596# CONFIG_SCSI_AIC79XX is not set 615# CONFIG_SCSI_AIC79XX is not set
597# CONFIG_SCSI_AIC94XX is not set 616# CONFIG_SCSI_AIC94XX is not set
617# CONFIG_SCSI_MVSAS is not set
598# CONFIG_SCSI_DPT_I2O is not set 618# CONFIG_SCSI_DPT_I2O is not set
599# CONFIG_SCSI_ADVANSYS is not set 619# CONFIG_SCSI_ADVANSYS is not set
600# CONFIG_SCSI_ARCMSR is not set 620# CONFIG_SCSI_ARCMSR is not set
@@ -611,7 +631,6 @@ CONFIG_SCSI_LOWLEVEL=y
611# CONFIG_SCSI_IPS is not set 631# CONFIG_SCSI_IPS is not set
612# CONFIG_SCSI_INITIO is not set 632# CONFIG_SCSI_INITIO is not set
613# CONFIG_SCSI_INIA100 is not set 633# CONFIG_SCSI_INIA100 is not set
614# CONFIG_SCSI_MVSAS is not set
615# CONFIG_SCSI_STEX is not set 634# CONFIG_SCSI_STEX is not set
616# CONFIG_SCSI_SYM53C8XX_2 is not set 635# CONFIG_SCSI_SYM53C8XX_2 is not set
617# CONFIG_SCSI_IPR is not set 636# CONFIG_SCSI_IPR is not set
@@ -623,11 +642,14 @@ CONFIG_SCSI_LOWLEVEL=y
623# CONFIG_SCSI_DC390T is not set 642# CONFIG_SCSI_DC390T is not set
624# CONFIG_SCSI_NSP32 is not set 643# CONFIG_SCSI_NSP32 is not set
625# CONFIG_SCSI_DEBUG is not set 644# CONFIG_SCSI_DEBUG is not set
645# CONFIG_SCSI_PMCRAID is not set
626# CONFIG_SCSI_SRP is not set 646# CONFIG_SCSI_SRP is not set
647# CONFIG_SCSI_BFA_FC is not set
627# CONFIG_SCSI_DH is not set 648# CONFIG_SCSI_DH is not set
628# CONFIG_SCSI_OSD_INITIATOR is not set 649# CONFIG_SCSI_OSD_INITIATOR is not set
629CONFIG_ATA=y 650CONFIG_ATA=y
630# CONFIG_ATA_NONSTANDARD is not set 651# CONFIG_ATA_NONSTANDARD is not set
652CONFIG_ATA_VERBOSE_ERROR=y
631CONFIG_SATA_PMP=y 653CONFIG_SATA_PMP=y
632CONFIG_SATA_AHCI=y 654CONFIG_SATA_AHCI=y
633# CONFIG_SATA_SIL24 is not set 655# CONFIG_SATA_SIL24 is not set
@@ -649,6 +671,7 @@ CONFIG_SATA_MV=y
649# CONFIG_PATA_ALI is not set 671# CONFIG_PATA_ALI is not set
650# CONFIG_PATA_AMD is not set 672# CONFIG_PATA_AMD is not set
651# CONFIG_PATA_ARTOP is not set 673# CONFIG_PATA_ARTOP is not set
674# CONFIG_PATA_ATP867X is not set
652# CONFIG_PATA_ATIIXP is not set 675# CONFIG_PATA_ATIIXP is not set
653# CONFIG_PATA_CMD640_PCI is not set 676# CONFIG_PATA_CMD640_PCI is not set
654# CONFIG_PATA_CMD64X is not set 677# CONFIG_PATA_CMD64X is not set
@@ -676,6 +699,7 @@ CONFIG_SATA_MV=y
676# CONFIG_PATA_OPTIDMA is not set 699# CONFIG_PATA_OPTIDMA is not set
677# CONFIG_PATA_PDC_OLD is not set 700# CONFIG_PATA_PDC_OLD is not set
678# CONFIG_PATA_RADISYS is not set 701# CONFIG_PATA_RADISYS is not set
702# CONFIG_PATA_RDC is not set
679# CONFIG_PATA_RZ1000 is not set 703# CONFIG_PATA_RZ1000 is not set
680# CONFIG_PATA_SC1200 is not set 704# CONFIG_PATA_SC1200 is not set
681# CONFIG_PATA_SERVERWORKS is not set 705# CONFIG_PATA_SERVERWORKS is not set
@@ -693,13 +717,16 @@ CONFIG_SATA_MV=y
693# 717#
694 718
695# 719#
696# Enable only one of the two stacks, unless you know what you are doing 720# You can enable one or both FireWire driver stacks.
721#
722
723#
724# See the help texts for more information.
697# 725#
698# CONFIG_FIREWIRE is not set 726# CONFIG_FIREWIRE is not set
699# CONFIG_IEEE1394 is not set 727# CONFIG_IEEE1394 is not set
700# CONFIG_I2O is not set 728# CONFIG_I2O is not set
701CONFIG_NETDEVICES=y 729CONFIG_NETDEVICES=y
702CONFIG_COMPAT_NET_DEV_OPS=y
703# CONFIG_DUMMY is not set 730# CONFIG_DUMMY is not set
704# CONFIG_BONDING is not set 731# CONFIG_BONDING is not set
705# CONFIG_MACVLAN is not set 732# CONFIG_MACVLAN is not set
@@ -768,6 +795,9 @@ CONFIG_NET_PCI=y
768# CONFIG_SMSC9420 is not set 795# CONFIG_SMSC9420 is not set
769# CONFIG_SUNDANCE is not set 796# CONFIG_SUNDANCE is not set
770# CONFIG_TLAN is not set 797# CONFIG_TLAN is not set
798# CONFIG_KS8842 is not set
799# CONFIG_KS8851 is not set
800# CONFIG_KS8851_MLL is not set
771# CONFIG_VIA_RHINE is not set 801# CONFIG_VIA_RHINE is not set
772# CONFIG_SC92031 is not set 802# CONFIG_SC92031 is not set
773# CONFIG_ATL2 is not set 803# CONFIG_ATL2 is not set
@@ -789,6 +819,7 @@ CONFIG_NETDEV_1000=y
789# CONFIG_VIA_VELOCITY is not set 819# CONFIG_VIA_VELOCITY is not set
790# CONFIG_TIGON3 is not set 820# CONFIG_TIGON3 is not set
791# CONFIG_BNX2 is not set 821# CONFIG_BNX2 is not set
822# CONFIG_CNIC is not set
792CONFIG_MV643XX_ETH=y 823CONFIG_MV643XX_ETH=y
793# CONFIG_QLA3XXX is not set 824# CONFIG_QLA3XXX is not set
794# CONFIG_ATL1 is not set 825# CONFIG_ATL1 is not set
@@ -797,10 +828,7 @@ CONFIG_MV643XX_ETH=y
797# CONFIG_JME is not set 828# CONFIG_JME is not set
798# CONFIG_NETDEV_10000 is not set 829# CONFIG_NETDEV_10000 is not set
799# CONFIG_TR is not set 830# CONFIG_TR is not set
800 831CONFIG_WLAN=y
801#
802# Wireless LAN
803#
804# CONFIG_WLAN_PRE80211 is not set 832# CONFIG_WLAN_PRE80211 is not set
805CONFIG_WLAN_80211=y 833CONFIG_WLAN_80211=y
806CONFIG_LIBERTAS=y 834CONFIG_LIBERTAS=y
@@ -820,9 +848,7 @@ CONFIG_LIBERTAS_SDIO=y
820# CONFIG_MAC80211_HWSIM is not set 848# CONFIG_MAC80211_HWSIM is not set
821# CONFIG_MWL8K is not set 849# CONFIG_MWL8K is not set
822# CONFIG_P54_COMMON is not set 850# CONFIG_P54_COMMON is not set
823# CONFIG_ATH5K is not set 851# CONFIG_ATH_COMMON is not set
824# CONFIG_ATH9K is not set
825# CONFIG_AR9170_USB is not set
826# CONFIG_IPW2100 is not set 852# CONFIG_IPW2100 is not set
827# CONFIG_IPW2200 is not set 853# CONFIG_IPW2200 is not set
828# CONFIG_IWLWIFI is not set 854# CONFIG_IWLWIFI is not set
@@ -832,6 +858,8 @@ CONFIG_LIBERTAS_SDIO=y
832# CONFIG_ZD1211RW is not set 858# CONFIG_ZD1211RW is not set
833# CONFIG_RT2X00 is not set 859# CONFIG_RT2X00 is not set
834# CONFIG_HERMES is not set 860# CONFIG_HERMES is not set
861# CONFIG_WL12XX is not set
862# CONFIG_IWM is not set
835 863
836# 864#
837# Enable WiMAX (Networking options) to see the WiMAX drivers 865# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -855,6 +883,7 @@ CONFIG_LIBERTAS_SDIO=y
855# CONFIG_NETPOLL is not set 883# CONFIG_NETPOLL is not set
856# CONFIG_NET_POLL_CONTROLLER is not set 884# CONFIG_NET_POLL_CONTROLLER is not set
857# CONFIG_ISDN is not set 885# CONFIG_ISDN is not set
886# CONFIG_PHONE is not set
858 887
859# 888#
860# Input device support 889# Input device support
@@ -878,13 +907,19 @@ CONFIG_INPUT_EVDEV=y
878# Input Device Drivers 907# Input Device Drivers
879# 908#
880CONFIG_INPUT_KEYBOARD=y 909CONFIG_INPUT_KEYBOARD=y
910# CONFIG_KEYBOARD_ADP5588 is not set
881CONFIG_KEYBOARD_ATKBD=y 911CONFIG_KEYBOARD_ATKBD=y
882# CONFIG_KEYBOARD_SUNKBD is not set 912# CONFIG_QT2160 is not set
883# CONFIG_KEYBOARD_LKKBD is not set 913# CONFIG_KEYBOARD_LKKBD is not set
884# CONFIG_KEYBOARD_XTKBD is not set 914CONFIG_KEYBOARD_GPIO=y
915# CONFIG_KEYBOARD_MATRIX is not set
916# CONFIG_KEYBOARD_LM8323 is not set
917# CONFIG_KEYBOARD_MAX7359 is not set
885# CONFIG_KEYBOARD_NEWTON is not set 918# CONFIG_KEYBOARD_NEWTON is not set
919# CONFIG_KEYBOARD_OPENCORES is not set
886# CONFIG_KEYBOARD_STOWAWAY is not set 920# CONFIG_KEYBOARD_STOWAWAY is not set
887CONFIG_KEYBOARD_GPIO=y 921# CONFIG_KEYBOARD_SUNKBD is not set
922# CONFIG_KEYBOARD_XTKBD is not set
888# CONFIG_INPUT_MOUSE is not set 923# CONFIG_INPUT_MOUSE is not set
889# CONFIG_INPUT_JOYSTICK is not set 924# CONFIG_INPUT_JOYSTICK is not set
890# CONFIG_INPUT_TABLET is not set 925# CONFIG_INPUT_TABLET is not set
@@ -943,6 +978,7 @@ CONFIG_LEGACY_PTY_COUNT=16
943CONFIG_DEVPORT=y 978CONFIG_DEVPORT=y
944CONFIG_I2C=y 979CONFIG_I2C=y
945CONFIG_I2C_BOARDINFO=y 980CONFIG_I2C_BOARDINFO=y
981# CONFIG_I2C_COMPAT is not set
946CONFIG_I2C_CHARDEV=y 982CONFIG_I2C_CHARDEV=y
947CONFIG_I2C_HELPER_AUTO=y 983CONFIG_I2C_HELPER_AUTO=y
948 984
@@ -998,10 +1034,6 @@ CONFIG_I2C_MV64XXX=y
998# Miscellaneous I2C Chip support 1034# Miscellaneous I2C Chip support
999# 1035#
1000# CONFIG_DS1682 is not set 1036# CONFIG_DS1682 is not set
1001# CONFIG_SENSORS_PCF8574 is not set
1002# CONFIG_PCF8575 is not set
1003# CONFIG_SENSORS_PCA9539 is not set
1004# CONFIG_SENSORS_MAX6875 is not set
1005# CONFIG_SENSORS_TSL2550 is not set 1037# CONFIG_SENSORS_TSL2550 is not set
1006# CONFIG_I2C_DEBUG_CORE is not set 1038# CONFIG_I2C_DEBUG_CORE is not set
1007# CONFIG_I2C_DEBUG_ALGO is not set 1039# CONFIG_I2C_DEBUG_ALGO is not set
@@ -1023,11 +1055,47 @@ CONFIG_SPI_ORION=y
1023# 1055#
1024# CONFIG_SPI_SPIDEV is not set 1056# CONFIG_SPI_SPIDEV is not set
1025# CONFIG_SPI_TLE62X0 is not set 1057# CONFIG_SPI_TLE62X0 is not set
1058
1059#
1060# PPS support
1061#
1062# CONFIG_PPS is not set
1063CONFIG_ARCH_REQUIRE_GPIOLIB=y
1064CONFIG_GPIOLIB=y
1065# CONFIG_DEBUG_GPIO is not set
1066CONFIG_GPIO_SYSFS=y
1067
1068#
1069# Memory mapped GPIO expanders:
1070#
1071
1072#
1073# I2C GPIO expanders:
1074#
1075# CONFIG_GPIO_MAX732X is not set
1076# CONFIG_GPIO_PCA953X is not set
1077# CONFIG_GPIO_PCF857X is not set
1078
1079#
1080# PCI GPIO expanders:
1081#
1082# CONFIG_GPIO_BT8XX is not set
1083# CONFIG_GPIO_LANGWELL is not set
1084
1085#
1086# SPI GPIO expanders:
1087#
1088# CONFIG_GPIO_MAX7301 is not set
1089# CONFIG_GPIO_MCP23S08 is not set
1090# CONFIG_GPIO_MC33880 is not set
1091
1092#
1093# AC97 GPIO expanders:
1094#
1026# CONFIG_W1 is not set 1095# CONFIG_W1 is not set
1027# CONFIG_POWER_SUPPLY is not set 1096# CONFIG_POWER_SUPPLY is not set
1028# CONFIG_HWMON is not set 1097# CONFIG_HWMON is not set
1029# CONFIG_THERMAL is not set 1098# CONFIG_THERMAL is not set
1030# CONFIG_THERMAL_HWMON is not set
1031# CONFIG_WATCHDOG is not set 1099# CONFIG_WATCHDOG is not set
1032CONFIG_SSB_POSSIBLE=y 1100CONFIG_SSB_POSSIBLE=y
1033 1101
@@ -1041,33 +1109,28 @@ CONFIG_SSB_POSSIBLE=y
1041# 1109#
1042# CONFIG_MFD_CORE is not set 1110# CONFIG_MFD_CORE is not set
1043# CONFIG_MFD_SM501 is not set 1111# CONFIG_MFD_SM501 is not set
1112# CONFIG_MFD_ASIC3 is not set
1113# CONFIG_HTC_EGPIO is not set
1044# CONFIG_HTC_PASIC3 is not set 1114# CONFIG_HTC_PASIC3 is not set
1115# CONFIG_TPS65010 is not set
1045# CONFIG_TWL4030_CORE is not set 1116# CONFIG_TWL4030_CORE is not set
1046# CONFIG_MFD_TMIO is not set 1117# CONFIG_MFD_TMIO is not set
1118# CONFIG_MFD_TC6393XB is not set
1047# CONFIG_PMIC_DA903X is not set 1119# CONFIG_PMIC_DA903X is not set
1048# CONFIG_MFD_WM8400 is not set 1120# CONFIG_MFD_WM8400 is not set
1121# CONFIG_MFD_WM831X is not set
1049# CONFIG_MFD_WM8350_I2C is not set 1122# CONFIG_MFD_WM8350_I2C is not set
1050# CONFIG_MFD_PCF50633 is not set 1123# CONFIG_MFD_PCF50633 is not set
1051 1124# CONFIG_MFD_MC13783 is not set
1052# 1125# CONFIG_AB3100_CORE is not set
1053# Multimedia devices 1126# CONFIG_EZX_PCAP is not set
1054# 1127# CONFIG_REGULATOR is not set
1055 1128# CONFIG_MEDIA_SUPPORT is not set
1056#
1057# Multimedia core support
1058#
1059# CONFIG_VIDEO_DEV is not set
1060# CONFIG_DVB_CORE is not set
1061# CONFIG_VIDEO_MEDIA is not set
1062
1063#
1064# Multimedia drivers
1065#
1066# CONFIG_DAB is not set
1067 1129
1068# 1130#
1069# Graphics support 1131# Graphics support
1070# 1132#
1133CONFIG_VGA_ARB=y
1071# CONFIG_DRM is not set 1134# CONFIG_DRM is not set
1072# CONFIG_VGASTATE is not set 1135# CONFIG_VGASTATE is not set
1073# CONFIG_VIDEO_OUTPUT_CONTROL is not set 1136# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -1087,7 +1150,6 @@ CONFIG_DUMMY_CONSOLE=y
1087# CONFIG_SOUND is not set 1150# CONFIG_SOUND is not set
1088CONFIG_HID_SUPPORT=y 1151CONFIG_HID_SUPPORT=y
1089CONFIG_HID=y 1152CONFIG_HID=y
1090# CONFIG_HID_DEBUG is not set
1091# CONFIG_HIDRAW is not set 1153# CONFIG_HIDRAW is not set
1092 1154
1093# 1155#
@@ -1106,10 +1168,12 @@ CONFIG_HID_BELKIN=y
1106CONFIG_HID_CHERRY=y 1168CONFIG_HID_CHERRY=y
1107CONFIG_HID_CHICONY=y 1169CONFIG_HID_CHICONY=y
1108CONFIG_HID_CYPRESS=y 1170CONFIG_HID_CYPRESS=y
1171CONFIG_HID_DRAGONRISE=y
1109# CONFIG_DRAGONRISE_FF is not set 1172# CONFIG_DRAGONRISE_FF is not set
1110CONFIG_HID_EZKEY=y 1173CONFIG_HID_EZKEY=y
1111CONFIG_HID_KYE=y 1174CONFIG_HID_KYE=y
1112CONFIG_HID_GYRATION=y 1175CONFIG_HID_GYRATION=y
1176CONFIG_HID_TWINHAN=y
1113CONFIG_HID_KENSINGTON=y 1177CONFIG_HID_KENSINGTON=y
1114CONFIG_HID_LOGITECH=y 1178CONFIG_HID_LOGITECH=y
1115# CONFIG_LOGITECH_FF is not set 1179# CONFIG_LOGITECH_FF is not set
@@ -1123,9 +1187,14 @@ CONFIG_HID_PETALYNX=y
1123CONFIG_HID_SAMSUNG=y 1187CONFIG_HID_SAMSUNG=y
1124CONFIG_HID_SONY=y 1188CONFIG_HID_SONY=y
1125CONFIG_HID_SUNPLUS=y 1189CONFIG_HID_SUNPLUS=y
1190CONFIG_HID_GREENASIA=y
1126# CONFIG_GREENASIA_FF is not set 1191# CONFIG_GREENASIA_FF is not set
1192CONFIG_HID_SMARTJOYPLUS=y
1193# CONFIG_SMARTJOYPLUS_FF is not set
1127CONFIG_HID_TOPSEED=y 1194CONFIG_HID_TOPSEED=y
1195CONFIG_HID_THRUSTMASTER=y
1128# CONFIG_THRUSTMASTER_FF is not set 1196# CONFIG_THRUSTMASTER_FF is not set
1197CONFIG_HID_ZEROPLUS=y
1129# CONFIG_ZEROPLUS_FF is not set 1198# CONFIG_ZEROPLUS_FF is not set
1130CONFIG_USB_SUPPORT=y 1199CONFIG_USB_SUPPORT=y
1131CONFIG_USB_ARCH_HAS_HCD=y 1200CONFIG_USB_ARCH_HAS_HCD=y
@@ -1150,18 +1219,21 @@ CONFIG_USB_DEVICE_CLASS=y
1150# USB Host Controller Drivers 1219# USB Host Controller Drivers
1151# 1220#
1152# CONFIG_USB_C67X00_HCD is not set 1221# CONFIG_USB_C67X00_HCD is not set
1222# CONFIG_USB_XHCI_HCD is not set
1153CONFIG_USB_EHCI_HCD=y 1223CONFIG_USB_EHCI_HCD=y
1154CONFIG_USB_EHCI_ROOT_HUB_TT=y 1224CONFIG_USB_EHCI_ROOT_HUB_TT=y
1155CONFIG_USB_EHCI_TT_NEWSCHED=y 1225CONFIG_USB_EHCI_TT_NEWSCHED=y
1156# CONFIG_USB_OXU210HP_HCD is not set 1226# CONFIG_USB_OXU210HP_HCD is not set
1157# CONFIG_USB_ISP116X_HCD is not set 1227# CONFIG_USB_ISP116X_HCD is not set
1158# CONFIG_USB_ISP1760_HCD is not set 1228# CONFIG_USB_ISP1760_HCD is not set
1229# CONFIG_USB_ISP1362_HCD is not set
1159# CONFIG_USB_OHCI_HCD is not set 1230# CONFIG_USB_OHCI_HCD is not set
1160# CONFIG_USB_UHCI_HCD is not set 1231# CONFIG_USB_UHCI_HCD is not set
1161# CONFIG_USB_SL811_HCD is not set 1232# CONFIG_USB_SL811_HCD is not set
1162# CONFIG_USB_R8A66597_HCD is not set 1233# CONFIG_USB_R8A66597_HCD is not set
1163# CONFIG_USB_WHCI_HCD is not set 1234# CONFIG_USB_WHCI_HCD is not set
1164# CONFIG_USB_HWA_HCD is not set 1235# CONFIG_USB_HWA_HCD is not set
1236# CONFIG_USB_MUSB_HDRC is not set
1165 1237
1166# 1238#
1167# USB Device Class drivers 1239# USB Device Class drivers
@@ -1252,11 +1324,14 @@ CONFIG_SDIO_UART=y
1252# MMC/SD/SDIO Host Controller Drivers 1324# MMC/SD/SDIO Host Controller Drivers
1253# 1325#
1254# CONFIG_MMC_SDHCI is not set 1326# CONFIG_MMC_SDHCI is not set
1327# CONFIG_MMC_AT91 is not set
1328# CONFIG_MMC_ATMELMCI is not set
1255# CONFIG_MMC_TIFM_SD is not set 1329# CONFIG_MMC_TIFM_SD is not set
1256CONFIG_MMC_MVSDIO=y 1330CONFIG_MMC_MVSDIO=y
1257# CONFIG_MMC_SPI is not set 1331# CONFIG_MMC_SPI is not set
1332# CONFIG_MMC_CB710 is not set
1333# CONFIG_MMC_VIA_SDMMC is not set
1258# CONFIG_MEMSTICK is not set 1334# CONFIG_MEMSTICK is not set
1259# CONFIG_ACCESSIBILITY is not set
1260CONFIG_NEW_LEDS=y 1335CONFIG_NEW_LEDS=y
1261CONFIG_LEDS_CLASS=y 1336CONFIG_LEDS_CLASS=y
1262 1337
@@ -1266,7 +1341,7 @@ CONFIG_LEDS_CLASS=y
1266# CONFIG_LEDS_PCA9532 is not set 1341# CONFIG_LEDS_PCA9532 is not set
1267CONFIG_LEDS_GPIO=y 1342CONFIG_LEDS_GPIO=y
1268CONFIG_LEDS_GPIO_PLATFORM=y 1343CONFIG_LEDS_GPIO_PLATFORM=y
1269# CONFIG_LEDS_LP5521 is not set 1344# CONFIG_LEDS_LP3944 is not set
1270# CONFIG_LEDS_PCA955X is not set 1345# CONFIG_LEDS_PCA955X is not set
1271# CONFIG_LEDS_DAC124S085 is not set 1346# CONFIG_LEDS_DAC124S085 is not set
1272# CONFIG_LEDS_BD2802 is not set 1347# CONFIG_LEDS_BD2802 is not set
@@ -1278,11 +1353,14 @@ CONFIG_LEDS_TRIGGERS=y
1278CONFIG_LEDS_TRIGGER_TIMER=y 1353CONFIG_LEDS_TRIGGER_TIMER=y
1279CONFIG_LEDS_TRIGGER_HEARTBEAT=y 1354CONFIG_LEDS_TRIGGER_HEARTBEAT=y
1280# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set 1355# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
1356# CONFIG_LEDS_TRIGGER_GPIO is not set
1281CONFIG_LEDS_TRIGGER_DEFAULT_ON=y 1357CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
1282 1358
1283# 1359#
1284# iptables trigger is under Netfilter config (LED target) 1360# iptables trigger is under Netfilter config (LED target)
1285# 1361#
1362# CONFIG_ACCESSIBILITY is not set
1363# CONFIG_INFINIBAND is not set
1286CONFIG_RTC_LIB=y 1364CONFIG_RTC_LIB=y
1287CONFIG_RTC_CLASS=y 1365CONFIG_RTC_CLASS=y
1288CONFIG_RTC_HCTOSYS=y 1366CONFIG_RTC_HCTOSYS=y
@@ -1314,6 +1392,7 @@ CONFIG_RTC_INTF_DEV=y
1314CONFIG_RTC_DRV_S35390A=y 1392CONFIG_RTC_DRV_S35390A=y
1315# CONFIG_RTC_DRV_FM3130 is not set 1393# CONFIG_RTC_DRV_FM3130 is not set
1316# CONFIG_RTC_DRV_RX8581 is not set 1394# CONFIG_RTC_DRV_RX8581 is not set
1395# CONFIG_RTC_DRV_RX8025 is not set
1317 1396
1318# 1397#
1319# SPI RTC drivers 1398# SPI RTC drivers
@@ -1325,6 +1404,7 @@ CONFIG_RTC_DRV_S35390A=y
1325# CONFIG_RTC_DRV_R9701 is not set 1404# CONFIG_RTC_DRV_R9701 is not set
1326# CONFIG_RTC_DRV_RS5C348 is not set 1405# CONFIG_RTC_DRV_RS5C348 is not set
1327# CONFIG_RTC_DRV_DS3234 is not set 1406# CONFIG_RTC_DRV_DS3234 is not set
1407# CONFIG_RTC_DRV_PCF2123 is not set
1328 1408
1329# 1409#
1330# Platform RTC drivers 1410# Platform RTC drivers
@@ -1360,8 +1440,11 @@ CONFIG_DMA_ENGINE=y
1360# CONFIG_ASYNC_TX_DMA is not set 1440# CONFIG_ASYNC_TX_DMA is not set
1361# CONFIG_DMATEST is not set 1441# CONFIG_DMATEST is not set
1362# CONFIG_AUXDISPLAY is not set 1442# CONFIG_AUXDISPLAY is not set
1363# CONFIG_REGULATOR is not set
1364# CONFIG_UIO is not set 1443# CONFIG_UIO is not set
1444
1445#
1446# TI VLYNQ
1447#
1365# CONFIG_STAGING is not set 1448# CONFIG_STAGING is not set
1366 1449
1367# 1450#
@@ -1379,10 +1462,13 @@ CONFIG_JBD=y
1379# CONFIG_REISERFS_FS is not set 1462# CONFIG_REISERFS_FS is not set
1380# CONFIG_JFS_FS is not set 1463# CONFIG_JFS_FS is not set
1381# CONFIG_FS_POSIX_ACL is not set 1464# CONFIG_FS_POSIX_ACL is not set
1382CONFIG_FILE_LOCKING=y
1383# CONFIG_XFS_FS is not set 1465# CONFIG_XFS_FS is not set
1466# CONFIG_GFS2_FS is not set
1384# CONFIG_OCFS2_FS is not set 1467# CONFIG_OCFS2_FS is not set
1385# CONFIG_BTRFS_FS is not set 1468# CONFIG_BTRFS_FS is not set
1469# CONFIG_NILFS2_FS is not set
1470CONFIG_FILE_LOCKING=y
1471CONFIG_FSNOTIFY=y
1386CONFIG_DNOTIFY=y 1472CONFIG_DNOTIFY=y
1387CONFIG_INOTIFY=y 1473CONFIG_INOTIFY=y
1388CONFIG_INOTIFY_USER=y 1474CONFIG_INOTIFY_USER=y
@@ -1455,7 +1541,6 @@ CONFIG_CRAMFS=y
1455# CONFIG_ROMFS_FS is not set 1541# CONFIG_ROMFS_FS is not set
1456# CONFIG_SYSV_FS is not set 1542# CONFIG_SYSV_FS is not set
1457# CONFIG_UFS_FS is not set 1543# CONFIG_UFS_FS is not set
1458# CONFIG_NILFS2_FS is not set
1459CONFIG_NETWORK_FILESYSTEMS=y 1544CONFIG_NETWORK_FILESYSTEMS=y
1460CONFIG_NFS_FS=y 1545CONFIG_NFS_FS=y
1461CONFIG_NFS_V3=y 1546CONFIG_NFS_V3=y
@@ -1530,6 +1615,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1530CONFIG_ENABLE_MUST_CHECK=y 1615CONFIG_ENABLE_MUST_CHECK=y
1531CONFIG_FRAME_WARN=1024 1616CONFIG_FRAME_WARN=1024
1532CONFIG_MAGIC_SYSRQ=y 1617CONFIG_MAGIC_SYSRQ=y
1618# CONFIG_STRIP_ASM_SYMS is not set
1533# CONFIG_UNUSED_SYMBOLS is not set 1619# CONFIG_UNUSED_SYMBOLS is not set
1534CONFIG_DEBUG_FS=y 1620CONFIG_DEBUG_FS=y
1535# CONFIG_HEADERS_CHECK is not set 1621# CONFIG_HEADERS_CHECK is not set
@@ -1547,6 +1633,7 @@ CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1547# CONFIG_DEBUG_OBJECTS is not set 1633# CONFIG_DEBUG_OBJECTS is not set
1548# CONFIG_SLUB_DEBUG_ON is not set 1634# CONFIG_SLUB_DEBUG_ON is not set
1549# CONFIG_SLUB_STATS is not set 1635# CONFIG_SLUB_STATS is not set
1636# CONFIG_DEBUG_KMEMLEAK is not set
1550# CONFIG_DEBUG_PREEMPT is not set 1637# CONFIG_DEBUG_PREEMPT is not set
1551# CONFIG_DEBUG_RT_MUTEXES is not set 1638# CONFIG_DEBUG_RT_MUTEXES is not set
1552# CONFIG_RT_MUTEX_TESTER is not set 1639# CONFIG_RT_MUTEX_TESTER is not set
@@ -1567,12 +1654,14 @@ CONFIG_DEBUG_MEMORY_INIT=y
1567# CONFIG_DEBUG_LIST is not set 1654# CONFIG_DEBUG_LIST is not set
1568# CONFIG_DEBUG_SG is not set 1655# CONFIG_DEBUG_SG is not set
1569# CONFIG_DEBUG_NOTIFIERS is not set 1656# CONFIG_DEBUG_NOTIFIERS is not set
1657# CONFIG_DEBUG_CREDENTIALS is not set
1570# CONFIG_BOOT_PRINTK_DELAY is not set 1658# CONFIG_BOOT_PRINTK_DELAY is not set
1571# CONFIG_RCU_TORTURE_TEST is not set 1659# CONFIG_RCU_TORTURE_TEST is not set
1572# CONFIG_RCU_CPU_STALL_DETECTOR is not set 1660# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1573# CONFIG_KPROBES_SANITY_TEST is not set 1661# CONFIG_KPROBES_SANITY_TEST is not set
1574# CONFIG_BACKTRACE_SELF_TEST is not set 1662# CONFIG_BACKTRACE_SELF_TEST is not set
1575# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1663# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1664# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1576# CONFIG_LKDTM is not set 1665# CONFIG_LKDTM is not set
1577# CONFIG_FAULT_INJECTION is not set 1666# CONFIG_FAULT_INJECTION is not set
1578# CONFIG_LATENCYTOP is not set 1667# CONFIG_LATENCYTOP is not set
@@ -1581,25 +1670,12 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
1581CONFIG_NOP_TRACER=y 1670CONFIG_NOP_TRACER=y
1582CONFIG_HAVE_FUNCTION_TRACER=y 1671CONFIG_HAVE_FUNCTION_TRACER=y
1583CONFIG_RING_BUFFER=y 1672CONFIG_RING_BUFFER=y
1673CONFIG_EVENT_TRACING=y
1674CONFIG_CONTEXT_SWITCH_TRACER=y
1675CONFIG_RING_BUFFER_ALLOW_SWAP=y
1584CONFIG_TRACING=y 1676CONFIG_TRACING=y
1585CONFIG_TRACING_SUPPORT=y 1677CONFIG_TRACING_SUPPORT=y
1586 1678# CONFIG_FTRACE is not set
1587#
1588# Tracers
1589#
1590# CONFIG_FUNCTION_TRACER is not set
1591# CONFIG_IRQSOFF_TRACER is not set
1592# CONFIG_PREEMPT_TRACER is not set
1593# CONFIG_SCHED_TRACER is not set
1594# CONFIG_CONTEXT_SWITCH_TRACER is not set
1595# CONFIG_EVENT_TRACER is not set
1596# CONFIG_BOOT_TRACER is not set
1597# CONFIG_TRACE_BRANCH_PROFILING is not set
1598# CONFIG_STACK_TRACER is not set
1599# CONFIG_KMEMTRACE is not set
1600# CONFIG_WORKQUEUE_TRACER is not set
1601# CONFIG_BLK_DEV_IO_TRACE is not set
1602# CONFIG_FTRACE_STARTUP_TEST is not set
1603# CONFIG_DYNAMIC_DEBUG is not set 1679# CONFIG_DYNAMIC_DEBUG is not set
1604# CONFIG_SAMPLES is not set 1680# CONFIG_SAMPLES is not set
1605CONFIG_HAVE_ARCH_KGDB=y 1681CONFIG_HAVE_ARCH_KGDB=y
@@ -1623,7 +1699,6 @@ CONFIG_CRYPTO=y
1623# 1699#
1624# Crypto core or helper 1700# Crypto core or helper
1625# 1701#
1626# CONFIG_CRYPTO_FIPS is not set
1627CONFIG_CRYPTO_ALGAPI=y 1702CONFIG_CRYPTO_ALGAPI=y
1628CONFIG_CRYPTO_ALGAPI2=y 1703CONFIG_CRYPTO_ALGAPI2=y
1629CONFIG_CRYPTO_AEAD2=y 1704CONFIG_CRYPTO_AEAD2=y
@@ -1665,11 +1740,13 @@ CONFIG_CRYPTO_PCBC=m
1665# 1740#
1666# CONFIG_CRYPTO_HMAC is not set 1741# CONFIG_CRYPTO_HMAC is not set
1667# CONFIG_CRYPTO_XCBC is not set 1742# CONFIG_CRYPTO_XCBC is not set
1743# CONFIG_CRYPTO_VMAC is not set
1668 1744
1669# 1745#
1670# Digest 1746# Digest
1671# 1747#
1672CONFIG_CRYPTO_CRC32C=y 1748CONFIG_CRYPTO_CRC32C=y
1749# CONFIG_CRYPTO_GHASH is not set
1673# CONFIG_CRYPTO_MD4 is not set 1750# CONFIG_CRYPTO_MD4 is not set
1674# CONFIG_CRYPTO_MD5 is not set 1751# CONFIG_CRYPTO_MD5 is not set
1675# CONFIG_CRYPTO_MICHAEL_MIC is not set 1752# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1714,6 +1791,7 @@ CONFIG_CRYPTO_ARC4=y
1714# 1791#
1715# CONFIG_CRYPTO_ANSI_CPRNG is not set 1792# CONFIG_CRYPTO_ANSI_CPRNG is not set
1716CONFIG_CRYPTO_HW=y 1793CONFIG_CRYPTO_HW=y
1794CONFIG_CRYPTO_DEV_MV_CESA=y
1717# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1795# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1718CONFIG_BINARY_PRINTF=y 1796CONFIG_BINARY_PRINTF=y
1719 1797
diff --git a/arch/arm/configs/orion5x_defconfig b/arch/arm/configs/orion5x_defconfig
index 9e2385293ecb..5383cd0dff54 100644
--- a/arch/arm/configs/orion5x_defconfig
+++ b/arch/arm/configs/orion5x_defconfig
@@ -1,15 +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.30-rc4 3# Linux kernel version: 2.6.32-rc6
4# Mon May 4 14:07:25 2009 4# Sat Nov 7 20:52:21 2009
5# 5#
6CONFIG_ARM=y 6CONFIG_ARM=y
7CONFIG_SYS_SUPPORTS_APM_EMULATION=y 7CONFIG_SYS_SUPPORTS_APM_EMULATION=y
8CONFIG_GENERIC_GPIO=y 8CONFIG_GENERIC_GPIO=y
9CONFIG_GENERIC_TIME=y 9CONFIG_GENERIC_TIME=y
10CONFIG_GENERIC_CLOCKEVENTS=y 10CONFIG_GENERIC_CLOCKEVENTS=y
11CONFIG_MMU=y
12# CONFIG_NO_IOPORT is not set
13CONFIG_GENERIC_HARDIRQS=y 11CONFIG_GENERIC_HARDIRQS=y
14CONFIG_STACKTRACE_SUPPORT=y 12CONFIG_STACKTRACE_SUPPORT=y
15CONFIG_HAVE_LATENCYTOP_SUPPORT=y 13CONFIG_HAVE_LATENCYTOP_SUPPORT=y
@@ -18,13 +16,12 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
18CONFIG_HARDIRQS_SW_RESEND=y 16CONFIG_HARDIRQS_SW_RESEND=y
19CONFIG_GENERIC_IRQ_PROBE=y 17CONFIG_GENERIC_IRQ_PROBE=y
20CONFIG_RWSEM_GENERIC_SPINLOCK=y 18CONFIG_RWSEM_GENERIC_SPINLOCK=y
21# CONFIG_ARCH_HAS_ILOG2_U32 is not set
22# CONFIG_ARCH_HAS_ILOG2_U64 is not set
23CONFIG_GENERIC_HWEIGHT=y 19CONFIG_GENERIC_HWEIGHT=y
24CONFIG_GENERIC_CALIBRATE_DELAY=y 20CONFIG_GENERIC_CALIBRATE_DELAY=y
25CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y 21CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
26CONFIG_VECTORS_BASE=0xffff0000 22CONFIG_VECTORS_BASE=0xffff0000
27CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" 23CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
24CONFIG_CONSTRUCTORS=y
28 25
29# 26#
30# General setup 27# General setup
@@ -46,11 +43,12 @@ CONFIG_SYSVIPC_SYSCTL=y
46# 43#
47# RCU Subsystem 44# RCU Subsystem
48# 45#
49CONFIG_CLASSIC_RCU=y 46CONFIG_TREE_RCU=y
50# CONFIG_TREE_RCU is not set 47# CONFIG_TREE_PREEMPT_RCU is not set
51# CONFIG_PREEMPT_RCU is not set 48# CONFIG_RCU_TRACE is not set
49CONFIG_RCU_FANOUT=32
50# CONFIG_RCU_FANOUT_EXACT is not set
52# CONFIG_TREE_RCU_TRACE is not set 51# CONFIG_TREE_RCU_TRACE is not set
53# CONFIG_PREEMPT_RCU_TRACE is not set
54# CONFIG_IKCONFIG is not set 52# CONFIG_IKCONFIG is not set
55CONFIG_LOG_BUF_SHIFT=14 53CONFIG_LOG_BUF_SHIFT=14
56# CONFIG_GROUP_SCHED is not set 54# CONFIG_GROUP_SCHED is not set
@@ -69,7 +67,6 @@ CONFIG_SYSCTL_SYSCALL=y
69CONFIG_KALLSYMS=y 67CONFIG_KALLSYMS=y
70CONFIG_KALLSYMS_ALL=y 68CONFIG_KALLSYMS_ALL=y
71# CONFIG_KALLSYMS_EXTRA_PASS is not set 69# CONFIG_KALLSYMS_EXTRA_PASS is not set
72# CONFIG_STRIP_ASM_SYMS is not set
73CONFIG_HOTPLUG=y 70CONFIG_HOTPLUG=y
74CONFIG_PRINTK=y 71CONFIG_PRINTK=y
75CONFIG_BUG=y 72CONFIG_BUG=y
@@ -82,6 +79,10 @@ CONFIG_TIMERFD=y
82CONFIG_EVENTFD=y 79CONFIG_EVENTFD=y
83CONFIG_SHMEM=y 80CONFIG_SHMEM=y
84CONFIG_AIO=y 81CONFIG_AIO=y
82
83#
84# Kernel Performance Events And Counters
85#
85CONFIG_VM_EVENT_COUNTERS=y 86CONFIG_VM_EVENT_COUNTERS=y
86CONFIG_PCI_QUIRKS=y 87CONFIG_PCI_QUIRKS=y
87# CONFIG_SLUB_DEBUG is not set 88# CONFIG_SLUB_DEBUG is not set
@@ -91,13 +92,17 @@ CONFIG_SLUB=y
91# CONFIG_SLOB is not set 92# CONFIG_SLOB is not set
92CONFIG_PROFILING=y 93CONFIG_PROFILING=y
93CONFIG_TRACEPOINTS=y 94CONFIG_TRACEPOINTS=y
94# CONFIG_MARKERS is not set
95CONFIG_OPROFILE=y 95CONFIG_OPROFILE=y
96CONFIG_HAVE_OPROFILE=y 96CONFIG_HAVE_OPROFILE=y
97CONFIG_KPROBES=y 97CONFIG_KPROBES=y
98CONFIG_KRETPROBES=y 98CONFIG_KRETPROBES=y
99CONFIG_HAVE_KPROBES=y 99CONFIG_HAVE_KPROBES=y
100CONFIG_HAVE_KRETPROBES=y 100CONFIG_HAVE_KRETPROBES=y
101
102#
103# GCOV-based kernel profiling
104#
105# CONFIG_GCOV_KERNEL is not set
101# CONFIG_SLOW_WORK is not set 106# CONFIG_SLOW_WORK is not set
102CONFIG_HAVE_GENERIC_DMA_COHERENT=y 107CONFIG_HAVE_GENERIC_DMA_COHERENT=y
103CONFIG_RT_MUTEXES=y 108CONFIG_RT_MUTEXES=y
@@ -109,7 +114,7 @@ CONFIG_MODULE_UNLOAD=y
109# CONFIG_MODVERSIONS is not set 114# CONFIG_MODVERSIONS is not set
110# CONFIG_MODULE_SRCVERSION_ALL is not set 115# CONFIG_MODULE_SRCVERSION_ALL is not set
111CONFIG_BLOCK=y 116CONFIG_BLOCK=y
112# CONFIG_LBD is not set 117CONFIG_LBDAF=y
113# CONFIG_BLK_DEV_BSG is not set 118# CONFIG_BLK_DEV_BSG is not set
114# CONFIG_BLK_DEV_INTEGRITY is not set 119# CONFIG_BLK_DEV_INTEGRITY is not set
115 120
@@ -130,19 +135,22 @@ CONFIG_DEFAULT_IOSCHED="cfq"
130# 135#
131# System Type 136# System Type
132# 137#
138CONFIG_MMU=y
133# CONFIG_ARCH_AAEC2000 is not set 139# CONFIG_ARCH_AAEC2000 is not set
134# CONFIG_ARCH_INTEGRATOR is not set 140# CONFIG_ARCH_INTEGRATOR is not set
135# CONFIG_ARCH_REALVIEW is not set 141# CONFIG_ARCH_REALVIEW is not set
136# CONFIG_ARCH_VERSATILE is not set 142# CONFIG_ARCH_VERSATILE is not set
137# CONFIG_ARCH_AT91 is not set 143# CONFIG_ARCH_AT91 is not set
138# CONFIG_ARCH_CLPS711X is not set 144# CONFIG_ARCH_CLPS711X is not set
145# CONFIG_ARCH_GEMINI is not set
139# CONFIG_ARCH_EBSA110 is not set 146# CONFIG_ARCH_EBSA110 is not set
140# CONFIG_ARCH_EP93XX is not set 147# CONFIG_ARCH_EP93XX is not set
141# CONFIG_ARCH_GEMINI is not set
142# CONFIG_ARCH_FOOTBRIDGE is not set 148# CONFIG_ARCH_FOOTBRIDGE is not set
149# CONFIG_ARCH_MXC is not set
150# CONFIG_ARCH_STMP3XXX is not set
143# CONFIG_ARCH_NETX is not set 151# CONFIG_ARCH_NETX is not set
144# CONFIG_ARCH_H720X is not set 152# CONFIG_ARCH_H720X is not set
145# CONFIG_ARCH_IMX is not set 153# CONFIG_ARCH_NOMADIK is not set
146# CONFIG_ARCH_IOP13XX is not set 154# CONFIG_ARCH_IOP13XX is not set
147# CONFIG_ARCH_IOP32X is not set 155# CONFIG_ARCH_IOP32X is not set
148# CONFIG_ARCH_IOP33X is not set 156# CONFIG_ARCH_IOP33X is not set
@@ -151,25 +159,27 @@ CONFIG_DEFAULT_IOSCHED="cfq"
151# CONFIG_ARCH_IXP4XX is not set 159# CONFIG_ARCH_IXP4XX is not set
152# CONFIG_ARCH_L7200 is not set 160# CONFIG_ARCH_L7200 is not set
153# CONFIG_ARCH_KIRKWOOD is not set 161# CONFIG_ARCH_KIRKWOOD is not set
154# CONFIG_ARCH_KS8695 is not set
155# CONFIG_ARCH_NS9XXX is not set
156# CONFIG_ARCH_LOKI is not set 162# CONFIG_ARCH_LOKI is not set
157# CONFIG_ARCH_MV78XX0 is not set 163# CONFIG_ARCH_MV78XX0 is not set
158# CONFIG_ARCH_MXC is not set
159CONFIG_ARCH_ORION5X=y 164CONFIG_ARCH_ORION5X=y
165# CONFIG_ARCH_MMP is not set
166# CONFIG_ARCH_KS8695 is not set
167# CONFIG_ARCH_NS9XXX is not set
168# CONFIG_ARCH_W90X900 is not set
160# CONFIG_ARCH_PNX4008 is not set 169# CONFIG_ARCH_PNX4008 is not set
161# CONFIG_ARCH_PXA is not set 170# CONFIG_ARCH_PXA is not set
162# CONFIG_ARCH_MMP is not set 171# CONFIG_ARCH_MSM is not set
163# CONFIG_ARCH_RPC is not set 172# CONFIG_ARCH_RPC is not set
164# CONFIG_ARCH_SA1100 is not set 173# CONFIG_ARCH_SA1100 is not set
165# CONFIG_ARCH_S3C2410 is not set 174# CONFIG_ARCH_S3C2410 is not set
166# CONFIG_ARCH_S3C64XX is not set 175# CONFIG_ARCH_S3C64XX is not set
176# CONFIG_ARCH_S5PC1XX is not set
167# CONFIG_ARCH_SHARK is not set 177# CONFIG_ARCH_SHARK is not set
168# CONFIG_ARCH_LH7A40X is not set 178# CONFIG_ARCH_LH7A40X is not set
179# CONFIG_ARCH_U300 is not set
169# CONFIG_ARCH_DAVINCI is not set 180# CONFIG_ARCH_DAVINCI is not set
170# CONFIG_ARCH_OMAP is not set 181# CONFIG_ARCH_OMAP is not set
171# CONFIG_ARCH_MSM is not set 182# CONFIG_ARCH_BCMRING is not set
172# CONFIG_ARCH_W90X900 is not set
173 183
174# 184#
175# Orion Implementations 185# Orion Implementations
@@ -187,6 +197,9 @@ CONFIG_MACH_WRT350N_V2=y
187CONFIG_MACH_TS78XX=y 197CONFIG_MACH_TS78XX=y
188CONFIG_MACH_MV2120=y 198CONFIG_MACH_MV2120=y
189CONFIG_MACH_EDMINI_V2=y 199CONFIG_MACH_EDMINI_V2=y
200CONFIG_MACH_D2NET=y
201CONFIG_MACH_BIGDISK=y
202CONFIG_MACH_NET2BIG=y
190CONFIG_MACH_MSS2=y 203CONFIG_MACH_MSS2=y
191CONFIG_MACH_WNR854T=y 204CONFIG_MACH_WNR854T=y
192CONFIG_MACH_RD88F5181L_GE=y 205CONFIG_MACH_RD88F5181L_GE=y
@@ -202,7 +215,7 @@ CONFIG_CPU_FEROCEON=y
202CONFIG_CPU_FEROCEON_OLD_ID=y 215CONFIG_CPU_FEROCEON_OLD_ID=y
203CONFIG_CPU_32v5=y 216CONFIG_CPU_32v5=y
204CONFIG_CPU_ABRT_EV5T=y 217CONFIG_CPU_ABRT_EV5T=y
205CONFIG_CPU_PABRT_NOIFAR=y 218CONFIG_CPU_PABRT_LEGACY=y
206CONFIG_CPU_CACHE_VIVT=y 219CONFIG_CPU_CACHE_VIVT=y
207CONFIG_CPU_COPY_FEROCEON=y 220CONFIG_CPU_COPY_FEROCEON=y
208CONFIG_CPU_TLB_FEROCEON=y 221CONFIG_CPU_TLB_FEROCEON=y
@@ -215,7 +228,7 @@ CONFIG_CPU_CP15_MMU=y
215CONFIG_ARM_THUMB=y 228CONFIG_ARM_THUMB=y
216# CONFIG_CPU_ICACHE_DISABLE is not set 229# CONFIG_CPU_ICACHE_DISABLE is not set
217# CONFIG_CPU_DCACHE_DISABLE is not set 230# CONFIG_CPU_DCACHE_DISABLE is not set
218# CONFIG_OUTER_CACHE is not set 231CONFIG_ARM_L1_CACHE_SHIFT=5
219 232
220# 233#
221# Bus support 234# Bus support
@@ -240,11 +253,12 @@ CONFIG_VMSPLIT_3G=y
240# CONFIG_VMSPLIT_2G is not set 253# CONFIG_VMSPLIT_2G is not set
241# CONFIG_VMSPLIT_1G is not set 254# CONFIG_VMSPLIT_1G is not set
242CONFIG_PAGE_OFFSET=0xC0000000 255CONFIG_PAGE_OFFSET=0xC0000000
256# CONFIG_PREEMPT_NONE is not set
257# CONFIG_PREEMPT_VOLUNTARY is not set
243CONFIG_PREEMPT=y 258CONFIG_PREEMPT=y
244CONFIG_HZ=100 259CONFIG_HZ=100
245CONFIG_AEABI=y 260CONFIG_AEABI=y
246CONFIG_OABI_COMPAT=y 261CONFIG_OABI_COMPAT=y
247CONFIG_ARCH_FLATMEM_HAS_HOLES=y
248# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set 262# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
249# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set 263# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
250# CONFIG_HIGHMEM is not set 264# CONFIG_HIGHMEM is not set
@@ -259,12 +273,14 @@ CONFIG_SPLIT_PTLOCK_CPUS=4096
259# CONFIG_PHYS_ADDR_T_64BIT is not set 273# CONFIG_PHYS_ADDR_T_64BIT is not set
260CONFIG_ZONE_DMA_FLAG=0 274CONFIG_ZONE_DMA_FLAG=0
261CONFIG_VIRT_TO_BUS=y 275CONFIG_VIRT_TO_BUS=y
262CONFIG_UNEVICTABLE_LRU=y
263CONFIG_HAVE_MLOCK=y 276CONFIG_HAVE_MLOCK=y
264CONFIG_HAVE_MLOCKED_PAGE_BIT=y 277CONFIG_HAVE_MLOCKED_PAGE_BIT=y
278# CONFIG_KSM is not set
279CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
265CONFIG_LEDS=y 280CONFIG_LEDS=y
266CONFIG_LEDS_CPU=y 281CONFIG_LEDS_CPU=y
267CONFIG_ALIGNMENT_TRAP=y 282CONFIG_ALIGNMENT_TRAP=y
283CONFIG_UACCESS_WITH_MEMCPY=y
268 284
269# 285#
270# Boot options 286# Boot options
@@ -308,6 +324,7 @@ CONFIG_PM=y
308# CONFIG_PM_DEBUG is not set 324# CONFIG_PM_DEBUG is not set
309# CONFIG_SUSPEND is not set 325# CONFIG_SUSPEND is not set
310# CONFIG_APM_EMULATION is not set 326# CONFIG_APM_EMULATION is not set
327# CONFIG_PM_RUNTIME is not set
311CONFIG_ARCH_SUSPEND_POSSIBLE=y 328CONFIG_ARCH_SUSPEND_POSSIBLE=y
312CONFIG_NET=y 329CONFIG_NET=y
313 330
@@ -356,6 +373,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
356# CONFIG_NETFILTER is not set 373# CONFIG_NETFILTER is not set
357# CONFIG_IP_DCCP is not set 374# CONFIG_IP_DCCP is not set
358# CONFIG_IP_SCTP is not set 375# CONFIG_IP_SCTP is not set
376# CONFIG_RDS is not set
359# CONFIG_TIPC is not set 377# CONFIG_TIPC is not set
360# CONFIG_ATM is not set 378# CONFIG_ATM is not set
361# CONFIG_BRIDGE is not set 379# CONFIG_BRIDGE is not set
@@ -378,6 +396,7 @@ CONFIG_NET_DSA_MV88E6123_61_65=y
378# CONFIG_ECONET is not set 396# CONFIG_ECONET is not set
379# CONFIG_WAN_ROUTER is not set 397# CONFIG_WAN_ROUTER is not set
380# CONFIG_PHONET is not set 398# CONFIG_PHONET is not set
399# CONFIG_IEEE802154 is not set
381# CONFIG_NET_SCHED is not set 400# CONFIG_NET_SCHED is not set
382# CONFIG_DCB is not set 401# CONFIG_DCB is not set
383 402
@@ -394,11 +413,15 @@ CONFIG_NET_PKTGEN=m
394# CONFIG_AF_RXRPC is not set 413# CONFIG_AF_RXRPC is not set
395CONFIG_WIRELESS=y 414CONFIG_WIRELESS=y
396# CONFIG_CFG80211 is not set 415# CONFIG_CFG80211 is not set
416CONFIG_CFG80211_DEFAULT_PS_VALUE=0
397# CONFIG_WIRELESS_OLD_REGULATORY is not set 417# CONFIG_WIRELESS_OLD_REGULATORY is not set
398CONFIG_WIRELESS_EXT=y 418CONFIG_WIRELESS_EXT=y
399CONFIG_WIRELESS_EXT_SYSFS=y 419CONFIG_WIRELESS_EXT_SYSFS=y
400# CONFIG_LIB80211 is not set 420# CONFIG_LIB80211 is not set
401# CONFIG_MAC80211 is not set 421
422#
423# CFG80211 needs to be enabled for MAC80211
424#
402# CONFIG_WIMAX is not set 425# CONFIG_WIMAX is not set
403# CONFIG_RFKILL is not set 426# CONFIG_RFKILL is not set
404# CONFIG_NET_9P is not set 427# CONFIG_NET_9P is not set
@@ -411,6 +434,7 @@ CONFIG_WIRELESS_EXT_SYSFS=y
411# Generic Driver Options 434# Generic Driver Options
412# 435#
413CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 436CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
437# CONFIG_DEVTMPFS is not set
414CONFIG_STANDALONE=y 438CONFIG_STANDALONE=y
415CONFIG_PREVENT_FIRMWARE_BUILD=y 439CONFIG_PREVENT_FIRMWARE_BUILD=y
416CONFIG_FW_LOADER=y 440CONFIG_FW_LOADER=y
@@ -422,9 +446,9 @@ CONFIG_EXTRA_FIRMWARE=""
422# CONFIG_CONNECTOR is not set 446# CONFIG_CONNECTOR is not set
423CONFIG_MTD=y 447CONFIG_MTD=y
424# CONFIG_MTD_DEBUG is not set 448# CONFIG_MTD_DEBUG is not set
449# CONFIG_MTD_TESTS is not set
425# CONFIG_MTD_CONCAT is not set 450# CONFIG_MTD_CONCAT is not set
426CONFIG_MTD_PARTITIONS=y 451CONFIG_MTD_PARTITIONS=y
427# CONFIG_MTD_TESTS is not set
428# CONFIG_MTD_REDBOOT_PARTS is not set 452# CONFIG_MTD_REDBOOT_PARTS is not set
429CONFIG_MTD_CMDLINE_PARTS=y 453CONFIG_MTD_CMDLINE_PARTS=y
430# CONFIG_MTD_AFS_PARTS is not set 454# CONFIG_MTD_AFS_PARTS is not set
@@ -537,6 +561,7 @@ CONFIG_BLK_DEV_LOOP=y
537# CONFIG_BLK_DEV_RAM is not set 561# CONFIG_BLK_DEV_RAM is not set
538# CONFIG_CDROM_PKTCDVD is not set 562# CONFIG_CDROM_PKTCDVD is not set
539# CONFIG_ATA_OVER_ETH is not set 563# CONFIG_ATA_OVER_ETH is not set
564# CONFIG_MG_DISK is not set
540CONFIG_MISC_DEVICES=y 565CONFIG_MISC_DEVICES=y
541# CONFIG_PHANTOM is not set 566# CONFIG_PHANTOM is not set
542# CONFIG_SGI_IOC4 is not set 567# CONFIG_SGI_IOC4 is not set
@@ -552,7 +577,9 @@ CONFIG_MISC_DEVICES=y
552# 577#
553# CONFIG_EEPROM_AT24 is not set 578# CONFIG_EEPROM_AT24 is not set
554# CONFIG_EEPROM_LEGACY is not set 579# CONFIG_EEPROM_LEGACY is not set
580# CONFIG_EEPROM_MAX6875 is not set
555# CONFIG_EEPROM_93CX6 is not set 581# CONFIG_EEPROM_93CX6 is not set
582# CONFIG_CB710_CORE is not set
556CONFIG_HAVE_IDE=y 583CONFIG_HAVE_IDE=y
557# CONFIG_IDE is not set 584# CONFIG_IDE is not set
558 585
@@ -576,10 +603,6 @@ CONFIG_BLK_DEV_SR=m
576# CONFIG_BLK_DEV_SR_VENDOR is not set 603# CONFIG_BLK_DEV_SR_VENDOR is not set
577CONFIG_CHR_DEV_SG=m 604CONFIG_CHR_DEV_SG=m
578# CONFIG_CHR_DEV_SCH is not set 605# CONFIG_CHR_DEV_SCH is not set
579
580#
581# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
582#
583# CONFIG_SCSI_MULTI_LUN is not set 606# CONFIG_SCSI_MULTI_LUN is not set
584# CONFIG_SCSI_CONSTANTS is not set 607# CONFIG_SCSI_CONSTANTS is not set
585# CONFIG_SCSI_LOGGING is not set 608# CONFIG_SCSI_LOGGING is not set
@@ -596,6 +619,8 @@ CONFIG_SCSI_WAIT_SCAN=m
596# CONFIG_SCSI_SRP_ATTRS is not set 619# CONFIG_SCSI_SRP_ATTRS is not set
597CONFIG_SCSI_LOWLEVEL=y 620CONFIG_SCSI_LOWLEVEL=y
598# CONFIG_ISCSI_TCP is not set 621# CONFIG_ISCSI_TCP is not set
622# CONFIG_SCSI_BNX2_ISCSI is not set
623# CONFIG_BE2ISCSI is not set
599# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 624# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
600# CONFIG_SCSI_3W_9XXX is not set 625# CONFIG_SCSI_3W_9XXX is not set
601# CONFIG_SCSI_ACARD is not set 626# CONFIG_SCSI_ACARD is not set
@@ -604,6 +629,7 @@ CONFIG_SCSI_LOWLEVEL=y
604# CONFIG_SCSI_AIC7XXX_OLD is not set 629# CONFIG_SCSI_AIC7XXX_OLD is not set
605# CONFIG_SCSI_AIC79XX is not set 630# CONFIG_SCSI_AIC79XX is not set
606# CONFIG_SCSI_AIC94XX is not set 631# CONFIG_SCSI_AIC94XX is not set
632# CONFIG_SCSI_MVSAS is not set
607# CONFIG_SCSI_DPT_I2O is not set 633# CONFIG_SCSI_DPT_I2O is not set
608# CONFIG_SCSI_ADVANSYS is not set 634# CONFIG_SCSI_ADVANSYS is not set
609# CONFIG_SCSI_ARCMSR is not set 635# CONFIG_SCSI_ARCMSR is not set
@@ -620,7 +646,6 @@ CONFIG_SCSI_LOWLEVEL=y
620# CONFIG_SCSI_IPS is not set 646# CONFIG_SCSI_IPS is not set
621# CONFIG_SCSI_INITIO is not set 647# CONFIG_SCSI_INITIO is not set
622# CONFIG_SCSI_INIA100 is not set 648# CONFIG_SCSI_INIA100 is not set
623# CONFIG_SCSI_MVSAS is not set
624# CONFIG_SCSI_STEX is not set 649# CONFIG_SCSI_STEX is not set
625# CONFIG_SCSI_SYM53C8XX_2 is not set 650# CONFIG_SCSI_SYM53C8XX_2 is not set
626# CONFIG_SCSI_IPR is not set 651# CONFIG_SCSI_IPR is not set
@@ -632,11 +657,14 @@ CONFIG_SCSI_LOWLEVEL=y
632# CONFIG_SCSI_DC390T is not set 657# CONFIG_SCSI_DC390T is not set
633# CONFIG_SCSI_NSP32 is not set 658# CONFIG_SCSI_NSP32 is not set
634# CONFIG_SCSI_DEBUG is not set 659# CONFIG_SCSI_DEBUG is not set
660# CONFIG_SCSI_PMCRAID is not set
635# CONFIG_SCSI_SRP is not set 661# CONFIG_SCSI_SRP is not set
662# CONFIG_SCSI_BFA_FC is not set
636# CONFIG_SCSI_DH is not set 663# CONFIG_SCSI_DH is not set
637# CONFIG_SCSI_OSD_INITIATOR is not set 664# CONFIG_SCSI_OSD_INITIATOR is not set
638CONFIG_ATA=y 665CONFIG_ATA=y
639# CONFIG_ATA_NONSTANDARD is not set 666# CONFIG_ATA_NONSTANDARD is not set
667CONFIG_ATA_VERBOSE_ERROR=y
640CONFIG_SATA_PMP=y 668CONFIG_SATA_PMP=y
641# CONFIG_SATA_AHCI is not set 669# CONFIG_SATA_AHCI is not set
642# CONFIG_SATA_SIL24 is not set 670# CONFIG_SATA_SIL24 is not set
@@ -658,6 +686,7 @@ CONFIG_SATA_MV=y
658# CONFIG_PATA_ALI is not set 686# CONFIG_PATA_ALI is not set
659# CONFIG_PATA_AMD is not set 687# CONFIG_PATA_AMD is not set
660# CONFIG_PATA_ARTOP is not set 688# CONFIG_PATA_ARTOP is not set
689# CONFIG_PATA_ATP867X is not set
661# CONFIG_PATA_ATIIXP is not set 690# CONFIG_PATA_ATIIXP is not set
662# CONFIG_PATA_CMD640_PCI is not set 691# CONFIG_PATA_CMD640_PCI is not set
663# CONFIG_PATA_CMD64X is not set 692# CONFIG_PATA_CMD64X is not set
@@ -685,6 +714,7 @@ CONFIG_SATA_MV=y
685# CONFIG_PATA_OPTIDMA is not set 714# CONFIG_PATA_OPTIDMA is not set
686# CONFIG_PATA_PDC_OLD is not set 715# CONFIG_PATA_PDC_OLD is not set
687# CONFIG_PATA_RADISYS is not set 716# CONFIG_PATA_RADISYS is not set
717# CONFIG_PATA_RDC is not set
688# CONFIG_PATA_RZ1000 is not set 718# CONFIG_PATA_RZ1000 is not set
689# CONFIG_PATA_SC1200 is not set 719# CONFIG_PATA_SC1200 is not set
690# CONFIG_PATA_SERVERWORKS is not set 720# CONFIG_PATA_SERVERWORKS is not set
@@ -703,13 +733,16 @@ CONFIG_SATA_MV=y
703# 733#
704 734
705# 735#
706# Enable only one of the two stacks, unless you know what you are doing 736# You can enable one or both FireWire driver stacks.
737#
738
739#
740# See the help texts for more information.
707# 741#
708# CONFIG_FIREWIRE is not set 742# CONFIG_FIREWIRE is not set
709# CONFIG_IEEE1394 is not set 743# CONFIG_IEEE1394 is not set
710# CONFIG_I2O is not set 744# CONFIG_I2O is not set
711CONFIG_NETDEVICES=y 745CONFIG_NETDEVICES=y
712CONFIG_COMPAT_NET_DEV_OPS=y
713# CONFIG_DUMMY is not set 746# CONFIG_DUMMY is not set
714# CONFIG_BONDING is not set 747# CONFIG_BONDING is not set
715# CONFIG_MACVLAN is not set 748# CONFIG_MACVLAN is not set
@@ -777,6 +810,8 @@ CONFIG_NET_PCI=y
777# CONFIG_SMSC9420 is not set 810# CONFIG_SMSC9420 is not set
778# CONFIG_SUNDANCE is not set 811# CONFIG_SUNDANCE is not set
779# CONFIG_TLAN is not set 812# CONFIG_TLAN is not set
813# CONFIG_KS8842 is not set
814# CONFIG_KS8851_MLL is not set
780# CONFIG_VIA_RHINE is not set 815# CONFIG_VIA_RHINE is not set
781# CONFIG_SC92031 is not set 816# CONFIG_SC92031 is not set
782# CONFIG_ATL2 is not set 817# CONFIG_ATL2 is not set
@@ -798,6 +833,7 @@ CONFIG_NETDEV_1000=y
798# CONFIG_VIA_VELOCITY is not set 833# CONFIG_VIA_VELOCITY is not set
799# CONFIG_TIGON3 is not set 834# CONFIG_TIGON3 is not set
800# CONFIG_BNX2 is not set 835# CONFIG_BNX2 is not set
836# CONFIG_CNIC is not set
801CONFIG_MV643XX_ETH=y 837CONFIG_MV643XX_ETH=y
802# CONFIG_QLA3XXX is not set 838# CONFIG_QLA3XXX is not set
803# CONFIG_ATL1 is not set 839# CONFIG_ATL1 is not set
@@ -806,10 +842,7 @@ CONFIG_MV643XX_ETH=y
806# CONFIG_JME is not set 842# CONFIG_JME is not set
807# CONFIG_NETDEV_10000 is not set 843# CONFIG_NETDEV_10000 is not set
808# CONFIG_TR is not set 844# CONFIG_TR is not set
809 845CONFIG_WLAN=y
810#
811# Wireless LAN
812#
813# CONFIG_WLAN_PRE80211 is not set 846# CONFIG_WLAN_PRE80211 is not set
814# CONFIG_WLAN_80211 is not set 847# CONFIG_WLAN_80211 is not set
815 848
@@ -835,6 +868,7 @@ CONFIG_MV643XX_ETH=y
835# CONFIG_NETPOLL is not set 868# CONFIG_NETPOLL is not set
836# CONFIG_NET_POLL_CONTROLLER is not set 869# CONFIG_NET_POLL_CONTROLLER is not set
837# CONFIG_ISDN is not set 870# CONFIG_ISDN is not set
871# CONFIG_PHONE is not set
838 872
839# 873#
840# Input device support 874# Input device support
@@ -855,13 +889,19 @@ CONFIG_INPUT_EVDEV=y
855# Input Device Drivers 889# Input Device Drivers
856# 890#
857CONFIG_INPUT_KEYBOARD=y 891CONFIG_INPUT_KEYBOARD=y
892# CONFIG_KEYBOARD_ADP5588 is not set
858# CONFIG_KEYBOARD_ATKBD is not set 893# CONFIG_KEYBOARD_ATKBD is not set
859# CONFIG_KEYBOARD_SUNKBD is not set 894# CONFIG_QT2160 is not set
860# CONFIG_KEYBOARD_LKKBD is not set 895# CONFIG_KEYBOARD_LKKBD is not set
861# CONFIG_KEYBOARD_XTKBD is not set 896CONFIG_KEYBOARD_GPIO=y
897# CONFIG_KEYBOARD_MATRIX is not set
898# CONFIG_KEYBOARD_LM8323 is not set
899# CONFIG_KEYBOARD_MAX7359 is not set
862# CONFIG_KEYBOARD_NEWTON is not set 900# CONFIG_KEYBOARD_NEWTON is not set
901# CONFIG_KEYBOARD_OPENCORES is not set
863# CONFIG_KEYBOARD_STOWAWAY is not set 902# CONFIG_KEYBOARD_STOWAWAY is not set
864CONFIG_KEYBOARD_GPIO=y 903# CONFIG_KEYBOARD_SUNKBD is not set
904# CONFIG_KEYBOARD_XTKBD is not set
865# CONFIG_INPUT_MOUSE is not set 905# CONFIG_INPUT_MOUSE is not set
866# CONFIG_INPUT_JOYSTICK is not set 906# CONFIG_INPUT_JOYSTICK is not set
867# CONFIG_INPUT_TABLET is not set 907# CONFIG_INPUT_TABLET is not set
@@ -912,6 +952,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
912CONFIG_DEVPORT=y 952CONFIG_DEVPORT=y
913CONFIG_I2C=y 953CONFIG_I2C=y
914CONFIG_I2C_BOARDINFO=y 954CONFIG_I2C_BOARDINFO=y
955# CONFIG_I2C_COMPAT is not set
915CONFIG_I2C_CHARDEV=y 956CONFIG_I2C_CHARDEV=y
916CONFIG_I2C_HELPER_AUTO=y 957CONFIG_I2C_HELPER_AUTO=y
917 958
@@ -967,20 +1008,55 @@ CONFIG_I2C_MV64XXX=y
967# Miscellaneous I2C Chip support 1008# Miscellaneous I2C Chip support
968# 1009#
969# CONFIG_DS1682 is not set 1010# CONFIG_DS1682 is not set
970# CONFIG_SENSORS_PCF8574 is not set
971# CONFIG_PCF8575 is not set
972# CONFIG_SENSORS_PCA9539 is not set
973# CONFIG_SENSORS_MAX6875 is not set
974# CONFIG_SENSORS_TSL2550 is not set 1011# CONFIG_SENSORS_TSL2550 is not set
975# CONFIG_I2C_DEBUG_CORE is not set 1012# CONFIG_I2C_DEBUG_CORE is not set
976# CONFIG_I2C_DEBUG_ALGO is not set 1013# CONFIG_I2C_DEBUG_ALGO is not set
977# CONFIG_I2C_DEBUG_BUS is not set 1014# CONFIG_I2C_DEBUG_BUS is not set
978# CONFIG_I2C_DEBUG_CHIP is not set 1015# CONFIG_I2C_DEBUG_CHIP is not set
979# CONFIG_SPI is not set 1016# CONFIG_SPI is not set
1017
1018#
1019# PPS support
1020#
1021# CONFIG_PPS is not set
1022CONFIG_ARCH_REQUIRE_GPIOLIB=y
1023CONFIG_GPIOLIB=y
1024# CONFIG_DEBUG_GPIO is not set
1025CONFIG_GPIO_SYSFS=y
1026
1027#
1028# Memory mapped GPIO expanders:
1029#
1030
1031#
1032# I2C GPIO expanders:
1033#
1034# CONFIG_GPIO_MAX732X is not set
1035# CONFIG_GPIO_PCA953X is not set
1036# CONFIG_GPIO_PCF857X is not set
1037
1038#
1039# PCI GPIO expanders:
1040#
1041# CONFIG_GPIO_BT8XX is not set
1042# CONFIG_GPIO_LANGWELL is not set
1043
1044#
1045# SPI GPIO expanders:
1046#
1047
1048#
1049# AC97 GPIO expanders:
1050#
980# CONFIG_W1 is not set 1051# CONFIG_W1 is not set
981# CONFIG_POWER_SUPPLY is not set 1052# CONFIG_POWER_SUPPLY is not set
982CONFIG_HWMON=y 1053CONFIG_HWMON=y
983# CONFIG_HWMON_VID is not set 1054# CONFIG_HWMON_VID is not set
1055# CONFIG_HWMON_DEBUG_CHIP is not set
1056
1057#
1058# Native drivers
1059#
984# CONFIG_SENSORS_AD7414 is not set 1060# CONFIG_SENSORS_AD7414 is not set
985# CONFIG_SENSORS_AD7418 is not set 1061# CONFIG_SENSORS_AD7418 is not set
986# CONFIG_SENSORS_ADM1021 is not set 1062# CONFIG_SENSORS_ADM1021 is not set
@@ -1030,6 +1106,8 @@ CONFIG_SENSORS_LM75=y
1030# CONFIG_SENSORS_SMSC47B397 is not set 1106# CONFIG_SENSORS_SMSC47B397 is not set
1031# CONFIG_SENSORS_ADS7828 is not set 1107# CONFIG_SENSORS_ADS7828 is not set
1032# CONFIG_SENSORS_THMC50 is not set 1108# CONFIG_SENSORS_THMC50 is not set
1109# CONFIG_SENSORS_TMP401 is not set
1110# CONFIG_SENSORS_TMP421 is not set
1033# CONFIG_SENSORS_VIA686A is not set 1111# CONFIG_SENSORS_VIA686A is not set
1034# CONFIG_SENSORS_VT1211 is not set 1112# CONFIG_SENSORS_VT1211 is not set
1035# CONFIG_SENSORS_VT8231 is not set 1113# CONFIG_SENSORS_VT8231 is not set
@@ -1041,9 +1119,7 @@ CONFIG_SENSORS_LM75=y
1041# CONFIG_SENSORS_W83L786NG is not set 1119# CONFIG_SENSORS_W83L786NG is not set
1042# CONFIG_SENSORS_W83627HF is not set 1120# CONFIG_SENSORS_W83627HF is not set
1043# CONFIG_SENSORS_W83627EHF is not set 1121# CONFIG_SENSORS_W83627EHF is not set
1044# CONFIG_HWMON_DEBUG_CHIP is not set
1045# CONFIG_THERMAL is not set 1122# CONFIG_THERMAL is not set
1046# CONFIG_THERMAL_HWMON is not set
1047# CONFIG_WATCHDOG is not set 1123# CONFIG_WATCHDOG is not set
1048CONFIG_SSB_POSSIBLE=y 1124CONFIG_SSB_POSSIBLE=y
1049 1125
@@ -1057,33 +1133,26 @@ CONFIG_SSB_POSSIBLE=y
1057# 1133#
1058# CONFIG_MFD_CORE is not set 1134# CONFIG_MFD_CORE is not set
1059# CONFIG_MFD_SM501 is not set 1135# CONFIG_MFD_SM501 is not set
1136# CONFIG_MFD_ASIC3 is not set
1137# CONFIG_HTC_EGPIO is not set
1060# CONFIG_HTC_PASIC3 is not set 1138# CONFIG_HTC_PASIC3 is not set
1139# CONFIG_TPS65010 is not set
1061# CONFIG_TWL4030_CORE is not set 1140# CONFIG_TWL4030_CORE is not set
1062# CONFIG_MFD_TMIO is not set 1141# CONFIG_MFD_TMIO is not set
1142# CONFIG_MFD_TC6393XB is not set
1063# CONFIG_PMIC_DA903X is not set 1143# CONFIG_PMIC_DA903X is not set
1064# CONFIG_MFD_WM8400 is not set 1144# CONFIG_MFD_WM8400 is not set
1145# CONFIG_MFD_WM831X is not set
1065# CONFIG_MFD_WM8350_I2C is not set 1146# CONFIG_MFD_WM8350_I2C is not set
1066# CONFIG_MFD_PCF50633 is not set 1147# CONFIG_MFD_PCF50633 is not set
1067 1148# CONFIG_AB3100_CORE is not set
1068# 1149# CONFIG_REGULATOR is not set
1069# Multimedia devices 1150# CONFIG_MEDIA_SUPPORT is not set
1070#
1071
1072#
1073# Multimedia core support
1074#
1075# CONFIG_VIDEO_DEV is not set
1076# CONFIG_DVB_CORE is not set
1077# CONFIG_VIDEO_MEDIA is not set
1078
1079#
1080# Multimedia drivers
1081#
1082# CONFIG_DAB is not set
1083 1151
1084# 1152#
1085# Graphics support 1153# Graphics support
1086# 1154#
1155# CONFIG_VGA_ARB is not set
1087# CONFIG_DRM is not set 1156# CONFIG_DRM is not set
1088# CONFIG_VGASTATE is not set 1157# CONFIG_VGASTATE is not set
1089# CONFIG_VIDEO_OUTPUT_CONTROL is not set 1158# CONFIG_VIDEO_OUTPUT_CONTROL is not set
@@ -1097,7 +1166,6 @@ CONFIG_SSB_POSSIBLE=y
1097# CONFIG_SOUND is not set 1166# CONFIG_SOUND is not set
1098CONFIG_HID_SUPPORT=y 1167CONFIG_HID_SUPPORT=y
1099CONFIG_HID=y 1168CONFIG_HID=y
1100# CONFIG_HID_DEBUG is not set
1101# CONFIG_HIDRAW is not set 1169# CONFIG_HIDRAW is not set
1102 1170
1103# 1171#
@@ -1116,10 +1184,11 @@ CONFIG_USB_HID=y
1116# CONFIG_HID_CHERRY is not set 1184# CONFIG_HID_CHERRY is not set
1117# CONFIG_HID_CHICONY is not set 1185# CONFIG_HID_CHICONY is not set
1118# CONFIG_HID_CYPRESS is not set 1186# CONFIG_HID_CYPRESS is not set
1119# CONFIG_DRAGONRISE_FF is not set 1187# CONFIG_HID_DRAGONRISE is not set
1120# CONFIG_HID_EZKEY is not set 1188# CONFIG_HID_EZKEY is not set
1121# CONFIG_HID_KYE is not set 1189# CONFIG_HID_KYE is not set
1122# CONFIG_HID_GYRATION is not set 1190# CONFIG_HID_GYRATION is not set
1191# CONFIG_HID_TWINHAN is not set
1123# CONFIG_HID_KENSINGTON is not set 1192# CONFIG_HID_KENSINGTON is not set
1124# CONFIG_HID_LOGITECH is not set 1193# CONFIG_HID_LOGITECH is not set
1125# CONFIG_HID_MICROSOFT is not set 1194# CONFIG_HID_MICROSOFT is not set
@@ -1130,10 +1199,11 @@ CONFIG_USB_HID=y
1130# CONFIG_HID_SAMSUNG is not set 1199# CONFIG_HID_SAMSUNG is not set
1131# CONFIG_HID_SONY is not set 1200# CONFIG_HID_SONY is not set
1132# CONFIG_HID_SUNPLUS is not set 1201# CONFIG_HID_SUNPLUS is not set
1133# CONFIG_GREENASIA_FF is not set 1202# CONFIG_HID_GREENASIA is not set
1203# CONFIG_HID_SMARTJOYPLUS is not set
1134# CONFIG_HID_TOPSEED is not set 1204# CONFIG_HID_TOPSEED is not set
1135# CONFIG_THRUSTMASTER_FF is not set 1205# CONFIG_HID_THRUSTMASTER is not set
1136# CONFIG_ZEROPLUS_FF is not set 1206# CONFIG_HID_ZEROPLUS is not set
1137CONFIG_USB_SUPPORT=y 1207CONFIG_USB_SUPPORT=y
1138CONFIG_USB_ARCH_HAS_HCD=y 1208CONFIG_USB_ARCH_HAS_HCD=y
1139CONFIG_USB_ARCH_HAS_OHCI=y 1209CONFIG_USB_ARCH_HAS_OHCI=y
@@ -1160,18 +1230,21 @@ CONFIG_USB_DEVICE_CLASS=y
1160# USB Host Controller Drivers 1230# USB Host Controller Drivers
1161# 1231#
1162# CONFIG_USB_C67X00_HCD is not set 1232# CONFIG_USB_C67X00_HCD is not set
1233# CONFIG_USB_XHCI_HCD is not set
1163CONFIG_USB_EHCI_HCD=y 1234CONFIG_USB_EHCI_HCD=y
1164CONFIG_USB_EHCI_ROOT_HUB_TT=y 1235CONFIG_USB_EHCI_ROOT_HUB_TT=y
1165CONFIG_USB_EHCI_TT_NEWSCHED=y 1236CONFIG_USB_EHCI_TT_NEWSCHED=y
1166# CONFIG_USB_OXU210HP_HCD is not set 1237# CONFIG_USB_OXU210HP_HCD is not set
1167# CONFIG_USB_ISP116X_HCD is not set 1238# CONFIG_USB_ISP116X_HCD is not set
1168# CONFIG_USB_ISP1760_HCD is not set 1239# CONFIG_USB_ISP1760_HCD is not set
1240# CONFIG_USB_ISP1362_HCD is not set
1169# CONFIG_USB_OHCI_HCD is not set 1241# CONFIG_USB_OHCI_HCD is not set
1170# CONFIG_USB_UHCI_HCD is not set 1242# CONFIG_USB_UHCI_HCD is not set
1171# CONFIG_USB_SL811_HCD is not set 1243# CONFIG_USB_SL811_HCD is not set
1172# CONFIG_USB_R8A66597_HCD is not set 1244# CONFIG_USB_R8A66597_HCD is not set
1173# CONFIG_USB_WHCI_HCD is not set 1245# CONFIG_USB_WHCI_HCD is not set
1174# CONFIG_USB_HWA_HCD is not set 1246# CONFIG_USB_HWA_HCD is not set
1247# CONFIG_USB_MUSB_HDRC is not set
1175 1248
1176# 1249#
1177# USB Device Class drivers 1250# USB Device Class drivers
@@ -1248,7 +1321,6 @@ CONFIG_USB_STORAGE_JUMPSHOT=y
1248# CONFIG_UWB is not set 1321# CONFIG_UWB is not set
1249# CONFIG_MMC is not set 1322# CONFIG_MMC is not set
1250# CONFIG_MEMSTICK is not set 1323# CONFIG_MEMSTICK is not set
1251# CONFIG_ACCESSIBILITY is not set
1252CONFIG_NEW_LEDS=y 1324CONFIG_NEW_LEDS=y
1253CONFIG_LEDS_CLASS=y 1325CONFIG_LEDS_CLASS=y
1254 1326
@@ -1258,7 +1330,7 @@ CONFIG_LEDS_CLASS=y
1258# CONFIG_LEDS_PCA9532 is not set 1330# CONFIG_LEDS_PCA9532 is not set
1259CONFIG_LEDS_GPIO=y 1331CONFIG_LEDS_GPIO=y
1260CONFIG_LEDS_GPIO_PLATFORM=y 1332CONFIG_LEDS_GPIO_PLATFORM=y
1261# CONFIG_LEDS_LP5521 is not set 1333# CONFIG_LEDS_LP3944 is not set
1262# CONFIG_LEDS_PCA955X is not set 1334# CONFIG_LEDS_PCA955X is not set
1263# CONFIG_LEDS_BD2802 is not set 1335# CONFIG_LEDS_BD2802 is not set
1264 1336
@@ -1269,11 +1341,14 @@ CONFIG_LEDS_TRIGGERS=y
1269CONFIG_LEDS_TRIGGER_TIMER=y 1341CONFIG_LEDS_TRIGGER_TIMER=y
1270CONFIG_LEDS_TRIGGER_HEARTBEAT=y 1342CONFIG_LEDS_TRIGGER_HEARTBEAT=y
1271# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set 1343# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
1344# CONFIG_LEDS_TRIGGER_GPIO is not set
1272CONFIG_LEDS_TRIGGER_DEFAULT_ON=y 1345CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
1273 1346
1274# 1347#
1275# iptables trigger is under Netfilter config (LED target) 1348# iptables trigger is under Netfilter config (LED target)
1276# 1349#
1350# CONFIG_ACCESSIBILITY is not set
1351# CONFIG_INFINIBAND is not set
1277CONFIG_RTC_LIB=y 1352CONFIG_RTC_LIB=y
1278CONFIG_RTC_CLASS=y 1353CONFIG_RTC_CLASS=y
1279CONFIG_RTC_HCTOSYS=y 1354CONFIG_RTC_HCTOSYS=y
@@ -1306,6 +1381,7 @@ CONFIG_RTC_DRV_M41T80=y
1306CONFIG_RTC_DRV_S35390A=y 1381CONFIG_RTC_DRV_S35390A=y
1307# CONFIG_RTC_DRV_FM3130 is not set 1382# CONFIG_RTC_DRV_FM3130 is not set
1308# CONFIG_RTC_DRV_RX8581 is not set 1383# CONFIG_RTC_DRV_RX8581 is not set
1384# CONFIG_RTC_DRV_RX8025 is not set
1309 1385
1310# 1386#
1311# SPI RTC drivers 1387# SPI RTC drivers
@@ -1344,8 +1420,11 @@ CONFIG_DMA_ENGINE=y
1344# CONFIG_ASYNC_TX_DMA is not set 1420# CONFIG_ASYNC_TX_DMA is not set
1345# CONFIG_DMATEST is not set 1421# CONFIG_DMATEST is not set
1346# CONFIG_AUXDISPLAY is not set 1422# CONFIG_AUXDISPLAY is not set
1347# CONFIG_REGULATOR is not set
1348# CONFIG_UIO is not set 1423# CONFIG_UIO is not set
1424
1425#
1426# TI VLYNQ
1427#
1349# CONFIG_STAGING is not set 1428# CONFIG_STAGING is not set
1350 1429
1351# 1430#
@@ -1358,10 +1437,10 @@ CONFIG_EXT3_FS=y
1358# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set 1437# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
1359# CONFIG_EXT3_FS_XATTR is not set 1438# CONFIG_EXT3_FS_XATTR is not set
1360CONFIG_EXT4_FS=m 1439CONFIG_EXT4_FS=m
1361# CONFIG_EXT4DEV_COMPAT is not set
1362CONFIG_EXT4_FS_XATTR=y 1440CONFIG_EXT4_FS_XATTR=y
1363# CONFIG_EXT4_FS_POSIX_ACL is not set 1441# CONFIG_EXT4_FS_POSIX_ACL is not set
1364# CONFIG_EXT4_FS_SECURITY is not set 1442# CONFIG_EXT4_FS_SECURITY is not set
1443# CONFIG_EXT4_DEBUG is not set
1365CONFIG_JBD=y 1444CONFIG_JBD=y
1366# CONFIG_JBD_DEBUG is not set 1445# CONFIG_JBD_DEBUG is not set
1367CONFIG_JBD2=m 1446CONFIG_JBD2=m
@@ -1370,10 +1449,13 @@ CONFIG_FS_MBCACHE=m
1370# CONFIG_REISERFS_FS is not set 1449# CONFIG_REISERFS_FS is not set
1371# CONFIG_JFS_FS is not set 1450# CONFIG_JFS_FS is not set
1372# CONFIG_FS_POSIX_ACL is not set 1451# CONFIG_FS_POSIX_ACL is not set
1373CONFIG_FILE_LOCKING=y
1374# CONFIG_XFS_FS is not set 1452# CONFIG_XFS_FS is not set
1453# CONFIG_GFS2_FS is not set
1375# CONFIG_OCFS2_FS is not set 1454# CONFIG_OCFS2_FS is not set
1376# CONFIG_BTRFS_FS is not set 1455# CONFIG_BTRFS_FS is not set
1456# CONFIG_NILFS2_FS is not set
1457CONFIG_FILE_LOCKING=y
1458CONFIG_FSNOTIFY=y
1377CONFIG_DNOTIFY=y 1459CONFIG_DNOTIFY=y
1378CONFIG_INOTIFY=y 1460CONFIG_INOTIFY=y
1379CONFIG_INOTIFY_USER=y 1461CONFIG_INOTIFY_USER=y
@@ -1446,7 +1528,6 @@ CONFIG_CRAMFS=y
1446# CONFIG_ROMFS_FS is not set 1528# CONFIG_ROMFS_FS is not set
1447# CONFIG_SYSV_FS is not set 1529# CONFIG_SYSV_FS is not set
1448# CONFIG_UFS_FS is not set 1530# CONFIG_UFS_FS is not set
1449# CONFIG_NILFS2_FS is not set
1450CONFIG_NETWORK_FILESYSTEMS=y 1531CONFIG_NETWORK_FILESYSTEMS=y
1451CONFIG_NFS_FS=y 1532CONFIG_NFS_FS=y
1452CONFIG_NFS_V3=y 1533CONFIG_NFS_V3=y
@@ -1537,6 +1618,7 @@ CONFIG_ENABLE_WARN_DEPRECATED=y
1537CONFIG_ENABLE_MUST_CHECK=y 1618CONFIG_ENABLE_MUST_CHECK=y
1538CONFIG_FRAME_WARN=1024 1619CONFIG_FRAME_WARN=1024
1539CONFIG_MAGIC_SYSRQ=y 1620CONFIG_MAGIC_SYSRQ=y
1621# CONFIG_STRIP_ASM_SYMS is not set
1540# CONFIG_UNUSED_SYMBOLS is not set 1622# CONFIG_UNUSED_SYMBOLS is not set
1541CONFIG_DEBUG_FS=y 1623CONFIG_DEBUG_FS=y
1542# CONFIG_HEADERS_CHECK is not set 1624# CONFIG_HEADERS_CHECK is not set
@@ -1552,6 +1634,7 @@ CONFIG_SCHED_DEBUG=y
1552CONFIG_SCHEDSTATS=y 1634CONFIG_SCHEDSTATS=y
1553# CONFIG_TIMER_STATS is not set 1635# CONFIG_TIMER_STATS is not set
1554# CONFIG_DEBUG_OBJECTS is not set 1636# CONFIG_DEBUG_OBJECTS is not set
1637# CONFIG_DEBUG_KMEMLEAK is not set
1555CONFIG_DEBUG_PREEMPT=y 1638CONFIG_DEBUG_PREEMPT=y
1556# CONFIG_DEBUG_RT_MUTEXES is not set 1639# CONFIG_DEBUG_RT_MUTEXES is not set
1557# CONFIG_RT_MUTEX_TESTER is not set 1640# CONFIG_RT_MUTEX_TESTER is not set
@@ -1572,6 +1655,7 @@ CONFIG_DEBUG_INFO=y
1572# CONFIG_DEBUG_LIST is not set 1655# CONFIG_DEBUG_LIST is not set
1573# CONFIG_DEBUG_SG is not set 1656# CONFIG_DEBUG_SG is not set
1574# CONFIG_DEBUG_NOTIFIERS is not set 1657# CONFIG_DEBUG_NOTIFIERS is not set
1658# CONFIG_DEBUG_CREDENTIALS is not set
1575CONFIG_FRAME_POINTER=y 1659CONFIG_FRAME_POINTER=y
1576# CONFIG_BOOT_PRINTK_DELAY is not set 1660# CONFIG_BOOT_PRINTK_DELAY is not set
1577# CONFIG_RCU_TORTURE_TEST is not set 1661# CONFIG_RCU_TORTURE_TEST is not set
@@ -1579,6 +1663,7 @@ CONFIG_FRAME_POINTER=y
1579# CONFIG_KPROBES_SANITY_TEST is not set 1663# CONFIG_KPROBES_SANITY_TEST is not set
1580# CONFIG_BACKTRACE_SELF_TEST is not set 1664# CONFIG_BACKTRACE_SELF_TEST is not set
1581# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set 1665# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1666# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1582# CONFIG_LKDTM is not set 1667# CONFIG_LKDTM is not set
1583# CONFIG_FAULT_INJECTION is not set 1668# CONFIG_FAULT_INJECTION is not set
1584CONFIG_LATENCYTOP=y 1669CONFIG_LATENCYTOP=y
@@ -1587,25 +1672,12 @@ CONFIG_SYSCTL_SYSCALL_CHECK=y
1587CONFIG_NOP_TRACER=y 1672CONFIG_NOP_TRACER=y
1588CONFIG_HAVE_FUNCTION_TRACER=y 1673CONFIG_HAVE_FUNCTION_TRACER=y
1589CONFIG_RING_BUFFER=y 1674CONFIG_RING_BUFFER=y
1675CONFIG_EVENT_TRACING=y
1676CONFIG_CONTEXT_SWITCH_TRACER=y
1677CONFIG_RING_BUFFER_ALLOW_SWAP=y
1590CONFIG_TRACING=y 1678CONFIG_TRACING=y
1591CONFIG_TRACING_SUPPORT=y 1679CONFIG_TRACING_SUPPORT=y
1592 1680# CONFIG_FTRACE is not set
1593#
1594# Tracers
1595#
1596# CONFIG_FUNCTION_TRACER is not set
1597# CONFIG_IRQSOFF_TRACER is not set
1598# CONFIG_PREEMPT_TRACER is not set
1599# CONFIG_SCHED_TRACER is not set
1600# CONFIG_CONTEXT_SWITCH_TRACER is not set
1601# CONFIG_EVENT_TRACER is not set
1602# CONFIG_BOOT_TRACER is not set
1603# CONFIG_TRACE_BRANCH_PROFILING is not set
1604# CONFIG_STACK_TRACER is not set
1605# CONFIG_KMEMTRACE is not set
1606# CONFIG_WORKQUEUE_TRACER is not set
1607# CONFIG_BLK_DEV_IO_TRACE is not set
1608# CONFIG_FTRACE_STARTUP_TEST is not set
1609# CONFIG_DYNAMIC_DEBUG is not set 1681# CONFIG_DYNAMIC_DEBUG is not set
1610# CONFIG_SAMPLES is not set 1682# CONFIG_SAMPLES is not set
1611CONFIG_HAVE_ARCH_KGDB=y 1683CONFIG_HAVE_ARCH_KGDB=y
@@ -1629,20 +1701,19 @@ CONFIG_CRYPTO=y
1629# 1701#
1630# Crypto core or helper 1702# Crypto core or helper
1631# 1703#
1632# CONFIG_CRYPTO_FIPS is not set 1704CONFIG_CRYPTO_ALGAPI=y
1633CONFIG_CRYPTO_ALGAPI=m 1705CONFIG_CRYPTO_ALGAPI2=y
1634CONFIG_CRYPTO_ALGAPI2=m 1706CONFIG_CRYPTO_AEAD2=y
1635CONFIG_CRYPTO_AEAD2=m
1636CONFIG_CRYPTO_BLKCIPHER=m 1707CONFIG_CRYPTO_BLKCIPHER=m
1637CONFIG_CRYPTO_BLKCIPHER2=m 1708CONFIG_CRYPTO_BLKCIPHER2=y
1638CONFIG_CRYPTO_HASH2=m 1709CONFIG_CRYPTO_HASH2=y
1639CONFIG_CRYPTO_RNG2=m 1710CONFIG_CRYPTO_RNG2=y
1640CONFIG_CRYPTO_PCOMP=m 1711CONFIG_CRYPTO_PCOMP=y
1641CONFIG_CRYPTO_MANAGER=m 1712CONFIG_CRYPTO_MANAGER=m
1642CONFIG_CRYPTO_MANAGER2=m 1713CONFIG_CRYPTO_MANAGER2=y
1643# CONFIG_CRYPTO_GF128MUL is not set 1714# CONFIG_CRYPTO_GF128MUL is not set
1644# CONFIG_CRYPTO_NULL is not set 1715# CONFIG_CRYPTO_NULL is not set
1645CONFIG_CRYPTO_WORKQUEUE=m 1716CONFIG_CRYPTO_WORKQUEUE=y
1646# CONFIG_CRYPTO_CRYPTD is not set 1717# CONFIG_CRYPTO_CRYPTD is not set
1647# CONFIG_CRYPTO_AUTHENC is not set 1718# CONFIG_CRYPTO_AUTHENC is not set
1648# CONFIG_CRYPTO_TEST is not set 1719# CONFIG_CRYPTO_TEST is not set
@@ -1670,11 +1741,13 @@ CONFIG_CRYPTO_PCBC=m
1670# 1741#
1671# CONFIG_CRYPTO_HMAC is not set 1742# CONFIG_CRYPTO_HMAC is not set
1672# CONFIG_CRYPTO_XCBC is not set 1743# CONFIG_CRYPTO_XCBC is not set
1744# CONFIG_CRYPTO_VMAC is not set
1673 1745
1674# 1746#
1675# Digest 1747# Digest
1676# 1748#
1677# CONFIG_CRYPTO_CRC32C is not set 1749# CONFIG_CRYPTO_CRC32C is not set
1750# CONFIG_CRYPTO_GHASH is not set
1678# CONFIG_CRYPTO_MD4 is not set 1751# CONFIG_CRYPTO_MD4 is not set
1679# CONFIG_CRYPTO_MD5 is not set 1752# CONFIG_CRYPTO_MD5 is not set
1680# CONFIG_CRYPTO_MICHAEL_MIC is not set 1753# CONFIG_CRYPTO_MICHAEL_MIC is not set
@@ -1691,7 +1764,7 @@ CONFIG_CRYPTO_PCBC=m
1691# 1764#
1692# Ciphers 1765# Ciphers
1693# 1766#
1694# CONFIG_CRYPTO_AES is not set 1767CONFIG_CRYPTO_AES=y
1695# CONFIG_CRYPTO_ANUBIS is not set 1768# CONFIG_CRYPTO_ANUBIS is not set
1696# CONFIG_CRYPTO_ARC4 is not set 1769# CONFIG_CRYPTO_ARC4 is not set
1697# CONFIG_CRYPTO_BLOWFISH is not set 1770# CONFIG_CRYPTO_BLOWFISH is not set
@@ -1719,6 +1792,7 @@ CONFIG_CRYPTO_PCBC=m
1719# 1792#
1720# CONFIG_CRYPTO_ANSI_CPRNG is not set 1793# CONFIG_CRYPTO_ANSI_CPRNG is not set
1721CONFIG_CRYPTO_HW=y 1794CONFIG_CRYPTO_HW=y
1795CONFIG_CRYPTO_DEV_MV_CESA=y
1722# CONFIG_CRYPTO_DEV_HIFN_795X is not set 1796# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1723CONFIG_BINARY_PRINTF=y 1797CONFIG_BINARY_PRINTF=y
1724 1798
diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index 7020217fc49f..4e506d09e5f9 100644
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -403,6 +403,15 @@
403#define __ARM_NR_set_tls (__ARM_NR_BASE+5) 403#define __ARM_NR_set_tls (__ARM_NR_BASE+5)
404 404
405/* 405/*
406 * *NOTE*: This is a ghost syscall private to the kernel. Only the
407 * __kuser_cmpxchg code in entry-armv.S should be aware of its
408 * existence. Don't ever use this from user code.
409 */
410#ifdef __KERNEL__
411#define __ARM_NR_cmpxchg (__ARM_NR_BASE+0x00fff0)
412#endif
413
414/*
406 * The following syscalls are obsolete and no longer available for EABI. 415 * The following syscalls are obsolete and no longer available for EABI.
407 */ 416 */
408#if defined(__ARM_EABI__) && !defined(__KERNEL__) 417#if defined(__ARM_EABI__) && !defined(__KERNEL__)
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S
index 0022b4d57f8b..d2903e3bc861 100644
--- a/arch/arm/kernel/entry-armv.S
+++ b/arch/arm/kernel/entry-armv.S
@@ -21,6 +21,7 @@
21#include <mach/entry-macro.S> 21#include <mach/entry-macro.S>
22#include <asm/thread_notify.h> 22#include <asm/thread_notify.h>
23#include <asm/unwind.h> 23#include <asm/unwind.h>
24#include <asm/unistd.h>
24 25
25#include "entry-header.S" 26#include "entry-header.S"
26 27
@@ -908,10 +909,10 @@ __kuser_cmpxchg: @ 0xffff0fc0
908 * A special ghost syscall is used for that (see traps.c). 909 * A special ghost syscall is used for that (see traps.c).
909 */ 910 */
910 stmfd sp!, {r7, lr} 911 stmfd sp!, {r7, lr}
911 mov r7, #0xff00 @ 0xfff0 into r7 for EABI 912 ldr r7, =1f @ it's 20 bits
912 orr r7, r7, #0xf0 913 swi __ARM_NR_cmpxchg
913 swi #0x9ffff0
914 ldmfd sp!, {r7, pc} 914 ldmfd sp!, {r7, pc}
9151: .word __ARM_NR_cmpxchg
915 916
916#elif __LINUX_ARM_ARCH__ < 6 917#elif __LINUX_ARM_ARCH__ < 6
917 918
diff --git a/arch/arm/kernel/head-common.S b/arch/arm/kernel/head-common.S
index 885a7214418d..b9505aa267c0 100644
--- a/arch/arm/kernel/head-common.S
+++ b/arch/arm/kernel/head-common.S
@@ -97,7 +97,7 @@ __error_a:
97 bl printhex8 97 bl printhex8
98 adr r0, str_a2 98 adr r0, str_a2
99 bl printascii 99 bl printascii
100 adr r3, 3f 100 adr r3, 4f
101 ldmia r3, {r4, r5, r6} @ get machine desc list 101 ldmia r3, {r4, r5, r6} @ get machine desc list
102 sub r4, r3, r4 @ get offset between virt&phys 102 sub r4, r3, r4 @ get offset between virt&phys
103 add r5, r5, r4 @ convert virt addresses to 103 add r5, r5, r4 @ convert virt addresses to
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c
index 95718a6b50a6..3f361a783f43 100644
--- a/arch/arm/kernel/traps.c
+++ b/arch/arm/kernel/traps.c
@@ -528,7 +528,7 @@ asmlinkage int arm_syscall(int no, struct pt_regs *regs)
528 * __kuser_cmpxchg code in entry-armv.S should be aware of its 528 * __kuser_cmpxchg code in entry-armv.S should be aware of its
529 * existence. Don't ever use this from user code. 529 * existence. Don't ever use this from user code.
530 */ 530 */
531 case 0xfff0: 531 case NR(cmpxchg):
532 for (;;) { 532 for (;;) {
533 extern void do_DataAbort(unsigned long addr, unsigned int fsr, 533 extern void do_DataAbort(unsigned long addr, unsigned int fsr,
534 struct pt_regs *regs); 534 struct pt_regs *regs);
@@ -573,7 +573,7 @@ asmlinkage int arm_syscall(int no, struct pt_regs *regs)
573 if not implemented, rather than raising SIGILL. This 573 if not implemented, rather than raising SIGILL. This
574 way the calling program can gracefully determine whether 574 way the calling program can gracefully determine whether
575 a feature is supported. */ 575 a feature is supported. */
576 if (no <= 0x7ff) 576 if ((no & 0xffff) <= 0x7ff)
577 return -ENOSYS; 577 return -ENOSYS;
578 break; 578 break;
579 } 579 }
diff --git a/arch/arm/mach-ep93xx/micro9.c b/arch/arm/mach-ep93xx/micro9.c
index d83b80478b09..f3757a1c5a10 100644
--- a/arch/arm/mach-ep93xx/micro9.c
+++ b/arch/arm/mach-ep93xx/micro9.c
@@ -15,6 +15,7 @@
15#include <linux/init.h> 15#include <linux/init.h>
16#include <linux/platform_device.h> 16#include <linux/platform_device.h>
17#include <linux/mtd/physmap.h> 17#include <linux/mtd/physmap.h>
18#include <linux/io.h>
18 19
19#include <mach/hardware.h> 20#include <mach/hardware.h>
20 21
diff --git a/arch/arm/mach-kirkwood/addr-map.c b/arch/arm/mach-kirkwood/addr-map.c
index 1da5d1c18ecb..2e69168fc699 100644
--- a/arch/arm/mach-kirkwood/addr-map.c
+++ b/arch/arm/mach-kirkwood/addr-map.c
@@ -105,7 +105,7 @@ void __init kirkwood_setup_cpu_mbus(void)
105 setup_cpu_win(0, KIRKWOOD_PCIE_IO_PHYS_BASE, KIRKWOOD_PCIE_IO_SIZE, 105 setup_cpu_win(0, KIRKWOOD_PCIE_IO_PHYS_BASE, KIRKWOOD_PCIE_IO_SIZE,
106 TARGET_PCIE, ATTR_PCIE_IO, KIRKWOOD_PCIE_IO_BUS_BASE); 106 TARGET_PCIE, ATTR_PCIE_IO, KIRKWOOD_PCIE_IO_BUS_BASE);
107 setup_cpu_win(1, KIRKWOOD_PCIE_MEM_PHYS_BASE, KIRKWOOD_PCIE_MEM_SIZE, 107 setup_cpu_win(1, KIRKWOOD_PCIE_MEM_PHYS_BASE, KIRKWOOD_PCIE_MEM_SIZE,
108 TARGET_PCIE, ATTR_PCIE_MEM, -1); 108 TARGET_PCIE, ATTR_PCIE_MEM, KIRKWOOD_PCIE_MEM_BUS_BASE);
109 109
110 /* 110 /*
111 * Setup window for NAND controller. 111 * Setup window for NAND controller.
diff --git a/arch/arm/mach-kirkwood/common.c b/arch/arm/mach-kirkwood/common.c
index 0acb61f3c10b..7177c4aa6342 100644
--- a/arch/arm/mach-kirkwood/common.c
+++ b/arch/arm/mach-kirkwood/common.c
@@ -845,7 +845,7 @@ int __init kirkwood_find_tclk(void)
845 return 166666667; 845 return 166666667;
846} 846}
847 847
848static void kirkwood_timer_init(void) 848static void __init kirkwood_timer_init(void)
849{ 849{
850 kirkwood_tclk = kirkwood_find_tclk(); 850 kirkwood_tclk = kirkwood_find_tclk();
851 orion_time_init(IRQ_KIRKWOOD_BRIDGE, kirkwood_tclk); 851 orion_time_init(IRQ_KIRKWOOD_BRIDGE, kirkwood_tclk);
diff --git a/arch/arm/mach-kirkwood/include/mach/io.h b/arch/arm/mach-kirkwood/include/mach/io.h
index a643a846d5fb..44e8be04f259 100644
--- a/arch/arm/mach-kirkwood/include/mach/io.h
+++ b/arch/arm/mach-kirkwood/include/mach/io.h
@@ -15,7 +15,7 @@
15 15
16static inline void __iomem *__io(unsigned long addr) 16static inline void __iomem *__io(unsigned long addr)
17{ 17{
18 return (void __iomem *)((addr - KIRKWOOD_PCIE_IO_PHYS_BASE) 18 return (void __iomem *)((addr - KIRKWOOD_PCIE_IO_BUS_BASE)
19 + KIRKWOOD_PCIE_IO_VIRT_BASE); 19 + KIRKWOOD_PCIE_IO_VIRT_BASE);
20} 20}
21 21
diff --git a/arch/arm/mach-kirkwood/include/mach/kirkwood.h b/arch/arm/mach-kirkwood/include/mach/kirkwood.h
index 54c132731d2d..a15cf0ee22bd 100644
--- a/arch/arm/mach-kirkwood/include/mach/kirkwood.h
+++ b/arch/arm/mach-kirkwood/include/mach/kirkwood.h
@@ -43,6 +43,7 @@
43#define KIRKWOOD_REGS_SIZE SZ_1M 43#define KIRKWOOD_REGS_SIZE SZ_1M
44 44
45#define KIRKWOOD_PCIE_MEM_PHYS_BASE 0xe0000000 45#define KIRKWOOD_PCIE_MEM_PHYS_BASE 0xe0000000
46#define KIRKWOOD_PCIE_MEM_BUS_BASE 0xe0000000
46#define KIRKWOOD_PCIE_MEM_SIZE SZ_128M 47#define KIRKWOOD_PCIE_MEM_SIZE SZ_128M
47 48
48/* 49/*
diff --git a/arch/arm/mach-kirkwood/openrd_base-setup.c b/arch/arm/mach-kirkwood/openrd_base-setup.c
index 947dfb8cd5b2..77617c722299 100644
--- a/arch/arm/mach-kirkwood/openrd_base-setup.c
+++ b/arch/arm/mach-kirkwood/openrd_base-setup.c
@@ -70,8 +70,20 @@ static void __init openrd_base_init(void)
70 kirkwood_ge00_init(&openrd_base_ge00_data); 70 kirkwood_ge00_init(&openrd_base_ge00_data);
71 kirkwood_sata_init(&openrd_base_sata_data); 71 kirkwood_sata_init(&openrd_base_sata_data);
72 kirkwood_sdio_init(&openrd_base_mvsdio_data); 72 kirkwood_sdio_init(&openrd_base_mvsdio_data);
73
74 kirkwood_i2c_init();
73} 75}
74 76
77static int __init openrd_base_pci_init(void)
78{
79 if (machine_is_openrd_base())
80 kirkwood_pcie_init();
81
82 return 0;
83 }
84subsys_initcall(openrd_base_pci_init);
85
86
75MACHINE_START(OPENRD_BASE, "Marvell OpenRD Base Board") 87MACHINE_START(OPENRD_BASE, "Marvell OpenRD Base Board")
76 /* Maintainer: Dhaval Vasa <dhaval.vasa@einfochips.com> */ 88 /* Maintainer: Dhaval Vasa <dhaval.vasa@einfochips.com> */
77 .phys_io = KIRKWOOD_REGS_PHYS_BASE, 89 .phys_io = KIRKWOOD_REGS_PHYS_BASE,
diff --git a/arch/arm/mach-kirkwood/pcie.c b/arch/arm/mach-kirkwood/pcie.c
index d90b9aae308d..a604b2a701aa 100644
--- a/arch/arm/mach-kirkwood/pcie.c
+++ b/arch/arm/mach-kirkwood/pcie.c
@@ -93,7 +93,7 @@ static struct pci_ops pcie_ops = {
93}; 93};
94 94
95 95
96static int kirkwood_pcie_setup(int nr, struct pci_sys_data *sys) 96static int __init kirkwood_pcie_setup(int nr, struct pci_sys_data *sys)
97{ 97{
98 struct resource *res; 98 struct resource *res;
99 extern unsigned int kirkwood_clk_ctrl; 99 extern unsigned int kirkwood_clk_ctrl;
@@ -115,7 +115,7 @@ static int kirkwood_pcie_setup(int nr, struct pci_sys_data *sys)
115 */ 115 */
116 res[0].name = "PCIe I/O Space"; 116 res[0].name = "PCIe I/O Space";
117 res[0].flags = IORESOURCE_IO; 117 res[0].flags = IORESOURCE_IO;
118 res[0].start = KIRKWOOD_PCIE_IO_PHYS_BASE; 118 res[0].start = KIRKWOOD_PCIE_IO_BUS_BASE;
119 res[0].end = res[0].start + KIRKWOOD_PCIE_IO_SIZE - 1; 119 res[0].end = res[0].start + KIRKWOOD_PCIE_IO_SIZE - 1;
120 if (request_resource(&ioport_resource, &res[0])) 120 if (request_resource(&ioport_resource, &res[0]))
121 panic("Request PCIe IO resource failed\n"); 121 panic("Request PCIe IO resource failed\n");
@@ -126,7 +126,7 @@ static int kirkwood_pcie_setup(int nr, struct pci_sys_data *sys)
126 */ 126 */
127 res[1].name = "PCIe Memory Space"; 127 res[1].name = "PCIe Memory Space";
128 res[1].flags = IORESOURCE_MEM; 128 res[1].flags = IORESOURCE_MEM;
129 res[1].start = KIRKWOOD_PCIE_MEM_PHYS_BASE; 129 res[1].start = KIRKWOOD_PCIE_MEM_BUS_BASE;
130 res[1].end = res[1].start + KIRKWOOD_PCIE_MEM_SIZE - 1; 130 res[1].end = res[1].start + KIRKWOOD_PCIE_MEM_SIZE - 1;
131 if (request_resource(&iomem_resource, &res[1])) 131 if (request_resource(&iomem_resource, &res[1]))
132 panic("Request PCIe Memory resource failed\n"); 132 panic("Request PCIe Memory resource failed\n");
diff --git a/arch/arm/mach-ks8695/include/mach/regs-switch.h b/arch/arm/mach-ks8695/include/mach/regs-switch.h
index 56d12e8de895..97e8acb1cf6c 100644
--- a/arch/arm/mach-ks8695/include/mach/regs-switch.h
+++ b/arch/arm/mach-ks8695/include/mach/regs-switch.h
@@ -25,7 +25,7 @@
25#define KS8695_SEC1 (0x04) /* Switch Engine Control 1 */ 25#define KS8695_SEC1 (0x04) /* Switch Engine Control 1 */
26#define KS8695_SEC2 (0x08) /* Switch Engine Control 2 */ 26#define KS8695_SEC2 (0x08) /* Switch Engine Control 2 */
27 27
28#define KS8695_P(x)_C(z) (0xc0 + (((x)-1)*3 + ((z)-1))*4) /* Port Configuration Registers */ 28#define KS8695_SEPXCZ(x,z) (0x0c + (((x)-1)*3 + ((z)-1))*4) /* Port Configuration Registers */
29 29
30#define KS8695_SEP12AN (0x48) /* Port 1 & 2 Auto-Negotiation */ 30#define KS8695_SEP12AN (0x48) /* Port 1 & 2 Auto-Negotiation */
31#define KS8695_SEP34AN (0x4c) /* Port 3 & 4 Auto-Negotiation */ 31#define KS8695_SEP34AN (0x4c) /* Port 3 & 4 Auto-Negotiation */
diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c
index 1b22e4af8791..08465eb6a2c2 100644
--- a/arch/arm/mach-mv78xx0/common.c
+++ b/arch/arm/mach-mv78xx0/common.c
@@ -845,6 +845,8 @@ static char * __init mv78xx0_id(void)
845 } else if (dev == MV78100_DEV_ID) { 845 } else if (dev == MV78100_DEV_ID) {
846 if (rev == MV78100_REV_A0) 846 if (rev == MV78100_REV_A0)
847 return "MV78100-A0"; 847 return "MV78100-A0";
848 else if (rev == MV78100_REV_A1)
849 return "MV78100-A1";
848 else 850 else
849 return "MV78100-Rev-Unsupported"; 851 return "MV78100-Rev-Unsupported";
850 } else if (dev == MV78200_DEV_ID) { 852 } else if (dev == MV78200_DEV_ID) {
diff --git a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h b/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
index d715b92b0908..788bdace1304 100644
--- a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
+++ b/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
@@ -112,6 +112,7 @@
112 112
113#define MV78100_DEV_ID 0x7810 113#define MV78100_DEV_ID 0x7810
114#define MV78100_REV_A0 1 114#define MV78100_REV_A0 1
115#define MV78100_REV_A1 2
115 116
116#define MV78200_DEV_ID 0x7820 117#define MV78200_DEV_ID 0x7820
117#define MV78200_REV_A0 1 118#define MV78200_REV_A0 1
diff --git a/arch/arm/mach-pxa/irq.c b/arch/arm/mach-pxa/irq.c
index d694ce289668..6112af431fa4 100644
--- a/arch/arm/mach-pxa/irq.c
+++ b/arch/arm/mach-pxa/irq.c
@@ -25,6 +25,8 @@
25 25
26#include "generic.h" 26#include "generic.h"
27 27
28#define MAX_INTERNAL_IRQS 128
29
28#define IRQ_BIT(n) (((n) - PXA_IRQ(0)) & 0x1f) 30#define IRQ_BIT(n) (((n) - PXA_IRQ(0)) & 0x1f)
29#define _ICMR(n) (*((((n) - PXA_IRQ(0)) & ~0x1f) ? &ICMR2 : &ICMR)) 31#define _ICMR(n) (*((((n) - PXA_IRQ(0)) & ~0x1f) ? &ICMR2 : &ICMR))
30#define _ICLR(n) (*((((n) - PXA_IRQ(0)) & ~0x1f) ? &ICLR2 : &ICLR)) 32#define _ICLR(n) (*((((n) - PXA_IRQ(0)) & ~0x1f) ? &ICLR2 : &ICLR))
@@ -122,6 +124,8 @@ void __init pxa_init_irq(int irq_nr, set_wake_t fn)
122{ 124{
123 int irq, i; 125 int irq, i;
124 126
127 BUG_ON(irq_nr > MAX_INTERNAL_IRQS);
128
125 pxa_internal_irq_nr = irq_nr; 129 pxa_internal_irq_nr = irq_nr;
126 130
127 for (irq = PXA_IRQ(0); irq < PXA_IRQ(irq_nr); irq += 32) { 131 for (irq = PXA_IRQ(0); irq < PXA_IRQ(irq_nr); irq += 32) {
@@ -149,7 +153,8 @@ void __init pxa_init_irq(int irq_nr, set_wake_t fn)
149} 153}
150 154
151#ifdef CONFIG_PM 155#ifdef CONFIG_PM
152static unsigned long saved_icmr[2]; 156static unsigned long saved_icmr[MAX_INTERNAL_IRQS/32];
157static unsigned long saved_ipr[MAX_INTERNAL_IRQS];
153 158
154static int pxa_irq_suspend(struct sys_device *dev, pm_message_t state) 159static int pxa_irq_suspend(struct sys_device *dev, pm_message_t state)
155{ 160{
@@ -159,6 +164,8 @@ static int pxa_irq_suspend(struct sys_device *dev, pm_message_t state)
159 saved_icmr[i] = _ICMR(irq); 164 saved_icmr[i] = _ICMR(irq);
160 _ICMR(irq) = 0; 165 _ICMR(irq) = 0;
161 } 166 }
167 for (i = 0; i < pxa_internal_irq_nr; i++)
168 saved_ipr[i] = IPR(i);
162 169
163 return 0; 170 return 0;
164} 171}
@@ -171,6 +178,8 @@ static int pxa_irq_resume(struct sys_device *dev)
171 _ICMR(irq) = saved_icmr[i]; 178 _ICMR(irq) = saved_icmr[i];
172 _ICLR(irq) = 0; 179 _ICLR(irq) = 0;
173 } 180 }
181 for (i = 0; i < pxa_internal_irq_nr; i++)
182 IPR(i) = saved_ipr[i];
174 183
175 ICCR = 1; 184 ICCR = 1;
176 return 0; 185 return 0;
diff --git a/arch/arm/mach-pxa/palmtc.c b/arch/arm/mach-pxa/palmtc.c
index bb2cc0dd44ec..0b92291a58f6 100644
--- a/arch/arm/mach-pxa/palmtc.c
+++ b/arch/arm/mach-pxa/palmtc.c
@@ -292,10 +292,10 @@ const static unsigned int palmtc_keypad_col_gpios[] = {
292 292
293static struct matrix_keypad_platform_data palmtc_keypad_platform_data = { 293static struct matrix_keypad_platform_data palmtc_keypad_platform_data = {
294 .keymap_data = &palmtc_keymap_data, 294 .keymap_data = &palmtc_keymap_data,
295 .col_gpios = palmtc_keypad_row_gpios, 295 .row_gpios = palmtc_keypad_row_gpios,
296 .num_col_gpios = 12, 296 .num_row_gpios = ARRAY_SIZE(palmtc_keypad_row_gpios),
297 .row_gpios = palmtc_keypad_col_gpios, 297 .col_gpios = palmtc_keypad_col_gpios,
298 .num_row_gpios = 4, 298 .num_col_gpios = ARRAY_SIZE(palmtc_keypad_col_gpios),
299 .active_low = 1, 299 .active_low = 1,
300 300
301 .debounce_ms = 20, 301 .debounce_ms = 20,
diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c
index 82ff5733e4dc..3da45d051743 100644
--- a/arch/arm/mach-pxa/spitz.c
+++ b/arch/arm/mach-pxa/spitz.c
@@ -779,11 +779,34 @@ static void __init common_init(void)
779 pxa_set_i2c_info(NULL); 779 pxa_set_i2c_info(NULL);
780} 780}
781 781
782#if defined(CONFIG_MACH_AKITA) || defined(CONFIG_MACH_BORZOI)
783static struct nand_bbt_descr sharpsl_akita_bbt = {
784 .options = 0,
785 .offs = 4,
786 .len = 1,
787 .pattern = scan_ff_pattern
788};
789
790static struct nand_ecclayout akita_oobinfo = {
791 .eccbytes = 24,
792 .eccpos = {
793 0x5, 0x1, 0x2, 0x3, 0x6, 0x7, 0x15, 0x11,
794 0x12, 0x13, 0x16, 0x17, 0x25, 0x21, 0x22, 0x23,
795 0x26, 0x27, 0x35, 0x31, 0x32, 0x33, 0x36, 0x37},
796 .oobfree = {{0x08, 0x09}}
797};
798#endif
799
782#if defined(CONFIG_MACH_SPITZ) || defined(CONFIG_MACH_BORZOI) 800#if defined(CONFIG_MACH_SPITZ) || defined(CONFIG_MACH_BORZOI)
783static void __init spitz_init(void) 801static void __init spitz_init(void)
784{ 802{
785 spitz_ficp_platform_data.gpio_pwdown = SPITZ_GPIO_IR_ON; 803 spitz_ficp_platform_data.gpio_pwdown = SPITZ_GPIO_IR_ON;
786 804
805 if (machine_is_borzoi()) {
806 sharpsl_nand_platform_data.badblock_pattern = &sharpsl_akita_bbt;
807 sharpsl_nand_platform_data.ecc_layout = &akita_oobinfo;
808 }
809
787 platform_scoop_config = &spitz_pcmcia_config; 810 platform_scoop_config = &spitz_pcmcia_config;
788 811
789 common_init(); 812 common_init();
@@ -808,22 +831,6 @@ static struct i2c_board_info akita_i2c_board_info[] = {
808 }, 831 },
809}; 832};
810 833
811static struct nand_bbt_descr sharpsl_akita_bbt = {
812 .options = 0,
813 .offs = 4,
814 .len = 1,
815 .pattern = scan_ff_pattern
816};
817
818static struct nand_ecclayout akita_oobinfo = {
819 .eccbytes = 24,
820 .eccpos = {
821 0x5, 0x1, 0x2, 0x3, 0x6, 0x7, 0x15, 0x11,
822 0x12, 0x13, 0x16, 0x17, 0x25, 0x21, 0x22, 0x23,
823 0x26, 0x27, 0x35, 0x31, 0x32, 0x33, 0x36, 0x37},
824 .oobfree = {{0x08, 0x09}}
825};
826
827static void __init akita_init(void) 834static void __init akita_init(void)
828{ 835{
829 spitz_ficp_platform_data.gpio_pwdown = AKITA_GPIO_IR_ON; 836 spitz_ficp_platform_data.gpio_pwdown = AKITA_GPIO_IR_ON;
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
index 069a61017c02..aa1e9535e358 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -196,6 +196,7 @@ enum cfqq_state_flags {
196 CFQ_CFQQ_FLAG_slice_new, /* no requests dispatched in slice */ 196 CFQ_CFQQ_FLAG_slice_new, /* no requests dispatched in slice */
197 CFQ_CFQQ_FLAG_sync, /* synchronous queue */ 197 CFQ_CFQQ_FLAG_sync, /* synchronous queue */
198 CFQ_CFQQ_FLAG_coop, /* has done a coop jump of the queue */ 198 CFQ_CFQQ_FLAG_coop, /* has done a coop jump of the queue */
199 CFQ_CFQQ_FLAG_coop_preempt, /* coop preempt */
199}; 200};
200 201
201#define CFQ_CFQQ_FNS(name) \ 202#define CFQ_CFQQ_FNS(name) \
@@ -222,6 +223,7 @@ CFQ_CFQQ_FNS(prio_changed);
222CFQ_CFQQ_FNS(slice_new); 223CFQ_CFQQ_FNS(slice_new);
223CFQ_CFQQ_FNS(sync); 224CFQ_CFQQ_FNS(sync);
224CFQ_CFQQ_FNS(coop); 225CFQ_CFQQ_FNS(coop);
226CFQ_CFQQ_FNS(coop_preempt);
225#undef CFQ_CFQQ_FNS 227#undef CFQ_CFQQ_FNS
226 228
227#define cfq_log_cfqq(cfqd, cfqq, fmt, args...) \ 229#define cfq_log_cfqq(cfqd, cfqq, fmt, args...) \
@@ -945,10 +947,13 @@ static struct cfq_queue *cfq_set_active_queue(struct cfq_data *cfqd,
945{ 947{
946 if (!cfqq) { 948 if (!cfqq) {
947 cfqq = cfq_get_next_queue(cfqd); 949 cfqq = cfq_get_next_queue(cfqd);
948 if (cfqq) 950 if (cfqq && !cfq_cfqq_coop_preempt(cfqq))
949 cfq_clear_cfqq_coop(cfqq); 951 cfq_clear_cfqq_coop(cfqq);
950 } 952 }
951 953
954 if (cfqq)
955 cfq_clear_cfqq_coop_preempt(cfqq);
956
952 __cfq_set_active_queue(cfqd, cfqq); 957 __cfq_set_active_queue(cfqd, cfqq);
953 return cfqq; 958 return cfqq;
954} 959}
@@ -2051,7 +2056,7 @@ cfq_should_preempt(struct cfq_data *cfqd, struct cfq_queue *new_cfqq,
2051 * it's a metadata request and the current queue is doing regular IO. 2056 * it's a metadata request and the current queue is doing regular IO.
2052 */ 2057 */
2053 if (rq_is_meta(rq) && !cfqq->meta_pending) 2058 if (rq_is_meta(rq) && !cfqq->meta_pending)
2054 return false; 2059 return true;
2055 2060
2056 /* 2061 /*
2057 * Allow an RT request to pre-empt an ongoing non-RT cfqq timeslice. 2062 * Allow an RT request to pre-empt an ongoing non-RT cfqq timeslice.
@@ -2066,8 +2071,16 @@ cfq_should_preempt(struct cfq_data *cfqd, struct cfq_queue *new_cfqq,
2066 * if this request is as-good as one we would expect from the 2071 * if this request is as-good as one we would expect from the
2067 * current cfqq, let it preempt 2072 * current cfqq, let it preempt
2068 */ 2073 */
2069 if (cfq_rq_close(cfqd, rq)) 2074 if (cfq_rq_close(cfqd, rq) && (!cfq_cfqq_coop(new_cfqq) ||
2075 cfqd->busy_queues == 1)) {
2076 /*
2077 * Mark new queue coop_preempt, so its coop flag will not be
2078 * cleared when new queue gets scheduled at the very first time
2079 */
2080 cfq_mark_cfqq_coop_preempt(new_cfqq);
2081 cfq_mark_cfqq_coop(new_cfqq);
2070 return true; 2082 return true;
2083 }
2071 2084
2072 return false; 2085 return false;
2073} 2086}
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index a06f5d6375a8..a3241a1a710b 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -2718,6 +2718,30 @@ static bool ahci_sb600_enable_64bit(struct pci_dev *pdev)
2718 }, 2718 },
2719 .driver_data = "20071026", /* yyyymmdd */ 2719 .driver_data = "20071026", /* yyyymmdd */
2720 }, 2720 },
2721 /*
2722 * All BIOS versions for the MSI K9A2 Platinum (MS-7376)
2723 * support 64bit DMA.
2724 *
2725 * BIOS versions earlier than 1.5 had the Manufacturer DMI
2726 * fields as "MICRO-STAR INTERANTIONAL CO.,LTD".
2727 * This spelling mistake was fixed in BIOS version 1.5, so
2728 * 1.5 and later have the Manufacturer as
2729 * "MICRO-STAR INTERNATIONAL CO.,LTD".
2730 * So try to match on DMI_BOARD_VENDOR of "MICRO-STAR INTER".
2731 *
2732 * BIOS versions earlier than 1.9 had a Board Product Name
2733 * DMI field of "MS-7376". This was changed to be
2734 * "K9A2 Platinum (MS-7376)" in version 1.9, but we can still
2735 * match on DMI_BOARD_NAME of "MS-7376".
2736 */
2737 {
2738 .ident = "MSI K9A2 Platinum",
2739 .matches = {
2740 DMI_MATCH(DMI_BOARD_VENDOR,
2741 "MICRO-STAR INTER"),
2742 DMI_MATCH(DMI_BOARD_NAME, "MS-7376"),
2743 },
2744 },
2721 { } 2745 { }
2722 }; 2746 };
2723 const struct dmi_system_id *match; 2747 const struct dmi_system_id *match;
@@ -2729,18 +2753,24 @@ static bool ahci_sb600_enable_64bit(struct pci_dev *pdev)
2729 !match) 2753 !match)
2730 return false; 2754 return false;
2731 2755
2756 if (!match->driver_data)
2757 goto enable_64bit;
2758
2732 dmi_get_date(DMI_BIOS_DATE, &year, &month, &date); 2759 dmi_get_date(DMI_BIOS_DATE, &year, &month, &date);
2733 snprintf(buf, sizeof(buf), "%04d%02d%02d", year, month, date); 2760 snprintf(buf, sizeof(buf), "%04d%02d%02d", year, month, date);
2734 2761
2735 if (strcmp(buf, match->driver_data) >= 0) { 2762 if (strcmp(buf, match->driver_data) >= 0)
2736 dev_printk(KERN_WARNING, &pdev->dev, "%s: enabling 64bit DMA\n", 2763 goto enable_64bit;
2737 match->ident); 2764 else {
2738 return true;
2739 } else {
2740 dev_printk(KERN_WARNING, &pdev->dev, "%s: BIOS too old, " 2765 dev_printk(KERN_WARNING, &pdev->dev, "%s: BIOS too old, "
2741 "forcing 32bit DMA, update BIOS\n", match->ident); 2766 "forcing 32bit DMA, update BIOS\n", match->ident);
2742 return false; 2767 return false;
2743 } 2768 }
2769
2770enable_64bit:
2771 dev_printk(KERN_WARNING, &pdev->dev, "%s: enabling 64bit DMA\n",
2772 match->ident);
2773 return true;
2744} 2774}
2745 2775
2746static bool ahci_broken_system_poweroff(struct pci_dev *pdev) 2776static bool ahci_broken_system_poweroff(struct pci_dev *pdev)
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index d7f0f1b1ae3e..dc72690ed5db 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -4919,10 +4919,11 @@ struct ata_queued_cmd *ata_qc_new_init(struct ata_device *dev)
4919 */ 4919 */
4920void ata_qc_free(struct ata_queued_cmd *qc) 4920void ata_qc_free(struct ata_queued_cmd *qc)
4921{ 4921{
4922 struct ata_port *ap = qc->ap; 4922 struct ata_port *ap;
4923 unsigned int tag; 4923 unsigned int tag;
4924 4924
4925 WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */ 4925 WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
4926 ap = qc->ap;
4926 4927
4927 qc->flags = 0; 4928 qc->flags = 0;
4928 tag = qc->tag; 4929 tag = qc->tag;
@@ -4934,11 +4935,13 @@ void ata_qc_free(struct ata_queued_cmd *qc)
4934 4935
4935void __ata_qc_complete(struct ata_queued_cmd *qc) 4936void __ata_qc_complete(struct ata_queued_cmd *qc)
4936{ 4937{
4937 struct ata_port *ap = qc->ap; 4938 struct ata_port *ap;
4938 struct ata_link *link = qc->dev->link; 4939 struct ata_link *link;
4939 4940
4940 WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */ 4941 WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
4941 WARN_ON_ONCE(!(qc->flags & ATA_QCFLAG_ACTIVE)); 4942 WARN_ON_ONCE(!(qc->flags & ATA_QCFLAG_ACTIVE));
4943 ap = qc->ap;
4944 link = qc->dev->link;
4942 4945
4943 if (likely(qc->flags & ATA_QCFLAG_DMAMAP)) 4946 if (likely(qc->flags & ATA_QCFLAG_DMAMAP))
4944 ata_sg_clean(qc); 4947 ata_sg_clean(qc);
diff --git a/drivers/ata/sata_via.c b/drivers/ata/sata_via.c
index bdd43c7f432e..02efd9a83d26 100644
--- a/drivers/ata/sata_via.c
+++ b/drivers/ata/sata_via.c
@@ -93,7 +93,6 @@ static const struct pci_device_id svia_pci_tbl[] = {
93 { PCI_VDEVICE(VIA, 0x7372), vt6420 }, 93 { PCI_VDEVICE(VIA, 0x7372), vt6420 },
94 { PCI_VDEVICE(VIA, 0x5287), vt8251 }, /* 2 sata chnls (Master/Slave) */ 94 { PCI_VDEVICE(VIA, 0x5287), vt8251 }, /* 2 sata chnls (Master/Slave) */
95 { PCI_VDEVICE(VIA, 0x9000), vt8251 }, 95 { PCI_VDEVICE(VIA, 0x9000), vt8251 },
96 { PCI_VDEVICE(VIA, 0x9040), vt8251 },
97 96
98 { } /* terminate list */ 97 { } /* terminate list */
99}; 98};
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index 92aeb918e0c0..e5b138be45fa 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -1227,8 +1227,7 @@ static int i915_load_modeset_init(struct drm_device *dev,
1227 goto out; 1227 goto out;
1228 1228
1229 /* Try to set up FBC with a reasonable compressed buffer size */ 1229 /* Try to set up FBC with a reasonable compressed buffer size */
1230 if (IS_MOBILE(dev) && (IS_I9XX(dev) || IS_I965G(dev) || IS_GM45(dev)) && 1230 if (I915_HAS_FBC(dev) && i915_powersave) {
1231 i915_powersave) {
1232 int cfb_size; 1231 int cfb_size;
1233 1232
1234 /* Try to get an 8M buffer... */ 1233 /* Try to get an 8M buffer... */
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index c5df2234418d..57204e298975 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -296,6 +296,12 @@ typedef struct drm_i915_private {
296 u32 saveVBLANK_A; 296 u32 saveVBLANK_A;
297 u32 saveVSYNC_A; 297 u32 saveVSYNC_A;
298 u32 saveBCLRPAT_A; 298 u32 saveBCLRPAT_A;
299 u32 saveTRANS_HTOTAL_A;
300 u32 saveTRANS_HBLANK_A;
301 u32 saveTRANS_HSYNC_A;
302 u32 saveTRANS_VTOTAL_A;
303 u32 saveTRANS_VBLANK_A;
304 u32 saveTRANS_VSYNC_A;
299 u32 savePIPEASTAT; 305 u32 savePIPEASTAT;
300 u32 saveDSPASTRIDE; 306 u32 saveDSPASTRIDE;
301 u32 saveDSPASIZE; 307 u32 saveDSPASIZE;
@@ -304,8 +310,11 @@ typedef struct drm_i915_private {
304 u32 saveDSPASURF; 310 u32 saveDSPASURF;
305 u32 saveDSPATILEOFF; 311 u32 saveDSPATILEOFF;
306 u32 savePFIT_PGM_RATIOS; 312 u32 savePFIT_PGM_RATIOS;
313 u32 saveBLC_HIST_CTL;
307 u32 saveBLC_PWM_CTL; 314 u32 saveBLC_PWM_CTL;
308 u32 saveBLC_PWM_CTL2; 315 u32 saveBLC_PWM_CTL2;
316 u32 saveBLC_CPU_PWM_CTL;
317 u32 saveBLC_CPU_PWM_CTL2;
309 u32 saveFPB0; 318 u32 saveFPB0;
310 u32 saveFPB1; 319 u32 saveFPB1;
311 u32 saveDPLL_B; 320 u32 saveDPLL_B;
@@ -317,6 +326,12 @@ typedef struct drm_i915_private {
317 u32 saveVBLANK_B; 326 u32 saveVBLANK_B;
318 u32 saveVSYNC_B; 327 u32 saveVSYNC_B;
319 u32 saveBCLRPAT_B; 328 u32 saveBCLRPAT_B;
329 u32 saveTRANS_HTOTAL_B;
330 u32 saveTRANS_HBLANK_B;
331 u32 saveTRANS_HSYNC_B;
332 u32 saveTRANS_VTOTAL_B;
333 u32 saveTRANS_VBLANK_B;
334 u32 saveTRANS_VSYNC_B;
320 u32 savePIPEBSTAT; 335 u32 savePIPEBSTAT;
321 u32 saveDSPBSTRIDE; 336 u32 saveDSPBSTRIDE;
322 u32 saveDSPBSIZE; 337 u32 saveDSPBSIZE;
@@ -342,6 +357,7 @@ typedef struct drm_i915_private {
342 u32 savePFIT_CONTROL; 357 u32 savePFIT_CONTROL;
343 u32 save_palette_a[256]; 358 u32 save_palette_a[256];
344 u32 save_palette_b[256]; 359 u32 save_palette_b[256];
360 u32 saveDPFC_CB_BASE;
345 u32 saveFBC_CFB_BASE; 361 u32 saveFBC_CFB_BASE;
346 u32 saveFBC_LL_BASE; 362 u32 saveFBC_LL_BASE;
347 u32 saveFBC_CONTROL; 363 u32 saveFBC_CONTROL;
@@ -349,6 +365,12 @@ typedef struct drm_i915_private {
349 u32 saveIER; 365 u32 saveIER;
350 u32 saveIIR; 366 u32 saveIIR;
351 u32 saveIMR; 367 u32 saveIMR;
368 u32 saveDEIER;
369 u32 saveDEIMR;
370 u32 saveGTIER;
371 u32 saveGTIMR;
372 u32 saveFDI_RXA_IMR;
373 u32 saveFDI_RXB_IMR;
352 u32 saveCACHE_MODE_0; 374 u32 saveCACHE_MODE_0;
353 u32 saveD_STATE; 375 u32 saveD_STATE;
354 u32 saveDSPCLK_GATE_D; 376 u32 saveDSPCLK_GATE_D;
@@ -382,6 +404,16 @@ typedef struct drm_i915_private {
382 u32 savePIPEB_DP_LINK_M; 404 u32 savePIPEB_DP_LINK_M;
383 u32 savePIPEA_DP_LINK_N; 405 u32 savePIPEA_DP_LINK_N;
384 u32 savePIPEB_DP_LINK_N; 406 u32 savePIPEB_DP_LINK_N;
407 u32 saveFDI_RXA_CTL;
408 u32 saveFDI_TXA_CTL;
409 u32 saveFDI_RXB_CTL;
410 u32 saveFDI_TXB_CTL;
411 u32 savePFA_CTL_1;
412 u32 savePFB_CTL_1;
413 u32 savePFA_WIN_SZ;
414 u32 savePFB_WIN_SZ;
415 u32 savePFA_WIN_POS;
416 u32 savePFB_WIN_POS;
385 417
386 struct { 418 struct {
387 struct drm_mm gtt_space; 419 struct drm_mm gtt_space;
@@ -492,6 +524,8 @@ typedef struct drm_i915_private {
492 struct drm_i915_gem_phys_object *phys_objs[I915_MAX_PHYS_OBJECT]; 524 struct drm_i915_gem_phys_object *phys_objs[I915_MAX_PHYS_OBJECT];
493 } mm; 525 } mm;
494 struct sdvo_device_mapping sdvo_mappings[2]; 526 struct sdvo_device_mapping sdvo_mappings[2];
527 /* indicate whether the LVDS_BORDER should be enabled or not */
528 unsigned int lvds_border_bits;
495 529
496 /* Reclocking support */ 530 /* Reclocking support */
497 bool render_reclock_avail; 531 bool render_reclock_avail;
@@ -981,7 +1015,10 @@ extern int i915_wait_ring(struct drm_device * dev, int n, const char *caller);
981 1015
982#define HAS_FW_BLC(dev) (IS_I9XX(dev) || IS_G4X(dev) || IS_IGDNG(dev)) 1016#define HAS_FW_BLC(dev) (IS_I9XX(dev) || IS_G4X(dev) || IS_IGDNG(dev))
983#define HAS_PIPE_CXSR(dev) (IS_G4X(dev) || IS_IGDNG(dev)) 1017#define HAS_PIPE_CXSR(dev) (IS_G4X(dev) || IS_IGDNG(dev))
984#define I915_HAS_FBC(dev) (IS_MOBILE(dev) && (IS_I9XX(dev) || IS_I965G(dev))) 1018#define I915_HAS_FBC(dev) (IS_MOBILE(dev) && \
1019 (IS_I9XX(dev) || IS_GM45(dev)) && \
1020 !IS_IGD(dev) && \
1021 !IS_IGDNG(dev))
985 1022
986#define PRIMARY_RINGBUFFER_SIZE (128*1024) 1023#define PRIMARY_RINGBUFFER_SIZE (128*1024)
987 1024
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 0466ddbeba32..1687edf68795 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -968,6 +968,8 @@
968#define LVDS_PORT_EN (1 << 31) 968#define LVDS_PORT_EN (1 << 31)
969/* Selects pipe B for LVDS data. Must be set on pre-965. */ 969/* Selects pipe B for LVDS data. Must be set on pre-965. */
970#define LVDS_PIPEB_SELECT (1 << 30) 970#define LVDS_PIPEB_SELECT (1 << 30)
971/* Enable border for unscaled (or aspect-scaled) display */
972#define LVDS_BORDER_ENABLE (1 << 15)
971/* 973/*
972 * Enables the A0-A2 data pairs and CLKA, containing 18 bits of color data per 974 * Enables the A0-A2 data pairs and CLKA, containing 18 bits of color data per
973 * pixel. 975 * pixel.
@@ -1078,6 +1080,8 @@
1078#define BACKLIGHT_DUTY_CYCLE_SHIFT (0) 1080#define BACKLIGHT_DUTY_CYCLE_SHIFT (0)
1079#define BACKLIGHT_DUTY_CYCLE_MASK (0xffff) 1081#define BACKLIGHT_DUTY_CYCLE_MASK (0xffff)
1080 1082
1083#define BLC_HIST_CTL 0x61260
1084
1081/* TV port control */ 1085/* TV port control */
1082#define TV_CTL 0x68000 1086#define TV_CTL 0x68000
1083/** Enables the TV encoder */ 1087/** Enables the TV encoder */
@@ -1780,6 +1784,11 @@
1780#define PIPE_START_VBLANK_INTERRUPT_STATUS (1UL<<2) /* 965 or later */ 1784#define PIPE_START_VBLANK_INTERRUPT_STATUS (1UL<<2) /* 965 or later */
1781#define PIPE_VBLANK_INTERRUPT_STATUS (1UL<<1) 1785#define PIPE_VBLANK_INTERRUPT_STATUS (1UL<<1)
1782#define PIPE_OVERLAY_UPDATED_STATUS (1UL<<0) 1786#define PIPE_OVERLAY_UPDATED_STATUS (1UL<<0)
1787#define PIPE_BPC_MASK (7 << 5) /* Ironlake */
1788#define PIPE_8BPC (0 << 5)
1789#define PIPE_10BPC (1 << 5)
1790#define PIPE_6BPC (2 << 5)
1791#define PIPE_12BPC (3 << 5)
1783 1792
1784#define DSPARB 0x70030 1793#define DSPARB 0x70030
1785#define DSPARB_CSTART_MASK (0x7f << 7) 1794#define DSPARB_CSTART_MASK (0x7f << 7)
@@ -1790,17 +1799,29 @@
1790#define DSPARB_AEND_SHIFT 0 1799#define DSPARB_AEND_SHIFT 0
1791 1800
1792#define DSPFW1 0x70034 1801#define DSPFW1 0x70034
1802#define DSPFW_SR_SHIFT 23
1803#define DSPFW_CURSORB_SHIFT 16
1804#define DSPFW_PLANEB_SHIFT 8
1793#define DSPFW2 0x70038 1805#define DSPFW2 0x70038
1806#define DSPFW_CURSORA_MASK 0x00003f00
1807#define DSPFW_CURSORA_SHIFT 16
1794#define DSPFW3 0x7003c 1808#define DSPFW3 0x7003c
1809#define DSPFW_HPLL_SR_EN (1<<31)
1810#define DSPFW_CURSOR_SR_SHIFT 24
1795#define IGD_SELF_REFRESH_EN (1<<30) 1811#define IGD_SELF_REFRESH_EN (1<<30)
1796 1812
1797/* FIFO watermark sizes etc */ 1813/* FIFO watermark sizes etc */
1814#define G4X_FIFO_LINE_SIZE 64
1798#define I915_FIFO_LINE_SIZE 64 1815#define I915_FIFO_LINE_SIZE 64
1799#define I830_FIFO_LINE_SIZE 32 1816#define I830_FIFO_LINE_SIZE 32
1817
1818#define G4X_FIFO_SIZE 127
1800#define I945_FIFO_SIZE 127 /* 945 & 965 */ 1819#define I945_FIFO_SIZE 127 /* 945 & 965 */
1801#define I915_FIFO_SIZE 95 1820#define I915_FIFO_SIZE 95
1802#define I855GM_FIFO_SIZE 127 /* In cachelines */ 1821#define I855GM_FIFO_SIZE 127 /* In cachelines */
1803#define I830_FIFO_SIZE 95 1822#define I830_FIFO_SIZE 95
1823
1824#define G4X_MAX_WM 0x3f
1804#define I915_MAX_WM 0x3f 1825#define I915_MAX_WM 0x3f
1805 1826
1806#define IGD_DISPLAY_FIFO 512 /* in 64byte unit */ 1827#define IGD_DISPLAY_FIFO 512 /* in 64byte unit */
@@ -2030,6 +2051,11 @@
2030#define PFA_CTL_1 0x68080 2051#define PFA_CTL_1 0x68080
2031#define PFB_CTL_1 0x68880 2052#define PFB_CTL_1 0x68880
2032#define PF_ENABLE (1<<31) 2053#define PF_ENABLE (1<<31)
2054#define PF_FILTER_MASK (3<<23)
2055#define PF_FILTER_PROGRAMMED (0<<23)
2056#define PF_FILTER_MED_3x3 (1<<23)
2057#define PF_FILTER_EDGE_ENHANCE (2<<23)
2058#define PF_FILTER_EDGE_SOFTEN (3<<23)
2033#define PFA_WIN_SZ 0x68074 2059#define PFA_WIN_SZ 0x68074
2034#define PFB_WIN_SZ 0x68874 2060#define PFB_WIN_SZ 0x68874
2035#define PFA_WIN_POS 0x68070 2061#define PFA_WIN_POS 0x68070
@@ -2149,11 +2175,11 @@
2149#define DREF_CPU_SOURCE_OUTPUT_MASK (3<<13) 2175#define DREF_CPU_SOURCE_OUTPUT_MASK (3<<13)
2150#define DREF_SSC_SOURCE_DISABLE (0<<11) 2176#define DREF_SSC_SOURCE_DISABLE (0<<11)
2151#define DREF_SSC_SOURCE_ENABLE (2<<11) 2177#define DREF_SSC_SOURCE_ENABLE (2<<11)
2152#define DREF_SSC_SOURCE_MASK (2<<11) 2178#define DREF_SSC_SOURCE_MASK (3<<11)
2153#define DREF_NONSPREAD_SOURCE_DISABLE (0<<9) 2179#define DREF_NONSPREAD_SOURCE_DISABLE (0<<9)
2154#define DREF_NONSPREAD_CK505_ENABLE (1<<9) 2180#define DREF_NONSPREAD_CK505_ENABLE (1<<9)
2155#define DREF_NONSPREAD_SOURCE_ENABLE (2<<9) 2181#define DREF_NONSPREAD_SOURCE_ENABLE (2<<9)
2156#define DREF_NONSPREAD_SOURCE_MASK (2<<9) 2182#define DREF_NONSPREAD_SOURCE_MASK (3<<9)
2157#define DREF_SUPERSPREAD_SOURCE_DISABLE (0<<7) 2183#define DREF_SUPERSPREAD_SOURCE_DISABLE (0<<7)
2158#define DREF_SUPERSPREAD_SOURCE_ENABLE (2<<7) 2184#define DREF_SUPERSPREAD_SOURCE_ENABLE (2<<7)
2159#define DREF_SSC4_DOWNSPREAD (0<<6) 2185#define DREF_SSC4_DOWNSPREAD (0<<6)
diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c
index bd6d8d91ca9f..992d5617e798 100644
--- a/drivers/gpu/drm/i915/i915_suspend.c
+++ b/drivers/gpu/drm/i915/i915_suspend.c
@@ -32,11 +32,15 @@
32static bool i915_pipe_enabled(struct drm_device *dev, enum pipe pipe) 32static bool i915_pipe_enabled(struct drm_device *dev, enum pipe pipe)
33{ 33{
34 struct drm_i915_private *dev_priv = dev->dev_private; 34 struct drm_i915_private *dev_priv = dev->dev_private;
35 u32 dpll_reg;
35 36
36 if (pipe == PIPE_A) 37 if (IS_IGDNG(dev)) {
37 return (I915_READ(DPLL_A) & DPLL_VCO_ENABLE); 38 dpll_reg = (pipe == PIPE_A) ? PCH_DPLL_A: PCH_DPLL_B;
38 else 39 } else {
39 return (I915_READ(DPLL_B) & DPLL_VCO_ENABLE); 40 dpll_reg = (pipe == PIPE_A) ? DPLL_A: DPLL_B;
41 }
42
43 return (I915_READ(dpll_reg) & DPLL_VCO_ENABLE);
40} 44}
41 45
42static void i915_save_palette(struct drm_device *dev, enum pipe pipe) 46static void i915_save_palette(struct drm_device *dev, enum pipe pipe)
@@ -49,6 +53,9 @@ static void i915_save_palette(struct drm_device *dev, enum pipe pipe)
49 if (!i915_pipe_enabled(dev, pipe)) 53 if (!i915_pipe_enabled(dev, pipe))
50 return; 54 return;
51 55
56 if (IS_IGDNG(dev))
57 reg = (pipe == PIPE_A) ? LGC_PALETTE_A : LGC_PALETTE_B;
58
52 if (pipe == PIPE_A) 59 if (pipe == PIPE_A)
53 array = dev_priv->save_palette_a; 60 array = dev_priv->save_palette_a;
54 else 61 else
@@ -68,6 +75,9 @@ static void i915_restore_palette(struct drm_device *dev, enum pipe pipe)
68 if (!i915_pipe_enabled(dev, pipe)) 75 if (!i915_pipe_enabled(dev, pipe))
69 return; 76 return;
70 77
78 if (IS_IGDNG(dev))
79 reg = (pipe == PIPE_A) ? LGC_PALETTE_A : LGC_PALETTE_B;
80
71 if (pipe == PIPE_A) 81 if (pipe == PIPE_A)
72 array = dev_priv->save_palette_a; 82 array = dev_priv->save_palette_a;
73 else 83 else
@@ -232,10 +242,16 @@ static void i915_save_modeset_reg(struct drm_device *dev)
232 /* Pipe & plane A info */ 242 /* Pipe & plane A info */
233 dev_priv->savePIPEACONF = I915_READ(PIPEACONF); 243 dev_priv->savePIPEACONF = I915_READ(PIPEACONF);
234 dev_priv->savePIPEASRC = I915_READ(PIPEASRC); 244 dev_priv->savePIPEASRC = I915_READ(PIPEASRC);
235 dev_priv->saveFPA0 = I915_READ(FPA0); 245 if (IS_IGDNG(dev)) {
236 dev_priv->saveFPA1 = I915_READ(FPA1); 246 dev_priv->saveFPA0 = I915_READ(PCH_FPA0);
237 dev_priv->saveDPLL_A = I915_READ(DPLL_A); 247 dev_priv->saveFPA1 = I915_READ(PCH_FPA1);
238 if (IS_I965G(dev)) 248 dev_priv->saveDPLL_A = I915_READ(PCH_DPLL_A);
249 } else {
250 dev_priv->saveFPA0 = I915_READ(FPA0);
251 dev_priv->saveFPA1 = I915_READ(FPA1);
252 dev_priv->saveDPLL_A = I915_READ(DPLL_A);
253 }
254 if (IS_I965G(dev) && !IS_IGDNG(dev))
239 dev_priv->saveDPLL_A_MD = I915_READ(DPLL_A_MD); 255 dev_priv->saveDPLL_A_MD = I915_READ(DPLL_A_MD);
240 dev_priv->saveHTOTAL_A = I915_READ(HTOTAL_A); 256 dev_priv->saveHTOTAL_A = I915_READ(HTOTAL_A);
241 dev_priv->saveHBLANK_A = I915_READ(HBLANK_A); 257 dev_priv->saveHBLANK_A = I915_READ(HBLANK_A);
@@ -243,7 +259,24 @@ static void i915_save_modeset_reg(struct drm_device *dev)
243 dev_priv->saveVTOTAL_A = I915_READ(VTOTAL_A); 259 dev_priv->saveVTOTAL_A = I915_READ(VTOTAL_A);
244 dev_priv->saveVBLANK_A = I915_READ(VBLANK_A); 260 dev_priv->saveVBLANK_A = I915_READ(VBLANK_A);
245 dev_priv->saveVSYNC_A = I915_READ(VSYNC_A); 261 dev_priv->saveVSYNC_A = I915_READ(VSYNC_A);
246 dev_priv->saveBCLRPAT_A = I915_READ(BCLRPAT_A); 262 if (!IS_IGDNG(dev))
263 dev_priv->saveBCLRPAT_A = I915_READ(BCLRPAT_A);
264
265 if (IS_IGDNG(dev)) {
266 dev_priv->saveFDI_TXA_CTL = I915_READ(FDI_TXA_CTL);
267 dev_priv->saveFDI_RXA_CTL = I915_READ(FDI_RXA_CTL);
268
269 dev_priv->savePFA_CTL_1 = I915_READ(PFA_CTL_1);
270 dev_priv->savePFA_WIN_SZ = I915_READ(PFA_WIN_SZ);
271 dev_priv->savePFA_WIN_POS = I915_READ(PFA_WIN_POS);
272
273 dev_priv->saveTRANS_HTOTAL_A = I915_READ(TRANS_HTOTAL_A);
274 dev_priv->saveTRANS_HBLANK_A = I915_READ(TRANS_HBLANK_A);
275 dev_priv->saveTRANS_HSYNC_A = I915_READ(TRANS_HSYNC_A);
276 dev_priv->saveTRANS_VTOTAL_A = I915_READ(TRANS_VTOTAL_A);
277 dev_priv->saveTRANS_VBLANK_A = I915_READ(TRANS_VBLANK_A);
278 dev_priv->saveTRANS_VSYNC_A = I915_READ(TRANS_VSYNC_A);
279 }
247 280
248 dev_priv->saveDSPACNTR = I915_READ(DSPACNTR); 281 dev_priv->saveDSPACNTR = I915_READ(DSPACNTR);
249 dev_priv->saveDSPASTRIDE = I915_READ(DSPASTRIDE); 282 dev_priv->saveDSPASTRIDE = I915_READ(DSPASTRIDE);
@@ -260,10 +293,16 @@ static void i915_save_modeset_reg(struct drm_device *dev)
260 /* Pipe & plane B info */ 293 /* Pipe & plane B info */
261 dev_priv->savePIPEBCONF = I915_READ(PIPEBCONF); 294 dev_priv->savePIPEBCONF = I915_READ(PIPEBCONF);
262 dev_priv->savePIPEBSRC = I915_READ(PIPEBSRC); 295 dev_priv->savePIPEBSRC = I915_READ(PIPEBSRC);
263 dev_priv->saveFPB0 = I915_READ(FPB0); 296 if (IS_IGDNG(dev)) {
264 dev_priv->saveFPB1 = I915_READ(FPB1); 297 dev_priv->saveFPB0 = I915_READ(PCH_FPB0);
265 dev_priv->saveDPLL_B = I915_READ(DPLL_B); 298 dev_priv->saveFPB1 = I915_READ(PCH_FPB1);
266 if (IS_I965G(dev)) 299 dev_priv->saveDPLL_B = I915_READ(PCH_DPLL_B);
300 } else {
301 dev_priv->saveFPB0 = I915_READ(FPB0);
302 dev_priv->saveFPB1 = I915_READ(FPB1);
303 dev_priv->saveDPLL_B = I915_READ(DPLL_B);
304 }
305 if (IS_I965G(dev) && !IS_IGDNG(dev))
267 dev_priv->saveDPLL_B_MD = I915_READ(DPLL_B_MD); 306 dev_priv->saveDPLL_B_MD = I915_READ(DPLL_B_MD);
268 dev_priv->saveHTOTAL_B = I915_READ(HTOTAL_B); 307 dev_priv->saveHTOTAL_B = I915_READ(HTOTAL_B);
269 dev_priv->saveHBLANK_B = I915_READ(HBLANK_B); 308 dev_priv->saveHBLANK_B = I915_READ(HBLANK_B);
@@ -271,7 +310,24 @@ static void i915_save_modeset_reg(struct drm_device *dev)
271 dev_priv->saveVTOTAL_B = I915_READ(VTOTAL_B); 310 dev_priv->saveVTOTAL_B = I915_READ(VTOTAL_B);
272 dev_priv->saveVBLANK_B = I915_READ(VBLANK_B); 311 dev_priv->saveVBLANK_B = I915_READ(VBLANK_B);
273 dev_priv->saveVSYNC_B = I915_READ(VSYNC_B); 312 dev_priv->saveVSYNC_B = I915_READ(VSYNC_B);
274 dev_priv->saveBCLRPAT_A = I915_READ(BCLRPAT_A); 313 if (!IS_IGDNG(dev))
314 dev_priv->saveBCLRPAT_B = I915_READ(BCLRPAT_B);
315
316 if (IS_IGDNG(dev)) {
317 dev_priv->saveFDI_TXB_CTL = I915_READ(FDI_TXB_CTL);
318 dev_priv->saveFDI_RXB_CTL = I915_READ(FDI_RXB_CTL);
319
320 dev_priv->savePFB_CTL_1 = I915_READ(PFB_CTL_1);
321 dev_priv->savePFB_WIN_SZ = I915_READ(PFB_WIN_SZ);
322 dev_priv->savePFB_WIN_POS = I915_READ(PFB_WIN_POS);
323
324 dev_priv->saveTRANS_HTOTAL_B = I915_READ(TRANS_HTOTAL_B);
325 dev_priv->saveTRANS_HBLANK_B = I915_READ(TRANS_HBLANK_B);
326 dev_priv->saveTRANS_HSYNC_B = I915_READ(TRANS_HSYNC_B);
327 dev_priv->saveTRANS_VTOTAL_B = I915_READ(TRANS_VTOTAL_B);
328 dev_priv->saveTRANS_VBLANK_B = I915_READ(TRANS_VBLANK_B);
329 dev_priv->saveTRANS_VSYNC_B = I915_READ(TRANS_VSYNC_B);
330 }
275 331
276 dev_priv->saveDSPBCNTR = I915_READ(DSPBCNTR); 332 dev_priv->saveDSPBCNTR = I915_READ(DSPBCNTR);
277 dev_priv->saveDSPBSTRIDE = I915_READ(DSPBSTRIDE); 333 dev_priv->saveDSPBSTRIDE = I915_READ(DSPBSTRIDE);
@@ -290,23 +346,41 @@ static void i915_save_modeset_reg(struct drm_device *dev)
290static void i915_restore_modeset_reg(struct drm_device *dev) 346static void i915_restore_modeset_reg(struct drm_device *dev)
291{ 347{
292 struct drm_i915_private *dev_priv = dev->dev_private; 348 struct drm_i915_private *dev_priv = dev->dev_private;
349 int dpll_a_reg, fpa0_reg, fpa1_reg;
350 int dpll_b_reg, fpb0_reg, fpb1_reg;
293 351
294 if (drm_core_check_feature(dev, DRIVER_MODESET)) 352 if (drm_core_check_feature(dev, DRIVER_MODESET))
295 return; 353 return;
296 354
355 if (IS_IGDNG(dev)) {
356 dpll_a_reg = PCH_DPLL_A;
357 dpll_b_reg = PCH_DPLL_B;
358 fpa0_reg = PCH_FPA0;
359 fpb0_reg = PCH_FPB0;
360 fpa1_reg = PCH_FPA1;
361 fpb1_reg = PCH_FPB1;
362 } else {
363 dpll_a_reg = DPLL_A;
364 dpll_b_reg = DPLL_B;
365 fpa0_reg = FPA0;
366 fpb0_reg = FPB0;
367 fpa1_reg = FPA1;
368 fpb1_reg = FPB1;
369 }
370
297 /* Pipe & plane A info */ 371 /* Pipe & plane A info */
298 /* Prime the clock */ 372 /* Prime the clock */
299 if (dev_priv->saveDPLL_A & DPLL_VCO_ENABLE) { 373 if (dev_priv->saveDPLL_A & DPLL_VCO_ENABLE) {
300 I915_WRITE(DPLL_A, dev_priv->saveDPLL_A & 374 I915_WRITE(dpll_a_reg, dev_priv->saveDPLL_A &
301 ~DPLL_VCO_ENABLE); 375 ~DPLL_VCO_ENABLE);
302 DRM_UDELAY(150); 376 DRM_UDELAY(150);
303 } 377 }
304 I915_WRITE(FPA0, dev_priv->saveFPA0); 378 I915_WRITE(fpa0_reg, dev_priv->saveFPA0);
305 I915_WRITE(FPA1, dev_priv->saveFPA1); 379 I915_WRITE(fpa1_reg, dev_priv->saveFPA1);
306 /* Actually enable it */ 380 /* Actually enable it */
307 I915_WRITE(DPLL_A, dev_priv->saveDPLL_A); 381 I915_WRITE(dpll_a_reg, dev_priv->saveDPLL_A);
308 DRM_UDELAY(150); 382 DRM_UDELAY(150);
309 if (IS_I965G(dev)) 383 if (IS_I965G(dev) && !IS_IGDNG(dev))
310 I915_WRITE(DPLL_A_MD, dev_priv->saveDPLL_A_MD); 384 I915_WRITE(DPLL_A_MD, dev_priv->saveDPLL_A_MD);
311 DRM_UDELAY(150); 385 DRM_UDELAY(150);
312 386
@@ -317,7 +391,24 @@ static void i915_restore_modeset_reg(struct drm_device *dev)
317 I915_WRITE(VTOTAL_A, dev_priv->saveVTOTAL_A); 391 I915_WRITE(VTOTAL_A, dev_priv->saveVTOTAL_A);
318 I915_WRITE(VBLANK_A, dev_priv->saveVBLANK_A); 392 I915_WRITE(VBLANK_A, dev_priv->saveVBLANK_A);
319 I915_WRITE(VSYNC_A, dev_priv->saveVSYNC_A); 393 I915_WRITE(VSYNC_A, dev_priv->saveVSYNC_A);
320 I915_WRITE(BCLRPAT_A, dev_priv->saveBCLRPAT_A); 394 if (!IS_IGDNG(dev))
395 I915_WRITE(BCLRPAT_A, dev_priv->saveBCLRPAT_A);
396
397 if (IS_IGDNG(dev)) {
398 I915_WRITE(FDI_RXA_CTL, dev_priv->saveFDI_RXA_CTL);
399 I915_WRITE(FDI_TXA_CTL, dev_priv->saveFDI_TXA_CTL);
400
401 I915_WRITE(PFA_CTL_1, dev_priv->savePFA_CTL_1);
402 I915_WRITE(PFA_WIN_SZ, dev_priv->savePFA_WIN_SZ);
403 I915_WRITE(PFA_WIN_POS, dev_priv->savePFA_WIN_POS);
404
405 I915_WRITE(TRANS_HTOTAL_A, dev_priv->saveTRANS_HTOTAL_A);
406 I915_WRITE(TRANS_HBLANK_A, dev_priv->saveTRANS_HBLANK_A);
407 I915_WRITE(TRANS_HSYNC_A, dev_priv->saveTRANS_HSYNC_A);
408 I915_WRITE(TRANS_VTOTAL_A, dev_priv->saveTRANS_VTOTAL_A);
409 I915_WRITE(TRANS_VBLANK_A, dev_priv->saveTRANS_VBLANK_A);
410 I915_WRITE(TRANS_VSYNC_A, dev_priv->saveTRANS_VSYNC_A);
411 }
321 412
322 /* Restore plane info */ 413 /* Restore plane info */
323 I915_WRITE(DSPASIZE, dev_priv->saveDSPASIZE); 414 I915_WRITE(DSPASIZE, dev_priv->saveDSPASIZE);
@@ -339,14 +430,14 @@ static void i915_restore_modeset_reg(struct drm_device *dev)
339 430
340 /* Pipe & plane B info */ 431 /* Pipe & plane B info */
341 if (dev_priv->saveDPLL_B & DPLL_VCO_ENABLE) { 432 if (dev_priv->saveDPLL_B & DPLL_VCO_ENABLE) {
342 I915_WRITE(DPLL_B, dev_priv->saveDPLL_B & 433 I915_WRITE(dpll_b_reg, dev_priv->saveDPLL_B &
343 ~DPLL_VCO_ENABLE); 434 ~DPLL_VCO_ENABLE);
344 DRM_UDELAY(150); 435 DRM_UDELAY(150);
345 } 436 }
346 I915_WRITE(FPB0, dev_priv->saveFPB0); 437 I915_WRITE(fpb0_reg, dev_priv->saveFPB0);
347 I915_WRITE(FPB1, dev_priv->saveFPB1); 438 I915_WRITE(fpb1_reg, dev_priv->saveFPB1);
348 /* Actually enable it */ 439 /* Actually enable it */
349 I915_WRITE(DPLL_B, dev_priv->saveDPLL_B); 440 I915_WRITE(dpll_b_reg, dev_priv->saveDPLL_B);
350 DRM_UDELAY(150); 441 DRM_UDELAY(150);
351 if (IS_I965G(dev)) 442 if (IS_I965G(dev))
352 I915_WRITE(DPLL_B_MD, dev_priv->saveDPLL_B_MD); 443 I915_WRITE(DPLL_B_MD, dev_priv->saveDPLL_B_MD);
@@ -359,7 +450,24 @@ static void i915_restore_modeset_reg(struct drm_device *dev)
359 I915_WRITE(VTOTAL_B, dev_priv->saveVTOTAL_B); 450 I915_WRITE(VTOTAL_B, dev_priv->saveVTOTAL_B);
360 I915_WRITE(VBLANK_B, dev_priv->saveVBLANK_B); 451 I915_WRITE(VBLANK_B, dev_priv->saveVBLANK_B);
361 I915_WRITE(VSYNC_B, dev_priv->saveVSYNC_B); 452 I915_WRITE(VSYNC_B, dev_priv->saveVSYNC_B);
362 I915_WRITE(BCLRPAT_B, dev_priv->saveBCLRPAT_B); 453 if (!IS_IGDNG(dev))
454 I915_WRITE(BCLRPAT_B, dev_priv->saveBCLRPAT_B);
455
456 if (IS_IGDNG(dev)) {
457 I915_WRITE(FDI_RXB_CTL, dev_priv->saveFDI_RXB_CTL);
458 I915_WRITE(FDI_TXB_CTL, dev_priv->saveFDI_TXB_CTL);
459
460 I915_WRITE(PFB_CTL_1, dev_priv->savePFB_CTL_1);
461 I915_WRITE(PFB_WIN_SZ, dev_priv->savePFB_WIN_SZ);
462 I915_WRITE(PFB_WIN_POS, dev_priv->savePFB_WIN_POS);
463
464 I915_WRITE(TRANS_HTOTAL_B, dev_priv->saveTRANS_HTOTAL_B);
465 I915_WRITE(TRANS_HBLANK_B, dev_priv->saveTRANS_HBLANK_B);
466 I915_WRITE(TRANS_HSYNC_B, dev_priv->saveTRANS_HSYNC_B);
467 I915_WRITE(TRANS_VTOTAL_B, dev_priv->saveTRANS_VTOTAL_B);
468 I915_WRITE(TRANS_VBLANK_B, dev_priv->saveTRANS_VBLANK_B);
469 I915_WRITE(TRANS_VSYNC_B, dev_priv->saveTRANS_VSYNC_B);
470 }
363 471
364 /* Restore plane info */ 472 /* Restore plane info */
365 I915_WRITE(DSPBSIZE, dev_priv->saveDSPBSIZE); 473 I915_WRITE(DSPBSIZE, dev_priv->saveDSPBSIZE);
@@ -404,21 +512,43 @@ void i915_save_display(struct drm_device *dev)
404 dev_priv->saveCURSIZE = I915_READ(CURSIZE); 512 dev_priv->saveCURSIZE = I915_READ(CURSIZE);
405 513
406 /* CRT state */ 514 /* CRT state */
407 dev_priv->saveADPA = I915_READ(ADPA); 515 if (IS_IGDNG(dev)) {
516 dev_priv->saveADPA = I915_READ(PCH_ADPA);
517 } else {
518 dev_priv->saveADPA = I915_READ(ADPA);
519 }
408 520
409 /* LVDS state */ 521 /* LVDS state */
410 dev_priv->savePP_CONTROL = I915_READ(PP_CONTROL); 522 if (IS_IGDNG(dev)) {
411 dev_priv->savePFIT_PGM_RATIOS = I915_READ(PFIT_PGM_RATIOS); 523 dev_priv->savePP_CONTROL = I915_READ(PCH_PP_CONTROL);
412 dev_priv->saveBLC_PWM_CTL = I915_READ(BLC_PWM_CTL); 524 dev_priv->saveBLC_PWM_CTL = I915_READ(BLC_PWM_PCH_CTL1);
413 if (IS_I965G(dev)) 525 dev_priv->saveBLC_PWM_CTL2 = I915_READ(BLC_PWM_PCH_CTL2);
414 dev_priv->saveBLC_PWM_CTL2 = I915_READ(BLC_PWM_CTL2); 526 dev_priv->saveBLC_CPU_PWM_CTL = I915_READ(BLC_PWM_CPU_CTL);
415 if (IS_MOBILE(dev) && !IS_I830(dev)) 527 dev_priv->saveBLC_CPU_PWM_CTL2 = I915_READ(BLC_PWM_CPU_CTL2);
416 dev_priv->saveLVDS = I915_READ(LVDS); 528 dev_priv->saveLVDS = I915_READ(PCH_LVDS);
417 if (!IS_I830(dev) && !IS_845G(dev)) 529 } else {
530 dev_priv->savePP_CONTROL = I915_READ(PP_CONTROL);
531 dev_priv->savePFIT_PGM_RATIOS = I915_READ(PFIT_PGM_RATIOS);
532 dev_priv->saveBLC_PWM_CTL = I915_READ(BLC_PWM_CTL);
533 dev_priv->saveBLC_HIST_CTL = I915_READ(BLC_HIST_CTL);
534 if (IS_I965G(dev))
535 dev_priv->saveBLC_PWM_CTL2 = I915_READ(BLC_PWM_CTL2);
536 if (IS_MOBILE(dev) && !IS_I830(dev))
537 dev_priv->saveLVDS = I915_READ(LVDS);
538 }
539
540 if (!IS_I830(dev) && !IS_845G(dev) && !IS_IGDNG(dev))
418 dev_priv->savePFIT_CONTROL = I915_READ(PFIT_CONTROL); 541 dev_priv->savePFIT_CONTROL = I915_READ(PFIT_CONTROL);
419 dev_priv->savePP_ON_DELAYS = I915_READ(PP_ON_DELAYS); 542
420 dev_priv->savePP_OFF_DELAYS = I915_READ(PP_OFF_DELAYS); 543 if (IS_IGDNG(dev)) {
421 dev_priv->savePP_DIVISOR = I915_READ(PP_DIVISOR); 544 dev_priv->savePP_ON_DELAYS = I915_READ(PCH_PP_ON_DELAYS);
545 dev_priv->savePP_OFF_DELAYS = I915_READ(PCH_PP_OFF_DELAYS);
546 dev_priv->savePP_DIVISOR = I915_READ(PCH_PP_DIVISOR);
547 } else {
548 dev_priv->savePP_ON_DELAYS = I915_READ(PP_ON_DELAYS);
549 dev_priv->savePP_OFF_DELAYS = I915_READ(PP_OFF_DELAYS);
550 dev_priv->savePP_DIVISOR = I915_READ(PP_DIVISOR);
551 }
422 552
423 /* Display Port state */ 553 /* Display Port state */
424 if (SUPPORTS_INTEGRATED_DP(dev)) { 554 if (SUPPORTS_INTEGRATED_DP(dev)) {
@@ -437,16 +567,23 @@ void i915_save_display(struct drm_device *dev)
437 /* FIXME: save TV & SDVO state */ 567 /* FIXME: save TV & SDVO state */
438 568
439 /* FBC state */ 569 /* FBC state */
440 dev_priv->saveFBC_CFB_BASE = I915_READ(FBC_CFB_BASE); 570 if (IS_GM45(dev)) {
441 dev_priv->saveFBC_LL_BASE = I915_READ(FBC_LL_BASE); 571 dev_priv->saveDPFC_CB_BASE = I915_READ(DPFC_CB_BASE);
442 dev_priv->saveFBC_CONTROL2 = I915_READ(FBC_CONTROL2); 572 } else {
443 dev_priv->saveFBC_CONTROL = I915_READ(FBC_CONTROL); 573 dev_priv->saveFBC_CFB_BASE = I915_READ(FBC_CFB_BASE);
574 dev_priv->saveFBC_LL_BASE = I915_READ(FBC_LL_BASE);
575 dev_priv->saveFBC_CONTROL2 = I915_READ(FBC_CONTROL2);
576 dev_priv->saveFBC_CONTROL = I915_READ(FBC_CONTROL);
577 }
444 578
445 /* VGA state */ 579 /* VGA state */
446 dev_priv->saveVGA0 = I915_READ(VGA0); 580 dev_priv->saveVGA0 = I915_READ(VGA0);
447 dev_priv->saveVGA1 = I915_READ(VGA1); 581 dev_priv->saveVGA1 = I915_READ(VGA1);
448 dev_priv->saveVGA_PD = I915_READ(VGA_PD); 582 dev_priv->saveVGA_PD = I915_READ(VGA_PD);
449 dev_priv->saveVGACNTRL = I915_READ(VGACNTRL); 583 if (IS_IGDNG(dev))
584 dev_priv->saveVGACNTRL = I915_READ(CPU_VGACNTRL);
585 else
586 dev_priv->saveVGACNTRL = I915_READ(VGACNTRL);
450 587
451 i915_save_vga(dev); 588 i915_save_vga(dev);
452} 589}
@@ -485,22 +622,41 @@ void i915_restore_display(struct drm_device *dev)
485 I915_WRITE(CURSIZE, dev_priv->saveCURSIZE); 622 I915_WRITE(CURSIZE, dev_priv->saveCURSIZE);
486 623
487 /* CRT state */ 624 /* CRT state */
488 I915_WRITE(ADPA, dev_priv->saveADPA); 625 if (IS_IGDNG(dev))
626 I915_WRITE(PCH_ADPA, dev_priv->saveADPA);
627 else
628 I915_WRITE(ADPA, dev_priv->saveADPA);
489 629
490 /* LVDS state */ 630 /* LVDS state */
491 if (IS_I965G(dev)) 631 if (IS_I965G(dev) && !IS_IGDNG(dev))
492 I915_WRITE(BLC_PWM_CTL2, dev_priv->saveBLC_PWM_CTL2); 632 I915_WRITE(BLC_PWM_CTL2, dev_priv->saveBLC_PWM_CTL2);
493 if (IS_MOBILE(dev) && !IS_I830(dev)) 633
634 if (IS_IGDNG(dev)) {
635 I915_WRITE(PCH_LVDS, dev_priv->saveLVDS);
636 } else if (IS_MOBILE(dev) && !IS_I830(dev))
494 I915_WRITE(LVDS, dev_priv->saveLVDS); 637 I915_WRITE(LVDS, dev_priv->saveLVDS);
495 if (!IS_I830(dev) && !IS_845G(dev)) 638
639 if (!IS_I830(dev) && !IS_845G(dev) && !IS_IGDNG(dev))
496 I915_WRITE(PFIT_CONTROL, dev_priv->savePFIT_CONTROL); 640 I915_WRITE(PFIT_CONTROL, dev_priv->savePFIT_CONTROL);
497 641
498 I915_WRITE(PFIT_PGM_RATIOS, dev_priv->savePFIT_PGM_RATIOS); 642 if (IS_IGDNG(dev)) {
499 I915_WRITE(BLC_PWM_CTL, dev_priv->saveBLC_PWM_CTL); 643 I915_WRITE(BLC_PWM_PCH_CTL1, dev_priv->saveBLC_PWM_CTL);
500 I915_WRITE(PP_ON_DELAYS, dev_priv->savePP_ON_DELAYS); 644 I915_WRITE(BLC_PWM_PCH_CTL2, dev_priv->saveBLC_PWM_CTL2);
501 I915_WRITE(PP_OFF_DELAYS, dev_priv->savePP_OFF_DELAYS); 645 I915_WRITE(BLC_PWM_CPU_CTL, dev_priv->saveBLC_CPU_PWM_CTL);
502 I915_WRITE(PP_DIVISOR, dev_priv->savePP_DIVISOR); 646 I915_WRITE(BLC_PWM_CPU_CTL2, dev_priv->saveBLC_CPU_PWM_CTL2);
503 I915_WRITE(PP_CONTROL, dev_priv->savePP_CONTROL); 647 I915_WRITE(PCH_PP_ON_DELAYS, dev_priv->savePP_ON_DELAYS);
648 I915_WRITE(PCH_PP_OFF_DELAYS, dev_priv->savePP_OFF_DELAYS);
649 I915_WRITE(PCH_PP_DIVISOR, dev_priv->savePP_DIVISOR);
650 I915_WRITE(PCH_PP_CONTROL, dev_priv->savePP_CONTROL);
651 } else {
652 I915_WRITE(PFIT_PGM_RATIOS, dev_priv->savePFIT_PGM_RATIOS);
653 I915_WRITE(BLC_PWM_CTL, dev_priv->saveBLC_PWM_CTL);
654 I915_WRITE(BLC_HIST_CTL, dev_priv->saveBLC_HIST_CTL);
655 I915_WRITE(PP_ON_DELAYS, dev_priv->savePP_ON_DELAYS);
656 I915_WRITE(PP_OFF_DELAYS, dev_priv->savePP_OFF_DELAYS);
657 I915_WRITE(PP_DIVISOR, dev_priv->savePP_DIVISOR);
658 I915_WRITE(PP_CONTROL, dev_priv->savePP_CONTROL);
659 }
504 660
505 /* Display Port state */ 661 /* Display Port state */
506 if (SUPPORTS_INTEGRATED_DP(dev)) { 662 if (SUPPORTS_INTEGRATED_DP(dev)) {
@@ -511,13 +667,22 @@ void i915_restore_display(struct drm_device *dev)
511 /* FIXME: restore TV & SDVO state */ 667 /* FIXME: restore TV & SDVO state */
512 668
513 /* FBC info */ 669 /* FBC info */
514 I915_WRITE(FBC_CFB_BASE, dev_priv->saveFBC_CFB_BASE); 670 if (IS_GM45(dev)) {
515 I915_WRITE(FBC_LL_BASE, dev_priv->saveFBC_LL_BASE); 671 g4x_disable_fbc(dev);
516 I915_WRITE(FBC_CONTROL2, dev_priv->saveFBC_CONTROL2); 672 I915_WRITE(DPFC_CB_BASE, dev_priv->saveDPFC_CB_BASE);
517 I915_WRITE(FBC_CONTROL, dev_priv->saveFBC_CONTROL); 673 } else {
674 i8xx_disable_fbc(dev);
675 I915_WRITE(FBC_CFB_BASE, dev_priv->saveFBC_CFB_BASE);
676 I915_WRITE(FBC_LL_BASE, dev_priv->saveFBC_LL_BASE);
677 I915_WRITE(FBC_CONTROL2, dev_priv->saveFBC_CONTROL2);
678 I915_WRITE(FBC_CONTROL, dev_priv->saveFBC_CONTROL);
679 }
518 680
519 /* VGA state */ 681 /* VGA state */
520 I915_WRITE(VGACNTRL, dev_priv->saveVGACNTRL); 682 if (IS_IGDNG(dev))
683 I915_WRITE(CPU_VGACNTRL, dev_priv->saveVGACNTRL);
684 else
685 I915_WRITE(VGACNTRL, dev_priv->saveVGACNTRL);
521 I915_WRITE(VGA0, dev_priv->saveVGA0); 686 I915_WRITE(VGA0, dev_priv->saveVGA0);
522 I915_WRITE(VGA1, dev_priv->saveVGA1); 687 I915_WRITE(VGA1, dev_priv->saveVGA1);
523 I915_WRITE(VGA_PD, dev_priv->saveVGA_PD); 688 I915_WRITE(VGA_PD, dev_priv->saveVGA_PD);
@@ -543,8 +708,17 @@ int i915_save_state(struct drm_device *dev)
543 i915_save_display(dev); 708 i915_save_display(dev);
544 709
545 /* Interrupt state */ 710 /* Interrupt state */
546 dev_priv->saveIER = I915_READ(IER); 711 if (IS_IGDNG(dev)) {
547 dev_priv->saveIMR = I915_READ(IMR); 712 dev_priv->saveDEIER = I915_READ(DEIER);
713 dev_priv->saveDEIMR = I915_READ(DEIMR);
714 dev_priv->saveGTIER = I915_READ(GTIER);
715 dev_priv->saveGTIMR = I915_READ(GTIMR);
716 dev_priv->saveFDI_RXA_IMR = I915_READ(FDI_RXA_IMR);
717 dev_priv->saveFDI_RXB_IMR = I915_READ(FDI_RXB_IMR);
718 } else {
719 dev_priv->saveIER = I915_READ(IER);
720 dev_priv->saveIMR = I915_READ(IMR);
721 }
548 722
549 /* Clock gating state */ 723 /* Clock gating state */
550 dev_priv->saveD_STATE = I915_READ(D_STATE); 724 dev_priv->saveD_STATE = I915_READ(D_STATE);
@@ -609,8 +783,17 @@ int i915_restore_state(struct drm_device *dev)
609 i915_restore_display(dev); 783 i915_restore_display(dev);
610 784
611 /* Interrupt state */ 785 /* Interrupt state */
612 I915_WRITE (IER, dev_priv->saveIER); 786 if (IS_IGDNG(dev)) {
613 I915_WRITE (IMR, dev_priv->saveIMR); 787 I915_WRITE(DEIER, dev_priv->saveDEIER);
788 I915_WRITE(DEIMR, dev_priv->saveDEIMR);
789 I915_WRITE(GTIER, dev_priv->saveGTIER);
790 I915_WRITE(GTIMR, dev_priv->saveGTIMR);
791 I915_WRITE(FDI_RXA_IMR, dev_priv->saveFDI_RXA_IMR);
792 I915_WRITE(FDI_RXB_IMR, dev_priv->saveFDI_RXB_IMR);
793 } else {
794 I915_WRITE (IER, dev_priv->saveIER);
795 I915_WRITE (IMR, dev_priv->saveIMR);
796 }
614 797
615 /* Clock gating state */ 798 /* Clock gating state */
616 I915_WRITE (D_STATE, dev_priv->saveD_STATE); 799 I915_WRITE (D_STATE, dev_priv->saveD_STATE);
diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c
index 4337414846b6..96cd256e60e6 100644
--- a/drivers/gpu/drm/i915/intel_bios.c
+++ b/drivers/gpu/drm/i915/intel_bios.c
@@ -351,20 +351,18 @@ parse_driver_features(struct drm_i915_private *dev_priv,
351 struct drm_device *dev = dev_priv->dev; 351 struct drm_device *dev = dev_priv->dev;
352 struct bdb_driver_features *driver; 352 struct bdb_driver_features *driver;
353 353
354 /* set default for chips without eDP */
355 if (!SUPPORTS_EDP(dev)) {
356 dev_priv->edp_support = 0;
357 return;
358 }
359
360 driver = find_section(bdb, BDB_DRIVER_FEATURES); 354 driver = find_section(bdb, BDB_DRIVER_FEATURES);
361 if (!driver) 355 if (!driver)
362 return; 356 return;
363 357
364 if (driver->lvds_config == BDB_DRIVER_FEATURE_EDP) 358 if (driver && SUPPORTS_EDP(dev) &&
359 driver->lvds_config == BDB_DRIVER_FEATURE_EDP) {
365 dev_priv->edp_support = 1; 360 dev_priv->edp_support = 1;
361 } else {
362 dev_priv->edp_support = 0;
363 }
366 364
367 if (driver->dual_frequency) 365 if (driver && driver->dual_frequency)
368 dev_priv->render_reclock_avail = true; 366 dev_priv->render_reclock_avail = true;
369} 367}
370 368
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 3c14240cc002..3ba6546b7c7f 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -943,6 +943,7 @@ intel_find_pll_g4x_dp(const intel_limit_t *limit, struct drm_crtc *crtc,
943 clock.m = 5 * (clock.m1 + 2) + (clock.m2 + 2); 943 clock.m = 5 * (clock.m1 + 2) + (clock.m2 + 2);
944 clock.p = (clock.p1 * clock.p2); 944 clock.p = (clock.p1 * clock.p2);
945 clock.dot = 96000 * clock.m / (clock.n + 2) / clock.p; 945 clock.dot = 96000 * clock.m / (clock.n + 2) / clock.p;
946 clock.vco = 0;
946 memcpy(best_clock, &clock, sizeof(intel_clock_t)); 947 memcpy(best_clock, &clock, sizeof(intel_clock_t));
947 return true; 948 return true;
948} 949}
@@ -1260,9 +1261,11 @@ intel_pipe_set_base(struct drm_crtc *crtc, int x, int y,
1260 return ret; 1261 return ret;
1261 } 1262 }
1262 1263
1263 /* Pre-i965 needs to install a fence for tiled scan-out */ 1264 /* Install a fence for tiled scan-out. Pre-i965 always needs a fence,
1264 if (!IS_I965G(dev) && 1265 * whereas 965+ only requires a fence if using framebuffer compression.
1265 obj_priv->fence_reg == I915_FENCE_REG_NONE && 1266 * For simplicity, we always install a fence as the cost is not that onerous.
1267 */
1268 if (obj_priv->fence_reg == I915_FENCE_REG_NONE &&
1266 obj_priv->tiling_mode != I915_TILING_NONE) { 1269 obj_priv->tiling_mode != I915_TILING_NONE) {
1267 ret = i915_gem_object_get_fence_reg(obj); 1270 ret = i915_gem_object_get_fence_reg(obj);
1268 if (ret != 0) { 1271 if (ret != 0) {
@@ -1513,7 +1516,7 @@ static void igdng_crtc_dpms(struct drm_crtc *crtc, int mode)
1513 /* Enable panel fitting for LVDS */ 1516 /* Enable panel fitting for LVDS */
1514 if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) { 1517 if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) {
1515 temp = I915_READ(pf_ctl_reg); 1518 temp = I915_READ(pf_ctl_reg);
1516 I915_WRITE(pf_ctl_reg, temp | PF_ENABLE); 1519 I915_WRITE(pf_ctl_reg, temp | PF_ENABLE | PF_FILTER_MED_3x3);
1517 1520
1518 /* currently full aspect */ 1521 /* currently full aspect */
1519 I915_WRITE(pf_win_pos, 0); 1522 I915_WRITE(pf_win_pos, 0);
@@ -1801,6 +1804,8 @@ static void i9xx_crtc_dpms(struct drm_crtc *crtc, int mode)
1801 case DRM_MODE_DPMS_ON: 1804 case DRM_MODE_DPMS_ON:
1802 case DRM_MODE_DPMS_STANDBY: 1805 case DRM_MODE_DPMS_STANDBY:
1803 case DRM_MODE_DPMS_SUSPEND: 1806 case DRM_MODE_DPMS_SUSPEND:
1807 intel_update_watermarks(dev);
1808
1804 /* Enable the DPLL */ 1809 /* Enable the DPLL */
1805 temp = I915_READ(dpll_reg); 1810 temp = I915_READ(dpll_reg);
1806 if ((temp & DPLL_VCO_ENABLE) == 0) { 1811 if ((temp & DPLL_VCO_ENABLE) == 0) {
@@ -1838,7 +1843,6 @@ static void i9xx_crtc_dpms(struct drm_crtc *crtc, int mode)
1838 1843
1839 /* Give the overlay scaler a chance to enable if it's on this pipe */ 1844 /* Give the overlay scaler a chance to enable if it's on this pipe */
1840 //intel_crtc_dpms_video(crtc, true); TODO 1845 //intel_crtc_dpms_video(crtc, true); TODO
1841 intel_update_watermarks(dev);
1842 break; 1846 break;
1843 case DRM_MODE_DPMS_OFF: 1847 case DRM_MODE_DPMS_OFF:
1844 intel_update_watermarks(dev); 1848 intel_update_watermarks(dev);
@@ -2082,7 +2086,7 @@ fdi_reduce_ratio(u32 *num, u32 *den)
2082#define LINK_N 0x80000 2086#define LINK_N 0x80000
2083 2087
2084static void 2088static void
2085igdng_compute_m_n(int bytes_per_pixel, int nlanes, 2089igdng_compute_m_n(int bits_per_pixel, int nlanes,
2086 int pixel_clock, int link_clock, 2090 int pixel_clock, int link_clock,
2087 struct fdi_m_n *m_n) 2091 struct fdi_m_n *m_n)
2088{ 2092{
@@ -2092,7 +2096,8 @@ igdng_compute_m_n(int bytes_per_pixel, int nlanes,
2092 2096
2093 temp = (u64) DATA_N * pixel_clock; 2097 temp = (u64) DATA_N * pixel_clock;
2094 temp = div_u64(temp, link_clock); 2098 temp = div_u64(temp, link_clock);
2095 m_n->gmch_m = div_u64(temp * bytes_per_pixel, nlanes); 2099 m_n->gmch_m = div_u64(temp * bits_per_pixel, nlanes);
2100 m_n->gmch_m >>= 3; /* convert to bytes_per_pixel */
2096 m_n->gmch_n = DATA_N; 2101 m_n->gmch_n = DATA_N;
2097 fdi_reduce_ratio(&m_n->gmch_m, &m_n->gmch_n); 2102 fdi_reduce_ratio(&m_n->gmch_m, &m_n->gmch_n);
2098 2103
@@ -2140,6 +2145,13 @@ static struct intel_watermark_params igd_cursor_hplloff_wm = {
2140 IGD_CURSOR_GUARD_WM, 2145 IGD_CURSOR_GUARD_WM,
2141 IGD_FIFO_LINE_SIZE 2146 IGD_FIFO_LINE_SIZE
2142}; 2147};
2148static struct intel_watermark_params g4x_wm_info = {
2149 G4X_FIFO_SIZE,
2150 G4X_MAX_WM,
2151 G4X_MAX_WM,
2152 2,
2153 G4X_FIFO_LINE_SIZE,
2154};
2143static struct intel_watermark_params i945_wm_info = { 2155static struct intel_watermark_params i945_wm_info = {
2144 I945_FIFO_SIZE, 2156 I945_FIFO_SIZE,
2145 I915_MAX_WM, 2157 I915_MAX_WM,
@@ -2430,17 +2442,74 @@ static int i830_get_fifo_size(struct drm_device *dev, int plane)
2430 return size; 2442 return size;
2431} 2443}
2432 2444
2433static void g4x_update_wm(struct drm_device *dev, int unused, int unused2, 2445static void g4x_update_wm(struct drm_device *dev, int planea_clock,
2434 int unused3, int unused4) 2446 int planeb_clock, int sr_hdisplay, int pixel_size)
2435{ 2447{
2436 struct drm_i915_private *dev_priv = dev->dev_private; 2448 struct drm_i915_private *dev_priv = dev->dev_private;
2437 u32 fw_blc_self = I915_READ(FW_BLC_SELF); 2449 int total_size, cacheline_size;
2450 int planea_wm, planeb_wm, cursora_wm, cursorb_wm, cursor_sr;
2451 struct intel_watermark_params planea_params, planeb_params;
2452 unsigned long line_time_us;
2453 int sr_clock, sr_entries = 0, entries_required;
2438 2454
2439 if (i915_powersave) 2455 /* Create copies of the base settings for each pipe */
2440 fw_blc_self |= FW_BLC_SELF_EN; 2456 planea_params = planeb_params = g4x_wm_info;
2441 else 2457
2442 fw_blc_self &= ~FW_BLC_SELF_EN; 2458 /* Grab a couple of global values before we overwrite them */
2443 I915_WRITE(FW_BLC_SELF, fw_blc_self); 2459 total_size = planea_params.fifo_size;
2460 cacheline_size = planea_params.cacheline_size;
2461
2462 /*
2463 * Note: we need to make sure we don't overflow for various clock &
2464 * latency values.
2465 * clocks go from a few thousand to several hundred thousand.
2466 * latency is usually a few thousand
2467 */
2468 entries_required = ((planea_clock / 1000) * pixel_size * latency_ns) /
2469 1000;
2470 entries_required /= G4X_FIFO_LINE_SIZE;
2471 planea_wm = entries_required + planea_params.guard_size;
2472
2473 entries_required = ((planeb_clock / 1000) * pixel_size * latency_ns) /
2474 1000;
2475 entries_required /= G4X_FIFO_LINE_SIZE;
2476 planeb_wm = entries_required + planeb_params.guard_size;
2477
2478 cursora_wm = cursorb_wm = 16;
2479 cursor_sr = 32;
2480
2481 DRM_DEBUG("FIFO watermarks - A: %d, B: %d\n", planea_wm, planeb_wm);
2482
2483 /* Calc sr entries for one plane configs */
2484 if (sr_hdisplay && (!planea_clock || !planeb_clock)) {
2485 /* self-refresh has much higher latency */
2486 const static int sr_latency_ns = 12000;
2487
2488 sr_clock = planea_clock ? planea_clock : planeb_clock;
2489 line_time_us = ((sr_hdisplay * 1000) / sr_clock);
2490
2491 /* Use ns/us then divide to preserve precision */
2492 sr_entries = (((sr_latency_ns / line_time_us) + 1) *
2493 pixel_size * sr_hdisplay) / 1000;
2494 sr_entries = roundup(sr_entries / cacheline_size, 1);
2495 DRM_DEBUG("self-refresh entries: %d\n", sr_entries);
2496 I915_WRITE(FW_BLC_SELF, FW_BLC_SELF_EN);
2497 }
2498
2499 DRM_DEBUG("Setting FIFO watermarks - A: %d, B: %d, SR %d\n",
2500 planea_wm, planeb_wm, sr_entries);
2501
2502 planea_wm &= 0x3f;
2503 planeb_wm &= 0x3f;
2504
2505 I915_WRITE(DSPFW1, (sr_entries << DSPFW_SR_SHIFT) |
2506 (cursorb_wm << DSPFW_CURSORB_SHIFT) |
2507 (planeb_wm << DSPFW_PLANEB_SHIFT) | planea_wm);
2508 I915_WRITE(DSPFW2, (I915_READ(DSPFW2) & DSPFW_CURSORA_MASK) |
2509 (cursora_wm << DSPFW_CURSORA_SHIFT));
2510 /* HPLL off in SR has some issues on G4x... disable it */
2511 I915_WRITE(DSPFW3, (I915_READ(DSPFW3) & ~DSPFW_HPLL_SR_EN) |
2512 (cursor_sr << DSPFW_CURSOR_SR_SHIFT));
2444} 2513}
2445 2514
2446static void i965_update_wm(struct drm_device *dev, int unused, int unused2, 2515static void i965_update_wm(struct drm_device *dev, int unused, int unused2,
@@ -2586,6 +2655,9 @@ static void intel_update_watermarks(struct drm_device *dev)
2586 unsigned long planea_clock = 0, planeb_clock = 0, sr_clock = 0; 2655 unsigned long planea_clock = 0, planeb_clock = 0, sr_clock = 0;
2587 int enabled = 0, pixel_size = 0; 2656 int enabled = 0, pixel_size = 0;
2588 2657
2658 if (!dev_priv->display.update_wm)
2659 return;
2660
2589 /* Get the clock config from both planes */ 2661 /* Get the clock config from both planes */
2590 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { 2662 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
2591 intel_crtc = to_intel_crtc(crtc); 2663 intel_crtc = to_intel_crtc(crtc);
@@ -2763,7 +2835,7 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
2763 2835
2764 /* FDI link */ 2836 /* FDI link */
2765 if (IS_IGDNG(dev)) { 2837 if (IS_IGDNG(dev)) {
2766 int lane, link_bw; 2838 int lane, link_bw, bpp;
2767 /* eDP doesn't require FDI link, so just set DP M/N 2839 /* eDP doesn't require FDI link, so just set DP M/N
2768 according to current link config */ 2840 according to current link config */
2769 if (is_edp) { 2841 if (is_edp) {
@@ -2782,10 +2854,72 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
2782 lane = 4; 2854 lane = 4;
2783 link_bw = 270000; 2855 link_bw = 270000;
2784 } 2856 }
2785 igdng_compute_m_n(3, lane, target_clock, 2857
2858 /* determine panel color depth */
2859 temp = I915_READ(pipeconf_reg);
2860
2861 switch (temp & PIPE_BPC_MASK) {
2862 case PIPE_8BPC:
2863 bpp = 24;
2864 break;
2865 case PIPE_10BPC:
2866 bpp = 30;
2867 break;
2868 case PIPE_6BPC:
2869 bpp = 18;
2870 break;
2871 case PIPE_12BPC:
2872 bpp = 36;
2873 break;
2874 default:
2875 DRM_ERROR("unknown pipe bpc value\n");
2876 bpp = 24;
2877 }
2878
2879 igdng_compute_m_n(bpp, lane, target_clock,
2786 link_bw, &m_n); 2880 link_bw, &m_n);
2787 } 2881 }
2788 2882
2883 /* Ironlake: try to setup display ref clock before DPLL
2884 * enabling. This is only under driver's control after
2885 * PCH B stepping, previous chipset stepping should be
2886 * ignoring this setting.
2887 */
2888 if (IS_IGDNG(dev)) {
2889 temp = I915_READ(PCH_DREF_CONTROL);
2890 /* Always enable nonspread source */
2891 temp &= ~DREF_NONSPREAD_SOURCE_MASK;
2892 temp |= DREF_NONSPREAD_SOURCE_ENABLE;
2893 I915_WRITE(PCH_DREF_CONTROL, temp);
2894 POSTING_READ(PCH_DREF_CONTROL);
2895
2896 temp &= ~DREF_SSC_SOURCE_MASK;
2897 temp |= DREF_SSC_SOURCE_ENABLE;
2898 I915_WRITE(PCH_DREF_CONTROL, temp);
2899 POSTING_READ(PCH_DREF_CONTROL);
2900
2901 udelay(200);
2902
2903 if (is_edp) {
2904 if (dev_priv->lvds_use_ssc) {
2905 temp |= DREF_SSC1_ENABLE;
2906 I915_WRITE(PCH_DREF_CONTROL, temp);
2907 POSTING_READ(PCH_DREF_CONTROL);
2908
2909 udelay(200);
2910
2911 temp &= ~DREF_CPU_SOURCE_OUTPUT_MASK;
2912 temp |= DREF_CPU_SOURCE_OUTPUT_DOWNSPREAD;
2913 I915_WRITE(PCH_DREF_CONTROL, temp);
2914 POSTING_READ(PCH_DREF_CONTROL);
2915 } else {
2916 temp |= DREF_CPU_SOURCE_OUTPUT_NONSPREAD;
2917 I915_WRITE(PCH_DREF_CONTROL, temp);
2918 POSTING_READ(PCH_DREF_CONTROL);
2919 }
2920 }
2921 }
2922
2789 if (IS_IGD(dev)) { 2923 if (IS_IGD(dev)) {
2790 fp = (1 << clock.n) << 16 | clock.m1 << 8 | clock.m2; 2924 fp = (1 << clock.n) << 16 | clock.m1 << 8 | clock.m2;
2791 if (has_reduced_clock) 2925 if (has_reduced_clock)
@@ -2936,6 +3070,8 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
2936 3070
2937 lvds = I915_READ(lvds_reg); 3071 lvds = I915_READ(lvds_reg);
2938 lvds |= LVDS_PORT_EN | LVDS_A0A2_CLKA_POWER_UP | LVDS_PIPEB_SELECT; 3072 lvds |= LVDS_PORT_EN | LVDS_A0A2_CLKA_POWER_UP | LVDS_PIPEB_SELECT;
3073 /* set the corresponsding LVDS_BORDER bit */
3074 lvds |= dev_priv->lvds_border_bits;
2939 /* Set the B0-B3 data pairs corresponding to whether we're going to 3075 /* Set the B0-B3 data pairs corresponding to whether we're going to
2940 * set the DPLLs for dual-channel mode or not. 3076 * set the DPLLs for dual-channel mode or not.
2941 */ 3077 */
@@ -4124,7 +4260,9 @@ void intel_init_clock_gating(struct drm_device *dev)
4124 * Disable clock gating reported to work incorrectly according to the 4260 * Disable clock gating reported to work incorrectly according to the
4125 * specs, but enable as much else as we can. 4261 * specs, but enable as much else as we can.
4126 */ 4262 */
4127 if (IS_G4X(dev)) { 4263 if (IS_IGDNG(dev)) {
4264 return;
4265 } else if (IS_G4X(dev)) {
4128 uint32_t dspclk_gate; 4266 uint32_t dspclk_gate;
4129 I915_WRITE(RENCLK_GATE_D1, 0); 4267 I915_WRITE(RENCLK_GATE_D1, 0);
4130 I915_WRITE(RENCLK_GATE_D2, VF_UNIT_CLOCK_GATE_DISABLE | 4268 I915_WRITE(RENCLK_GATE_D2, VF_UNIT_CLOCK_GATE_DISABLE |
@@ -4212,7 +4350,9 @@ static void intel_init_display(struct drm_device *dev)
4212 i830_get_display_clock_speed; 4350 i830_get_display_clock_speed;
4213 4351
4214 /* For FIFO watermark updates */ 4352 /* For FIFO watermark updates */
4215 if (IS_G4X(dev)) 4353 if (IS_IGDNG(dev))
4354 dev_priv->display.update_wm = NULL;
4355 else if (IS_G4X(dev))
4216 dev_priv->display.update_wm = g4x_update_wm; 4356 dev_priv->display.update_wm = g4x_update_wm;
4217 else if (IS_I965G(dev)) 4357 else if (IS_I965G(dev))
4218 dev_priv->display.update_wm = i965_update_wm; 4358 dev_priv->display.update_wm = i965_update_wm;
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index f4856a510476..d83447557f9b 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -400,7 +400,7 @@ intel_dp_i2c_init(struct intel_output *intel_output, const char *name)
400{ 400{
401 struct intel_dp_priv *dp_priv = intel_output->dev_priv; 401 struct intel_dp_priv *dp_priv = intel_output->dev_priv;
402 402
403 DRM_ERROR("i2c_init %s\n", name); 403 DRM_DEBUG_KMS("i2c_init %s\n", name);
404 dp_priv->algo.running = false; 404 dp_priv->algo.running = false;
405 dp_priv->algo.address = 0; 405 dp_priv->algo.address = 0;
406 dp_priv->algo.aux_ch = intel_dp_i2c_aux_ch; 406 dp_priv->algo.aux_ch = intel_dp_i2c_aux_ch;
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
index 808bbe412ba8..05598ae10c4b 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
@@ -380,7 +380,7 @@ static bool intel_lvds_mode_fixup(struct drm_encoder *encoder,
380 adjusted_mode->crtc_vblank_start + vsync_pos; 380 adjusted_mode->crtc_vblank_start + vsync_pos;
381 /* keep the vsync width constant */ 381 /* keep the vsync width constant */
382 adjusted_mode->crtc_vsync_end = 382 adjusted_mode->crtc_vsync_end =
383 adjusted_mode->crtc_vblank_start + vsync_width; 383 adjusted_mode->crtc_vsync_start + vsync_width;
384 border = 1; 384 border = 1;
385 break; 385 break;
386 case DRM_MODE_SCALE_ASPECT: 386 case DRM_MODE_SCALE_ASPECT:
@@ -526,6 +526,14 @@ out:
526 lvds_priv->pfit_control = pfit_control; 526 lvds_priv->pfit_control = pfit_control;
527 lvds_priv->pfit_pgm_ratios = pfit_pgm_ratios; 527 lvds_priv->pfit_pgm_ratios = pfit_pgm_ratios;
528 /* 528 /*
529 * When there exists the border, it means that the LVDS_BORDR
530 * should be enabled.
531 */
532 if (border)
533 dev_priv->lvds_border_bits |= LVDS_BORDER_ENABLE;
534 else
535 dev_priv->lvds_border_bits &= ~(LVDS_BORDER_ENABLE);
536 /*
529 * XXX: It would be nice to support lower refresh rates on the 537 * XXX: It would be nice to support lower refresh rates on the
530 * panels to reduce power consumption, and perhaps match the 538 * panels to reduce power consumption, and perhaps match the
531 * user's requested refresh rate. 539 * user's requested refresh rate.
diff --git a/fs/bio.c b/fs/bio.c
index 402cb84a92a1..12da5db8682c 100644
--- a/fs/bio.c
+++ b/fs/bio.c
@@ -325,8 +325,16 @@ static void bio_fs_destructor(struct bio *bio)
325 * @gfp_mask: allocation mask to use 325 * @gfp_mask: allocation mask to use
326 * @nr_iovecs: number of iovecs 326 * @nr_iovecs: number of iovecs
327 * 327 *
328 * Allocate a new bio with @nr_iovecs bvecs. If @gfp_mask 328 * bio_alloc will allocate a bio and associated bio_vec array that can hold
329 * contains __GFP_WAIT, the allocation is guaranteed to succeed. 329 * at least @nr_iovecs entries. Allocations will be done from the
330 * fs_bio_set. Also see @bio_alloc_bioset and @bio_kmalloc.
331 *
332 * If %__GFP_WAIT is set, then bio_alloc will always be able to allocate
333 * a bio. This is due to the mempool guarantees. To make this work, callers
334 * must never allocate more than 1 bio at a time from this pool. Callers
335 * that need to allocate more than 1 bio must always submit the previously
336 * allocated bio for IO before attempting to allocate a new one. Failure to
337 * do so can cause livelocks under memory pressure.
330 * 338 *
331 * RETURNS: 339 * RETURNS:
332 * Pointer to new bio on success, NULL on failure. 340 * Pointer to new bio on success, NULL on failure.
@@ -350,21 +358,13 @@ static void bio_kmalloc_destructor(struct bio *bio)
350} 358}
351 359
352/** 360/**
353 * bio_alloc - allocate a bio for I/O 361 * bio_kmalloc - allocate a bio for I/O using kmalloc()
354 * @gfp_mask: the GFP_ mask given to the slab allocator 362 * @gfp_mask: the GFP_ mask given to the slab allocator
355 * @nr_iovecs: number of iovecs to pre-allocate 363 * @nr_iovecs: number of iovecs to pre-allocate
356 * 364 *
357 * Description: 365 * Description:
358 * bio_alloc will allocate a bio and associated bio_vec array that can hold 366 * Allocate a new bio with @nr_iovecs bvecs. If @gfp_mask contains
359 * at least @nr_iovecs entries. Allocations will be done from the 367 * %__GFP_WAIT, the allocation is guaranteed to succeed.
360 * fs_bio_set. Also see @bio_alloc_bioset.
361 *
362 * If %__GFP_WAIT is set, then bio_alloc will always be able to allocate
363 * a bio. This is due to the mempool guarantees. To make this work, callers
364 * must never allocate more than 1 bio at a time from this pool. Callers
365 * that need to allocate more than 1 bio must always submit the previously
366 * allocated bio for IO before attempting to allocate a new one. Failure to
367 * do so can cause livelocks under memory pressure.
368 * 368 *
369 **/ 369 **/
370struct bio *bio_kmalloc(gfp_t gfp_mask, int nr_iovecs) 370struct bio *bio_kmalloc(gfp_t gfp_mask, int nr_iovecs)
@@ -407,7 +407,7 @@ EXPORT_SYMBOL(zero_fill_bio);
407 * 407 *
408 * Description: 408 * Description:
409 * Put a reference to a &struct bio, either one you have gotten with 409 * Put a reference to a &struct bio, either one you have gotten with
410 * bio_alloc or bio_get. The last put of a bio will free it. 410 * bio_alloc, bio_get or bio_clone. The last put of a bio will free it.
411 **/ 411 **/
412void bio_put(struct bio *bio) 412void bio_put(struct bio *bio)
413{ 413{
diff --git a/mm/backing-dev.c b/mm/backing-dev.c
index 1065b715ef64..11aee09dd2a6 100644
--- a/mm/backing-dev.c
+++ b/mm/backing-dev.c
@@ -628,6 +628,8 @@ static void bdi_prune_sb(struct backing_dev_info *bdi)
628void bdi_unregister(struct backing_dev_info *bdi) 628void bdi_unregister(struct backing_dev_info *bdi)
629{ 629{
630 if (bdi->dev) { 630 if (bdi->dev) {
631 bdi_prune_sb(bdi);
632
631 if (!bdi_cap_flush_forker(bdi)) 633 if (!bdi_cap_flush_forker(bdi))
632 bdi_wb_shutdown(bdi); 634 bdi_wb_shutdown(bdi);
633 bdi_debug_unregister(bdi); 635 bdi_debug_unregister(bdi);
@@ -697,7 +699,6 @@ void bdi_destroy(struct backing_dev_info *bdi)
697 spin_unlock(&inode_lock); 699 spin_unlock(&inode_lock);
698 } 700 }
699 701
700 bdi_prune_sb(bdi);
701 bdi_unregister(bdi); 702 bdi_unregister(bdi);
702 703
703 for (i = 0; i < NR_BDI_STAT_ITEMS; i++) 704 for (i = 0; i < NR_BDI_STAT_ITEMS; i++)