aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc
diff options
context:
space:
mode:
authorMichal Marek <mmarek@suse.cz>2010-10-12 09:09:06 -0400
committerMichal Marek <mmarek@suse.cz>2010-10-12 09:09:06 -0400
commit239060b93bb30a4ad55f1ecaa512464a035cc5ba (patch)
tree77f79810e57d4fc24356eca0cd6db463e8994128 /arch/sparc
parent1408b15b98635a13bad2e2a50b3c2ae2ccdf625b (diff)
parente9203c988234aa512bd45ca32b52e21c7bbfc414 (diff)
Merge branch 'kbuild/rc-fixes' into kbuild/kconfig
We need to revert the temporary hack in 71ebc01, hence the merge.
Diffstat (limited to 'arch/sparc')
-rw-r--r--arch/sparc/Kconfig7
-rw-r--r--arch/sparc/Kconfig.debug14
-rw-r--r--arch/sparc/boot/btfixupprep.c4
-rw-r--r--arch/sparc/configs/sparc32_defconfig1120
-rw-r--r--arch/sparc/configs/sparc64_defconfig1705
-rw-r--r--arch/sparc/include/asm/device.h11
-rw-r--r--arch/sparc/include/asm/dma-mapping.h10
-rw-r--r--arch/sparc/include/asm/floppy_64.h10
-rw-r--r--arch/sparc/include/asm/highmem.h2
-rw-r--r--arch/sparc/include/asm/ioctls.h2
-rw-r--r--arch/sparc/include/asm/local64.h1
-rw-r--r--arch/sparc/include/asm/of_device.h38
-rw-r--r--arch/sparc/include/asm/of_platform.h18
-rw-r--r--arch/sparc/include/asm/parport.h16
-rw-r--r--arch/sparc/include/asm/perf_event.h23
-rw-r--r--arch/sparc/include/asm/prom.h10
-rw-r--r--arch/sparc/include/asm/scatterlist.h1
-rw-r--r--arch/sparc/include/asm/termbits.h1
-rw-r--r--arch/sparc/include/asm/uaccess_32.h15
-rw-r--r--arch/sparc/include/asm/uaccess_64.h23
-rw-r--r--arch/sparc/kernel/apc.c6
-rw-r--r--arch/sparc/kernel/auxio_64.c5
-rw-r--r--arch/sparc/kernel/central.c8
-rw-r--r--arch/sparc/kernel/chmc.c16
-rw-r--r--arch/sparc/kernel/helpers.S75
-rw-r--r--arch/sparc/kernel/ioport.c2
-rw-r--r--arch/sparc/kernel/of_device_32.c63
-rw-r--r--arch/sparc/kernel/of_device_64.c61
-rw-r--r--arch/sparc/kernel/of_device_common.c35
-rw-r--r--arch/sparc/kernel/pci.c6
-rw-r--r--arch/sparc/kernel/pci_fire.c6
-rw-r--r--arch/sparc/kernel/pci_impl.h2
-rw-r--r--arch/sparc/kernel/pci_psycho.c16
-rw-r--r--arch/sparc/kernel/pci_sabre.c16
-rw-r--r--arch/sparc/kernel/pci_schizo.c32
-rw-r--r--arch/sparc/kernel/pci_sun4v.c6
-rw-r--r--arch/sparc/kernel/perf_event.c25
-rw-r--r--arch/sparc/kernel/pmc.c4
-rw-r--r--arch/sparc/kernel/power.c6
-rw-r--r--arch/sparc/kernel/prom.h8
-rw-r--r--arch/sparc/kernel/prom_64.c6
-rw-r--r--arch/sparc/kernel/prom_common.c2
-rw-r--r--arch/sparc/kernel/prom_irqtrans.c2
-rw-r--r--arch/sparc/kernel/psycho_common.c2
-rw-r--r--arch/sparc/kernel/psycho_common.h2
-rw-r--r--arch/sparc/kernel/sbus.c16
-rw-r--r--arch/sparc/kernel/sys_sparc32.c7
-rw-r--r--arch/sparc/kernel/time_32.c4
-rw-r--r--arch/sparc/kernel/time_64.c12
-rw-r--r--arch/sparc/mm/highmem.c4
-rw-r--r--arch/sparc/mm/io-unit.c4
-rw-r--r--arch/sparc/mm/iommu.c6
52 files changed, 232 insertions, 3264 deletions
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 19aa7b253d78..093a6d35e064 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -12,6 +12,7 @@ config 64BIT
12config SPARC 12config SPARC
13 bool 13 bool
14 default y 14 default y
15 select OF
15 select HAVE_IDE 16 select HAVE_IDE
16 select HAVE_OPROFILE 17 select HAVE_OPROFILE
17 select HAVE_ARCH_KGDB if !SMP || SPARC64 18 select HAVE_ARCH_KGDB if !SMP || SPARC64
@@ -60,9 +61,6 @@ config BITS
60 default 32 if SPARC32 61 default 32 if SPARC32
61 default 64 if SPARC64 62 default 64 if SPARC64
62 63
63config GENERIC_TIME
64 def_bool y
65
66config ARCH_USES_GETTIMEOFFSET 64config ARCH_USES_GETTIMEOFFSET
67 bool 65 bool
68 default y if SPARC32 66 default y if SPARC32
@@ -142,9 +140,6 @@ config GENERIC_GPIO
142config ARCH_NO_VIRT_TO_BUS 140config ARCH_NO_VIRT_TO_BUS
143 def_bool y 141 def_bool y
144 142
145config OF
146 def_bool y
147
148config ARCH_SUPPORTS_DEBUG_PAGEALLOC 143config ARCH_SUPPORTS_DEBUG_PAGEALLOC
149 def_bool y if SPARC64 144 def_bool y if SPARC64
150 145
diff --git a/arch/sparc/Kconfig.debug b/arch/sparc/Kconfig.debug
index 1b4a831565f9..d9a795efbc04 100644
--- a/arch/sparc/Kconfig.debug
+++ b/arch/sparc/Kconfig.debug
@@ -30,18 +30,4 @@ config FRAME_POINTER
30 depends on MCOUNT 30 depends on MCOUNT
31 default y 31 default y
32 32
33config DEBUG_STRICT_USER_COPY_CHECKS
34 bool "Strict copy size checks"
35 depends on DEBUG_KERNEL && !TRACE_BRANCH_PROFILING
36 ---help---
37 Enabling this option turns a certain set of sanity checks for user
38 copy operations into compile time failures.
39
40 The copy_from_user() etc checks are there to help test if there
41 are sufficient security checks on the length argument of
42 the copy operation, by having gcc prove that the argument is
43 within bounds.
44
45 If unsure, or if you run an older (pre 4.4) gcc, say N.
46
47endmenu 33endmenu
diff --git a/arch/sparc/boot/btfixupprep.c b/arch/sparc/boot/btfixupprep.c
index e7f2940bd270..da031159e2b7 100644
--- a/arch/sparc/boot/btfixupprep.c
+++ b/arch/sparc/boot/btfixupprep.c
@@ -216,7 +216,7 @@ main1:
216 switch (buffer[nbase+3]) { 216 switch (buffer[nbase+3]) {
217 case 'f': 217 case 'f':
218 if (initval) { 218 if (initval) {
219 fprintf(stderr, "Cannot use pre-initalized fixups for calls\n%s\n", buffer); 219 fprintf(stderr, "Cannot use pre-initialized fixups for calls\n%s\n", buffer);
220 exit(1); 220 exit(1);
221 } 221 }
222 if (!strcmp (sect, "__ksymtab")) { 222 if (!strcmp (sect, "__ksymtab")) {
@@ -273,7 +273,7 @@ main1:
273 break; 273 break;
274 case 'i': 274 case 'i':
275 if (initval) { 275 if (initval) {
276 fprintf(stderr, "Cannot use pre-initalized fixups for INT\n%s\n", buffer); 276 fprintf(stderr, "Cannot use pre-initialized fixups for INT\n%s\n", buffer);
277 exit(1); 277 exit(1);
278 } 278 }
279 if (strncmp (buffer + mode+9, "HI22 ", 10) && strncmp (buffer + mode+9, "LO10 ", 10)) { 279 if (strncmp (buffer + mode+9, "HI22 ", 10) && strncmp (buffer + mode+9, "LO10 ", 10)) {
diff --git a/arch/sparc/configs/sparc32_defconfig b/arch/sparc/configs/sparc32_defconfig
index 6a8d078070ca..fb23fd6b186a 100644
--- a/arch/sparc/configs/sparc32_defconfig
+++ b/arch/sparc/configs/sparc32_defconfig
@@ -1,1225 +1,105 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.33
4# Wed Mar 3 02:52:23 2010
5#
6# CONFIG_64BIT is not set
7CONFIG_SPARC=y
8CONFIG_SPARC32=y
9# CONFIG_SPARC64 is not set
10CONFIG_ARCH_DEFCONFIG="arch/sparc/configs/sparc32_defconfig"
11CONFIG_BITS=32
12CONFIG_GENERIC_TIME=y
13CONFIG_ARCH_USES_GETTIMEOFFSET=y
14CONFIG_AUDIT_ARCH=y
15CONFIG_MMU=y
16CONFIG_HIGHMEM=y
17CONFIG_ZONE_DMA=y
18CONFIG_GENERIC_ISA_DMA=y
19CONFIG_ARCH_NO_VIRT_TO_BUS=y
20CONFIG_OF=y
21CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
22CONFIG_CONSTRUCTORS=y
23
24#
25# General setup
26#
27CONFIG_EXPERIMENTAL=y 1CONFIG_EXPERIMENTAL=y
28CONFIG_BROKEN_ON_SMP=y
29CONFIG_INIT_ENV_ARG_LIMIT=32
30CONFIG_LOCALVERSION=""
31CONFIG_LOCALVERSION_AUTO=y
32CONFIG_SWAP=y
33CONFIG_SYSVIPC=y 2CONFIG_SYSVIPC=y
34CONFIG_SYSVIPC_SYSCTL=y
35CONFIG_POSIX_MQUEUE=y 3CONFIG_POSIX_MQUEUE=y
36CONFIG_POSIX_MQUEUE_SYSCTL=y
37# CONFIG_BSD_PROCESS_ACCT is not set
38# CONFIG_TASKSTATS is not set
39# CONFIG_AUDIT is not set
40
41#
42# RCU Subsystem
43#
44CONFIG_TREE_RCU=y
45# CONFIG_TREE_PREEMPT_RCU is not set
46# CONFIG_TINY_RCU is not set
47# CONFIG_RCU_TRACE is not set
48CONFIG_RCU_FANOUT=32
49# CONFIG_RCU_FANOUT_EXACT is not set
50# CONFIG_TREE_RCU_TRACE is not set
51# CONFIG_IKCONFIG is not set
52CONFIG_LOG_BUF_SHIFT=14 4CONFIG_LOG_BUF_SHIFT=14
53# CONFIG_CGROUPS is not set
54CONFIG_SYSFS_DEPRECATED=y
55CONFIG_SYSFS_DEPRECATED_V2=y 5CONFIG_SYSFS_DEPRECATED_V2=y
56# CONFIG_RELAY is not set
57CONFIG_NAMESPACES=y
58# CONFIG_UTS_NS is not set
59# CONFIG_IPC_NS is not set
60# CONFIG_USER_NS is not set
61# CONFIG_PID_NS is not set
62# CONFIG_NET_NS is not set
63CONFIG_BLK_DEV_INITRD=y 6CONFIG_BLK_DEV_INITRD=y
64CONFIG_INITRAMFS_SOURCE=""
65CONFIG_RD_GZIP=y
66CONFIG_RD_BZIP2=y
67CONFIG_RD_LZMA=y
68CONFIG_RD_LZO=y
69# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 7# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
70CONFIG_SYSCTL=y
71CONFIG_ANON_INODES=y
72# CONFIG_EMBEDDED is not set
73CONFIG_UID16=y
74CONFIG_SYSCTL_SYSCALL=y
75CONFIG_KALLSYMS=y
76# CONFIG_KALLSYMS_ALL is not set
77# CONFIG_KALLSYMS_EXTRA_PASS is not set
78CONFIG_HOTPLUG=y
79CONFIG_PRINTK=y
80CONFIG_BUG=y
81CONFIG_ELF_CORE=y
82CONFIG_BASE_FULL=y
83CONFIG_FUTEX=y
84CONFIG_EPOLL=y
85CONFIG_SIGNALFD=y
86CONFIG_TIMERFD=y
87CONFIG_EVENTFD=y
88CONFIG_SHMEM=y
89CONFIG_AIO=y
90CONFIG_HAVE_PERF_EVENTS=y
91CONFIG_PERF_USE_VMALLOC=y
92
93#
94# Kernel Performance Events And Counters
95#
96# CONFIG_PERF_EVENTS is not set
97# CONFIG_PERF_COUNTERS is not set
98CONFIG_VM_EVENT_COUNTERS=y
99CONFIG_PCI_QUIRKS=y
100CONFIG_COMPAT_BRK=y
101CONFIG_SLAB=y 8CONFIG_SLAB=y
102# CONFIG_SLUB is not set
103# CONFIG_SLOB is not set
104# CONFIG_PROFILING is not set
105CONFIG_HAVE_OPROFILE=y
106CONFIG_HAVE_ARCH_TRACEHOOK=y
107CONFIG_HAVE_DMA_ATTRS=y
108CONFIG_HAVE_DMA_API_DEBUG=y
109
110#
111# GCOV-based kernel profiling
112#
113# CONFIG_SLOW_WORK is not set
114# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
115CONFIG_SLABINFO=y
116CONFIG_RT_MUTEXES=y
117CONFIG_BASE_SMALL=0
118CONFIG_MODULES=y 9CONFIG_MODULES=y
119# CONFIG_MODULE_FORCE_LOAD is not set
120CONFIG_MODULE_UNLOAD=y 10CONFIG_MODULE_UNLOAD=y
121# CONFIG_MODULE_FORCE_UNLOAD is not set
122# CONFIG_MODVERSIONS is not set
123# CONFIG_MODULE_SRCVERSION_ALL is not set
124CONFIG_BLOCK=y
125CONFIG_LBDAF=y
126# CONFIG_BLK_DEV_BSG is not set 11# CONFIG_BLK_DEV_BSG is not set
127# CONFIG_BLK_DEV_INTEGRITY is not set
128
129#
130# IO Schedulers
131#
132CONFIG_IOSCHED_NOOP=y
133CONFIG_IOSCHED_DEADLINE=y
134CONFIG_IOSCHED_CFQ=y
135# CONFIG_DEFAULT_DEADLINE is not set
136CONFIG_DEFAULT_CFQ=y
137# CONFIG_DEFAULT_NOOP is not set
138CONFIG_DEFAULT_IOSCHED="cfq"
139# CONFIG_INLINE_SPIN_TRYLOCK is not set
140# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
141# CONFIG_INLINE_SPIN_LOCK is not set
142# CONFIG_INLINE_SPIN_LOCK_BH is not set
143# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
144# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
145CONFIG_INLINE_SPIN_UNLOCK=y
146# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
147CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
148# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
149# CONFIG_INLINE_READ_TRYLOCK is not set
150# CONFIG_INLINE_READ_LOCK is not set
151# CONFIG_INLINE_READ_LOCK_BH is not set
152# CONFIG_INLINE_READ_LOCK_IRQ is not set
153# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
154CONFIG_INLINE_READ_UNLOCK=y
155# CONFIG_INLINE_READ_UNLOCK_BH is not set
156CONFIG_INLINE_READ_UNLOCK_IRQ=y
157# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
158# CONFIG_INLINE_WRITE_TRYLOCK is not set
159# CONFIG_INLINE_WRITE_LOCK is not set
160# CONFIG_INLINE_WRITE_LOCK_BH is not set
161# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
162# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
163CONFIG_INLINE_WRITE_UNLOCK=y
164# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
165CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
166# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
167# CONFIG_MUTEX_SPIN_ON_OWNER is not set
168# CONFIG_FREEZER is not set
169
170#
171# Processor type and features
172#
173# CONFIG_SMP is not set
174# CONFIG_HZ_100 is not set
175CONFIG_HZ_250=y
176# CONFIG_HZ_300 is not set
177# CONFIG_HZ_1000 is not set
178CONFIG_HZ=250
179# CONFIG_SCHED_HRTICK is not set
180CONFIG_RWSEM_GENERIC_SPINLOCK=y
181CONFIG_GENERIC_FIND_NEXT_BIT=y
182CONFIG_GENERIC_HWEIGHT=y
183CONFIG_GENERIC_CALIBRATE_DELAY=y
184CONFIG_ARCH_MAY_HAVE_PC_FDC=y
185CONFIG_EMULATED_CMPXCHG=y
186CONFIG_SELECT_MEMORY_MODEL=y
187CONFIG_FLATMEM_MANUAL=y
188# CONFIG_DISCONTIGMEM_MANUAL is not set
189# CONFIG_SPARSEMEM_MANUAL is not set
190CONFIG_FLATMEM=y
191CONFIG_FLAT_NODE_MEM_MAP=y
192CONFIG_PAGEFLAGS_EXTENDED=y
193CONFIG_SPLIT_PTLOCK_CPUS=4
194# CONFIG_PHYS_ADDR_T_64BIT is not set
195CONFIG_ZONE_DMA_FLAG=1
196CONFIG_BOUNCE=y
197# CONFIG_KSM is not set
198CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
199CONFIG_SUN_PM=y
200# CONFIG_SPARC_LED is not set
201CONFIG_SERIAL_CONSOLE=y
202# CONFIG_SPARC_LEON is not set
203
204#
205# Bus options (PCI etc.)
206#
207CONFIG_SBUS=y
208CONFIG_SBUSCHAR=y
209CONFIG_PCI=y 12CONFIG_PCI=y
210CONFIG_PCI_SYSCALL=y
211# CONFIG_ARCH_SUPPORTS_MSI is not set
212# CONFIG_PCI_DEBUG is not set
213# CONFIG_PCI_STUB is not set
214# CONFIG_PCI_IOV is not set
215# CONFIG_PCCARD is not set
216CONFIG_SUN_OPENPROMFS=m 13CONFIG_SUN_OPENPROMFS=m
217CONFIG_SPARC32_PCI=y
218
219#
220# Executable file formats
221#
222CONFIG_BINFMT_ELF=y
223# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
224# CONFIG_HAVE_AOUT is not set
225CONFIG_BINFMT_MISC=m 14CONFIG_BINFMT_MISC=m
226CONFIG_NET=y 15CONFIG_NET=y
227
228#
229# Networking options
230#
231CONFIG_PACKET=y 16CONFIG_PACKET=y
232CONFIG_UNIX=y 17CONFIG_UNIX=y
233CONFIG_XFRM=y
234CONFIG_XFRM_USER=m 18CONFIG_XFRM_USER=m
235# CONFIG_XFRM_SUB_POLICY is not set
236# CONFIG_XFRM_MIGRATE is not set
237# CONFIG_XFRM_STATISTICS is not set
238CONFIG_XFRM_IPCOMP=y
239CONFIG_NET_KEY=m 19CONFIG_NET_KEY=m
240# CONFIG_NET_KEY_MIGRATE is not set
241CONFIG_INET=y 20CONFIG_INET=y
242# CONFIG_IP_MULTICAST is not set
243# CONFIG_IP_ADVANCED_ROUTER is not set
244CONFIG_IP_FIB_HASH=y
245CONFIG_IP_PNP=y 21CONFIG_IP_PNP=y
246CONFIG_IP_PNP_DHCP=y 22CONFIG_IP_PNP_DHCP=y
247# CONFIG_IP_PNP_BOOTP is not set
248# CONFIG_IP_PNP_RARP is not set
249# CONFIG_NET_IPIP is not set
250# CONFIG_NET_IPGRE is not set
251# CONFIG_ARPD is not set
252# CONFIG_SYN_COOKIES is not set
253CONFIG_INET_AH=y 23CONFIG_INET_AH=y
254CONFIG_INET_ESP=y 24CONFIG_INET_ESP=y
255CONFIG_INET_IPCOMP=y 25CONFIG_INET_IPCOMP=y
256CONFIG_INET_XFRM_TUNNEL=y
257CONFIG_INET_TUNNEL=y
258CONFIG_INET_XFRM_MODE_TRANSPORT=y
259CONFIG_INET_XFRM_MODE_TUNNEL=y
260CONFIG_INET_XFRM_MODE_BEET=y
261# CONFIG_INET_LRO is not set 26# CONFIG_INET_LRO is not set
262CONFIG_INET_DIAG=y
263CONFIG_INET_TCP_DIAG=y
264# CONFIG_TCP_CONG_ADVANCED is not set
265CONFIG_TCP_CONG_CUBIC=y
266CONFIG_DEFAULT_TCP_CONG="cubic"
267# CONFIG_TCP_MD5SIG is not set
268CONFIG_IPV6=m
269CONFIG_IPV6_PRIVACY=y 27CONFIG_IPV6_PRIVACY=y
270# CONFIG_IPV6_ROUTER_PREF is not set
271# CONFIG_IPV6_OPTIMISTIC_DAD is not set
272CONFIG_INET6_AH=m 28CONFIG_INET6_AH=m
273CONFIG_INET6_ESP=m 29CONFIG_INET6_ESP=m
274CONFIG_INET6_IPCOMP=m 30CONFIG_INET6_IPCOMP=m
275# CONFIG_IPV6_MIP6 is not set
276CONFIG_INET6_XFRM_TUNNEL=m
277CONFIG_INET6_TUNNEL=m
278CONFIG_INET6_XFRM_MODE_TRANSPORT=m
279CONFIG_INET6_XFRM_MODE_TUNNEL=m
280CONFIG_INET6_XFRM_MODE_BEET=m
281# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
282CONFIG_IPV6_SIT=m
283# CONFIG_IPV6_SIT_6RD is not set
284CONFIG_IPV6_NDISC_NODETYPE=y
285CONFIG_IPV6_TUNNEL=m 31CONFIG_IPV6_TUNNEL=m
286# CONFIG_IPV6_MULTIPLE_TABLES is not set
287# CONFIG_IPV6_MROUTE is not set
288# CONFIG_NETWORK_SECMARK is not set
289# CONFIG_NETFILTER is not set
290# CONFIG_IP_DCCP is not set
291# CONFIG_IP_SCTP is not set
292# CONFIG_RDS is not set
293# CONFIG_TIPC is not set
294# CONFIG_ATM is not set
295# CONFIG_BRIDGE is not set
296# CONFIG_NET_DSA is not set
297# CONFIG_VLAN_8021Q is not set
298# CONFIG_DECNET is not set
299# CONFIG_LLC2 is not set
300# CONFIG_IPX is not set
301# CONFIG_ATALK is not set
302# CONFIG_X25 is not set
303# CONFIG_LAPB is not set
304# CONFIG_ECONET is not set
305# CONFIG_WAN_ROUTER is not set
306# CONFIG_PHONET is not set
307# CONFIG_IEEE802154 is not set
308# CONFIG_NET_SCHED is not set
309# CONFIG_DCB is not set
310
311#
312# Network testing
313#
314CONFIG_NET_PKTGEN=m 32CONFIG_NET_PKTGEN=m
315# CONFIG_HAMRADIO is not set
316# CONFIG_CAN is not set
317# CONFIG_IRDA is not set
318# CONFIG_BT is not set
319# CONFIG_AF_RXRPC is not set
320CONFIG_WIRELESS=y
321# CONFIG_CFG80211 is not set
322# CONFIG_LIB80211 is not set
323
324#
325# CFG80211 needs to be enabled for MAC80211
326#
327# CONFIG_WIMAX is not set
328# CONFIG_RFKILL is not set
329# CONFIG_NET_9P is not set
330
331#
332# Device Drivers
333#
334
335#
336# Generic Driver Options
337#
338CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 33CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
339CONFIG_STANDALONE=y
340CONFIG_PREVENT_FIRMWARE_BUILD=y
341CONFIG_FW_LOADER=y
342CONFIG_FIRMWARE_IN_KERNEL=y
343CONFIG_EXTRA_FIRMWARE=""
344# CONFIG_DEBUG_DRIVER is not set
345# CONFIG_DEBUG_DEVRES is not set
346# CONFIG_SYS_HYPERVISOR is not set
347# CONFIG_CONNECTOR is not set
348# CONFIG_MTD is not set
349CONFIG_OF_DEVICE=y
350# CONFIG_PARPORT is not set
351CONFIG_BLK_DEV=y
352# CONFIG_BLK_DEV_FD is not set
353# CONFIG_BLK_CPQ_CISS_DA is not set
354# CONFIG_BLK_DEV_DAC960 is not set
355# CONFIG_BLK_DEV_UMEM is not set
356# CONFIG_BLK_DEV_COW_COMMON is not set
357CONFIG_BLK_DEV_LOOP=m 34CONFIG_BLK_DEV_LOOP=m
358CONFIG_BLK_DEV_CRYPTOLOOP=m 35CONFIG_BLK_DEV_CRYPTOLOOP=m
359
360#
361# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
362#
363# CONFIG_BLK_DEV_NBD is not set
364# CONFIG_BLK_DEV_SX8 is not set
365CONFIG_BLK_DEV_RAM=y 36CONFIG_BLK_DEV_RAM=y
366CONFIG_BLK_DEV_RAM_COUNT=16
367CONFIG_BLK_DEV_RAM_SIZE=4096
368# CONFIG_BLK_DEV_XIP is not set
369# CONFIG_CDROM_PKTCDVD is not set
370# CONFIG_ATA_OVER_ETH is not set
371# CONFIG_BLK_DEV_HD is not set
372CONFIG_MISC_DEVICES=y
373# CONFIG_PHANTOM is not set
374# CONFIG_SGI_IOC4 is not set
375# CONFIG_TIFM_CORE is not set
376# CONFIG_ENCLOSURE_SERVICES is not set
377# CONFIG_HP_ILO is not set
378# CONFIG_TI_DAC7512 is not set
379# CONFIG_C2PORT is not set
380
381#
382# EEPROM support
383#
384# CONFIG_EEPROM_AT25 is not set
385# CONFIG_EEPROM_93CX6 is not set
386# CONFIG_CB710_CORE is not set
387CONFIG_HAVE_IDE=y
388# CONFIG_IDE is not set
389
390#
391# SCSI device support
392#
393# CONFIG_RAID_ATTRS is not set
394CONFIG_SCSI=y 37CONFIG_SCSI=y
395CONFIG_SCSI_DMA=y
396# CONFIG_SCSI_TGT is not set
397# CONFIG_SCSI_NETLINK is not set
398CONFIG_SCSI_PROC_FS=y
399
400#
401# SCSI support type (disk, tape, CD-ROM)
402#
403CONFIG_BLK_DEV_SD=y 38CONFIG_BLK_DEV_SD=y
404# CONFIG_CHR_DEV_ST is not set
405# CONFIG_CHR_DEV_OSST is not set
406CONFIG_BLK_DEV_SR=m 39CONFIG_BLK_DEV_SR=m
407# CONFIG_BLK_DEV_SR_VENDOR is not set
408CONFIG_CHR_DEV_SG=m 40CONFIG_CHR_DEV_SG=m
409# CONFIG_CHR_DEV_SCH is not set
410# CONFIG_SCSI_MULTI_LUN is not set
411# CONFIG_SCSI_CONSTANTS is not set
412# CONFIG_SCSI_LOGGING is not set
413# CONFIG_SCSI_SCAN_ASYNC is not set
414CONFIG_SCSI_WAIT_SCAN=m
415
416#
417# SCSI Transports
418#
419CONFIG_SCSI_SPI_ATTRS=y
420# CONFIG_SCSI_FC_ATTRS is not set
421# CONFIG_SCSI_ISCSI_ATTRS is not set
422# CONFIG_SCSI_SAS_LIBSAS is not set
423# CONFIG_SCSI_SRP_ATTRS is not set
424CONFIG_SCSI_LOWLEVEL=y
425# CONFIG_ISCSI_TCP is not set
426# CONFIG_SCSI_CXGB3_ISCSI is not set
427# CONFIG_SCSI_BNX2_ISCSI is not set
428# CONFIG_BE2ISCSI is not set
429# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
430# CONFIG_SCSI_HPSA is not set
431# CONFIG_SCSI_3W_9XXX is not set
432# CONFIG_SCSI_3W_SAS is not set
433# CONFIG_SCSI_ACARD is not set
434# CONFIG_SCSI_AACRAID is not set
435# CONFIG_SCSI_AIC7XXX is not set
436# CONFIG_SCSI_AIC7XXX_OLD is not set
437# CONFIG_SCSI_AIC79XX is not set
438# CONFIG_SCSI_AIC94XX is not set
439# CONFIG_SCSI_MVSAS is not set
440# CONFIG_SCSI_ARCMSR is not set
441# CONFIG_MEGARAID_NEWGEN is not set
442# CONFIG_MEGARAID_LEGACY is not set
443# CONFIG_MEGARAID_SAS is not set
444# CONFIG_SCSI_MPT2SAS is not set
445# CONFIG_SCSI_HPTIOP is not set
446# CONFIG_LIBFC is not set
447# CONFIG_LIBFCOE is not set
448# CONFIG_FCOE is not set
449# CONFIG_SCSI_DMX3191D is not set
450# CONFIG_SCSI_FUTURE_DOMAIN is not set
451# CONFIG_SCSI_IPS is not set
452# CONFIG_SCSI_INITIO is not set
453# CONFIG_SCSI_INIA100 is not set
454# CONFIG_SCSI_STEX is not set
455# CONFIG_SCSI_SYM53C8XX_2 is not set
456# CONFIG_SCSI_QLOGIC_1280 is not set
457CONFIG_SCSI_QLOGICPTI=m 41CONFIG_SCSI_QLOGICPTI=m
458# CONFIG_SCSI_QLA_FC is not set
459# CONFIG_SCSI_QLA_ISCSI is not set
460# CONFIG_SCSI_LPFC is not set
461# CONFIG_SCSI_DC395x is not set
462# CONFIG_SCSI_DC390T is not set
463# CONFIG_SCSI_NSP32 is not set
464# CONFIG_SCSI_DEBUG is not set
465CONFIG_SCSI_SUNESP=y 42CONFIG_SCSI_SUNESP=y
466# CONFIG_SCSI_PMCRAID is not set
467# CONFIG_SCSI_PM8001 is not set
468# CONFIG_SCSI_SRP is not set
469# CONFIG_SCSI_BFA_FC is not set
470# CONFIG_SCSI_DH is not set
471# CONFIG_SCSI_OSD_INITIATOR is not set
472# CONFIG_ATA is not set
473# CONFIG_MD is not set
474# CONFIG_FUSION is not set
475
476#
477# IEEE 1394 (FireWire) support
478#
479
480#
481# You can enable one or both FireWire driver stacks.
482#
483
484#
485# The newer stack is recommended.
486#
487# CONFIG_FIREWIRE is not set
488# CONFIG_IEEE1394 is not set
489# CONFIG_I2O is not set
490CONFIG_NETDEVICES=y 43CONFIG_NETDEVICES=y
491CONFIG_DUMMY=m 44CONFIG_DUMMY=m
492# CONFIG_BONDING is not set
493# CONFIG_MACVLAN is not set
494# CONFIG_EQUALIZER is not set
495# CONFIG_TUN is not set
496# CONFIG_VETH is not set
497# CONFIG_ARCNET is not set
498# CONFIG_PHYLIB is not set
499CONFIG_NET_ETHERNET=y 45CONFIG_NET_ETHERNET=y
500CONFIG_MII=m 46CONFIG_MII=m
501CONFIG_SUNLANCE=y 47CONFIG_SUNLANCE=y
502CONFIG_HAPPYMEAL=m 48CONFIG_HAPPYMEAL=m
503CONFIG_SUNBMAC=m 49CONFIG_SUNBMAC=m
504CONFIG_SUNQE=m 50CONFIG_SUNQE=m
505# CONFIG_SUNGEM is not set
506# CONFIG_CASSINI is not set
507# CONFIG_NET_VENDOR_3COM is not set
508# CONFIG_ENC28J60 is not set
509# CONFIG_ETHOC is not set
510# CONFIG_GRETH is not set
511# CONFIG_DNET is not set
512# CONFIG_NET_TULIP is not set
513# CONFIG_HP100 is not set
514# CONFIG_IBM_NEW_EMAC_ZMII is not set
515# CONFIG_IBM_NEW_EMAC_RGMII is not set
516# CONFIG_IBM_NEW_EMAC_TAH is not set
517# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
518# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
519# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
520# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
521# CONFIG_NET_PCI is not set
522# CONFIG_B44 is not set
523# CONFIG_KS8842 is not set
524# CONFIG_KS8851 is not set
525# CONFIG_KS8851_MLL is not set
526# CONFIG_ATL2 is not set
527CONFIG_NETDEV_1000=y
528# CONFIG_ACENIC is not set
529# CONFIG_DL2K is not set
530# CONFIG_E1000 is not set
531# CONFIG_IP1000 is not set
532# CONFIG_IGB is not set
533# CONFIG_IGBVF is not set
534# CONFIG_MYRI_SBUS is not set
535# CONFIG_NS83820 is not set
536# CONFIG_HAMACHI is not set
537# CONFIG_YELLOWFIN is not set
538# CONFIG_R8169 is not set
539# CONFIG_SIS190 is not set
540# CONFIG_SKGE is not set
541# CONFIG_SKY2 is not set
542# CONFIG_VIA_VELOCITY is not set
543# CONFIG_TIGON3 is not set
544# CONFIG_BNX2 is not set
545# CONFIG_CNIC is not set
546# CONFIG_QLA3XXX is not set
547# CONFIG_ATL1 is not set
548# CONFIG_ATL1E is not set
549# CONFIG_ATL1C is not set
550# CONFIG_JME is not set
551CONFIG_NETDEV_10000=y
552# CONFIG_CHELSIO_T1 is not set
553CONFIG_CHELSIO_T3_DEPENDS=y
554# CONFIG_CHELSIO_T3 is not set
555# CONFIG_ENIC is not set
556# CONFIG_IXGBE is not set
557# CONFIG_IXGB is not set
558# CONFIG_S2IO is not set
559# CONFIG_VXGE is not set
560# CONFIG_MYRI10GE is not set
561# CONFIG_NETXEN_NIC is not set
562# CONFIG_NIU is not set
563# CONFIG_MLX4_EN is not set
564# CONFIG_MLX4_CORE is not set
565# CONFIG_TEHUTI is not set
566# CONFIG_BNX2X is not set
567# CONFIG_QLCNIC is not set
568# CONFIG_QLGE is not set
569# CONFIG_SFC is not set
570# CONFIG_BE2NET is not set
571# CONFIG_TR is not set
572# CONFIG_WLAN is not set 51# CONFIG_WLAN is not set
573
574#
575# Enable WiMAX (Networking options) to see the WiMAX drivers
576#
577# CONFIG_WAN is not set
578# CONFIG_FDDI is not set
579# CONFIG_HIPPI is not set
580# CONFIG_PPP is not set
581# CONFIG_SLIP is not set
582# CONFIG_NET_FC is not set
583# CONFIG_NETCONSOLE is not set
584# CONFIG_NETPOLL is not set
585# CONFIG_NET_POLL_CONTROLLER is not set
586# CONFIG_VMXNET3 is not set
587# CONFIG_ISDN is not set
588# CONFIG_PHONE is not set
589
590#
591# Input device support
592#
593CONFIG_INPUT=y
594# CONFIG_INPUT_FF_MEMLESS is not set
595# CONFIG_INPUT_POLLDEV is not set
596# CONFIG_INPUT_SPARSEKMAP is not set
597
598#
599# Userland interfaces
600#
601CONFIG_INPUT_MOUSEDEV=y
602CONFIG_INPUT_MOUSEDEV_PSAUX=y
603CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
604CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
605CONFIG_INPUT_JOYDEV=m 52CONFIG_INPUT_JOYDEV=m
606CONFIG_INPUT_EVDEV=m 53CONFIG_INPUT_EVDEV=m
607CONFIG_INPUT_EVBUG=m 54CONFIG_INPUT_EVBUG=m
608
609#
610# Input Device Drivers
611#
612CONFIG_INPUT_KEYBOARD=y
613CONFIG_KEYBOARD_ATKBD=m 55CONFIG_KEYBOARD_ATKBD=m
614# CONFIG_KEYBOARD_LKKBD is not set
615# CONFIG_KEYBOARD_NEWTON is not set
616# CONFIG_KEYBOARD_OPENCORES is not set
617# CONFIG_KEYBOARD_STOWAWAY is not set
618CONFIG_KEYBOARD_SUNKBD=m 56CONFIG_KEYBOARD_SUNKBD=m
619# CONFIG_KEYBOARD_XTKBD is not set
620CONFIG_INPUT_MOUSE=y
621CONFIG_MOUSE_PS2=m 57CONFIG_MOUSE_PS2=m
622CONFIG_MOUSE_PS2_ALPS=y
623CONFIG_MOUSE_PS2_LOGIPS2PP=y
624CONFIG_MOUSE_PS2_SYNAPTICS=y
625CONFIG_MOUSE_PS2_TRACKPOINT=y
626# CONFIG_MOUSE_PS2_ELANTECH is not set
627# CONFIG_MOUSE_PS2_SENTELIC is not set
628# CONFIG_MOUSE_PS2_TOUCHKIT is not set
629CONFIG_MOUSE_SERIAL=m 58CONFIG_MOUSE_SERIAL=m
630# CONFIG_MOUSE_APPLETOUCH is not set
631# CONFIG_MOUSE_BCM5974 is not set
632# CONFIG_MOUSE_VSXXXAA is not set
633# CONFIG_INPUT_JOYSTICK is not set
634# CONFIG_INPUT_TABLET is not set
635# CONFIG_INPUT_TOUCHSCREEN is not set
636# CONFIG_INPUT_MISC is not set
637
638#
639# Hardware I/O ports
640#
641CONFIG_SERIO=m 59CONFIG_SERIO=m
642# CONFIG_SERIO_I8042 is not set 60# CONFIG_SERIO_I8042 is not set
643CONFIG_SERIO_SERPORT=m
644# CONFIG_SERIO_PCIPS2 is not set
645CONFIG_SERIO_LIBPS2=m
646# CONFIG_SERIO_RAW is not set
647# CONFIG_SERIO_ALTERA_PS2 is not set
648# CONFIG_GAMEPORT is not set
649
650#
651# Character devices
652#
653CONFIG_VT=y
654CONFIG_CONSOLE_TRANSLATIONS=y
655CONFIG_VT_CONSOLE=y
656CONFIG_HW_CONSOLE=y
657# CONFIG_VT_HW_CONSOLE_BINDING is not set
658CONFIG_DEVKMEM=y
659# CONFIG_SERIAL_NONSTANDARD is not set
660# CONFIG_NOZOMI is not set
661
662#
663# Serial drivers
664#
665# CONFIG_SERIAL_8250 is not set
666
667#
668# Non-8250 serial port support
669#
670# CONFIG_SERIAL_MAX3100 is not set
671CONFIG_SERIAL_SUNCORE=y
672CONFIG_SERIAL_SUNZILOG=y 61CONFIG_SERIAL_SUNZILOG=y
673CONFIG_SERIAL_SUNZILOG_CONSOLE=y 62CONFIG_SERIAL_SUNZILOG_CONSOLE=y
674CONFIG_SERIAL_SUNSU=y 63CONFIG_SERIAL_SUNSU=y
675CONFIG_SERIAL_SUNSU_CONSOLE=y 64CONFIG_SERIAL_SUNSU_CONSOLE=y
676# CONFIG_SERIAL_SUNSAB is not set
677CONFIG_SERIAL_CORE=y
678CONFIG_SERIAL_CORE_CONSOLE=y
679CONFIG_CONSOLE_POLL=y
680# CONFIG_SERIAL_JSM is not set
681# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
682CONFIG_UNIX98_PTYS=y
683# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
684CONFIG_LEGACY_PTYS=y
685CONFIG_LEGACY_PTY_COUNT=256
686# CONFIG_IPMI_HANDLER is not set
687CONFIG_HW_RANDOM=m
688# CONFIG_HW_RANDOM_TIMERIOMEM is not set
689# CONFIG_R3964 is not set
690# CONFIG_APPLICOM is not set
691# CONFIG_RAW_DRIVER is not set
692# CONFIG_TCG_TPM is not set
693CONFIG_DEVPORT=y
694# CONFIG_I2C is not set
695CONFIG_SPI=y 65CONFIG_SPI=y
696# CONFIG_SPI_DEBUG is not set
697CONFIG_SPI_MASTER=y
698
699#
700# SPI Master Controller Drivers
701#
702CONFIG_SPI_BITBANG=m
703CONFIG_SPI_XILINX=m 66CONFIG_SPI_XILINX=m
704CONFIG_SPI_XILINX_PLTFM=m 67CONFIG_SPI_XILINX_PLTFM=m
705# CONFIG_SPI_DESIGNWARE is not set
706
707#
708# SPI Protocol Masters
709#
710# CONFIG_SPI_SPIDEV is not set
711# CONFIG_SPI_TLE62X0 is not set
712
713#
714# PPS support
715#
716# CONFIG_PPS is not set
717CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
718# CONFIG_GPIOLIB is not set
719# CONFIG_W1 is not set
720# CONFIG_POWER_SUPPLY is not set
721CONFIG_HWMON=y
722# CONFIG_HWMON_VID is not set
723# CONFIG_HWMON_DEBUG_CHIP is not set
724
725#
726# Native drivers
727#
728# CONFIG_SENSORS_ADCXX is not set
729# CONFIG_SENSORS_I5K_AMB is not set
730# CONFIG_SENSORS_F71805F is not set
731# CONFIG_SENSORS_F71882FG is not set
732# CONFIG_SENSORS_IT87 is not set
733# CONFIG_SENSORS_LM70 is not set
734# CONFIG_SENSORS_MAX1111 is not set
735# CONFIG_SENSORS_PC87360 is not set
736# CONFIG_SENSORS_PC87427 is not set
737# CONFIG_SENSORS_SIS5595 is not set
738# CONFIG_SENSORS_SMSC47M1 is not set
739# CONFIG_SENSORS_SMSC47B397 is not set
740# CONFIG_SENSORS_VIA686A is not set
741# CONFIG_SENSORS_VT1211 is not set
742# CONFIG_SENSORS_VT8231 is not set
743# CONFIG_SENSORS_W83627HF is not set
744# CONFIG_SENSORS_W83627EHF is not set
745# CONFIG_SENSORS_LIS3_SPI is not set
746# CONFIG_THERMAL is not set
747# CONFIG_WATCHDOG is not set
748CONFIG_SSB_POSSIBLE=y
749
750#
751# Sonics Silicon Backplane
752#
753# CONFIG_SSB is not set
754
755#
756# Multifunction device drivers
757#
758# CONFIG_MFD_CORE is not set
759# CONFIG_MFD_SM501 is not set
760# CONFIG_HTC_PASIC3 is not set
761# CONFIG_MFD_TMIO is not set
762# CONFIG_MFD_MC13783 is not set
763# CONFIG_AB4500_CORE is not set
764# CONFIG_REGULATOR is not set
765# CONFIG_MEDIA_SUPPORT is not set
766
767#
768# Graphics support
769#
770CONFIG_VGA_ARB=y
771CONFIG_VGA_ARB_MAX_GPUS=16
772# CONFIG_VGASTATE is not set
773# CONFIG_VIDEO_OUTPUT_CONTROL is not set
774# CONFIG_FB is not set
775# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
776
777#
778# Display device support
779#
780# CONFIG_DISPLAY_SUPPORT is not set
781
782#
783# Console display driver support
784#
785CONFIG_DUMMY_CONSOLE=y
786# CONFIG_SOUND is not set
787CONFIG_HID_SUPPORT=y
788CONFIG_HID=y
789# CONFIG_HIDRAW is not set
790# CONFIG_HID_PID is not set
791
792#
793# Special HID drivers
794#
795CONFIG_USB_SUPPORT=y
796CONFIG_USB_ARCH_HAS_HCD=y
797CONFIG_USB_ARCH_HAS_OHCI=y
798CONFIG_USB_ARCH_HAS_EHCI=y
799# CONFIG_USB is not set
800
801#
802# Enable Host or Gadget support to see Inventra options
803#
804
805#
806# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
807#
808# CONFIG_USB_GADGET is not set
809
810#
811# OTG and related infrastructure
812#
813# CONFIG_UWB is not set
814# CONFIG_MMC is not set
815# CONFIG_MEMSTICK is not set
816# CONFIG_NEW_LEDS is not set
817# CONFIG_ACCESSIBILITY is not set
818# CONFIG_INFINIBAND is not set
819CONFIG_RTC_LIB=y
820CONFIG_RTC_CLASS=y
821CONFIG_RTC_HCTOSYS=y
822CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
823# CONFIG_RTC_DEBUG is not set
824
825#
826# RTC interfaces
827#
828CONFIG_RTC_INTF_SYSFS=y
829CONFIG_RTC_INTF_PROC=y
830CONFIG_RTC_INTF_DEV=y
831# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
832# CONFIG_RTC_DRV_TEST is not set
833
834#
835# SPI RTC drivers
836#
837# CONFIG_RTC_DRV_M41T94 is not set
838# CONFIG_RTC_DRV_DS1305 is not set
839# CONFIG_RTC_DRV_DS1390 is not set
840# CONFIG_RTC_DRV_MAX6902 is not set
841# CONFIG_RTC_DRV_R9701 is not set
842# CONFIG_RTC_DRV_RS5C348 is not set
843# CONFIG_RTC_DRV_DS3234 is not set
844# CONFIG_RTC_DRV_PCF2123 is not set
845
846#
847# Platform RTC drivers
848#
849# CONFIG_RTC_DRV_DS1286 is not set
850# CONFIG_RTC_DRV_DS1511 is not set
851# CONFIG_RTC_DRV_DS1553 is not set
852# CONFIG_RTC_DRV_DS1742 is not set
853# CONFIG_RTC_DRV_STK17TA8 is not set
854# CONFIG_RTC_DRV_M48T86 is not set
855# CONFIG_RTC_DRV_M48T35 is not set
856CONFIG_RTC_DRV_M48T59=y
857# CONFIG_RTC_DRV_MSM6242 is not set
858# CONFIG_RTC_DRV_BQ4802 is not set
859# CONFIG_RTC_DRV_RP5C01 is not set
860# CONFIG_RTC_DRV_V3020 is not set
861
862#
863# on-CPU RTC drivers
864#
865# CONFIG_DMADEVICES is not set
866# CONFIG_AUXDISPLAY is not set
867# CONFIG_UIO is not set
868
869#
870# TI VLYNQ
871#
872# CONFIG_STAGING is not set
873
874#
875# Misc Linux/SPARC drivers
876#
877CONFIG_SUN_OPENPROMIO=m 68CONFIG_SUN_OPENPROMIO=m
878# CONFIG_TADPOLE_TS102_UCTRL is not set
879# CONFIG_SUN_JSFLASH is not set
880
881#
882# File systems
883#
884CONFIG_EXT2_FS=y 69CONFIG_EXT2_FS=y
885CONFIG_EXT2_FS_XATTR=y 70CONFIG_EXT2_FS_XATTR=y
886CONFIG_EXT2_FS_POSIX_ACL=y 71CONFIG_EXT2_FS_POSIX_ACL=y
887CONFIG_EXT2_FS_SECURITY=y 72CONFIG_EXT2_FS_SECURITY=y
888# CONFIG_EXT2_FS_XIP is not set
889# CONFIG_EXT3_FS is not set
890# CONFIG_EXT4_FS is not set
891CONFIG_FS_MBCACHE=y
892# CONFIG_REISERFS_FS is not set
893# CONFIG_JFS_FS is not set
894CONFIG_FS_POSIX_ACL=y
895# CONFIG_XFS_FS is not set
896# CONFIG_GFS2_FS is not set
897# CONFIG_OCFS2_FS is not set
898# CONFIG_BTRFS_FS is not set
899# CONFIG_NILFS2_FS is not set
900CONFIG_FILE_LOCKING=y
901CONFIG_FSNOTIFY=y
902CONFIG_DNOTIFY=y
903CONFIG_INOTIFY=y
904CONFIG_INOTIFY_USER=y
905# CONFIG_QUOTA is not set
906CONFIG_AUTOFS_FS=m 73CONFIG_AUTOFS_FS=m
907CONFIG_AUTOFS4_FS=m 74CONFIG_AUTOFS4_FS=m
908# CONFIG_FUSE_FS is not set
909
910#
911# Caches
912#
913# CONFIG_FSCACHE is not set
914
915#
916# CD-ROM/DVD Filesystems
917#
918CONFIG_ISO9660_FS=m 75CONFIG_ISO9660_FS=m
919# CONFIG_JOLIET is not set
920# CONFIG_ZISOFS is not set
921# CONFIG_UDF_FS is not set
922
923#
924# DOS/FAT/NT Filesystems
925#
926# CONFIG_MSDOS_FS is not set
927# CONFIG_VFAT_FS is not set
928# CONFIG_NTFS_FS is not set
929
930#
931# Pseudo filesystems
932#
933CONFIG_PROC_FS=y
934CONFIG_PROC_KCORE=y 76CONFIG_PROC_KCORE=y
935CONFIG_PROC_SYSCTL=y
936CONFIG_PROC_PAGE_MONITOR=y
937CONFIG_SYSFS=y
938# CONFIG_TMPFS is not set
939# CONFIG_HUGETLB_PAGE is not set
940# CONFIG_CONFIGFS_FS is not set
941CONFIG_MISC_FILESYSTEMS=y
942# CONFIG_ADFS_FS is not set
943# CONFIG_AFFS_FS is not set
944# CONFIG_HFS_FS is not set
945# CONFIG_HFSPLUS_FS is not set
946# CONFIG_BEFS_FS is not set
947# CONFIG_BFS_FS is not set
948# CONFIG_EFS_FS is not set
949# CONFIG_CRAMFS is not set
950# CONFIG_SQUASHFS is not set
951# CONFIG_VXFS_FS is not set
952# CONFIG_MINIX_FS is not set
953# CONFIG_OMFS_FS is not set
954# CONFIG_HPFS_FS is not set
955# CONFIG_QNX4FS_FS is not set
956CONFIG_ROMFS_FS=m 77CONFIG_ROMFS_FS=m
957CONFIG_ROMFS_BACKED_BY_BLOCK=y
958# CONFIG_ROMFS_BACKED_BY_MTD is not set
959# CONFIG_ROMFS_BACKED_BY_BOTH is not set
960CONFIG_ROMFS_ON_BLOCK=y
961# CONFIG_SYSV_FS is not set
962# CONFIG_UFS_FS is not set
963CONFIG_NETWORK_FILESYSTEMS=y
964CONFIG_NFS_FS=y 78CONFIG_NFS_FS=y
965# CONFIG_NFS_V3 is not set
966# CONFIG_NFS_V4 is not set
967CONFIG_ROOT_NFS=y 79CONFIG_ROOT_NFS=y
968# CONFIG_NFSD is not set
969CONFIG_LOCKD=y
970CONFIG_NFS_COMMON=y
971CONFIG_SUNRPC=y
972CONFIG_SUNRPC_GSS=m
973CONFIG_RPCSEC_GSS_KRB5=m 80CONFIG_RPCSEC_GSS_KRB5=m
974# CONFIG_RPCSEC_GSS_SPKM3 is not set
975# CONFIG_SMB_FS is not set
976# CONFIG_CIFS is not set
977# CONFIG_NCP_FS is not set
978# CONFIG_CODA_FS is not set
979# CONFIG_AFS_FS is not set
980
981#
982# Partition Types
983#
984# CONFIG_PARTITION_ADVANCED is not set
985CONFIG_MSDOS_PARTITION=y
986CONFIG_SUN_PARTITION=y
987CONFIG_NLS=y 81CONFIG_NLS=y
988CONFIG_NLS_DEFAULT="iso8859-1"
989# CONFIG_NLS_CODEPAGE_437 is not set
990# CONFIG_NLS_CODEPAGE_737 is not set
991# CONFIG_NLS_CODEPAGE_775 is not set
992# CONFIG_NLS_CODEPAGE_850 is not set
993# CONFIG_NLS_CODEPAGE_852 is not set
994# CONFIG_NLS_CODEPAGE_855 is not set
995# CONFIG_NLS_CODEPAGE_857 is not set
996# CONFIG_NLS_CODEPAGE_860 is not set
997# CONFIG_NLS_CODEPAGE_861 is not set
998# CONFIG_NLS_CODEPAGE_862 is not set
999# CONFIG_NLS_CODEPAGE_863 is not set
1000# CONFIG_NLS_CODEPAGE_864 is not set
1001# CONFIG_NLS_CODEPAGE_865 is not set
1002# CONFIG_NLS_CODEPAGE_866 is not set
1003# CONFIG_NLS_CODEPAGE_869 is not set
1004# CONFIG_NLS_CODEPAGE_936 is not set
1005# CONFIG_NLS_CODEPAGE_950 is not set
1006# CONFIG_NLS_CODEPAGE_932 is not set
1007# CONFIG_NLS_CODEPAGE_949 is not set
1008# CONFIG_NLS_CODEPAGE_874 is not set
1009# CONFIG_NLS_ISO8859_8 is not set
1010# CONFIG_NLS_CODEPAGE_1250 is not set
1011# CONFIG_NLS_CODEPAGE_1251 is not set
1012# CONFIG_NLS_ASCII is not set
1013# CONFIG_NLS_ISO8859_1 is not set
1014# CONFIG_NLS_ISO8859_2 is not set
1015# CONFIG_NLS_ISO8859_3 is not set
1016# CONFIG_NLS_ISO8859_4 is not set
1017# CONFIG_NLS_ISO8859_5 is not set
1018# CONFIG_NLS_ISO8859_6 is not set
1019# CONFIG_NLS_ISO8859_7 is not set
1020# CONFIG_NLS_ISO8859_9 is not set
1021# CONFIG_NLS_ISO8859_13 is not set
1022# CONFIG_NLS_ISO8859_14 is not set
1023# CONFIG_NLS_ISO8859_15 is not set
1024# CONFIG_NLS_KOI8_R is not set
1025# CONFIG_NLS_KOI8_U is not set
1026# CONFIG_NLS_UTF8 is not set
1027# CONFIG_DLM is not set
1028
1029#
1030# Kernel hacking
1031#
1032CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1033# CONFIG_PRINTK_TIME is not set
1034# CONFIG_ENABLE_WARN_DEPRECATED is not set 82# CONFIG_ENABLE_WARN_DEPRECATED is not set
1035CONFIG_ENABLE_MUST_CHECK=y
1036CONFIG_FRAME_WARN=1024
1037CONFIG_MAGIC_SYSRQ=y
1038# CONFIG_STRIP_ASM_SYMS is not set
1039# CONFIG_UNUSED_SYMBOLS is not set
1040# CONFIG_DEBUG_FS is not set
1041# CONFIG_HEADERS_CHECK is not set
1042CONFIG_DEBUG_KERNEL=y 83CONFIG_DEBUG_KERNEL=y
1043CONFIG_DETECT_SOFTLOCKUP=y
1044# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
1045CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1046CONFIG_DETECT_HUNG_TASK=y 84CONFIG_DETECT_HUNG_TASK=y
1047# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1048CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1049# CONFIG_SCHED_DEBUG is not set 85# CONFIG_SCHED_DEBUG is not set
1050# CONFIG_SCHEDSTATS is not set
1051# CONFIG_TIMER_STATS is not set
1052# CONFIG_DEBUG_OBJECTS is not set
1053# CONFIG_DEBUG_SLAB is not set
1054# CONFIG_DEBUG_RT_MUTEXES is not set
1055# CONFIG_RT_MUTEX_TESTER is not set
1056# CONFIG_DEBUG_SPINLOCK is not set
1057# CONFIG_DEBUG_MUTEXES is not set
1058# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1059# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1060# CONFIG_DEBUG_KOBJECT is not set
1061# CONFIG_DEBUG_HIGHMEM is not set
1062CONFIG_DEBUG_BUGVERBOSE=y
1063# CONFIG_DEBUG_INFO is not set
1064# CONFIG_DEBUG_VM is not set
1065# CONFIG_DEBUG_WRITECOUNT is not set
1066CONFIG_DEBUG_MEMORY_INIT=y
1067# CONFIG_DEBUG_LIST is not set
1068# CONFIG_DEBUG_SG is not set
1069# CONFIG_DEBUG_NOTIFIERS is not set
1070# CONFIG_DEBUG_CREDENTIALS is not set
1071# CONFIG_BOOT_PRINTK_DELAY is not set
1072# CONFIG_RCU_TORTURE_TEST is not set
1073# CONFIG_RCU_CPU_STALL_DETECTOR is not set 86# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1074# CONFIG_BACKTRACE_SELF_TEST is not set
1075# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1076# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1077# CONFIG_FAULT_INJECTION is not set
1078# CONFIG_SYSCTL_SYSCALL_CHECK is not set
1079# CONFIG_PAGE_POISONING is not set
1080# CONFIG_DMA_API_DEBUG is not set
1081# CONFIG_SAMPLES is not set
1082CONFIG_HAVE_ARCH_KGDB=y
1083CONFIG_KGDB=y 87CONFIG_KGDB=y
1084CONFIG_KGDB_SERIAL_CONSOLE=y
1085CONFIG_KGDB_TESTS=y 88CONFIG_KGDB_TESTS=y
1086# CONFIG_KGDB_TESTS_ON_BOOT is not set
1087# CONFIG_DEBUG_STACK_USAGE is not set
1088# CONFIG_STACK_DEBUG is not set
1089# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
1090
1091#
1092# Security options
1093#
1094# CONFIG_KEYS is not set
1095# CONFIG_SECURITY is not set
1096# CONFIG_SECURITYFS is not set
1097# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1098# CONFIG_DEFAULT_SECURITY_SMACK is not set
1099# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1100CONFIG_DEFAULT_SECURITY_DAC=y
1101CONFIG_DEFAULT_SECURITY=""
1102CONFIG_CRYPTO=y
1103
1104#
1105# Crypto core or helper
1106#
1107CONFIG_CRYPTO_ALGAPI=y
1108CONFIG_CRYPTO_ALGAPI2=y
1109CONFIG_CRYPTO_AEAD=y
1110CONFIG_CRYPTO_AEAD2=y
1111CONFIG_CRYPTO_BLKCIPHER=y
1112CONFIG_CRYPTO_BLKCIPHER2=y
1113CONFIG_CRYPTO_HASH=y
1114CONFIG_CRYPTO_HASH2=y
1115CONFIG_CRYPTO_RNG2=y
1116CONFIG_CRYPTO_PCOMP=y
1117CONFIG_CRYPTO_MANAGER=y
1118CONFIG_CRYPTO_MANAGER2=y
1119# CONFIG_CRYPTO_GF128MUL is not set
1120CONFIG_CRYPTO_NULL=m 89CONFIG_CRYPTO_NULL=m
1121CONFIG_CRYPTO_WORKQUEUE=y
1122# CONFIG_CRYPTO_CRYPTD is not set
1123CONFIG_CRYPTO_AUTHENC=y
1124# CONFIG_CRYPTO_TEST is not set
1125
1126#
1127# Authenticated Encryption with Associated Data
1128#
1129# CONFIG_CRYPTO_CCM is not set
1130# CONFIG_CRYPTO_GCM is not set
1131# CONFIG_CRYPTO_SEQIV is not set
1132
1133#
1134# Block modes
1135#
1136CONFIG_CRYPTO_CBC=y
1137# CONFIG_CRYPTO_CTR is not set
1138# CONFIG_CRYPTO_CTS is not set
1139CONFIG_CRYPTO_ECB=m 90CONFIG_CRYPTO_ECB=m
1140# CONFIG_CRYPTO_LRW is not set
1141CONFIG_CRYPTO_PCBC=m 91CONFIG_CRYPTO_PCBC=m
1142# CONFIG_CRYPTO_XTS is not set
1143
1144#
1145# Hash modes
1146#
1147CONFIG_CRYPTO_HMAC=y
1148# CONFIG_CRYPTO_XCBC is not set
1149# CONFIG_CRYPTO_VMAC is not set
1150
1151#
1152# Digest
1153#
1154CONFIG_CRYPTO_CRC32C=m
1155# CONFIG_CRYPTO_GHASH is not set
1156CONFIG_CRYPTO_MD4=y 92CONFIG_CRYPTO_MD4=y
1157CONFIG_CRYPTO_MD5=y
1158CONFIG_CRYPTO_MICHAEL_MIC=m 93CONFIG_CRYPTO_MICHAEL_MIC=m
1159# CONFIG_CRYPTO_RMD128 is not set
1160# CONFIG_CRYPTO_RMD160 is not set
1161# CONFIG_CRYPTO_RMD256 is not set
1162# CONFIG_CRYPTO_RMD320 is not set
1163CONFIG_CRYPTO_SHA1=y
1164CONFIG_CRYPTO_SHA256=m 94CONFIG_CRYPTO_SHA256=m
1165CONFIG_CRYPTO_SHA512=m 95CONFIG_CRYPTO_SHA512=m
1166# CONFIG_CRYPTO_TGR192 is not set
1167# CONFIG_CRYPTO_WP512 is not set
1168
1169#
1170# Ciphers
1171#
1172CONFIG_CRYPTO_AES=m 96CONFIG_CRYPTO_AES=m
1173# CONFIG_CRYPTO_ANUBIS is not set
1174CONFIG_CRYPTO_ARC4=m 97CONFIG_CRYPTO_ARC4=m
1175CONFIG_CRYPTO_BLOWFISH=m 98CONFIG_CRYPTO_BLOWFISH=m
1176# CONFIG_CRYPTO_CAMELLIA is not set
1177CONFIG_CRYPTO_CAST5=m 99CONFIG_CRYPTO_CAST5=m
1178CONFIG_CRYPTO_CAST6=m 100CONFIG_CRYPTO_CAST6=m
1179CONFIG_CRYPTO_DES=y
1180# CONFIG_CRYPTO_FCRYPT is not set
1181# CONFIG_CRYPTO_KHAZAD is not set
1182# CONFIG_CRYPTO_SALSA20 is not set
1183# CONFIG_CRYPTO_SEED is not set
1184CONFIG_CRYPTO_SERPENT=m 101CONFIG_CRYPTO_SERPENT=m
1185# CONFIG_CRYPTO_TEA is not set
1186CONFIG_CRYPTO_TWOFISH=m 102CONFIG_CRYPTO_TWOFISH=m
1187CONFIG_CRYPTO_TWOFISH_COMMON=m
1188
1189#
1190# Compression
1191#
1192CONFIG_CRYPTO_DEFLATE=y
1193# CONFIG_CRYPTO_ZLIB is not set
1194# CONFIG_CRYPTO_LZO is not set
1195
1196#
1197# Random Number Generation
1198#
1199# CONFIG_CRYPTO_ANSI_CPRNG is not set 103# CONFIG_CRYPTO_ANSI_CPRNG is not set
1200# CONFIG_CRYPTO_HW is not set 104# CONFIG_CRYPTO_HW is not set
1201# CONFIG_BINARY_PRINTF is not set
1202
1203#
1204# Library routines
1205#
1206CONFIG_BITREVERSE=y
1207CONFIG_GENERIC_FIND_LAST_BIT=y
1208# CONFIG_CRC_CCITT is not set
1209# CONFIG_CRC16 is not set
1210# CONFIG_CRC_T10DIF is not set
1211# CONFIG_CRC_ITU_T is not set
1212CONFIG_CRC32=y
1213# CONFIG_CRC7 is not set
1214CONFIG_LIBCRC32C=m 105CONFIG_LIBCRC32C=m
1215CONFIG_ZLIB_INFLATE=y
1216CONFIG_ZLIB_DEFLATE=y
1217CONFIG_LZO_DECOMPRESS=y
1218CONFIG_DECOMPRESS_GZIP=y
1219CONFIG_DECOMPRESS_BZIP2=y
1220CONFIG_DECOMPRESS_LZMA=y
1221CONFIG_DECOMPRESS_LZO=y
1222CONFIG_HAS_IOMEM=y
1223CONFIG_HAS_IOPORT=y
1224CONFIG_HAS_DMA=y
1225CONFIG_NLATTR=y
diff --git a/arch/sparc/configs/sparc64_defconfig b/arch/sparc/configs/sparc64_defconfig
index 1dc07a0014c1..3c1e85807403 100644
--- a/arch/sparc/configs/sparc64_defconfig
+++ b/arch/sparc/configs/sparc64_defconfig
@@ -1,305 +1,41 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.34
4# Wed May 26 21:14:01 2010
5#
6CONFIG_64BIT=y 1CONFIG_64BIT=y
7CONFIG_SPARC=y
8# CONFIG_SPARC32 is not set
9CONFIG_SPARC64=y
10CONFIG_ARCH_DEFCONFIG="arch/sparc/configs/sparc64_defconfig"
11CONFIG_BITS=64
12CONFIG_GENERIC_TIME=y
13CONFIG_GENERIC_CMOS_UPDATE=y
14CONFIG_GENERIC_CLOCKEVENTS=y
15CONFIG_IOMMU_HELPER=y
16CONFIG_QUICKLIST=y
17CONFIG_STACKTRACE_SUPPORT=y
18CONFIG_LOCKDEP_SUPPORT=y
19CONFIG_HAVE_LATENCYTOP_SUPPORT=y
20CONFIG_AUDIT_ARCH=y
21CONFIG_HAVE_SETUP_PER_CPU_AREA=y
22CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
23CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
24CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
25CONFIG_MMU=y
26CONFIG_NEED_DMA_MAP_STATE=y
27CONFIG_ARCH_NO_VIRT_TO_BUS=y
28CONFIG_OF=y
29CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
30CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
31CONFIG_CONSTRUCTORS=y
32
33#
34# General setup
35#
36CONFIG_EXPERIMENTAL=y 2CONFIG_EXPERIMENTAL=y
37CONFIG_LOCK_KERNEL=y
38CONFIG_INIT_ENV_ARG_LIMIT=32
39CONFIG_LOCALVERSION=""
40# CONFIG_LOCALVERSION_AUTO is not set 3# CONFIG_LOCALVERSION_AUTO is not set
41CONFIG_SWAP=y
42CONFIG_SYSVIPC=y 4CONFIG_SYSVIPC=y
43CONFIG_SYSVIPC_SYSCTL=y
44CONFIG_POSIX_MQUEUE=y 5CONFIG_POSIX_MQUEUE=y
45CONFIG_POSIX_MQUEUE_SYSCTL=y
46# CONFIG_BSD_PROCESS_ACCT is not set
47# CONFIG_TASKSTATS is not set
48# CONFIG_AUDIT is not set
49
50#
51# RCU Subsystem
52#
53CONFIG_TREE_RCU=y
54# CONFIG_TREE_PREEMPT_RCU is not set
55# CONFIG_TINY_RCU is not set
56# CONFIG_RCU_TRACE is not set
57CONFIG_RCU_FANOUT=64
58# CONFIG_RCU_FANOUT_EXACT is not set
59# CONFIG_RCU_FAST_NO_HZ is not set
60# CONFIG_TREE_RCU_TRACE is not set
61# CONFIG_IKCONFIG is not set
62CONFIG_LOG_BUF_SHIFT=18 6CONFIG_LOG_BUF_SHIFT=18
63# CONFIG_CGROUPS is not set
64# CONFIG_SYSFS_DEPRECATED_V2 is not set
65CONFIG_RELAY=y
66CONFIG_NAMESPACES=y
67# CONFIG_UTS_NS is not set
68# CONFIG_IPC_NS is not set
69# CONFIG_USER_NS is not set
70# CONFIG_PID_NS is not set
71# CONFIG_NET_NS is not set
72CONFIG_BLK_DEV_INITRD=y 7CONFIG_BLK_DEV_INITRD=y
73CONFIG_INITRAMFS_SOURCE=""
74CONFIG_RD_GZIP=y
75CONFIG_RD_BZIP2=y
76CONFIG_RD_LZMA=y
77CONFIG_RD_LZO=y
78CONFIG_CC_OPTIMIZE_FOR_SIZE=y
79CONFIG_SYSCTL=y
80CONFIG_ANON_INODES=y
81# CONFIG_EMBEDDED is not set
82CONFIG_UID16=y
83CONFIG_SYSCTL_SYSCALL=y
84CONFIG_KALLSYMS=y
85# CONFIG_KALLSYMS_ALL is not set
86# CONFIG_KALLSYMS_EXTRA_PASS is not set
87CONFIG_HOTPLUG=y
88CONFIG_PRINTK=y
89CONFIG_BUG=y
90CONFIG_ELF_CORE=y
91CONFIG_BASE_FULL=y
92CONFIG_FUTEX=y
93CONFIG_EPOLL=y
94CONFIG_SIGNALFD=y
95CONFIG_TIMERFD=y
96CONFIG_EVENTFD=y
97CONFIG_SHMEM=y
98CONFIG_AIO=y
99CONFIG_HAVE_PERF_EVENTS=y
100CONFIG_PERF_USE_VMALLOC=y
101
102#
103# Kernel Performance Events And Counters
104#
105CONFIG_PERF_EVENTS=y
106CONFIG_PERF_COUNTERS=y 8CONFIG_PERF_COUNTERS=y
107# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
108CONFIG_VM_EVENT_COUNTERS=y
109CONFIG_PCI_QUIRKS=y
110# CONFIG_COMPAT_BRK is not set 9# CONFIG_COMPAT_BRK is not set
111CONFIG_SLAB=y 10CONFIG_SLAB=y
112# CONFIG_SLUB is not set
113# CONFIG_SLOB is not set
114CONFIG_PROFILING=y 11CONFIG_PROFILING=y
115CONFIG_TRACEPOINTS=y
116CONFIG_OPROFILE=m 12CONFIG_OPROFILE=m
117CONFIG_HAVE_OPROFILE=y
118CONFIG_KPROBES=y 13CONFIG_KPROBES=y
119CONFIG_HAVE_SYSCALL_WRAPPERS=y
120CONFIG_KRETPROBES=y
121CONFIG_HAVE_KPROBES=y
122CONFIG_HAVE_KRETPROBES=y
123CONFIG_HAVE_ARCH_TRACEHOOK=y
124CONFIG_HAVE_DMA_ATTRS=y
125CONFIG_USE_GENERIC_SMP_HELPERS=y
126CONFIG_HAVE_DMA_API_DEBUG=y
127
128#
129# GCOV-based kernel profiling
130#
131# CONFIG_GCOV_KERNEL is not set
132# CONFIG_SLOW_WORK is not set
133# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
134CONFIG_SLABINFO=y
135CONFIG_RT_MUTEXES=y
136CONFIG_BASE_SMALL=0
137CONFIG_MODULES=y 14CONFIG_MODULES=y
138# CONFIG_MODULE_FORCE_LOAD is not set
139CONFIG_MODULE_UNLOAD=y 15CONFIG_MODULE_UNLOAD=y
140CONFIG_MODULE_FORCE_UNLOAD=y 16CONFIG_MODULE_FORCE_UNLOAD=y
141CONFIG_MODVERSIONS=y 17CONFIG_MODVERSIONS=y
142CONFIG_MODULE_SRCVERSION_ALL=y 18CONFIG_MODULE_SRCVERSION_ALL=y
143CONFIG_STOP_MACHINE=y
144CONFIG_BLOCK=y
145CONFIG_BLK_DEV_BSG=y
146# CONFIG_BLK_DEV_INTEGRITY is not set
147CONFIG_BLOCK_COMPAT=y
148
149#
150# IO Schedulers
151#
152CONFIG_IOSCHED_NOOP=y
153CONFIG_IOSCHED_DEADLINE=y
154CONFIG_IOSCHED_CFQ=y
155# CONFIG_DEFAULT_DEADLINE is not set
156CONFIG_DEFAULT_CFQ=y
157# CONFIG_DEFAULT_NOOP is not set
158CONFIG_DEFAULT_IOSCHED="cfq"
159# CONFIG_INLINE_SPIN_TRYLOCK is not set
160# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
161# CONFIG_INLINE_SPIN_LOCK is not set
162# CONFIG_INLINE_SPIN_LOCK_BH is not set
163# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
164# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
165CONFIG_INLINE_SPIN_UNLOCK=y
166# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
167CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
168# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
169# CONFIG_INLINE_READ_TRYLOCK is not set
170# CONFIG_INLINE_READ_LOCK is not set
171# CONFIG_INLINE_READ_LOCK_BH is not set
172# CONFIG_INLINE_READ_LOCK_IRQ is not set
173# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
174CONFIG_INLINE_READ_UNLOCK=y
175# CONFIG_INLINE_READ_UNLOCK_BH is not set
176CONFIG_INLINE_READ_UNLOCK_IRQ=y
177# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
178# CONFIG_INLINE_WRITE_TRYLOCK is not set
179# CONFIG_INLINE_WRITE_LOCK is not set
180# CONFIG_INLINE_WRITE_LOCK_BH is not set
181# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
182# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
183CONFIG_INLINE_WRITE_UNLOCK=y
184# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
185CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
186# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
187CONFIG_MUTEX_SPIN_ON_OWNER=y
188# CONFIG_FREEZER is not set
189
190#
191# Processor type and features
192#
193CONFIG_SMP=y 19CONFIG_SMP=y
194CONFIG_NR_CPUS=64
195CONFIG_HZ_100=y 20CONFIG_HZ_100=y
196# CONFIG_HZ_250 is not set
197# CONFIG_HZ_300 is not set
198# CONFIG_HZ_1000 is not set
199CONFIG_HZ=100
200CONFIG_SCHED_HRTICK=y
201CONFIG_RWSEM_XCHGADD_ALGORITHM=y
202CONFIG_GENERIC_FIND_NEXT_BIT=y
203CONFIG_GENERIC_HWEIGHT=y
204CONFIG_GENERIC_CALIBRATE_DELAY=y
205CONFIG_ARCH_MAY_HAVE_PC_FDC=y
206CONFIG_SPARC64_SMP=y
207CONFIG_EARLYFB=y
208CONFIG_SPARC64_PAGE_SIZE_8KB=y
209# CONFIG_SPARC64_PAGE_SIZE_64KB is not set
210CONFIG_SECCOMP=y
211CONFIG_HOTPLUG_CPU=y 21CONFIG_HOTPLUG_CPU=y
212CONFIG_GENERIC_HARDIRQS=y
213CONFIG_TICK_ONESHOT=y
214CONFIG_NO_HZ=y 22CONFIG_NO_HZ=y
215CONFIG_HIGH_RES_TIMERS=y 23CONFIG_HIGH_RES_TIMERS=y
216CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
217# CONFIG_CPU_FREQ is not set
218CONFIG_US3_MC=y
219CONFIG_HUGETLB_PAGE_SIZE_4MB=y
220# CONFIG_HUGETLB_PAGE_SIZE_512K is not set
221# CONFIG_HUGETLB_PAGE_SIZE_64K is not set
222CONFIG_NUMA=y 24CONFIG_NUMA=y
223CONFIG_NODES_SHIFT=4
224CONFIG_NODES_SPAN_OTHER_NODES=y
225CONFIG_ARCH_POPULATES_NODE_MAP=y
226CONFIG_ARCH_SELECT_MEMORY_MODEL=y
227CONFIG_ARCH_SPARSEMEM_ENABLE=y
228CONFIG_ARCH_SPARSEMEM_DEFAULT=y
229CONFIG_SELECT_MEMORY_MODEL=y
230# CONFIG_FLATMEM_MANUAL is not set
231# CONFIG_DISCONTIGMEM_MANUAL is not set
232CONFIG_SPARSEMEM_MANUAL=y
233CONFIG_SPARSEMEM=y
234CONFIG_NEED_MULTIPLE_NODES=y
235CONFIG_HAVE_MEMORY_PRESENT=y
236CONFIG_SPARSEMEM_EXTREME=y
237CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
238CONFIG_SPARSEMEM_VMEMMAP=y
239CONFIG_PAGEFLAGS_EXTENDED=y
240CONFIG_SPLIT_PTLOCK_CPUS=4
241# CONFIG_COMPACTION is not set
242CONFIG_MIGRATION=y
243CONFIG_PHYS_ADDR_T_64BIT=y
244CONFIG_ZONE_DMA_FLAG=0
245CONFIG_NR_QUICK=1
246# CONFIG_KSM is not set
247CONFIG_DEFAULT_MMAP_MIN_ADDR=8192 25CONFIG_DEFAULT_MMAP_MIN_ADDR=8192
248CONFIG_SCHED_SMT=y
249CONFIG_SCHED_MC=y
250# CONFIG_PREEMPT_NONE is not set
251CONFIG_PREEMPT_VOLUNTARY=y 26CONFIG_PREEMPT_VOLUNTARY=y
252# CONFIG_PREEMPT is not set
253# CONFIG_CMDLINE_BOOL is not set
254
255#
256# Bus options (PCI etc.)
257#
258CONFIG_SBUS=y
259CONFIG_SBUSCHAR=y
260CONFIG_SUN_LDOMS=y 27CONFIG_SUN_LDOMS=y
261CONFIG_PCI=y 28CONFIG_PCI=y
262CONFIG_PCI_DOMAINS=y
263CONFIG_PCI_SYSCALL=y
264CONFIG_ARCH_SUPPORTS_MSI=y
265CONFIG_PCI_MSI=y 29CONFIG_PCI_MSI=y
266# CONFIG_PCI_DEBUG is not set
267# CONFIG_PCI_STUB is not set
268# CONFIG_PCI_IOV is not set
269# CONFIG_PCCARD is not set
270CONFIG_SUN_OPENPROMFS=m 30CONFIG_SUN_OPENPROMFS=m
271CONFIG_SPARC64_PCI=y
272
273#
274# Executable file formats
275#
276CONFIG_BINFMT_ELF=y
277CONFIG_COMPAT_BINFMT_ELF=y
278# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
279# CONFIG_HAVE_AOUT is not set
280CONFIG_BINFMT_MISC=m 31CONFIG_BINFMT_MISC=m
281CONFIG_COMPAT=y
282CONFIG_SYSVIPC_COMPAT=y
283CONFIG_NET=y
284
285#
286# Networking options
287#
288CONFIG_PACKET=y 32CONFIG_PACKET=y
289CONFIG_UNIX=y 33CONFIG_UNIX=y
290CONFIG_XFRM=y
291CONFIG_XFRM_USER=m 34CONFIG_XFRM_USER=m
292# CONFIG_XFRM_SUB_POLICY is not set
293CONFIG_XFRM_MIGRATE=y
294# CONFIG_XFRM_STATISTICS is not set
295CONFIG_XFRM_IPCOMP=y
296CONFIG_NET_KEY=m 35CONFIG_NET_KEY=m
297CONFIG_NET_KEY_MIGRATE=y 36CONFIG_NET_KEY_MIGRATE=y
298CONFIG_INET=y 37CONFIG_INET=y
299CONFIG_IP_MULTICAST=y 38CONFIG_IP_MULTICAST=y
300# CONFIG_IP_ADVANCED_ROUTER is not set
301CONFIG_IP_FIB_HASH=y
302# CONFIG_IP_PNP is not set
303CONFIG_NET_IPIP=m 39CONFIG_NET_IPIP=m
304CONFIG_NET_IPGRE=m 40CONFIG_NET_IPGRE=m
305CONFIG_NET_IPGRE_BROADCAST=y 41CONFIG_NET_IPGRE_BROADCAST=y
@@ -311,19 +47,6 @@ CONFIG_SYN_COOKIES=y
311CONFIG_INET_AH=y 47CONFIG_INET_AH=y
312CONFIG_INET_ESP=y 48CONFIG_INET_ESP=y
313CONFIG_INET_IPCOMP=y 49CONFIG_INET_IPCOMP=y
314CONFIG_INET_XFRM_TUNNEL=y
315CONFIG_INET_TUNNEL=y
316CONFIG_INET_XFRM_MODE_TRANSPORT=y
317CONFIG_INET_XFRM_MODE_TUNNEL=y
318CONFIG_INET_XFRM_MODE_BEET=y
319CONFIG_INET_LRO=y
320CONFIG_INET_DIAG=y
321CONFIG_INET_TCP_DIAG=y
322# CONFIG_TCP_CONG_ADVANCED is not set
323CONFIG_TCP_CONG_CUBIC=y
324CONFIG_DEFAULT_TCP_CONG="cubic"
325# CONFIG_TCP_MD5SIG is not set
326CONFIG_IPV6=m
327CONFIG_IPV6_PRIVACY=y 50CONFIG_IPV6_PRIVACY=y
328CONFIG_IPV6_ROUTER_PREF=y 51CONFIG_IPV6_ROUTER_PREF=y
329CONFIG_IPV6_ROUTE_INFO=y 52CONFIG_IPV6_ROUTE_INFO=y
@@ -331,276 +54,33 @@ CONFIG_IPV6_OPTIMISTIC_DAD=y
331CONFIG_INET6_AH=m 54CONFIG_INET6_AH=m
332CONFIG_INET6_ESP=m 55CONFIG_INET6_ESP=m
333CONFIG_INET6_IPCOMP=m 56CONFIG_INET6_IPCOMP=m
334# CONFIG_IPV6_MIP6 is not set
335CONFIG_INET6_XFRM_TUNNEL=m
336CONFIG_INET6_TUNNEL=m
337CONFIG_INET6_XFRM_MODE_TRANSPORT=m
338CONFIG_INET6_XFRM_MODE_TUNNEL=m
339CONFIG_INET6_XFRM_MODE_BEET=m
340# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
341CONFIG_IPV6_SIT=m
342# CONFIG_IPV6_SIT_6RD is not set
343CONFIG_IPV6_NDISC_NODETYPE=y
344CONFIG_IPV6_TUNNEL=m 57CONFIG_IPV6_TUNNEL=m
345# CONFIG_IPV6_MULTIPLE_TABLES is not set
346# CONFIG_IPV6_MROUTE is not set
347# CONFIG_NETWORK_SECMARK is not set
348# CONFIG_NETFILTER is not set
349# CONFIG_IP_DCCP is not set
350# CONFIG_IP_SCTP is not set
351# CONFIG_RDS is not set
352# CONFIG_TIPC is not set
353# CONFIG_ATM is not set
354# CONFIG_L2TP is not set
355# CONFIG_BRIDGE is not set
356# CONFIG_NET_DSA is not set
357CONFIG_VLAN_8021Q=m 58CONFIG_VLAN_8021Q=m
358# CONFIG_VLAN_8021Q_GVRP is not set
359# CONFIG_DECNET is not set
360# CONFIG_LLC2 is not set
361# CONFIG_IPX is not set
362# CONFIG_ATALK is not set
363# CONFIG_X25 is not set
364# CONFIG_LAPB is not set
365# CONFIG_ECONET is not set
366# CONFIG_WAN_ROUTER is not set
367# CONFIG_PHONET is not set
368# CONFIG_IEEE802154 is not set
369# CONFIG_NET_SCHED is not set
370# CONFIG_DCB is not set
371CONFIG_RPS=y
372
373#
374# Network testing
375#
376CONFIG_NET_PKTGEN=m 59CONFIG_NET_PKTGEN=m
377CONFIG_NET_TCPPROBE=m 60CONFIG_NET_TCPPROBE=m
378# CONFIG_NET_DROP_MONITOR is not set
379# CONFIG_HAMRADIO is not set
380# CONFIG_CAN is not set
381# CONFIG_IRDA is not set
382# CONFIG_BT is not set
383# CONFIG_AF_RXRPC is not set
384CONFIG_WIRELESS=y
385# CONFIG_CFG80211 is not set
386# CONFIG_LIB80211 is not set
387
388#
389# CFG80211 needs to be enabled for MAC80211
390#
391
392#
393# Some wireless drivers require a rate control algorithm
394#
395# CONFIG_WIMAX is not set
396# CONFIG_RFKILL is not set
397# CONFIG_NET_9P is not set
398# CONFIG_CAIF is not set
399
400#
401# Device Drivers
402#
403
404#
405# Generic Driver Options
406#
407CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 61CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
408# CONFIG_DEVTMPFS is not set
409CONFIG_STANDALONE=y
410# CONFIG_PREVENT_FIRMWARE_BUILD is not set 62# CONFIG_PREVENT_FIRMWARE_BUILD is not set
411CONFIG_FW_LOADER=y
412CONFIG_FIRMWARE_IN_KERNEL=y
413CONFIG_EXTRA_FIRMWARE=""
414# CONFIG_DEBUG_DRIVER is not set
415# CONFIG_DEBUG_DEVRES is not set
416# CONFIG_SYS_HYPERVISOR is not set
417CONFIG_CONNECTOR=m 63CONFIG_CONNECTOR=m
418# CONFIG_MTD is not set
419CONFIG_OF_DEVICE=y
420CONFIG_OF_MDIO=m
421# CONFIG_PARPORT is not set
422CONFIG_BLK_DEV=y
423# CONFIG_BLK_DEV_FD is not set
424# CONFIG_BLK_CPQ_CISS_DA is not set
425# CONFIG_BLK_DEV_DAC960 is not set
426# CONFIG_BLK_DEV_UMEM is not set
427# CONFIG_BLK_DEV_COW_COMMON is not set
428CONFIG_BLK_DEV_LOOP=m 64CONFIG_BLK_DEV_LOOP=m
429CONFIG_BLK_DEV_CRYPTOLOOP=m 65CONFIG_BLK_DEV_CRYPTOLOOP=m
430# CONFIG_BLK_DEV_DRBD is not set
431CONFIG_BLK_DEV_NBD=m 66CONFIG_BLK_DEV_NBD=m
432# CONFIG_BLK_DEV_SX8 is not set
433# CONFIG_BLK_DEV_UB is not set
434# CONFIG_BLK_DEV_RAM is not set
435CONFIG_CDROM_PKTCDVD=m 67CONFIG_CDROM_PKTCDVD=m
436CONFIG_CDROM_PKTCDVD_BUFFERS=8
437CONFIG_CDROM_PKTCDVD_WCACHE=y 68CONFIG_CDROM_PKTCDVD_WCACHE=y
438CONFIG_ATA_OVER_ETH=m 69CONFIG_ATA_OVER_ETH=m
439CONFIG_SUNVDC=m 70CONFIG_SUNVDC=m
440# CONFIG_BLK_DEV_HD is not set
441CONFIG_MISC_DEVICES=y
442# CONFIG_AD525X_DPOT is not set
443# CONFIG_PHANTOM is not set
444# CONFIG_SGI_IOC4 is not set
445# CONFIG_TIFM_CORE is not set
446# CONFIG_ICS932S401 is not set
447# CONFIG_ENCLOSURE_SERVICES is not set
448# CONFIG_HP_ILO is not set
449# CONFIG_ISL29003 is not set
450# CONFIG_SENSORS_TSL2550 is not set
451# CONFIG_DS1682 is not set
452# CONFIG_C2PORT is not set
453
454#
455# EEPROM support
456#
457# CONFIG_EEPROM_AT24 is not set
458# CONFIG_EEPROM_LEGACY is not set
459# CONFIG_EEPROM_MAX6875 is not set
460# CONFIG_EEPROM_93CX6 is not set
461# CONFIG_CB710_CORE is not set
462CONFIG_HAVE_IDE=y
463CONFIG_IDE=y 71CONFIG_IDE=y
464
465#
466# Please see Documentation/ide/ide.txt for help/info on IDE drives
467#
468CONFIG_IDE_XFER_MODE=y
469CONFIG_IDE_TIMINGS=y
470CONFIG_IDE_ATAPI=y
471# CONFIG_BLK_DEV_IDE_SATA is not set
472CONFIG_IDE_GD=y
473CONFIG_IDE_GD_ATA=y
474# CONFIG_IDE_GD_ATAPI is not set
475CONFIG_BLK_DEV_IDECD=y 72CONFIG_BLK_DEV_IDECD=y
476CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
477# CONFIG_BLK_DEV_IDETAPE is not set
478# CONFIG_IDE_TASK_IOCTL is not set
479CONFIG_IDE_PROC_FS=y
480
481#
482# IDE chipset support/bugfixes
483#
484# CONFIG_BLK_DEV_PLATFORM is not set
485CONFIG_BLK_DEV_IDEDMA_SFF=y
486
487#
488# PCI IDE chipsets support
489#
490CONFIG_BLK_DEV_IDEPCI=y
491CONFIG_IDEPCI_PCIBUS_ORDER=y
492# CONFIG_BLK_DEV_GENERIC is not set
493# CONFIG_BLK_DEV_OPTI621 is not set
494CONFIG_BLK_DEV_IDEDMA_PCI=y
495# CONFIG_BLK_DEV_AEC62XX is not set
496CONFIG_BLK_DEV_ALI15X3=y 73CONFIG_BLK_DEV_ALI15X3=y
497# CONFIG_BLK_DEV_AMD74XX is not set
498# CONFIG_BLK_DEV_CMD64X is not set
499# CONFIG_BLK_DEV_TRIFLEX is not set
500# CONFIG_BLK_DEV_CS5520 is not set
501# CONFIG_BLK_DEV_CS5530 is not set
502# CONFIG_BLK_DEV_HPT366 is not set
503# CONFIG_BLK_DEV_JMICRON is not set
504# CONFIG_BLK_DEV_SC1200 is not set
505# CONFIG_BLK_DEV_PIIX is not set
506# CONFIG_BLK_DEV_IT8172 is not set
507# CONFIG_BLK_DEV_IT8213 is not set
508# CONFIG_BLK_DEV_IT821X is not set
509# CONFIG_BLK_DEV_NS87415 is not set
510# CONFIG_BLK_DEV_PDC202XX_OLD is not set
511# CONFIG_BLK_DEV_PDC202XX_NEW is not set
512# CONFIG_BLK_DEV_SVWKS is not set
513# CONFIG_BLK_DEV_SIIMAGE is not set
514# CONFIG_BLK_DEV_SLC90E66 is not set
515# CONFIG_BLK_DEV_TRM290 is not set
516# CONFIG_BLK_DEV_VIA82CXXX is not set
517# CONFIG_BLK_DEV_TC86C001 is not set
518CONFIG_BLK_DEV_IDEDMA=y
519
520#
521# SCSI device support
522#
523CONFIG_SCSI_MOD=y
524CONFIG_RAID_ATTRS=m 74CONFIG_RAID_ATTRS=m
525CONFIG_SCSI=y 75CONFIG_SCSI=y
526CONFIG_SCSI_DMA=y
527# CONFIG_SCSI_TGT is not set
528CONFIG_SCSI_NETLINK=y
529CONFIG_SCSI_PROC_FS=y
530
531#
532# SCSI support type (disk, tape, CD-ROM)
533#
534CONFIG_BLK_DEV_SD=y 76CONFIG_BLK_DEV_SD=y
535# CONFIG_CHR_DEV_ST is not set
536# CONFIG_CHR_DEV_OSST is not set
537CONFIG_BLK_DEV_SR=m 77CONFIG_BLK_DEV_SR=m
538CONFIG_BLK_DEV_SR_VENDOR=y 78CONFIG_BLK_DEV_SR_VENDOR=y
539CONFIG_CHR_DEV_SG=m 79CONFIG_CHR_DEV_SG=m
540# CONFIG_CHR_DEV_SCH is not set
541CONFIG_SCSI_MULTI_LUN=y 80CONFIG_SCSI_MULTI_LUN=y
542CONFIG_SCSI_CONSTANTS=y 81CONFIG_SCSI_CONSTANTS=y
543# CONFIG_SCSI_LOGGING is not set
544# CONFIG_SCSI_SCAN_ASYNC is not set
545CONFIG_SCSI_WAIT_SCAN=m
546
547#
548# SCSI Transports
549#
550CONFIG_SCSI_SPI_ATTRS=y 82CONFIG_SCSI_SPI_ATTRS=y
551CONFIG_SCSI_FC_ATTRS=y 83CONFIG_SCSI_FC_ATTRS=y
552# CONFIG_SCSI_ISCSI_ATTRS is not set
553# CONFIG_SCSI_SAS_ATTRS is not set
554# CONFIG_SCSI_SAS_LIBSAS is not set
555# CONFIG_SCSI_SRP_ATTRS is not set
556CONFIG_SCSI_LOWLEVEL=y
557# CONFIG_ISCSI_TCP is not set
558# CONFIG_SCSI_CXGB3_ISCSI is not set
559# CONFIG_SCSI_BNX2_ISCSI is not set
560# CONFIG_BE2ISCSI is not set
561# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
562# CONFIG_SCSI_HPSA is not set
563# CONFIG_SCSI_3W_9XXX is not set
564# CONFIG_SCSI_3W_SAS is not set
565# CONFIG_SCSI_ACARD is not set
566# CONFIG_SCSI_AACRAID is not set
567# CONFIG_SCSI_AIC7XXX is not set
568# CONFIG_SCSI_AIC7XXX_OLD is not set
569# CONFIG_SCSI_AIC79XX is not set
570# CONFIG_SCSI_AIC94XX is not set
571# CONFIG_SCSI_MVSAS is not set
572# CONFIG_SCSI_ARCMSR is not set
573# CONFIG_MEGARAID_NEWGEN is not set
574# CONFIG_MEGARAID_LEGACY is not set
575# CONFIG_MEGARAID_SAS is not set
576# CONFIG_SCSI_MPT2SAS is not set
577# CONFIG_SCSI_HPTIOP is not set
578# CONFIG_LIBFC is not set
579# CONFIG_LIBFCOE is not set
580# CONFIG_FCOE is not set
581# CONFIG_SCSI_DMX3191D is not set
582# CONFIG_SCSI_FUTURE_DOMAIN is not set
583# CONFIG_SCSI_IPS is not set
584# CONFIG_SCSI_INITIO is not set
585# CONFIG_SCSI_INIA100 is not set
586# CONFIG_SCSI_STEX is not set
587# CONFIG_SCSI_SYM53C8XX_2 is not set
588# CONFIG_SCSI_QLOGIC_1280 is not set
589# CONFIG_SCSI_QLOGICPTI is not set
590# CONFIG_SCSI_QLA_FC is not set
591# CONFIG_SCSI_QLA_ISCSI is not set
592# CONFIG_SCSI_LPFC is not set
593# CONFIG_SCSI_DC395x is not set
594# CONFIG_SCSI_DC390T is not set
595# CONFIG_SCSI_DEBUG is not set
596# CONFIG_SCSI_SUNESP is not set
597# CONFIG_SCSI_PMCRAID is not set
598# CONFIG_SCSI_PM8001 is not set
599# CONFIG_SCSI_SRP is not set
600# CONFIG_SCSI_BFA_FC is not set
601# CONFIG_SCSI_DH is not set
602# CONFIG_SCSI_OSD_INITIATOR is not set
603# CONFIG_ATA is not set
604CONFIG_MD=y 84CONFIG_MD=y
605CONFIG_BLK_DEV_MD=m 85CONFIG_BLK_DEV_MD=m
606CONFIG_MD_LINEAR=m 86CONFIG_MD_LINEAR=m
@@ -608,178 +88,26 @@ CONFIG_MD_RAID0=m
608CONFIG_MD_RAID1=m 88CONFIG_MD_RAID1=m
609CONFIG_MD_RAID10=m 89CONFIG_MD_RAID10=m
610CONFIG_MD_RAID456=m 90CONFIG_MD_RAID456=m
611# CONFIG_MULTICORE_RAID456 is not set
612CONFIG_MD_RAID6_PQ=m
613# CONFIG_ASYNC_RAID6_TEST is not set
614CONFIG_MD_MULTIPATH=m 91CONFIG_MD_MULTIPATH=m
615# CONFIG_MD_FAULTY is not set
616CONFIG_BLK_DEV_DM=m 92CONFIG_BLK_DEV_DM=m
617# CONFIG_DM_DEBUG is not set
618CONFIG_DM_CRYPT=m 93CONFIG_DM_CRYPT=m
619CONFIG_DM_SNAPSHOT=m 94CONFIG_DM_SNAPSHOT=m
620CONFIG_DM_MIRROR=m 95CONFIG_DM_MIRROR=m
621# CONFIG_DM_LOG_USERSPACE is not set
622CONFIG_DM_ZERO=m 96CONFIG_DM_ZERO=m
623# CONFIG_DM_MULTIPATH is not set
624# CONFIG_DM_DELAY is not set
625# CONFIG_DM_UEVENT is not set
626# CONFIG_FUSION is not set
627
628#
629# IEEE 1394 (FireWire) support
630#
631
632#
633# You can enable one or both FireWire driver stacks.
634#
635
636#
637# The newer stack is recommended.
638#
639# CONFIG_FIREWIRE is not set
640# CONFIG_IEEE1394 is not set
641# CONFIG_I2O is not set
642CONFIG_NETDEVICES=y 97CONFIG_NETDEVICES=y
643# CONFIG_DUMMY is not set
644# CONFIG_BONDING is not set
645# CONFIG_MACVLAN is not set
646# CONFIG_EQUALIZER is not set
647# CONFIG_TUN is not set
648# CONFIG_VETH is not set
649# CONFIG_ARCNET is not set
650CONFIG_PHYLIB=m
651
652#
653# MII PHY device drivers
654#
655# CONFIG_MARVELL_PHY is not set
656# CONFIG_DAVICOM_PHY is not set
657# CONFIG_QSEMI_PHY is not set
658# CONFIG_LXT_PHY is not set
659# CONFIG_CICADA_PHY is not set
660# CONFIG_VITESSE_PHY is not set
661# CONFIG_SMSC_PHY is not set
662# CONFIG_BROADCOM_PHY is not set
663# CONFIG_ICPLUS_PHY is not set
664# CONFIG_REALTEK_PHY is not set
665# CONFIG_NATIONAL_PHY is not set
666# CONFIG_STE10XP is not set
667# CONFIG_LSI_ET1011C_PHY is not set
668# CONFIG_MICREL_PHY is not set
669# CONFIG_MDIO_BITBANG is not set
670CONFIG_NET_ETHERNET=y 98CONFIG_NET_ETHERNET=y
671CONFIG_MII=m 99CONFIG_MII=m
672CONFIG_SUNLANCE=m 100CONFIG_SUNLANCE=m
673CONFIG_HAPPYMEAL=m 101CONFIG_HAPPYMEAL=m
674# CONFIG_SUNBMAC is not set
675# CONFIG_SUNQE is not set
676CONFIG_SUNGEM=m 102CONFIG_SUNGEM=m
677# CONFIG_CASSINI is not set
678CONFIG_SUNVNET=m 103CONFIG_SUNVNET=m
679# CONFIG_NET_VENDOR_3COM is not set
680# CONFIG_ETHOC is not set
681# CONFIG_GRETH is not set
682# CONFIG_DNET is not set
683# CONFIG_NET_TULIP is not set
684# CONFIG_HP100 is not set
685# CONFIG_IBM_NEW_EMAC_ZMII is not set
686# CONFIG_IBM_NEW_EMAC_RGMII is not set
687# CONFIG_IBM_NEW_EMAC_TAH is not set
688# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
689# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
690# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
691# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
692CONFIG_NET_PCI=y 104CONFIG_NET_PCI=y
693# CONFIG_PCNET32 is not set
694# CONFIG_AMD8111_ETH is not set
695# CONFIG_ADAPTEC_STARFIRE is not set
696# CONFIG_KSZ884X_PCI is not set
697# CONFIG_B44 is not set
698# CONFIG_FORCEDETH is not set
699# CONFIG_E100 is not set
700# CONFIG_FEALNX is not set
701# CONFIG_NATSEMI is not set
702# CONFIG_NE2K_PCI is not set
703# CONFIG_8139CP is not set
704# CONFIG_8139TOO is not set
705# CONFIG_R6040 is not set
706# CONFIG_SIS900 is not set
707# CONFIG_EPIC100 is not set
708# CONFIG_SMSC9420 is not set
709# CONFIG_SUNDANCE is not set
710# CONFIG_TLAN is not set
711# CONFIG_KS8842 is not set
712# CONFIG_KS8851_MLL is not set
713# CONFIG_VIA_RHINE is not set
714# CONFIG_SC92031 is not set
715# CONFIG_ATL2 is not set
716CONFIG_NETDEV_1000=y
717# CONFIG_ACENIC is not set
718# CONFIG_DL2K is not set
719CONFIG_E1000=m 105CONFIG_E1000=m
720CONFIG_E1000E=m 106CONFIG_E1000E=m
721# CONFIG_IP1000 is not set
722# CONFIG_IGB is not set
723# CONFIG_IGBVF is not set
724# CONFIG_MYRI_SBUS is not set
725# CONFIG_NS83820 is not set
726# CONFIG_HAMACHI is not set
727# CONFIG_YELLOWFIN is not set
728# CONFIG_R8169 is not set
729# CONFIG_SIS190 is not set
730# CONFIG_SKGE is not set
731# CONFIG_SKY2 is not set
732# CONFIG_VIA_VELOCITY is not set
733CONFIG_TIGON3=m 107CONFIG_TIGON3=m
734CONFIG_BNX2=m 108CONFIG_BNX2=m
735# CONFIG_CNIC is not set
736# CONFIG_QLA3XXX is not set
737# CONFIG_ATL1 is not set
738# CONFIG_ATL1E is not set
739# CONFIG_ATL1C is not set
740# CONFIG_JME is not set
741CONFIG_NETDEV_10000=y
742# CONFIG_CHELSIO_T1 is not set
743CONFIG_CHELSIO_T3_DEPENDS=y
744# CONFIG_CHELSIO_T3 is not set
745CONFIG_CHELSIO_T4_DEPENDS=y
746# CONFIG_CHELSIO_T4 is not set
747# CONFIG_ENIC is not set
748# CONFIG_IXGBE is not set
749# CONFIG_IXGBEVF is not set
750# CONFIG_IXGB is not set
751# CONFIG_S2IO is not set
752# CONFIG_VXGE is not set
753# CONFIG_MYRI10GE is not set
754# CONFIG_NETXEN_NIC is not set
755CONFIG_NIU=m 109CONFIG_NIU=m
756# CONFIG_MLX4_EN is not set
757# CONFIG_MLX4_CORE is not set
758# CONFIG_TEHUTI is not set
759# CONFIG_BNX2X is not set
760# CONFIG_QLCNIC is not set
761# CONFIG_QLGE is not set
762# CONFIG_SFC is not set
763# CONFIG_BE2NET is not set
764# CONFIG_TR is not set
765# CONFIG_WLAN is not set 110# CONFIG_WLAN is not set
766
767#
768# Enable WiMAX (Networking options) to see the WiMAX drivers
769#
770
771#
772# USB Network Adapters
773#
774# CONFIG_USB_CATC is not set
775# CONFIG_USB_KAWETH is not set
776# CONFIG_USB_PEGASUS is not set
777# CONFIG_USB_RTL8150 is not set
778# CONFIG_USB_USBNET is not set
779# CONFIG_USB_IPHETH is not set
780# CONFIG_WAN is not set
781# CONFIG_FDDI is not set
782# CONFIG_HIPPI is not set
783CONFIG_PPP=m 111CONFIG_PPP=m
784CONFIG_PPP_MULTILINK=y 112CONFIG_PPP_MULTILINK=y
785CONFIG_PPP_FILTER=y 113CONFIG_PPP_FILTER=y
@@ -789,1157 +117,126 @@ CONFIG_PPP_DEFLATE=m
789CONFIG_PPP_BSDCOMP=m 117CONFIG_PPP_BSDCOMP=m
790CONFIG_PPP_MPPE=m 118CONFIG_PPP_MPPE=m
791CONFIG_PPPOE=m 119CONFIG_PPPOE=m
792# CONFIG_SLIP is not set
793CONFIG_SLHC=m
794# CONFIG_NET_FC is not set
795# CONFIG_NETCONSOLE is not set
796# CONFIG_NETPOLL is not set
797# CONFIG_NET_POLL_CONTROLLER is not set
798# CONFIG_VMXNET3 is not set
799# CONFIG_ISDN is not set
800# CONFIG_PHONE is not set
801
802#
803# Input device support
804#
805CONFIG_INPUT=y
806# CONFIG_INPUT_FF_MEMLESS is not set
807# CONFIG_INPUT_POLLDEV is not set
808# CONFIG_INPUT_SPARSEKMAP is not set
809
810#
811# Userland interfaces
812#
813CONFIG_INPUT_MOUSEDEV=y
814CONFIG_INPUT_MOUSEDEV_PSAUX=y
815CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
816CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
817# CONFIG_INPUT_JOYDEV is not set
818CONFIG_INPUT_EVDEV=y 120CONFIG_INPUT_EVDEV=y
819# CONFIG_INPUT_EVBUG is not set
820
821#
822# Input Device Drivers
823#
824CONFIG_INPUT_KEYBOARD=y
825# CONFIG_KEYBOARD_ADP5588 is not set
826CONFIG_KEYBOARD_ATKBD=y
827# CONFIG_QT2160 is not set
828CONFIG_KEYBOARD_LKKBD=m 121CONFIG_KEYBOARD_LKKBD=m
829# CONFIG_KEYBOARD_TCA6416 is not set
830# CONFIG_KEYBOARD_MAX7359 is not set
831# CONFIG_KEYBOARD_NEWTON is not set
832# CONFIG_KEYBOARD_OPENCORES is not set
833# CONFIG_KEYBOARD_STOWAWAY is not set
834CONFIG_KEYBOARD_SUNKBD=y 122CONFIG_KEYBOARD_SUNKBD=y
835# CONFIG_KEYBOARD_XTKBD is not set
836CONFIG_INPUT_MOUSE=y
837CONFIG_MOUSE_PS2=y
838CONFIG_MOUSE_PS2_ALPS=y
839CONFIG_MOUSE_PS2_LOGIPS2PP=y
840CONFIG_MOUSE_PS2_SYNAPTICS=y
841CONFIG_MOUSE_PS2_TRACKPOINT=y
842# CONFIG_MOUSE_PS2_ELANTECH is not set
843# CONFIG_MOUSE_PS2_SENTELIC is not set
844# CONFIG_MOUSE_PS2_TOUCHKIT is not set
845CONFIG_MOUSE_SERIAL=y 123CONFIG_MOUSE_SERIAL=y
846# CONFIG_MOUSE_APPLETOUCH is not set
847# CONFIG_MOUSE_BCM5974 is not set
848# CONFIG_MOUSE_VSXXXAA is not set
849# CONFIG_MOUSE_SYNAPTICS_I2C is not set
850# CONFIG_INPUT_JOYSTICK is not set
851# CONFIG_INPUT_TABLET is not set
852# CONFIG_INPUT_TOUCHSCREEN is not set
853CONFIG_INPUT_MISC=y 124CONFIG_INPUT_MISC=y
854# CONFIG_INPUT_AD714X is not set
855CONFIG_INPUT_SPARCSPKR=y 125CONFIG_INPUT_SPARCSPKR=y
856# CONFIG_INPUT_ATI_REMOTE is not set
857# CONFIG_INPUT_ATI_REMOTE2 is not set
858# CONFIG_INPUT_KEYSPAN_REMOTE is not set
859# CONFIG_INPUT_POWERMATE is not set
860# CONFIG_INPUT_YEALINK is not set
861# CONFIG_INPUT_CM109 is not set
862# CONFIG_INPUT_UINPUT is not set
863# CONFIG_INPUT_PCF8574 is not set
864
865#
866# Hardware I/O ports
867#
868CONFIG_SERIO=y
869CONFIG_SERIO_I8042=y
870# CONFIG_SERIO_SERPORT is not set 126# CONFIG_SERIO_SERPORT is not set
871CONFIG_SERIO_PCIPS2=m 127CONFIG_SERIO_PCIPS2=m
872CONFIG_SERIO_LIBPS2=y
873CONFIG_SERIO_RAW=m 128CONFIG_SERIO_RAW=m
874# CONFIG_SERIO_ALTERA_PS2 is not set
875# CONFIG_GAMEPORT is not set
876
877#
878# Character devices
879#
880CONFIG_VT=y
881CONFIG_CONSOLE_TRANSLATIONS=y
882CONFIG_VT_CONSOLE=y
883CONFIG_HW_CONSOLE=y
884# CONFIG_VT_HW_CONSOLE_BINDING is not set
885# CONFIG_DEVKMEM is not set 129# CONFIG_DEVKMEM is not set
886# CONFIG_SERIAL_NONSTANDARD is not set
887# CONFIG_N_GSM is not set
888# CONFIG_NOZOMI is not set
889
890#
891# Serial drivers
892#
893# CONFIG_SERIAL_8250 is not set
894
895#
896# Non-8250 serial port support
897#
898CONFIG_SERIAL_SUNCORE=y
899# CONFIG_SERIAL_SUNZILOG is not set
900CONFIG_SERIAL_SUNSU=y 130CONFIG_SERIAL_SUNSU=y
901CONFIG_SERIAL_SUNSU_CONSOLE=y 131CONFIG_SERIAL_SUNSU_CONSOLE=y
902CONFIG_SERIAL_SUNSAB=y 132CONFIG_SERIAL_SUNSAB=y
903CONFIG_SERIAL_SUNSAB_CONSOLE=y 133CONFIG_SERIAL_SUNSAB_CONSOLE=y
904CONFIG_SERIAL_SUNHV=y 134CONFIG_SERIAL_SUNHV=y
905CONFIG_SERIAL_CORE=y
906CONFIG_SERIAL_CORE_CONSOLE=y
907# CONFIG_SERIAL_JSM is not set
908# CONFIG_SERIAL_TIMBERDALE is not set
909# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
910# CONFIG_SERIAL_ALTERA_JTAGUART is not set
911# CONFIG_SERIAL_ALTERA_UART is not set
912CONFIG_UNIX98_PTYS=y
913# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
914# CONFIG_LEGACY_PTYS is not set 135# CONFIG_LEGACY_PTYS is not set
915# CONFIG_IPMI_HANDLER is not set
916CONFIG_HW_RANDOM=m
917# CONFIG_HW_RANDOM_TIMERIOMEM is not set
918CONFIG_HW_RANDOM_N2RNG=m
919# CONFIG_R3964 is not set
920# CONFIG_APPLICOM is not set
921# CONFIG_RAW_DRIVER is not set
922# CONFIG_TCG_TPM is not set
923CONFIG_DEVPORT=y
924CONFIG_I2C=y
925CONFIG_I2C_BOARDINFO=y
926CONFIG_I2C_COMPAT=y
927# CONFIG_I2C_CHARDEV is not set
928CONFIG_I2C_HELPER_AUTO=y
929CONFIG_I2C_ALGOBIT=y
930
931#
932# I2C Hardware Bus support
933#
934
935#
936# PC SMBus host controller drivers
937#
938# CONFIG_I2C_ALI1535 is not set
939# CONFIG_I2C_ALI1563 is not set
940# CONFIG_I2C_ALI15X3 is not set
941# CONFIG_I2C_AMD756 is not set
942# CONFIG_I2C_AMD8111 is not set
943# CONFIG_I2C_I801 is not set
944# CONFIG_I2C_ISCH is not set
945# CONFIG_I2C_PIIX4 is not set
946# CONFIG_I2C_NFORCE2 is not set
947# CONFIG_I2C_SIS5595 is not set
948# CONFIG_I2C_SIS630 is not set
949# CONFIG_I2C_SIS96X is not set
950# CONFIG_I2C_VIA is not set
951# CONFIG_I2C_VIAPRO is not set
952
953#
954# I2C system bus drivers (mostly embedded / system-on-chip)
955#
956# CONFIG_I2C_OCORES is not set
957# CONFIG_I2C_SIMTEC is not set
958# CONFIG_I2C_XILINX is not set
959
960#
961# External I2C/SMBus adapter drivers
962#
963# CONFIG_I2C_PARPORT_LIGHT is not set
964# CONFIG_I2C_TAOS_EVM is not set
965# CONFIG_I2C_TINY_USB is not set
966
967#
968# Other I2C/SMBus bus drivers
969#
970# CONFIG_I2C_PCA_PLATFORM is not set
971# CONFIG_I2C_STUB is not set
972# CONFIG_I2C_DEBUG_CORE is not set
973# CONFIG_I2C_DEBUG_ALGO is not set
974# CONFIG_I2C_DEBUG_BUS is not set
975# CONFIG_SPI is not set
976
977#
978# PPS support
979#
980# CONFIG_PPS is not set
981CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
982# CONFIG_GPIOLIB is not set
983# CONFIG_W1 is not set
984# CONFIG_POWER_SUPPLY is not set
985CONFIG_HWMON=y
986# CONFIG_HWMON_VID is not set
987# CONFIG_HWMON_DEBUG_CHIP is not set
988
989#
990# Native drivers
991#
992# CONFIG_SENSORS_AD7414 is not set
993# CONFIG_SENSORS_AD7418 is not set
994# CONFIG_SENSORS_ADM1021 is not set
995# CONFIG_SENSORS_ADM1025 is not set
996# CONFIG_SENSORS_ADM1026 is not set
997# CONFIG_SENSORS_ADM1029 is not set
998# CONFIG_SENSORS_ADM1031 is not set
999# CONFIG_SENSORS_ADM9240 is not set
1000# CONFIG_SENSORS_ADT7411 is not set
1001# CONFIG_SENSORS_ADT7462 is not set
1002# CONFIG_SENSORS_ADT7470 is not set
1003# CONFIG_SENSORS_ADT7475 is not set
1004# CONFIG_SENSORS_ASC7621 is not set
1005# CONFIG_SENSORS_ATXP1 is not set
1006# CONFIG_SENSORS_DS1621 is not set
1007# CONFIG_SENSORS_I5K_AMB is not set
1008# CONFIG_SENSORS_F71805F is not set
1009# CONFIG_SENSORS_F71882FG is not set
1010# CONFIG_SENSORS_F75375S is not set
1011# CONFIG_SENSORS_G760A is not set
1012# CONFIG_SENSORS_GL518SM is not set
1013# CONFIG_SENSORS_GL520SM is not set
1014# CONFIG_SENSORS_IT87 is not set
1015# CONFIG_SENSORS_LM63 is not set
1016# CONFIG_SENSORS_LM73 is not set
1017# CONFIG_SENSORS_LM75 is not set
1018# CONFIG_SENSORS_LM77 is not set
1019# CONFIG_SENSORS_LM78 is not set
1020# CONFIG_SENSORS_LM80 is not set
1021# CONFIG_SENSORS_LM83 is not set
1022# CONFIG_SENSORS_LM85 is not set
1023# CONFIG_SENSORS_LM87 is not set
1024# CONFIG_SENSORS_LM90 is not set
1025# CONFIG_SENSORS_LM92 is not set
1026# CONFIG_SENSORS_LM93 is not set
1027# CONFIG_SENSORS_LTC4215 is not set
1028# CONFIG_SENSORS_LTC4245 is not set
1029# CONFIG_SENSORS_LM95241 is not set
1030# CONFIG_SENSORS_MAX1619 is not set
1031# CONFIG_SENSORS_MAX6650 is not set
1032# CONFIG_SENSORS_PC87360 is not set
1033# CONFIG_SENSORS_PC87427 is not set
1034# CONFIG_SENSORS_PCF8591 is not set
1035# CONFIG_SENSORS_SIS5595 is not set
1036# CONFIG_SENSORS_DME1737 is not set
1037# CONFIG_SENSORS_SMSC47M1 is not set
1038# CONFIG_SENSORS_SMSC47M192 is not set
1039# CONFIG_SENSORS_SMSC47B397 is not set
1040# CONFIG_SENSORS_ADS7828 is not set
1041# CONFIG_SENSORS_AMC6821 is not set
1042# CONFIG_SENSORS_THMC50 is not set
1043# CONFIG_SENSORS_TMP401 is not set
1044# CONFIG_SENSORS_TMP421 is not set
1045# CONFIG_SENSORS_VIA686A is not set
1046# CONFIG_SENSORS_VT1211 is not set
1047# CONFIG_SENSORS_VT8231 is not set
1048# CONFIG_SENSORS_W83781D is not set
1049# CONFIG_SENSORS_W83791D is not set
1050# CONFIG_SENSORS_W83792D is not set
1051# CONFIG_SENSORS_W83793 is not set
1052# CONFIG_SENSORS_W83L785TS is not set
1053# CONFIG_SENSORS_W83L786NG is not set
1054# CONFIG_SENSORS_W83627HF is not set
1055# CONFIG_SENSORS_W83627EHF is not set
1056# CONFIG_SENSORS_ULTRA45 is not set
1057# CONFIG_SENSORS_LIS3_I2C is not set
1058# CONFIG_THERMAL is not set
1059# CONFIG_WATCHDOG is not set
1060CONFIG_SSB_POSSIBLE=y
1061
1062#
1063# Sonics Silicon Backplane
1064#
1065# CONFIG_SSB is not set
1066
1067#
1068# Multifunction device drivers
1069#
1070# CONFIG_MFD_CORE is not set
1071# CONFIG_MFD_88PM860X is not set
1072# CONFIG_MFD_SM501 is not set
1073# CONFIG_HTC_PASIC3 is not set
1074# CONFIG_TWL4030_CORE is not set
1075# CONFIG_MFD_TMIO is not set
1076# CONFIG_PMIC_DA903X is not set
1077# CONFIG_PMIC_ADP5520 is not set
1078# CONFIG_MFD_MAX8925 is not set
1079# CONFIG_MFD_WM8400 is not set
1080# CONFIG_MFD_WM831X is not set
1081# CONFIG_MFD_WM8350_I2C is not set
1082# CONFIG_MFD_WM8994 is not set
1083# CONFIG_MFD_PCF50633 is not set
1084# CONFIG_AB3100_CORE is not set
1085# CONFIG_LPC_SCH is not set
1086# CONFIG_REGULATOR is not set
1087# CONFIG_MEDIA_SUPPORT is not set
1088
1089#
1090# Graphics support
1091#
1092CONFIG_VGA_ARB=y
1093CONFIG_VGA_ARB_MAX_GPUS=16
1094# CONFIG_DRM is not set
1095# CONFIG_VGASTATE is not set
1096# CONFIG_VIDEO_OUTPUT_CONTROL is not set
1097CONFIG_FB=y 136CONFIG_FB=y
1098# CONFIG_FIRMWARE_EDID is not set
1099CONFIG_FB_DDC=y
1100# CONFIG_FB_BOOT_VESA_SUPPORT is not set
1101CONFIG_FB_CFB_FILLRECT=y
1102CONFIG_FB_CFB_COPYAREA=y
1103CONFIG_FB_CFB_IMAGEBLIT=y
1104# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
1105# CONFIG_FB_SYS_FILLRECT is not set
1106# CONFIG_FB_SYS_COPYAREA is not set
1107# CONFIG_FB_SYS_IMAGEBLIT is not set
1108# CONFIG_FB_FOREIGN_ENDIAN is not set
1109# CONFIG_FB_SYS_FOPS is not set
1110# CONFIG_FB_SVGALIB is not set
1111# CONFIG_FB_MACMODES is not set
1112# CONFIG_FB_BACKLIGHT is not set
1113CONFIG_FB_MODE_HELPERS=y
1114CONFIG_FB_TILEBLITTING=y 137CONFIG_FB_TILEBLITTING=y
1115
1116#
1117# Frame buffer hardware drivers
1118#
1119# CONFIG_FB_CIRRUS is not set
1120# CONFIG_FB_PM2 is not set
1121# CONFIG_FB_ASILIANT is not set
1122# CONFIG_FB_IMSTT is not set
1123# CONFIG_FB_UVESA is not set
1124CONFIG_FB_SBUS=y 138CONFIG_FB_SBUS=y
1125# CONFIG_FB_BW2 is not set
1126# CONFIG_FB_CG3 is not set
1127CONFIG_FB_CG6=y 139CONFIG_FB_CG6=y
1128CONFIG_FB_FFB=y 140CONFIG_FB_FFB=y
1129# CONFIG_FB_TCX is not set
1130# CONFIG_FB_CG14 is not set
1131# CONFIG_FB_P9100 is not set
1132# CONFIG_FB_LEO is not set
1133CONFIG_FB_XVR500=y 141CONFIG_FB_XVR500=y
1134CONFIG_FB_XVR2500=y 142CONFIG_FB_XVR2500=y
1135CONFIG_FB_XVR1000=y 143CONFIG_FB_XVR1000=y
1136# CONFIG_FB_S1D13XXX is not set
1137# CONFIG_FB_NVIDIA is not set
1138# CONFIG_FB_RIVA is not set
1139# CONFIG_FB_MATROX is not set
1140CONFIG_FB_RADEON=y 144CONFIG_FB_RADEON=y
1141CONFIG_FB_RADEON_I2C=y
1142# CONFIG_FB_RADEON_BACKLIGHT is not set 145# CONFIG_FB_RADEON_BACKLIGHT is not set
1143# CONFIG_FB_RADEON_DEBUG is not set
1144# CONFIG_FB_ATY128 is not set
1145CONFIG_FB_ATY=y 146CONFIG_FB_ATY=y
1146CONFIG_FB_ATY_CT=y
1147# CONFIG_FB_ATY_GENERIC_LCD is not set
1148CONFIG_FB_ATY_GX=y 147CONFIG_FB_ATY_GX=y
1149# CONFIG_FB_ATY_BACKLIGHT is not set 148# CONFIG_FB_ATY_BACKLIGHT is not set
1150# CONFIG_FB_S3 is not set
1151# CONFIG_FB_SAVAGE is not set
1152# CONFIG_FB_SIS is not set
1153# CONFIG_FB_VIA is not set
1154# CONFIG_FB_NEOMAGIC is not set
1155# CONFIG_FB_KYRO is not set
1156# CONFIG_FB_3DFX is not set
1157# CONFIG_FB_VOODOO1 is not set
1158# CONFIG_FB_VT8623 is not set
1159# CONFIG_FB_TRIDENT is not set
1160# CONFIG_FB_ARK is not set
1161# CONFIG_FB_PM3 is not set
1162# CONFIG_FB_CARMINE is not set
1163# CONFIG_FB_VIRTUAL is not set
1164# CONFIG_FB_METRONOME is not set
1165# CONFIG_FB_MB862XX is not set
1166# CONFIG_FB_BROADSHEET is not set
1167# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
1168
1169#
1170# Display device support
1171#
1172# CONFIG_DISPLAY_SUPPORT is not set
1173
1174#
1175# Console display driver support
1176#
1177CONFIG_DUMMY_CONSOLE=y
1178CONFIG_FRAMEBUFFER_CONSOLE=y 149CONFIG_FRAMEBUFFER_CONSOLE=y
1179CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y 150CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
1180# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
1181CONFIG_FONTS=y 151CONFIG_FONTS=y
1182# CONFIG_FONT_8x8 is not set
1183# CONFIG_FONT_8x16 is not set
1184# CONFIG_FONT_6x11 is not set
1185# CONFIG_FONT_7x14 is not set
1186# CONFIG_FONT_PEARL_8x8 is not set
1187# CONFIG_FONT_ACORN_8x8 is not set
1188CONFIG_FONT_SUN8x16=y 152CONFIG_FONT_SUN8x16=y
1189# CONFIG_FONT_SUN12x22 is not set
1190# CONFIG_FONT_10x18 is not set
1191CONFIG_LOGO=y 153CONFIG_LOGO=y
1192# CONFIG_LOGO_LINUX_MONO is not set 154# CONFIG_LOGO_LINUX_MONO is not set
1193# CONFIG_LOGO_LINUX_VGA16 is not set 155# CONFIG_LOGO_LINUX_VGA16 is not set
1194# CONFIG_LOGO_LINUX_CLUT224 is not set 156# CONFIG_LOGO_LINUX_CLUT224 is not set
1195CONFIG_LOGO_SUN_CLUT224=y
1196CONFIG_SOUND=m 157CONFIG_SOUND=m
1197CONFIG_SOUND_OSS_CORE=y
1198CONFIG_SOUND_OSS_CORE_PRECLAIM=y
1199CONFIG_SND=m 158CONFIG_SND=m
1200CONFIG_SND_TIMER=m
1201CONFIG_SND_PCM=m
1202CONFIG_SND_RAWMIDI=m
1203CONFIG_SND_SEQUENCER=m 159CONFIG_SND_SEQUENCER=m
1204CONFIG_SND_SEQ_DUMMY=m 160CONFIG_SND_SEQ_DUMMY=m
1205CONFIG_SND_OSSEMUL=y
1206CONFIG_SND_MIXER_OSS=m 161CONFIG_SND_MIXER_OSS=m
1207CONFIG_SND_PCM_OSS=m 162CONFIG_SND_PCM_OSS=m
1208CONFIG_SND_PCM_OSS_PLUGINS=y
1209CONFIG_SND_SEQUENCER_OSS=y 163CONFIG_SND_SEQUENCER_OSS=y
1210# CONFIG_SND_HRTIMER is not set
1211# CONFIG_SND_DYNAMIC_MINORS is not set
1212CONFIG_SND_SUPPORT_OLD_API=y
1213CONFIG_SND_VERBOSE_PROCFS=y
1214# CONFIG_SND_VERBOSE_PRINTK is not set
1215# CONFIG_SND_DEBUG is not set
1216CONFIG_SND_VMASTER=y
1217CONFIG_SND_RAWMIDI_SEQ=m
1218# CONFIG_SND_OPL3_LIB_SEQ is not set
1219# CONFIG_SND_OPL4_LIB_SEQ is not set
1220# CONFIG_SND_SBAWE_SEQ is not set
1221# CONFIG_SND_EMU10K1_SEQ is not set
1222CONFIG_SND_MPU401_UART=m
1223CONFIG_SND_AC97_CODEC=m
1224CONFIG_SND_DRIVERS=y
1225CONFIG_SND_DUMMY=m 164CONFIG_SND_DUMMY=m
1226CONFIG_SND_VIRMIDI=m 165CONFIG_SND_VIRMIDI=m
1227CONFIG_SND_MTPAV=m 166CONFIG_SND_MTPAV=m
1228# CONFIG_SND_SERIAL_U16550 is not set
1229# CONFIG_SND_MPU401 is not set
1230# CONFIG_SND_AC97_POWER_SAVE is not set
1231CONFIG_SND_PCI=y
1232# CONFIG_SND_AD1889 is not set
1233# CONFIG_SND_ALS300 is not set
1234CONFIG_SND_ALI5451=m 167CONFIG_SND_ALI5451=m
1235# CONFIG_SND_ATIIXP is not set
1236# CONFIG_SND_ATIIXP_MODEM is not set
1237# CONFIG_SND_AU8810 is not set
1238# CONFIG_SND_AU8820 is not set
1239# CONFIG_SND_AU8830 is not set
1240# CONFIG_SND_AW2 is not set
1241# CONFIG_SND_AZT3328 is not set
1242# CONFIG_SND_BT87X is not set
1243# CONFIG_SND_CA0106 is not set
1244# CONFIG_SND_CMIPCI is not set
1245# CONFIG_SND_OXYGEN is not set
1246# CONFIG_SND_CS4281 is not set
1247# CONFIG_SND_CS46XX is not set
1248# CONFIG_SND_CS5535AUDIO is not set
1249# CONFIG_SND_CTXFI is not set
1250# CONFIG_SND_DARLA20 is not set
1251# CONFIG_SND_GINA20 is not set
1252# CONFIG_SND_LAYLA20 is not set
1253# CONFIG_SND_DARLA24 is not set
1254# CONFIG_SND_GINA24 is not set
1255# CONFIG_SND_LAYLA24 is not set
1256# CONFIG_SND_MONA is not set
1257# CONFIG_SND_MIA is not set
1258# CONFIG_SND_ECHO3G is not set
1259# CONFIG_SND_INDIGO is not set
1260# CONFIG_SND_INDIGOIO is not set
1261# CONFIG_SND_INDIGODJ is not set
1262# CONFIG_SND_INDIGOIOX is not set
1263# CONFIG_SND_INDIGODJX is not set
1264# CONFIG_SND_EMU10K1 is not set
1265# CONFIG_SND_EMU10K1X is not set
1266# CONFIG_SND_ENS1370 is not set
1267# CONFIG_SND_ENS1371 is not set
1268# CONFIG_SND_ES1938 is not set
1269# CONFIG_SND_ES1968 is not set
1270# CONFIG_SND_FM801 is not set
1271# CONFIG_SND_HDA_INTEL is not set
1272# CONFIG_SND_HDSP is not set
1273# CONFIG_SND_HDSPM is not set
1274# CONFIG_SND_HIFIER is not set
1275# CONFIG_SND_ICE1712 is not set
1276# CONFIG_SND_ICE1724 is not set
1277# CONFIG_SND_INTEL8X0 is not set
1278# CONFIG_SND_INTEL8X0M is not set
1279# CONFIG_SND_KORG1212 is not set
1280# CONFIG_SND_LX6464ES is not set
1281# CONFIG_SND_MAESTRO3 is not set
1282# CONFIG_SND_MIXART is not set
1283# CONFIG_SND_NM256 is not set
1284# CONFIG_SND_PCXHR is not set
1285# CONFIG_SND_RIPTIDE is not set
1286# CONFIG_SND_RME32 is not set
1287# CONFIG_SND_RME96 is not set
1288# CONFIG_SND_RME9652 is not set
1289# CONFIG_SND_SONICVIBES is not set
1290# CONFIG_SND_TRIDENT is not set
1291# CONFIG_SND_VIA82XX is not set
1292# CONFIG_SND_VIA82XX_MODEM is not set
1293# CONFIG_SND_VIRTUOSO is not set
1294# CONFIG_SND_VX222 is not set
1295# CONFIG_SND_YMFPCI is not set
1296CONFIG_SND_USB=y
1297# CONFIG_SND_USB_AUDIO is not set
1298# CONFIG_SND_USB_UA101 is not set
1299# CONFIG_SND_USB_CAIAQ is not set
1300CONFIG_SND_SPARC=y
1301# CONFIG_SND_SUN_AMD7930 is not set
1302CONFIG_SND_SUN_CS4231=m 168CONFIG_SND_SUN_CS4231=m
1303# CONFIG_SND_SUN_DBRI is not set
1304# CONFIG_SND_SOC is not set
1305# CONFIG_SOUND_PRIME is not set
1306CONFIG_AC97_BUS=m
1307CONFIG_HID_SUPPORT=y
1308CONFIG_HID=y
1309# CONFIG_HIDRAW is not set
1310
1311#
1312# USB Input Devices
1313#
1314CONFIG_USB_HID=y
1315# CONFIG_HID_PID is not set
1316CONFIG_USB_HIDDEV=y 169CONFIG_USB_HIDDEV=y
1317
1318#
1319# Special HID drivers
1320#
1321# CONFIG_HID_3M_PCT is not set
1322CONFIG_HID_A4TECH=y
1323CONFIG_HID_APPLE=y
1324CONFIG_HID_BELKIN=y
1325# CONFIG_HID_CANDO is not set
1326CONFIG_HID_CHERRY=y
1327CONFIG_HID_CHICONY=y
1328# CONFIG_HID_PRODIKEYS is not set
1329CONFIG_HID_CYPRESS=y
1330CONFIG_HID_DRAGONRISE=y 170CONFIG_HID_DRAGONRISE=y
1331# CONFIG_DRAGONRISE_FF is not set
1332# CONFIG_HID_EGALAX is not set
1333CONFIG_HID_EZKEY=y
1334CONFIG_HID_KYE=y
1335CONFIG_HID_GYRATION=y 171CONFIG_HID_GYRATION=y
1336CONFIG_HID_TWINHAN=y 172CONFIG_HID_TWINHAN=y
1337CONFIG_HID_KENSINGTON=y
1338CONFIG_HID_LOGITECH=y
1339# CONFIG_LOGITECH_FF is not set
1340# CONFIG_LOGIRUMBLEPAD2_FF is not set
1341# CONFIG_LOGIG940_FF is not set
1342CONFIG_HID_MICROSOFT=y
1343# CONFIG_HID_MOSART is not set
1344CONFIG_HID_MONTEREY=y
1345CONFIG_HID_NTRIG=y 173CONFIG_HID_NTRIG=y
1346CONFIG_HID_ORTEK=y 174CONFIG_HID_ORTEK=y
1347CONFIG_HID_PANTHERLORD=y 175CONFIG_HID_PANTHERLORD=y
1348# CONFIG_PANTHERLORD_FF is not set
1349CONFIG_HID_PETALYNX=y 176CONFIG_HID_PETALYNX=y
1350# CONFIG_HID_PICOLCD is not set
1351# CONFIG_HID_QUANTA is not set
1352# CONFIG_HID_ROCCAT_KONE is not set
1353CONFIG_HID_SAMSUNG=y 177CONFIG_HID_SAMSUNG=y
1354CONFIG_HID_SONY=y 178CONFIG_HID_SONY=y
1355# CONFIG_HID_STANTUM is not set
1356CONFIG_HID_SUNPLUS=y 179CONFIG_HID_SUNPLUS=y
1357CONFIG_HID_GREENASIA=y 180CONFIG_HID_GREENASIA=y
1358# CONFIG_GREENASIA_FF is not set
1359CONFIG_HID_SMARTJOYPLUS=y 181CONFIG_HID_SMARTJOYPLUS=y
1360# CONFIG_SMARTJOYPLUS_FF is not set
1361CONFIG_HID_TOPSEED=y 182CONFIG_HID_TOPSEED=y
1362CONFIG_HID_THRUSTMASTER=y 183CONFIG_HID_THRUSTMASTER=y
1363# CONFIG_THRUSTMASTER_FF is not set
1364CONFIG_HID_ZEROPLUS=y 184CONFIG_HID_ZEROPLUS=y
1365# CONFIG_ZEROPLUS_FF is not set
1366# CONFIG_HID_ZYDACRON is not set
1367CONFIG_USB_SUPPORT=y
1368CONFIG_USB_ARCH_HAS_HCD=y
1369CONFIG_USB_ARCH_HAS_OHCI=y
1370CONFIG_USB_ARCH_HAS_EHCI=y
1371CONFIG_USB=y 185CONFIG_USB=y
1372# CONFIG_USB_DEBUG is not set
1373# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
1374
1375#
1376# Miscellaneous USB options
1377#
1378# CONFIG_USB_DEVICEFS is not set
1379# CONFIG_USB_DEVICE_CLASS is not set 186# CONFIG_USB_DEVICE_CLASS is not set
1380# CONFIG_USB_DYNAMIC_MINORS is not set
1381# CONFIG_USB_MON is not set
1382# CONFIG_USB_WUSB is not set
1383# CONFIG_USB_WUSB_CBAF is not set
1384
1385#
1386# USB Host Controller Drivers
1387#
1388# CONFIG_USB_C67X00_HCD is not set
1389# CONFIG_USB_XHCI_HCD is not set
1390CONFIG_USB_EHCI_HCD=m 187CONFIG_USB_EHCI_HCD=m
1391# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
1392# CONFIG_USB_EHCI_TT_NEWSCHED is not set 188# CONFIG_USB_EHCI_TT_NEWSCHED is not set
1393# CONFIG_USB_OXU210HP_HCD is not set
1394# CONFIG_USB_ISP116X_HCD is not set
1395# CONFIG_USB_ISP1760_HCD is not set
1396# CONFIG_USB_ISP1362_HCD is not set
1397CONFIG_USB_OHCI_HCD=y 189CONFIG_USB_OHCI_HCD=y
1398# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
1399# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
1400CONFIG_USB_OHCI_LITTLE_ENDIAN=y
1401CONFIG_USB_UHCI_HCD=m 190CONFIG_USB_UHCI_HCD=m
1402# CONFIG_USB_SL811_HCD is not set
1403# CONFIG_USB_R8A66597_HCD is not set
1404# CONFIG_USB_WHCI_HCD is not set
1405# CONFIG_USB_HWA_HCD is not set
1406
1407#
1408# USB Device Class drivers
1409#
1410# CONFIG_USB_ACM is not set
1411# CONFIG_USB_PRINTER is not set
1412# CONFIG_USB_WDM is not set
1413# CONFIG_USB_TMC is not set
1414
1415#
1416# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
1417#
1418
1419#
1420# also be needed; see USB_STORAGE Help for more info
1421#
1422CONFIG_USB_STORAGE=m 191CONFIG_USB_STORAGE=m
1423# CONFIG_USB_STORAGE_DEBUG is not set
1424# CONFIG_USB_STORAGE_DATAFAB is not set
1425# CONFIG_USB_STORAGE_FREECOM is not set
1426# CONFIG_USB_STORAGE_ISD200 is not set
1427# CONFIG_USB_STORAGE_USBAT is not set
1428# CONFIG_USB_STORAGE_SDDR09 is not set
1429# CONFIG_USB_STORAGE_SDDR55 is not set
1430# CONFIG_USB_STORAGE_JUMPSHOT is not set
1431# CONFIG_USB_STORAGE_ALAUDA is not set
1432# CONFIG_USB_STORAGE_ONETOUCH is not set
1433# CONFIG_USB_STORAGE_KARMA is not set
1434# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
1435# CONFIG_USB_LIBUSUAL is not set
1436
1437#
1438# USB Imaging devices
1439#
1440# CONFIG_USB_MDC800 is not set
1441# CONFIG_USB_MICROTEK is not set
1442
1443#
1444# USB port drivers
1445#
1446# CONFIG_USB_SERIAL is not set
1447
1448#
1449# USB Miscellaneous drivers
1450#
1451# CONFIG_USB_EMI62 is not set
1452# CONFIG_USB_EMI26 is not set
1453# CONFIG_USB_ADUTUX is not set
1454# CONFIG_USB_SEVSEG is not set
1455# CONFIG_USB_RIO500 is not set
1456# CONFIG_USB_LEGOTOWER is not set
1457# CONFIG_USB_LCD is not set
1458# CONFIG_USB_LED is not set
1459# CONFIG_USB_CYPRESS_CY7C63 is not set
1460# CONFIG_USB_CYTHERM is not set
1461# CONFIG_USB_IDMOUSE is not set
1462# CONFIG_USB_FTDI_ELAN is not set
1463# CONFIG_USB_APPLEDISPLAY is not set
1464# CONFIG_USB_SISUSBVGA is not set
1465# CONFIG_USB_LD is not set
1466# CONFIG_USB_TRANCEVIBRATOR is not set
1467# CONFIG_USB_IOWARRIOR is not set
1468# CONFIG_USB_TEST is not set
1469# CONFIG_USB_ISIGHTFW is not set
1470# CONFIG_USB_GADGET is not set
1471
1472#
1473# OTG and related infrastructure
1474#
1475# CONFIG_NOP_USB_XCEIV is not set
1476# CONFIG_UWB is not set
1477# CONFIG_MMC is not set
1478# CONFIG_MEMSTICK is not set
1479# CONFIG_NEW_LEDS is not set
1480# CONFIG_ACCESSIBILITY is not set
1481# CONFIG_INFINIBAND is not set
1482CONFIG_RTC_LIB=y
1483CONFIG_RTC_CLASS=y
1484CONFIG_RTC_HCTOSYS=y
1485CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
1486# CONFIG_RTC_DEBUG is not set
1487
1488#
1489# RTC interfaces
1490#
1491CONFIG_RTC_INTF_SYSFS=y
1492CONFIG_RTC_INTF_PROC=y
1493CONFIG_RTC_INTF_DEV=y
1494# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
1495# CONFIG_RTC_DRV_TEST is not set
1496
1497#
1498# I2C RTC drivers
1499#
1500# CONFIG_RTC_DRV_DS1307 is not set
1501# CONFIG_RTC_DRV_DS1374 is not set
1502# CONFIG_RTC_DRV_DS1672 is not set
1503# CONFIG_RTC_DRV_MAX6900 is not set
1504# CONFIG_RTC_DRV_RS5C372 is not set
1505# CONFIG_RTC_DRV_ISL1208 is not set
1506# CONFIG_RTC_DRV_X1205 is not set
1507# CONFIG_RTC_DRV_PCF8563 is not set
1508# CONFIG_RTC_DRV_PCF8583 is not set
1509# CONFIG_RTC_DRV_M41T80 is not set
1510# CONFIG_RTC_DRV_BQ32K is not set
1511# CONFIG_RTC_DRV_S35390A is not set
1512# CONFIG_RTC_DRV_FM3130 is not set
1513# CONFIG_RTC_DRV_RX8581 is not set
1514# CONFIG_RTC_DRV_RX8025 is not set
1515
1516#
1517# SPI RTC drivers
1518#
1519
1520#
1521# Platform RTC drivers
1522#
1523CONFIG_RTC_DRV_CMOS=y
1524# CONFIG_RTC_DRV_DS1286 is not set
1525# CONFIG_RTC_DRV_DS1511 is not set
1526# CONFIG_RTC_DRV_DS1553 is not set
1527# CONFIG_RTC_DRV_DS1742 is not set
1528# CONFIG_RTC_DRV_STK17TA8 is not set
1529# CONFIG_RTC_DRV_M48T86 is not set
1530# CONFIG_RTC_DRV_M48T35 is not set
1531CONFIG_RTC_DRV_M48T59=y
1532# CONFIG_RTC_DRV_MSM6242 is not set
1533CONFIG_RTC_DRV_BQ4802=y
1534# CONFIG_RTC_DRV_RP5C01 is not set
1535# CONFIG_RTC_DRV_V3020 is not set
1536
1537#
1538# on-CPU RTC drivers
1539#
1540CONFIG_RTC_DRV_SUN4V=y
1541CONFIG_RTC_DRV_STARFIRE=y
1542# CONFIG_DMADEVICES is not set
1543# CONFIG_AUXDISPLAY is not set
1544# CONFIG_UIO is not set
1545# CONFIG_STAGING is not set
1546
1547#
1548# Misc Linux/SPARC drivers
1549#
1550CONFIG_SUN_OPENPROMIO=y 192CONFIG_SUN_OPENPROMIO=y
1551# CONFIG_OBP_FLASH is not set
1552# CONFIG_TADPOLE_TS102_UCTRL is not set
1553# CONFIG_BBC_I2C is not set
1554# CONFIG_ENVCTRL is not set
1555# CONFIG_DISPLAY7SEG is not set
1556
1557#
1558# File systems
1559#
1560CONFIG_EXT2_FS=y 193CONFIG_EXT2_FS=y
1561CONFIG_EXT2_FS_XATTR=y 194CONFIG_EXT2_FS_XATTR=y
1562CONFIG_EXT2_FS_POSIX_ACL=y 195CONFIG_EXT2_FS_POSIX_ACL=y
1563CONFIG_EXT2_FS_SECURITY=y 196CONFIG_EXT2_FS_SECURITY=y
1564# CONFIG_EXT2_FS_XIP is not set
1565CONFIG_EXT3_FS=y 197CONFIG_EXT3_FS=y
1566# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set 198# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
1567CONFIG_EXT3_FS_XATTR=y
1568CONFIG_EXT3_FS_POSIX_ACL=y 199CONFIG_EXT3_FS_POSIX_ACL=y
1569CONFIG_EXT3_FS_SECURITY=y 200CONFIG_EXT3_FS_SECURITY=y
1570# CONFIG_EXT4_FS is not set
1571CONFIG_JBD=y
1572# CONFIG_JBD_DEBUG is not set
1573CONFIG_FS_MBCACHE=y
1574# CONFIG_REISERFS_FS is not set
1575# CONFIG_JFS_FS is not set
1576CONFIG_FS_POSIX_ACL=y
1577# CONFIG_XFS_FS is not set
1578# CONFIG_GFS2_FS is not set
1579# CONFIG_OCFS2_FS is not set
1580# CONFIG_BTRFS_FS is not set
1581# CONFIG_NILFS2_FS is not set
1582CONFIG_FILE_LOCKING=y
1583CONFIG_FSNOTIFY=y
1584CONFIG_DNOTIFY=y
1585CONFIG_INOTIFY=y
1586CONFIG_INOTIFY_USER=y
1587# CONFIG_QUOTA is not set
1588# CONFIG_AUTOFS_FS is not set
1589# CONFIG_AUTOFS4_FS is not set
1590# CONFIG_FUSE_FS is not set
1591
1592#
1593# Caches
1594#
1595# CONFIG_FSCACHE is not set
1596
1597#
1598# CD-ROM/DVD Filesystems
1599#
1600# CONFIG_ISO9660_FS is not set
1601# CONFIG_UDF_FS is not set
1602
1603#
1604# DOS/FAT/NT Filesystems
1605#
1606# CONFIG_MSDOS_FS is not set
1607# CONFIG_VFAT_FS is not set
1608# CONFIG_NTFS_FS is not set
1609
1610#
1611# Pseudo filesystems
1612#
1613CONFIG_PROC_FS=y
1614CONFIG_PROC_KCORE=y 201CONFIG_PROC_KCORE=y
1615CONFIG_PROC_SYSCTL=y
1616CONFIG_PROC_PAGE_MONITOR=y
1617CONFIG_SYSFS=y
1618CONFIG_TMPFS=y 202CONFIG_TMPFS=y
1619# CONFIG_TMPFS_POSIX_ACL is not set
1620CONFIG_HUGETLBFS=y 203CONFIG_HUGETLBFS=y
1621CONFIG_HUGETLB_PAGE=y
1622# CONFIG_CONFIGFS_FS is not set
1623CONFIG_MISC_FILESYSTEMS=y
1624# CONFIG_ADFS_FS is not set
1625# CONFIG_AFFS_FS is not set
1626# CONFIG_ECRYPT_FS is not set
1627# CONFIG_HFS_FS is not set
1628# CONFIG_HFSPLUS_FS is not set
1629# CONFIG_BEFS_FS is not set
1630# CONFIG_BFS_FS is not set
1631# CONFIG_EFS_FS is not set
1632# CONFIG_LOGFS is not set
1633# CONFIG_CRAMFS is not set
1634# CONFIG_SQUASHFS is not set
1635# CONFIG_VXFS_FS is not set
1636# CONFIG_MINIX_FS is not set
1637# CONFIG_OMFS_FS is not set
1638# CONFIG_HPFS_FS is not set
1639# CONFIG_QNX4FS_FS is not set
1640# CONFIG_ROMFS_FS is not set
1641# CONFIG_SYSV_FS is not set
1642# CONFIG_UFS_FS is not set
1643CONFIG_NETWORK_FILESYSTEMS=y
1644# CONFIG_NFS_FS is not set
1645# CONFIG_NFSD is not set
1646# CONFIG_SMB_FS is not set
1647# CONFIG_CEPH_FS is not set
1648# CONFIG_CIFS is not set
1649# CONFIG_NCP_FS is not set
1650# CONFIG_CODA_FS is not set
1651# CONFIG_AFS_FS is not set
1652
1653#
1654# Partition Types
1655#
1656# CONFIG_PARTITION_ADVANCED is not set
1657CONFIG_MSDOS_PARTITION=y
1658CONFIG_SUN_PARTITION=y
1659CONFIG_NLS=y
1660CONFIG_NLS_DEFAULT="iso8859-1"
1661# CONFIG_NLS_CODEPAGE_437 is not set
1662# CONFIG_NLS_CODEPAGE_737 is not set
1663# CONFIG_NLS_CODEPAGE_775 is not set
1664# CONFIG_NLS_CODEPAGE_850 is not set
1665# CONFIG_NLS_CODEPAGE_852 is not set
1666# CONFIG_NLS_CODEPAGE_855 is not set
1667# CONFIG_NLS_CODEPAGE_857 is not set
1668# CONFIG_NLS_CODEPAGE_860 is not set
1669# CONFIG_NLS_CODEPAGE_861 is not set
1670# CONFIG_NLS_CODEPAGE_862 is not set
1671# CONFIG_NLS_CODEPAGE_863 is not set
1672# CONFIG_NLS_CODEPAGE_864 is not set
1673# CONFIG_NLS_CODEPAGE_865 is not set
1674# CONFIG_NLS_CODEPAGE_866 is not set
1675# CONFIG_NLS_CODEPAGE_869 is not set
1676# CONFIG_NLS_CODEPAGE_936 is not set
1677# CONFIG_NLS_CODEPAGE_950 is not set
1678# CONFIG_NLS_CODEPAGE_932 is not set
1679# CONFIG_NLS_CODEPAGE_949 is not set
1680# CONFIG_NLS_CODEPAGE_874 is not set
1681# CONFIG_NLS_ISO8859_8 is not set
1682# CONFIG_NLS_CODEPAGE_1250 is not set
1683# CONFIG_NLS_CODEPAGE_1251 is not set
1684# CONFIG_NLS_ASCII is not set
1685# CONFIG_NLS_ISO8859_1 is not set
1686# CONFIG_NLS_ISO8859_2 is not set
1687# CONFIG_NLS_ISO8859_3 is not set
1688# CONFIG_NLS_ISO8859_4 is not set
1689# CONFIG_NLS_ISO8859_5 is not set
1690# CONFIG_NLS_ISO8859_6 is not set
1691# CONFIG_NLS_ISO8859_7 is not set
1692# CONFIG_NLS_ISO8859_9 is not set
1693# CONFIG_NLS_ISO8859_13 is not set
1694# CONFIG_NLS_ISO8859_14 is not set
1695# CONFIG_NLS_ISO8859_15 is not set
1696# CONFIG_NLS_KOI8_R is not set
1697# CONFIG_NLS_KOI8_U is not set
1698# CONFIG_NLS_UTF8 is not set
1699# CONFIG_DLM is not set
1700
1701#
1702# Kernel hacking
1703#
1704CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1705CONFIG_PRINTK_TIME=y 204CONFIG_PRINTK_TIME=y
1706# CONFIG_ENABLE_WARN_DEPRECATED is not set 205# CONFIG_ENABLE_WARN_DEPRECATED is not set
1707CONFIG_ENABLE_MUST_CHECK=y
1708CONFIG_FRAME_WARN=2048
1709CONFIG_MAGIC_SYSRQ=y 206CONFIG_MAGIC_SYSRQ=y
1710# CONFIG_STRIP_ASM_SYMS is not set
1711# CONFIG_UNUSED_SYMBOLS is not set
1712CONFIG_DEBUG_FS=y
1713# CONFIG_HEADERS_CHECK is not set
1714CONFIG_DEBUG_KERNEL=y 207CONFIG_DEBUG_KERNEL=y
1715# CONFIG_DEBUG_SHIRQ is not set 208CONFIG_LOCKUP_DETECTOR=y
1716CONFIG_DETECT_SOFTLOCKUP=y
1717# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
1718CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
1719CONFIG_DETECT_HUNG_TASK=y 209CONFIG_DETECT_HUNG_TASK=y
1720# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
1721CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
1722# CONFIG_SCHED_DEBUG is not set 210# CONFIG_SCHED_DEBUG is not set
1723CONFIG_SCHEDSTATS=y 211CONFIG_SCHEDSTATS=y
1724# CONFIG_TIMER_STATS is not set
1725# CONFIG_DEBUG_OBJECTS is not set
1726# CONFIG_DEBUG_SLAB is not set
1727# CONFIG_DEBUG_KMEMLEAK is not set
1728# CONFIG_DEBUG_RT_MUTEXES is not set
1729# CONFIG_RT_MUTEX_TESTER is not set
1730# CONFIG_DEBUG_SPINLOCK is not set
1731# CONFIG_DEBUG_MUTEXES is not set
1732# CONFIG_DEBUG_LOCK_ALLOC is not set
1733# CONFIG_PROVE_LOCKING is not set
1734# CONFIG_LOCK_STAT is not set
1735# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1736# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
1737CONFIG_STACKTRACE=y
1738# CONFIG_DEBUG_KOBJECT is not set
1739CONFIG_DEBUG_BUGVERBOSE=y
1740# CONFIG_DEBUG_INFO is not set
1741# CONFIG_DEBUG_VM is not set
1742# CONFIG_DEBUG_WRITECOUNT is not set
1743CONFIG_DEBUG_MEMORY_INIT=y
1744# CONFIG_DEBUG_LIST is not set
1745# CONFIG_DEBUG_SG is not set
1746# CONFIG_DEBUG_NOTIFIERS is not set
1747# CONFIG_DEBUG_CREDENTIALS is not set
1748# CONFIG_BOOT_PRINTK_DELAY is not set
1749# CONFIG_RCU_TORTURE_TEST is not set
1750# CONFIG_RCU_CPU_STALL_DETECTOR is not set 212# CONFIG_RCU_CPU_STALL_DETECTOR is not set
1751# CONFIG_KPROBES_SANITY_TEST is not set
1752# CONFIG_BACKTRACE_SELF_TEST is not set
1753# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
1754# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
1755# CONFIG_LKDTM is not set
1756# CONFIG_FAULT_INJECTION is not set
1757# CONFIG_LATENCYTOP is not set
1758CONFIG_SYSCTL_SYSCALL_CHECK=y 213CONFIG_SYSCTL_SYSCALL_CHECK=y
1759# CONFIG_DEBUG_PAGEALLOC is not set
1760CONFIG_NOP_TRACER=y
1761CONFIG_HAVE_FUNCTION_TRACER=y
1762CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
1763CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
1764CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
1765CONFIG_HAVE_DYNAMIC_FTRACE=y
1766CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
1767CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
1768CONFIG_RING_BUFFER=y
1769CONFIG_EVENT_TRACING=y
1770CONFIG_CONTEXT_SWITCH_TRACER=y
1771CONFIG_RING_BUFFER_ALLOW_SWAP=y
1772CONFIG_TRACING=y
1773CONFIG_GENERIC_TRACER=y
1774CONFIG_TRACING_SUPPORT=y
1775CONFIG_FTRACE=y
1776# CONFIG_FUNCTION_TRACER is not set
1777# CONFIG_IRQSOFF_TRACER is not set
1778# CONFIG_SCHED_TRACER is not set
1779# CONFIG_FTRACE_SYSCALLS is not set
1780# CONFIG_BOOT_TRACER is not set
1781CONFIG_BRANCH_PROFILE_NONE=y
1782# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
1783# CONFIG_PROFILE_ALL_BRANCHES is not set
1784# CONFIG_STACK_TRACER is not set
1785# CONFIG_KMEMTRACE is not set
1786# CONFIG_WORKQUEUE_TRACER is not set
1787CONFIG_BLK_DEV_IO_TRACE=y 214CONFIG_BLK_DEV_IO_TRACE=y
1788# CONFIG_FTRACE_STARTUP_TEST is not set
1789# CONFIG_RING_BUFFER_BENCHMARK is not set
1790# CONFIG_DYNAMIC_DEBUG is not set
1791# CONFIG_DMA_API_DEBUG is not set
1792# CONFIG_ATOMIC64_SELFTEST is not set
1793# CONFIG_SAMPLES is not set
1794CONFIG_HAVE_ARCH_KGDB=y
1795# CONFIG_KGDB is not set
1796# CONFIG_DEBUG_STACK_USAGE is not set
1797# CONFIG_DEBUG_DCFLUSH is not set
1798# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
1799
1800#
1801# Security options
1802#
1803CONFIG_KEYS=y 215CONFIG_KEYS=y
1804# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
1805# CONFIG_SECURITY is not set
1806# CONFIG_SECURITYFS is not set
1807# CONFIG_DEFAULT_SECURITY_SELINUX is not set
1808# CONFIG_DEFAULT_SECURITY_SMACK is not set
1809# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
1810CONFIG_DEFAULT_SECURITY_DAC=y
1811CONFIG_DEFAULT_SECURITY=""
1812CONFIG_XOR_BLOCKS=m
1813CONFIG_ASYNC_CORE=m
1814CONFIG_ASYNC_MEMCPY=m
1815CONFIG_ASYNC_XOR=m
1816CONFIG_ASYNC_PQ=m
1817CONFIG_ASYNC_RAID6_RECOV=m
1818CONFIG_CRYPTO=y
1819
1820#
1821# Crypto core or helper
1822#
1823CONFIG_CRYPTO_ALGAPI=y
1824CONFIG_CRYPTO_ALGAPI2=y
1825CONFIG_CRYPTO_AEAD=y
1826CONFIG_CRYPTO_AEAD2=y
1827CONFIG_CRYPTO_BLKCIPHER=y
1828CONFIG_CRYPTO_BLKCIPHER2=y
1829CONFIG_CRYPTO_HASH=y
1830CONFIG_CRYPTO_HASH2=y
1831CONFIG_CRYPTO_RNG2=y
1832CONFIG_CRYPTO_PCOMP=y
1833CONFIG_CRYPTO_MANAGER=y
1834CONFIG_CRYPTO_MANAGER2=y
1835CONFIG_CRYPTO_GF128MUL=m
1836CONFIG_CRYPTO_NULL=m 216CONFIG_CRYPTO_NULL=m
1837# CONFIG_CRYPTO_PCRYPT is not set
1838CONFIG_CRYPTO_WORKQUEUE=y
1839# CONFIG_CRYPTO_CRYPTD is not set
1840CONFIG_CRYPTO_AUTHENC=y
1841CONFIG_CRYPTO_TEST=m 217CONFIG_CRYPTO_TEST=m
1842
1843#
1844# Authenticated Encryption with Associated Data
1845#
1846# CONFIG_CRYPTO_CCM is not set
1847# CONFIG_CRYPTO_GCM is not set
1848# CONFIG_CRYPTO_SEQIV is not set
1849
1850#
1851# Block modes
1852#
1853CONFIG_CRYPTO_CBC=y
1854# CONFIG_CRYPTO_CTR is not set
1855# CONFIG_CRYPTO_CTS is not set
1856CONFIG_CRYPTO_ECB=m
1857CONFIG_CRYPTO_LRW=m 218CONFIG_CRYPTO_LRW=m
1858CONFIG_CRYPTO_PCBC=m 219CONFIG_CRYPTO_PCBC=m
1859CONFIG_CRYPTO_XTS=m 220CONFIG_CRYPTO_XTS=m
1860
1861#
1862# Hash modes
1863#
1864CONFIG_CRYPTO_HMAC=y
1865CONFIG_CRYPTO_XCBC=y 221CONFIG_CRYPTO_XCBC=y
1866# CONFIG_CRYPTO_VMAC is not set
1867
1868#
1869# Digest
1870#
1871CONFIG_CRYPTO_CRC32C=m
1872# CONFIG_CRYPTO_GHASH is not set
1873CONFIG_CRYPTO_MD4=y 222CONFIG_CRYPTO_MD4=y
1874CONFIG_CRYPTO_MD5=y
1875CONFIG_CRYPTO_MICHAEL_MIC=m 223CONFIG_CRYPTO_MICHAEL_MIC=m
1876# CONFIG_CRYPTO_RMD128 is not set
1877# CONFIG_CRYPTO_RMD160 is not set
1878# CONFIG_CRYPTO_RMD256 is not set
1879# CONFIG_CRYPTO_RMD320 is not set
1880CONFIG_CRYPTO_SHA1=y
1881CONFIG_CRYPTO_SHA256=m 224CONFIG_CRYPTO_SHA256=m
1882CONFIG_CRYPTO_SHA512=m 225CONFIG_CRYPTO_SHA512=m
1883CONFIG_CRYPTO_TGR192=m 226CONFIG_CRYPTO_TGR192=m
1884CONFIG_CRYPTO_WP512=m 227CONFIG_CRYPTO_WP512=m
1885
1886#
1887# Ciphers
1888#
1889CONFIG_CRYPTO_AES=m 228CONFIG_CRYPTO_AES=m
1890CONFIG_CRYPTO_ANUBIS=m 229CONFIG_CRYPTO_ANUBIS=m
1891CONFIG_CRYPTO_ARC4=m
1892CONFIG_CRYPTO_BLOWFISH=m 230CONFIG_CRYPTO_BLOWFISH=m
1893CONFIG_CRYPTO_CAMELLIA=m 231CONFIG_CRYPTO_CAMELLIA=m
1894CONFIG_CRYPTO_CAST5=m 232CONFIG_CRYPTO_CAST5=m
1895CONFIG_CRYPTO_CAST6=m 233CONFIG_CRYPTO_CAST6=m
1896CONFIG_CRYPTO_DES=y
1897CONFIG_CRYPTO_FCRYPT=m 234CONFIG_CRYPTO_FCRYPT=m
1898CONFIG_CRYPTO_KHAZAD=m 235CONFIG_CRYPTO_KHAZAD=m
1899# CONFIG_CRYPTO_SALSA20 is not set
1900CONFIG_CRYPTO_SEED=m 236CONFIG_CRYPTO_SEED=m
1901CONFIG_CRYPTO_SERPENT=m 237CONFIG_CRYPTO_SERPENT=m
1902CONFIG_CRYPTO_TEA=m 238CONFIG_CRYPTO_TEA=m
1903CONFIG_CRYPTO_TWOFISH=m 239CONFIG_CRYPTO_TWOFISH=m
1904CONFIG_CRYPTO_TWOFISH_COMMON=m
1905
1906#
1907# Compression
1908#
1909CONFIG_CRYPTO_DEFLATE=y
1910# CONFIG_CRYPTO_ZLIB is not set
1911# CONFIG_CRYPTO_LZO is not set
1912
1913#
1914# Random Number Generation
1915#
1916# CONFIG_CRYPTO_ANSI_CPRNG is not set 240# CONFIG_CRYPTO_ANSI_CPRNG is not set
1917CONFIG_CRYPTO_HW=y
1918# CONFIG_CRYPTO_DEV_NIAGARA2 is not set
1919# CONFIG_CRYPTO_DEV_HIFN_795X is not set
1920CONFIG_BINARY_PRINTF=y
1921
1922#
1923# Library routines
1924#
1925CONFIG_BITREVERSE=y
1926CONFIG_GENERIC_FIND_LAST_BIT=y
1927CONFIG_CRC_CCITT=m
1928CONFIG_CRC16=m 241CONFIG_CRC16=m
1929# CONFIG_CRC_T10DIF is not set
1930# CONFIG_CRC_ITU_T is not set
1931CONFIG_CRC32=y
1932# CONFIG_CRC7 is not set
1933CONFIG_LIBCRC32C=m 242CONFIG_LIBCRC32C=m
1934CONFIG_ZLIB_INFLATE=y
1935CONFIG_ZLIB_DEFLATE=y
1936CONFIG_LZO_DECOMPRESS=y
1937CONFIG_DECOMPRESS_GZIP=y
1938CONFIG_DECOMPRESS_BZIP2=y
1939CONFIG_DECOMPRESS_LZMA=y
1940CONFIG_DECOMPRESS_LZO=y
1941CONFIG_HAS_IOMEM=y
1942CONFIG_HAS_IOPORT=y
1943CONFIG_HAS_DMA=y
1944CONFIG_HAVE_LMB=y
1945CONFIG_NLATTR=y
diff --git a/arch/sparc/include/asm/device.h b/arch/sparc/include/asm/device.h
index d4c452147412..daa6a8a5e9cd 100644
--- a/arch/sparc/include/asm/device.h
+++ b/arch/sparc/include/asm/device.h
@@ -6,18 +6,25 @@
6#ifndef _ASM_SPARC_DEVICE_H 6#ifndef _ASM_SPARC_DEVICE_H
7#define _ASM_SPARC_DEVICE_H 7#define _ASM_SPARC_DEVICE_H
8 8
9#include <asm/openprom.h>
10
9struct device_node; 11struct device_node;
10struct of_device; 12struct platform_device;
11 13
12struct dev_archdata { 14struct dev_archdata {
13 void *iommu; 15 void *iommu;
14 void *stc; 16 void *stc;
15 void *host_controller; 17 void *host_controller;
16 struct of_device *op; 18 struct platform_device *op;
17 int numa_node; 19 int numa_node;
18}; 20};
19 21
22extern void of_propagate_archdata(struct platform_device *bus);
23
20struct pdev_archdata { 24struct pdev_archdata {
25 struct resource resource[PROMREG_MAX];
26 unsigned int irqs[PROMINTR_MAX];
27 int num_irqs;
21}; 28};
22 29
23#endif /* _ASM_SPARC_DEVICE_H */ 30#endif /* _ASM_SPARC_DEVICE_H */
diff --git a/arch/sparc/include/asm/dma-mapping.h b/arch/sparc/include/asm/dma-mapping.h
index 4b4a0c0b0ccd..8c0e4f7bb204 100644
--- a/arch/sparc/include/asm/dma-mapping.h
+++ b/arch/sparc/include/asm/dma-mapping.h
@@ -11,7 +11,6 @@ extern int dma_supported(struct device *dev, u64 mask);
11 11
12#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) 12#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
13#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) 13#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
14#define dma_is_consistent(d, h) (1)
15 14
16extern struct dma_map_ops *dma_ops, pci32_dma_ops; 15extern struct dma_map_ops *dma_ops, pci32_dma_ops;
17extern struct bus_type pci_bus_type; 16extern struct bus_type pci_bus_type;
@@ -52,15 +51,6 @@ static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
52 return (dma_addr == DMA_ERROR_CODE); 51 return (dma_addr == DMA_ERROR_CODE);
53} 52}
54 53
55static inline int dma_get_cache_alignment(void)
56{
57 /*
58 * no easy way to get cache size on all processors, so return
59 * the maximum possible, to be safe
60 */
61 return (1 << INTERNODE_CACHE_SHIFT);
62}
63
64static inline int dma_set_mask(struct device *dev, u64 mask) 54static inline int dma_set_mask(struct device *dev, u64 mask)
65{ 55{
66#ifdef CONFIG_PCI 56#ifdef CONFIG_PCI
diff --git a/arch/sparc/include/asm/floppy_64.h b/arch/sparc/include/asm/floppy_64.h
index 8fac3ab22f36..6597ce874d78 100644
--- a/arch/sparc/include/asm/floppy_64.h
+++ b/arch/sparc/include/asm/floppy_64.h
@@ -43,7 +43,7 @@ struct sun_flpy_controller {
43/* You'll only ever find one controller on an Ultra anyways. */ 43/* You'll only ever find one controller on an Ultra anyways. */
44static struct sun_flpy_controller *sun_fdc = (struct sun_flpy_controller *)-1; 44static struct sun_flpy_controller *sun_fdc = (struct sun_flpy_controller *)-1;
45unsigned long fdc_status; 45unsigned long fdc_status;
46static struct of_device *floppy_op = NULL; 46static struct platform_device *floppy_op = NULL;
47 47
48struct sun_floppy_ops { 48struct sun_floppy_ops {
49 unsigned char (*fd_inb) (unsigned long port); 49 unsigned char (*fd_inb) (unsigned long port);
@@ -548,7 +548,7 @@ static unsigned long __init sun_floppy_init(void)
548{ 548{
549 static int initialized = 0; 549 static int initialized = 0;
550 struct device_node *dp; 550 struct device_node *dp;
551 struct of_device *op; 551 struct platform_device *op;
552 const char *prop; 552 const char *prop;
553 char state[128]; 553 char state[128];
554 554
@@ -567,7 +567,7 @@ static unsigned long __init sun_floppy_init(void)
567 } 567 }
568 if (op) { 568 if (op) {
569 floppy_op = op; 569 floppy_op = op;
570 FLOPPY_IRQ = op->irqs[0]; 570 FLOPPY_IRQ = op->archdata.irqs[0];
571 } else { 571 } else {
572 struct device_node *ebus_dp; 572 struct device_node *ebus_dp;
573 void __iomem *auxio_reg; 573 void __iomem *auxio_reg;
@@ -593,7 +593,7 @@ static unsigned long __init sun_floppy_init(void)
593 if (state_prop && !strncmp(state_prop, "disabled", 8)) 593 if (state_prop && !strncmp(state_prop, "disabled", 8))
594 return 0; 594 return 0;
595 595
596 FLOPPY_IRQ = op->irqs[0]; 596 FLOPPY_IRQ = op->archdata.irqs[0];
597 597
598 /* Make sure the high density bit is set, some systems 598 /* Make sure the high density bit is set, some systems
599 * (most notably Ultra5/Ultra10) come up with it clear. 599 * (most notably Ultra5/Ultra10) come up with it clear.
@@ -661,7 +661,7 @@ static unsigned long __init sun_floppy_init(void)
661 config = 0; 661 config = 0;
662 for (dp = ebus_dp->child; dp; dp = dp->sibling) { 662 for (dp = ebus_dp->child; dp; dp = dp->sibling) {
663 if (!strcmp(dp->name, "ecpp")) { 663 if (!strcmp(dp->name, "ecpp")) {
664 struct of_device *ecpp_op; 664 struct platform_device *ecpp_op;
665 665
666 ecpp_op = of_find_device_by_node(dp); 666 ecpp_op = of_find_device_by_node(dp);
667 if (ecpp_op) 667 if (ecpp_op)
diff --git a/arch/sparc/include/asm/highmem.h b/arch/sparc/include/asm/highmem.h
index 3de42e776274..ec23b0a87b98 100644
--- a/arch/sparc/include/asm/highmem.h
+++ b/arch/sparc/include/asm/highmem.h
@@ -71,7 +71,7 @@ static inline void kunmap(struct page *page)
71} 71}
72 72
73extern void *kmap_atomic(struct page *page, enum km_type type); 73extern void *kmap_atomic(struct page *page, enum km_type type);
74extern void kunmap_atomic(void *kvaddr, enum km_type type); 74extern void kunmap_atomic_notypecheck(void *kvaddr, enum km_type type);
75extern struct page *kmap_atomic_to_page(void *vaddr); 75extern struct page *kmap_atomic_to_page(void *vaddr);
76 76
77#define flush_cache_kmaps() flush_cache_all() 77#define flush_cache_kmaps() flush_cache_all()
diff --git a/arch/sparc/include/asm/ioctls.h b/arch/sparc/include/asm/ioctls.h
index 1fe6855c5c18..53f4ee009bdd 100644
--- a/arch/sparc/include/asm/ioctls.h
+++ b/arch/sparc/include/asm/ioctls.h
@@ -80,6 +80,7 @@
80/* Get minor device of a pty master's FD -- Solaris equiv is ISPTM */ 80/* Get minor device of a pty master's FD -- Solaris equiv is ISPTM */
81#define TIOCGPTN _IOR('t', 134, unsigned int) /* Get Pty Number */ 81#define TIOCGPTN _IOR('t', 134, unsigned int) /* Get Pty Number */
82#define TIOCSPTLCK _IOW('t', 135, int) /* Lock/unlock PTY */ 82#define TIOCSPTLCK _IOW('t', 135, int) /* Lock/unlock PTY */
83#define TIOCSIG _IOW('t', 136, int) /* Generate signal on Pty slave */
83 84
84/* Little f */ 85/* Little f */
85#define FIOCLEX _IO('f', 1) 86#define FIOCLEX _IO('f', 1)
@@ -132,5 +133,6 @@
132#define TIOCPKT_START 8 133#define TIOCPKT_START 8
133#define TIOCPKT_NOSTOP 16 134#define TIOCPKT_NOSTOP 16
134#define TIOCPKT_DOSTOP 32 135#define TIOCPKT_DOSTOP 32
136#define TIOCPKT_IOCTL 64
135 137
136#endif /* !(_ASM_SPARC_IOCTLS_H) */ 138#endif /* !(_ASM_SPARC_IOCTLS_H) */
diff --git a/arch/sparc/include/asm/local64.h b/arch/sparc/include/asm/local64.h
new file mode 100644
index 000000000000..36c93b5cc239
--- /dev/null
+++ b/arch/sparc/include/asm/local64.h
@@ -0,0 +1 @@
#include <asm-generic/local64.h>
diff --git a/arch/sparc/include/asm/of_device.h b/arch/sparc/include/asm/of_device.h
deleted file mode 100644
index f320246a0586..000000000000
--- a/arch/sparc/include/asm/of_device.h
+++ /dev/null
@@ -1,38 +0,0 @@
1#ifndef _ASM_SPARC_OF_DEVICE_H
2#define _ASM_SPARC_OF_DEVICE_H
3#ifdef __KERNEL__
4
5#include <linux/device.h>
6#include <linux/of.h>
7#include <linux/mod_devicetable.h>
8#include <asm/openprom.h>
9
10/*
11 * The of_device is a kind of "base class" that is a superset of
12 * struct device for use by devices attached to an OF node and
13 * probed using OF properties.
14 */
15struct of_device
16{
17 struct device dev;
18 struct resource resource[PROMREG_MAX];
19 unsigned int irqs[PROMINTR_MAX];
20 int num_irqs;
21
22 void *sysdata;
23
24 int slot;
25 int portid;
26 int clock_freq;
27};
28
29extern void __iomem *of_ioremap(struct resource *res, unsigned long offset, unsigned long size, char *name);
30extern void of_iounmap(struct resource *res, void __iomem *base, unsigned long size);
31
32extern void of_propagate_archdata(struct of_device *bus);
33
34/* This is just here during the transition */
35#include <linux/of_platform.h>
36
37#endif /* __KERNEL__ */
38#endif /* _ASM_SPARC_OF_DEVICE_H */
diff --git a/arch/sparc/include/asm/of_platform.h b/arch/sparc/include/asm/of_platform.h
deleted file mode 100644
index 90da99059f83..000000000000
--- a/arch/sparc/include/asm/of_platform.h
+++ /dev/null
@@ -1,18 +0,0 @@
1#ifndef ___ASM_SPARC_OF_PLATFORM_H
2#define ___ASM_SPARC_OF_PLATFORM_H
3/*
4 * Copyright (C) 2006 Benjamin Herrenschmidt, IBM Corp.
5 * <benh@kernel.crashing.org>
6 * Modified for Sparc by merging parts of asm/of_device.h
7 * by Stephen Rothwell
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * as published by the Free Software Foundation; either version
12 * 2 of the License, or (at your option) any later version.
13 *
14 */
15
16#define of_bus_type of_platform_bus_type /* for compatibility */
17
18#endif
diff --git a/arch/sparc/include/asm/parport.h b/arch/sparc/include/asm/parport.h
index c333b8d0949b..aa4c82648d88 100644
--- a/arch/sparc/include/asm/parport.h
+++ b/arch/sparc/include/asm/parport.h
@@ -103,7 +103,7 @@ static inline unsigned int get_dma_residue(unsigned int dmanr)
103 return ebus_dma_residue(&sparc_ebus_dmas[dmanr].info); 103 return ebus_dma_residue(&sparc_ebus_dmas[dmanr].info);
104} 104}
105 105
106static int __devinit ecpp_probe(struct of_device *op, const struct of_device_id *match) 106static int __devinit ecpp_probe(struct platform_device *op, const struct of_device_id *match)
107{ 107{
108 unsigned long base = op->resource[0].start; 108 unsigned long base = op->resource[0].start;
109 unsigned long config = op->resource[1].start; 109 unsigned long config = op->resource[1].start;
@@ -116,7 +116,7 @@ static int __devinit ecpp_probe(struct of_device *op, const struct of_device_id
116 parent = op->dev.of_node->parent; 116 parent = op->dev.of_node->parent;
117 if (!strcmp(parent->name, "dma")) { 117 if (!strcmp(parent->name, "dma")) {
118 p = parport_pc_probe_port(base, base + 0x400, 118 p = parport_pc_probe_port(base, base + 0x400,
119 op->irqs[0], PARPORT_DMA_NOFIFO, 119 op->archdata.irqs[0], PARPORT_DMA_NOFIFO,
120 op->dev.parent->parent, 0); 120 op->dev.parent->parent, 0);
121 if (!p) 121 if (!p)
122 return -ENOMEM; 122 return -ENOMEM;
@@ -166,7 +166,7 @@ static int __devinit ecpp_probe(struct of_device *op, const struct of_device_id
166 0, PTR_LPT_REG_DIR); 166 0, PTR_LPT_REG_DIR);
167 167
168 p = parport_pc_probe_port(base, base + 0x400, 168 p = parport_pc_probe_port(base, base + 0x400,
169 op->irqs[0], 169 op->archdata.irqs[0],
170 slot, 170 slot,
171 op->dev.parent, 171 op->dev.parent,
172 0); 172 0);
@@ -192,7 +192,7 @@ out_err:
192 return err; 192 return err;
193} 193}
194 194
195static int __devexit ecpp_remove(struct of_device *op) 195static int __devexit ecpp_remove(struct platform_device *op)
196{ 196{
197 struct parport *p = dev_get_drvdata(&op->dev); 197 struct parport *p = dev_get_drvdata(&op->dev);
198 int slot = p->dma; 198 int slot = p->dma;
@@ -228,6 +228,10 @@ static const struct of_device_id ecpp_match[] = {
228 .name = "parallel", 228 .name = "parallel",
229 .compatible = "ns87317-ecpp", 229 .compatible = "ns87317-ecpp",
230 }, 230 },
231 {
232 .name = "parallel",
233 .compatible = "pnpALI,1533,3",
234 },
231 {}, 235 {},
232}; 236};
233 237
@@ -243,9 +247,7 @@ static struct of_platform_driver ecpp_driver = {
243 247
244static int parport_pc_find_nonpci_ports(int autoirq, int autodma) 248static int parport_pc_find_nonpci_ports(int autoirq, int autodma)
245{ 249{
246 of_register_driver(&ecpp_driver, &of_bus_type); 250 return of_register_platform_driver(&ecpp_driver);
247
248 return 0;
249} 251}
250 252
251#endif /* !(_ASM_SPARC64_PARPORT_H */ 253#endif /* !(_ASM_SPARC64_PARPORT_H */
diff --git a/arch/sparc/include/asm/perf_event.h b/arch/sparc/include/asm/perf_event.h
index 7e2669894ce8..727af70646cb 100644
--- a/arch/sparc/include/asm/perf_event.h
+++ b/arch/sparc/include/asm/perf_event.h
@@ -6,7 +6,30 @@ extern void set_perf_event_pending(void);
6#define PERF_EVENT_INDEX_OFFSET 0 6#define PERF_EVENT_INDEX_OFFSET 0
7 7
8#ifdef CONFIG_PERF_EVENTS 8#ifdef CONFIG_PERF_EVENTS
9#include <asm/ptrace.h>
10
9extern void init_hw_perf_events(void); 11extern void init_hw_perf_events(void);
12
13#define perf_arch_fetch_caller_regs(regs, ip) \
14do { \
15 unsigned long _pstate, _asi, _pil, _i7, _fp; \
16 __asm__ __volatile__("rdpr %%pstate, %0\n\t" \
17 "rd %%asi, %1\n\t" \
18 "rdpr %%pil, %2\n\t" \
19 "mov %%i7, %3\n\t" \
20 "mov %%i6, %4\n\t" \
21 : "=r" (_pstate), \
22 "=r" (_asi), \
23 "=r" (_pil), \
24 "=r" (_i7), \
25 "=r" (_fp)); \
26 (regs)->tstate = (_pstate << 8) | \
27 (_asi << 24) | (_pil << 20); \
28 (regs)->tpc = (ip); \
29 (regs)->tnpc = (regs)->tpc + 4; \
30 (regs)->u_regs[UREG_I6] = _fp; \
31 (regs)->u_regs[UREG_I7] = _i7; \
32} while (0)
10#else 33#else
11static inline void init_hw_perf_events(void) { } 34static inline void init_hw_perf_events(void) { }
12#endif 35#endif
diff --git a/arch/sparc/include/asm/prom.h b/arch/sparc/include/asm/prom.h
index f845828ca4c6..291f12575edd 100644
--- a/arch/sparc/include/asm/prom.h
+++ b/arch/sparc/include/asm/prom.h
@@ -43,20 +43,22 @@ extern int of_getintprop_default(struct device_node *np,
43extern int of_find_in_proplist(const char *list, const char *match, int len); 43extern int of_find_in_proplist(const char *list, const char *match, int len);
44#ifdef CONFIG_NUMA 44#ifdef CONFIG_NUMA
45extern int of_node_to_nid(struct device_node *dp); 45extern int of_node_to_nid(struct device_node *dp);
46#else 46#define of_node_to_nid of_node_to_nid
47#define of_node_to_nid(dp) (-1)
48#endif 47#endif
49 48
50extern void prom_build_devicetree(void); 49extern void prom_build_devicetree(void);
51extern void of_populate_present_mask(void); 50extern void of_populate_present_mask(void);
52extern void of_fill_in_cpu_data(void); 51extern void of_fill_in_cpu_data(void);
53 52
53struct resource;
54extern void __iomem *of_ioremap(struct resource *res, unsigned long offset, unsigned long size, char *name);
55extern void of_iounmap(struct resource *res, void __iomem *base, unsigned long size);
56
54/* These routines are here to provide compatibility with how powerpc 57/* These routines are here to provide compatibility with how powerpc
55 * handles IRQ mapping for OF device nodes. We precompute and permanently 58 * handles IRQ mapping for OF device nodes. We precompute and permanently
56 * register them in the of_device objects, whereas powerpc computes them 59 * register them in the platform_device objects, whereas powerpc computes them
57 * on request. 60 * on request.
58 */ 61 */
59extern unsigned int irq_of_parse_and_map(struct device_node *node, int index);
60static inline void irq_dispose_mapping(unsigned int virq) 62static inline void irq_dispose_mapping(unsigned int virq)
61{ 63{
62} 64}
diff --git a/arch/sparc/include/asm/scatterlist.h b/arch/sparc/include/asm/scatterlist.h
index 433e45f05fd4..92bb638313f8 100644
--- a/arch/sparc/include/asm/scatterlist.h
+++ b/arch/sparc/include/asm/scatterlist.h
@@ -3,7 +3,6 @@
3 3
4#include <asm-generic/scatterlist.h> 4#include <asm-generic/scatterlist.h>
5 5
6#define ISA_DMA_THRESHOLD (~0UL)
7#define ARCH_HAS_SG_CHAIN 6#define ARCH_HAS_SG_CHAIN
8 7
9#endif /* !(_SPARC_SCATTERLIST_H) */ 8#endif /* !(_SPARC_SCATTERLIST_H) */
diff --git a/arch/sparc/include/asm/termbits.h b/arch/sparc/include/asm/termbits.h
index d72dfed1f9d7..23b10ff08df2 100644
--- a/arch/sparc/include/asm/termbits.h
+++ b/arch/sparc/include/asm/termbits.h
@@ -225,6 +225,7 @@ struct ktermios {
225#define FLUSHO 0x00002000 225#define FLUSHO 0x00002000
226#define PENDIN 0x00004000 226#define PENDIN 0x00004000
227#define IEXTEN 0x00008000 227#define IEXTEN 0x00008000
228#define EXTPROC 0x00010000
228 229
229/* modem lines */ 230/* modem lines */
230#define TIOCM_LE 0x001 231#define TIOCM_LE 0x001
diff --git a/arch/sparc/include/asm/uaccess_32.h b/arch/sparc/include/asm/uaccess_32.h
index 25f1d10155e8..8303ac481034 100644
--- a/arch/sparc/include/asm/uaccess_32.h
+++ b/arch/sparc/include/asm/uaccess_32.h
@@ -260,23 +260,8 @@ static inline unsigned long __copy_to_user(void __user *to, const void *from, un
260 return __copy_user(to, (__force void __user *) from, n); 260 return __copy_user(to, (__force void __user *) from, n);
261} 261}
262 262
263extern void copy_from_user_overflow(void)
264#ifdef CONFIG_DEBUG_STRICT_USER_COPY_CHECKS
265 __compiletime_error("copy_from_user() buffer size is not provably correct")
266#else
267 __compiletime_warning("copy_from_user() buffer size is not provably correct")
268#endif
269;
270
271static inline unsigned long copy_from_user(void *to, const void __user *from, unsigned long n) 263static inline unsigned long copy_from_user(void *to, const void __user *from, unsigned long n)
272{ 264{
273 int sz = __compiletime_object_size(to);
274
275 if (unlikely(sz != -1 && sz < n)) {
276 copy_from_user_overflow();
277 return n;
278 }
279
280 if (n && __access_ok((unsigned long) from, n)) 265 if (n && __access_ok((unsigned long) from, n))
281 return __copy_user((__force void __user *) to, from, n); 266 return __copy_user((__force void __user *) to, from, n);
282 else 267 else
diff --git a/arch/sparc/include/asm/uaccess_64.h b/arch/sparc/include/asm/uaccess_64.h
index 2406788bfe5f..3e1449f07798 100644
--- a/arch/sparc/include/asm/uaccess_64.h
+++ b/arch/sparc/include/asm/uaccess_64.h
@@ -205,14 +205,6 @@ __asm__ __volatile__( \
205 205
206extern int __get_user_bad(void); 206extern int __get_user_bad(void);
207 207
208extern void copy_from_user_overflow(void)
209#ifdef CONFIG_DEBUG_STRICT_USER_COPY_CHECKS
210 __compiletime_error("copy_from_user() buffer size is not provably correct")
211#else
212 __compiletime_warning("copy_from_user() buffer size is not provably correct")
213#endif
214;
215
216extern unsigned long __must_check ___copy_from_user(void *to, 208extern unsigned long __must_check ___copy_from_user(void *to,
217 const void __user *from, 209 const void __user *from,
218 unsigned long size); 210 unsigned long size);
@@ -221,16 +213,11 @@ extern unsigned long copy_from_user_fixup(void *to, const void __user *from,
221static inline unsigned long __must_check 213static inline unsigned long __must_check
222copy_from_user(void *to, const void __user *from, unsigned long size) 214copy_from_user(void *to, const void __user *from, unsigned long size)
223{ 215{
224 int sz = __compiletime_object_size(to); 216 unsigned long ret = ___copy_from_user(to, from, size);
225 unsigned long ret = size; 217
226 218 if (unlikely(ret))
227 if (likely(sz == -1 || sz >= size)) { 219 ret = copy_from_user_fixup(to, from, size);
228 ret = ___copy_from_user(to, from, size); 220
229 if (unlikely(ret))
230 ret = copy_from_user_fixup(to, from, size);
231 } else {
232 copy_from_user_overflow();
233 }
234 return ret; 221 return ret;
235} 222}
236#define __copy_from_user copy_from_user 223#define __copy_from_user copy_from_user
diff --git a/arch/sparc/kernel/apc.c b/arch/sparc/kernel/apc.c
index b27476caa133..2c0046ecc715 100644
--- a/arch/sparc/kernel/apc.c
+++ b/arch/sparc/kernel/apc.c
@@ -68,7 +68,7 @@ static void apc_swift_idle(void)
68#endif 68#endif
69} 69}
70 70
71static inline void apc_free(struct of_device *op) 71static inline void apc_free(struct platform_device *op)
72{ 72{
73 of_iounmap(&op->resource[0], regs, resource_size(&op->resource[0])); 73 of_iounmap(&op->resource[0], regs, resource_size(&op->resource[0]));
74} 74}
@@ -136,7 +136,7 @@ static const struct file_operations apc_fops = {
136 136
137static struct miscdevice apc_miscdev = { APC_MINOR, APC_DEVNAME, &apc_fops }; 137static struct miscdevice apc_miscdev = { APC_MINOR, APC_DEVNAME, &apc_fops };
138 138
139static int __devinit apc_probe(struct of_device *op, 139static int __devinit apc_probe(struct platform_device *op,
140 const struct of_device_id *match) 140 const struct of_device_id *match)
141{ 141{
142 int err; 142 int err;
@@ -184,7 +184,7 @@ static struct of_platform_driver apc_driver = {
184 184
185static int __init apc_init(void) 185static int __init apc_init(void)
186{ 186{
187 return of_register_driver(&apc_driver, &of_bus_type); 187 return of_register_platform_driver(&apc_driver);
188} 188}
189 189
190/* This driver is not critical to the boot process 190/* This driver is not critical to the boot process
diff --git a/arch/sparc/kernel/auxio_64.c b/arch/sparc/kernel/auxio_64.c
index ddc84128b3c2..3efd3c5af6a9 100644
--- a/arch/sparc/kernel/auxio_64.c
+++ b/arch/sparc/kernel/auxio_64.c
@@ -102,7 +102,8 @@ static struct of_device_id __initdata auxio_match[] = {
102 102
103MODULE_DEVICE_TABLE(of, auxio_match); 103MODULE_DEVICE_TABLE(of, auxio_match);
104 104
105static int __devinit auxio_probe(struct of_device *dev, const struct of_device_id *match) 105static int __devinit auxio_probe(struct platform_device *dev,
106 const struct of_device_id *match)
106{ 107{
107 struct device_node *dp = dev->dev.of_node; 108 struct device_node *dp = dev->dev.of_node;
108 unsigned long size; 109 unsigned long size;
@@ -142,7 +143,7 @@ static struct of_platform_driver auxio_driver = {
142 143
143static int __init auxio_init(void) 144static int __init auxio_init(void)
144{ 145{
145 return of_register_driver(&auxio_driver, &of_platform_bus_type); 146 return of_register_platform_driver(&auxio_driver);
146} 147}
147 148
148/* Must be after subsys_initcall() so that busses are probed. Must 149/* Must be after subsys_initcall() so that busses are probed. Must
diff --git a/arch/sparc/kernel/central.c b/arch/sparc/kernel/central.c
index 434335f65823..cfa2624c5332 100644
--- a/arch/sparc/kernel/central.c
+++ b/arch/sparc/kernel/central.c
@@ -59,7 +59,7 @@ static int __devinit clock_board_calc_nslots(struct clock_board *p)
59 } 59 }
60} 60}
61 61
62static int __devinit clock_board_probe(struct of_device *op, 62static int __devinit clock_board_probe(struct platform_device *op,
63 const struct of_device_id *match) 63 const struct of_device_id *match)
64{ 64{
65 struct clock_board *p = kzalloc(sizeof(*p), GFP_KERNEL); 65 struct clock_board *p = kzalloc(sizeof(*p), GFP_KERNEL);
@@ -157,7 +157,7 @@ static struct of_platform_driver clock_board_driver = {
157 }, 157 },
158}; 158};
159 159
160static int __devinit fhc_probe(struct of_device *op, 160static int __devinit fhc_probe(struct platform_device *op,
161 const struct of_device_id *match) 161 const struct of_device_id *match)
162{ 162{
163 struct fhc *p = kzalloc(sizeof(*p), GFP_KERNEL); 163 struct fhc *p = kzalloc(sizeof(*p), GFP_KERNEL);
@@ -265,8 +265,8 @@ static struct of_platform_driver fhc_driver = {
265 265
266static int __init sunfire_init(void) 266static int __init sunfire_init(void)
267{ 267{
268 (void) of_register_driver(&fhc_driver, &of_platform_bus_type); 268 (void) of_register_platform_driver(&fhc_driver);
269 (void) of_register_driver(&clock_board_driver, &of_platform_bus_type); 269 (void) of_register_platform_driver(&clock_board_driver);
270 return 0; 270 return 0;
271} 271}
272 272
diff --git a/arch/sparc/kernel/chmc.c b/arch/sparc/kernel/chmc.c
index 870cb65b3f21..08c466ebb32b 100644
--- a/arch/sparc/kernel/chmc.c
+++ b/arch/sparc/kernel/chmc.c
@@ -392,7 +392,7 @@ static void __devinit jbusmc_construct_dimm_groups(struct jbusmc *p,
392 } 392 }
393} 393}
394 394
395static int __devinit jbusmc_probe(struct of_device *op, 395static int __devinit jbusmc_probe(struct platform_device *op,
396 const struct of_device_id *match) 396 const struct of_device_id *match)
397{ 397{
398 const struct linux_prom64_registers *mem_regs; 398 const struct linux_prom64_registers *mem_regs;
@@ -690,7 +690,7 @@ static void chmc_fetch_decode_regs(struct chmc *p)
690 chmc_read_mcreg(p, CHMCTRL_DECODE4)); 690 chmc_read_mcreg(p, CHMCTRL_DECODE4));
691} 691}
692 692
693static int __devinit chmc_probe(struct of_device *op, 693static int __devinit chmc_probe(struct platform_device *op,
694 const struct of_device_id *match) 694 const struct of_device_id *match)
695{ 695{
696 struct device_node *dp = op->dev.of_node; 696 struct device_node *dp = op->dev.of_node;
@@ -765,7 +765,7 @@ out_free:
765 goto out; 765 goto out;
766} 766}
767 767
768static int __devinit us3mc_probe(struct of_device *op, 768static int __devinit us3mc_probe(struct platform_device *op,
769 const struct of_device_id *match) 769 const struct of_device_id *match)
770{ 770{
771 if (mc_type == MC_TYPE_SAFARI) 771 if (mc_type == MC_TYPE_SAFARI)
@@ -775,21 +775,21 @@ static int __devinit us3mc_probe(struct of_device *op,
775 return -ENODEV; 775 return -ENODEV;
776} 776}
777 777
778static void __devexit chmc_destroy(struct of_device *op, struct chmc *p) 778static void __devexit chmc_destroy(struct platform_device *op, struct chmc *p)
779{ 779{
780 list_del(&p->list); 780 list_del(&p->list);
781 of_iounmap(&op->resource[0], p->regs, 0x48); 781 of_iounmap(&op->resource[0], p->regs, 0x48);
782 kfree(p); 782 kfree(p);
783} 783}
784 784
785static void __devexit jbusmc_destroy(struct of_device *op, struct jbusmc *p) 785static void __devexit jbusmc_destroy(struct platform_device *op, struct jbusmc *p)
786{ 786{
787 mc_list_del(&p->list); 787 mc_list_del(&p->list);
788 of_iounmap(&op->resource[0], p->regs, JBUSMC_REGS_SIZE); 788 of_iounmap(&op->resource[0], p->regs, JBUSMC_REGS_SIZE);
789 kfree(p); 789 kfree(p);
790} 790}
791 791
792static int __devexit us3mc_remove(struct of_device *op) 792static int __devexit us3mc_remove(struct platform_device *op)
793{ 793{
794 void *p = dev_get_drvdata(&op->dev); 794 void *p = dev_get_drvdata(&op->dev);
795 795
@@ -848,7 +848,7 @@ static int __init us3mc_init(void)
848 ret = register_dimm_printer(us3mc_dimm_printer); 848 ret = register_dimm_printer(us3mc_dimm_printer);
849 849
850 if (!ret) { 850 if (!ret) {
851 ret = of_register_driver(&us3mc_driver, &of_bus_type); 851 ret = of_register_platform_driver(&us3mc_driver);
852 if (ret) 852 if (ret)
853 unregister_dimm_printer(us3mc_dimm_printer); 853 unregister_dimm_printer(us3mc_dimm_printer);
854 } 854 }
@@ -859,7 +859,7 @@ static void __exit us3mc_cleanup(void)
859{ 859{
860 if (us3mc_platform()) { 860 if (us3mc_platform()) {
861 unregister_dimm_printer(us3mc_dimm_printer); 861 unregister_dimm_printer(us3mc_dimm_printer);
862 of_unregister_driver(&us3mc_driver); 862 of_unregister_platform_driver(&us3mc_driver);
863 } 863 }
864} 864}
865 865
diff --git a/arch/sparc/kernel/helpers.S b/arch/sparc/kernel/helpers.S
index 92090cc9e829..314dd0c9fc5b 100644
--- a/arch/sparc/kernel/helpers.S
+++ b/arch/sparc/kernel/helpers.S
@@ -46,81 +46,6 @@ stack_trace_flush:
46 nop 46 nop
47 .size stack_trace_flush,.-stack_trace_flush 47 .size stack_trace_flush,.-stack_trace_flush
48 48
49#ifdef CONFIG_PERF_EVENTS
50 .globl perf_arch_fetch_caller_regs
51 .type perf_arch_fetch_caller_regs,#function
52perf_arch_fetch_caller_regs:
53 /* We always read the %pstate into %o5 since we will use
54 * that to construct a fake %tstate to store into the regs.
55 */
56 rdpr %pstate, %o5
57 brz,pn %o2, 50f
58 mov %o2, %g7
59
60 /* Turn off interrupts while we walk around the register
61 * window by hand.
62 */
63 wrpr %o5, PSTATE_IE, %pstate
64
65 /* The %canrestore tells us how many register windows are
66 * still live in the chip above us, past that we have to
67 * walk the frame as saved on the stack. We stash away
68 * the %cwp in %g1 so we can return back to the original
69 * register window.
70 */
71 rdpr %cwp, %g1
72 rdpr %canrestore, %g2
73 sub %g1, 1, %g3
74
75 /* We have the skip count in %g7, if it hits zero then
76 * %fp/%i7 are the registers we need. Otherwise if our
77 * %canrestore count maintained in %g2 hits zero we have
78 * to start traversing the stack.
79 */
8010: brz,pn %g2, 4f
81 sub %g2, 1, %g2
82 wrpr %g3, %cwp
83 subcc %g7, 1, %g7
84 bne,pt %xcc, 10b
85 sub %g3, 1, %g3
86
87 /* We found the values we need in the cpu's register
88 * windows.
89 */
90 mov %fp, %g3
91 ba,pt %xcc, 3f
92 mov %i7, %g2
93
9450: mov %fp, %g3
95 ba,pt %xcc, 2f
96 mov %i7, %g2
97
98 /* We hit the end of the valid register windows in the
99 * cpu, start traversing the stack frame.
100 */
1014: mov %fp, %g3
102
10320: ldx [%g3 + STACK_BIAS + RW_V9_I7], %g2
104 subcc %g7, 1, %g7
105 bne,pn %xcc, 20b
106 ldx [%g3 + STACK_BIAS + RW_V9_I6], %g3
107
108 /* Restore the current register window position and
109 * re-enable interrupts.
110 */
1113: wrpr %g1, %cwp
112 wrpr %o5, %pstate
113
1142: stx %g3, [%o0 + PT_V9_FP]
115 sllx %o5, 8, %o5
116 stx %o5, [%o0 + PT_V9_TSTATE]
117 stx %g2, [%o0 + PT_V9_TPC]
118 add %g2, 4, %g2
119 retl
120 stx %g2, [%o0 + PT_V9_TNPC]
121 .size perf_arch_fetch_caller_regs,.-perf_arch_fetch_caller_regs
122#endif /* CONFIG_PERF_EVENTS */
123
124#ifdef CONFIG_SMP 49#ifdef CONFIG_SMP
125 .globl hard_smp_processor_id 50 .globl hard_smp_processor_id
126 .type hard_smp_processor_id,#function 51 .type hard_smp_processor_id,#function
diff --git a/arch/sparc/kernel/ioport.c b/arch/sparc/kernel/ioport.c
index 703e4aa9bc38..41f7e4e0f72a 100644
--- a/arch/sparc/kernel/ioport.c
+++ b/arch/sparc/kernel/ioport.c
@@ -253,7 +253,7 @@ EXPORT_SYMBOL(sbus_set_sbus64);
253static void *sbus_alloc_coherent(struct device *dev, size_t len, 253static void *sbus_alloc_coherent(struct device *dev, size_t len,
254 dma_addr_t *dma_addrp, gfp_t gfp) 254 dma_addr_t *dma_addrp, gfp_t gfp)
255{ 255{
256 struct of_device *op = to_of_device(dev); 256 struct platform_device *op = to_platform_device(dev);
257 unsigned long len_total = (len + PAGE_SIZE-1) & PAGE_MASK; 257 unsigned long len_total = (len + PAGE_SIZE-1) & PAGE_MASK;
258 unsigned long va; 258 unsigned long va;
259 struct resource *res; 259 struct resource *res;
diff --git a/arch/sparc/kernel/of_device_32.c b/arch/sparc/kernel/of_device_32.c
index 47e63f1e719c..2d055a1e9cc2 100644
--- a/arch/sparc/kernel/of_device_32.c
+++ b/arch/sparc/kernel/of_device_32.c
@@ -241,10 +241,10 @@ static int __init use_1to1_mapping(struct device_node *pp)
241 241
242static int of_resource_verbose; 242static int of_resource_verbose;
243 243
244static void __init build_device_resources(struct of_device *op, 244static void __init build_device_resources(struct platform_device *op,
245 struct device *parent) 245 struct device *parent)
246{ 246{
247 struct of_device *p_op; 247 struct platform_device *p_op;
248 struct of_bus *bus; 248 struct of_bus *bus;
249 int na, ns; 249 int na, ns;
250 int index, num_reg; 250 int index, num_reg;
@@ -253,7 +253,7 @@ static void __init build_device_resources(struct of_device *op,
253 if (!parent) 253 if (!parent)
254 return; 254 return;
255 255
256 p_op = to_of_device(parent); 256 p_op = to_platform_device(parent);
257 bus = of_match_bus(p_op->dev.of_node); 257 bus = of_match_bus(p_op->dev.of_node);
258 bus->count_cells(op->dev.of_node, &na, &ns); 258 bus->count_cells(op->dev.of_node, &na, &ns);
259 259
@@ -267,6 +267,8 @@ static void __init build_device_resources(struct of_device *op,
267 /* Conver to num-entries. */ 267 /* Conver to num-entries. */
268 num_reg /= na + ns; 268 num_reg /= na + ns;
269 269
270 op->resource = op->archdata.resource;
271 op->num_resources = num_reg;
270 for (index = 0; index < num_reg; index++) { 272 for (index = 0; index < num_reg; index++) {
271 struct resource *r = &op->resource[index]; 273 struct resource *r = &op->resource[index];
272 u32 addr[OF_MAX_ADDR_CELLS]; 274 u32 addr[OF_MAX_ADDR_CELLS];
@@ -333,10 +335,10 @@ static void __init build_device_resources(struct of_device *op,
333 } 335 }
334} 336}
335 337
336static struct of_device * __init scan_one_device(struct device_node *dp, 338static struct platform_device * __init scan_one_device(struct device_node *dp,
337 struct device *parent) 339 struct device *parent)
338{ 340{
339 struct of_device *op = kzalloc(sizeof(*op), GFP_KERNEL); 341 struct platform_device *op = kzalloc(sizeof(*op), GFP_KERNEL);
340 const struct linux_prom_irqs *intr; 342 const struct linux_prom_irqs *intr;
341 struct dev_archdata *sd; 343 struct dev_archdata *sd;
342 int len, i; 344 int len, i;
@@ -349,27 +351,21 @@ static struct of_device * __init scan_one_device(struct device_node *dp,
349 351
350 op->dev.of_node = dp; 352 op->dev.of_node = dp;
351 353
352 op->clock_freq = of_getintprop_default(dp, "clock-frequency",
353 (25*1000*1000));
354 op->portid = of_getintprop_default(dp, "upa-portid", -1);
355 if (op->portid == -1)
356 op->portid = of_getintprop_default(dp, "portid", -1);
357
358 intr = of_get_property(dp, "intr", &len); 354 intr = of_get_property(dp, "intr", &len);
359 if (intr) { 355 if (intr) {
360 op->num_irqs = len / sizeof(struct linux_prom_irqs); 356 op->archdata.num_irqs = len / sizeof(struct linux_prom_irqs);
361 for (i = 0; i < op->num_irqs; i++) 357 for (i = 0; i < op->archdata.num_irqs; i++)
362 op->irqs[i] = intr[i].pri; 358 op->archdata.irqs[i] = intr[i].pri;
363 } else { 359 } else {
364 const unsigned int *irq = 360 const unsigned int *irq =
365 of_get_property(dp, "interrupts", &len); 361 of_get_property(dp, "interrupts", &len);
366 362
367 if (irq) { 363 if (irq) {
368 op->num_irqs = len / sizeof(unsigned int); 364 op->archdata.num_irqs = len / sizeof(unsigned int);
369 for (i = 0; i < op->num_irqs; i++) 365 for (i = 0; i < op->archdata.num_irqs; i++)
370 op->irqs[i] = irq[i]; 366 op->archdata.irqs[i] = irq[i];
371 } else { 367 } else {
372 op->num_irqs = 0; 368 op->archdata.num_irqs = 0;
373 } 369 }
374 } 370 }
375 if (sparc_cpu_model == sun4d) { 371 if (sparc_cpu_model == sun4d) {
@@ -411,8 +407,8 @@ static struct of_device * __init scan_one_device(struct device_node *dp,
411 goto build_resources; 407 goto build_resources;
412 } 408 }
413 409
414 for (i = 0; i < op->num_irqs; i++) { 410 for (i = 0; i < op->archdata.num_irqs; i++) {
415 int this_irq = op->irqs[i]; 411 int this_irq = op->archdata.irqs[i];
416 int sbusl = pil_to_sbus[this_irq]; 412 int sbusl = pil_to_sbus[this_irq];
417 413
418 if (sbusl) 414 if (sbusl)
@@ -420,7 +416,7 @@ static struct of_device * __init scan_one_device(struct device_node *dp,
420 (sbusl << 2) + 416 (sbusl << 2) +
421 slot); 417 slot);
422 418
423 op->irqs[i] = this_irq; 419 op->archdata.irqs[i] = this_irq;
424 } 420 }
425 } 421 }
426 422
@@ -428,7 +424,7 @@ build_resources:
428 build_device_resources(op, parent); 424 build_device_resources(op, parent);
429 425
430 op->dev.parent = parent; 426 op->dev.parent = parent;
431 op->dev.bus = &of_platform_bus_type; 427 op->dev.bus = &platform_bus_type;
432 if (!parent) 428 if (!parent)
433 dev_set_name(&op->dev, "root"); 429 dev_set_name(&op->dev, "root");
434 else 430 else
@@ -447,7 +443,7 @@ build_resources:
447static void __init scan_tree(struct device_node *dp, struct device *parent) 443static void __init scan_tree(struct device_node *dp, struct device *parent)
448{ 444{
449 while (dp) { 445 while (dp) {
450 struct of_device *op = scan_one_device(dp, parent); 446 struct platform_device *op = scan_one_device(dp, parent);
451 447
452 if (op) 448 if (op)
453 scan_tree(dp->child, &op->dev); 449 scan_tree(dp->child, &op->dev);
@@ -456,30 +452,19 @@ static void __init scan_tree(struct device_node *dp, struct device *parent)
456 } 452 }
457} 453}
458 454
459static void __init scan_of_devices(void) 455static int __init scan_of_devices(void)
460{ 456{
461 struct device_node *root = of_find_node_by_path("/"); 457 struct device_node *root = of_find_node_by_path("/");
462 struct of_device *parent; 458 struct platform_device *parent;
463 459
464 parent = scan_one_device(root, NULL); 460 parent = scan_one_device(root, NULL);
465 if (!parent) 461 if (!parent)
466 return; 462 return 0;
467 463
468 scan_tree(root->child, &parent->dev); 464 scan_tree(root->child, &parent->dev);
465 return 0;
469} 466}
470 467postcore_initcall(scan_of_devices);
471static int __init of_bus_driver_init(void)
472{
473 int err;
474
475 err = of_bus_type_init(&of_platform_bus_type, "of");
476 if (!err)
477 scan_of_devices();
478
479 return err;
480}
481
482postcore_initcall(of_bus_driver_init);
483 468
484static int __init of_debug(char *str) 469static int __init of_debug(char *str)
485{ 470{
diff --git a/arch/sparc/kernel/of_device_64.c b/arch/sparc/kernel/of_device_64.c
index 1dae8079f728..63cd4e5d47c2 100644
--- a/arch/sparc/kernel/of_device_64.c
+++ b/arch/sparc/kernel/of_device_64.c
@@ -310,10 +310,10 @@ static int __init use_1to1_mapping(struct device_node *pp)
310 310
311static int of_resource_verbose; 311static int of_resource_verbose;
312 312
313static void __init build_device_resources(struct of_device *op, 313static void __init build_device_resources(struct platform_device *op,
314 struct device *parent) 314 struct device *parent)
315{ 315{
316 struct of_device *p_op; 316 struct platform_device *p_op;
317 struct of_bus *bus; 317 struct of_bus *bus;
318 int na, ns; 318 int na, ns;
319 int index, num_reg; 319 int index, num_reg;
@@ -322,7 +322,7 @@ static void __init build_device_resources(struct of_device *op,
322 if (!parent) 322 if (!parent)
323 return; 323 return;
324 324
325 p_op = to_of_device(parent); 325 p_op = to_platform_device(parent);
326 bus = of_match_bus(p_op->dev.of_node); 326 bus = of_match_bus(p_op->dev.of_node);
327 bus->count_cells(op->dev.of_node, &na, &ns); 327 bus->count_cells(op->dev.of_node, &na, &ns);
328 328
@@ -344,6 +344,8 @@ static void __init build_device_resources(struct of_device *op,
344 num_reg = PROMREG_MAX; 344 num_reg = PROMREG_MAX;
345 } 345 }
346 346
347 op->resource = op->archdata.resource;
348 op->num_resources = num_reg;
347 for (index = 0; index < num_reg; index++) { 349 for (index = 0; index < num_reg; index++) {
348 struct resource *r = &op->resource[index]; 350 struct resource *r = &op->resource[index];
349 u32 addr[OF_MAX_ADDR_CELLS]; 351 u32 addr[OF_MAX_ADDR_CELLS];
@@ -526,7 +528,7 @@ static unsigned int __init pci_irq_swizzle(struct device_node *dp,
526 528
527static int of_irq_verbose; 529static int of_irq_verbose;
528 530
529static unsigned int __init build_one_device_irq(struct of_device *op, 531static unsigned int __init build_one_device_irq(struct platform_device *op,
530 struct device *parent, 532 struct device *parent,
531 unsigned int irq) 533 unsigned int irq)
532{ 534{
@@ -628,10 +630,10 @@ out:
628 return irq; 630 return irq;
629} 631}
630 632
631static struct of_device * __init scan_one_device(struct device_node *dp, 633static struct platform_device * __init scan_one_device(struct device_node *dp,
632 struct device *parent) 634 struct device *parent)
633{ 635{
634 struct of_device *op = kzalloc(sizeof(*op), GFP_KERNEL); 636 struct platform_device *op = kzalloc(sizeof(*op), GFP_KERNEL);
635 const unsigned int *irq; 637 const unsigned int *irq;
636 struct dev_archdata *sd; 638 struct dev_archdata *sd;
637 int len, i; 639 int len, i;
@@ -644,34 +646,28 @@ static struct of_device * __init scan_one_device(struct device_node *dp,
644 646
645 op->dev.of_node = dp; 647 op->dev.of_node = dp;
646 648
647 op->clock_freq = of_getintprop_default(dp, "clock-frequency",
648 (25*1000*1000));
649 op->portid = of_getintprop_default(dp, "upa-portid", -1);
650 if (op->portid == -1)
651 op->portid = of_getintprop_default(dp, "portid", -1);
652
653 irq = of_get_property(dp, "interrupts", &len); 649 irq = of_get_property(dp, "interrupts", &len);
654 if (irq) { 650 if (irq) {
655 op->num_irqs = len / 4; 651 op->archdata.num_irqs = len / 4;
656 652
657 /* Prevent overrunning the op->irqs[] array. */ 653 /* Prevent overrunning the op->irqs[] array. */
658 if (op->num_irqs > PROMINTR_MAX) { 654 if (op->archdata.num_irqs > PROMINTR_MAX) {
659 printk(KERN_WARNING "%s: Too many irqs (%d), " 655 printk(KERN_WARNING "%s: Too many irqs (%d), "
660 "limiting to %d.\n", 656 "limiting to %d.\n",
661 dp->full_name, op->num_irqs, PROMINTR_MAX); 657 dp->full_name, op->archdata.num_irqs, PROMINTR_MAX);
662 op->num_irqs = PROMINTR_MAX; 658 op->archdata.num_irqs = PROMINTR_MAX;
663 } 659 }
664 memcpy(op->irqs, irq, op->num_irqs * 4); 660 memcpy(op->archdata.irqs, irq, op->archdata.num_irqs * 4);
665 } else { 661 } else {
666 op->num_irqs = 0; 662 op->archdata.num_irqs = 0;
667 } 663 }
668 664
669 build_device_resources(op, parent); 665 build_device_resources(op, parent);
670 for (i = 0; i < op->num_irqs; i++) 666 for (i = 0; i < op->archdata.num_irqs; i++)
671 op->irqs[i] = build_one_device_irq(op, parent, op->irqs[i]); 667 op->archdata.irqs[i] = build_one_device_irq(op, parent, op->archdata.irqs[i]);
672 668
673 op->dev.parent = parent; 669 op->dev.parent = parent;
674 op->dev.bus = &of_platform_bus_type; 670 op->dev.bus = &platform_bus_type;
675 if (!parent) 671 if (!parent)
676 dev_set_name(&op->dev, "root"); 672 dev_set_name(&op->dev, "root");
677 else 673 else
@@ -690,7 +686,7 @@ static struct of_device * __init scan_one_device(struct device_node *dp,
690static void __init scan_tree(struct device_node *dp, struct device *parent) 686static void __init scan_tree(struct device_node *dp, struct device *parent)
691{ 687{
692 while (dp) { 688 while (dp) {
693 struct of_device *op = scan_one_device(dp, parent); 689 struct platform_device *op = scan_one_device(dp, parent);
694 690
695 if (op) 691 if (op)
696 scan_tree(dp->child, &op->dev); 692 scan_tree(dp->child, &op->dev);
@@ -699,30 +695,19 @@ static void __init scan_tree(struct device_node *dp, struct device *parent)
699 } 695 }
700} 696}
701 697
702static void __init scan_of_devices(void) 698static int __init scan_of_devices(void)
703{ 699{
704 struct device_node *root = of_find_node_by_path("/"); 700 struct device_node *root = of_find_node_by_path("/");
705 struct of_device *parent; 701 struct platform_device *parent;
706 702
707 parent = scan_one_device(root, NULL); 703 parent = scan_one_device(root, NULL);
708 if (!parent) 704 if (!parent)
709 return; 705 return 0;
710 706
711 scan_tree(root->child, &parent->dev); 707 scan_tree(root->child, &parent->dev);
708 return 0;
712} 709}
713 710postcore_initcall(scan_of_devices);
714static int __init of_bus_driver_init(void)
715{
716 int err;
717
718 err = of_bus_type_init(&of_platform_bus_type, "of");
719 if (!err)
720 scan_of_devices();
721
722 return err;
723}
724
725postcore_initcall(of_bus_driver_init);
726 711
727static int __init of_debug(char *str) 712static int __init of_debug(char *str)
728{ 713{
diff --git a/arch/sparc/kernel/of_device_common.c b/arch/sparc/kernel/of_device_common.c
index 10c6c36a6e75..49ddff56cb04 100644
--- a/arch/sparc/kernel/of_device_common.c
+++ b/arch/sparc/kernel/of_device_common.c
@@ -11,48 +11,28 @@
11 11
12#include "of_device_common.h" 12#include "of_device_common.h"
13 13
14static int node_match(struct device *dev, void *data)
15{
16 struct of_device *op = to_of_device(dev);
17 struct device_node *dp = data;
18
19 return (op->dev.of_node == dp);
20}
21
22struct of_device *of_find_device_by_node(struct device_node *dp)
23{
24 struct device *dev = bus_find_device(&of_platform_bus_type, NULL,
25 dp, node_match);
26
27 if (dev)
28 return to_of_device(dev);
29
30 return NULL;
31}
32EXPORT_SYMBOL(of_find_device_by_node);
33
34unsigned int irq_of_parse_and_map(struct device_node *node, int index) 14unsigned int irq_of_parse_and_map(struct device_node *node, int index)
35{ 15{
36 struct of_device *op = of_find_device_by_node(node); 16 struct platform_device *op = of_find_device_by_node(node);
37 17
38 if (!op || index >= op->num_irqs) 18 if (!op || index >= op->archdata.num_irqs)
39 return 0; 19 return 0;
40 20
41 return op->irqs[index]; 21 return op->archdata.irqs[index];
42} 22}
43EXPORT_SYMBOL(irq_of_parse_and_map); 23EXPORT_SYMBOL(irq_of_parse_and_map);
44 24
45/* Take the archdata values for IOMMU, STC, and HOSTDATA found in 25/* Take the archdata values for IOMMU, STC, and HOSTDATA found in
46 * BUS and propagate to all child of_device objects. 26 * BUS and propagate to all child platform_device objects.
47 */ 27 */
48void of_propagate_archdata(struct of_device *bus) 28void of_propagate_archdata(struct platform_device *bus)
49{ 29{
50 struct dev_archdata *bus_sd = &bus->dev.archdata; 30 struct dev_archdata *bus_sd = &bus->dev.archdata;
51 struct device_node *bus_dp = bus->dev.of_node; 31 struct device_node *bus_dp = bus->dev.of_node;
52 struct device_node *dp; 32 struct device_node *dp;
53 33
54 for (dp = bus_dp->child; dp; dp = dp->sibling) { 34 for (dp = bus_dp->child; dp; dp = dp->sibling) {
55 struct of_device *op = of_find_device_by_node(dp); 35 struct platform_device *op = of_find_device_by_node(dp);
56 36
57 op->dev.archdata.iommu = bus_sd->iommu; 37 op->dev.archdata.iommu = bus_sd->iommu;
58 op->dev.archdata.stc = bus_sd->stc; 38 op->dev.archdata.stc = bus_sd->stc;
@@ -64,9 +44,6 @@ void of_propagate_archdata(struct of_device *bus)
64 } 44 }
65} 45}
66 46
67struct bus_type of_platform_bus_type;
68EXPORT_SYMBOL(of_platform_bus_type);
69
70static void get_cells(struct device_node *dp, int *addrc, int *sizec) 47static void get_cells(struct device_node *dp, int *addrc, int *sizec)
71{ 48{
72 if (addrc) 49 if (addrc)
diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c
index 8a8363adb8bd..4137579d9adc 100644
--- a/arch/sparc/kernel/pci.c
+++ b/arch/sparc/kernel/pci.c
@@ -198,7 +198,7 @@ static unsigned long pci_parse_of_flags(u32 addr0)
198 * into physical address resources, we only have to figure out the register 198 * into physical address resources, we only have to figure out the register
199 * mapping. 199 * mapping.
200 */ 200 */
201static void pci_parse_of_addrs(struct of_device *op, 201static void pci_parse_of_addrs(struct platform_device *op,
202 struct device_node *node, 202 struct device_node *node,
203 struct pci_dev *dev) 203 struct pci_dev *dev)
204{ 204{
@@ -248,7 +248,7 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm,
248{ 248{
249 struct dev_archdata *sd; 249 struct dev_archdata *sd;
250 struct pci_slot *slot; 250 struct pci_slot *slot;
251 struct of_device *op; 251 struct platform_device *op;
252 struct pci_dev *dev; 252 struct pci_dev *dev;
253 const char *type; 253 const char *type;
254 u32 class; 254 u32 class;
@@ -340,7 +340,7 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm,
340 dev->hdr_type = PCI_HEADER_TYPE_NORMAL; 340 dev->hdr_type = PCI_HEADER_TYPE_NORMAL;
341 dev->rom_base_reg = PCI_ROM_ADDRESS; 341 dev->rom_base_reg = PCI_ROM_ADDRESS;
342 342
343 dev->irq = sd->op->irqs[0]; 343 dev->irq = sd->op->archdata.irqs[0];
344 if (dev->irq == 0xffffffff) 344 if (dev->irq == 0xffffffff)
345 dev->irq = PCI_IRQ_NONE; 345 dev->irq = PCI_IRQ_NONE;
346 } 346 }
diff --git a/arch/sparc/kernel/pci_fire.c b/arch/sparc/kernel/pci_fire.c
index 51cfa09e392a..efb896d68754 100644
--- a/arch/sparc/kernel/pci_fire.c
+++ b/arch/sparc/kernel/pci_fire.c
@@ -410,7 +410,7 @@ static void pci_fire_hw_init(struct pci_pbm_info *pbm)
410} 410}
411 411
412static int __devinit pci_fire_pbm_init(struct pci_pbm_info *pbm, 412static int __devinit pci_fire_pbm_init(struct pci_pbm_info *pbm,
413 struct of_device *op, u32 portid) 413 struct platform_device *op, u32 portid)
414{ 414{
415 const struct linux_prom64_registers *regs; 415 const struct linux_prom64_registers *regs;
416 struct device_node *dp = op->dev.of_node; 416 struct device_node *dp = op->dev.of_node;
@@ -455,7 +455,7 @@ static int __devinit pci_fire_pbm_init(struct pci_pbm_info *pbm,
455 return 0; 455 return 0;
456} 456}
457 457
458static int __devinit fire_probe(struct of_device *op, 458static int __devinit fire_probe(struct platform_device *op,
459 const struct of_device_id *match) 459 const struct of_device_id *match)
460{ 460{
461 struct device_node *dp = op->dev.of_node; 461 struct device_node *dp = op->dev.of_node;
@@ -518,7 +518,7 @@ static struct of_platform_driver fire_driver = {
518 518
519static int __init fire_init(void) 519static int __init fire_init(void)
520{ 520{
521 return of_register_driver(&fire_driver, &of_bus_type); 521 return of_register_platform_driver(&fire_driver);
522} 522}
523 523
524subsys_initcall(fire_init); 524subsys_initcall(fire_init);
diff --git a/arch/sparc/kernel/pci_impl.h b/arch/sparc/kernel/pci_impl.h
index 03186824327e..e20ed5f06e9c 100644
--- a/arch/sparc/kernel/pci_impl.h
+++ b/arch/sparc/kernel/pci_impl.h
@@ -91,7 +91,7 @@ struct pci_pbm_info {
91 char *name; 91 char *name;
92 92
93 /* OBP specific information. */ 93 /* OBP specific information. */
94 struct of_device *op; 94 struct platform_device *op;
95 u64 ino_bitmap; 95 u64 ino_bitmap;
96 96
97 /* PBM I/O and Memory space resources. */ 97 /* PBM I/O and Memory space resources. */
diff --git a/arch/sparc/kernel/pci_psycho.c b/arch/sparc/kernel/pci_psycho.c
index 558a70512824..22eab7cf3b11 100644
--- a/arch/sparc/kernel/pci_psycho.c
+++ b/arch/sparc/kernel/pci_psycho.c
@@ -285,7 +285,7 @@ static irqreturn_t psycho_ce_intr(int irq, void *dev_id)
285#define PSYCHO_ECCCTRL_CE 0x2000000000000000UL /* Enable CE INterrupts */ 285#define PSYCHO_ECCCTRL_CE 0x2000000000000000UL /* Enable CE INterrupts */
286static void psycho_register_error_handlers(struct pci_pbm_info *pbm) 286static void psycho_register_error_handlers(struct pci_pbm_info *pbm)
287{ 287{
288 struct of_device *op = of_find_device_by_node(pbm->op->dev.of_node); 288 struct platform_device *op = of_find_device_by_node(pbm->op->dev.of_node);
289 unsigned long base = pbm->controller_regs; 289 unsigned long base = pbm->controller_regs;
290 u64 tmp; 290 u64 tmp;
291 int err; 291 int err;
@@ -302,23 +302,23 @@ static void psycho_register_error_handlers(struct pci_pbm_info *pbm)
302 * 5: POWER MANAGEMENT 302 * 5: POWER MANAGEMENT
303 */ 303 */
304 304
305 if (op->num_irqs < 6) 305 if (op->archdata.num_irqs < 6)
306 return; 306 return;
307 307
308 /* We really mean to ignore the return result here. Two 308 /* We really mean to ignore the return result here. Two
309 * PCI controller share the same interrupt numbers and 309 * PCI controller share the same interrupt numbers and
310 * drive the same front-end hardware. 310 * drive the same front-end hardware.
311 */ 311 */
312 err = request_irq(op->irqs[1], psycho_ue_intr, IRQF_SHARED, 312 err = request_irq(op->archdata.irqs[1], psycho_ue_intr, IRQF_SHARED,
313 "PSYCHO_UE", pbm); 313 "PSYCHO_UE", pbm);
314 err = request_irq(op->irqs[2], psycho_ce_intr, IRQF_SHARED, 314 err = request_irq(op->archdata.irqs[2], psycho_ce_intr, IRQF_SHARED,
315 "PSYCHO_CE", pbm); 315 "PSYCHO_CE", pbm);
316 316
317 /* This one, however, ought not to fail. We can just warn 317 /* This one, however, ought not to fail. We can just warn
318 * about it since the system can still operate properly even 318 * about it since the system can still operate properly even
319 * if this fails. 319 * if this fails.
320 */ 320 */
321 err = request_irq(op->irqs[0], psycho_pcierr_intr, IRQF_SHARED, 321 err = request_irq(op->archdata.irqs[0], psycho_pcierr_intr, IRQF_SHARED,
322 "PSYCHO_PCIERR", pbm); 322 "PSYCHO_PCIERR", pbm);
323 if (err) 323 if (err)
324 printk(KERN_WARNING "%s: Could not register PCIERR, " 324 printk(KERN_WARNING "%s: Could not register PCIERR, "
@@ -483,7 +483,7 @@ static void psycho_pbm_strbuf_init(struct pci_pbm_info *pbm,
483#define PSYCHO_MEMSPACE_SIZE 0x07fffffffUL 483#define PSYCHO_MEMSPACE_SIZE 0x07fffffffUL
484 484
485static void __devinit psycho_pbm_init(struct pci_pbm_info *pbm, 485static void __devinit psycho_pbm_init(struct pci_pbm_info *pbm,
486 struct of_device *op, int is_pbm_a) 486 struct platform_device *op, int is_pbm_a)
487{ 487{
488 psycho_pbm_init_common(pbm, op, "PSYCHO", PBM_CHIP_TYPE_PSYCHO); 488 psycho_pbm_init_common(pbm, op, "PSYCHO", PBM_CHIP_TYPE_PSYCHO);
489 psycho_pbm_strbuf_init(pbm, is_pbm_a); 489 psycho_pbm_strbuf_init(pbm, is_pbm_a);
@@ -503,7 +503,7 @@ static struct pci_pbm_info * __devinit psycho_find_sibling(u32 upa_portid)
503 503
504#define PSYCHO_CONFIGSPACE 0x001000000UL 504#define PSYCHO_CONFIGSPACE 0x001000000UL
505 505
506static int __devinit psycho_probe(struct of_device *op, 506static int __devinit psycho_probe(struct platform_device *op,
507 const struct of_device_id *match) 507 const struct of_device_id *match)
508{ 508{
509 const struct linux_prom64_registers *pr_regs; 509 const struct linux_prom64_registers *pr_regs;
@@ -612,7 +612,7 @@ static struct of_platform_driver psycho_driver = {
612 612
613static int __init psycho_init(void) 613static int __init psycho_init(void)
614{ 614{
615 return of_register_driver(&psycho_driver, &of_bus_type); 615 return of_register_platform_driver(&psycho_driver);
616} 616}
617 617
618subsys_initcall(psycho_init); 618subsys_initcall(psycho_init);
diff --git a/arch/sparc/kernel/pci_sabre.c b/arch/sparc/kernel/pci_sabre.c
index 6dad8e3b7506..5c3f5ec4cabc 100644
--- a/arch/sparc/kernel/pci_sabre.c
+++ b/arch/sparc/kernel/pci_sabre.c
@@ -311,7 +311,7 @@ static irqreturn_t sabre_ce_intr(int irq, void *dev_id)
311static void sabre_register_error_handlers(struct pci_pbm_info *pbm) 311static void sabre_register_error_handlers(struct pci_pbm_info *pbm)
312{ 312{
313 struct device_node *dp = pbm->op->dev.of_node; 313 struct device_node *dp = pbm->op->dev.of_node;
314 struct of_device *op; 314 struct platform_device *op;
315 unsigned long base = pbm->controller_regs; 315 unsigned long base = pbm->controller_regs;
316 u64 tmp; 316 u64 tmp;
317 int err; 317 int err;
@@ -329,7 +329,7 @@ static void sabre_register_error_handlers(struct pci_pbm_info *pbm)
329 * 2: CE ERR 329 * 2: CE ERR
330 * 3: POWER FAIL 330 * 3: POWER FAIL
331 */ 331 */
332 if (op->num_irqs < 4) 332 if (op->archdata.num_irqs < 4)
333 return; 333 return;
334 334
335 /* We clear the error bits in the appropriate AFSR before 335 /* We clear the error bits in the appropriate AFSR before
@@ -341,7 +341,7 @@ static void sabre_register_error_handlers(struct pci_pbm_info *pbm)
341 SABRE_UEAFSR_SDTE | SABRE_UEAFSR_PDTE), 341 SABRE_UEAFSR_SDTE | SABRE_UEAFSR_PDTE),
342 base + SABRE_UE_AFSR); 342 base + SABRE_UE_AFSR);
343 343
344 err = request_irq(op->irqs[1], sabre_ue_intr, 0, "SABRE_UE", pbm); 344 err = request_irq(op->archdata.irqs[1], sabre_ue_intr, 0, "SABRE_UE", pbm);
345 if (err) 345 if (err)
346 printk(KERN_WARNING "%s: Couldn't register UE, err=%d.\n", 346 printk(KERN_WARNING "%s: Couldn't register UE, err=%d.\n",
347 pbm->name, err); 347 pbm->name, err);
@@ -351,11 +351,11 @@ static void sabre_register_error_handlers(struct pci_pbm_info *pbm)
351 base + SABRE_CE_AFSR); 351 base + SABRE_CE_AFSR);
352 352
353 353
354 err = request_irq(op->irqs[2], sabre_ce_intr, 0, "SABRE_CE", pbm); 354 err = request_irq(op->archdata.irqs[2], sabre_ce_intr, 0, "SABRE_CE", pbm);
355 if (err) 355 if (err)
356 printk(KERN_WARNING "%s: Couldn't register CE, err=%d.\n", 356 printk(KERN_WARNING "%s: Couldn't register CE, err=%d.\n",
357 pbm->name, err); 357 pbm->name, err);
358 err = request_irq(op->irqs[0], psycho_pcierr_intr, 0, 358 err = request_irq(op->archdata.irqs[0], psycho_pcierr_intr, 0,
359 "SABRE_PCIERR", pbm); 359 "SABRE_PCIERR", pbm);
360 if (err) 360 if (err)
361 printk(KERN_WARNING "%s: Couldn't register PCIERR, err=%d.\n", 361 printk(KERN_WARNING "%s: Couldn't register PCIERR, err=%d.\n",
@@ -443,7 +443,7 @@ static void __devinit sabre_scan_bus(struct pci_pbm_info *pbm,
443} 443}
444 444
445static void __devinit sabre_pbm_init(struct pci_pbm_info *pbm, 445static void __devinit sabre_pbm_init(struct pci_pbm_info *pbm,
446 struct of_device *op) 446 struct platform_device *op)
447{ 447{
448 psycho_pbm_init_common(pbm, op, "SABRE", PBM_CHIP_TYPE_SABRE); 448 psycho_pbm_init_common(pbm, op, "SABRE", PBM_CHIP_TYPE_SABRE);
449 pbm->pci_afsr = pbm->controller_regs + SABRE_PIOAFSR; 449 pbm->pci_afsr = pbm->controller_regs + SABRE_PIOAFSR;
@@ -452,7 +452,7 @@ static void __devinit sabre_pbm_init(struct pci_pbm_info *pbm,
452 sabre_scan_bus(pbm, &op->dev); 452 sabre_scan_bus(pbm, &op->dev);
453} 453}
454 454
455static int __devinit sabre_probe(struct of_device *op, 455static int __devinit sabre_probe(struct platform_device *op,
456 const struct of_device_id *match) 456 const struct of_device_id *match)
457{ 457{
458 const struct linux_prom64_registers *pr_regs; 458 const struct linux_prom64_registers *pr_regs;
@@ -606,7 +606,7 @@ static struct of_platform_driver sabre_driver = {
606 606
607static int __init sabre_init(void) 607static int __init sabre_init(void)
608{ 608{
609 return of_register_driver(&sabre_driver, &of_bus_type); 609 return of_register_platform_driver(&sabre_driver);
610} 610}
611 611
612subsys_initcall(sabre_init); 612subsys_initcall(sabre_init);
diff --git a/arch/sparc/kernel/pci_schizo.c b/arch/sparc/kernel/pci_schizo.c
index 97a1ae2e1c02..445a47a2fb3d 100644
--- a/arch/sparc/kernel/pci_schizo.c
+++ b/arch/sparc/kernel/pci_schizo.c
@@ -844,7 +844,7 @@ static int pbm_routes_this_ino(struct pci_pbm_info *pbm, u32 ino)
844 */ 844 */
845static void tomatillo_register_error_handlers(struct pci_pbm_info *pbm) 845static void tomatillo_register_error_handlers(struct pci_pbm_info *pbm)
846{ 846{
847 struct of_device *op = of_find_device_by_node(pbm->op->dev.of_node); 847 struct platform_device *op = of_find_device_by_node(pbm->op->dev.of_node);
848 u64 tmp, err_mask, err_no_mask; 848 u64 tmp, err_mask, err_no_mask;
849 int err; 849 int err;
850 850
@@ -857,14 +857,14 @@ static void tomatillo_register_error_handlers(struct pci_pbm_info *pbm)
857 */ 857 */
858 858
859 if (pbm_routes_this_ino(pbm, SCHIZO_UE_INO)) { 859 if (pbm_routes_this_ino(pbm, SCHIZO_UE_INO)) {
860 err = request_irq(op->irqs[1], schizo_ue_intr, 0, 860 err = request_irq(op->archdata.irqs[1], schizo_ue_intr, 0,
861 "TOMATILLO_UE", pbm); 861 "TOMATILLO_UE", pbm);
862 if (err) 862 if (err)
863 printk(KERN_WARNING "%s: Could not register UE, " 863 printk(KERN_WARNING "%s: Could not register UE, "
864 "err=%d\n", pbm->name, err); 864 "err=%d\n", pbm->name, err);
865 } 865 }
866 if (pbm_routes_this_ino(pbm, SCHIZO_CE_INO)) { 866 if (pbm_routes_this_ino(pbm, SCHIZO_CE_INO)) {
867 err = request_irq(op->irqs[2], schizo_ce_intr, 0, 867 err = request_irq(op->archdata.irqs[2], schizo_ce_intr, 0,
868 "TOMATILLO_CE", pbm); 868 "TOMATILLO_CE", pbm);
869 if (err) 869 if (err)
870 printk(KERN_WARNING "%s: Could not register CE, " 870 printk(KERN_WARNING "%s: Could not register CE, "
@@ -872,10 +872,10 @@ static void tomatillo_register_error_handlers(struct pci_pbm_info *pbm)
872 } 872 }
873 err = 0; 873 err = 0;
874 if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_A_INO)) { 874 if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_A_INO)) {
875 err = request_irq(op->irqs[0], schizo_pcierr_intr, 0, 875 err = request_irq(op->archdata.irqs[0], schizo_pcierr_intr, 0,
876 "TOMATILLO_PCIERR", pbm); 876 "TOMATILLO_PCIERR", pbm);
877 } else if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_B_INO)) { 877 } else if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_B_INO)) {
878 err = request_irq(op->irqs[0], schizo_pcierr_intr, 0, 878 err = request_irq(op->archdata.irqs[0], schizo_pcierr_intr, 0,
879 "TOMATILLO_PCIERR", pbm); 879 "TOMATILLO_PCIERR", pbm);
880 } 880 }
881 if (err) 881 if (err)
@@ -883,7 +883,7 @@ static void tomatillo_register_error_handlers(struct pci_pbm_info *pbm)
883 "err=%d\n", pbm->name, err); 883 "err=%d\n", pbm->name, err);
884 884
885 if (pbm_routes_this_ino(pbm, SCHIZO_SERR_INO)) { 885 if (pbm_routes_this_ino(pbm, SCHIZO_SERR_INO)) {
886 err = request_irq(op->irqs[3], schizo_safarierr_intr, 0, 886 err = request_irq(op->archdata.irqs[3], schizo_safarierr_intr, 0,
887 "TOMATILLO_SERR", pbm); 887 "TOMATILLO_SERR", pbm);
888 if (err) 888 if (err)
889 printk(KERN_WARNING "%s: Could not register SERR, " 889 printk(KERN_WARNING "%s: Could not register SERR, "
@@ -939,7 +939,7 @@ static void tomatillo_register_error_handlers(struct pci_pbm_info *pbm)
939 939
940static void schizo_register_error_handlers(struct pci_pbm_info *pbm) 940static void schizo_register_error_handlers(struct pci_pbm_info *pbm)
941{ 941{
942 struct of_device *op = of_find_device_by_node(pbm->op->dev.of_node); 942 struct platform_device *op = of_find_device_by_node(pbm->op->dev.of_node);
943 u64 tmp, err_mask, err_no_mask; 943 u64 tmp, err_mask, err_no_mask;
944 int err; 944 int err;
945 945
@@ -952,14 +952,14 @@ static void schizo_register_error_handlers(struct pci_pbm_info *pbm)
952 */ 952 */
953 953
954 if (pbm_routes_this_ino(pbm, SCHIZO_UE_INO)) { 954 if (pbm_routes_this_ino(pbm, SCHIZO_UE_INO)) {
955 err = request_irq(op->irqs[1], schizo_ue_intr, 0, 955 err = request_irq(op->archdata.irqs[1], schizo_ue_intr, 0,
956 "SCHIZO_UE", pbm); 956 "SCHIZO_UE", pbm);
957 if (err) 957 if (err)
958 printk(KERN_WARNING "%s: Could not register UE, " 958 printk(KERN_WARNING "%s: Could not register UE, "
959 "err=%d\n", pbm->name, err); 959 "err=%d\n", pbm->name, err);
960 } 960 }
961 if (pbm_routes_this_ino(pbm, SCHIZO_CE_INO)) { 961 if (pbm_routes_this_ino(pbm, SCHIZO_CE_INO)) {
962 err = request_irq(op->irqs[2], schizo_ce_intr, 0, 962 err = request_irq(op->archdata.irqs[2], schizo_ce_intr, 0,
963 "SCHIZO_CE", pbm); 963 "SCHIZO_CE", pbm);
964 if (err) 964 if (err)
965 printk(KERN_WARNING "%s: Could not register CE, " 965 printk(KERN_WARNING "%s: Could not register CE, "
@@ -967,10 +967,10 @@ static void schizo_register_error_handlers(struct pci_pbm_info *pbm)
967 } 967 }
968 err = 0; 968 err = 0;
969 if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_A_INO)) { 969 if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_A_INO)) {
970 err = request_irq(op->irqs[0], schizo_pcierr_intr, 0, 970 err = request_irq(op->archdata.irqs[0], schizo_pcierr_intr, 0,
971 "SCHIZO_PCIERR", pbm); 971 "SCHIZO_PCIERR", pbm);
972 } else if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_B_INO)) { 972 } else if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_B_INO)) {
973 err = request_irq(op->irqs[0], schizo_pcierr_intr, 0, 973 err = request_irq(op->archdata.irqs[0], schizo_pcierr_intr, 0,
974 "SCHIZO_PCIERR", pbm); 974 "SCHIZO_PCIERR", pbm);
975 } 975 }
976 if (err) 976 if (err)
@@ -978,7 +978,7 @@ static void schizo_register_error_handlers(struct pci_pbm_info *pbm)
978 "err=%d\n", pbm->name, err); 978 "err=%d\n", pbm->name, err);
979 979
980 if (pbm_routes_this_ino(pbm, SCHIZO_SERR_INO)) { 980 if (pbm_routes_this_ino(pbm, SCHIZO_SERR_INO)) {
981 err = request_irq(op->irqs[3], schizo_safarierr_intr, 0, 981 err = request_irq(op->archdata.irqs[3], schizo_safarierr_intr, 0,
982 "SCHIZO_SERR", pbm); 982 "SCHIZO_SERR", pbm);
983 if (err) 983 if (err)
984 printk(KERN_WARNING "%s: Could not register SERR, " 984 printk(KERN_WARNING "%s: Could not register SERR, "
@@ -1307,7 +1307,7 @@ static void schizo_pbm_hw_init(struct pci_pbm_info *pbm)
1307} 1307}
1308 1308
1309static int __devinit schizo_pbm_init(struct pci_pbm_info *pbm, 1309static int __devinit schizo_pbm_init(struct pci_pbm_info *pbm,
1310 struct of_device *op, u32 portid, 1310 struct platform_device *op, u32 portid,
1311 int chip_type) 1311 int chip_type)
1312{ 1312{
1313 const struct linux_prom64_registers *regs; 1313 const struct linux_prom64_registers *regs;
@@ -1413,7 +1413,7 @@ static struct pci_pbm_info * __devinit schizo_find_sibling(u32 portid,
1413 return NULL; 1413 return NULL;
1414} 1414}
1415 1415
1416static int __devinit __schizo_init(struct of_device *op, unsigned long chip_type) 1416static int __devinit __schizo_init(struct platform_device *op, unsigned long chip_type)
1417{ 1417{
1418 struct device_node *dp = op->dev.of_node; 1418 struct device_node *dp = op->dev.of_node;
1419 struct pci_pbm_info *pbm; 1419 struct pci_pbm_info *pbm;
@@ -1460,7 +1460,7 @@ out_err:
1460 return err; 1460 return err;
1461} 1461}
1462 1462
1463static int __devinit schizo_probe(struct of_device *op, 1463static int __devinit schizo_probe(struct platform_device *op,
1464 const struct of_device_id *match) 1464 const struct of_device_id *match)
1465{ 1465{
1466 return __schizo_init(op, (unsigned long) match->data); 1466 return __schizo_init(op, (unsigned long) match->data);
@@ -1501,7 +1501,7 @@ static struct of_platform_driver schizo_driver = {
1501 1501
1502static int __init schizo_init(void) 1502static int __init schizo_init(void)
1503{ 1503{
1504 return of_register_driver(&schizo_driver, &of_bus_type); 1504 return of_register_platform_driver(&schizo_driver);
1505} 1505}
1506 1506
1507subsys_initcall(schizo_init); 1507subsys_initcall(schizo_init);
diff --git a/arch/sparc/kernel/pci_sun4v.c b/arch/sparc/kernel/pci_sun4v.c
index a24af6f7e17f..743344aa6d8a 100644
--- a/arch/sparc/kernel/pci_sun4v.c
+++ b/arch/sparc/kernel/pci_sun4v.c
@@ -879,7 +879,7 @@ static void pci_sun4v_msi_init(struct pci_pbm_info *pbm)
879#endif /* !(CONFIG_PCI_MSI) */ 879#endif /* !(CONFIG_PCI_MSI) */
880 880
881static int __devinit pci_sun4v_pbm_init(struct pci_pbm_info *pbm, 881static int __devinit pci_sun4v_pbm_init(struct pci_pbm_info *pbm,
882 struct of_device *op, u32 devhandle) 882 struct platform_device *op, u32 devhandle)
883{ 883{
884 struct device_node *dp = op->dev.of_node; 884 struct device_node *dp = op->dev.of_node;
885 int err; 885 int err;
@@ -918,7 +918,7 @@ static int __devinit pci_sun4v_pbm_init(struct pci_pbm_info *pbm,
918 return 0; 918 return 0;
919} 919}
920 920
921static int __devinit pci_sun4v_probe(struct of_device *op, 921static int __devinit pci_sun4v_probe(struct platform_device *op,
922 const struct of_device_id *match) 922 const struct of_device_id *match)
923{ 923{
924 const struct linux_prom64_registers *regs; 924 const struct linux_prom64_registers *regs;
@@ -1019,7 +1019,7 @@ static struct of_platform_driver pci_sun4v_driver = {
1019 1019
1020static int __init pci_sun4v_init(void) 1020static int __init pci_sun4v_init(void)
1021{ 1021{
1022 return of_register_driver(&pci_sun4v_driver, &of_bus_type); 1022 return of_register_platform_driver(&pci_sun4v_driver);
1023} 1023}
1024 1024
1025subsys_initcall(pci_sun4v_init); 1025subsys_initcall(pci_sun4v_init);
diff --git a/arch/sparc/kernel/perf_event.c b/arch/sparc/kernel/perf_event.c
index 44faabc3c02c..357ced3c33ff 100644
--- a/arch/sparc/kernel/perf_event.c
+++ b/arch/sparc/kernel/perf_event.c
@@ -572,18 +572,18 @@ static u64 sparc_perf_event_update(struct perf_event *event,
572 s64 delta; 572 s64 delta;
573 573
574again: 574again:
575 prev_raw_count = atomic64_read(&hwc->prev_count); 575 prev_raw_count = local64_read(&hwc->prev_count);
576 new_raw_count = read_pmc(idx); 576 new_raw_count = read_pmc(idx);
577 577
578 if (atomic64_cmpxchg(&hwc->prev_count, prev_raw_count, 578 if (local64_cmpxchg(&hwc->prev_count, prev_raw_count,
579 new_raw_count) != prev_raw_count) 579 new_raw_count) != prev_raw_count)
580 goto again; 580 goto again;
581 581
582 delta = (new_raw_count << shift) - (prev_raw_count << shift); 582 delta = (new_raw_count << shift) - (prev_raw_count << shift);
583 delta >>= shift; 583 delta >>= shift;
584 584
585 atomic64_add(delta, &event->count); 585 local64_add(delta, &event->count);
586 atomic64_sub(delta, &hwc->period_left); 586 local64_sub(delta, &hwc->period_left);
587 587
588 return new_raw_count; 588 return new_raw_count;
589} 589}
@@ -591,27 +591,27 @@ again:
591static int sparc_perf_event_set_period(struct perf_event *event, 591static int sparc_perf_event_set_period(struct perf_event *event,
592 struct hw_perf_event *hwc, int idx) 592 struct hw_perf_event *hwc, int idx)
593{ 593{
594 s64 left = atomic64_read(&hwc->period_left); 594 s64 left = local64_read(&hwc->period_left);
595 s64 period = hwc->sample_period; 595 s64 period = hwc->sample_period;
596 int ret = 0; 596 int ret = 0;
597 597
598 if (unlikely(left <= -period)) { 598 if (unlikely(left <= -period)) {
599 left = period; 599 left = period;
600 atomic64_set(&hwc->period_left, left); 600 local64_set(&hwc->period_left, left);
601 hwc->last_period = period; 601 hwc->last_period = period;
602 ret = 1; 602 ret = 1;
603 } 603 }
604 604
605 if (unlikely(left <= 0)) { 605 if (unlikely(left <= 0)) {
606 left += period; 606 left += period;
607 atomic64_set(&hwc->period_left, left); 607 local64_set(&hwc->period_left, left);
608 hwc->last_period = period; 608 hwc->last_period = period;
609 ret = 1; 609 ret = 1;
610 } 610 }
611 if (left > MAX_PERIOD) 611 if (left > MAX_PERIOD)
612 left = MAX_PERIOD; 612 left = MAX_PERIOD;
613 613
614 atomic64_set(&hwc->prev_count, (u64)-left); 614 local64_set(&hwc->prev_count, (u64)-left);
615 615
616 write_pmc(idx, (u64)(-left) & 0xffffffff); 616 write_pmc(idx, (u64)(-left) & 0xffffffff);
617 617
@@ -1006,7 +1006,7 @@ static int sparc_pmu_enable(struct perf_event *event)
1006 * skip the schedulability test here, it will be peformed 1006 * skip the schedulability test here, it will be peformed
1007 * at commit time(->commit_txn) as a whole 1007 * at commit time(->commit_txn) as a whole
1008 */ 1008 */
1009 if (cpuc->group_flag & PERF_EVENT_TXN_STARTED) 1009 if (cpuc->group_flag & PERF_EVENT_TXN)
1010 goto nocheck; 1010 goto nocheck;
1011 1011
1012 if (check_excludes(cpuc->event, n0, 1)) 1012 if (check_excludes(cpuc->event, n0, 1))
@@ -1088,7 +1088,7 @@ static int __hw_perf_event_init(struct perf_event *event)
1088 if (!hwc->sample_period) { 1088 if (!hwc->sample_period) {
1089 hwc->sample_period = MAX_PERIOD; 1089 hwc->sample_period = MAX_PERIOD;
1090 hwc->last_period = hwc->sample_period; 1090 hwc->last_period = hwc->sample_period;
1091 atomic64_set(&hwc->period_left, hwc->sample_period); 1091 local64_set(&hwc->period_left, hwc->sample_period);
1092 } 1092 }
1093 1093
1094 return 0; 1094 return 0;
@@ -1103,7 +1103,7 @@ static void sparc_pmu_start_txn(const struct pmu *pmu)
1103{ 1103{
1104 struct cpu_hw_events *cpuhw = &__get_cpu_var(cpu_hw_events); 1104 struct cpu_hw_events *cpuhw = &__get_cpu_var(cpu_hw_events);
1105 1105
1106 cpuhw->group_flag |= PERF_EVENT_TXN_STARTED; 1106 cpuhw->group_flag |= PERF_EVENT_TXN;
1107} 1107}
1108 1108
1109/* 1109/*
@@ -1115,7 +1115,7 @@ static void sparc_pmu_cancel_txn(const struct pmu *pmu)
1115{ 1115{
1116 struct cpu_hw_events *cpuhw = &__get_cpu_var(cpu_hw_events); 1116 struct cpu_hw_events *cpuhw = &__get_cpu_var(cpu_hw_events);
1117 1117
1118 cpuhw->group_flag &= ~PERF_EVENT_TXN_STARTED; 1118 cpuhw->group_flag &= ~PERF_EVENT_TXN;
1119} 1119}
1120 1120
1121/* 1121/*
@@ -1138,6 +1138,7 @@ static int sparc_pmu_commit_txn(const struct pmu *pmu)
1138 if (sparc_check_constraints(cpuc->event, cpuc->events, n)) 1138 if (sparc_check_constraints(cpuc->event, cpuc->events, n))
1139 return -EAGAIN; 1139 return -EAGAIN;
1140 1140
1141 cpuc->group_flag &= ~PERF_EVENT_TXN;
1141 return 0; 1142 return 0;
1142} 1143}
1143 1144
diff --git a/arch/sparc/kernel/pmc.c b/arch/sparc/kernel/pmc.c
index 9589d8b9b0c1..94536a85f161 100644
--- a/arch/sparc/kernel/pmc.c
+++ b/arch/sparc/kernel/pmc.c
@@ -51,7 +51,7 @@ static void pmc_swift_idle(void)
51#endif 51#endif
52} 52}
53 53
54static int __devinit pmc_probe(struct of_device *op, 54static int __devinit pmc_probe(struct platform_device *op,
55 const struct of_device_id *match) 55 const struct of_device_id *match)
56{ 56{
57 regs = of_ioremap(&op->resource[0], 0, 57 regs = of_ioremap(&op->resource[0], 0,
@@ -89,7 +89,7 @@ static struct of_platform_driver pmc_driver = {
89 89
90static int __init pmc_init(void) 90static int __init pmc_init(void)
91{ 91{
92 return of_register_driver(&pmc_driver, &of_bus_type); 92 return of_register_platform_driver(&pmc_driver);
93} 93}
94 94
95/* This driver is not critical to the boot process 95/* This driver is not critical to the boot process
diff --git a/arch/sparc/kernel/power.c b/arch/sparc/kernel/power.c
index 168d4cb63f5b..2c59f4d387dd 100644
--- a/arch/sparc/kernel/power.c
+++ b/arch/sparc/kernel/power.c
@@ -33,10 +33,10 @@ static int __devinit has_button_interrupt(unsigned int irq, struct device_node *
33 return 1; 33 return 1;
34} 34}
35 35
36static int __devinit power_probe(struct of_device *op, const struct of_device_id *match) 36static int __devinit power_probe(struct platform_device *op, const struct of_device_id *match)
37{ 37{
38 struct resource *res = &op->resource[0]; 38 struct resource *res = &op->resource[0];
39 unsigned int irq= op->irqs[0]; 39 unsigned int irq = op->archdata.irqs[0];
40 40
41 power_reg = of_ioremap(res, 0, 0x4, "power"); 41 power_reg = of_ioremap(res, 0, 0x4, "power");
42 42
@@ -70,7 +70,7 @@ static struct of_platform_driver power_driver = {
70 70
71static int __init power_init(void) 71static int __init power_init(void)
72{ 72{
73 return of_register_driver(&power_driver, &of_platform_bus_type); 73 return of_register_platform_driver(&power_driver);
74} 74}
75 75
76device_initcall(power_init); 76device_initcall(power_init);
diff --git a/arch/sparc/kernel/prom.h b/arch/sparc/kernel/prom.h
index a8591ef2636d..eeb04a782ec8 100644
--- a/arch/sparc/kernel/prom.h
+++ b/arch/sparc/kernel/prom.h
@@ -9,14 +9,6 @@ extern void irq_trans_init(struct device_node *dp);
9 9
10extern unsigned int prom_unique_id; 10extern unsigned int prom_unique_id;
11 11
12static inline int is_root_node(const struct device_node *dp)
13{
14 if (!dp)
15 return 0;
16
17 return (dp->parent == NULL);
18}
19
20extern char *build_path_component(struct device_node *dp); 12extern char *build_path_component(struct device_node *dp);
21extern void of_console_init(void); 13extern void of_console_init(void);
22 14
diff --git a/arch/sparc/kernel/prom_64.c b/arch/sparc/kernel/prom_64.c
index 466a32763ea8..86597d9867fd 100644
--- a/arch/sparc/kernel/prom_64.c
+++ b/arch/sparc/kernel/prom_64.c
@@ -21,7 +21,7 @@
21#include <linux/mm.h> 21#include <linux/mm.h>
22#include <linux/module.h> 22#include <linux/module.h>
23#include <linux/memblock.h> 23#include <linux/memblock.h>
24#include <linux/of_device.h> 24#include <linux/of.h>
25 25
26#include <asm/prom.h> 26#include <asm/prom.h>
27#include <asm/oplib.h> 27#include <asm/oplib.h>
@@ -81,7 +81,7 @@ static void __init sun4v_path_component(struct device_node *dp, char *tmp_buf)
81 return; 81 return;
82 82
83 regs = rprop->value; 83 regs = rprop->value;
84 if (!is_root_node(dp->parent)) { 84 if (!of_node_is_root(dp->parent)) {
85 sprintf(tmp_buf, "%s@%x,%x", 85 sprintf(tmp_buf, "%s@%x,%x",
86 dp->name, 86 dp->name,
87 (unsigned int) (regs->phys_addr >> 32UL), 87 (unsigned int) (regs->phys_addr >> 32UL),
@@ -121,7 +121,7 @@ static void __init sun4u_path_component(struct device_node *dp, char *tmp_buf)
121 return; 121 return;
122 122
123 regs = prop->value; 123 regs = prop->value;
124 if (!is_root_node(dp->parent)) { 124 if (!of_node_is_root(dp->parent)) {
125 sprintf(tmp_buf, "%s@%x,%x", 125 sprintf(tmp_buf, "%s@%x,%x",
126 dp->name, 126 dp->name,
127 (unsigned int) (regs->phys_addr >> 32UL), 127 (unsigned int) (regs->phys_addr >> 32UL),
diff --git a/arch/sparc/kernel/prom_common.c b/arch/sparc/kernel/prom_common.c
index 57ac9e28be0c..1f830da2ddf2 100644
--- a/arch/sparc/kernel/prom_common.c
+++ b/arch/sparc/kernel/prom_common.c
@@ -244,7 +244,7 @@ char * __init build_full_name(struct device_node *dp)
244 244
245 n = prom_early_alloc(len); 245 n = prom_early_alloc(len);
246 strcpy(n, dp->parent->full_name); 246 strcpy(n, dp->parent->full_name);
247 if (!is_root_node(dp->parent)) { 247 if (!of_node_is_root(dp->parent)) {
248 strcpy(n + plen, "/"); 248 strcpy(n + plen, "/");
249 plen++; 249 plen++;
250 } 250 }
diff --git a/arch/sparc/kernel/prom_irqtrans.c b/arch/sparc/kernel/prom_irqtrans.c
index 5702ad4710cb..ce651147fabc 100644
--- a/arch/sparc/kernel/prom_irqtrans.c
+++ b/arch/sparc/kernel/prom_irqtrans.c
@@ -719,7 +719,7 @@ static unsigned int central_build_irq(struct device_node *dp,
719 void *_data) 719 void *_data)
720{ 720{
721 struct device_node *central_dp = _data; 721 struct device_node *central_dp = _data;
722 struct of_device *central_op = of_find_device_by_node(central_dp); 722 struct platform_device *central_op = of_find_device_by_node(central_dp);
723 struct resource *res; 723 struct resource *res;
724 unsigned long imap, iclr; 724 unsigned long imap, iclr;
725 u32 tmp; 725 u32 tmp;
diff --git a/arch/sparc/kernel/psycho_common.c b/arch/sparc/kernel/psycho_common.c
index 3f34ac853931..fe2af66bb198 100644
--- a/arch/sparc/kernel/psycho_common.c
+++ b/arch/sparc/kernel/psycho_common.c
@@ -447,7 +447,7 @@ int psycho_iommu_init(struct pci_pbm_info *pbm, int tsbsize,
447 447
448} 448}
449 449
450void psycho_pbm_init_common(struct pci_pbm_info *pbm, struct of_device *op, 450void psycho_pbm_init_common(struct pci_pbm_info *pbm, struct platform_device *op,
451 const char *chip_name, int chip_type) 451 const char *chip_name, int chip_type)
452{ 452{
453 struct device_node *dp = op->dev.of_node; 453 struct device_node *dp = op->dev.of_node;
diff --git a/arch/sparc/kernel/psycho_common.h b/arch/sparc/kernel/psycho_common.h
index 092c278ef28d..590b4ed8ab5e 100644
--- a/arch/sparc/kernel/psycho_common.h
+++ b/arch/sparc/kernel/psycho_common.h
@@ -42,7 +42,7 @@ extern int psycho_iommu_init(struct pci_pbm_info *pbm, int tsbsize,
42 unsigned long write_complete_offset); 42 unsigned long write_complete_offset);
43 43
44extern void psycho_pbm_init_common(struct pci_pbm_info *pbm, 44extern void psycho_pbm_init_common(struct pci_pbm_info *pbm,
45 struct of_device *op, 45 struct platform_device *op,
46 const char *chip_name, int chip_type); 46 const char *chip_name, int chip_type);
47 47
48#endif /* _PSYCHO_COMMON_H */ 48#endif /* _PSYCHO_COMMON_H */
diff --git a/arch/sparc/kernel/sbus.c b/arch/sparc/kernel/sbus.c
index cfeaf04b9cdf..2ca32d13abcf 100644
--- a/arch/sparc/kernel/sbus.c
+++ b/arch/sparc/kernel/sbus.c
@@ -57,7 +57,7 @@
57void sbus_set_sbus64(struct device *dev, int bursts) 57void sbus_set_sbus64(struct device *dev, int bursts)
58{ 58{
59 struct iommu *iommu = dev->archdata.iommu; 59 struct iommu *iommu = dev->archdata.iommu;
60 struct of_device *op = to_of_device(dev); 60 struct platform_device *op = to_platform_device(dev);
61 const struct linux_prom_registers *regs; 61 const struct linux_prom_registers *regs;
62 unsigned long cfg_reg; 62 unsigned long cfg_reg;
63 int slot; 63 int slot;
@@ -204,7 +204,7 @@ static unsigned long sysio_imap_to_iclr(unsigned long imap)
204 return imap + diff; 204 return imap + diff;
205} 205}
206 206
207static unsigned int sbus_build_irq(struct of_device *op, unsigned int ino) 207static unsigned int sbus_build_irq(struct platform_device *op, unsigned int ino)
208{ 208{
209 struct iommu *iommu = op->dev.archdata.iommu; 209 struct iommu *iommu = op->dev.archdata.iommu;
210 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL; 210 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL;
@@ -267,7 +267,7 @@ static unsigned int sbus_build_irq(struct of_device *op, unsigned int ino)
267#define SYSIO_UEAFSR_RESV2 0x0000001fffffffffUL /* Reserved */ 267#define SYSIO_UEAFSR_RESV2 0x0000001fffffffffUL /* Reserved */
268static irqreturn_t sysio_ue_handler(int irq, void *dev_id) 268static irqreturn_t sysio_ue_handler(int irq, void *dev_id)
269{ 269{
270 struct of_device *op = dev_id; 270 struct platform_device *op = dev_id;
271 struct iommu *iommu = op->dev.archdata.iommu; 271 struct iommu *iommu = op->dev.archdata.iommu;
272 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL; 272 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL;
273 unsigned long afsr_reg, afar_reg; 273 unsigned long afsr_reg, afar_reg;
@@ -341,7 +341,7 @@ static irqreturn_t sysio_ue_handler(int irq, void *dev_id)
341#define SYSIO_CEAFSR_RESV2 0x0000001fffffffffUL /* Reserved */ 341#define SYSIO_CEAFSR_RESV2 0x0000001fffffffffUL /* Reserved */
342static irqreturn_t sysio_ce_handler(int irq, void *dev_id) 342static irqreturn_t sysio_ce_handler(int irq, void *dev_id)
343{ 343{
344 struct of_device *op = dev_id; 344 struct platform_device *op = dev_id;
345 struct iommu *iommu = op->dev.archdata.iommu; 345 struct iommu *iommu = op->dev.archdata.iommu;
346 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL; 346 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL;
347 unsigned long afsr_reg, afar_reg; 347 unsigned long afsr_reg, afar_reg;
@@ -420,7 +420,7 @@ static irqreturn_t sysio_ce_handler(int irq, void *dev_id)
420#define SYSIO_SBAFSR_RESV3 0x0000001fffffffffUL /* Reserved */ 420#define SYSIO_SBAFSR_RESV3 0x0000001fffffffffUL /* Reserved */
421static irqreturn_t sysio_sbus_error_handler(int irq, void *dev_id) 421static irqreturn_t sysio_sbus_error_handler(int irq, void *dev_id)
422{ 422{
423 struct of_device *op = dev_id; 423 struct platform_device *op = dev_id;
424 struct iommu *iommu = op->dev.archdata.iommu; 424 struct iommu *iommu = op->dev.archdata.iommu;
425 unsigned long afsr_reg, afar_reg, reg_base; 425 unsigned long afsr_reg, afar_reg, reg_base;
426 unsigned long afsr, afar, error_bits; 426 unsigned long afsr, afar, error_bits;
@@ -488,7 +488,7 @@ static irqreturn_t sysio_sbus_error_handler(int irq, void *dev_id)
488#define SYSIO_CE_INO 0x35 488#define SYSIO_CE_INO 0x35
489#define SYSIO_SBUSERR_INO 0x36 489#define SYSIO_SBUSERR_INO 0x36
490 490
491static void __init sysio_register_error_handlers(struct of_device *op) 491static void __init sysio_register_error_handlers(struct platform_device *op)
492{ 492{
493 struct iommu *iommu = op->dev.archdata.iommu; 493 struct iommu *iommu = op->dev.archdata.iommu;
494 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL; 494 unsigned long reg_base = iommu->write_complete_reg - 0x2000UL;
@@ -534,7 +534,7 @@ static void __init sysio_register_error_handlers(struct of_device *op)
534} 534}
535 535
536/* Boot time initialization. */ 536/* Boot time initialization. */
537static void __init sbus_iommu_init(struct of_device *op) 537static void __init sbus_iommu_init(struct platform_device *op)
538{ 538{
539 const struct linux_prom64_registers *pr; 539 const struct linux_prom64_registers *pr;
540 struct device_node *dp = op->dev.of_node; 540 struct device_node *dp = op->dev.of_node;
@@ -663,7 +663,7 @@ static int __init sbus_init(void)
663 struct device_node *dp; 663 struct device_node *dp;
664 664
665 for_each_node_by_name(dp, "sbus") { 665 for_each_node_by_name(dp, "sbus") {
666 struct of_device *op = of_find_device_by_node(dp); 666 struct platform_device *op = of_find_device_by_node(dp);
667 667
668 sbus_iommu_init(op); 668 sbus_iommu_init(op);
669 of_propagate_archdata(op); 669 of_propagate_archdata(op);
diff --git a/arch/sparc/kernel/sys_sparc32.c b/arch/sparc/kernel/sys_sparc32.c
index c0ca87553e1c..e6375a750d9a 100644
--- a/arch/sparc/kernel/sys_sparc32.c
+++ b/arch/sparc/kernel/sys_sparc32.c
@@ -162,7 +162,7 @@ static int cp_compat_stat64(struct kstat *stat,
162 return err; 162 return err;
163} 163}
164 164
165asmlinkage long compat_sys_stat64(char __user * filename, 165asmlinkage long compat_sys_stat64(const char __user * filename,
166 struct compat_stat64 __user *statbuf) 166 struct compat_stat64 __user *statbuf)
167{ 167{
168 struct kstat stat; 168 struct kstat stat;
@@ -173,7 +173,7 @@ asmlinkage long compat_sys_stat64(char __user * filename,
173 return error; 173 return error;
174} 174}
175 175
176asmlinkage long compat_sys_lstat64(char __user * filename, 176asmlinkage long compat_sys_lstat64(const char __user * filename,
177 struct compat_stat64 __user *statbuf) 177 struct compat_stat64 __user *statbuf)
178{ 178{
179 struct kstat stat; 179 struct kstat stat;
@@ -195,7 +195,8 @@ asmlinkage long compat_sys_fstat64(unsigned int fd,
195 return error; 195 return error;
196} 196}
197 197
198asmlinkage long compat_sys_fstatat64(unsigned int dfd, char __user *filename, 198asmlinkage long compat_sys_fstatat64(unsigned int dfd,
199 const char __user *filename,
199 struct compat_stat64 __user * statbuf, int flag) 200 struct compat_stat64 __user * statbuf, int flag)
200{ 201{
201 struct kstat stat; 202 struct kstat stat;
diff --git a/arch/sparc/kernel/time_32.c b/arch/sparc/kernel/time_32.c
index e404b063be2c..9c743b1886ff 100644
--- a/arch/sparc/kernel/time_32.c
+++ b/arch/sparc/kernel/time_32.c
@@ -142,7 +142,7 @@ static struct platform_device m48t59_rtc = {
142 }, 142 },
143}; 143};
144 144
145static int __devinit clock_probe(struct of_device *op, const struct of_device_id *match) 145static int __devinit clock_probe(struct platform_device *op, const struct of_device_id *match)
146{ 146{
147 struct device_node *dp = op->dev.of_node; 147 struct device_node *dp = op->dev.of_node;
148 const char *model = of_get_property(dp, "model", NULL); 148 const char *model = of_get_property(dp, "model", NULL);
@@ -189,7 +189,7 @@ static struct of_platform_driver clock_driver = {
189/* Probe for the mostek real time clock chip. */ 189/* Probe for the mostek real time clock chip. */
190static int __init clock_init(void) 190static int __init clock_init(void)
191{ 191{
192 return of_register_driver(&clock_driver, &of_platform_bus_type); 192 return of_register_platform_driver(&clock_driver);
193} 193}
194/* Must be after subsys_initcall() so that busses are probed. Must 194/* Must be after subsys_initcall() so that busses are probed. Must
195 * be before device_initcall() because things like the RTC driver 195 * be before device_initcall() because things like the RTC driver
diff --git a/arch/sparc/kernel/time_64.c b/arch/sparc/kernel/time_64.c
index 21e9fcae0668..3bc9c9979b92 100644
--- a/arch/sparc/kernel/time_64.c
+++ b/arch/sparc/kernel/time_64.c
@@ -419,7 +419,7 @@ static struct platform_device rtc_cmos_device = {
419 .num_resources = 1, 419 .num_resources = 1,
420}; 420};
421 421
422static int __devinit rtc_probe(struct of_device *op, const struct of_device_id *match) 422static int __devinit rtc_probe(struct platform_device *op, const struct of_device_id *match)
423{ 423{
424 struct resource *r; 424 struct resource *r;
425 425
@@ -477,7 +477,7 @@ static struct platform_device rtc_bq4802_device = {
477 .num_resources = 1, 477 .num_resources = 1,
478}; 478};
479 479
480static int __devinit bq4802_probe(struct of_device *op, const struct of_device_id *match) 480static int __devinit bq4802_probe(struct platform_device *op, const struct of_device_id *match)
481{ 481{
482 482
483 printk(KERN_INFO "%s: BQ4802 regs at 0x%llx\n", 483 printk(KERN_INFO "%s: BQ4802 regs at 0x%llx\n",
@@ -534,7 +534,7 @@ static struct platform_device m48t59_rtc = {
534 }, 534 },
535}; 535};
536 536
537static int __devinit mostek_probe(struct of_device *op, const struct of_device_id *match) 537static int __devinit mostek_probe(struct platform_device *op, const struct of_device_id *match)
538{ 538{
539 struct device_node *dp = op->dev.of_node; 539 struct device_node *dp = op->dev.of_node;
540 540
@@ -586,9 +586,9 @@ static int __init clock_init(void)
586 if (tlb_type == hypervisor) 586 if (tlb_type == hypervisor)
587 return platform_device_register(&rtc_sun4v_device); 587 return platform_device_register(&rtc_sun4v_device);
588 588
589 (void) of_register_driver(&rtc_driver, &of_platform_bus_type); 589 (void) of_register_platform_driver(&rtc_driver);
590 (void) of_register_driver(&mostek_driver, &of_platform_bus_type); 590 (void) of_register_platform_driver(&mostek_driver);
591 (void) of_register_driver(&bq4802_driver, &of_platform_bus_type); 591 (void) of_register_platform_driver(&bq4802_driver);
592 592
593 return 0; 593 return 0;
594} 594}
diff --git a/arch/sparc/mm/highmem.c b/arch/sparc/mm/highmem.c
index 7916feba6e4a..e139e9cbf5f7 100644
--- a/arch/sparc/mm/highmem.c
+++ b/arch/sparc/mm/highmem.c
@@ -65,7 +65,7 @@ void *kmap_atomic(struct page *page, enum km_type type)
65} 65}
66EXPORT_SYMBOL(kmap_atomic); 66EXPORT_SYMBOL(kmap_atomic);
67 67
68void kunmap_atomic(void *kvaddr, enum km_type type) 68void kunmap_atomic_notypecheck(void *kvaddr, enum km_type type)
69{ 69{
70#ifdef CONFIG_DEBUG_HIGHMEM 70#ifdef CONFIG_DEBUG_HIGHMEM
71 unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK; 71 unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
@@ -100,7 +100,7 @@ void kunmap_atomic(void *kvaddr, enum km_type type)
100 100
101 pagefault_enable(); 101 pagefault_enable();
102} 102}
103EXPORT_SYMBOL(kunmap_atomic); 103EXPORT_SYMBOL(kunmap_atomic_notypecheck);
104 104
105/* We may be fed a pagetable here by ptep_to_xxx and others. */ 105/* We may be fed a pagetable here by ptep_to_xxx and others. */
106struct page *kmap_atomic_to_page(void *ptr) 106struct page *kmap_atomic_to_page(void *ptr)
diff --git a/arch/sparc/mm/io-unit.c b/arch/sparc/mm/io-unit.c
index 005e758a4db7..fc58c3e917df 100644
--- a/arch/sparc/mm/io-unit.c
+++ b/arch/sparc/mm/io-unit.c
@@ -35,7 +35,7 @@
35#define IOPERM (IOUPTE_CACHE | IOUPTE_WRITE | IOUPTE_VALID) 35#define IOPERM (IOUPTE_CACHE | IOUPTE_WRITE | IOUPTE_VALID)
36#define MKIOPTE(phys) __iopte((((phys)>>4) & IOUPTE_PAGE) | IOPERM) 36#define MKIOPTE(phys) __iopte((((phys)>>4) & IOUPTE_PAGE) | IOPERM)
37 37
38static void __init iounit_iommu_init(struct of_device *op) 38static void __init iounit_iommu_init(struct platform_device *op)
39{ 39{
40 struct iounit_struct *iounit; 40 struct iounit_struct *iounit;
41 iopte_t *xpt, *xptend; 41 iopte_t *xpt, *xptend;
@@ -74,7 +74,7 @@ static int __init iounit_init(void)
74 struct device_node *dp; 74 struct device_node *dp;
75 75
76 for_each_node_by_name(dp, "sbi") { 76 for_each_node_by_name(dp, "sbi") {
77 struct of_device *op = of_find_device_by_node(dp); 77 struct platform_device *op = of_find_device_by_node(dp);
78 78
79 iounit_iommu_init(op); 79 iounit_iommu_init(op);
80 of_propagate_archdata(op); 80 of_propagate_archdata(op);
diff --git a/arch/sparc/mm/iommu.c b/arch/sparc/mm/iommu.c
index b2e6e73888b5..07fc6a65d9b6 100644
--- a/arch/sparc/mm/iommu.c
+++ b/arch/sparc/mm/iommu.c
@@ -56,14 +56,14 @@ static pgprot_t dvma_prot; /* Consistent mapping pte flags */
56#define IOPERM (IOPTE_CACHE | IOPTE_WRITE | IOPTE_VALID) 56#define IOPERM (IOPTE_CACHE | IOPTE_WRITE | IOPTE_VALID)
57#define MKIOPTE(pfn, perm) (((((pfn)<<8) & IOPTE_PAGE) | (perm)) & ~IOPTE_WAZ) 57#define MKIOPTE(pfn, perm) (((((pfn)<<8) & IOPTE_PAGE) | (perm)) & ~IOPTE_WAZ)
58 58
59static void __init sbus_iommu_init(struct of_device *op) 59static void __init sbus_iommu_init(struct platform_device *op)
60{ 60{
61 struct iommu_struct *iommu; 61 struct iommu_struct *iommu;
62 unsigned int impl, vers; 62 unsigned int impl, vers;
63 unsigned long *bitmap; 63 unsigned long *bitmap;
64 unsigned long tmp; 64 unsigned long tmp;
65 65
66 iommu = kmalloc(sizeof(struct iommu_struct), GFP_ATOMIC); 66 iommu = kmalloc(sizeof(struct iommu_struct), GFP_KERNEL);
67 if (!iommu) { 67 if (!iommu) {
68 prom_printf("Unable to allocate iommu structure\n"); 68 prom_printf("Unable to allocate iommu structure\n");
69 prom_halt(); 69 prom_halt();
@@ -132,7 +132,7 @@ static int __init iommu_init(void)
132 struct device_node *dp; 132 struct device_node *dp;
133 133
134 for_each_node_by_name(dp, "iommu") { 134 for_each_node_by_name(dp, "iommu") {
135 struct of_device *op = of_find_device_by_node(dp); 135 struct platform_device *op = of_find_device_by_node(dp);
136 136
137 sbus_iommu_init(op); 137 sbus_iommu_init(op);
138 of_propagate_archdata(op); 138 of_propagate_archdata(op);