diff options
Diffstat (limited to 'arch')
145 files changed, 8265 insertions, 2484 deletions
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 7779f2d1acad..299bc0468702 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile | |||
@@ -53,7 +53,7 @@ tune-$(CONFIG_CPU_ARM926T) :=-mtune=arm9tdmi | |||
53 | tune-$(CONFIG_CPU_SA110) :=-mtune=strongarm110 | 53 | tune-$(CONFIG_CPU_SA110) :=-mtune=strongarm110 |
54 | tune-$(CONFIG_CPU_SA1100) :=-mtune=strongarm1100 | 54 | tune-$(CONFIG_CPU_SA1100) :=-mtune=strongarm1100 |
55 | tune-$(CONFIG_CPU_XSCALE) :=$(call cc-option,-mtune=xscale,-mtune=strongarm110) -Wa,-mcpu=xscale | 55 | tune-$(CONFIG_CPU_XSCALE) :=$(call cc-option,-mtune=xscale,-mtune=strongarm110) -Wa,-mcpu=xscale |
56 | tune-$(CONFIG_CPU_V6) :=-mtune=strongarm | 56 | tune-$(CONFIG_CPU_V6) :=$(call cc-option,-mtune=arm1136j-s,-mtune=strongarm) |
57 | 57 | ||
58 | # Need -Uarm for gcc < 3.x | 58 | # Need -Uarm for gcc < 3.x |
59 | CFLAGS_ABI :=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) $(call cc-option,-mno-thumb-interwork,) | 59 | CFLAGS_ABI :=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) $(call cc-option,-mno-thumb-interwork,) |
diff --git a/arch/arm/common/scoop.c b/arch/arm/common/scoop.c index d3a04c2a2c85..9e5245c702de 100644 --- a/arch/arm/common/scoop.c +++ b/arch/arm/common/scoop.c | |||
@@ -26,6 +26,8 @@ struct scoop_pcmcia_dev *scoop_devs; | |||
26 | struct scoop_dev { | 26 | struct scoop_dev { |
27 | void *base; | 27 | void *base; |
28 | spinlock_t scoop_lock; | 28 | spinlock_t scoop_lock; |
29 | unsigned short suspend_clr; | ||
30 | unsigned short suspend_set; | ||
29 | u32 scoop_gpwr; | 31 | u32 scoop_gpwr; |
30 | }; | 32 | }; |
31 | 33 | ||
@@ -90,14 +92,24 @@ EXPORT_SYMBOL(reset_scoop); | |||
90 | EXPORT_SYMBOL(read_scoop_reg); | 92 | EXPORT_SYMBOL(read_scoop_reg); |
91 | EXPORT_SYMBOL(write_scoop_reg); | 93 | EXPORT_SYMBOL(write_scoop_reg); |
92 | 94 | ||
95 | static void check_scoop_reg(struct scoop_dev *sdev) | ||
96 | { | ||
97 | unsigned short mcr; | ||
98 | |||
99 | mcr = SCOOP_REG(sdev->base, SCOOP_MCR); | ||
100 | if ((mcr & 0x100) == 0) | ||
101 | SCOOP_REG(sdev->base, SCOOP_MCR) = 0x0101; | ||
102 | } | ||
103 | |||
93 | #ifdef CONFIG_PM | 104 | #ifdef CONFIG_PM |
94 | static int scoop_suspend(struct device *dev, pm_message_t state, uint32_t level) | 105 | static int scoop_suspend(struct device *dev, pm_message_t state, uint32_t level) |
95 | { | 106 | { |
96 | if (level == SUSPEND_POWER_DOWN) { | 107 | if (level == SUSPEND_POWER_DOWN) { |
97 | struct scoop_dev *sdev = dev_get_drvdata(dev); | 108 | struct scoop_dev *sdev = dev_get_drvdata(dev); |
98 | 109 | ||
99 | sdev->scoop_gpwr = SCOOP_REG(sdev->base,SCOOP_GPWR); | 110 | check_scoop_reg(sdev); |
100 | SCOOP_REG(sdev->base,SCOOP_GPWR) = 0; | 111 | sdev->scoop_gpwr = SCOOP_REG(sdev->base, SCOOP_GPWR); |
112 | SCOOP_REG(sdev->base, SCOOP_GPWR) = (sdev->scoop_gpwr & ~sdev->suspend_clr) | sdev->suspend_set; | ||
101 | } | 113 | } |
102 | return 0; | 114 | return 0; |
103 | } | 115 | } |
@@ -107,6 +119,7 @@ static int scoop_resume(struct device *dev, uint32_t level) | |||
107 | if (level == RESUME_POWER_ON) { | 119 | if (level == RESUME_POWER_ON) { |
108 | struct scoop_dev *sdev = dev_get_drvdata(dev); | 120 | struct scoop_dev *sdev = dev_get_drvdata(dev); |
109 | 121 | ||
122 | check_scoop_reg(sdev); | ||
110 | SCOOP_REG(sdev->base,SCOOP_GPWR) = sdev->scoop_gpwr; | 123 | SCOOP_REG(sdev->base,SCOOP_GPWR) = sdev->scoop_gpwr; |
111 | } | 124 | } |
112 | return 0; | 125 | return 0; |
@@ -151,6 +164,9 @@ int __init scoop_probe(struct device *dev) | |||
151 | SCOOP_REG(devptr->base, SCOOP_GPCR) = inf->io_dir & 0xffff; | 164 | SCOOP_REG(devptr->base, SCOOP_GPCR) = inf->io_dir & 0xffff; |
152 | SCOOP_REG(devptr->base, SCOOP_GPWR) = inf->io_out & 0xffff; | 165 | SCOOP_REG(devptr->base, SCOOP_GPWR) = inf->io_out & 0xffff; |
153 | 166 | ||
167 | devptr->suspend_clr = inf->suspend_clr; | ||
168 | devptr->suspend_set = inf->suspend_set; | ||
169 | |||
154 | return 0; | 170 | return 0; |
155 | } | 171 | } |
156 | 172 | ||
diff --git a/arch/arm/configs/collie_defconfig b/arch/arm/configs/collie_defconfig new file mode 100644 index 000000000000..40dfe07a8bce --- /dev/null +++ b/arch/arm/configs/collie_defconfig | |||
@@ -0,0 +1,888 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.14-rc3 | ||
4 | # Sun Oct 9 16:55:14 2005 | ||
5 | # | ||
6 | CONFIG_ARM=y | ||
7 | CONFIG_MMU=y | ||
8 | CONFIG_UID16=y | ||
9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
10 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
11 | |||
12 | # | ||
13 | # Code maturity level options | ||
14 | # | ||
15 | CONFIG_EXPERIMENTAL=y | ||
16 | # CONFIG_CLEAN_COMPILE is not set | ||
17 | CONFIG_BROKEN=y | ||
18 | CONFIG_BROKEN_ON_SMP=y | ||
19 | CONFIG_LOCK_KERNEL=y | ||
20 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
21 | |||
22 | # | ||
23 | # General setup | ||
24 | # | ||
25 | CONFIG_LOCALVERSION="" | ||
26 | CONFIG_LOCALVERSION_AUTO=y | ||
27 | CONFIG_SWAP=y | ||
28 | CONFIG_SYSVIPC=y | ||
29 | # CONFIG_POSIX_MQUEUE is not set | ||
30 | CONFIG_BSD_PROCESS_ACCT=y | ||
31 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | ||
32 | CONFIG_SYSCTL=y | ||
33 | # CONFIG_AUDIT is not set | ||
34 | CONFIG_HOTPLUG=y | ||
35 | CONFIG_KOBJECT_UEVENT=y | ||
36 | # CONFIG_IKCONFIG is not set | ||
37 | CONFIG_INITRAMFS_SOURCE="" | ||
38 | CONFIG_EMBEDDED=y | ||
39 | CONFIG_KALLSYMS=y | ||
40 | # CONFIG_KALLSYMS_ALL is not set | ||
41 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
42 | CONFIG_PRINTK=y | ||
43 | CONFIG_BUG=y | ||
44 | CONFIG_BASE_FULL=y | ||
45 | CONFIG_FUTEX=y | ||
46 | CONFIG_EPOLL=y | ||
47 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
48 | CONFIG_SHMEM=y | ||
49 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
50 | CONFIG_CC_ALIGN_LABELS=0 | ||
51 | CONFIG_CC_ALIGN_LOOPS=0 | ||
52 | CONFIG_CC_ALIGN_JUMPS=0 | ||
53 | # CONFIG_TINY_SHMEM is not set | ||
54 | CONFIG_BASE_SMALL=0 | ||
55 | |||
56 | # | ||
57 | # Loadable module support | ||
58 | # | ||
59 | CONFIG_MODULES=y | ||
60 | CONFIG_MODULE_UNLOAD=y | ||
61 | CONFIG_MODULE_FORCE_UNLOAD=y | ||
62 | CONFIG_OBSOLETE_MODPARM=y | ||
63 | CONFIG_MODVERSIONS=y | ||
64 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
65 | CONFIG_KMOD=y | ||
66 | |||
67 | # | ||
68 | # System Type | ||
69 | # | ||
70 | # CONFIG_ARCH_CLPS7500 is not set | ||
71 | # CONFIG_ARCH_CLPS711X is not set | ||
72 | # CONFIG_ARCH_CO285 is not set | ||
73 | # CONFIG_ARCH_EBSA110 is not set | ||
74 | # CONFIG_ARCH_CAMELOT is not set | ||
75 | # CONFIG_ARCH_FOOTBRIDGE is not set | ||
76 | # CONFIG_ARCH_INTEGRATOR is not set | ||
77 | # CONFIG_ARCH_IOP3XX is not set | ||
78 | # CONFIG_ARCH_IXP4XX is not set | ||
79 | # CONFIG_ARCH_IXP2000 is not set | ||
80 | # CONFIG_ARCH_L7200 is not set | ||
81 | # CONFIG_ARCH_PXA is not set | ||
82 | # CONFIG_ARCH_RPC is not set | ||
83 | CONFIG_ARCH_SA1100=y | ||
84 | # CONFIG_ARCH_S3C2410 is not set | ||
85 | # CONFIG_ARCH_SHARK is not set | ||
86 | # CONFIG_ARCH_LH7A40X is not set | ||
87 | # CONFIG_ARCH_OMAP is not set | ||
88 | # CONFIG_ARCH_VERSATILE is not set | ||
89 | # CONFIG_ARCH_IMX is not set | ||
90 | # CONFIG_ARCH_H720X is not set | ||
91 | # CONFIG_ARCH_AAEC2000 is not set | ||
92 | |||
93 | # | ||
94 | # SA11x0 Implementations | ||
95 | # | ||
96 | # CONFIG_SA1100_ASSABET is not set | ||
97 | # CONFIG_SA1100_CERF is not set | ||
98 | CONFIG_SA1100_COLLIE=y | ||
99 | # CONFIG_SA1100_H3100 is not set | ||
100 | # CONFIG_SA1100_H3600 is not set | ||
101 | # CONFIG_SA1100_H3800 is not set | ||
102 | # CONFIG_SA1100_BADGE4 is not set | ||
103 | # CONFIG_SA1100_JORNADA720 is not set | ||
104 | # CONFIG_SA1100_HACKKIT is not set | ||
105 | # CONFIG_SA1100_LART is not set | ||
106 | # CONFIG_SA1100_PLEB is not set | ||
107 | # CONFIG_SA1100_SHANNON is not set | ||
108 | # CONFIG_SA1100_SIMPAD is not set | ||
109 | # CONFIG_SA1100_SSP is not set | ||
110 | |||
111 | # | ||
112 | # Processor Type | ||
113 | # | ||
114 | CONFIG_CPU_32=y | ||
115 | CONFIG_CPU_SA1100=y | ||
116 | CONFIG_CPU_32v4=y | ||
117 | CONFIG_CPU_ABRT_EV4=y | ||
118 | CONFIG_CPU_CACHE_V4WB=y | ||
119 | CONFIG_CPU_CACHE_VIVT=y | ||
120 | CONFIG_CPU_TLB_V4WB=y | ||
121 | |||
122 | # | ||
123 | # Processor Features | ||
124 | # | ||
125 | CONFIG_SHARP_LOCOMO=y | ||
126 | CONFIG_SHARP_PARAM=y | ||
127 | CONFIG_SHARP_SCOOP=y | ||
128 | |||
129 | # | ||
130 | # Bus support | ||
131 | # | ||
132 | CONFIG_ISA=y | ||
133 | CONFIG_ISA_DMA_API=y | ||
134 | |||
135 | # | ||
136 | # PCCARD (PCMCIA/CardBus) support | ||
137 | # | ||
138 | # CONFIG_PCCARD is not set | ||
139 | |||
140 | # | ||
141 | # Kernel Features | ||
142 | # | ||
143 | # CONFIG_SMP is not set | ||
144 | CONFIG_PREEMPT=y | ||
145 | # CONFIG_NO_IDLE_HZ is not set | ||
146 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y | ||
147 | CONFIG_SELECT_MEMORY_MODEL=y | ||
148 | # CONFIG_FLATMEM_MANUAL is not set | ||
149 | CONFIG_DISCONTIGMEM_MANUAL=y | ||
150 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
151 | CONFIG_DISCONTIGMEM=y | ||
152 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
153 | CONFIG_NEED_MULTIPLE_NODES=y | ||
154 | # CONFIG_SPARSEMEM_STATIC is not set | ||
155 | # CONFIG_LEDS is not set | ||
156 | CONFIG_ALIGNMENT_TRAP=y | ||
157 | |||
158 | # | ||
159 | # Boot options | ||
160 | # | ||
161 | CONFIG_ZBOOT_ROM_TEXT=0x0 | ||
162 | CONFIG_ZBOOT_ROM_BSS=0x0 | ||
163 | CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 debug" | ||
164 | # CONFIG_XIP_KERNEL is not set | ||
165 | |||
166 | # | ||
167 | # CPU Frequency scaling | ||
168 | # | ||
169 | # CONFIG_CPU_FREQ is not set | ||
170 | |||
171 | # | ||
172 | # Floating point emulation | ||
173 | # | ||
174 | |||
175 | # | ||
176 | # At least one emulation must be selected | ||
177 | # | ||
178 | CONFIG_FPE_NWFPE=y | ||
179 | # CONFIG_FPE_NWFPE_XP is not set | ||
180 | # CONFIG_FPE_FASTFPE is not set | ||
181 | |||
182 | # | ||
183 | # Userspace binary formats | ||
184 | # | ||
185 | CONFIG_BINFMT_ELF=y | ||
186 | CONFIG_BINFMT_AOUT=m | ||
187 | CONFIG_BINFMT_MISC=m | ||
188 | # CONFIG_ARTHUR is not set | ||
189 | |||
190 | # | ||
191 | # Power management options | ||
192 | # | ||
193 | CONFIG_PM=y | ||
194 | CONFIG_APM=y | ||
195 | |||
196 | # | ||
197 | # Networking | ||
198 | # | ||
199 | CONFIG_NET=y | ||
200 | |||
201 | # | ||
202 | # Networking options | ||
203 | # | ||
204 | CONFIG_PACKET=y | ||
205 | CONFIG_PACKET_MMAP=y | ||
206 | CONFIG_UNIX=y | ||
207 | # CONFIG_NET_KEY is not set | ||
208 | CONFIG_INET=y | ||
209 | # CONFIG_IP_MULTICAST is not set | ||
210 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
211 | CONFIG_IP_FIB_HASH=y | ||
212 | # CONFIG_IP_PNP is not set | ||
213 | # CONFIG_NET_IPIP is not set | ||
214 | # CONFIG_NET_IPGRE is not set | ||
215 | # CONFIG_ARPD is not set | ||
216 | CONFIG_SYN_COOKIES=y | ||
217 | # CONFIG_INET_AH is not set | ||
218 | # CONFIG_INET_ESP is not set | ||
219 | # CONFIG_INET_IPCOMP is not set | ||
220 | # CONFIG_INET_TUNNEL is not set | ||
221 | CONFIG_INET_DIAG=y | ||
222 | CONFIG_INET_TCP_DIAG=y | ||
223 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
224 | CONFIG_TCP_CONG_BIC=y | ||
225 | # CONFIG_IPV6 is not set | ||
226 | # CONFIG_NETFILTER is not set | ||
227 | |||
228 | # | ||
229 | # DCCP Configuration (EXPERIMENTAL) | ||
230 | # | ||
231 | # CONFIG_IP_DCCP is not set | ||
232 | |||
233 | # | ||
234 | # SCTP Configuration (EXPERIMENTAL) | ||
235 | # | ||
236 | # CONFIG_IP_SCTP is not set | ||
237 | # CONFIG_ATM is not set | ||
238 | # CONFIG_BRIDGE is not set | ||
239 | # CONFIG_VLAN_8021Q is not set | ||
240 | # CONFIG_DECNET is not set | ||
241 | # CONFIG_LLC2 is not set | ||
242 | # CONFIG_IPX is not set | ||
243 | # CONFIG_ATALK is not set | ||
244 | # CONFIG_X25 is not set | ||
245 | # CONFIG_LAPB is not set | ||
246 | # CONFIG_NET_DIVERT is not set | ||
247 | # CONFIG_ECONET is not set | ||
248 | # CONFIG_WAN_ROUTER is not set | ||
249 | # CONFIG_NET_SCHED is not set | ||
250 | # CONFIG_NET_CLS_ROUTE is not set | ||
251 | |||
252 | # | ||
253 | # Network testing | ||
254 | # | ||
255 | # CONFIG_NET_PKTGEN is not set | ||
256 | # CONFIG_HAMRADIO is not set | ||
257 | # CONFIG_IRDA is not set | ||
258 | # CONFIG_BT is not set | ||
259 | # CONFIG_IEEE80211 is not set | ||
260 | |||
261 | # | ||
262 | # Device Drivers | ||
263 | # | ||
264 | |||
265 | # | ||
266 | # Generic Driver Options | ||
267 | # | ||
268 | CONFIG_STANDALONE=y | ||
269 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
270 | CONFIG_FW_LOADER=m | ||
271 | # CONFIG_DEBUG_DRIVER is not set | ||
272 | |||
273 | # | ||
274 | # Memory Technology Devices (MTD) | ||
275 | # | ||
276 | CONFIG_MTD=y | ||
277 | # CONFIG_MTD_DEBUG is not set | ||
278 | # CONFIG_MTD_CONCAT is not set | ||
279 | CONFIG_MTD_PARTITIONS=y | ||
280 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
281 | # CONFIG_MTD_CMDLINE_PARTS is not set | ||
282 | # CONFIG_MTD_AFS_PARTS is not set | ||
283 | |||
284 | # | ||
285 | # User Modules And Translation Layers | ||
286 | # | ||
287 | CONFIG_MTD_CHAR=y | ||
288 | CONFIG_MTD_BLOCK=y | ||
289 | # CONFIG_FTL is not set | ||
290 | # CONFIG_NFTL is not set | ||
291 | # CONFIG_INFTL is not set | ||
292 | |||
293 | # | ||
294 | # RAM/ROM/Flash chip drivers | ||
295 | # | ||
296 | # CONFIG_MTD_CFI is not set | ||
297 | # CONFIG_MTD_JEDECPROBE is not set | ||
298 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
299 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
300 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
301 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
302 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
303 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
304 | CONFIG_MTD_CFI_I1=y | ||
305 | CONFIG_MTD_CFI_I2=y | ||
306 | # CONFIG_MTD_CFI_I4 is not set | ||
307 | # CONFIG_MTD_CFI_I8 is not set | ||
308 | # CONFIG_MTD_RAM is not set | ||
309 | # CONFIG_MTD_ROM is not set | ||
310 | # CONFIG_MTD_ABSENT is not set | ||
311 | CONFIG_MTD_OBSOLETE_CHIPS=y | ||
312 | # CONFIG_MTD_AMDSTD is not set | ||
313 | CONFIG_MTD_SHARP=y | ||
314 | # CONFIG_MTD_JEDEC is not set | ||
315 | |||
316 | # | ||
317 | # Mapping drivers for chip access | ||
318 | # | ||
319 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | ||
320 | # CONFIG_MTD_PLATRAM is not set | ||
321 | |||
322 | # | ||
323 | # Self-contained MTD device drivers | ||
324 | # | ||
325 | # CONFIG_MTD_SLRAM is not set | ||
326 | # CONFIG_MTD_PHRAM is not set | ||
327 | # CONFIG_MTD_MTDRAM is not set | ||
328 | # CONFIG_MTD_BLKMTD is not set | ||
329 | # CONFIG_MTD_BLOCK2MTD is not set | ||
330 | |||
331 | # | ||
332 | # Disk-On-Chip Device Drivers | ||
333 | # | ||
334 | # CONFIG_MTD_DOC2000 is not set | ||
335 | # CONFIG_MTD_DOC2001 is not set | ||
336 | # CONFIG_MTD_DOC2001PLUS is not set | ||
337 | |||
338 | # | ||
339 | # NAND Flash Device Drivers | ||
340 | # | ||
341 | # CONFIG_MTD_NAND is not set | ||
342 | |||
343 | # | ||
344 | # Parallel port support | ||
345 | # | ||
346 | # CONFIG_PARPORT is not set | ||
347 | |||
348 | # | ||
349 | # Plug and Play support | ||
350 | # | ||
351 | # CONFIG_PNP is not set | ||
352 | |||
353 | # | ||
354 | # Block devices | ||
355 | # | ||
356 | # CONFIG_BLK_DEV_XD is not set | ||
357 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
358 | CONFIG_BLK_DEV_LOOP=y | ||
359 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
360 | # CONFIG_BLK_DEV_NBD is not set | ||
361 | CONFIG_BLK_DEV_RAM=y | ||
362 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
363 | CONFIG_BLK_DEV_RAM_SIZE=1024 | ||
364 | CONFIG_BLK_DEV_INITRD=y | ||
365 | # CONFIG_CDROM_PKTCDVD is not set | ||
366 | |||
367 | # | ||
368 | # IO Schedulers | ||
369 | # | ||
370 | CONFIG_IOSCHED_NOOP=y | ||
371 | CONFIG_IOSCHED_AS=y | ||
372 | CONFIG_IOSCHED_DEADLINE=y | ||
373 | CONFIG_IOSCHED_CFQ=y | ||
374 | CONFIG_ATA_OVER_ETH=m | ||
375 | |||
376 | # | ||
377 | # ATA/ATAPI/MFM/RLL support | ||
378 | # | ||
379 | # CONFIG_IDE is not set | ||
380 | |||
381 | # | ||
382 | # SCSI device support | ||
383 | # | ||
384 | # CONFIG_RAID_ATTRS is not set | ||
385 | # CONFIG_SCSI is not set | ||
386 | |||
387 | # | ||
388 | # Multi-device support (RAID and LVM) | ||
389 | # | ||
390 | # CONFIG_MD is not set | ||
391 | |||
392 | # | ||
393 | # Fusion MPT device support | ||
394 | # | ||
395 | # CONFIG_FUSION is not set | ||
396 | |||
397 | # | ||
398 | # IEEE 1394 (FireWire) support | ||
399 | # | ||
400 | # CONFIG_IEEE1394 is not set | ||
401 | |||
402 | # | ||
403 | # I2O device support | ||
404 | # | ||
405 | |||
406 | # | ||
407 | # Network device support | ||
408 | # | ||
409 | # CONFIG_NETDEVICES is not set | ||
410 | # CONFIG_NETPOLL is not set | ||
411 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
412 | |||
413 | # | ||
414 | # ISDN subsystem | ||
415 | # | ||
416 | # CONFIG_ISDN is not set | ||
417 | |||
418 | # | ||
419 | # Input device support | ||
420 | # | ||
421 | CONFIG_INPUT=y | ||
422 | |||
423 | # | ||
424 | # Userland interfaces | ||
425 | # | ||
426 | # CONFIG_INPUT_MOUSEDEV is not set | ||
427 | # CONFIG_INPUT_JOYDEV is not set | ||
428 | CONFIG_INPUT_TSDEV=y | ||
429 | CONFIG_INPUT_TSDEV_SCREEN_X=240 | ||
430 | CONFIG_INPUT_TSDEV_SCREEN_Y=320 | ||
431 | CONFIG_INPUT_EVDEV=y | ||
432 | CONFIG_INPUT_EVBUG=y | ||
433 | |||
434 | # | ||
435 | # Input Device Drivers | ||
436 | # | ||
437 | CONFIG_INPUT_KEYBOARD=y | ||
438 | # CONFIG_KEYBOARD_ATKBD is not set | ||
439 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
440 | # CONFIG_KEYBOARD_LKKBD is not set | ||
441 | CONFIG_KEYBOARD_LOCOMO=y | ||
442 | # CONFIG_KEYBOARD_XTKBD is not set | ||
443 | # CONFIG_KEYBOARD_NEWTON is not set | ||
444 | # CONFIG_INPUT_MOUSE is not set | ||
445 | # CONFIG_INPUT_JOYSTICK is not set | ||
446 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
447 | # CONFIG_INPUT_MISC is not set | ||
448 | |||
449 | # | ||
450 | # Hardware I/O ports | ||
451 | # | ||
452 | CONFIG_SERIO=y | ||
453 | # CONFIG_SERIO_SERPORT is not set | ||
454 | # CONFIG_SERIO_LIBPS2 is not set | ||
455 | # CONFIG_SERIO_RAW is not set | ||
456 | # CONFIG_GAMEPORT is not set | ||
457 | |||
458 | # | ||
459 | # Character devices | ||
460 | # | ||
461 | CONFIG_VT=y | ||
462 | CONFIG_VT_CONSOLE=y | ||
463 | CONFIG_HW_CONSOLE=y | ||
464 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
465 | |||
466 | # | ||
467 | # Serial drivers | ||
468 | # | ||
469 | # CONFIG_SERIAL_8250 is not set | ||
470 | |||
471 | # | ||
472 | # Non-8250 serial port support | ||
473 | # | ||
474 | CONFIG_SERIAL_SA1100=y | ||
475 | CONFIG_SERIAL_SA1100_CONSOLE=y | ||
476 | CONFIG_SERIAL_CORE=y | ||
477 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
478 | CONFIG_UNIX98_PTYS=y | ||
479 | # CONFIG_LEGACY_PTYS is not set | ||
480 | |||
481 | # | ||
482 | # IPMI | ||
483 | # | ||
484 | # CONFIG_IPMI_HANDLER is not set | ||
485 | |||
486 | # | ||
487 | # Watchdog Cards | ||
488 | # | ||
489 | # CONFIG_WATCHDOG is not set | ||
490 | # CONFIG_NVRAM is not set | ||
491 | # CONFIG_RTC is not set | ||
492 | # CONFIG_DTLK is not set | ||
493 | # CONFIG_R3964 is not set | ||
494 | |||
495 | # | ||
496 | # Ftape, the floppy tape device driver | ||
497 | # | ||
498 | # CONFIG_RAW_DRIVER is not set | ||
499 | |||
500 | # | ||
501 | # TPM devices | ||
502 | # | ||
503 | |||
504 | # | ||
505 | # I2C support | ||
506 | # | ||
507 | CONFIG_I2C=m | ||
508 | # CONFIG_I2C_CHARDEV is not set | ||
509 | |||
510 | # | ||
511 | # I2C Algorithms | ||
512 | # | ||
513 | CONFIG_I2C_ALGOBIT=m | ||
514 | # CONFIG_I2C_ALGOPCF is not set | ||
515 | # CONFIG_I2C_ALGOPCA is not set | ||
516 | |||
517 | # | ||
518 | # I2C Hardware Bus support | ||
519 | # | ||
520 | # CONFIG_I2C_ELEKTOR is not set | ||
521 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
522 | # CONFIG_I2C_STUB is not set | ||
523 | # CONFIG_I2C_PCA_ISA is not set | ||
524 | |||
525 | # | ||
526 | # Miscellaneous I2C Chip support | ||
527 | # | ||
528 | # CONFIG_SENSORS_DS1337 is not set | ||
529 | # CONFIG_SENSORS_DS1374 is not set | ||
530 | # CONFIG_SENSORS_EEPROM is not set | ||
531 | # CONFIG_SENSORS_PCF8574 is not set | ||
532 | # CONFIG_SENSORS_PCA9539 is not set | ||
533 | # CONFIG_SENSORS_PCF8591 is not set | ||
534 | # CONFIG_SENSORS_RTC8564 is not set | ||
535 | # CONFIG_SENSORS_MAX6875 is not set | ||
536 | # CONFIG_I2C_DEBUG_CORE is not set | ||
537 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
538 | # CONFIG_I2C_DEBUG_BUS is not set | ||
539 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
540 | |||
541 | # | ||
542 | # Hardware Monitoring support | ||
543 | # | ||
544 | CONFIG_HWMON=y | ||
545 | # CONFIG_HWMON_VID is not set | ||
546 | # CONFIG_SENSORS_ADM1021 is not set | ||
547 | # CONFIG_SENSORS_ADM1025 is not set | ||
548 | # CONFIG_SENSORS_ADM1026 is not set | ||
549 | # CONFIG_SENSORS_ADM1031 is not set | ||
550 | # CONFIG_SENSORS_ADM9240 is not set | ||
551 | # CONFIG_SENSORS_ASB100 is not set | ||
552 | # CONFIG_SENSORS_ATXP1 is not set | ||
553 | # CONFIG_SENSORS_DS1621 is not set | ||
554 | # CONFIG_SENSORS_FSCHER is not set | ||
555 | # CONFIG_SENSORS_FSCPOS is not set | ||
556 | # CONFIG_SENSORS_GL518SM is not set | ||
557 | # CONFIG_SENSORS_GL520SM is not set | ||
558 | # CONFIG_SENSORS_IT87 is not set | ||
559 | # CONFIG_SENSORS_LM63 is not set | ||
560 | # CONFIG_SENSORS_LM75 is not set | ||
561 | # CONFIG_SENSORS_LM77 is not set | ||
562 | # CONFIG_SENSORS_LM78 is not set | ||
563 | # CONFIG_SENSORS_LM80 is not set | ||
564 | # CONFIG_SENSORS_LM83 is not set | ||
565 | # CONFIG_SENSORS_LM85 is not set | ||
566 | # CONFIG_SENSORS_LM87 is not set | ||
567 | # CONFIG_SENSORS_LM90 is not set | ||
568 | # CONFIG_SENSORS_LM92 is not set | ||
569 | # CONFIG_SENSORS_MAX1619 is not set | ||
570 | # CONFIG_SENSORS_PC87360 is not set | ||
571 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
572 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
573 | # CONFIG_SENSORS_W83781D is not set | ||
574 | # CONFIG_SENSORS_W83792D is not set | ||
575 | # CONFIG_SENSORS_W83L785TS is not set | ||
576 | # CONFIG_SENSORS_W83627HF is not set | ||
577 | # CONFIG_SENSORS_W83627EHF is not set | ||
578 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
579 | |||
580 | # | ||
581 | # Misc devices | ||
582 | # | ||
583 | |||
584 | # | ||
585 | # Multimedia Capabilities Port drivers | ||
586 | # | ||
587 | # CONFIG_MCP_SA11X0 is not set | ||
588 | |||
589 | # | ||
590 | # Multimedia devices | ||
591 | # | ||
592 | CONFIG_VIDEO_DEV=m | ||
593 | |||
594 | # | ||
595 | # Video For Linux | ||
596 | # | ||
597 | |||
598 | # | ||
599 | # Video Adapters | ||
600 | # | ||
601 | # CONFIG_VIDEO_PMS is not set | ||
602 | # CONFIG_VIDEO_CPIA is not set | ||
603 | # CONFIG_VIDEO_SAA5246A is not set | ||
604 | # CONFIG_VIDEO_SAA5249 is not set | ||
605 | # CONFIG_TUNER_3036 is not set | ||
606 | # CONFIG_VIDEO_OVCAMCHIP is not set | ||
607 | |||
608 | # | ||
609 | # Radio Adapters | ||
610 | # | ||
611 | # CONFIG_RADIO_CADET is not set | ||
612 | # CONFIG_RADIO_RTRACK is not set | ||
613 | # CONFIG_RADIO_RTRACK2 is not set | ||
614 | # CONFIG_RADIO_AZTECH is not set | ||
615 | # CONFIG_RADIO_GEMTEK is not set | ||
616 | # CONFIG_RADIO_MAESTRO is not set | ||
617 | # CONFIG_RADIO_SF16FMI is not set | ||
618 | # CONFIG_RADIO_SF16FMR2 is not set | ||
619 | # CONFIG_RADIO_TERRATEC is not set | ||
620 | # CONFIG_RADIO_TRUST is not set | ||
621 | # CONFIG_RADIO_TYPHOON is not set | ||
622 | # CONFIG_RADIO_ZOLTRIX is not set | ||
623 | |||
624 | # | ||
625 | # Digital Video Broadcasting Devices | ||
626 | # | ||
627 | # CONFIG_DVB is not set | ||
628 | |||
629 | # | ||
630 | # Graphics support | ||
631 | # | ||
632 | CONFIG_FB=y | ||
633 | CONFIG_FB_CFB_FILLRECT=y | ||
634 | CONFIG_FB_CFB_COPYAREA=y | ||
635 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
636 | CONFIG_FB_SOFT_CURSOR=y | ||
637 | # CONFIG_FB_MACMODES is not set | ||
638 | CONFIG_FB_MODE_HELPERS=y | ||
639 | # CONFIG_FB_TILEBLITTING is not set | ||
640 | CONFIG_FB_SA1100=y | ||
641 | # CONFIG_FB_S1D13XXX is not set | ||
642 | # CONFIG_FB_VIRTUAL is not set | ||
643 | |||
644 | # | ||
645 | # Console display driver support | ||
646 | # | ||
647 | # CONFIG_VGA_CONSOLE is not set | ||
648 | # CONFIG_MDA_CONSOLE is not set | ||
649 | CONFIG_DUMMY_CONSOLE=y | ||
650 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
651 | CONFIG_FONTS=y | ||
652 | CONFIG_FONT_8x8=y | ||
653 | # CONFIG_FONT_8x16 is not set | ||
654 | # CONFIG_FONT_6x11 is not set | ||
655 | # CONFIG_FONT_7x14 is not set | ||
656 | # CONFIG_FONT_PEARL_8x8 is not set | ||
657 | # CONFIG_FONT_ACORN_8x8 is not set | ||
658 | # CONFIG_FONT_MINI_4x6 is not set | ||
659 | # CONFIG_FONT_SUN8x16 is not set | ||
660 | # CONFIG_FONT_SUN12x22 is not set | ||
661 | # CONFIG_FONT_10x18 is not set | ||
662 | |||
663 | # | ||
664 | # Logo configuration | ||
665 | # | ||
666 | # CONFIG_LOGO is not set | ||
667 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
668 | |||
669 | # | ||
670 | # Sound | ||
671 | # | ||
672 | # CONFIG_SOUND is not set | ||
673 | |||
674 | # | ||
675 | # USB support | ||
676 | # | ||
677 | CONFIG_USB_ARCH_HAS_HCD=y | ||
678 | # CONFIG_USB_ARCH_HAS_OHCI is not set | ||
679 | # CONFIG_USB is not set | ||
680 | |||
681 | # | ||
682 | # USB Gadget Support | ||
683 | # | ||
684 | CONFIG_USB_GADGET=y | ||
685 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | ||
686 | # CONFIG_USB_GADGET_NET2280 is not set | ||
687 | # CONFIG_USB_GADGET_PXA2XX is not set | ||
688 | # CONFIG_USB_GADGET_GOKU is not set | ||
689 | # CONFIG_USB_GADGET_LH7A40X is not set | ||
690 | # CONFIG_USB_GADGET_OMAP is not set | ||
691 | # CONFIG_USB_GADGET_DUMMY_HCD is not set | ||
692 | # CONFIG_USB_GADGET_DUALSPEED is not set | ||
693 | |||
694 | # | ||
695 | # MMC/SD Card support | ||
696 | # | ||
697 | # CONFIG_MMC is not set | ||
698 | |||
699 | # | ||
700 | # File systems | ||
701 | # | ||
702 | CONFIG_EXT2_FS=y | ||
703 | CONFIG_EXT2_FS_XATTR=y | ||
704 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
705 | CONFIG_EXT2_FS_SECURITY=y | ||
706 | # CONFIG_EXT2_FS_XIP is not set | ||
707 | # CONFIG_EXT3_FS is not set | ||
708 | # CONFIG_JBD is not set | ||
709 | CONFIG_FS_MBCACHE=y | ||
710 | # CONFIG_REISERFS_FS is not set | ||
711 | # CONFIG_JFS_FS is not set | ||
712 | CONFIG_FS_POSIX_ACL=y | ||
713 | # CONFIG_XFS_FS is not set | ||
714 | # CONFIG_MINIX_FS is not set | ||
715 | CONFIG_ROMFS_FS=y | ||
716 | CONFIG_INOTIFY=y | ||
717 | # CONFIG_QUOTA is not set | ||
718 | # CONFIG_DNOTIFY is not set | ||
719 | # CONFIG_AUTOFS_FS is not set | ||
720 | # CONFIG_AUTOFS4_FS is not set | ||
721 | # CONFIG_FUSE_FS is not set | ||
722 | |||
723 | # | ||
724 | # CD-ROM/DVD Filesystems | ||
725 | # | ||
726 | # CONFIG_ISO9660_FS is not set | ||
727 | # CONFIG_UDF_FS is not set | ||
728 | |||
729 | # | ||
730 | # DOS/FAT/NT Filesystems | ||
731 | # | ||
732 | CONFIG_FAT_FS=y | ||
733 | CONFIG_MSDOS_FS=y | ||
734 | CONFIG_VFAT_FS=y | ||
735 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
736 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
737 | # CONFIG_NTFS_FS is not set | ||
738 | |||
739 | # | ||
740 | # Pseudo filesystems | ||
741 | # | ||
742 | CONFIG_PROC_FS=y | ||
743 | CONFIG_SYSFS=y | ||
744 | CONFIG_TMPFS=y | ||
745 | # CONFIG_HUGETLBFS is not set | ||
746 | # CONFIG_HUGETLB_PAGE is not set | ||
747 | CONFIG_RAMFS=y | ||
748 | # CONFIG_RELAYFS_FS is not set | ||
749 | |||
750 | # | ||
751 | # Miscellaneous filesystems | ||
752 | # | ||
753 | # CONFIG_ADFS_FS is not set | ||
754 | # CONFIG_AFFS_FS is not set | ||
755 | # CONFIG_HFS_FS is not set | ||
756 | # CONFIG_HFSPLUS_FS is not set | ||
757 | # CONFIG_BEFS_FS is not set | ||
758 | # CONFIG_BFS_FS is not set | ||
759 | # CONFIG_EFS_FS is not set | ||
760 | # CONFIG_JFFS_FS is not set | ||
761 | CONFIG_JFFS2_FS=y | ||
762 | CONFIG_JFFS2_FS_DEBUG=0 | ||
763 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
764 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | ||
765 | CONFIG_JFFS2_ZLIB=y | ||
766 | CONFIG_JFFS2_RTIME=y | ||
767 | # CONFIG_JFFS2_RUBIN is not set | ||
768 | CONFIG_CRAMFS=y | ||
769 | # CONFIG_VXFS_FS is not set | ||
770 | # CONFIG_HPFS_FS is not set | ||
771 | # CONFIG_QNX4FS_FS is not set | ||
772 | # CONFIG_SYSV_FS is not set | ||
773 | # CONFIG_UFS_FS is not set | ||
774 | |||
775 | # | ||
776 | # Network File Systems | ||
777 | # | ||
778 | # CONFIG_NFS_FS is not set | ||
779 | # CONFIG_NFSD is not set | ||
780 | # CONFIG_SMB_FS is not set | ||
781 | # CONFIG_CIFS is not set | ||
782 | # CONFIG_NCP_FS is not set | ||
783 | # CONFIG_CODA_FS is not set | ||
784 | # CONFIG_AFS_FS is not set | ||
785 | # CONFIG_9P_FS is not set | ||
786 | |||
787 | # | ||
788 | # Partition Types | ||
789 | # | ||
790 | # CONFIG_PARTITION_ADVANCED is not set | ||
791 | CONFIG_MSDOS_PARTITION=y | ||
792 | |||
793 | # | ||
794 | # Native Language Support | ||
795 | # | ||
796 | CONFIG_NLS=y | ||
797 | CONFIG_NLS_DEFAULT="cp437" | ||
798 | CONFIG_NLS_CODEPAGE_437=m | ||
799 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
800 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
801 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
802 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
803 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
804 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
805 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
806 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
807 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
808 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
809 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
810 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
811 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
812 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
813 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
814 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
815 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
816 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
817 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
818 | # CONFIG_NLS_ISO8859_8 is not set | ||
819 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
820 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
821 | # CONFIG_NLS_ASCII is not set | ||
822 | CONFIG_NLS_ISO8859_1=m | ||
823 | # CONFIG_NLS_ISO8859_2 is not set | ||
824 | # CONFIG_NLS_ISO8859_3 is not set | ||
825 | # CONFIG_NLS_ISO8859_4 is not set | ||
826 | # CONFIG_NLS_ISO8859_5 is not set | ||
827 | # CONFIG_NLS_ISO8859_6 is not set | ||
828 | # CONFIG_NLS_ISO8859_7 is not set | ||
829 | # CONFIG_NLS_ISO8859_9 is not set | ||
830 | # CONFIG_NLS_ISO8859_13 is not set | ||
831 | # CONFIG_NLS_ISO8859_14 is not set | ||
832 | # CONFIG_NLS_ISO8859_15 is not set | ||
833 | # CONFIG_NLS_KOI8_R is not set | ||
834 | # CONFIG_NLS_KOI8_U is not set | ||
835 | CONFIG_NLS_UTF8=m | ||
836 | |||
837 | # | ||
838 | # Profiling support | ||
839 | # | ||
840 | # CONFIG_PROFILING is not set | ||
841 | |||
842 | # | ||
843 | # Kernel hacking | ||
844 | # | ||
845 | # CONFIG_PRINTK_TIME is not set | ||
846 | CONFIG_DEBUG_KERNEL=y | ||
847 | CONFIG_MAGIC_SYSRQ=y | ||
848 | CONFIG_LOG_BUF_SHIFT=14 | ||
849 | CONFIG_DETECT_SOFTLOCKUP=y | ||
850 | # CONFIG_SCHEDSTATS is not set | ||
851 | # CONFIG_DEBUG_SLAB is not set | ||
852 | CONFIG_DEBUG_PREEMPT=y | ||
853 | # CONFIG_DEBUG_SPINLOCK is not set | ||
854 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
855 | # CONFIG_DEBUG_KOBJECT is not set | ||
856 | # CONFIG_DEBUG_BUGVERBOSE is not set | ||
857 | # CONFIG_DEBUG_INFO is not set | ||
858 | # CONFIG_DEBUG_FS is not set | ||
859 | CONFIG_FRAME_POINTER=y | ||
860 | # CONFIG_DEBUG_USER is not set | ||
861 | # CONFIG_DEBUG_WAITQ is not set | ||
862 | CONFIG_DEBUG_ERRORS=y | ||
863 | # CONFIG_DEBUG_LL is not set | ||
864 | |||
865 | # | ||
866 | # Security options | ||
867 | # | ||
868 | # CONFIG_KEYS is not set | ||
869 | # CONFIG_SECURITY is not set | ||
870 | |||
871 | # | ||
872 | # Cryptographic options | ||
873 | # | ||
874 | # CONFIG_CRYPTO is not set | ||
875 | |||
876 | # | ||
877 | # Hardware crypto devices | ||
878 | # | ||
879 | |||
880 | # | ||
881 | # Library routines | ||
882 | # | ||
883 | # CONFIG_CRC_CCITT is not set | ||
884 | # CONFIG_CRC16 is not set | ||
885 | CONFIG_CRC32=y | ||
886 | # CONFIG_LIBCRC32C is not set | ||
887 | CONFIG_ZLIB_INFLATE=y | ||
888 | CONFIG_ZLIB_DEFLATE=y | ||
diff --git a/arch/arm/configs/corgi_defconfig b/arch/arm/configs/corgi_defconfig new file mode 100644 index 000000000000..24987c89609a --- /dev/null +++ b/arch/arm/configs/corgi_defconfig | |||
@@ -0,0 +1,1523 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.14-rc3 | ||
4 | # Sun Oct 9 15:46:42 2005 | ||
5 | # | ||
6 | CONFIG_ARM=y | ||
7 | CONFIG_MMU=y | ||
8 | CONFIG_UID16=y | ||
9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
10 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
11 | |||
12 | # | ||
13 | # Code maturity level options | ||
14 | # | ||
15 | CONFIG_EXPERIMENTAL=y | ||
16 | CONFIG_CLEAN_COMPILE=y | ||
17 | CONFIG_BROKEN_ON_SMP=y | ||
18 | CONFIG_LOCK_KERNEL=y | ||
19 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
20 | |||
21 | # | ||
22 | # General setup | ||
23 | # | ||
24 | CONFIG_LOCALVERSION="" | ||
25 | CONFIG_LOCALVERSION_AUTO=y | ||
26 | CONFIG_SWAP=y | ||
27 | CONFIG_SYSVIPC=y | ||
28 | # CONFIG_POSIX_MQUEUE is not set | ||
29 | CONFIG_BSD_PROCESS_ACCT=y | ||
30 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | ||
31 | CONFIG_SYSCTL=y | ||
32 | # CONFIG_AUDIT is not set | ||
33 | CONFIG_HOTPLUG=y | ||
34 | CONFIG_KOBJECT_UEVENT=y | ||
35 | # CONFIG_IKCONFIG is not set | ||
36 | CONFIG_INITRAMFS_SOURCE="" | ||
37 | CONFIG_EMBEDDED=y | ||
38 | CONFIG_KALLSYMS=y | ||
39 | # CONFIG_KALLSYMS_ALL is not set | ||
40 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
41 | CONFIG_PRINTK=y | ||
42 | CONFIG_BUG=y | ||
43 | CONFIG_BASE_FULL=y | ||
44 | CONFIG_FUTEX=y | ||
45 | CONFIG_EPOLL=y | ||
46 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
47 | CONFIG_SHMEM=y | ||
48 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
49 | CONFIG_CC_ALIGN_LABELS=0 | ||
50 | CONFIG_CC_ALIGN_LOOPS=0 | ||
51 | CONFIG_CC_ALIGN_JUMPS=0 | ||
52 | # CONFIG_TINY_SHMEM is not set | ||
53 | CONFIG_BASE_SMALL=0 | ||
54 | |||
55 | # | ||
56 | # Loadable module support | ||
57 | # | ||
58 | CONFIG_MODULES=y | ||
59 | CONFIG_MODULE_UNLOAD=y | ||
60 | CONFIG_MODULE_FORCE_UNLOAD=y | ||
61 | CONFIG_OBSOLETE_MODPARM=y | ||
62 | # CONFIG_MODVERSIONS is not set | ||
63 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
64 | CONFIG_KMOD=y | ||
65 | |||
66 | # | ||
67 | # System Type | ||
68 | # | ||
69 | # CONFIG_ARCH_CLPS7500 is not set | ||
70 | # CONFIG_ARCH_CLPS711X is not set | ||
71 | # CONFIG_ARCH_CO285 is not set | ||
72 | # CONFIG_ARCH_EBSA110 is not set | ||
73 | # CONFIG_ARCH_CAMELOT is not set | ||
74 | # CONFIG_ARCH_FOOTBRIDGE is not set | ||
75 | # CONFIG_ARCH_INTEGRATOR is not set | ||
76 | # CONFIG_ARCH_IOP3XX is not set | ||
77 | # CONFIG_ARCH_IXP4XX is not set | ||
78 | # CONFIG_ARCH_IXP2000 is not set | ||
79 | # CONFIG_ARCH_L7200 is not set | ||
80 | CONFIG_ARCH_PXA=y | ||
81 | # CONFIG_ARCH_RPC is not set | ||
82 | # CONFIG_ARCH_SA1100 is not set | ||
83 | # CONFIG_ARCH_S3C2410 is not set | ||
84 | # CONFIG_ARCH_SHARK is not set | ||
85 | # CONFIG_ARCH_LH7A40X is not set | ||
86 | # CONFIG_ARCH_OMAP is not set | ||
87 | # CONFIG_ARCH_VERSATILE is not set | ||
88 | # CONFIG_ARCH_IMX is not set | ||
89 | # CONFIG_ARCH_H720X is not set | ||
90 | # CONFIG_ARCH_AAEC2000 is not set | ||
91 | |||
92 | # | ||
93 | # Intel PXA2xx Implementations | ||
94 | # | ||
95 | # CONFIG_ARCH_LUBBOCK is not set | ||
96 | # CONFIG_MACH_MAINSTONE is not set | ||
97 | # CONFIG_ARCH_PXA_IDP is not set | ||
98 | CONFIG_PXA_SHARPSL=y | ||
99 | CONFIG_PXA_SHARPSL_25x=y | ||
100 | # CONFIG_PXA_SHARPSL_27x is not set | ||
101 | # CONFIG_MACH_POODLE is not set | ||
102 | CONFIG_MACH_CORGI=y | ||
103 | CONFIG_MACH_SHEPHERD=y | ||
104 | CONFIG_MACH_HUSKY=y | ||
105 | CONFIG_PXA25x=y | ||
106 | CONFIG_PXA_SHARP_C7xx=y | ||
107 | |||
108 | # | ||
109 | # Processor Type | ||
110 | # | ||
111 | CONFIG_CPU_32=y | ||
112 | CONFIG_CPU_XSCALE=y | ||
113 | CONFIG_CPU_32v5=y | ||
114 | CONFIG_CPU_ABRT_EV5T=y | ||
115 | CONFIG_CPU_CACHE_VIVT=y | ||
116 | CONFIG_CPU_TLB_V4WBI=y | ||
117 | |||
118 | # | ||
119 | # Processor Features | ||
120 | # | ||
121 | CONFIG_ARM_THUMB=y | ||
122 | CONFIG_XSCALE_PMU=y | ||
123 | CONFIG_SHARP_PARAM=y | ||
124 | CONFIG_SHARP_SCOOP=y | ||
125 | |||
126 | # | ||
127 | # Bus support | ||
128 | # | ||
129 | CONFIG_ISA_DMA_API=y | ||
130 | |||
131 | # | ||
132 | # PCCARD (PCMCIA/CardBus) support | ||
133 | # | ||
134 | CONFIG_PCCARD=y | ||
135 | # CONFIG_PCMCIA_DEBUG is not set | ||
136 | CONFIG_PCMCIA=y | ||
137 | CONFIG_PCMCIA_LOAD_CIS=y | ||
138 | CONFIG_PCMCIA_IOCTL=y | ||
139 | |||
140 | # | ||
141 | # PC-card bridges | ||
142 | # | ||
143 | CONFIG_PCMCIA_PXA2XX=y | ||
144 | |||
145 | # | ||
146 | # Kernel Features | ||
147 | # | ||
148 | CONFIG_PREEMPT=y | ||
149 | # CONFIG_NO_IDLE_HZ is not set | ||
150 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | ||
151 | CONFIG_SELECT_MEMORY_MODEL=y | ||
152 | CONFIG_FLATMEM_MANUAL=y | ||
153 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
154 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
155 | CONFIG_FLATMEM=y | ||
156 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
157 | # CONFIG_SPARSEMEM_STATIC is not set | ||
158 | CONFIG_ALIGNMENT_TRAP=y | ||
159 | |||
160 | # | ||
161 | # Boot options | ||
162 | # | ||
163 | CONFIG_ZBOOT_ROM_TEXT=0x0 | ||
164 | CONFIG_ZBOOT_ROM_BSS=0x0 | ||
165 | CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 debug" | ||
166 | # CONFIG_XIP_KERNEL is not set | ||
167 | |||
168 | # | ||
169 | # Floating point emulation | ||
170 | # | ||
171 | |||
172 | # | ||
173 | # At least one emulation must be selected | ||
174 | # | ||
175 | CONFIG_FPE_NWFPE=y | ||
176 | # CONFIG_FPE_NWFPE_XP is not set | ||
177 | # CONFIG_FPE_FASTFPE is not set | ||
178 | |||
179 | # | ||
180 | # Userspace binary formats | ||
181 | # | ||
182 | CONFIG_BINFMT_ELF=y | ||
183 | CONFIG_BINFMT_AOUT=m | ||
184 | CONFIG_BINFMT_MISC=m | ||
185 | # CONFIG_ARTHUR is not set | ||
186 | |||
187 | # | ||
188 | # Power management options | ||
189 | # | ||
190 | CONFIG_PM=y | ||
191 | CONFIG_APM=y | ||
192 | |||
193 | # | ||
194 | # Networking | ||
195 | # | ||
196 | CONFIG_NET=y | ||
197 | |||
198 | # | ||
199 | # Networking options | ||
200 | # | ||
201 | CONFIG_PACKET=y | ||
202 | CONFIG_PACKET_MMAP=y | ||
203 | CONFIG_UNIX=y | ||
204 | CONFIG_XFRM=y | ||
205 | CONFIG_XFRM_USER=m | ||
206 | # CONFIG_NET_KEY is not set | ||
207 | CONFIG_INET=y | ||
208 | # CONFIG_IP_MULTICAST is not set | ||
209 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
210 | CONFIG_IP_FIB_HASH=y | ||
211 | # CONFIG_IP_PNP is not set | ||
212 | # CONFIG_NET_IPIP is not set | ||
213 | # CONFIG_NET_IPGRE is not set | ||
214 | # CONFIG_ARPD is not set | ||
215 | CONFIG_SYN_COOKIES=y | ||
216 | # CONFIG_INET_AH is not set | ||
217 | # CONFIG_INET_ESP is not set | ||
218 | # CONFIG_INET_IPCOMP is not set | ||
219 | # CONFIG_INET_TUNNEL is not set | ||
220 | CONFIG_INET_DIAG=y | ||
221 | CONFIG_INET_TCP_DIAG=y | ||
222 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
223 | CONFIG_TCP_CONG_BIC=y | ||
224 | |||
225 | # | ||
226 | # IP: Virtual Server Configuration | ||
227 | # | ||
228 | # CONFIG_IP_VS is not set | ||
229 | CONFIG_IPV6=m | ||
230 | # CONFIG_IPV6_PRIVACY is not set | ||
231 | CONFIG_INET6_AH=m | ||
232 | CONFIG_INET6_ESP=m | ||
233 | CONFIG_INET6_IPCOMP=m | ||
234 | CONFIG_INET6_TUNNEL=m | ||
235 | CONFIG_IPV6_TUNNEL=m | ||
236 | CONFIG_NETFILTER=y | ||
237 | # CONFIG_NETFILTER_DEBUG is not set | ||
238 | # CONFIG_NETFILTER_NETLINK is not set | ||
239 | |||
240 | # | ||
241 | # IP: Netfilter Configuration | ||
242 | # | ||
243 | CONFIG_IP_NF_CONNTRACK=m | ||
244 | # CONFIG_IP_NF_CT_ACCT is not set | ||
245 | # CONFIG_IP_NF_CONNTRACK_MARK is not set | ||
246 | # CONFIG_IP_NF_CONNTRACK_EVENTS is not set | ||
247 | CONFIG_IP_NF_CT_PROTO_SCTP=m | ||
248 | CONFIG_IP_NF_FTP=m | ||
249 | CONFIG_IP_NF_IRC=m | ||
250 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
251 | CONFIG_IP_NF_TFTP=m | ||
252 | CONFIG_IP_NF_AMANDA=m | ||
253 | # CONFIG_IP_NF_PPTP is not set | ||
254 | CONFIG_IP_NF_QUEUE=m | ||
255 | CONFIG_IP_NF_IPTABLES=m | ||
256 | CONFIG_IP_NF_MATCH_LIMIT=m | ||
257 | CONFIG_IP_NF_MATCH_IPRANGE=m | ||
258 | CONFIG_IP_NF_MATCH_MAC=m | ||
259 | CONFIG_IP_NF_MATCH_PKTTYPE=m | ||
260 | CONFIG_IP_NF_MATCH_MARK=m | ||
261 | CONFIG_IP_NF_MATCH_MULTIPORT=m | ||
262 | CONFIG_IP_NF_MATCH_TOS=m | ||
263 | CONFIG_IP_NF_MATCH_RECENT=m | ||
264 | CONFIG_IP_NF_MATCH_ECN=m | ||
265 | CONFIG_IP_NF_MATCH_DSCP=m | ||
266 | CONFIG_IP_NF_MATCH_AH_ESP=m | ||
267 | CONFIG_IP_NF_MATCH_LENGTH=m | ||
268 | CONFIG_IP_NF_MATCH_TTL=m | ||
269 | CONFIG_IP_NF_MATCH_TCPMSS=m | ||
270 | CONFIG_IP_NF_MATCH_HELPER=m | ||
271 | CONFIG_IP_NF_MATCH_STATE=m | ||
272 | CONFIG_IP_NF_MATCH_CONNTRACK=m | ||
273 | CONFIG_IP_NF_MATCH_OWNER=m | ||
274 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | ||
275 | CONFIG_IP_NF_MATCH_REALM=m | ||
276 | CONFIG_IP_NF_MATCH_SCTP=m | ||
277 | # CONFIG_IP_NF_MATCH_DCCP is not set | ||
278 | CONFIG_IP_NF_MATCH_COMMENT=m | ||
279 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | ||
280 | # CONFIG_IP_NF_MATCH_STRING is not set | ||
281 | CONFIG_IP_NF_FILTER=m | ||
282 | # CONFIG_IP_NF_TARGET_REJECT is not set | ||
283 | CONFIG_IP_NF_TARGET_LOG=m | ||
284 | CONFIG_IP_NF_TARGET_ULOG=m | ||
285 | CONFIG_IP_NF_TARGET_TCPMSS=m | ||
286 | # CONFIG_IP_NF_TARGET_NFQUEUE is not set | ||
287 | CONFIG_IP_NF_NAT=m | ||
288 | CONFIG_IP_NF_NAT_NEEDED=y | ||
289 | # CONFIG_IP_NF_TARGET_MASQUERADE is not set | ||
290 | # CONFIG_IP_NF_TARGET_REDIRECT is not set | ||
291 | # CONFIG_IP_NF_TARGET_NETMAP is not set | ||
292 | # CONFIG_IP_NF_TARGET_SAME is not set | ||
293 | # CONFIG_IP_NF_NAT_SNMP_BASIC is not set | ||
294 | CONFIG_IP_NF_NAT_IRC=m | ||
295 | CONFIG_IP_NF_NAT_FTP=m | ||
296 | CONFIG_IP_NF_NAT_TFTP=m | ||
297 | CONFIG_IP_NF_NAT_AMANDA=m | ||
298 | CONFIG_IP_NF_MANGLE=m | ||
299 | # CONFIG_IP_NF_TARGET_TOS is not set | ||
300 | # CONFIG_IP_NF_TARGET_ECN is not set | ||
301 | # CONFIG_IP_NF_TARGET_DSCP is not set | ||
302 | # CONFIG_IP_NF_TARGET_MARK is not set | ||
303 | # CONFIG_IP_NF_TARGET_CLASSIFY is not set | ||
304 | # CONFIG_IP_NF_TARGET_TTL is not set | ||
305 | CONFIG_IP_NF_RAW=m | ||
306 | # CONFIG_IP_NF_TARGET_NOTRACK is not set | ||
307 | CONFIG_IP_NF_ARPTABLES=m | ||
308 | CONFIG_IP_NF_ARPFILTER=m | ||
309 | CONFIG_IP_NF_ARP_MANGLE=m | ||
310 | |||
311 | # | ||
312 | # IPv6: Netfilter Configuration (EXPERIMENTAL) | ||
313 | # | ||
314 | CONFIG_IP6_NF_QUEUE=m | ||
315 | CONFIG_IP6_NF_IPTABLES=m | ||
316 | CONFIG_IP6_NF_MATCH_LIMIT=m | ||
317 | CONFIG_IP6_NF_MATCH_MAC=m | ||
318 | CONFIG_IP6_NF_MATCH_RT=m | ||
319 | CONFIG_IP6_NF_MATCH_OPTS=m | ||
320 | CONFIG_IP6_NF_MATCH_FRAG=m | ||
321 | CONFIG_IP6_NF_MATCH_HL=m | ||
322 | CONFIG_IP6_NF_MATCH_MULTIPORT=m | ||
323 | CONFIG_IP6_NF_MATCH_OWNER=m | ||
324 | CONFIG_IP6_NF_MATCH_MARK=m | ||
325 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m | ||
326 | CONFIG_IP6_NF_MATCH_AHESP=m | ||
327 | CONFIG_IP6_NF_MATCH_LENGTH=m | ||
328 | CONFIG_IP6_NF_MATCH_EUI64=m | ||
329 | CONFIG_IP6_NF_FILTER=m | ||
330 | # CONFIG_IP6_NF_TARGET_LOG is not set | ||
331 | # CONFIG_IP6_NF_TARGET_REJECT is not set | ||
332 | # CONFIG_IP6_NF_TARGET_NFQUEUE is not set | ||
333 | CONFIG_IP6_NF_MANGLE=m | ||
334 | # CONFIG_IP6_NF_TARGET_MARK is not set | ||
335 | # CONFIG_IP6_NF_TARGET_HL is not set | ||
336 | CONFIG_IP6_NF_RAW=m | ||
337 | |||
338 | # | ||
339 | # DCCP Configuration (EXPERIMENTAL) | ||
340 | # | ||
341 | # CONFIG_IP_DCCP is not set | ||
342 | |||
343 | # | ||
344 | # SCTP Configuration (EXPERIMENTAL) | ||
345 | # | ||
346 | # CONFIG_IP_SCTP is not set | ||
347 | # CONFIG_ATM is not set | ||
348 | # CONFIG_BRIDGE is not set | ||
349 | # CONFIG_VLAN_8021Q is not set | ||
350 | # CONFIG_DECNET is not set | ||
351 | # CONFIG_LLC2 is not set | ||
352 | # CONFIG_IPX is not set | ||
353 | # CONFIG_ATALK is not set | ||
354 | # CONFIG_X25 is not set | ||
355 | # CONFIG_LAPB is not set | ||
356 | # CONFIG_NET_DIVERT is not set | ||
357 | # CONFIG_ECONET is not set | ||
358 | # CONFIG_WAN_ROUTER is not set | ||
359 | # CONFIG_NET_SCHED is not set | ||
360 | CONFIG_NET_CLS_ROUTE=y | ||
361 | |||
362 | # | ||
363 | # Network testing | ||
364 | # | ||
365 | # CONFIG_NET_PKTGEN is not set | ||
366 | # CONFIG_HAMRADIO is not set | ||
367 | CONFIG_IRDA=m | ||
368 | |||
369 | # | ||
370 | # IrDA protocols | ||
371 | # | ||
372 | CONFIG_IRLAN=m | ||
373 | CONFIG_IRNET=m | ||
374 | CONFIG_IRCOMM=m | ||
375 | # CONFIG_IRDA_ULTRA is not set | ||
376 | |||
377 | # | ||
378 | # IrDA options | ||
379 | # | ||
380 | # CONFIG_IRDA_CACHE_LAST_LSAP is not set | ||
381 | # CONFIG_IRDA_FAST_RR is not set | ||
382 | # CONFIG_IRDA_DEBUG is not set | ||
383 | |||
384 | # | ||
385 | # Infrared-port device drivers | ||
386 | # | ||
387 | |||
388 | # | ||
389 | # SIR device drivers | ||
390 | # | ||
391 | # CONFIG_IRTTY_SIR is not set | ||
392 | |||
393 | # | ||
394 | # Dongle support | ||
395 | # | ||
396 | |||
397 | # | ||
398 | # Old SIR device drivers | ||
399 | # | ||
400 | # CONFIG_IRPORT_SIR is not set | ||
401 | |||
402 | # | ||
403 | # Old Serial dongle support | ||
404 | # | ||
405 | |||
406 | # | ||
407 | # FIR device drivers | ||
408 | # | ||
409 | # CONFIG_USB_IRDA is not set | ||
410 | # CONFIG_SIGMATEL_FIR is not set | ||
411 | # CONFIG_NSC_FIR is not set | ||
412 | # CONFIG_WINBOND_FIR is not set | ||
413 | # CONFIG_SMC_IRCC_FIR is not set | ||
414 | # CONFIG_ALI_FIR is not set | ||
415 | # CONFIG_VIA_FIR is not set | ||
416 | CONFIG_BT=m | ||
417 | CONFIG_BT_L2CAP=m | ||
418 | CONFIG_BT_SCO=m | ||
419 | CONFIG_BT_RFCOMM=m | ||
420 | CONFIG_BT_RFCOMM_TTY=y | ||
421 | CONFIG_BT_BNEP=m | ||
422 | CONFIG_BT_BNEP_MC_FILTER=y | ||
423 | CONFIG_BT_BNEP_PROTO_FILTER=y | ||
424 | CONFIG_BT_HIDP=m | ||
425 | |||
426 | # | ||
427 | # Bluetooth device drivers | ||
428 | # | ||
429 | CONFIG_BT_HCIUSB=m | ||
430 | # CONFIG_BT_HCIUSB_SCO is not set | ||
431 | CONFIG_BT_HCIUART=m | ||
432 | CONFIG_BT_HCIUART_H4=y | ||
433 | CONFIG_BT_HCIUART_BCSP=y | ||
434 | CONFIG_BT_HCIUART_BCSP_TXCRC=y | ||
435 | CONFIG_BT_HCIBCM203X=m | ||
436 | CONFIG_BT_HCIBPA10X=m | ||
437 | CONFIG_BT_HCIBFUSB=m | ||
438 | CONFIG_BT_HCIDTL1=m | ||
439 | CONFIG_BT_HCIBT3C=m | ||
440 | CONFIG_BT_HCIBLUECARD=m | ||
441 | CONFIG_BT_HCIBTUART=m | ||
442 | CONFIG_BT_HCIVHCI=m | ||
443 | CONFIG_IEEE80211=m | ||
444 | # CONFIG_IEEE80211_DEBUG is not set | ||
445 | CONFIG_IEEE80211_CRYPT_WEP=m | ||
446 | # CONFIG_IEEE80211_CRYPT_CCMP is not set | ||
447 | # CONFIG_IEEE80211_CRYPT_TKIP is not set | ||
448 | |||
449 | # | ||
450 | # Device Drivers | ||
451 | # | ||
452 | |||
453 | # | ||
454 | # Generic Driver Options | ||
455 | # | ||
456 | CONFIG_STANDALONE=y | ||
457 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
458 | CONFIG_FW_LOADER=y | ||
459 | # CONFIG_DEBUG_DRIVER is not set | ||
460 | |||
461 | # | ||
462 | # Memory Technology Devices (MTD) | ||
463 | # | ||
464 | CONFIG_MTD=y | ||
465 | # CONFIG_MTD_DEBUG is not set | ||
466 | # CONFIG_MTD_CONCAT is not set | ||
467 | CONFIG_MTD_PARTITIONS=y | ||
468 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
469 | CONFIG_MTD_CMDLINE_PARTS=y | ||
470 | # CONFIG_MTD_AFS_PARTS is not set | ||
471 | |||
472 | # | ||
473 | # User Modules And Translation Layers | ||
474 | # | ||
475 | CONFIG_MTD_CHAR=y | ||
476 | CONFIG_MTD_BLOCK=y | ||
477 | # CONFIG_FTL is not set | ||
478 | # CONFIG_NFTL is not set | ||
479 | # CONFIG_INFTL is not set | ||
480 | |||
481 | # | ||
482 | # RAM/ROM/Flash chip drivers | ||
483 | # | ||
484 | # CONFIG_MTD_CFI is not set | ||
485 | # CONFIG_MTD_JEDECPROBE is not set | ||
486 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
487 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
488 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
489 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
490 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
491 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
492 | CONFIG_MTD_CFI_I1=y | ||
493 | CONFIG_MTD_CFI_I2=y | ||
494 | # CONFIG_MTD_CFI_I4 is not set | ||
495 | # CONFIG_MTD_CFI_I8 is not set | ||
496 | # CONFIG_MTD_RAM is not set | ||
497 | CONFIG_MTD_ROM=y | ||
498 | # CONFIG_MTD_ABSENT is not set | ||
499 | |||
500 | # | ||
501 | # Mapping drivers for chip access | ||
502 | # | ||
503 | CONFIG_MTD_COMPLEX_MAPPINGS=y | ||
504 | CONFIG_MTD_SHARP_SL=y | ||
505 | # CONFIG_MTD_PLATRAM is not set | ||
506 | |||
507 | # | ||
508 | # Self-contained MTD device drivers | ||
509 | # | ||
510 | # CONFIG_MTD_SLRAM is not set | ||
511 | # CONFIG_MTD_PHRAM is not set | ||
512 | # CONFIG_MTD_MTDRAM is not set | ||
513 | # CONFIG_MTD_BLKMTD is not set | ||
514 | # CONFIG_MTD_BLOCK2MTD is not set | ||
515 | |||
516 | # | ||
517 | # Disk-On-Chip Device Drivers | ||
518 | # | ||
519 | # CONFIG_MTD_DOC2000 is not set | ||
520 | # CONFIG_MTD_DOC2001 is not set | ||
521 | # CONFIG_MTD_DOC2001PLUS is not set | ||
522 | |||
523 | # | ||
524 | # NAND Flash Device Drivers | ||
525 | # | ||
526 | CONFIG_MTD_NAND=y | ||
527 | CONFIG_MTD_NAND_VERIFY_WRITE=y | ||
528 | # CONFIG_MTD_NAND_H1900 is not set | ||
529 | CONFIG_MTD_NAND_IDS=y | ||
530 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
531 | CONFIG_MTD_NAND_SHARPSL=y | ||
532 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
533 | |||
534 | # | ||
535 | # Parallel port support | ||
536 | # | ||
537 | # CONFIG_PARPORT is not set | ||
538 | |||
539 | # | ||
540 | # Plug and Play support | ||
541 | # | ||
542 | |||
543 | # | ||
544 | # Block devices | ||
545 | # | ||
546 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
547 | CONFIG_BLK_DEV_LOOP=y | ||
548 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
549 | # CONFIG_BLK_DEV_NBD is not set | ||
550 | # CONFIG_BLK_DEV_UB is not set | ||
551 | # CONFIG_BLK_DEV_RAM is not set | ||
552 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
553 | # CONFIG_CDROM_PKTCDVD is not set | ||
554 | |||
555 | # | ||
556 | # IO Schedulers | ||
557 | # | ||
558 | CONFIG_IOSCHED_NOOP=y | ||
559 | CONFIG_IOSCHED_AS=y | ||
560 | CONFIG_IOSCHED_DEADLINE=y | ||
561 | CONFIG_IOSCHED_CFQ=y | ||
562 | # CONFIG_ATA_OVER_ETH is not set | ||
563 | |||
564 | # | ||
565 | # ATA/ATAPI/MFM/RLL support | ||
566 | # | ||
567 | CONFIG_IDE=y | ||
568 | CONFIG_BLK_DEV_IDE=y | ||
569 | |||
570 | # | ||
571 | # Please see Documentation/ide.txt for help/info on IDE drives | ||
572 | # | ||
573 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
574 | CONFIG_BLK_DEV_IDEDISK=y | ||
575 | # CONFIG_IDEDISK_MULTI_MODE is not set | ||
576 | CONFIG_BLK_DEV_IDECS=y | ||
577 | # CONFIG_BLK_DEV_IDECD is not set | ||
578 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
579 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
580 | # CONFIG_BLK_DEV_IDESCSI is not set | ||
581 | # CONFIG_IDE_TASK_IOCTL is not set | ||
582 | |||
583 | # | ||
584 | # IDE chipset support/bugfixes | ||
585 | # | ||
586 | CONFIG_IDE_GENERIC=y | ||
587 | # CONFIG_IDE_ARM is not set | ||
588 | # CONFIG_BLK_DEV_IDEDMA is not set | ||
589 | # CONFIG_IDEDMA_AUTO is not set | ||
590 | # CONFIG_BLK_DEV_HD is not set | ||
591 | |||
592 | # | ||
593 | # SCSI device support | ||
594 | # | ||
595 | # CONFIG_RAID_ATTRS is not set | ||
596 | CONFIG_SCSI=m | ||
597 | CONFIG_SCSI_PROC_FS=y | ||
598 | |||
599 | # | ||
600 | # SCSI support type (disk, tape, CD-ROM) | ||
601 | # | ||
602 | CONFIG_BLK_DEV_SD=m | ||
603 | CONFIG_CHR_DEV_ST=m | ||
604 | CONFIG_CHR_DEV_OSST=m | ||
605 | CONFIG_BLK_DEV_SR=m | ||
606 | # CONFIG_BLK_DEV_SR_VENDOR is not set | ||
607 | CONFIG_CHR_DEV_SG=m | ||
608 | # CONFIG_CHR_DEV_SCH is not set | ||
609 | |||
610 | # | ||
611 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
612 | # | ||
613 | CONFIG_SCSI_MULTI_LUN=y | ||
614 | # CONFIG_SCSI_CONSTANTS is not set | ||
615 | # CONFIG_SCSI_LOGGING is not set | ||
616 | |||
617 | # | ||
618 | # SCSI Transport Attributes | ||
619 | # | ||
620 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
621 | # CONFIG_SCSI_FC_ATTRS is not set | ||
622 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
623 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
624 | |||
625 | # | ||
626 | # SCSI low-level drivers | ||
627 | # | ||
628 | # CONFIG_SCSI_SATA is not set | ||
629 | # CONFIG_SCSI_DEBUG is not set | ||
630 | |||
631 | # | ||
632 | # PCMCIA SCSI adapter support | ||
633 | # | ||
634 | # CONFIG_PCMCIA_AHA152X is not set | ||
635 | # CONFIG_PCMCIA_FDOMAIN is not set | ||
636 | # CONFIG_PCMCIA_NINJA_SCSI is not set | ||
637 | # CONFIG_PCMCIA_QLOGIC is not set | ||
638 | # CONFIG_PCMCIA_SYM53C500 is not set | ||
639 | |||
640 | # | ||
641 | # Multi-device support (RAID and LVM) | ||
642 | # | ||
643 | # CONFIG_MD is not set | ||
644 | |||
645 | # | ||
646 | # Fusion MPT device support | ||
647 | # | ||
648 | # CONFIG_FUSION is not set | ||
649 | |||
650 | # | ||
651 | # IEEE 1394 (FireWire) support | ||
652 | # | ||
653 | |||
654 | # | ||
655 | # I2O device support | ||
656 | # | ||
657 | |||
658 | # | ||
659 | # Network device support | ||
660 | # | ||
661 | CONFIG_NETDEVICES=y | ||
662 | # CONFIG_DUMMY is not set | ||
663 | # CONFIG_BONDING is not set | ||
664 | # CONFIG_EQUALIZER is not set | ||
665 | # CONFIG_TUN is not set | ||
666 | |||
667 | # | ||
668 | # PHY device support | ||
669 | # | ||
670 | # CONFIG_PHYLIB is not set | ||
671 | |||
672 | # | ||
673 | # Ethernet (10 or 100Mbit) | ||
674 | # | ||
675 | CONFIG_NET_ETHERNET=y | ||
676 | CONFIG_MII=m | ||
677 | # CONFIG_SMC91X is not set | ||
678 | # CONFIG_DM9000 is not set | ||
679 | |||
680 | # | ||
681 | # Ethernet (1000 Mbit) | ||
682 | # | ||
683 | |||
684 | # | ||
685 | # Ethernet (10000 Mbit) | ||
686 | # | ||
687 | |||
688 | # | ||
689 | # Token Ring devices | ||
690 | # | ||
691 | |||
692 | # | ||
693 | # Wireless LAN (non-hamradio) | ||
694 | # | ||
695 | CONFIG_NET_RADIO=y | ||
696 | |||
697 | # | ||
698 | # Obsolete Wireless cards support (pre-802.11) | ||
699 | # | ||
700 | # CONFIG_STRIP is not set | ||
701 | # CONFIG_PCMCIA_WAVELAN is not set | ||
702 | # CONFIG_PCMCIA_NETWAVE is not set | ||
703 | |||
704 | # | ||
705 | # Wireless 802.11 Frequency Hopping cards support | ||
706 | # | ||
707 | # CONFIG_PCMCIA_RAYCS is not set | ||
708 | |||
709 | # | ||
710 | # Wireless 802.11b ISA/PCI cards support | ||
711 | # | ||
712 | CONFIG_HERMES=m | ||
713 | # CONFIG_ATMEL is not set | ||
714 | |||
715 | # | ||
716 | # Wireless 802.11b Pcmcia/Cardbus cards support | ||
717 | # | ||
718 | CONFIG_PCMCIA_HERMES=m | ||
719 | CONFIG_PCMCIA_SPECTRUM=m | ||
720 | # CONFIG_AIRO_CS is not set | ||
721 | # CONFIG_PCMCIA_WL3501 is not set | ||
722 | CONFIG_HOSTAP=m | ||
723 | CONFIG_HOSTAP_FIRMWARE=y | ||
724 | CONFIG_HOSTAP_CS=m | ||
725 | CONFIG_NET_WIRELESS=y | ||
726 | |||
727 | # | ||
728 | # PCMCIA network device support | ||
729 | # | ||
730 | CONFIG_NET_PCMCIA=y | ||
731 | # CONFIG_PCMCIA_3C589 is not set | ||
732 | # CONFIG_PCMCIA_3C574 is not set | ||
733 | # CONFIG_PCMCIA_FMVJ18X is not set | ||
734 | CONFIG_PCMCIA_PCNET=m | ||
735 | # CONFIG_PCMCIA_NMCLAN is not set | ||
736 | # CONFIG_PCMCIA_SMC91C92 is not set | ||
737 | # CONFIG_PCMCIA_XIRC2PS is not set | ||
738 | # CONFIG_PCMCIA_AXNET is not set | ||
739 | |||
740 | # | ||
741 | # Wan interfaces | ||
742 | # | ||
743 | # CONFIG_WAN is not set | ||
744 | CONFIG_PPP=m | ||
745 | # CONFIG_PPP_MULTILINK is not set | ||
746 | # CONFIG_PPP_FILTER is not set | ||
747 | CONFIG_PPP_ASYNC=m | ||
748 | # CONFIG_PPP_SYNC_TTY is not set | ||
749 | # CONFIG_PPP_DEFLATE is not set | ||
750 | CONFIG_PPP_BSDCOMP=m | ||
751 | # CONFIG_PPPOE is not set | ||
752 | # CONFIG_SLIP is not set | ||
753 | # CONFIG_SHAPER is not set | ||
754 | # CONFIG_NETCONSOLE is not set | ||
755 | # CONFIG_NETPOLL is not set | ||
756 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
757 | |||
758 | # | ||
759 | # ISDN subsystem | ||
760 | # | ||
761 | # CONFIG_ISDN is not set | ||
762 | |||
763 | # | ||
764 | # Input device support | ||
765 | # | ||
766 | CONFIG_INPUT=y | ||
767 | |||
768 | # | ||
769 | # Userland interfaces | ||
770 | # | ||
771 | # CONFIG_INPUT_MOUSEDEV is not set | ||
772 | # CONFIG_INPUT_JOYDEV is not set | ||
773 | # CONFIG_INPUT_TSDEV is not set | ||
774 | CONFIG_INPUT_EVDEV=y | ||
775 | # CONFIG_INPUT_EVBUG is not set | ||
776 | |||
777 | # | ||
778 | # Input Device Drivers | ||
779 | # | ||
780 | CONFIG_INPUT_KEYBOARD=y | ||
781 | # CONFIG_KEYBOARD_ATKBD is not set | ||
782 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
783 | # CONFIG_KEYBOARD_LKKBD is not set | ||
784 | # CONFIG_KEYBOARD_XTKBD is not set | ||
785 | # CONFIG_KEYBOARD_NEWTON is not set | ||
786 | CONFIG_KEYBOARD_CORGI=y | ||
787 | CONFIG_KEYBOARD_SPITZ=y | ||
788 | # CONFIG_INPUT_MOUSE is not set | ||
789 | # CONFIG_INPUT_JOYSTICK is not set | ||
790 | CONFIG_INPUT_TOUCHSCREEN=y | ||
791 | CONFIG_TOUCHSCREEN_CORGI=y | ||
792 | # CONFIG_TOUCHSCREEN_GUNZE is not set | ||
793 | # CONFIG_TOUCHSCREEN_ELO is not set | ||
794 | # CONFIG_TOUCHSCREEN_MTOUCH is not set | ||
795 | # CONFIG_TOUCHSCREEN_MK712 is not set | ||
796 | CONFIG_INPUT_MISC=y | ||
797 | CONFIG_INPUT_UINPUT=m | ||
798 | |||
799 | # | ||
800 | # Hardware I/O ports | ||
801 | # | ||
802 | # CONFIG_SERIO is not set | ||
803 | # CONFIG_GAMEPORT is not set | ||
804 | |||
805 | # | ||
806 | # Character devices | ||
807 | # | ||
808 | CONFIG_VT=y | ||
809 | CONFIG_VT_CONSOLE=y | ||
810 | CONFIG_HW_CONSOLE=y | ||
811 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
812 | |||
813 | # | ||
814 | # Serial drivers | ||
815 | # | ||
816 | CONFIG_SERIAL_8250=m | ||
817 | CONFIG_SERIAL_8250_CS=m | ||
818 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
819 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
820 | |||
821 | # | ||
822 | # Non-8250 serial port support | ||
823 | # | ||
824 | CONFIG_SERIAL_PXA=y | ||
825 | CONFIG_SERIAL_PXA_CONSOLE=y | ||
826 | CONFIG_SERIAL_CORE=y | ||
827 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
828 | CONFIG_UNIX98_PTYS=y | ||
829 | # CONFIG_LEGACY_PTYS is not set | ||
830 | |||
831 | # | ||
832 | # IPMI | ||
833 | # | ||
834 | # CONFIG_IPMI_HANDLER is not set | ||
835 | |||
836 | # | ||
837 | # Watchdog Cards | ||
838 | # | ||
839 | # CONFIG_WATCHDOG is not set | ||
840 | # CONFIG_NVRAM is not set | ||
841 | # CONFIG_RTC is not set | ||
842 | # CONFIG_DTLK is not set | ||
843 | # CONFIG_R3964 is not set | ||
844 | |||
845 | # | ||
846 | # Ftape, the floppy tape device driver | ||
847 | # | ||
848 | |||
849 | # | ||
850 | # PCMCIA character devices | ||
851 | # | ||
852 | # CONFIG_SYNCLINK_CS is not set | ||
853 | # CONFIG_RAW_DRIVER is not set | ||
854 | |||
855 | # | ||
856 | # TPM devices | ||
857 | # | ||
858 | |||
859 | # | ||
860 | # I2C support | ||
861 | # | ||
862 | CONFIG_I2C=y | ||
863 | # CONFIG_I2C_CHARDEV is not set | ||
864 | |||
865 | # | ||
866 | # I2C Algorithms | ||
867 | # | ||
868 | CONFIG_I2C_ALGOBIT=y | ||
869 | # CONFIG_I2C_ALGOPCF is not set | ||
870 | # CONFIG_I2C_ALGOPCA is not set | ||
871 | |||
872 | # | ||
873 | # I2C Hardware Bus support | ||
874 | # | ||
875 | CONFIG_I2C_PXA=y | ||
876 | # CONFIG_I2C_PXA_SLAVE is not set | ||
877 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
878 | # CONFIG_I2C_STUB is not set | ||
879 | # CONFIG_I2C_PCA_ISA is not set | ||
880 | |||
881 | # | ||
882 | # Miscellaneous I2C Chip support | ||
883 | # | ||
884 | # CONFIG_SENSORS_DS1337 is not set | ||
885 | # CONFIG_SENSORS_DS1374 is not set | ||
886 | # CONFIG_SENSORS_EEPROM is not set | ||
887 | # CONFIG_SENSORS_PCF8574 is not set | ||
888 | # CONFIG_SENSORS_PCA9539 is not set | ||
889 | # CONFIG_SENSORS_PCF8591 is not set | ||
890 | # CONFIG_SENSORS_RTC8564 is not set | ||
891 | # CONFIG_SENSORS_MAX6875 is not set | ||
892 | # CONFIG_I2C_DEBUG_CORE is not set | ||
893 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
894 | # CONFIG_I2C_DEBUG_BUS is not set | ||
895 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
896 | |||
897 | # | ||
898 | # Hardware Monitoring support | ||
899 | # | ||
900 | CONFIG_HWMON=y | ||
901 | # CONFIG_HWMON_VID is not set | ||
902 | # CONFIG_SENSORS_ADM1021 is not set | ||
903 | # CONFIG_SENSORS_ADM1025 is not set | ||
904 | # CONFIG_SENSORS_ADM1026 is not set | ||
905 | # CONFIG_SENSORS_ADM1031 is not set | ||
906 | # CONFIG_SENSORS_ADM9240 is not set | ||
907 | # CONFIG_SENSORS_ASB100 is not set | ||
908 | # CONFIG_SENSORS_ATXP1 is not set | ||
909 | # CONFIG_SENSORS_DS1621 is not set | ||
910 | # CONFIG_SENSORS_FSCHER is not set | ||
911 | # CONFIG_SENSORS_FSCPOS is not set | ||
912 | # CONFIG_SENSORS_GL518SM is not set | ||
913 | # CONFIG_SENSORS_GL520SM is not set | ||
914 | # CONFIG_SENSORS_IT87 is not set | ||
915 | # CONFIG_SENSORS_LM63 is not set | ||
916 | # CONFIG_SENSORS_LM75 is not set | ||
917 | # CONFIG_SENSORS_LM77 is not set | ||
918 | # CONFIG_SENSORS_LM78 is not set | ||
919 | # CONFIG_SENSORS_LM80 is not set | ||
920 | # CONFIG_SENSORS_LM83 is not set | ||
921 | # CONFIG_SENSORS_LM85 is not set | ||
922 | # CONFIG_SENSORS_LM87 is not set | ||
923 | # CONFIG_SENSORS_LM90 is not set | ||
924 | # CONFIG_SENSORS_LM92 is not set | ||
925 | # CONFIG_SENSORS_MAX1619 is not set | ||
926 | # CONFIG_SENSORS_PC87360 is not set | ||
927 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
928 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
929 | # CONFIG_SENSORS_W83781D is not set | ||
930 | # CONFIG_SENSORS_W83792D is not set | ||
931 | # CONFIG_SENSORS_W83L785TS is not set | ||
932 | # CONFIG_SENSORS_W83627HF is not set | ||
933 | # CONFIG_SENSORS_W83627EHF is not set | ||
934 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
935 | |||
936 | # | ||
937 | # Misc devices | ||
938 | # | ||
939 | |||
940 | # | ||
941 | # Multimedia Capabilities Port drivers | ||
942 | # | ||
943 | |||
944 | # | ||
945 | # Multimedia devices | ||
946 | # | ||
947 | CONFIG_VIDEO_DEV=m | ||
948 | |||
949 | # | ||
950 | # Video For Linux | ||
951 | # | ||
952 | |||
953 | # | ||
954 | # Video Adapters | ||
955 | # | ||
956 | # CONFIG_VIDEO_CPIA is not set | ||
957 | # CONFIG_VIDEO_SAA5246A is not set | ||
958 | # CONFIG_VIDEO_SAA5249 is not set | ||
959 | # CONFIG_TUNER_3036 is not set | ||
960 | # CONFIG_VIDEO_OVCAMCHIP is not set | ||
961 | |||
962 | # | ||
963 | # Radio Adapters | ||
964 | # | ||
965 | # CONFIG_RADIO_MAESTRO is not set | ||
966 | |||
967 | # | ||
968 | # Digital Video Broadcasting Devices | ||
969 | # | ||
970 | # CONFIG_DVB is not set | ||
971 | |||
972 | # | ||
973 | # Graphics support | ||
974 | # | ||
975 | CONFIG_FB=y | ||
976 | CONFIG_FB_CFB_FILLRECT=y | ||
977 | CONFIG_FB_CFB_COPYAREA=y | ||
978 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
979 | CONFIG_FB_SOFT_CURSOR=y | ||
980 | # CONFIG_FB_MACMODES is not set | ||
981 | # CONFIG_FB_MODE_HELPERS is not set | ||
982 | # CONFIG_FB_TILEBLITTING is not set | ||
983 | # CONFIG_FB_PXA is not set | ||
984 | CONFIG_FB_W100=y | ||
985 | # CONFIG_FB_S1D13XXX is not set | ||
986 | # CONFIG_FB_VIRTUAL is not set | ||
987 | |||
988 | # | ||
989 | # Console display driver support | ||
990 | # | ||
991 | # CONFIG_VGA_CONSOLE is not set | ||
992 | CONFIG_DUMMY_CONSOLE=y | ||
993 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
994 | CONFIG_FONTS=y | ||
995 | CONFIG_FONT_8x8=y | ||
996 | CONFIG_FONT_8x16=y | ||
997 | # CONFIG_FONT_6x11 is not set | ||
998 | # CONFIG_FONT_7x14 is not set | ||
999 | # CONFIG_FONT_PEARL_8x8 is not set | ||
1000 | # CONFIG_FONT_ACORN_8x8 is not set | ||
1001 | # CONFIG_FONT_MINI_4x6 is not set | ||
1002 | # CONFIG_FONT_SUN8x16 is not set | ||
1003 | # CONFIG_FONT_SUN12x22 is not set | ||
1004 | # CONFIG_FONT_10x18 is not set | ||
1005 | |||
1006 | # | ||
1007 | # Logo configuration | ||
1008 | # | ||
1009 | # CONFIG_LOGO is not set | ||
1010 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||
1011 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
1012 | CONFIG_BACKLIGHT_DEVICE=y | ||
1013 | # CONFIG_LCD_CLASS_DEVICE is not set | ||
1014 | CONFIG_BACKLIGHT_CORGI=y | ||
1015 | |||
1016 | # | ||
1017 | # Sound | ||
1018 | # | ||
1019 | CONFIG_SOUND=y | ||
1020 | |||
1021 | # | ||
1022 | # Advanced Linux Sound Architecture | ||
1023 | # | ||
1024 | # CONFIG_SND is not set | ||
1025 | |||
1026 | # | ||
1027 | # Open Sound System | ||
1028 | # | ||
1029 | CONFIG_SOUND_PRIME=y | ||
1030 | # CONFIG_SOUND_MSNDCLAS is not set | ||
1031 | # CONFIG_SOUND_MSNDPIN is not set | ||
1032 | CONFIG_SOUND_OSS=y | ||
1033 | # CONFIG_SOUND_TRACEINIT is not set | ||
1034 | # CONFIG_SOUND_DMAP is not set | ||
1035 | # CONFIG_SOUND_AD1816 is not set | ||
1036 | # CONFIG_SOUND_SGALAXY is not set | ||
1037 | # CONFIG_SOUND_ADLIB is not set | ||
1038 | # CONFIG_SOUND_ACI_MIXER is not set | ||
1039 | # CONFIG_SOUND_CS4232 is not set | ||
1040 | # CONFIG_SOUND_SSCAPE is not set | ||
1041 | # CONFIG_SOUND_GUS is not set | ||
1042 | # CONFIG_SOUND_VMIDI is not set | ||
1043 | # CONFIG_SOUND_TRIX is not set | ||
1044 | # CONFIG_SOUND_MSS is not set | ||
1045 | # CONFIG_SOUND_MPU401 is not set | ||
1046 | # CONFIG_SOUND_NM256 is not set | ||
1047 | # CONFIG_SOUND_MAD16 is not set | ||
1048 | # CONFIG_SOUND_PAS is not set | ||
1049 | # CONFIG_SOUND_PSS is not set | ||
1050 | # CONFIG_SOUND_SB is not set | ||
1051 | # CONFIG_SOUND_AWE32_SYNTH is not set | ||
1052 | # CONFIG_SOUND_WAVEFRONT is not set | ||
1053 | # CONFIG_SOUND_MAUI is not set | ||
1054 | # CONFIG_SOUND_YM3812 is not set | ||
1055 | # CONFIG_SOUND_OPL3SA1 is not set | ||
1056 | # CONFIG_SOUND_OPL3SA2 is not set | ||
1057 | # CONFIG_SOUND_UART6850 is not set | ||
1058 | # CONFIG_SOUND_AEDSP16 is not set | ||
1059 | # CONFIG_SOUND_TVMIXER is not set | ||
1060 | # CONFIG_SOUND_AD1980 is not set | ||
1061 | |||
1062 | # | ||
1063 | # USB support | ||
1064 | # | ||
1065 | CONFIG_USB_ARCH_HAS_HCD=y | ||
1066 | # CONFIG_USB_ARCH_HAS_OHCI is not set | ||
1067 | CONFIG_USB=m | ||
1068 | # CONFIG_USB_DEBUG is not set | ||
1069 | |||
1070 | # | ||
1071 | # Miscellaneous USB options | ||
1072 | # | ||
1073 | CONFIG_USB_DEVICEFS=y | ||
1074 | # CONFIG_USB_BANDWIDTH is not set | ||
1075 | # CONFIG_USB_DYNAMIC_MINORS is not set | ||
1076 | # CONFIG_USB_SUSPEND is not set | ||
1077 | # CONFIG_USB_OTG is not set | ||
1078 | |||
1079 | # | ||
1080 | # USB Host Controller Drivers | ||
1081 | # | ||
1082 | # CONFIG_USB_ISP116X_HCD is not set | ||
1083 | CONFIG_USB_SL811_HCD=m | ||
1084 | CONFIG_USB_SL811_CS=m | ||
1085 | |||
1086 | # | ||
1087 | # USB Device Class drivers | ||
1088 | # | ||
1089 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set | ||
1090 | |||
1091 | # | ||
1092 | # USB Bluetooth TTY can only be used with disabled Bluetooth subsystem | ||
1093 | # | ||
1094 | CONFIG_USB_ACM=m | ||
1095 | CONFIG_USB_PRINTER=m | ||
1096 | |||
1097 | # | ||
1098 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | ||
1099 | # | ||
1100 | CONFIG_USB_STORAGE=m | ||
1101 | # CONFIG_USB_STORAGE_DEBUG is not set | ||
1102 | # CONFIG_USB_STORAGE_DATAFAB is not set | ||
1103 | # CONFIG_USB_STORAGE_FREECOM is not set | ||
1104 | # CONFIG_USB_STORAGE_ISD200 is not set | ||
1105 | # CONFIG_USB_STORAGE_DPCM is not set | ||
1106 | # CONFIG_USB_STORAGE_USBAT is not set | ||
1107 | # CONFIG_USB_STORAGE_SDDR09 is not set | ||
1108 | # CONFIG_USB_STORAGE_SDDR55 is not set | ||
1109 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | ||
1110 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
1111 | |||
1112 | # | ||
1113 | # USB Input Devices | ||
1114 | # | ||
1115 | CONFIG_USB_HID=m | ||
1116 | CONFIG_USB_HIDINPUT=y | ||
1117 | # CONFIG_HID_FF is not set | ||
1118 | # CONFIG_USB_HIDDEV is not set | ||
1119 | |||
1120 | # | ||
1121 | # USB HID Boot Protocol drivers | ||
1122 | # | ||
1123 | CONFIG_USB_KBD=m | ||
1124 | CONFIG_USB_MOUSE=m | ||
1125 | CONFIG_USB_AIPTEK=m | ||
1126 | CONFIG_USB_WACOM=m | ||
1127 | # CONFIG_USB_ACECAD is not set | ||
1128 | CONFIG_USB_KBTAB=m | ||
1129 | CONFIG_USB_POWERMATE=m | ||
1130 | CONFIG_USB_MTOUCH=m | ||
1131 | # CONFIG_USB_ITMTOUCH is not set | ||
1132 | CONFIG_USB_EGALAX=m | ||
1133 | # CONFIG_USB_YEALINK is not set | ||
1134 | CONFIG_USB_XPAD=m | ||
1135 | CONFIG_USB_ATI_REMOTE=m | ||
1136 | # CONFIG_USB_KEYSPAN_REMOTE is not set | ||
1137 | # CONFIG_USB_APPLETOUCH is not set | ||
1138 | |||
1139 | # | ||
1140 | # USB Imaging devices | ||
1141 | # | ||
1142 | CONFIG_USB_MDC800=m | ||
1143 | CONFIG_USB_MICROTEK=m | ||
1144 | |||
1145 | # | ||
1146 | # USB Multimedia devices | ||
1147 | # | ||
1148 | CONFIG_USB_DABUSB=m | ||
1149 | CONFIG_USB_VICAM=m | ||
1150 | CONFIG_USB_DSBR=m | ||
1151 | CONFIG_USB_IBMCAM=m | ||
1152 | CONFIG_USB_KONICAWC=m | ||
1153 | CONFIG_USB_OV511=m | ||
1154 | CONFIG_USB_SE401=m | ||
1155 | CONFIG_USB_SN9C102=m | ||
1156 | CONFIG_USB_STV680=m | ||
1157 | # CONFIG_USB_PWC is not set | ||
1158 | |||
1159 | # | ||
1160 | # USB Network Adapters | ||
1161 | # | ||
1162 | CONFIG_USB_CATC=m | ||
1163 | CONFIG_USB_KAWETH=m | ||
1164 | CONFIG_USB_PEGASUS=m | ||
1165 | CONFIG_USB_RTL8150=m | ||
1166 | CONFIG_USB_USBNET=m | ||
1167 | CONFIG_USB_NET_AX8817X=m | ||
1168 | CONFIG_USB_NET_CDCETHER=m | ||
1169 | # CONFIG_USB_NET_GL620A is not set | ||
1170 | CONFIG_USB_NET_NET1080=m | ||
1171 | # CONFIG_USB_NET_PLUSB is not set | ||
1172 | # CONFIG_USB_NET_RNDIS_HOST is not set | ||
1173 | # CONFIG_USB_NET_CDC_SUBSET is not set | ||
1174 | CONFIG_USB_NET_ZAURUS=m | ||
1175 | # CONFIG_USB_ZD1201 is not set | ||
1176 | CONFIG_USB_MON=y | ||
1177 | |||
1178 | # | ||
1179 | # USB port drivers | ||
1180 | # | ||
1181 | |||
1182 | # | ||
1183 | # USB Serial Converter support | ||
1184 | # | ||
1185 | CONFIG_USB_SERIAL=m | ||
1186 | CONFIG_USB_SERIAL_GENERIC=y | ||
1187 | # CONFIG_USB_SERIAL_AIRPRIME is not set | ||
1188 | CONFIG_USB_SERIAL_BELKIN=m | ||
1189 | # CONFIG_USB_SERIAL_WHITEHEAT is not set | ||
1190 | CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m | ||
1191 | # CONFIG_USB_SERIAL_CP2101 is not set | ||
1192 | CONFIG_USB_SERIAL_CYPRESS_M8=m | ||
1193 | CONFIG_USB_SERIAL_EMPEG=m | ||
1194 | CONFIG_USB_SERIAL_FTDI_SIO=m | ||
1195 | CONFIG_USB_SERIAL_VISOR=m | ||
1196 | CONFIG_USB_SERIAL_IPAQ=m | ||
1197 | CONFIG_USB_SERIAL_IR=m | ||
1198 | CONFIG_USB_SERIAL_EDGEPORT=m | ||
1199 | CONFIG_USB_SERIAL_EDGEPORT_TI=m | ||
1200 | CONFIG_USB_SERIAL_GARMIN=m | ||
1201 | CONFIG_USB_SERIAL_IPW=m | ||
1202 | CONFIG_USB_SERIAL_KEYSPAN_PDA=m | ||
1203 | CONFIG_USB_SERIAL_KEYSPAN=m | ||
1204 | # CONFIG_USB_SERIAL_KEYSPAN_MPR is not set | ||
1205 | # CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set | ||
1206 | # CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set | ||
1207 | # CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set | ||
1208 | # CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set | ||
1209 | # CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set | ||
1210 | # CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set | ||
1211 | # CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set | ||
1212 | # CONFIG_USB_SERIAL_KEYSPAN_USA19QW is not set | ||
1213 | # CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set | ||
1214 | # CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set | ||
1215 | # CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set | ||
1216 | CONFIG_USB_SERIAL_KLSI=m | ||
1217 | CONFIG_USB_SERIAL_KOBIL_SCT=m | ||
1218 | CONFIG_USB_SERIAL_MCT_U232=m | ||
1219 | CONFIG_USB_SERIAL_PL2303=m | ||
1220 | # CONFIG_USB_SERIAL_HP4X is not set | ||
1221 | CONFIG_USB_SERIAL_SAFE=m | ||
1222 | # CONFIG_USB_SERIAL_SAFE_PADDED is not set | ||
1223 | CONFIG_USB_SERIAL_TI=m | ||
1224 | CONFIG_USB_SERIAL_CYBERJACK=m | ||
1225 | CONFIG_USB_SERIAL_XIRCOM=m | ||
1226 | CONFIG_USB_SERIAL_OMNINET=m | ||
1227 | CONFIG_USB_EZUSB=y | ||
1228 | |||
1229 | # | ||
1230 | # USB Miscellaneous drivers | ||
1231 | # | ||
1232 | CONFIG_USB_EMI62=m | ||
1233 | CONFIG_USB_EMI26=m | ||
1234 | CONFIG_USB_AUERSWALD=m | ||
1235 | CONFIG_USB_RIO500=m | ||
1236 | CONFIG_USB_LEGOTOWER=m | ||
1237 | CONFIG_USB_LCD=m | ||
1238 | CONFIG_USB_LED=m | ||
1239 | CONFIG_USB_CYTHERM=m | ||
1240 | CONFIG_USB_PHIDGETKIT=m | ||
1241 | CONFIG_USB_PHIDGETSERVO=m | ||
1242 | CONFIG_USB_IDMOUSE=m | ||
1243 | # CONFIG_USB_LD is not set | ||
1244 | # CONFIG_USB_TEST is not set | ||
1245 | |||
1246 | # | ||
1247 | # USB DSL modem support | ||
1248 | # | ||
1249 | |||
1250 | # | ||
1251 | # USB Gadget Support | ||
1252 | # | ||
1253 | CONFIG_USB_GADGET=y | ||
1254 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | ||
1255 | CONFIG_USB_GADGET_SELECTED=y | ||
1256 | # CONFIG_USB_GADGET_NET2280 is not set | ||
1257 | CONFIG_USB_GADGET_PXA2XX=y | ||
1258 | CONFIG_USB_PXA2XX=y | ||
1259 | # CONFIG_USB_PXA2XX_SMALL is not set | ||
1260 | # CONFIG_USB_GADGET_GOKU is not set | ||
1261 | # CONFIG_USB_GADGET_LH7A40X is not set | ||
1262 | # CONFIG_USB_GADGET_OMAP is not set | ||
1263 | # CONFIG_USB_GADGET_DUMMY_HCD is not set | ||
1264 | # CONFIG_USB_GADGET_DUALSPEED is not set | ||
1265 | CONFIG_USB_ZERO=m | ||
1266 | CONFIG_USB_ETH=m | ||
1267 | CONFIG_USB_ETH_RNDIS=y | ||
1268 | CONFIG_USB_GADGETFS=m | ||
1269 | CONFIG_USB_FILE_STORAGE=m | ||
1270 | # CONFIG_USB_FILE_STORAGE_TEST is not set | ||
1271 | CONFIG_USB_G_SERIAL=m | ||
1272 | |||
1273 | # | ||
1274 | # MMC/SD Card support | ||
1275 | # | ||
1276 | CONFIG_MMC=y | ||
1277 | # CONFIG_MMC_DEBUG is not set | ||
1278 | CONFIG_MMC_BLOCK=y | ||
1279 | CONFIG_MMC_PXA=y | ||
1280 | # CONFIG_MMC_WBSD is not set | ||
1281 | |||
1282 | # | ||
1283 | # File systems | ||
1284 | # | ||
1285 | CONFIG_EXT2_FS=y | ||
1286 | # CONFIG_EXT2_FS_XATTR is not set | ||
1287 | # CONFIG_EXT2_FS_XIP is not set | ||
1288 | # CONFIG_EXT3_FS is not set | ||
1289 | # CONFIG_JBD is not set | ||
1290 | # CONFIG_REISERFS_FS is not set | ||
1291 | # CONFIG_JFS_FS is not set | ||
1292 | # CONFIG_FS_POSIX_ACL is not set | ||
1293 | # CONFIG_XFS_FS is not set | ||
1294 | # CONFIG_MINIX_FS is not set | ||
1295 | # CONFIG_ROMFS_FS is not set | ||
1296 | CONFIG_INOTIFY=y | ||
1297 | # CONFIG_QUOTA is not set | ||
1298 | CONFIG_DNOTIFY=y | ||
1299 | # CONFIG_AUTOFS_FS is not set | ||
1300 | # CONFIG_AUTOFS4_FS is not set | ||
1301 | # CONFIG_FUSE_FS is not set | ||
1302 | |||
1303 | # | ||
1304 | # CD-ROM/DVD Filesystems | ||
1305 | # | ||
1306 | # CONFIG_ISO9660_FS is not set | ||
1307 | # CONFIG_UDF_FS is not set | ||
1308 | |||
1309 | # | ||
1310 | # DOS/FAT/NT Filesystems | ||
1311 | # | ||
1312 | CONFIG_FAT_FS=y | ||
1313 | CONFIG_MSDOS_FS=y | ||
1314 | CONFIG_VFAT_FS=y | ||
1315 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
1316 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
1317 | # CONFIG_NTFS_FS is not set | ||
1318 | |||
1319 | # | ||
1320 | # Pseudo filesystems | ||
1321 | # | ||
1322 | CONFIG_PROC_FS=y | ||
1323 | CONFIG_SYSFS=y | ||
1324 | CONFIG_TMPFS=y | ||
1325 | # CONFIG_HUGETLB_PAGE is not set | ||
1326 | CONFIG_RAMFS=y | ||
1327 | # CONFIG_RELAYFS_FS is not set | ||
1328 | |||
1329 | # | ||
1330 | # Miscellaneous filesystems | ||
1331 | # | ||
1332 | # CONFIG_ADFS_FS is not set | ||
1333 | # CONFIG_AFFS_FS is not set | ||
1334 | # CONFIG_HFS_FS is not set | ||
1335 | # CONFIG_HFSPLUS_FS is not set | ||
1336 | # CONFIG_BEFS_FS is not set | ||
1337 | # CONFIG_BFS_FS is not set | ||
1338 | # CONFIG_EFS_FS is not set | ||
1339 | # CONFIG_JFFS_FS is not set | ||
1340 | CONFIG_JFFS2_FS=y | ||
1341 | CONFIG_JFFS2_FS_DEBUG=0 | ||
1342 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1343 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1344 | CONFIG_JFFS2_ZLIB=y | ||
1345 | CONFIG_JFFS2_RTIME=y | ||
1346 | CONFIG_JFFS2_RUBIN=y | ||
1347 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1348 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1349 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1350 | CONFIG_CRAMFS=m | ||
1351 | # CONFIG_VXFS_FS is not set | ||
1352 | # CONFIG_HPFS_FS is not set | ||
1353 | # CONFIG_QNX4FS_FS is not set | ||
1354 | # CONFIG_SYSV_FS is not set | ||
1355 | # CONFIG_UFS_FS is not set | ||
1356 | |||
1357 | # | ||
1358 | # Network File Systems | ||
1359 | # | ||
1360 | CONFIG_NFS_FS=m | ||
1361 | CONFIG_NFS_V3=y | ||
1362 | # CONFIG_NFS_V3_ACL is not set | ||
1363 | CONFIG_NFS_V4=y | ||
1364 | # CONFIG_NFS_DIRECTIO is not set | ||
1365 | # CONFIG_NFSD is not set | ||
1366 | CONFIG_LOCKD=m | ||
1367 | CONFIG_LOCKD_V4=y | ||
1368 | CONFIG_NFS_COMMON=y | ||
1369 | CONFIG_SUNRPC=m | ||
1370 | CONFIG_SUNRPC_GSS=m | ||
1371 | CONFIG_RPCSEC_GSS_KRB5=m | ||
1372 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
1373 | CONFIG_SMB_FS=m | ||
1374 | CONFIG_SMB_NLS_DEFAULT=y | ||
1375 | CONFIG_SMB_NLS_REMOTE="cp437" | ||
1376 | # CONFIG_CIFS is not set | ||
1377 | # CONFIG_NCP_FS is not set | ||
1378 | # CONFIG_CODA_FS is not set | ||
1379 | # CONFIG_AFS_FS is not set | ||
1380 | # CONFIG_9P_FS is not set | ||
1381 | |||
1382 | # | ||
1383 | # Partition Types | ||
1384 | # | ||
1385 | CONFIG_PARTITION_ADVANCED=y | ||
1386 | # CONFIG_ACORN_PARTITION is not set | ||
1387 | # CONFIG_OSF_PARTITION is not set | ||
1388 | # CONFIG_AMIGA_PARTITION is not set | ||
1389 | # CONFIG_ATARI_PARTITION is not set | ||
1390 | # CONFIG_MAC_PARTITION is not set | ||
1391 | CONFIG_MSDOS_PARTITION=y | ||
1392 | # CONFIG_BSD_DISKLABEL is not set | ||
1393 | # CONFIG_MINIX_SUBPARTITION is not set | ||
1394 | # CONFIG_SOLARIS_X86_PARTITION is not set | ||
1395 | # CONFIG_UNIXWARE_DISKLABEL is not set | ||
1396 | # CONFIG_LDM_PARTITION is not set | ||
1397 | # CONFIG_SGI_PARTITION is not set | ||
1398 | # CONFIG_ULTRIX_PARTITION is not set | ||
1399 | # CONFIG_SUN_PARTITION is not set | ||
1400 | # CONFIG_EFI_PARTITION is not set | ||
1401 | |||
1402 | # | ||
1403 | # Native Language Support | ||
1404 | # | ||
1405 | CONFIG_NLS=y | ||
1406 | CONFIG_NLS_DEFAULT="cp437" | ||
1407 | CONFIG_NLS_CODEPAGE_437=y | ||
1408 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
1409 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
1410 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
1411 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
1412 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
1413 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
1414 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
1415 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
1416 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
1417 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
1418 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
1419 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
1420 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
1421 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
1422 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
1423 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
1424 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
1425 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
1426 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
1427 | # CONFIG_NLS_ISO8859_8 is not set | ||
1428 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
1429 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
1430 | # CONFIG_NLS_ASCII is not set | ||
1431 | CONFIG_NLS_ISO8859_1=y | ||
1432 | # CONFIG_NLS_ISO8859_2 is not set | ||
1433 | # CONFIG_NLS_ISO8859_3 is not set | ||
1434 | # CONFIG_NLS_ISO8859_4 is not set | ||
1435 | # CONFIG_NLS_ISO8859_5 is not set | ||
1436 | # CONFIG_NLS_ISO8859_6 is not set | ||
1437 | # CONFIG_NLS_ISO8859_7 is not set | ||
1438 | # CONFIG_NLS_ISO8859_9 is not set | ||
1439 | # CONFIG_NLS_ISO8859_13 is not set | ||
1440 | # CONFIG_NLS_ISO8859_14 is not set | ||
1441 | # CONFIG_NLS_ISO8859_15 is not set | ||
1442 | # CONFIG_NLS_KOI8_R is not set | ||
1443 | # CONFIG_NLS_KOI8_U is not set | ||
1444 | CONFIG_NLS_UTF8=y | ||
1445 | |||
1446 | # | ||
1447 | # Profiling support | ||
1448 | # | ||
1449 | CONFIG_PROFILING=y | ||
1450 | CONFIG_OPROFILE=m | ||
1451 | |||
1452 | # | ||
1453 | # Kernel hacking | ||
1454 | # | ||
1455 | # CONFIG_PRINTK_TIME is not set | ||
1456 | CONFIG_DEBUG_KERNEL=y | ||
1457 | CONFIG_MAGIC_SYSRQ=y | ||
1458 | CONFIG_LOG_BUF_SHIFT=14 | ||
1459 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1460 | # CONFIG_SCHEDSTATS is not set | ||
1461 | # CONFIG_DEBUG_SLAB is not set | ||
1462 | # CONFIG_DEBUG_PREEMPT is not set | ||
1463 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1464 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1465 | # CONFIG_DEBUG_KOBJECT is not set | ||
1466 | CONFIG_DEBUG_BUGVERBOSE=y | ||
1467 | # CONFIG_DEBUG_INFO is not set | ||
1468 | # CONFIG_DEBUG_FS is not set | ||
1469 | CONFIG_FRAME_POINTER=y | ||
1470 | # CONFIG_DEBUG_USER is not set | ||
1471 | # CONFIG_DEBUG_WAITQ is not set | ||
1472 | CONFIG_DEBUG_ERRORS=y | ||
1473 | CONFIG_DEBUG_LL=y | ||
1474 | # CONFIG_DEBUG_ICEDCC is not set | ||
1475 | |||
1476 | # | ||
1477 | # Security options | ||
1478 | # | ||
1479 | # CONFIG_KEYS is not set | ||
1480 | # CONFIG_SECURITY is not set | ||
1481 | |||
1482 | # | ||
1483 | # Cryptographic options | ||
1484 | # | ||
1485 | CONFIG_CRYPTO=y | ||
1486 | CONFIG_CRYPTO_HMAC=y | ||
1487 | CONFIG_CRYPTO_NULL=m | ||
1488 | CONFIG_CRYPTO_MD4=m | ||
1489 | CONFIG_CRYPTO_MD5=m | ||
1490 | CONFIG_CRYPTO_SHA1=m | ||
1491 | CONFIG_CRYPTO_SHA256=m | ||
1492 | CONFIG_CRYPTO_SHA512=m | ||
1493 | CONFIG_CRYPTO_WP512=m | ||
1494 | # CONFIG_CRYPTO_TGR192 is not set | ||
1495 | CONFIG_CRYPTO_DES=m | ||
1496 | CONFIG_CRYPTO_BLOWFISH=m | ||
1497 | CONFIG_CRYPTO_TWOFISH=m | ||
1498 | CONFIG_CRYPTO_SERPENT=m | ||
1499 | CONFIG_CRYPTO_AES=m | ||
1500 | CONFIG_CRYPTO_CAST5=m | ||
1501 | CONFIG_CRYPTO_CAST6=m | ||
1502 | CONFIG_CRYPTO_TEA=m | ||
1503 | CONFIG_CRYPTO_ARC4=m | ||
1504 | CONFIG_CRYPTO_KHAZAD=m | ||
1505 | CONFIG_CRYPTO_ANUBIS=m | ||
1506 | CONFIG_CRYPTO_DEFLATE=m | ||
1507 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1508 | CONFIG_CRYPTO_CRC32C=m | ||
1509 | CONFIG_CRYPTO_TEST=m | ||
1510 | |||
1511 | # | ||
1512 | # Hardware crypto devices | ||
1513 | # | ||
1514 | |||
1515 | # | ||
1516 | # Library routines | ||
1517 | # | ||
1518 | CONFIG_CRC_CCITT=y | ||
1519 | # CONFIG_CRC16 is not set | ||
1520 | CONFIG_CRC32=y | ||
1521 | CONFIG_LIBCRC32C=m | ||
1522 | CONFIG_ZLIB_INFLATE=y | ||
1523 | CONFIG_ZLIB_DEFLATE=y | ||
diff --git a/arch/arm/configs/poodle_defconfig b/arch/arm/configs/poodle_defconfig new file mode 100644 index 000000000000..72822907759f --- /dev/null +++ b/arch/arm/configs/poodle_defconfig | |||
@@ -0,0 +1,1015 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.14-rc3 | ||
4 | # Sun Oct 9 17:04:29 2005 | ||
5 | # | ||
6 | CONFIG_ARM=y | ||
7 | CONFIG_MMU=y | ||
8 | CONFIG_UID16=y | ||
9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
10 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
11 | |||
12 | # | ||
13 | # Code maturity level options | ||
14 | # | ||
15 | CONFIG_EXPERIMENTAL=y | ||
16 | CONFIG_CLEAN_COMPILE=y | ||
17 | CONFIG_BROKEN_ON_SMP=y | ||
18 | CONFIG_LOCK_KERNEL=y | ||
19 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
20 | |||
21 | # | ||
22 | # General setup | ||
23 | # | ||
24 | CONFIG_LOCALVERSION="" | ||
25 | CONFIG_LOCALVERSION_AUTO=y | ||
26 | CONFIG_SWAP=y | ||
27 | CONFIG_SYSVIPC=y | ||
28 | # CONFIG_POSIX_MQUEUE is not set | ||
29 | CONFIG_BSD_PROCESS_ACCT=y | ||
30 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | ||
31 | CONFIG_SYSCTL=y | ||
32 | # CONFIG_AUDIT is not set | ||
33 | CONFIG_HOTPLUG=y | ||
34 | CONFIG_KOBJECT_UEVENT=y | ||
35 | # CONFIG_IKCONFIG is not set | ||
36 | CONFIG_INITRAMFS_SOURCE="" | ||
37 | CONFIG_EMBEDDED=y | ||
38 | CONFIG_KALLSYMS=y | ||
39 | # CONFIG_KALLSYMS_ALL is not set | ||
40 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
41 | CONFIG_PRINTK=y | ||
42 | CONFIG_BUG=y | ||
43 | CONFIG_BASE_FULL=y | ||
44 | CONFIG_FUTEX=y | ||
45 | CONFIG_EPOLL=y | ||
46 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
47 | CONFIG_SHMEM=y | ||
48 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
49 | CONFIG_CC_ALIGN_LABELS=0 | ||
50 | CONFIG_CC_ALIGN_LOOPS=0 | ||
51 | CONFIG_CC_ALIGN_JUMPS=0 | ||
52 | # CONFIG_TINY_SHMEM is not set | ||
53 | CONFIG_BASE_SMALL=0 | ||
54 | |||
55 | # | ||
56 | # Loadable module support | ||
57 | # | ||
58 | CONFIG_MODULES=y | ||
59 | CONFIG_MODULE_UNLOAD=y | ||
60 | CONFIG_MODULE_FORCE_UNLOAD=y | ||
61 | CONFIG_OBSOLETE_MODPARM=y | ||
62 | CONFIG_MODVERSIONS=y | ||
63 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
64 | CONFIG_KMOD=y | ||
65 | |||
66 | # | ||
67 | # System Type | ||
68 | # | ||
69 | # CONFIG_ARCH_CLPS7500 is not set | ||
70 | # CONFIG_ARCH_CLPS711X is not set | ||
71 | # CONFIG_ARCH_CO285 is not set | ||
72 | # CONFIG_ARCH_EBSA110 is not set | ||
73 | # CONFIG_ARCH_CAMELOT is not set | ||
74 | # CONFIG_ARCH_FOOTBRIDGE is not set | ||
75 | # CONFIG_ARCH_INTEGRATOR is not set | ||
76 | # CONFIG_ARCH_IOP3XX is not set | ||
77 | # CONFIG_ARCH_IXP4XX is not set | ||
78 | # CONFIG_ARCH_IXP2000 is not set | ||
79 | # CONFIG_ARCH_L7200 is not set | ||
80 | CONFIG_ARCH_PXA=y | ||
81 | # CONFIG_ARCH_RPC is not set | ||
82 | # CONFIG_ARCH_SA1100 is not set | ||
83 | # CONFIG_ARCH_S3C2410 is not set | ||
84 | # CONFIG_ARCH_SHARK is not set | ||
85 | # CONFIG_ARCH_LH7A40X is not set | ||
86 | # CONFIG_ARCH_OMAP is not set | ||
87 | # CONFIG_ARCH_VERSATILE is not set | ||
88 | # CONFIG_ARCH_IMX is not set | ||
89 | # CONFIG_ARCH_H720X is not set | ||
90 | # CONFIG_ARCH_AAEC2000 is not set | ||
91 | |||
92 | # | ||
93 | # Intel PXA2xx Implementations | ||
94 | # | ||
95 | # CONFIG_ARCH_LUBBOCK is not set | ||
96 | # CONFIG_MACH_MAINSTONE is not set | ||
97 | # CONFIG_ARCH_PXA_IDP is not set | ||
98 | CONFIG_PXA_SHARPSL=y | ||
99 | CONFIG_PXA_SHARPSL_25x=y | ||
100 | # CONFIG_PXA_SHARPSL_27x is not set | ||
101 | CONFIG_MACH_POODLE=y | ||
102 | # CONFIG_MACH_CORGI is not set | ||
103 | # CONFIG_MACH_SHEPHERD is not set | ||
104 | # CONFIG_MACH_HUSKY is not set | ||
105 | CONFIG_PXA25x=y | ||
106 | |||
107 | # | ||
108 | # Processor Type | ||
109 | # | ||
110 | CONFIG_CPU_32=y | ||
111 | CONFIG_CPU_XSCALE=y | ||
112 | CONFIG_CPU_32v5=y | ||
113 | CONFIG_CPU_ABRT_EV5T=y | ||
114 | CONFIG_CPU_CACHE_VIVT=y | ||
115 | CONFIG_CPU_TLB_V4WBI=y | ||
116 | |||
117 | # | ||
118 | # Processor Features | ||
119 | # | ||
120 | CONFIG_ARM_THUMB=y | ||
121 | CONFIG_XSCALE_PMU=y | ||
122 | CONFIG_SHARP_LOCOMO=y | ||
123 | CONFIG_SHARP_PARAM=y | ||
124 | CONFIG_SHARP_SCOOP=y | ||
125 | |||
126 | # | ||
127 | # Bus support | ||
128 | # | ||
129 | CONFIG_ISA_DMA_API=y | ||
130 | |||
131 | # | ||
132 | # PCCARD (PCMCIA/CardBus) support | ||
133 | # | ||
134 | CONFIG_PCCARD=y | ||
135 | # CONFIG_PCMCIA_DEBUG is not set | ||
136 | CONFIG_PCMCIA=y | ||
137 | CONFIG_PCMCIA_LOAD_CIS=y | ||
138 | CONFIG_PCMCIA_IOCTL=y | ||
139 | |||
140 | # | ||
141 | # PC-card bridges | ||
142 | # | ||
143 | CONFIG_PCMCIA_PXA2XX=y | ||
144 | |||
145 | # | ||
146 | # Kernel Features | ||
147 | # | ||
148 | CONFIG_PREEMPT=y | ||
149 | # CONFIG_NO_IDLE_HZ is not set | ||
150 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | ||
151 | CONFIG_SELECT_MEMORY_MODEL=y | ||
152 | CONFIG_FLATMEM_MANUAL=y | ||
153 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
154 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
155 | CONFIG_FLATMEM=y | ||
156 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
157 | # CONFIG_SPARSEMEM_STATIC is not set | ||
158 | CONFIG_ALIGNMENT_TRAP=y | ||
159 | |||
160 | # | ||
161 | # Boot options | ||
162 | # | ||
163 | CONFIG_ZBOOT_ROM_TEXT=0x0 | ||
164 | CONFIG_ZBOOT_ROM_BSS=0x0 | ||
165 | CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 debug" | ||
166 | # CONFIG_XIP_KERNEL is not set | ||
167 | |||
168 | # | ||
169 | # Floating point emulation | ||
170 | # | ||
171 | |||
172 | # | ||
173 | # At least one emulation must be selected | ||
174 | # | ||
175 | CONFIG_FPE_NWFPE=y | ||
176 | # CONFIG_FPE_NWFPE_XP is not set | ||
177 | # CONFIG_FPE_FASTFPE is not set | ||
178 | |||
179 | # | ||
180 | # Userspace binary formats | ||
181 | # | ||
182 | CONFIG_BINFMT_ELF=y | ||
183 | CONFIG_BINFMT_AOUT=m | ||
184 | CONFIG_BINFMT_MISC=m | ||
185 | # CONFIG_ARTHUR is not set | ||
186 | |||
187 | # | ||
188 | # Power management options | ||
189 | # | ||
190 | CONFIG_PM=y | ||
191 | CONFIG_APM=y | ||
192 | |||
193 | # | ||
194 | # Networking | ||
195 | # | ||
196 | CONFIG_NET=y | ||
197 | |||
198 | # | ||
199 | # Networking options | ||
200 | # | ||
201 | CONFIG_PACKET=y | ||
202 | CONFIG_PACKET_MMAP=y | ||
203 | CONFIG_UNIX=y | ||
204 | # CONFIG_NET_KEY is not set | ||
205 | CONFIG_INET=y | ||
206 | # CONFIG_IP_MULTICAST is not set | ||
207 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
208 | CONFIG_IP_FIB_HASH=y | ||
209 | # CONFIG_IP_PNP is not set | ||
210 | # CONFIG_NET_IPIP is not set | ||
211 | # CONFIG_NET_IPGRE is not set | ||
212 | # CONFIG_ARPD is not set | ||
213 | CONFIG_SYN_COOKIES=y | ||
214 | # CONFIG_INET_AH is not set | ||
215 | # CONFIG_INET_ESP is not set | ||
216 | # CONFIG_INET_IPCOMP is not set | ||
217 | # CONFIG_INET_TUNNEL is not set | ||
218 | CONFIG_INET_DIAG=y | ||
219 | CONFIG_INET_TCP_DIAG=y | ||
220 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
221 | CONFIG_TCP_CONG_BIC=y | ||
222 | # CONFIG_IPV6 is not set | ||
223 | # CONFIG_NETFILTER is not set | ||
224 | |||
225 | # | ||
226 | # DCCP Configuration (EXPERIMENTAL) | ||
227 | # | ||
228 | # CONFIG_IP_DCCP is not set | ||
229 | |||
230 | # | ||
231 | # SCTP Configuration (EXPERIMENTAL) | ||
232 | # | ||
233 | # CONFIG_IP_SCTP is not set | ||
234 | # CONFIG_ATM is not set | ||
235 | # CONFIG_BRIDGE is not set | ||
236 | # CONFIG_VLAN_8021Q is not set | ||
237 | # CONFIG_DECNET is not set | ||
238 | # CONFIG_LLC2 is not set | ||
239 | # CONFIG_IPX is not set | ||
240 | # CONFIG_ATALK is not set | ||
241 | # CONFIG_X25 is not set | ||
242 | # CONFIG_LAPB is not set | ||
243 | # CONFIG_NET_DIVERT is not set | ||
244 | # CONFIG_ECONET is not set | ||
245 | # CONFIG_WAN_ROUTER is not set | ||
246 | # CONFIG_NET_SCHED is not set | ||
247 | # CONFIG_NET_CLS_ROUTE is not set | ||
248 | |||
249 | # | ||
250 | # Network testing | ||
251 | # | ||
252 | # CONFIG_NET_PKTGEN is not set | ||
253 | # CONFIG_HAMRADIO is not set | ||
254 | # CONFIG_IRDA is not set | ||
255 | # CONFIG_BT is not set | ||
256 | # CONFIG_IEEE80211 is not set | ||
257 | |||
258 | # | ||
259 | # Device Drivers | ||
260 | # | ||
261 | |||
262 | # | ||
263 | # Generic Driver Options | ||
264 | # | ||
265 | CONFIG_STANDALONE=y | ||
266 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
267 | CONFIG_FW_LOADER=y | ||
268 | # CONFIG_DEBUG_DRIVER is not set | ||
269 | |||
270 | # | ||
271 | # Memory Technology Devices (MTD) | ||
272 | # | ||
273 | CONFIG_MTD=y | ||
274 | # CONFIG_MTD_DEBUG is not set | ||
275 | # CONFIG_MTD_CONCAT is not set | ||
276 | CONFIG_MTD_PARTITIONS=y | ||
277 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
278 | # CONFIG_MTD_CMDLINE_PARTS is not set | ||
279 | # CONFIG_MTD_AFS_PARTS is not set | ||
280 | |||
281 | # | ||
282 | # User Modules And Translation Layers | ||
283 | # | ||
284 | CONFIG_MTD_CHAR=y | ||
285 | CONFIG_MTD_BLOCK=y | ||
286 | # CONFIG_FTL is not set | ||
287 | # CONFIG_NFTL is not set | ||
288 | # CONFIG_INFTL is not set | ||
289 | |||
290 | # | ||
291 | # RAM/ROM/Flash chip drivers | ||
292 | # | ||
293 | # CONFIG_MTD_CFI is not set | ||
294 | # CONFIG_MTD_JEDECPROBE is not set | ||
295 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
296 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
297 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
298 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
299 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
300 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
301 | CONFIG_MTD_CFI_I1=y | ||
302 | CONFIG_MTD_CFI_I2=y | ||
303 | # CONFIG_MTD_CFI_I4 is not set | ||
304 | # CONFIG_MTD_CFI_I8 is not set | ||
305 | # CONFIG_MTD_RAM is not set | ||
306 | # CONFIG_MTD_ROM is not set | ||
307 | # CONFIG_MTD_ABSENT is not set | ||
308 | |||
309 | # | ||
310 | # Mapping drivers for chip access | ||
311 | # | ||
312 | CONFIG_MTD_COMPLEX_MAPPINGS=y | ||
313 | CONFIG_MTD_SHARP_SL=y | ||
314 | # CONFIG_MTD_PLATRAM is not set | ||
315 | |||
316 | # | ||
317 | # Self-contained MTD device drivers | ||
318 | # | ||
319 | # CONFIG_MTD_SLRAM is not set | ||
320 | # CONFIG_MTD_PHRAM is not set | ||
321 | # CONFIG_MTD_MTDRAM is not set | ||
322 | # CONFIG_MTD_BLKMTD is not set | ||
323 | # CONFIG_MTD_BLOCK2MTD is not set | ||
324 | |||
325 | # | ||
326 | # Disk-On-Chip Device Drivers | ||
327 | # | ||
328 | # CONFIG_MTD_DOC2000 is not set | ||
329 | # CONFIG_MTD_DOC2001 is not set | ||
330 | # CONFIG_MTD_DOC2001PLUS is not set | ||
331 | |||
332 | # | ||
333 | # NAND Flash Device Drivers | ||
334 | # | ||
335 | CONFIG_MTD_NAND=y | ||
336 | CONFIG_MTD_NAND_VERIFY_WRITE=y | ||
337 | # CONFIG_MTD_NAND_H1900 is not set | ||
338 | CONFIG_MTD_NAND_IDS=y | ||
339 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
340 | CONFIG_MTD_NAND_SHARPSL=y | ||
341 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
342 | |||
343 | # | ||
344 | # Parallel port support | ||
345 | # | ||
346 | # CONFIG_PARPORT is not set | ||
347 | |||
348 | # | ||
349 | # Plug and Play support | ||
350 | # | ||
351 | |||
352 | # | ||
353 | # Block devices | ||
354 | # | ||
355 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
356 | CONFIG_BLK_DEV_LOOP=y | ||
357 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
358 | # CONFIG_BLK_DEV_NBD is not set | ||
359 | # CONFIG_BLK_DEV_RAM is not set | ||
360 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
361 | # CONFIG_CDROM_PKTCDVD is not set | ||
362 | |||
363 | # | ||
364 | # IO Schedulers | ||
365 | # | ||
366 | CONFIG_IOSCHED_NOOP=y | ||
367 | CONFIG_IOSCHED_AS=y | ||
368 | CONFIG_IOSCHED_DEADLINE=y | ||
369 | CONFIG_IOSCHED_CFQ=y | ||
370 | # CONFIG_ATA_OVER_ETH is not set | ||
371 | |||
372 | # | ||
373 | # ATA/ATAPI/MFM/RLL support | ||
374 | # | ||
375 | CONFIG_IDE=y | ||
376 | CONFIG_BLK_DEV_IDE=y | ||
377 | |||
378 | # | ||
379 | # Please see Documentation/ide.txt for help/info on IDE drives | ||
380 | # | ||
381 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
382 | CONFIG_BLK_DEV_IDEDISK=y | ||
383 | # CONFIG_IDEDISK_MULTI_MODE is not set | ||
384 | CONFIG_BLK_DEV_IDECS=y | ||
385 | # CONFIG_BLK_DEV_IDECD is not set | ||
386 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
387 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
388 | # CONFIG_IDE_TASK_IOCTL is not set | ||
389 | |||
390 | # | ||
391 | # IDE chipset support/bugfixes | ||
392 | # | ||
393 | CONFIG_IDE_GENERIC=y | ||
394 | # CONFIG_IDE_ARM is not set | ||
395 | # CONFIG_BLK_DEV_IDEDMA is not set | ||
396 | # CONFIG_IDEDMA_AUTO is not set | ||
397 | # CONFIG_BLK_DEV_HD is not set | ||
398 | |||
399 | # | ||
400 | # SCSI device support | ||
401 | # | ||
402 | # CONFIG_RAID_ATTRS is not set | ||
403 | # CONFIG_SCSI is not set | ||
404 | |||
405 | # | ||
406 | # Multi-device support (RAID and LVM) | ||
407 | # | ||
408 | # CONFIG_MD is not set | ||
409 | |||
410 | # | ||
411 | # Fusion MPT device support | ||
412 | # | ||
413 | # CONFIG_FUSION is not set | ||
414 | |||
415 | # | ||
416 | # IEEE 1394 (FireWire) support | ||
417 | # | ||
418 | |||
419 | # | ||
420 | # I2O device support | ||
421 | # | ||
422 | |||
423 | # | ||
424 | # Network device support | ||
425 | # | ||
426 | CONFIG_NETDEVICES=y | ||
427 | # CONFIG_DUMMY is not set | ||
428 | # CONFIG_BONDING is not set | ||
429 | # CONFIG_EQUALIZER is not set | ||
430 | # CONFIG_TUN is not set | ||
431 | |||
432 | # | ||
433 | # PHY device support | ||
434 | # | ||
435 | # CONFIG_PHYLIB is not set | ||
436 | |||
437 | # | ||
438 | # Ethernet (10 or 100Mbit) | ||
439 | # | ||
440 | CONFIG_NET_ETHERNET=y | ||
441 | # CONFIG_MII is not set | ||
442 | # CONFIG_SMC91X is not set | ||
443 | # CONFIG_DM9000 is not set | ||
444 | |||
445 | # | ||
446 | # Ethernet (1000 Mbit) | ||
447 | # | ||
448 | |||
449 | # | ||
450 | # Ethernet (10000 Mbit) | ||
451 | # | ||
452 | |||
453 | # | ||
454 | # Token Ring devices | ||
455 | # | ||
456 | |||
457 | # | ||
458 | # Wireless LAN (non-hamradio) | ||
459 | # | ||
460 | CONFIG_NET_RADIO=y | ||
461 | |||
462 | # | ||
463 | # Obsolete Wireless cards support (pre-802.11) | ||
464 | # | ||
465 | # CONFIG_STRIP is not set | ||
466 | # CONFIG_PCMCIA_WAVELAN is not set | ||
467 | # CONFIG_PCMCIA_NETWAVE is not set | ||
468 | |||
469 | # | ||
470 | # Wireless 802.11 Frequency Hopping cards support | ||
471 | # | ||
472 | # CONFIG_PCMCIA_RAYCS is not set | ||
473 | |||
474 | # | ||
475 | # Wireless 802.11b ISA/PCI cards support | ||
476 | # | ||
477 | # CONFIG_HERMES is not set | ||
478 | # CONFIG_ATMEL is not set | ||
479 | |||
480 | # | ||
481 | # Wireless 802.11b Pcmcia/Cardbus cards support | ||
482 | # | ||
483 | # CONFIG_AIRO_CS is not set | ||
484 | # CONFIG_PCMCIA_WL3501 is not set | ||
485 | # CONFIG_HOSTAP is not set | ||
486 | CONFIG_NET_WIRELESS=y | ||
487 | |||
488 | # | ||
489 | # PCMCIA network device support | ||
490 | # | ||
491 | CONFIG_NET_PCMCIA=y | ||
492 | # CONFIG_PCMCIA_3C589 is not set | ||
493 | # CONFIG_PCMCIA_3C574 is not set | ||
494 | # CONFIG_PCMCIA_FMVJ18X is not set | ||
495 | CONFIG_PCMCIA_PCNET=y | ||
496 | # CONFIG_PCMCIA_NMCLAN is not set | ||
497 | # CONFIG_PCMCIA_SMC91C92 is not set | ||
498 | # CONFIG_PCMCIA_XIRC2PS is not set | ||
499 | # CONFIG_PCMCIA_AXNET is not set | ||
500 | |||
501 | # | ||
502 | # Wan interfaces | ||
503 | # | ||
504 | # CONFIG_WAN is not set | ||
505 | CONFIG_PPP=m | ||
506 | # CONFIG_PPP_MULTILINK is not set | ||
507 | # CONFIG_PPP_FILTER is not set | ||
508 | CONFIG_PPP_ASYNC=m | ||
509 | # CONFIG_PPP_SYNC_TTY is not set | ||
510 | # CONFIG_PPP_DEFLATE is not set | ||
511 | CONFIG_PPP_BSDCOMP=m | ||
512 | # CONFIG_PPPOE is not set | ||
513 | # CONFIG_SLIP is not set | ||
514 | # CONFIG_SHAPER is not set | ||
515 | # CONFIG_NETCONSOLE is not set | ||
516 | # CONFIG_NETPOLL is not set | ||
517 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
518 | |||
519 | # | ||
520 | # ISDN subsystem | ||
521 | # | ||
522 | # CONFIG_ISDN is not set | ||
523 | |||
524 | # | ||
525 | # Input device support | ||
526 | # | ||
527 | CONFIG_INPUT=y | ||
528 | |||
529 | # | ||
530 | # Userland interfaces | ||
531 | # | ||
532 | # CONFIG_INPUT_MOUSEDEV is not set | ||
533 | # CONFIG_INPUT_JOYDEV is not set | ||
534 | CONFIG_INPUT_TSDEV=y | ||
535 | CONFIG_INPUT_TSDEV_SCREEN_X=240 | ||
536 | CONFIG_INPUT_TSDEV_SCREEN_Y=320 | ||
537 | CONFIG_INPUT_EVDEV=y | ||
538 | CONFIG_INPUT_EVBUG=y | ||
539 | |||
540 | # | ||
541 | # Input Device Drivers | ||
542 | # | ||
543 | CONFIG_INPUT_KEYBOARD=y | ||
544 | # CONFIG_KEYBOARD_ATKBD is not set | ||
545 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
546 | # CONFIG_KEYBOARD_LKKBD is not set | ||
547 | CONFIG_KEYBOARD_LOCOMO=y | ||
548 | # CONFIG_KEYBOARD_XTKBD is not set | ||
549 | # CONFIG_KEYBOARD_NEWTON is not set | ||
550 | # CONFIG_KEYBOARD_CORGI is not set | ||
551 | CONFIG_KEYBOARD_SPITZ=y | ||
552 | # CONFIG_INPUT_MOUSE is not set | ||
553 | # CONFIG_INPUT_JOYSTICK is not set | ||
554 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
555 | # CONFIG_INPUT_MISC is not set | ||
556 | |||
557 | # | ||
558 | # Hardware I/O ports | ||
559 | # | ||
560 | # CONFIG_SERIO is not set | ||
561 | # CONFIG_GAMEPORT is not set | ||
562 | |||
563 | # | ||
564 | # Character devices | ||
565 | # | ||
566 | CONFIG_VT=y | ||
567 | CONFIG_VT_CONSOLE=y | ||
568 | CONFIG_HW_CONSOLE=y | ||
569 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
570 | |||
571 | # | ||
572 | # Serial drivers | ||
573 | # | ||
574 | # CONFIG_SERIAL_8250 is not set | ||
575 | |||
576 | # | ||
577 | # Non-8250 serial port support | ||
578 | # | ||
579 | CONFIG_SERIAL_PXA=y | ||
580 | CONFIG_SERIAL_PXA_CONSOLE=y | ||
581 | CONFIG_SERIAL_CORE=y | ||
582 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
583 | CONFIG_UNIX98_PTYS=y | ||
584 | # CONFIG_LEGACY_PTYS is not set | ||
585 | |||
586 | # | ||
587 | # IPMI | ||
588 | # | ||
589 | # CONFIG_IPMI_HANDLER is not set | ||
590 | |||
591 | # | ||
592 | # Watchdog Cards | ||
593 | # | ||
594 | # CONFIG_WATCHDOG is not set | ||
595 | # CONFIG_NVRAM is not set | ||
596 | # CONFIG_RTC is not set | ||
597 | # CONFIG_DTLK is not set | ||
598 | # CONFIG_R3964 is not set | ||
599 | |||
600 | # | ||
601 | # Ftape, the floppy tape device driver | ||
602 | # | ||
603 | |||
604 | # | ||
605 | # PCMCIA character devices | ||
606 | # | ||
607 | # CONFIG_SYNCLINK_CS is not set | ||
608 | # CONFIG_RAW_DRIVER is not set | ||
609 | |||
610 | # | ||
611 | # TPM devices | ||
612 | # | ||
613 | |||
614 | # | ||
615 | # I2C support | ||
616 | # | ||
617 | CONFIG_I2C=y | ||
618 | # CONFIG_I2C_CHARDEV is not set | ||
619 | |||
620 | # | ||
621 | # I2C Algorithms | ||
622 | # | ||
623 | CONFIG_I2C_ALGOBIT=y | ||
624 | # CONFIG_I2C_ALGOPCF is not set | ||
625 | # CONFIG_I2C_ALGOPCA is not set | ||
626 | |||
627 | # | ||
628 | # I2C Hardware Bus support | ||
629 | # | ||
630 | # CONFIG_I2C_PXA is not set | ||
631 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
632 | # CONFIG_I2C_STUB is not set | ||
633 | # CONFIG_I2C_PCA_ISA is not set | ||
634 | |||
635 | # | ||
636 | # Miscellaneous I2C Chip support | ||
637 | # | ||
638 | # CONFIG_SENSORS_DS1337 is not set | ||
639 | # CONFIG_SENSORS_DS1374 is not set | ||
640 | # CONFIG_SENSORS_EEPROM is not set | ||
641 | # CONFIG_SENSORS_PCF8574 is not set | ||
642 | # CONFIG_SENSORS_PCA9539 is not set | ||
643 | # CONFIG_SENSORS_PCF8591 is not set | ||
644 | # CONFIG_SENSORS_RTC8564 is not set | ||
645 | # CONFIG_SENSORS_MAX6875 is not set | ||
646 | CONFIG_I2C_DEBUG_CORE=y | ||
647 | CONFIG_I2C_DEBUG_ALGO=y | ||
648 | CONFIG_I2C_DEBUG_BUS=y | ||
649 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
650 | |||
651 | # | ||
652 | # Hardware Monitoring support | ||
653 | # | ||
654 | CONFIG_HWMON=y | ||
655 | # CONFIG_HWMON_VID is not set | ||
656 | # CONFIG_SENSORS_ADM1021 is not set | ||
657 | # CONFIG_SENSORS_ADM1025 is not set | ||
658 | # CONFIG_SENSORS_ADM1026 is not set | ||
659 | # CONFIG_SENSORS_ADM1031 is not set | ||
660 | # CONFIG_SENSORS_ADM9240 is not set | ||
661 | # CONFIG_SENSORS_ASB100 is not set | ||
662 | # CONFIG_SENSORS_ATXP1 is not set | ||
663 | # CONFIG_SENSORS_DS1621 is not set | ||
664 | # CONFIG_SENSORS_FSCHER is not set | ||
665 | # CONFIG_SENSORS_FSCPOS is not set | ||
666 | # CONFIG_SENSORS_GL518SM is not set | ||
667 | # CONFIG_SENSORS_GL520SM is not set | ||
668 | # CONFIG_SENSORS_IT87 is not set | ||
669 | # CONFIG_SENSORS_LM63 is not set | ||
670 | # CONFIG_SENSORS_LM75 is not set | ||
671 | # CONFIG_SENSORS_LM77 is not set | ||
672 | # CONFIG_SENSORS_LM78 is not set | ||
673 | # CONFIG_SENSORS_LM80 is not set | ||
674 | # CONFIG_SENSORS_LM83 is not set | ||
675 | # CONFIG_SENSORS_LM85 is not set | ||
676 | # CONFIG_SENSORS_LM87 is not set | ||
677 | # CONFIG_SENSORS_LM90 is not set | ||
678 | # CONFIG_SENSORS_LM92 is not set | ||
679 | # CONFIG_SENSORS_MAX1619 is not set | ||
680 | # CONFIG_SENSORS_PC87360 is not set | ||
681 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
682 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
683 | # CONFIG_SENSORS_W83781D is not set | ||
684 | # CONFIG_SENSORS_W83792D is not set | ||
685 | # CONFIG_SENSORS_W83L785TS is not set | ||
686 | # CONFIG_SENSORS_W83627HF is not set | ||
687 | # CONFIG_SENSORS_W83627EHF is not set | ||
688 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
689 | |||
690 | # | ||
691 | # Misc devices | ||
692 | # | ||
693 | |||
694 | # | ||
695 | # Multimedia Capabilities Port drivers | ||
696 | # | ||
697 | |||
698 | # | ||
699 | # Multimedia devices | ||
700 | # | ||
701 | CONFIG_VIDEO_DEV=m | ||
702 | |||
703 | # | ||
704 | # Video For Linux | ||
705 | # | ||
706 | |||
707 | # | ||
708 | # Video Adapters | ||
709 | # | ||
710 | # CONFIG_VIDEO_CPIA is not set | ||
711 | # CONFIG_VIDEO_SAA5246A is not set | ||
712 | # CONFIG_VIDEO_SAA5249 is not set | ||
713 | # CONFIG_TUNER_3036 is not set | ||
714 | # CONFIG_VIDEO_OVCAMCHIP is not set | ||
715 | |||
716 | # | ||
717 | # Radio Adapters | ||
718 | # | ||
719 | # CONFIG_RADIO_MAESTRO is not set | ||
720 | |||
721 | # | ||
722 | # Digital Video Broadcasting Devices | ||
723 | # | ||
724 | # CONFIG_DVB is not set | ||
725 | |||
726 | # | ||
727 | # Graphics support | ||
728 | # | ||
729 | CONFIG_FB=y | ||
730 | CONFIG_FB_CFB_FILLRECT=y | ||
731 | CONFIG_FB_CFB_COPYAREA=y | ||
732 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
733 | CONFIG_FB_SOFT_CURSOR=y | ||
734 | # CONFIG_FB_MACMODES is not set | ||
735 | CONFIG_FB_MODE_HELPERS=y | ||
736 | # CONFIG_FB_TILEBLITTING is not set | ||
737 | CONFIG_FB_PXA=y | ||
738 | # CONFIG_FB_W100 is not set | ||
739 | # CONFIG_FB_PXA_PARAMETERS is not set | ||
740 | # CONFIG_FB_S1D13XXX is not set | ||
741 | # CONFIG_FB_VIRTUAL is not set | ||
742 | |||
743 | # | ||
744 | # Console display driver support | ||
745 | # | ||
746 | # CONFIG_VGA_CONSOLE is not set | ||
747 | CONFIG_DUMMY_CONSOLE=y | ||
748 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
749 | CONFIG_FONTS=y | ||
750 | CONFIG_FONT_8x8=y | ||
751 | # CONFIG_FONT_8x16 is not set | ||
752 | # CONFIG_FONT_6x11 is not set | ||
753 | # CONFIG_FONT_7x14 is not set | ||
754 | # CONFIG_FONT_PEARL_8x8 is not set | ||
755 | # CONFIG_FONT_ACORN_8x8 is not set | ||
756 | # CONFIG_FONT_MINI_4x6 is not set | ||
757 | # CONFIG_FONT_SUN8x16 is not set | ||
758 | # CONFIG_FONT_SUN12x22 is not set | ||
759 | # CONFIG_FONT_10x18 is not set | ||
760 | |||
761 | # | ||
762 | # Logo configuration | ||
763 | # | ||
764 | # CONFIG_LOGO is not set | ||
765 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
766 | |||
767 | # | ||
768 | # Sound | ||
769 | # | ||
770 | # CONFIG_SOUND is not set | ||
771 | |||
772 | # | ||
773 | # USB support | ||
774 | # | ||
775 | CONFIG_USB_ARCH_HAS_HCD=y | ||
776 | # CONFIG_USB_ARCH_HAS_OHCI is not set | ||
777 | # CONFIG_USB is not set | ||
778 | |||
779 | # | ||
780 | # USB Gadget Support | ||
781 | # | ||
782 | CONFIG_USB_GADGET=y | ||
783 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | ||
784 | CONFIG_USB_GADGET_SELECTED=y | ||
785 | # CONFIG_USB_GADGET_NET2280 is not set | ||
786 | CONFIG_USB_GADGET_PXA2XX=y | ||
787 | CONFIG_USB_PXA2XX=y | ||
788 | # CONFIG_USB_PXA2XX_SMALL is not set | ||
789 | # CONFIG_USB_GADGET_GOKU is not set | ||
790 | # CONFIG_USB_GADGET_LH7A40X is not set | ||
791 | # CONFIG_USB_GADGET_OMAP is not set | ||
792 | # CONFIG_USB_GADGET_DUMMY_HCD is not set | ||
793 | # CONFIG_USB_GADGET_DUALSPEED is not set | ||
794 | # CONFIG_USB_ZERO is not set | ||
795 | CONFIG_USB_ETH=y | ||
796 | CONFIG_USB_ETH_RNDIS=y | ||
797 | # CONFIG_USB_GADGETFS is not set | ||
798 | # CONFIG_USB_FILE_STORAGE is not set | ||
799 | # CONFIG_USB_G_SERIAL is not set | ||
800 | |||
801 | # | ||
802 | # MMC/SD Card support | ||
803 | # | ||
804 | CONFIG_MMC=y | ||
805 | CONFIG_MMC_DEBUG=y | ||
806 | CONFIG_MMC_BLOCK=y | ||
807 | CONFIG_MMC_PXA=y | ||
808 | # CONFIG_MMC_WBSD is not set | ||
809 | |||
810 | # | ||
811 | # File systems | ||
812 | # | ||
813 | CONFIG_EXT2_FS=y | ||
814 | CONFIG_EXT2_FS_XATTR=y | ||
815 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
816 | CONFIG_EXT2_FS_SECURITY=y | ||
817 | # CONFIG_EXT2_FS_XIP is not set | ||
818 | # CONFIG_EXT3_FS is not set | ||
819 | # CONFIG_JBD is not set | ||
820 | CONFIG_FS_MBCACHE=y | ||
821 | # CONFIG_REISERFS_FS is not set | ||
822 | # CONFIG_JFS_FS is not set | ||
823 | CONFIG_FS_POSIX_ACL=y | ||
824 | # CONFIG_XFS_FS is not set | ||
825 | # CONFIG_MINIX_FS is not set | ||
826 | # CONFIG_ROMFS_FS is not set | ||
827 | CONFIG_INOTIFY=y | ||
828 | # CONFIG_QUOTA is not set | ||
829 | CONFIG_DNOTIFY=y | ||
830 | # CONFIG_AUTOFS_FS is not set | ||
831 | # CONFIG_AUTOFS4_FS is not set | ||
832 | # CONFIG_FUSE_FS is not set | ||
833 | |||
834 | # | ||
835 | # CD-ROM/DVD Filesystems | ||
836 | # | ||
837 | # CONFIG_ISO9660_FS is not set | ||
838 | # CONFIG_UDF_FS is not set | ||
839 | |||
840 | # | ||
841 | # DOS/FAT/NT Filesystems | ||
842 | # | ||
843 | CONFIG_FAT_FS=y | ||
844 | CONFIG_MSDOS_FS=y | ||
845 | CONFIG_VFAT_FS=y | ||
846 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
847 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
848 | # CONFIG_NTFS_FS is not set | ||
849 | |||
850 | # | ||
851 | # Pseudo filesystems | ||
852 | # | ||
853 | CONFIG_PROC_FS=y | ||
854 | CONFIG_SYSFS=y | ||
855 | CONFIG_TMPFS=y | ||
856 | # CONFIG_HUGETLB_PAGE is not set | ||
857 | CONFIG_RAMFS=y | ||
858 | # CONFIG_RELAYFS_FS is not set | ||
859 | |||
860 | # | ||
861 | # Miscellaneous filesystems | ||
862 | # | ||
863 | # CONFIG_ADFS_FS is not set | ||
864 | # CONFIG_AFFS_FS is not set | ||
865 | # CONFIG_HFS_FS is not set | ||
866 | # CONFIG_HFSPLUS_FS is not set | ||
867 | # CONFIG_BEFS_FS is not set | ||
868 | # CONFIG_BFS_FS is not set | ||
869 | # CONFIG_EFS_FS is not set | ||
870 | # CONFIG_JFFS_FS is not set | ||
871 | CONFIG_JFFS2_FS=y | ||
872 | CONFIG_JFFS2_FS_DEBUG=0 | ||
873 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
874 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
875 | CONFIG_JFFS2_ZLIB=y | ||
876 | CONFIG_JFFS2_RTIME=y | ||
877 | CONFIG_JFFS2_RUBIN=y | ||
878 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
879 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
880 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
881 | CONFIG_CRAMFS=m | ||
882 | # CONFIG_VXFS_FS is not set | ||
883 | # CONFIG_HPFS_FS is not set | ||
884 | # CONFIG_QNX4FS_FS is not set | ||
885 | # CONFIG_SYSV_FS is not set | ||
886 | # CONFIG_UFS_FS is not set | ||
887 | |||
888 | # | ||
889 | # Network File Systems | ||
890 | # | ||
891 | # CONFIG_NFS_FS is not set | ||
892 | # CONFIG_NFSD is not set | ||
893 | # CONFIG_SMB_FS is not set | ||
894 | # CONFIG_CIFS is not set | ||
895 | # CONFIG_NCP_FS is not set | ||
896 | # CONFIG_CODA_FS is not set | ||
897 | # CONFIG_AFS_FS is not set | ||
898 | # CONFIG_9P_FS is not set | ||
899 | |||
900 | # | ||
901 | # Partition Types | ||
902 | # | ||
903 | CONFIG_PARTITION_ADVANCED=y | ||
904 | # CONFIG_ACORN_PARTITION is not set | ||
905 | # CONFIG_OSF_PARTITION is not set | ||
906 | # CONFIG_AMIGA_PARTITION is not set | ||
907 | # CONFIG_ATARI_PARTITION is not set | ||
908 | # CONFIG_MAC_PARTITION is not set | ||
909 | CONFIG_MSDOS_PARTITION=y | ||
910 | # CONFIG_BSD_DISKLABEL is not set | ||
911 | # CONFIG_MINIX_SUBPARTITION is not set | ||
912 | # CONFIG_SOLARIS_X86_PARTITION is not set | ||
913 | # CONFIG_UNIXWARE_DISKLABEL is not set | ||
914 | # CONFIG_LDM_PARTITION is not set | ||
915 | # CONFIG_SGI_PARTITION is not set | ||
916 | # CONFIG_ULTRIX_PARTITION is not set | ||
917 | # CONFIG_SUN_PARTITION is not set | ||
918 | # CONFIG_EFI_PARTITION is not set | ||
919 | |||
920 | # | ||
921 | # Native Language Support | ||
922 | # | ||
923 | CONFIG_NLS=y | ||
924 | CONFIG_NLS_DEFAULT="cp437" | ||
925 | CONFIG_NLS_CODEPAGE_437=y | ||
926 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
927 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
928 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
929 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
930 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
931 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
932 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
933 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
934 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
935 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
936 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
937 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
938 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
939 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
940 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
941 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
942 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
943 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
944 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
945 | # CONFIG_NLS_ISO8859_8 is not set | ||
946 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
947 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
948 | CONFIG_NLS_ASCII=y | ||
949 | CONFIG_NLS_ISO8859_1=y | ||
950 | # CONFIG_NLS_ISO8859_2 is not set | ||
951 | # CONFIG_NLS_ISO8859_3 is not set | ||
952 | # CONFIG_NLS_ISO8859_4 is not set | ||
953 | # CONFIG_NLS_ISO8859_5 is not set | ||
954 | # CONFIG_NLS_ISO8859_6 is not set | ||
955 | # CONFIG_NLS_ISO8859_7 is not set | ||
956 | # CONFIG_NLS_ISO8859_9 is not set | ||
957 | # CONFIG_NLS_ISO8859_13 is not set | ||
958 | # CONFIG_NLS_ISO8859_14 is not set | ||
959 | # CONFIG_NLS_ISO8859_15 is not set | ||
960 | # CONFIG_NLS_KOI8_R is not set | ||
961 | # CONFIG_NLS_KOI8_U is not set | ||
962 | CONFIG_NLS_UTF8=y | ||
963 | |||
964 | # | ||
965 | # Profiling support | ||
966 | # | ||
967 | # CONFIG_PROFILING is not set | ||
968 | |||
969 | # | ||
970 | # Kernel hacking | ||
971 | # | ||
972 | # CONFIG_PRINTK_TIME is not set | ||
973 | CONFIG_DEBUG_KERNEL=y | ||
974 | CONFIG_MAGIC_SYSRQ=y | ||
975 | CONFIG_LOG_BUF_SHIFT=14 | ||
976 | CONFIG_DETECT_SOFTLOCKUP=y | ||
977 | # CONFIG_SCHEDSTATS is not set | ||
978 | # CONFIG_DEBUG_SLAB is not set | ||
979 | CONFIG_DEBUG_PREEMPT=y | ||
980 | # CONFIG_DEBUG_SPINLOCK is not set | ||
981 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
982 | # CONFIG_DEBUG_KOBJECT is not set | ||
983 | # CONFIG_DEBUG_BUGVERBOSE is not set | ||
984 | # CONFIG_DEBUG_INFO is not set | ||
985 | # CONFIG_DEBUG_FS is not set | ||
986 | CONFIG_FRAME_POINTER=y | ||
987 | # CONFIG_DEBUG_USER is not set | ||
988 | # CONFIG_DEBUG_WAITQ is not set | ||
989 | CONFIG_DEBUG_ERRORS=y | ||
990 | # CONFIG_DEBUG_LL is not set | ||
991 | |||
992 | # | ||
993 | # Security options | ||
994 | # | ||
995 | # CONFIG_KEYS is not set | ||
996 | # CONFIG_SECURITY is not set | ||
997 | |||
998 | # | ||
999 | # Cryptographic options | ||
1000 | # | ||
1001 | # CONFIG_CRYPTO is not set | ||
1002 | |||
1003 | # | ||
1004 | # Hardware crypto devices | ||
1005 | # | ||
1006 | |||
1007 | # | ||
1008 | # Library routines | ||
1009 | # | ||
1010 | CONFIG_CRC_CCITT=y | ||
1011 | # CONFIG_CRC16 is not set | ||
1012 | CONFIG_CRC32=y | ||
1013 | # CONFIG_LIBCRC32C is not set | ||
1014 | CONFIG_ZLIB_INFLATE=y | ||
1015 | CONFIG_ZLIB_DEFLATE=y | ||
diff --git a/arch/arm/configs/spitz_defconfig b/arch/arm/configs/spitz_defconfig new file mode 100644 index 000000000000..900e04f8e38c --- /dev/null +++ b/arch/arm/configs/spitz_defconfig | |||
@@ -0,0 +1,1401 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.14-rc3 | ||
4 | # Sun Oct 9 17:11:19 2005 | ||
5 | # | ||
6 | CONFIG_ARM=y | ||
7 | CONFIG_MMU=y | ||
8 | CONFIG_UID16=y | ||
9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
10 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
11 | |||
12 | # | ||
13 | # Code maturity level options | ||
14 | # | ||
15 | CONFIG_EXPERIMENTAL=y | ||
16 | CONFIG_CLEAN_COMPILE=y | ||
17 | CONFIG_BROKEN_ON_SMP=y | ||
18 | CONFIG_LOCK_KERNEL=y | ||
19 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
20 | |||
21 | # | ||
22 | # General setup | ||
23 | # | ||
24 | CONFIG_LOCALVERSION="" | ||
25 | CONFIG_LOCALVERSION_AUTO=y | ||
26 | CONFIG_SWAP=y | ||
27 | CONFIG_SYSVIPC=y | ||
28 | # CONFIG_POSIX_MQUEUE is not set | ||
29 | CONFIG_BSD_PROCESS_ACCT=y | ||
30 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | ||
31 | CONFIG_SYSCTL=y | ||
32 | # CONFIG_AUDIT is not set | ||
33 | CONFIG_HOTPLUG=y | ||
34 | CONFIG_KOBJECT_UEVENT=y | ||
35 | # CONFIG_IKCONFIG is not set | ||
36 | CONFIG_INITRAMFS_SOURCE="" | ||
37 | CONFIG_EMBEDDED=y | ||
38 | CONFIG_KALLSYMS=y | ||
39 | # CONFIG_KALLSYMS_ALL is not set | ||
40 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
41 | CONFIG_PRINTK=y | ||
42 | CONFIG_BUG=y | ||
43 | CONFIG_BASE_FULL=y | ||
44 | CONFIG_FUTEX=y | ||
45 | CONFIG_EPOLL=y | ||
46 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
47 | CONFIG_SHMEM=y | ||
48 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
49 | CONFIG_CC_ALIGN_LABELS=0 | ||
50 | CONFIG_CC_ALIGN_LOOPS=0 | ||
51 | CONFIG_CC_ALIGN_JUMPS=0 | ||
52 | # CONFIG_TINY_SHMEM is not set | ||
53 | CONFIG_BASE_SMALL=0 | ||
54 | |||
55 | # | ||
56 | # Loadable module support | ||
57 | # | ||
58 | CONFIG_MODULES=y | ||
59 | CONFIG_MODULE_UNLOAD=y | ||
60 | CONFIG_MODULE_FORCE_UNLOAD=y | ||
61 | CONFIG_OBSOLETE_MODPARM=y | ||
62 | # CONFIG_MODVERSIONS is not set | ||
63 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
64 | CONFIG_KMOD=y | ||
65 | |||
66 | # | ||
67 | # System Type | ||
68 | # | ||
69 | # CONFIG_ARCH_CLPS7500 is not set | ||
70 | # CONFIG_ARCH_CLPS711X is not set | ||
71 | # CONFIG_ARCH_CO285 is not set | ||
72 | # CONFIG_ARCH_EBSA110 is not set | ||
73 | # CONFIG_ARCH_CAMELOT is not set | ||
74 | # CONFIG_ARCH_FOOTBRIDGE is not set | ||
75 | # CONFIG_ARCH_INTEGRATOR is not set | ||
76 | # CONFIG_ARCH_IOP3XX is not set | ||
77 | # CONFIG_ARCH_IXP4XX is not set | ||
78 | # CONFIG_ARCH_IXP2000 is not set | ||
79 | # CONFIG_ARCH_L7200 is not set | ||
80 | CONFIG_ARCH_PXA=y | ||
81 | # CONFIG_ARCH_RPC is not set | ||
82 | # CONFIG_ARCH_SA1100 is not set | ||
83 | # CONFIG_ARCH_S3C2410 is not set | ||
84 | # CONFIG_ARCH_SHARK is not set | ||
85 | # CONFIG_ARCH_LH7A40X is not set | ||
86 | # CONFIG_ARCH_OMAP is not set | ||
87 | # CONFIG_ARCH_VERSATILE is not set | ||
88 | # CONFIG_ARCH_IMX is not set | ||
89 | # CONFIG_ARCH_H720X is not set | ||
90 | # CONFIG_ARCH_AAEC2000 is not set | ||
91 | |||
92 | # | ||
93 | # Intel PXA2xx Implementations | ||
94 | # | ||
95 | # CONFIG_ARCH_LUBBOCK is not set | ||
96 | # CONFIG_MACH_MAINSTONE is not set | ||
97 | # CONFIG_ARCH_PXA_IDP is not set | ||
98 | CONFIG_PXA_SHARPSL=y | ||
99 | # CONFIG_PXA_SHARPSL_25x is not set | ||
100 | CONFIG_PXA_SHARPSL_27x=y | ||
101 | CONFIG_MACH_SPITZ=y | ||
102 | CONFIG_MACH_BORZOI=y | ||
103 | CONFIG_PXA27x=y | ||
104 | CONFIG_PXA_SHARP_Cxx00=y | ||
105 | |||
106 | # | ||
107 | # Processor Type | ||
108 | # | ||
109 | CONFIG_CPU_32=y | ||
110 | CONFIG_CPU_XSCALE=y | ||
111 | CONFIG_CPU_32v5=y | ||
112 | CONFIG_CPU_ABRT_EV5T=y | ||
113 | CONFIG_CPU_CACHE_VIVT=y | ||
114 | CONFIG_CPU_TLB_V4WBI=y | ||
115 | |||
116 | # | ||
117 | # Processor Features | ||
118 | # | ||
119 | CONFIG_ARM_THUMB=y | ||
120 | CONFIG_XSCALE_PMU=y | ||
121 | CONFIG_SHARP_PARAM=y | ||
122 | CONFIG_SHARP_SCOOP=y | ||
123 | |||
124 | # | ||
125 | # Bus support | ||
126 | # | ||
127 | CONFIG_ISA_DMA_API=y | ||
128 | |||
129 | # | ||
130 | # PCCARD (PCMCIA/CardBus) support | ||
131 | # | ||
132 | CONFIG_PCCARD=y | ||
133 | # CONFIG_PCMCIA_DEBUG is not set | ||
134 | CONFIG_PCMCIA=y | ||
135 | CONFIG_PCMCIA_LOAD_CIS=y | ||
136 | CONFIG_PCMCIA_IOCTL=y | ||
137 | |||
138 | # | ||
139 | # PC-card bridges | ||
140 | # | ||
141 | CONFIG_PCMCIA_PXA2XX=y | ||
142 | |||
143 | # | ||
144 | # Kernel Features | ||
145 | # | ||
146 | CONFIG_PREEMPT=y | ||
147 | # CONFIG_NO_IDLE_HZ is not set | ||
148 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | ||
149 | CONFIG_SELECT_MEMORY_MODEL=y | ||
150 | CONFIG_FLATMEM_MANUAL=y | ||
151 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
152 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
153 | CONFIG_FLATMEM=y | ||
154 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
155 | # CONFIG_SPARSEMEM_STATIC is not set | ||
156 | CONFIG_ALIGNMENT_TRAP=y | ||
157 | |||
158 | # | ||
159 | # Boot options | ||
160 | # | ||
161 | CONFIG_ZBOOT_ROM_TEXT=0x0 | ||
162 | CONFIG_ZBOOT_ROM_BSS=0x0 | ||
163 | CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 debug" | ||
164 | # CONFIG_XIP_KERNEL is not set | ||
165 | |||
166 | # | ||
167 | # Floating point emulation | ||
168 | # | ||
169 | |||
170 | # | ||
171 | # At least one emulation must be selected | ||
172 | # | ||
173 | CONFIG_FPE_NWFPE=y | ||
174 | # CONFIG_FPE_NWFPE_XP is not set | ||
175 | # CONFIG_FPE_FASTFPE is not set | ||
176 | |||
177 | # | ||
178 | # Userspace binary formats | ||
179 | # | ||
180 | CONFIG_BINFMT_ELF=y | ||
181 | CONFIG_BINFMT_AOUT=m | ||
182 | CONFIG_BINFMT_MISC=m | ||
183 | # CONFIG_ARTHUR is not set | ||
184 | |||
185 | # | ||
186 | # Power management options | ||
187 | # | ||
188 | CONFIG_PM=y | ||
189 | CONFIG_APM=y | ||
190 | |||
191 | # | ||
192 | # Networking | ||
193 | # | ||
194 | CONFIG_NET=y | ||
195 | |||
196 | # | ||
197 | # Networking options | ||
198 | # | ||
199 | CONFIG_PACKET=y | ||
200 | CONFIG_PACKET_MMAP=y | ||
201 | CONFIG_UNIX=y | ||
202 | CONFIG_XFRM=y | ||
203 | # CONFIG_XFRM_USER is not set | ||
204 | # CONFIG_NET_KEY is not set | ||
205 | CONFIG_INET=y | ||
206 | # CONFIG_IP_MULTICAST is not set | ||
207 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
208 | CONFIG_IP_FIB_HASH=y | ||
209 | # CONFIG_IP_PNP is not set | ||
210 | # CONFIG_NET_IPIP is not set | ||
211 | # CONFIG_NET_IPGRE is not set | ||
212 | # CONFIG_ARPD is not set | ||
213 | CONFIG_SYN_COOKIES=y | ||
214 | # CONFIG_INET_AH is not set | ||
215 | # CONFIG_INET_ESP is not set | ||
216 | # CONFIG_INET_IPCOMP is not set | ||
217 | # CONFIG_INET_TUNNEL is not set | ||
218 | CONFIG_INET_DIAG=y | ||
219 | CONFIG_INET_TCP_DIAG=y | ||
220 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
221 | CONFIG_TCP_CONG_BIC=y | ||
222 | |||
223 | # | ||
224 | # IP: Virtual Server Configuration | ||
225 | # | ||
226 | # CONFIG_IP_VS is not set | ||
227 | CONFIG_IPV6=m | ||
228 | # CONFIG_IPV6_PRIVACY is not set | ||
229 | CONFIG_INET6_AH=m | ||
230 | CONFIG_INET6_ESP=m | ||
231 | CONFIG_INET6_IPCOMP=m | ||
232 | CONFIG_INET6_TUNNEL=m | ||
233 | CONFIG_IPV6_TUNNEL=m | ||
234 | CONFIG_NETFILTER=y | ||
235 | # CONFIG_NETFILTER_DEBUG is not set | ||
236 | # CONFIG_NETFILTER_NETLINK is not set | ||
237 | |||
238 | # | ||
239 | # IP: Netfilter Configuration | ||
240 | # | ||
241 | CONFIG_IP_NF_CONNTRACK=m | ||
242 | # CONFIG_IP_NF_CT_ACCT is not set | ||
243 | # CONFIG_IP_NF_CONNTRACK_MARK is not set | ||
244 | # CONFIG_IP_NF_CONNTRACK_EVENTS is not set | ||
245 | CONFIG_IP_NF_CT_PROTO_SCTP=m | ||
246 | CONFIG_IP_NF_FTP=m | ||
247 | CONFIG_IP_NF_IRC=m | ||
248 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
249 | CONFIG_IP_NF_TFTP=m | ||
250 | CONFIG_IP_NF_AMANDA=m | ||
251 | # CONFIG_IP_NF_PPTP is not set | ||
252 | CONFIG_IP_NF_QUEUE=m | ||
253 | CONFIG_IP_NF_IPTABLES=m | ||
254 | CONFIG_IP_NF_MATCH_LIMIT=m | ||
255 | CONFIG_IP_NF_MATCH_IPRANGE=m | ||
256 | CONFIG_IP_NF_MATCH_MAC=m | ||
257 | CONFIG_IP_NF_MATCH_PKTTYPE=m | ||
258 | CONFIG_IP_NF_MATCH_MARK=m | ||
259 | CONFIG_IP_NF_MATCH_MULTIPORT=m | ||
260 | CONFIG_IP_NF_MATCH_TOS=m | ||
261 | CONFIG_IP_NF_MATCH_RECENT=m | ||
262 | CONFIG_IP_NF_MATCH_ECN=m | ||
263 | CONFIG_IP_NF_MATCH_DSCP=m | ||
264 | CONFIG_IP_NF_MATCH_AH_ESP=m | ||
265 | CONFIG_IP_NF_MATCH_LENGTH=m | ||
266 | CONFIG_IP_NF_MATCH_TTL=m | ||
267 | CONFIG_IP_NF_MATCH_TCPMSS=m | ||
268 | CONFIG_IP_NF_MATCH_HELPER=m | ||
269 | CONFIG_IP_NF_MATCH_STATE=m | ||
270 | CONFIG_IP_NF_MATCH_CONNTRACK=m | ||
271 | CONFIG_IP_NF_MATCH_OWNER=m | ||
272 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | ||
273 | CONFIG_IP_NF_MATCH_REALM=m | ||
274 | CONFIG_IP_NF_MATCH_SCTP=m | ||
275 | # CONFIG_IP_NF_MATCH_DCCP is not set | ||
276 | CONFIG_IP_NF_MATCH_COMMENT=m | ||
277 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | ||
278 | # CONFIG_IP_NF_MATCH_STRING is not set | ||
279 | CONFIG_IP_NF_FILTER=m | ||
280 | # CONFIG_IP_NF_TARGET_REJECT is not set | ||
281 | CONFIG_IP_NF_TARGET_LOG=m | ||
282 | CONFIG_IP_NF_TARGET_ULOG=m | ||
283 | CONFIG_IP_NF_TARGET_TCPMSS=m | ||
284 | # CONFIG_IP_NF_TARGET_NFQUEUE is not set | ||
285 | CONFIG_IP_NF_NAT=m | ||
286 | CONFIG_IP_NF_NAT_NEEDED=y | ||
287 | # CONFIG_IP_NF_TARGET_MASQUERADE is not set | ||
288 | # CONFIG_IP_NF_TARGET_REDIRECT is not set | ||
289 | # CONFIG_IP_NF_TARGET_NETMAP is not set | ||
290 | # CONFIG_IP_NF_TARGET_SAME is not set | ||
291 | # CONFIG_IP_NF_NAT_SNMP_BASIC is not set | ||
292 | CONFIG_IP_NF_NAT_IRC=m | ||
293 | CONFIG_IP_NF_NAT_FTP=m | ||
294 | CONFIG_IP_NF_NAT_TFTP=m | ||
295 | CONFIG_IP_NF_NAT_AMANDA=m | ||
296 | CONFIG_IP_NF_MANGLE=m | ||
297 | # CONFIG_IP_NF_TARGET_TOS is not set | ||
298 | # CONFIG_IP_NF_TARGET_ECN is not set | ||
299 | # CONFIG_IP_NF_TARGET_DSCP is not set | ||
300 | # CONFIG_IP_NF_TARGET_MARK is not set | ||
301 | # CONFIG_IP_NF_TARGET_CLASSIFY is not set | ||
302 | # CONFIG_IP_NF_TARGET_TTL is not set | ||
303 | CONFIG_IP_NF_RAW=m | ||
304 | # CONFIG_IP_NF_TARGET_NOTRACK is not set | ||
305 | CONFIG_IP_NF_ARPTABLES=m | ||
306 | CONFIG_IP_NF_ARPFILTER=m | ||
307 | CONFIG_IP_NF_ARP_MANGLE=m | ||
308 | |||
309 | # | ||
310 | # IPv6: Netfilter Configuration (EXPERIMENTAL) | ||
311 | # | ||
312 | CONFIG_IP6_NF_QUEUE=m | ||
313 | CONFIG_IP6_NF_IPTABLES=m | ||
314 | CONFIG_IP6_NF_MATCH_LIMIT=m | ||
315 | CONFIG_IP6_NF_MATCH_MAC=m | ||
316 | CONFIG_IP6_NF_MATCH_RT=m | ||
317 | CONFIG_IP6_NF_MATCH_OPTS=m | ||
318 | CONFIG_IP6_NF_MATCH_FRAG=m | ||
319 | CONFIG_IP6_NF_MATCH_HL=m | ||
320 | CONFIG_IP6_NF_MATCH_MULTIPORT=m | ||
321 | CONFIG_IP6_NF_MATCH_OWNER=m | ||
322 | CONFIG_IP6_NF_MATCH_MARK=m | ||
323 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m | ||
324 | CONFIG_IP6_NF_MATCH_AHESP=m | ||
325 | CONFIG_IP6_NF_MATCH_LENGTH=m | ||
326 | CONFIG_IP6_NF_MATCH_EUI64=m | ||
327 | CONFIG_IP6_NF_FILTER=m | ||
328 | # CONFIG_IP6_NF_TARGET_LOG is not set | ||
329 | # CONFIG_IP6_NF_TARGET_REJECT is not set | ||
330 | # CONFIG_IP6_NF_TARGET_NFQUEUE is not set | ||
331 | CONFIG_IP6_NF_MANGLE=m | ||
332 | # CONFIG_IP6_NF_TARGET_MARK is not set | ||
333 | # CONFIG_IP6_NF_TARGET_HL is not set | ||
334 | CONFIG_IP6_NF_RAW=m | ||
335 | |||
336 | # | ||
337 | # DCCP Configuration (EXPERIMENTAL) | ||
338 | # | ||
339 | # CONFIG_IP_DCCP is not set | ||
340 | |||
341 | # | ||
342 | # SCTP Configuration (EXPERIMENTAL) | ||
343 | # | ||
344 | # CONFIG_IP_SCTP is not set | ||
345 | # CONFIG_ATM is not set | ||
346 | # CONFIG_BRIDGE is not set | ||
347 | # CONFIG_VLAN_8021Q is not set | ||
348 | # CONFIG_DECNET is not set | ||
349 | # CONFIG_LLC2 is not set | ||
350 | # CONFIG_IPX is not set | ||
351 | # CONFIG_ATALK is not set | ||
352 | # CONFIG_X25 is not set | ||
353 | # CONFIG_LAPB is not set | ||
354 | # CONFIG_NET_DIVERT is not set | ||
355 | # CONFIG_ECONET is not set | ||
356 | # CONFIG_WAN_ROUTER is not set | ||
357 | # CONFIG_NET_SCHED is not set | ||
358 | CONFIG_NET_CLS_ROUTE=y | ||
359 | |||
360 | # | ||
361 | # Network testing | ||
362 | # | ||
363 | # CONFIG_NET_PKTGEN is not set | ||
364 | # CONFIG_HAMRADIO is not set | ||
365 | CONFIG_IRDA=m | ||
366 | |||
367 | # | ||
368 | # IrDA protocols | ||
369 | # | ||
370 | CONFIG_IRLAN=m | ||
371 | CONFIG_IRNET=m | ||
372 | CONFIG_IRCOMM=m | ||
373 | # CONFIG_IRDA_ULTRA is not set | ||
374 | |||
375 | # | ||
376 | # IrDA options | ||
377 | # | ||
378 | # CONFIG_IRDA_CACHE_LAST_LSAP is not set | ||
379 | # CONFIG_IRDA_FAST_RR is not set | ||
380 | # CONFIG_IRDA_DEBUG is not set | ||
381 | |||
382 | # | ||
383 | # Infrared-port device drivers | ||
384 | # | ||
385 | |||
386 | # | ||
387 | # SIR device drivers | ||
388 | # | ||
389 | # CONFIG_IRTTY_SIR is not set | ||
390 | |||
391 | # | ||
392 | # Dongle support | ||
393 | # | ||
394 | |||
395 | # | ||
396 | # Old SIR device drivers | ||
397 | # | ||
398 | # CONFIG_IRPORT_SIR is not set | ||
399 | |||
400 | # | ||
401 | # Old Serial dongle support | ||
402 | # | ||
403 | |||
404 | # | ||
405 | # FIR device drivers | ||
406 | # | ||
407 | # CONFIG_USB_IRDA is not set | ||
408 | # CONFIG_SIGMATEL_FIR is not set | ||
409 | # CONFIG_NSC_FIR is not set | ||
410 | # CONFIG_WINBOND_FIR is not set | ||
411 | # CONFIG_SMC_IRCC_FIR is not set | ||
412 | # CONFIG_ALI_FIR is not set | ||
413 | # CONFIG_VIA_FIR is not set | ||
414 | CONFIG_BT=m | ||
415 | CONFIG_BT_L2CAP=m | ||
416 | CONFIG_BT_SCO=m | ||
417 | CONFIG_BT_RFCOMM=m | ||
418 | CONFIG_BT_RFCOMM_TTY=y | ||
419 | CONFIG_BT_BNEP=m | ||
420 | CONFIG_BT_BNEP_MC_FILTER=y | ||
421 | CONFIG_BT_BNEP_PROTO_FILTER=y | ||
422 | CONFIG_BT_HIDP=m | ||
423 | |||
424 | # | ||
425 | # Bluetooth device drivers | ||
426 | # | ||
427 | CONFIG_BT_HCIUSB=m | ||
428 | # CONFIG_BT_HCIUSB_SCO is not set | ||
429 | CONFIG_BT_HCIUART=m | ||
430 | CONFIG_BT_HCIUART_H4=y | ||
431 | CONFIG_BT_HCIUART_BCSP=y | ||
432 | CONFIG_BT_HCIUART_BCSP_TXCRC=y | ||
433 | CONFIG_BT_HCIBCM203X=m | ||
434 | CONFIG_BT_HCIBPA10X=m | ||
435 | CONFIG_BT_HCIBFUSB=m | ||
436 | CONFIG_BT_HCIDTL1=m | ||
437 | CONFIG_BT_HCIBT3C=m | ||
438 | CONFIG_BT_HCIBLUECARD=m | ||
439 | CONFIG_BT_HCIBTUART=m | ||
440 | CONFIG_BT_HCIVHCI=m | ||
441 | CONFIG_IEEE80211=m | ||
442 | # CONFIG_IEEE80211_DEBUG is not set | ||
443 | CONFIG_IEEE80211_CRYPT_WEP=m | ||
444 | # CONFIG_IEEE80211_CRYPT_CCMP is not set | ||
445 | # CONFIG_IEEE80211_CRYPT_TKIP is not set | ||
446 | |||
447 | # | ||
448 | # Device Drivers | ||
449 | # | ||
450 | |||
451 | # | ||
452 | # Generic Driver Options | ||
453 | # | ||
454 | CONFIG_STANDALONE=y | ||
455 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
456 | CONFIG_FW_LOADER=y | ||
457 | # CONFIG_DEBUG_DRIVER is not set | ||
458 | |||
459 | # | ||
460 | # Memory Technology Devices (MTD) | ||
461 | # | ||
462 | CONFIG_MTD=y | ||
463 | # CONFIG_MTD_DEBUG is not set | ||
464 | # CONFIG_MTD_CONCAT is not set | ||
465 | CONFIG_MTD_PARTITIONS=y | ||
466 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
467 | CONFIG_MTD_CMDLINE_PARTS=y | ||
468 | # CONFIG_MTD_AFS_PARTS is not set | ||
469 | |||
470 | # | ||
471 | # User Modules And Translation Layers | ||
472 | # | ||
473 | CONFIG_MTD_CHAR=y | ||
474 | CONFIG_MTD_BLOCK=y | ||
475 | # CONFIG_FTL is not set | ||
476 | # CONFIG_NFTL is not set | ||
477 | # CONFIG_INFTL is not set | ||
478 | |||
479 | # | ||
480 | # RAM/ROM/Flash chip drivers | ||
481 | # | ||
482 | # CONFIG_MTD_CFI is not set | ||
483 | # CONFIG_MTD_JEDECPROBE is not set | ||
484 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
485 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
486 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
487 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
488 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
489 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
490 | CONFIG_MTD_CFI_I1=y | ||
491 | CONFIG_MTD_CFI_I2=y | ||
492 | # CONFIG_MTD_CFI_I4 is not set | ||
493 | # CONFIG_MTD_CFI_I8 is not set | ||
494 | # CONFIG_MTD_RAM is not set | ||
495 | CONFIG_MTD_ROM=y | ||
496 | # CONFIG_MTD_ABSENT is not set | ||
497 | |||
498 | # | ||
499 | # Mapping drivers for chip access | ||
500 | # | ||
501 | CONFIG_MTD_COMPLEX_MAPPINGS=y | ||
502 | CONFIG_MTD_SHARP_SL=y | ||
503 | # CONFIG_MTD_PLATRAM is not set | ||
504 | |||
505 | # | ||
506 | # Self-contained MTD device drivers | ||
507 | # | ||
508 | # CONFIG_MTD_SLRAM is not set | ||
509 | # CONFIG_MTD_PHRAM is not set | ||
510 | # CONFIG_MTD_MTDRAM is not set | ||
511 | # CONFIG_MTD_BLKMTD is not set | ||
512 | # CONFIG_MTD_BLOCK2MTD is not set | ||
513 | |||
514 | # | ||
515 | # Disk-On-Chip Device Drivers | ||
516 | # | ||
517 | # CONFIG_MTD_DOC2000 is not set | ||
518 | # CONFIG_MTD_DOC2001 is not set | ||
519 | # CONFIG_MTD_DOC2001PLUS is not set | ||
520 | |||
521 | # | ||
522 | # NAND Flash Device Drivers | ||
523 | # | ||
524 | CONFIG_MTD_NAND=y | ||
525 | CONFIG_MTD_NAND_VERIFY_WRITE=y | ||
526 | # CONFIG_MTD_NAND_H1900 is not set | ||
527 | CONFIG_MTD_NAND_IDS=y | ||
528 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
529 | CONFIG_MTD_NAND_SHARPSL=y | ||
530 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
531 | |||
532 | # | ||
533 | # Parallel port support | ||
534 | # | ||
535 | # CONFIG_PARPORT is not set | ||
536 | |||
537 | # | ||
538 | # Plug and Play support | ||
539 | # | ||
540 | |||
541 | # | ||
542 | # Block devices | ||
543 | # | ||
544 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
545 | CONFIG_BLK_DEV_LOOP=y | ||
546 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
547 | # CONFIG_BLK_DEV_NBD is not set | ||
548 | # CONFIG_BLK_DEV_UB is not set | ||
549 | # CONFIG_BLK_DEV_RAM is not set | ||
550 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
551 | # CONFIG_CDROM_PKTCDVD is not set | ||
552 | |||
553 | # | ||
554 | # IO Schedulers | ||
555 | # | ||
556 | CONFIG_IOSCHED_NOOP=y | ||
557 | CONFIG_IOSCHED_AS=y | ||
558 | CONFIG_IOSCHED_DEADLINE=y | ||
559 | CONFIG_IOSCHED_CFQ=y | ||
560 | # CONFIG_ATA_OVER_ETH is not set | ||
561 | |||
562 | # | ||
563 | # ATA/ATAPI/MFM/RLL support | ||
564 | # | ||
565 | CONFIG_IDE=y | ||
566 | CONFIG_BLK_DEV_IDE=y | ||
567 | |||
568 | # | ||
569 | # Please see Documentation/ide.txt for help/info on IDE drives | ||
570 | # | ||
571 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
572 | CONFIG_BLK_DEV_IDEDISK=y | ||
573 | # CONFIG_IDEDISK_MULTI_MODE is not set | ||
574 | CONFIG_BLK_DEV_IDECS=y | ||
575 | # CONFIG_BLK_DEV_IDECD is not set | ||
576 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
577 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
578 | # CONFIG_BLK_DEV_IDESCSI is not set | ||
579 | # CONFIG_IDE_TASK_IOCTL is not set | ||
580 | |||
581 | # | ||
582 | # IDE chipset support/bugfixes | ||
583 | # | ||
584 | CONFIG_IDE_GENERIC=y | ||
585 | # CONFIG_IDE_ARM is not set | ||
586 | # CONFIG_BLK_DEV_IDEDMA is not set | ||
587 | # CONFIG_IDEDMA_AUTO is not set | ||
588 | # CONFIG_BLK_DEV_HD is not set | ||
589 | |||
590 | # | ||
591 | # SCSI device support | ||
592 | # | ||
593 | # CONFIG_RAID_ATTRS is not set | ||
594 | CONFIG_SCSI=m | ||
595 | CONFIG_SCSI_PROC_FS=y | ||
596 | |||
597 | # | ||
598 | # SCSI support type (disk, tape, CD-ROM) | ||
599 | # | ||
600 | CONFIG_BLK_DEV_SD=m | ||
601 | CONFIG_CHR_DEV_ST=m | ||
602 | CONFIG_CHR_DEV_OSST=m | ||
603 | CONFIG_BLK_DEV_SR=m | ||
604 | # CONFIG_BLK_DEV_SR_VENDOR is not set | ||
605 | CONFIG_CHR_DEV_SG=m | ||
606 | # CONFIG_CHR_DEV_SCH is not set | ||
607 | |||
608 | # | ||
609 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
610 | # | ||
611 | CONFIG_SCSI_MULTI_LUN=y | ||
612 | # CONFIG_SCSI_CONSTANTS is not set | ||
613 | # CONFIG_SCSI_LOGGING is not set | ||
614 | |||
615 | # | ||
616 | # SCSI Transport Attributes | ||
617 | # | ||
618 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
619 | # CONFIG_SCSI_FC_ATTRS is not set | ||
620 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
621 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
622 | |||
623 | # | ||
624 | # SCSI low-level drivers | ||
625 | # | ||
626 | # CONFIG_SCSI_SATA is not set | ||
627 | # CONFIG_SCSI_DEBUG is not set | ||
628 | |||
629 | # | ||
630 | # PCMCIA SCSI adapter support | ||
631 | # | ||
632 | # CONFIG_PCMCIA_AHA152X is not set | ||
633 | # CONFIG_PCMCIA_FDOMAIN is not set | ||
634 | # CONFIG_PCMCIA_NINJA_SCSI is not set | ||
635 | # CONFIG_PCMCIA_QLOGIC is not set | ||
636 | # CONFIG_PCMCIA_SYM53C500 is not set | ||
637 | |||
638 | # | ||
639 | # Multi-device support (RAID and LVM) | ||
640 | # | ||
641 | # CONFIG_MD is not set | ||
642 | |||
643 | # | ||
644 | # Fusion MPT device support | ||
645 | # | ||
646 | # CONFIG_FUSION is not set | ||
647 | |||
648 | # | ||
649 | # IEEE 1394 (FireWire) support | ||
650 | # | ||
651 | |||
652 | # | ||
653 | # I2O device support | ||
654 | # | ||
655 | |||
656 | # | ||
657 | # Network device support | ||
658 | # | ||
659 | CONFIG_NETDEVICES=y | ||
660 | # CONFIG_DUMMY is not set | ||
661 | # CONFIG_BONDING is not set | ||
662 | # CONFIG_EQUALIZER is not set | ||
663 | # CONFIG_TUN is not set | ||
664 | |||
665 | # | ||
666 | # PHY device support | ||
667 | # | ||
668 | # CONFIG_PHYLIB is not set | ||
669 | |||
670 | # | ||
671 | # Ethernet (10 or 100Mbit) | ||
672 | # | ||
673 | CONFIG_NET_ETHERNET=y | ||
674 | CONFIG_MII=m | ||
675 | # CONFIG_SMC91X is not set | ||
676 | # CONFIG_DM9000 is not set | ||
677 | |||
678 | # | ||
679 | # Ethernet (1000 Mbit) | ||
680 | # | ||
681 | |||
682 | # | ||
683 | # Ethernet (10000 Mbit) | ||
684 | # | ||
685 | |||
686 | # | ||
687 | # Token Ring devices | ||
688 | # | ||
689 | |||
690 | # | ||
691 | # Wireless LAN (non-hamradio) | ||
692 | # | ||
693 | CONFIG_NET_RADIO=y | ||
694 | |||
695 | # | ||
696 | # Obsolete Wireless cards support (pre-802.11) | ||
697 | # | ||
698 | # CONFIG_STRIP is not set | ||
699 | # CONFIG_PCMCIA_WAVELAN is not set | ||
700 | # CONFIG_PCMCIA_NETWAVE is not set | ||
701 | |||
702 | # | ||
703 | # Wireless 802.11 Frequency Hopping cards support | ||
704 | # | ||
705 | # CONFIG_PCMCIA_RAYCS is not set | ||
706 | |||
707 | # | ||
708 | # Wireless 802.11b ISA/PCI cards support | ||
709 | # | ||
710 | CONFIG_HERMES=m | ||
711 | # CONFIG_ATMEL is not set | ||
712 | |||
713 | # | ||
714 | # Wireless 802.11b Pcmcia/Cardbus cards support | ||
715 | # | ||
716 | CONFIG_PCMCIA_HERMES=m | ||
717 | CONFIG_PCMCIA_SPECTRUM=m | ||
718 | # CONFIG_AIRO_CS is not set | ||
719 | # CONFIG_PCMCIA_WL3501 is not set | ||
720 | CONFIG_HOSTAP=m | ||
721 | CONFIG_HOSTAP_FIRMWARE=y | ||
722 | CONFIG_HOSTAP_CS=m | ||
723 | CONFIG_NET_WIRELESS=y | ||
724 | |||
725 | # | ||
726 | # PCMCIA network device support | ||
727 | # | ||
728 | CONFIG_NET_PCMCIA=y | ||
729 | # CONFIG_PCMCIA_3C589 is not set | ||
730 | # CONFIG_PCMCIA_3C574 is not set | ||
731 | # CONFIG_PCMCIA_FMVJ18X is not set | ||
732 | CONFIG_PCMCIA_PCNET=m | ||
733 | # CONFIG_PCMCIA_NMCLAN is not set | ||
734 | # CONFIG_PCMCIA_SMC91C92 is not set | ||
735 | # CONFIG_PCMCIA_XIRC2PS is not set | ||
736 | # CONFIG_PCMCIA_AXNET is not set | ||
737 | |||
738 | # | ||
739 | # Wan interfaces | ||
740 | # | ||
741 | # CONFIG_WAN is not set | ||
742 | CONFIG_PPP=m | ||
743 | # CONFIG_PPP_MULTILINK is not set | ||
744 | # CONFIG_PPP_FILTER is not set | ||
745 | CONFIG_PPP_ASYNC=m | ||
746 | # CONFIG_PPP_SYNC_TTY is not set | ||
747 | # CONFIG_PPP_DEFLATE is not set | ||
748 | CONFIG_PPP_BSDCOMP=m | ||
749 | # CONFIG_PPPOE is not set | ||
750 | # CONFIG_SLIP is not set | ||
751 | # CONFIG_SHAPER is not set | ||
752 | # CONFIG_NETCONSOLE is not set | ||
753 | # CONFIG_NETPOLL is not set | ||
754 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
755 | |||
756 | # | ||
757 | # ISDN subsystem | ||
758 | # | ||
759 | # CONFIG_ISDN is not set | ||
760 | |||
761 | # | ||
762 | # Input device support | ||
763 | # | ||
764 | CONFIG_INPUT=y | ||
765 | |||
766 | # | ||
767 | # Userland interfaces | ||
768 | # | ||
769 | # CONFIG_INPUT_MOUSEDEV is not set | ||
770 | # CONFIG_INPUT_JOYDEV is not set | ||
771 | # CONFIG_INPUT_TSDEV is not set | ||
772 | CONFIG_INPUT_EVDEV=y | ||
773 | # CONFIG_INPUT_EVBUG is not set | ||
774 | |||
775 | # | ||
776 | # Input Device Drivers | ||
777 | # | ||
778 | CONFIG_INPUT_KEYBOARD=y | ||
779 | # CONFIG_KEYBOARD_ATKBD is not set | ||
780 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
781 | # CONFIG_KEYBOARD_LKKBD is not set | ||
782 | # CONFIG_KEYBOARD_XTKBD is not set | ||
783 | # CONFIG_KEYBOARD_NEWTON is not set | ||
784 | # CONFIG_KEYBOARD_CORGI is not set | ||
785 | CONFIG_KEYBOARD_SPITZ=y | ||
786 | # CONFIG_INPUT_MOUSE is not set | ||
787 | # CONFIG_INPUT_JOYSTICK is not set | ||
788 | CONFIG_INPUT_TOUCHSCREEN=y | ||
789 | CONFIG_TOUCHSCREEN_CORGI=y | ||
790 | # CONFIG_TOUCHSCREEN_GUNZE is not set | ||
791 | # CONFIG_TOUCHSCREEN_ELO is not set | ||
792 | # CONFIG_TOUCHSCREEN_MTOUCH is not set | ||
793 | # CONFIG_TOUCHSCREEN_MK712 is not set | ||
794 | CONFIG_INPUT_MISC=y | ||
795 | CONFIG_INPUT_UINPUT=m | ||
796 | |||
797 | # | ||
798 | # Hardware I/O ports | ||
799 | # | ||
800 | # CONFIG_SERIO is not set | ||
801 | # CONFIG_GAMEPORT is not set | ||
802 | |||
803 | # | ||
804 | # Character devices | ||
805 | # | ||
806 | CONFIG_VT=y | ||
807 | CONFIG_VT_CONSOLE=y | ||
808 | CONFIG_HW_CONSOLE=y | ||
809 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
810 | |||
811 | # | ||
812 | # Serial drivers | ||
813 | # | ||
814 | CONFIG_SERIAL_8250=m | ||
815 | CONFIG_SERIAL_8250_CS=m | ||
816 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
817 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
818 | |||
819 | # | ||
820 | # Non-8250 serial port support | ||
821 | # | ||
822 | CONFIG_SERIAL_PXA=y | ||
823 | CONFIG_SERIAL_PXA_CONSOLE=y | ||
824 | CONFIG_SERIAL_CORE=y | ||
825 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
826 | CONFIG_UNIX98_PTYS=y | ||
827 | # CONFIG_LEGACY_PTYS is not set | ||
828 | |||
829 | # | ||
830 | # IPMI | ||
831 | # | ||
832 | # CONFIG_IPMI_HANDLER is not set | ||
833 | |||
834 | # | ||
835 | # Watchdog Cards | ||
836 | # | ||
837 | # CONFIG_WATCHDOG is not set | ||
838 | # CONFIG_NVRAM is not set | ||
839 | # CONFIG_RTC is not set | ||
840 | # CONFIG_DTLK is not set | ||
841 | # CONFIG_R3964 is not set | ||
842 | |||
843 | # | ||
844 | # Ftape, the floppy tape device driver | ||
845 | # | ||
846 | |||
847 | # | ||
848 | # PCMCIA character devices | ||
849 | # | ||
850 | # CONFIG_SYNCLINK_CS is not set | ||
851 | # CONFIG_RAW_DRIVER is not set | ||
852 | |||
853 | # | ||
854 | # TPM devices | ||
855 | # | ||
856 | |||
857 | # | ||
858 | # I2C support | ||
859 | # | ||
860 | # CONFIG_I2C is not set | ||
861 | |||
862 | # | ||
863 | # Hardware Monitoring support | ||
864 | # | ||
865 | CONFIG_HWMON=y | ||
866 | # CONFIG_HWMON_VID is not set | ||
867 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
868 | |||
869 | # | ||
870 | # Misc devices | ||
871 | # | ||
872 | |||
873 | # | ||
874 | # Multimedia Capabilities Port drivers | ||
875 | # | ||
876 | |||
877 | # | ||
878 | # Multimedia devices | ||
879 | # | ||
880 | # CONFIG_VIDEO_DEV is not set | ||
881 | |||
882 | # | ||
883 | # Digital Video Broadcasting Devices | ||
884 | # | ||
885 | # CONFIG_DVB is not set | ||
886 | |||
887 | # | ||
888 | # Graphics support | ||
889 | # | ||
890 | CONFIG_FB=y | ||
891 | CONFIG_FB_CFB_FILLRECT=y | ||
892 | CONFIG_FB_CFB_COPYAREA=y | ||
893 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
894 | CONFIG_FB_SOFT_CURSOR=y | ||
895 | # CONFIG_FB_MACMODES is not set | ||
896 | # CONFIG_FB_MODE_HELPERS is not set | ||
897 | # CONFIG_FB_TILEBLITTING is not set | ||
898 | CONFIG_FB_PXA=y | ||
899 | # CONFIG_FB_W100 is not set | ||
900 | # CONFIG_FB_PXA_PARAMETERS is not set | ||
901 | # CONFIG_FB_S1D13XXX is not set | ||
902 | # CONFIG_FB_VIRTUAL is not set | ||
903 | |||
904 | # | ||
905 | # Console display driver support | ||
906 | # | ||
907 | # CONFIG_VGA_CONSOLE is not set | ||
908 | CONFIG_DUMMY_CONSOLE=y | ||
909 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
910 | CONFIG_FONTS=y | ||
911 | CONFIG_FONT_8x8=y | ||
912 | CONFIG_FONT_8x16=y | ||
913 | # CONFIG_FONT_6x11 is not set | ||
914 | # CONFIG_FONT_7x14 is not set | ||
915 | # CONFIG_FONT_PEARL_8x8 is not set | ||
916 | # CONFIG_FONT_ACORN_8x8 is not set | ||
917 | # CONFIG_FONT_MINI_4x6 is not set | ||
918 | # CONFIG_FONT_SUN8x16 is not set | ||
919 | # CONFIG_FONT_SUN12x22 is not set | ||
920 | # CONFIG_FONT_10x18 is not set | ||
921 | |||
922 | # | ||
923 | # Logo configuration | ||
924 | # | ||
925 | # CONFIG_LOGO is not set | ||
926 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||
927 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
928 | CONFIG_BACKLIGHT_DEVICE=y | ||
929 | CONFIG_LCD_CLASS_DEVICE=y | ||
930 | CONFIG_LCD_DEVICE=y | ||
931 | CONFIG_BACKLIGHT_CORGI=y | ||
932 | |||
933 | # | ||
934 | # Sound | ||
935 | # | ||
936 | # CONFIG_SOUND is not set | ||
937 | |||
938 | # | ||
939 | # USB support | ||
940 | # | ||
941 | CONFIG_USB_ARCH_HAS_HCD=y | ||
942 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
943 | CONFIG_USB=m | ||
944 | # CONFIG_USB_DEBUG is not set | ||
945 | |||
946 | # | ||
947 | # Miscellaneous USB options | ||
948 | # | ||
949 | CONFIG_USB_DEVICEFS=y | ||
950 | # CONFIG_USB_BANDWIDTH is not set | ||
951 | # CONFIG_USB_DYNAMIC_MINORS is not set | ||
952 | # CONFIG_USB_SUSPEND is not set | ||
953 | # CONFIG_USB_OTG is not set | ||
954 | |||
955 | # | ||
956 | # USB Host Controller Drivers | ||
957 | # | ||
958 | # CONFIG_USB_ISP116X_HCD is not set | ||
959 | CONFIG_USB_OHCI_HCD=m | ||
960 | # CONFIG_USB_OHCI_BIG_ENDIAN is not set | ||
961 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
962 | CONFIG_USB_SL811_HCD=m | ||
963 | CONFIG_USB_SL811_CS=m | ||
964 | |||
965 | # | ||
966 | # USB Device Class drivers | ||
967 | # | ||
968 | |||
969 | # | ||
970 | # USB Bluetooth TTY can only be used with disabled Bluetooth subsystem | ||
971 | # | ||
972 | CONFIG_USB_ACM=m | ||
973 | CONFIG_USB_PRINTER=m | ||
974 | |||
975 | # | ||
976 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | ||
977 | # | ||
978 | CONFIG_USB_STORAGE=m | ||
979 | # CONFIG_USB_STORAGE_DEBUG is not set | ||
980 | # CONFIG_USB_STORAGE_DATAFAB is not set | ||
981 | # CONFIG_USB_STORAGE_FREECOM is not set | ||
982 | # CONFIG_USB_STORAGE_ISD200 is not set | ||
983 | # CONFIG_USB_STORAGE_DPCM is not set | ||
984 | # CONFIG_USB_STORAGE_USBAT is not set | ||
985 | # CONFIG_USB_STORAGE_SDDR09 is not set | ||
986 | # CONFIG_USB_STORAGE_SDDR55 is not set | ||
987 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | ||
988 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
989 | |||
990 | # | ||
991 | # USB Input Devices | ||
992 | # | ||
993 | CONFIG_USB_HID=m | ||
994 | CONFIG_USB_HIDINPUT=y | ||
995 | # CONFIG_HID_FF is not set | ||
996 | # CONFIG_USB_HIDDEV is not set | ||
997 | |||
998 | # | ||
999 | # USB HID Boot Protocol drivers | ||
1000 | # | ||
1001 | CONFIG_USB_KBD=m | ||
1002 | CONFIG_USB_MOUSE=m | ||
1003 | CONFIG_USB_AIPTEK=m | ||
1004 | CONFIG_USB_WACOM=m | ||
1005 | # CONFIG_USB_ACECAD is not set | ||
1006 | CONFIG_USB_KBTAB=m | ||
1007 | CONFIG_USB_POWERMATE=m | ||
1008 | CONFIG_USB_MTOUCH=m | ||
1009 | # CONFIG_USB_ITMTOUCH is not set | ||
1010 | CONFIG_USB_EGALAX=m | ||
1011 | # CONFIG_USB_YEALINK is not set | ||
1012 | CONFIG_USB_XPAD=m | ||
1013 | CONFIG_USB_ATI_REMOTE=m | ||
1014 | # CONFIG_USB_KEYSPAN_REMOTE is not set | ||
1015 | # CONFIG_USB_APPLETOUCH is not set | ||
1016 | |||
1017 | # | ||
1018 | # USB Imaging devices | ||
1019 | # | ||
1020 | CONFIG_USB_MDC800=m | ||
1021 | CONFIG_USB_MICROTEK=m | ||
1022 | |||
1023 | # | ||
1024 | # USB Multimedia devices | ||
1025 | # | ||
1026 | CONFIG_USB_DABUSB=m | ||
1027 | |||
1028 | # | ||
1029 | # Video4Linux support is needed for USB Multimedia device support | ||
1030 | # | ||
1031 | |||
1032 | # | ||
1033 | # USB Network Adapters | ||
1034 | # | ||
1035 | CONFIG_USB_CATC=m | ||
1036 | CONFIG_USB_KAWETH=m | ||
1037 | CONFIG_USB_PEGASUS=m | ||
1038 | CONFIG_USB_RTL8150=m | ||
1039 | CONFIG_USB_USBNET=m | ||
1040 | CONFIG_USB_NET_AX8817X=m | ||
1041 | CONFIG_USB_NET_CDCETHER=m | ||
1042 | # CONFIG_USB_NET_GL620A is not set | ||
1043 | CONFIG_USB_NET_NET1080=m | ||
1044 | # CONFIG_USB_NET_PLUSB is not set | ||
1045 | # CONFIG_USB_NET_RNDIS_HOST is not set | ||
1046 | # CONFIG_USB_NET_CDC_SUBSET is not set | ||
1047 | CONFIG_USB_NET_ZAURUS=m | ||
1048 | # CONFIG_USB_ZD1201 is not set | ||
1049 | CONFIG_USB_MON=y | ||
1050 | |||
1051 | # | ||
1052 | # USB port drivers | ||
1053 | # | ||
1054 | |||
1055 | # | ||
1056 | # USB Serial Converter support | ||
1057 | # | ||
1058 | CONFIG_USB_SERIAL=m | ||
1059 | CONFIG_USB_SERIAL_GENERIC=y | ||
1060 | # CONFIG_USB_SERIAL_AIRPRIME is not set | ||
1061 | CONFIG_USB_SERIAL_BELKIN=m | ||
1062 | # CONFIG_USB_SERIAL_WHITEHEAT is not set | ||
1063 | CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m | ||
1064 | # CONFIG_USB_SERIAL_CP2101 is not set | ||
1065 | CONFIG_USB_SERIAL_CYPRESS_M8=m | ||
1066 | CONFIG_USB_SERIAL_EMPEG=m | ||
1067 | CONFIG_USB_SERIAL_FTDI_SIO=m | ||
1068 | CONFIG_USB_SERIAL_VISOR=m | ||
1069 | CONFIG_USB_SERIAL_IPAQ=m | ||
1070 | CONFIG_USB_SERIAL_IR=m | ||
1071 | CONFIG_USB_SERIAL_EDGEPORT=m | ||
1072 | CONFIG_USB_SERIAL_EDGEPORT_TI=m | ||
1073 | CONFIG_USB_SERIAL_GARMIN=m | ||
1074 | CONFIG_USB_SERIAL_IPW=m | ||
1075 | CONFIG_USB_SERIAL_KEYSPAN_PDA=m | ||
1076 | CONFIG_USB_SERIAL_KEYSPAN=m | ||
1077 | # CONFIG_USB_SERIAL_KEYSPAN_MPR is not set | ||
1078 | # CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set | ||
1079 | # CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set | ||
1080 | # CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set | ||
1081 | # CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set | ||
1082 | # CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set | ||
1083 | # CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set | ||
1084 | # CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set | ||
1085 | # CONFIG_USB_SERIAL_KEYSPAN_USA19QW is not set | ||
1086 | # CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set | ||
1087 | # CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set | ||
1088 | # CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set | ||
1089 | CONFIG_USB_SERIAL_KLSI=m | ||
1090 | CONFIG_USB_SERIAL_KOBIL_SCT=m | ||
1091 | CONFIG_USB_SERIAL_MCT_U232=m | ||
1092 | CONFIG_USB_SERIAL_PL2303=m | ||
1093 | # CONFIG_USB_SERIAL_HP4X is not set | ||
1094 | CONFIG_USB_SERIAL_SAFE=m | ||
1095 | # CONFIG_USB_SERIAL_SAFE_PADDED is not set | ||
1096 | CONFIG_USB_SERIAL_TI=m | ||
1097 | CONFIG_USB_SERIAL_CYBERJACK=m | ||
1098 | CONFIG_USB_SERIAL_XIRCOM=m | ||
1099 | # CONFIG_USB_SERIAL_OPTION is not set | ||
1100 | CONFIG_USB_SERIAL_OMNINET=m | ||
1101 | CONFIG_USB_EZUSB=y | ||
1102 | |||
1103 | # | ||
1104 | # USB Miscellaneous drivers | ||
1105 | # | ||
1106 | CONFIG_USB_EMI62=m | ||
1107 | CONFIG_USB_EMI26=m | ||
1108 | CONFIG_USB_AUERSWALD=m | ||
1109 | CONFIG_USB_RIO500=m | ||
1110 | CONFIG_USB_LEGOTOWER=m | ||
1111 | CONFIG_USB_LCD=m | ||
1112 | CONFIG_USB_LED=m | ||
1113 | CONFIG_USB_CYTHERM=m | ||
1114 | CONFIG_USB_PHIDGETKIT=m | ||
1115 | CONFIG_USB_PHIDGETSERVO=m | ||
1116 | CONFIG_USB_IDMOUSE=m | ||
1117 | # CONFIG_USB_LD is not set | ||
1118 | # CONFIG_USB_TEST is not set | ||
1119 | |||
1120 | # | ||
1121 | # USB DSL modem support | ||
1122 | # | ||
1123 | |||
1124 | # | ||
1125 | # USB Gadget Support | ||
1126 | # | ||
1127 | CONFIG_USB_GADGET=m | ||
1128 | # CONFIG_USB_GADGET_DEBUG_FILES is not set | ||
1129 | CONFIG_USB_GADGET_SELECTED=y | ||
1130 | # CONFIG_USB_GADGET_NET2280 is not set | ||
1131 | # CONFIG_USB_GADGET_PXA2XX is not set | ||
1132 | # CONFIG_USB_GADGET_GOKU is not set | ||
1133 | # CONFIG_USB_GADGET_LH7A40X is not set | ||
1134 | # CONFIG_USB_GADGET_OMAP is not set | ||
1135 | CONFIG_USB_GADGET_DUMMY_HCD=y | ||
1136 | CONFIG_USB_DUMMY_HCD=m | ||
1137 | CONFIG_USB_GADGET_DUALSPEED=y | ||
1138 | CONFIG_USB_ZERO=m | ||
1139 | CONFIG_USB_ETH=m | ||
1140 | CONFIG_USB_ETH_RNDIS=y | ||
1141 | CONFIG_USB_GADGETFS=m | ||
1142 | CONFIG_USB_FILE_STORAGE=m | ||
1143 | # CONFIG_USB_FILE_STORAGE_TEST is not set | ||
1144 | CONFIG_USB_G_SERIAL=m | ||
1145 | |||
1146 | # | ||
1147 | # MMC/SD Card support | ||
1148 | # | ||
1149 | CONFIG_MMC=y | ||
1150 | # CONFIG_MMC_DEBUG is not set | ||
1151 | CONFIG_MMC_BLOCK=y | ||
1152 | CONFIG_MMC_PXA=y | ||
1153 | # CONFIG_MMC_WBSD is not set | ||
1154 | |||
1155 | # | ||
1156 | # File systems | ||
1157 | # | ||
1158 | CONFIG_EXT2_FS=y | ||
1159 | CONFIG_EXT2_FS_XATTR=y | ||
1160 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
1161 | CONFIG_EXT2_FS_SECURITY=y | ||
1162 | # CONFIG_EXT2_FS_XIP is not set | ||
1163 | CONFIG_EXT3_FS=y | ||
1164 | # CONFIG_EXT3_FS_XATTR is not set | ||
1165 | CONFIG_JBD=y | ||
1166 | # CONFIG_JBD_DEBUG is not set | ||
1167 | CONFIG_FS_MBCACHE=y | ||
1168 | # CONFIG_REISERFS_FS is not set | ||
1169 | # CONFIG_JFS_FS is not set | ||
1170 | CONFIG_FS_POSIX_ACL=y | ||
1171 | # CONFIG_XFS_FS is not set | ||
1172 | # CONFIG_MINIX_FS is not set | ||
1173 | # CONFIG_ROMFS_FS is not set | ||
1174 | CONFIG_INOTIFY=y | ||
1175 | # CONFIG_QUOTA is not set | ||
1176 | CONFIG_DNOTIFY=y | ||
1177 | # CONFIG_AUTOFS_FS is not set | ||
1178 | # CONFIG_AUTOFS4_FS is not set | ||
1179 | # CONFIG_FUSE_FS is not set | ||
1180 | |||
1181 | # | ||
1182 | # CD-ROM/DVD Filesystems | ||
1183 | # | ||
1184 | # CONFIG_ISO9660_FS is not set | ||
1185 | # CONFIG_UDF_FS is not set | ||
1186 | |||
1187 | # | ||
1188 | # DOS/FAT/NT Filesystems | ||
1189 | # | ||
1190 | CONFIG_FAT_FS=y | ||
1191 | CONFIG_MSDOS_FS=y | ||
1192 | CONFIG_VFAT_FS=y | ||
1193 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
1194 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
1195 | # CONFIG_NTFS_FS is not set | ||
1196 | |||
1197 | # | ||
1198 | # Pseudo filesystems | ||
1199 | # | ||
1200 | CONFIG_PROC_FS=y | ||
1201 | CONFIG_SYSFS=y | ||
1202 | CONFIG_TMPFS=y | ||
1203 | # CONFIG_HUGETLB_PAGE is not set | ||
1204 | CONFIG_RAMFS=y | ||
1205 | # CONFIG_RELAYFS_FS is not set | ||
1206 | |||
1207 | # | ||
1208 | # Miscellaneous filesystems | ||
1209 | # | ||
1210 | # CONFIG_ADFS_FS is not set | ||
1211 | # CONFIG_AFFS_FS is not set | ||
1212 | # CONFIG_HFS_FS is not set | ||
1213 | # CONFIG_HFSPLUS_FS is not set | ||
1214 | # CONFIG_BEFS_FS is not set | ||
1215 | # CONFIG_BFS_FS is not set | ||
1216 | # CONFIG_EFS_FS is not set | ||
1217 | # CONFIG_JFFS_FS is not set | ||
1218 | CONFIG_JFFS2_FS=y | ||
1219 | CONFIG_JFFS2_FS_DEBUG=0 | ||
1220 | CONFIG_JFFS2_FS_WRITEBUFFER=y | ||
1221 | CONFIG_JFFS2_COMPRESSION_OPTIONS=y | ||
1222 | CONFIG_JFFS2_ZLIB=y | ||
1223 | CONFIG_JFFS2_RTIME=y | ||
1224 | CONFIG_JFFS2_RUBIN=y | ||
1225 | # CONFIG_JFFS2_CMODE_NONE is not set | ||
1226 | CONFIG_JFFS2_CMODE_PRIORITY=y | ||
1227 | # CONFIG_JFFS2_CMODE_SIZE is not set | ||
1228 | CONFIG_CRAMFS=m | ||
1229 | # CONFIG_VXFS_FS is not set | ||
1230 | # CONFIG_HPFS_FS is not set | ||
1231 | # CONFIG_QNX4FS_FS is not set | ||
1232 | # CONFIG_SYSV_FS is not set | ||
1233 | # CONFIG_UFS_FS is not set | ||
1234 | |||
1235 | # | ||
1236 | # Network File Systems | ||
1237 | # | ||
1238 | CONFIG_NFS_FS=m | ||
1239 | CONFIG_NFS_V3=y | ||
1240 | # CONFIG_NFS_V3_ACL is not set | ||
1241 | CONFIG_NFS_V4=y | ||
1242 | # CONFIG_NFS_DIRECTIO is not set | ||
1243 | # CONFIG_NFSD is not set | ||
1244 | CONFIG_LOCKD=m | ||
1245 | CONFIG_LOCKD_V4=y | ||
1246 | CONFIG_NFS_COMMON=y | ||
1247 | CONFIG_SUNRPC=m | ||
1248 | CONFIG_SUNRPC_GSS=m | ||
1249 | CONFIG_RPCSEC_GSS_KRB5=m | ||
1250 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
1251 | CONFIG_SMB_FS=m | ||
1252 | CONFIG_SMB_NLS_DEFAULT=y | ||
1253 | CONFIG_SMB_NLS_REMOTE="cp437" | ||
1254 | # CONFIG_CIFS is not set | ||
1255 | # CONFIG_NCP_FS is not set | ||
1256 | # CONFIG_CODA_FS is not set | ||
1257 | # CONFIG_AFS_FS is not set | ||
1258 | # CONFIG_9P_FS is not set | ||
1259 | |||
1260 | # | ||
1261 | # Partition Types | ||
1262 | # | ||
1263 | CONFIG_PARTITION_ADVANCED=y | ||
1264 | # CONFIG_ACORN_PARTITION is not set | ||
1265 | # CONFIG_OSF_PARTITION is not set | ||
1266 | # CONFIG_AMIGA_PARTITION is not set | ||
1267 | # CONFIG_ATARI_PARTITION is not set | ||
1268 | # CONFIG_MAC_PARTITION is not set | ||
1269 | CONFIG_MSDOS_PARTITION=y | ||
1270 | # CONFIG_BSD_DISKLABEL is not set | ||
1271 | # CONFIG_MINIX_SUBPARTITION is not set | ||
1272 | # CONFIG_SOLARIS_X86_PARTITION is not set | ||
1273 | # CONFIG_UNIXWARE_DISKLABEL is not set | ||
1274 | # CONFIG_LDM_PARTITION is not set | ||
1275 | # CONFIG_SGI_PARTITION is not set | ||
1276 | # CONFIG_ULTRIX_PARTITION is not set | ||
1277 | # CONFIG_SUN_PARTITION is not set | ||
1278 | # CONFIG_EFI_PARTITION is not set | ||
1279 | |||
1280 | # | ||
1281 | # Native Language Support | ||
1282 | # | ||
1283 | CONFIG_NLS=y | ||
1284 | CONFIG_NLS_DEFAULT="cp437" | ||
1285 | CONFIG_NLS_CODEPAGE_437=y | ||
1286 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
1287 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
1288 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
1289 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
1290 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
1291 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
1292 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
1293 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
1294 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
1295 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
1296 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
1297 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
1298 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
1299 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
1300 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
1301 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
1302 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
1303 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
1304 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
1305 | # CONFIG_NLS_ISO8859_8 is not set | ||
1306 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
1307 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
1308 | # CONFIG_NLS_ASCII is not set | ||
1309 | CONFIG_NLS_ISO8859_1=y | ||
1310 | # CONFIG_NLS_ISO8859_2 is not set | ||
1311 | # CONFIG_NLS_ISO8859_3 is not set | ||
1312 | # CONFIG_NLS_ISO8859_4 is not set | ||
1313 | # CONFIG_NLS_ISO8859_5 is not set | ||
1314 | # CONFIG_NLS_ISO8859_6 is not set | ||
1315 | # CONFIG_NLS_ISO8859_7 is not set | ||
1316 | # CONFIG_NLS_ISO8859_9 is not set | ||
1317 | # CONFIG_NLS_ISO8859_13 is not set | ||
1318 | # CONFIG_NLS_ISO8859_14 is not set | ||
1319 | # CONFIG_NLS_ISO8859_15 is not set | ||
1320 | # CONFIG_NLS_KOI8_R is not set | ||
1321 | # CONFIG_NLS_KOI8_U is not set | ||
1322 | CONFIG_NLS_UTF8=y | ||
1323 | |||
1324 | # | ||
1325 | # Profiling support | ||
1326 | # | ||
1327 | CONFIG_PROFILING=y | ||
1328 | CONFIG_OPROFILE=m | ||
1329 | |||
1330 | # | ||
1331 | # Kernel hacking | ||
1332 | # | ||
1333 | # CONFIG_PRINTK_TIME is not set | ||
1334 | CONFIG_DEBUG_KERNEL=y | ||
1335 | CONFIG_MAGIC_SYSRQ=y | ||
1336 | CONFIG_LOG_BUF_SHIFT=14 | ||
1337 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1338 | # CONFIG_SCHEDSTATS is not set | ||
1339 | # CONFIG_DEBUG_SLAB is not set | ||
1340 | # CONFIG_DEBUG_PREEMPT is not set | ||
1341 | # CONFIG_DEBUG_SPINLOCK is not set | ||
1342 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
1343 | # CONFIG_DEBUG_KOBJECT is not set | ||
1344 | CONFIG_DEBUG_BUGVERBOSE=y | ||
1345 | # CONFIG_DEBUG_INFO is not set | ||
1346 | # CONFIG_DEBUG_FS is not set | ||
1347 | CONFIG_FRAME_POINTER=y | ||
1348 | # CONFIG_DEBUG_USER is not set | ||
1349 | # CONFIG_DEBUG_WAITQ is not set | ||
1350 | CONFIG_DEBUG_ERRORS=y | ||
1351 | CONFIG_DEBUG_LL=y | ||
1352 | # CONFIG_DEBUG_ICEDCC is not set | ||
1353 | |||
1354 | # | ||
1355 | # Security options | ||
1356 | # | ||
1357 | # CONFIG_KEYS is not set | ||
1358 | # CONFIG_SECURITY is not set | ||
1359 | |||
1360 | # | ||
1361 | # Cryptographic options | ||
1362 | # | ||
1363 | CONFIG_CRYPTO=y | ||
1364 | CONFIG_CRYPTO_HMAC=y | ||
1365 | CONFIG_CRYPTO_NULL=m | ||
1366 | CONFIG_CRYPTO_MD4=m | ||
1367 | CONFIG_CRYPTO_MD5=m | ||
1368 | CONFIG_CRYPTO_SHA1=m | ||
1369 | CONFIG_CRYPTO_SHA256=m | ||
1370 | CONFIG_CRYPTO_SHA512=m | ||
1371 | CONFIG_CRYPTO_WP512=m | ||
1372 | # CONFIG_CRYPTO_TGR192 is not set | ||
1373 | CONFIG_CRYPTO_DES=m | ||
1374 | CONFIG_CRYPTO_BLOWFISH=m | ||
1375 | CONFIG_CRYPTO_TWOFISH=m | ||
1376 | CONFIG_CRYPTO_SERPENT=m | ||
1377 | CONFIG_CRYPTO_AES=m | ||
1378 | CONFIG_CRYPTO_CAST5=m | ||
1379 | CONFIG_CRYPTO_CAST6=m | ||
1380 | CONFIG_CRYPTO_TEA=m | ||
1381 | CONFIG_CRYPTO_ARC4=m | ||
1382 | CONFIG_CRYPTO_KHAZAD=m | ||
1383 | CONFIG_CRYPTO_ANUBIS=m | ||
1384 | CONFIG_CRYPTO_DEFLATE=m | ||
1385 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1386 | CONFIG_CRYPTO_CRC32C=m | ||
1387 | CONFIG_CRYPTO_TEST=m | ||
1388 | |||
1389 | # | ||
1390 | # Hardware crypto devices | ||
1391 | # | ||
1392 | |||
1393 | # | ||
1394 | # Library routines | ||
1395 | # | ||
1396 | CONFIG_CRC_CCITT=y | ||
1397 | # CONFIG_CRC16 is not set | ||
1398 | CONFIG_CRC32=y | ||
1399 | CONFIG_LIBCRC32C=m | ||
1400 | CONFIG_ZLIB_INFLATE=y | ||
1401 | CONFIG_ZLIB_DEFLATE=y | ||
diff --git a/arch/arm/kernel/armksyms.c b/arch/arm/kernel/armksyms.c index 835d450797a1..7b17a87a3311 100644 --- a/arch/arm/kernel/armksyms.c +++ b/arch/arm/kernel/armksyms.c | |||
@@ -45,8 +45,8 @@ extern void fp_enter(void); | |||
45 | 45 | ||
46 | #define EXPORT_SYMBOL_ALIAS(sym,orig) \ | 46 | #define EXPORT_SYMBOL_ALIAS(sym,orig) \ |
47 | EXPORT_CRC_ALIAS(sym) \ | 47 | EXPORT_CRC_ALIAS(sym) \ |
48 | const struct kernel_symbol __ksymtab_##sym \ | 48 | static const struct kernel_symbol __ksymtab_##sym \ |
49 | __attribute__((section("__ksymtab"))) = \ | 49 | __attribute_used__ __attribute__((section("__ksymtab"))) = \ |
50 | { (unsigned long)&orig, #sym }; | 50 | { (unsigned long)&orig, #sym }; |
51 | 51 | ||
52 | /* | 52 | /* |
diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S index 81d450ac3fab..066597f4345a 100644 --- a/arch/arm/kernel/entry-common.S +++ b/arch/arm/kernel/entry-common.S | |||
@@ -106,15 +106,10 @@ ENTRY(ret_from_fork) | |||
106 | .endm | 106 | .endm |
107 | 107 | ||
108 | .Larm700bug: | 108 | .Larm700bug: |
109 | ldr r0, [sp, #S_PSR] @ Get calling cpsr | ||
110 | sub lr, lr, #4 | ||
111 | str lr, [r8] | ||
112 | msr spsr_cxsf, r0 | ||
113 | ldmia sp, {r0 - lr}^ @ Get calling r0 - lr | 109 | ldmia sp, {r0 - lr}^ @ Get calling r0 - lr |
114 | mov r0, r0 | 110 | mov r0, r0 |
115 | ldr lr, [sp, #S_PC] @ Get PC | ||
116 | add sp, sp, #S_FRAME_SIZE | 111 | add sp, sp, #S_FRAME_SIZE |
117 | movs pc, lr | 112 | subs pc, lr, #4 |
118 | #else | 113 | #else |
119 | .macro arm710_bug_check, instr, temp | 114 | .macro arm710_bug_check, instr, temp |
120 | .endm | 115 | .endm |
diff --git a/arch/arm/kernel/sys_arm.c b/arch/arm/kernel/sys_arm.c index 42629ff84f5a..ea569ba482b1 100644 --- a/arch/arm/kernel/sys_arm.c +++ b/arch/arm/kernel/sys_arm.c | |||
@@ -305,7 +305,7 @@ long execve(const char *filename, char **argv, char **envp) | |||
305 | "Ir" (THREAD_START_SP - sizeof(regs)), | 305 | "Ir" (THREAD_START_SP - sizeof(regs)), |
306 | "r" (®s), | 306 | "r" (®s), |
307 | "Ir" (sizeof(regs)) | 307 | "Ir" (sizeof(regs)) |
308 | : "r0", "r1", "r2", "r3", "ip", "memory"); | 308 | : "r0", "r1", "r2", "r3", "ip", "lr", "memory"); |
309 | 309 | ||
310 | out: | 310 | out: |
311 | return ret; | 311 | return ret; |
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c index e7d22dbcb691..f6de76e0a45d 100644 --- a/arch/arm/kernel/traps.c +++ b/arch/arm/kernel/traps.c | |||
@@ -504,7 +504,7 @@ asmlinkage int arm_syscall(int no, struct pt_regs *regs) | |||
504 | 504 | ||
505 | bad_access: | 505 | bad_access: |
506 | spin_unlock(&mm->page_table_lock); | 506 | spin_unlock(&mm->page_table_lock); |
507 | /* simulate a read access fault */ | 507 | /* simulate a write access fault */ |
508 | do_DataAbort(addr, 15 + (1 << 11), regs); | 508 | do_DataAbort(addr, 15 + (1 << 11), regs); |
509 | return -1; | 509 | return -1; |
510 | } | 510 | } |
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S index 08e58ecd44be..0d5db5279c5c 100644 --- a/arch/arm/kernel/vmlinux.lds.S +++ b/arch/arm/kernel/vmlinux.lds.S | |||
@@ -89,13 +89,6 @@ SECTIONS | |||
89 | *(.got) /* Global offset table */ | 89 | *(.got) /* Global offset table */ |
90 | } | 90 | } |
91 | 91 | ||
92 | . = ALIGN(16); | ||
93 | __ex_table : { /* Exception table */ | ||
94 | __start___ex_table = .; | ||
95 | *(__ex_table) | ||
96 | __stop___ex_table = .; | ||
97 | } | ||
98 | |||
99 | RODATA | 92 | RODATA |
100 | 93 | ||
101 | _etext = .; /* End of text and rodata section */ | 94 | _etext = .; /* End of text and rodata section */ |
@@ -138,6 +131,14 @@ SECTIONS | |||
138 | *(.data.cacheline_aligned) | 131 | *(.data.cacheline_aligned) |
139 | 132 | ||
140 | /* | 133 | /* |
134 | * The exception fixup table (might need resorting at runtime) | ||
135 | */ | ||
136 | . = ALIGN(32); | ||
137 | __start___ex_table = .; | ||
138 | *(__ex_table) | ||
139 | __stop___ex_table = .; | ||
140 | |||
141 | /* | ||
141 | * and the usual data section | 142 | * and the usual data section |
142 | */ | 143 | */ |
143 | *(.data) | 144 | *(.data) |
diff --git a/arch/arm/mach-imx/generic.c b/arch/arm/mach-imx/generic.c index 41e5849ae8da..f8a742bb2d5b 100644 --- a/arch/arm/mach-imx/generic.c +++ b/arch/arm/mach-imx/generic.c | |||
@@ -28,14 +28,15 @@ | |||
28 | #include <linux/module.h> | 28 | #include <linux/module.h> |
29 | #include <asm/arch/imxfb.h> | 29 | #include <asm/arch/imxfb.h> |
30 | #include <asm/hardware.h> | 30 | #include <asm/hardware.h> |
31 | #include <asm/arch/imx-regs.h> | ||
31 | 32 | ||
32 | #include <asm/mach/map.h> | 33 | #include <asm/mach/map.h> |
33 | 34 | ||
34 | void imx_gpio_mode(int gpio_mode) | 35 | void imx_gpio_mode(int gpio_mode) |
35 | { | 36 | { |
36 | unsigned int pin = gpio_mode & GPIO_PIN_MASK; | 37 | unsigned int pin = gpio_mode & GPIO_PIN_MASK; |
37 | unsigned int port = (gpio_mode & GPIO_PORT_MASK) >> 5; | 38 | unsigned int port = (gpio_mode & GPIO_PORT_MASK) >> GPIO_PORT_SHIFT; |
38 | unsigned int ocr = (gpio_mode & GPIO_OCR_MASK) >> 10; | 39 | unsigned int ocr = (gpio_mode & GPIO_OCR_MASK) >> GPIO_OCR_SHIFT; |
39 | unsigned int tmp; | 40 | unsigned int tmp; |
40 | 41 | ||
41 | /* Pullup enable */ | 42 | /* Pullup enable */ |
@@ -57,7 +58,7 @@ void imx_gpio_mode(int gpio_mode) | |||
57 | GPR(port) &= ~(1<<pin); | 58 | GPR(port) &= ~(1<<pin); |
58 | 59 | ||
59 | /* use as gpio? */ | 60 | /* use as gpio? */ |
60 | if( ocr == 3 ) | 61 | if(gpio_mode & GPIO_GIUS) |
61 | GIUS(port) |= (1<<pin); | 62 | GIUS(port) |= (1<<pin); |
62 | else | 63 | else |
63 | GIUS(port) &= ~(1<<pin); | 64 | GIUS(port) &= ~(1<<pin); |
@@ -72,20 +73,20 @@ void imx_gpio_mode(int gpio_mode) | |||
72 | tmp |= (ocr << (pin*2)); | 73 | tmp |= (ocr << (pin*2)); |
73 | OCR1(port) = tmp; | 74 | OCR1(port) = tmp; |
74 | 75 | ||
75 | if( gpio_mode & GPIO_AOUT ) | 76 | ICONFA1(port) &= ~( 3<<(pin*2)); |
76 | ICONFA1(port) &= ~( 3<<(pin*2)); | 77 | ICONFA1(port) |= ((gpio_mode >> GPIO_AOUT_SHIFT) & 3) << (pin * 2); |
77 | if( gpio_mode & GPIO_BOUT ) | 78 | ICONFB1(port) &= ~( 3<<(pin*2)); |
78 | ICONFB1(port) &= ~( 3<<(pin*2)); | 79 | ICONFB1(port) |= ((gpio_mode >> GPIO_BOUT_SHIFT) & 3) << (pin * 2); |
79 | } else { | 80 | } else { |
80 | tmp = OCR2(port); | 81 | tmp = OCR2(port); |
81 | tmp &= ~( 3<<((pin-16)*2)); | 82 | tmp &= ~( 3<<((pin-16)*2)); |
82 | tmp |= (ocr << ((pin-16)*2)); | 83 | tmp |= (ocr << ((pin-16)*2)); |
83 | OCR2(port) = tmp; | 84 | OCR2(port) = tmp; |
84 | 85 | ||
85 | if( gpio_mode & GPIO_AOUT ) | 86 | ICONFA2(port) &= ~( 3<<((pin-16)*2)); |
86 | ICONFA2(port) &= ~( 3<<((pin-16)*2)); | 87 | ICONFA2(port) |= ((gpio_mode >> GPIO_AOUT_SHIFT) & 3) << ((pin-16) * 2); |
87 | if( gpio_mode & GPIO_BOUT ) | 88 | ICONFB2(port) &= ~( 3<<((pin-16)*2)); |
88 | ICONFB2(port) &= ~( 3<<((pin-16)*2)); | 89 | ICONFB2(port) |= ((gpio_mode >> GPIO_BOUT_SHIFT) & 3) << ((pin-16) * 2); |
89 | } | 90 | } |
90 | } | 91 | } |
91 | 92 | ||
diff --git a/arch/arm/mach-imx/mx1ads.c b/arch/arm/mach-imx/mx1ads.c index 5d25434d332c..a7511ddfe364 100644 --- a/arch/arm/mach-imx/mx1ads.c +++ b/arch/arm/mach-imx/mx1ads.c | |||
@@ -55,7 +55,7 @@ static void __init | |||
55 | mx1ads_init(void) | 55 | mx1ads_init(void) |
56 | { | 56 | { |
57 | #ifdef CONFIG_LEDS | 57 | #ifdef CONFIG_LEDS |
58 | imx_gpio_mode(GPIO_PORTA | GPIO_OUT | GPIO_GPIO | 2); | 58 | imx_gpio_mode(GPIO_PORTA | GPIO_OUT | 2); |
59 | #endif | 59 | #endif |
60 | platform_add_devices(devices, ARRAY_SIZE(devices)); | 60 | platform_add_devices(devices, ARRAY_SIZE(devices)); |
61 | } | 61 | } |
diff --git a/arch/arm/mach-integrator/impd1.c b/arch/arm/mach-integrator/impd1.c index c3c2f17d030e..a1b153d1626c 100644 --- a/arch/arm/mach-integrator/impd1.c +++ b/arch/arm/mach-integrator/impd1.c | |||
@@ -67,7 +67,7 @@ static void impd1_setvco(struct clk *clk, struct icst525_vco vco) | |||
67 | } | 67 | } |
68 | writel(0, impd1->base + IMPD1_LOCK); | 68 | writel(0, impd1->base + IMPD1_LOCK); |
69 | 69 | ||
70 | #if DEBUG | 70 | #ifdef DEBUG |
71 | vco.v = val & 0x1ff; | 71 | vco.v = val & 0x1ff; |
72 | vco.r = (val >> 9) & 0x7f; | 72 | vco.r = (val >> 9) & 0x7f; |
73 | vco.s = (val >> 16) & 7; | 73 | vco.s = (val >> 16) & 7; |
@@ -427,17 +427,18 @@ static int impd1_probe(struct lm_device *dev) | |||
427 | return ret; | 427 | return ret; |
428 | } | 428 | } |
429 | 429 | ||
430 | static int impd1_remove_one(struct device *dev, void *data) | ||
431 | { | ||
432 | device_unregister(dev); | ||
433 | return 0; | ||
434 | } | ||
435 | |||
430 | static void impd1_remove(struct lm_device *dev) | 436 | static void impd1_remove(struct lm_device *dev) |
431 | { | 437 | { |
432 | struct impd1_module *impd1 = lm_get_drvdata(dev); | 438 | struct impd1_module *impd1 = lm_get_drvdata(dev); |
433 | struct list_head *l, *n; | ||
434 | int i; | 439 | int i; |
435 | 440 | ||
436 | list_for_each_safe(l, n, &dev->dev.children) { | 441 | device_for_each_child(&dev->dev, NULL, impd1_remove_one); |
437 | struct device *d = list_to_dev(l); | ||
438 | |||
439 | device_unregister(d); | ||
440 | } | ||
441 | 442 | ||
442 | for (i = 0; i < ARRAY_SIZE(impd1->vcos); i++) | 443 | for (i = 0; i < ARRAY_SIZE(impd1->vcos); i++) |
443 | clk_unregister(&impd1->vcos[i]); | 444 | clk_unregister(&impd1->vcos[i]); |
diff --git a/arch/arm/mach-l7200/core.c b/arch/arm/mach-l7200/core.c index 5fd8c9f97f9a..03ed742ae2be 100644 --- a/arch/arm/mach-l7200/core.c +++ b/arch/arm/mach-l7200/core.c | |||
@@ -7,11 +7,17 @@ | |||
7 | */ | 7 | */ |
8 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
9 | #include <linux/init.h> | 9 | #include <linux/init.h> |
10 | #include <linux/device.h> | ||
10 | 11 | ||
12 | #include <asm/types.h> | ||
13 | #include <asm/irq.h> | ||
14 | #include <asm/mach-types.h> | ||
11 | #include <asm/hardware.h> | 15 | #include <asm/hardware.h> |
12 | #include <asm/page.h> | 16 | #include <asm/page.h> |
13 | 17 | ||
18 | #include <asm/mach/arch.h> | ||
14 | #include <asm/mach/map.h> | 19 | #include <asm/mach/map.h> |
20 | #include <asm/mach/irq.h> | ||
15 | 21 | ||
16 | /* | 22 | /* |
17 | * IRQ base register | 23 | * IRQ base register |
@@ -47,6 +53,12 @@ static void l7200_unmask_irq(unsigned int irq) | |||
47 | { | 53 | { |
48 | IRQ_ENABLE = 1 << irq; | 54 | IRQ_ENABLE = 1 << irq; |
49 | } | 55 | } |
56 | |||
57 | static struct irqchip l7200_irq_chip = { | ||
58 | .ack = l7200_mask_irq, | ||
59 | .mask = l7200_mask_irq, | ||
60 | .unmask = l7200_unmask_irq | ||
61 | }; | ||
50 | 62 | ||
51 | static void __init l7200_init_irq(void) | 63 | static void __init l7200_init_irq(void) |
52 | { | 64 | { |
@@ -56,11 +68,9 @@ static void __init l7200_init_irq(void) | |||
56 | FIQ_ENABLECLEAR = 0xffffffff; /* clear all fast interrupt enables */ | 68 | FIQ_ENABLECLEAR = 0xffffffff; /* clear all fast interrupt enables */ |
57 | 69 | ||
58 | for (irq = 0; irq < NR_IRQS; irq++) { | 70 | for (irq = 0; irq < NR_IRQS; irq++) { |
59 | irq_desc[irq].valid = 1; | 71 | set_irq_chip(irq, &l7200_irq_chip); |
60 | irq_desc[irq].probe_ok = 1; | 72 | set_irq_flags(irq, IRQF_VALID); |
61 | irq_desc[irq].mask_ack = l7200_mask_irq; | 73 | set_irq_handler(irq, do_level_IRQ); |
62 | irq_desc[irq].mask = l7200_mask_irq; | ||
63 | irq_desc[irq].unmask = l7200_unmask_irq; | ||
64 | } | 74 | } |
65 | 75 | ||
66 | init_FIQ(); | 76 | init_FIQ(); |
diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c index be37586cb1b0..60c8b9d8bb9c 100644 --- a/arch/arm/mach-pxa/corgi.c +++ b/arch/arm/mach-pxa/corgi.c | |||
@@ -36,6 +36,7 @@ | |||
36 | #include <asm/arch/mmc.h> | 36 | #include <asm/arch/mmc.h> |
37 | #include <asm/arch/udc.h> | 37 | #include <asm/arch/udc.h> |
38 | #include <asm/arch/corgi.h> | 38 | #include <asm/arch/corgi.h> |
39 | #include <asm/arch/sharpsl.h> | ||
39 | 40 | ||
40 | #include <asm/mach/sharpsl_param.h> | 41 | #include <asm/mach/sharpsl_param.h> |
41 | #include <asm/hardware/scoop.h> | 42 | #include <asm/hardware/scoop.h> |
diff --git a/arch/arm/mach-pxa/corgi_lcd.c b/arch/arm/mach-pxa/corgi_lcd.c index c02ef7c0f7ef..370df113dc06 100644 --- a/arch/arm/mach-pxa/corgi_lcd.c +++ b/arch/arm/mach-pxa/corgi_lcd.c | |||
@@ -467,6 +467,7 @@ void corgi_put_hsync(void) | |||
467 | { | 467 | { |
468 | if (get_hsync_time) | 468 | if (get_hsync_time) |
469 | symbol_put(w100fb_get_hsynclen); | 469 | symbol_put(w100fb_get_hsynclen); |
470 | get_hsync_time = NULL; | ||
470 | } | 471 | } |
471 | 472 | ||
472 | void corgi_wait_hsync(void) | 473 | void corgi_wait_hsync(void) |
@@ -476,20 +477,39 @@ void corgi_wait_hsync(void) | |||
476 | #endif | 477 | #endif |
477 | 478 | ||
478 | #ifdef CONFIG_PXA_SHARP_Cxx00 | 479 | #ifdef CONFIG_PXA_SHARP_Cxx00 |
480 | static struct device *spitz_pxafb_dev; | ||
481 | |||
482 | static int is_pxafb_device(struct device * dev, void * data) | ||
483 | { | ||
484 | struct platform_device *pdev = container_of(dev, struct platform_device, dev); | ||
485 | |||
486 | return (strncmp(pdev->name, "pxa2xx-fb", 9) == 0); | ||
487 | } | ||
488 | |||
479 | unsigned long spitz_get_hsync_len(void) | 489 | unsigned long spitz_get_hsync_len(void) |
480 | { | 490 | { |
491 | #ifdef CONFIG_FB_PXA | ||
492 | if (!spitz_pxafb_dev) { | ||
493 | spitz_pxafb_dev = bus_find_device(&platform_bus_type, NULL, NULL, is_pxafb_device); | ||
494 | if (!spitz_pxafb_dev) | ||
495 | return 0; | ||
496 | } | ||
481 | if (!get_hsync_time) | 497 | if (!get_hsync_time) |
482 | get_hsync_time = symbol_get(pxafb_get_hsync_time); | 498 | get_hsync_time = symbol_get(pxafb_get_hsync_time); |
483 | if (!get_hsync_time) | 499 | if (!get_hsync_time) |
500 | #endif | ||
484 | return 0; | 501 | return 0; |
485 | 502 | ||
486 | return pxafb_get_hsync_time(&pxafb_device.dev); | 503 | return pxafb_get_hsync_time(spitz_pxafb_dev); |
487 | } | 504 | } |
488 | 505 | ||
489 | void spitz_put_hsync(void) | 506 | void spitz_put_hsync(void) |
490 | { | 507 | { |
508 | put_device(spitz_pxafb_dev); | ||
491 | if (get_hsync_time) | 509 | if (get_hsync_time) |
492 | symbol_put(pxafb_get_hsync_time); | 510 | symbol_put(pxafb_get_hsync_time); |
511 | spitz_pxafb_dev = NULL; | ||
512 | get_hsync_time = NULL; | ||
493 | } | 513 | } |
494 | 514 | ||
495 | void spitz_wait_hsync(void) | 515 | void spitz_wait_hsync(void) |
diff --git a/arch/arm/mach-pxa/generic.c b/arch/arm/mach-pxa/generic.c index d0660a8c4b70..1d7677669a76 100644 --- a/arch/arm/mach-pxa/generic.c +++ b/arch/arm/mach-pxa/generic.c | |||
@@ -208,6 +208,11 @@ static struct platform_device pxafb_device = { | |||
208 | .resource = pxafb_resources, | 208 | .resource = pxafb_resources, |
209 | }; | 209 | }; |
210 | 210 | ||
211 | void __init set_pxa_fb_parent(struct device *parent_dev) | ||
212 | { | ||
213 | pxafb_device.dev.parent = parent_dev; | ||
214 | } | ||
215 | |||
211 | static struct platform_device ffuart_device = { | 216 | static struct platform_device ffuart_device = { |
212 | .name = "pxa2xx-uart", | 217 | .name = "pxa2xx-uart", |
213 | .id = 0, | 218 | .id = 0, |
@@ -245,6 +250,25 @@ void __init pxa_set_i2c_info(struct i2c_pxa_platform_data *info) | |||
245 | i2c_device.dev.platform_data = info; | 250 | i2c_device.dev.platform_data = info; |
246 | } | 251 | } |
247 | 252 | ||
253 | static struct resource i2s_resources[] = { | ||
254 | { | ||
255 | .start = 0x40400000, | ||
256 | .end = 0x40400083, | ||
257 | .flags = IORESOURCE_MEM, | ||
258 | }, { | ||
259 | .start = IRQ_I2S, | ||
260 | .end = IRQ_I2S, | ||
261 | .flags = IORESOURCE_IRQ, | ||
262 | }, | ||
263 | }; | ||
264 | |||
265 | static struct platform_device i2s_device = { | ||
266 | .name = "pxa2xx-i2s", | ||
267 | .id = -1, | ||
268 | .resource = i2c_resources, | ||
269 | .num_resources = ARRAY_SIZE(i2s_resources), | ||
270 | }; | ||
271 | |||
248 | static struct platform_device *devices[] __initdata = { | 272 | static struct platform_device *devices[] __initdata = { |
249 | &pxamci_device, | 273 | &pxamci_device, |
250 | &udc_device, | 274 | &udc_device, |
@@ -253,6 +277,7 @@ static struct platform_device *devices[] __initdata = { | |||
253 | &btuart_device, | 277 | &btuart_device, |
254 | &stuart_device, | 278 | &stuart_device, |
255 | &i2c_device, | 279 | &i2c_device, |
280 | &i2s_device, | ||
256 | }; | 281 | }; |
257 | 282 | ||
258 | static int __init pxa_init(void) | 283 | static int __init pxa_init(void) |
diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c index 568afe3d6e1a..d0ab428c2d7d 100644 --- a/arch/arm/mach-pxa/spitz.c +++ b/arch/arm/mach-pxa/spitz.c | |||
@@ -36,7 +36,6 @@ | |||
36 | #include <asm/arch/irq.h> | 36 | #include <asm/arch/irq.h> |
37 | #include <asm/arch/mmc.h> | 37 | #include <asm/arch/mmc.h> |
38 | #include <asm/arch/udc.h> | 38 | #include <asm/arch/udc.h> |
39 | #include <asm/arch/ohci.h> | ||
40 | #include <asm/arch/pxafb.h> | 39 | #include <asm/arch/pxafb.h> |
41 | #include <asm/arch/akita.h> | 40 | #include <asm/arch/akita.h> |
42 | #include <asm/arch/spitz.h> | 41 | #include <asm/arch/spitz.h> |
@@ -304,7 +303,6 @@ static struct platform_device *devices[] __initdata = { | |||
304 | &spitzkbd_device, | 303 | &spitzkbd_device, |
305 | &spitzts_device, | 304 | &spitzts_device, |
306 | &spitzbl_device, | 305 | &spitzbl_device, |
307 | &spitzbattery_device, | ||
308 | }; | 306 | }; |
309 | 307 | ||
310 | static void __init common_init(void) | 308 | static void __init common_init(void) |
@@ -328,7 +326,7 @@ static void __init common_init(void) | |||
328 | 326 | ||
329 | platform_add_devices(devices, ARRAY_SIZE(devices)); | 327 | platform_add_devices(devices, ARRAY_SIZE(devices)); |
330 | pxa_set_mci_info(&spitz_mci_platform_data); | 328 | pxa_set_mci_info(&spitz_mci_platform_data); |
331 | pxafb_device.dev.parent = &spitzssp_device.dev; | 329 | set_pxa_fb_parent(&spitzssp_device.dev); |
332 | set_pxa_fb_info(&spitz_pxafb_info); | 330 | set_pxa_fb_info(&spitz_pxafb_info); |
333 | } | 331 | } |
334 | 332 | ||
diff --git a/arch/arm/mach-s3c2410/Kconfig b/arch/arm/mach-s3c2410/Kconfig index 06807c6ee68a..c796bcdd6158 100644 --- a/arch/arm/mach-s3c2410/Kconfig +++ b/arch/arm/mach-s3c2410/Kconfig | |||
@@ -12,6 +12,7 @@ config MACH_ANUBIS | |||
12 | config ARCH_BAST | 12 | config ARCH_BAST |
13 | bool "Simtec Electronics BAST (EB2410ITX)" | 13 | bool "Simtec Electronics BAST (EB2410ITX)" |
14 | select CPU_S3C2410 | 14 | select CPU_S3C2410 |
15 | select ISA | ||
15 | help | 16 | help |
16 | Say Y here if you are using the Simtec Electronics EB2410ITX | 17 | Say Y here if you are using the Simtec Electronics EB2410ITX |
17 | development board (also known as BAST) | 18 | development board (also known as BAST) |
diff --git a/arch/arm/mach-s3c2410/clock.c b/arch/arm/mach-s3c2410/clock.c index f59608268751..8b3d5dc35de5 100644 --- a/arch/arm/mach-s3c2410/clock.c +++ b/arch/arm/mach-s3c2410/clock.c | |||
@@ -98,7 +98,10 @@ struct clk *clk_get(struct device *dev, const char *id) | |||
98 | struct clk *clk = ERR_PTR(-ENOENT); | 98 | struct clk *clk = ERR_PTR(-ENOENT); |
99 | int idno; | 99 | int idno; |
100 | 100 | ||
101 | idno = (dev == NULL) ? -1 : to_platform_device(dev)->id; | 101 | if (dev == NULL || dev->bus != &platform_bus_type) |
102 | idno = -1; | ||
103 | else | ||
104 | idno = to_platform_device(dev)->id; | ||
102 | 105 | ||
103 | down(&clocks_sem); | 106 | down(&clocks_sem); |
104 | 107 | ||
diff --git a/arch/arm/mach-s3c2410/mach-anubis.c b/arch/arm/mach-s3c2410/mach-anubis.c index 7c05f27fe1d6..5ae80f4e3e67 100644 --- a/arch/arm/mach-s3c2410/mach-anubis.c +++ b/arch/arm/mach-s3c2410/mach-anubis.c | |||
@@ -125,7 +125,7 @@ static int external_map[] = { 2 }; | |||
125 | static int chip0_map[] = { 0 }; | 125 | static int chip0_map[] = { 0 }; |
126 | static int chip1_map[] = { 1 }; | 126 | static int chip1_map[] = { 1 }; |
127 | 127 | ||
128 | struct mtd_partition anubis_default_nand_part[] = { | 128 | static struct mtd_partition anubis_default_nand_part[] = { |
129 | [0] = { | 129 | [0] = { |
130 | .name = "Boot Agent", | 130 | .name = "Boot Agent", |
131 | .size = SZ_16K, | 131 | .size = SZ_16K, |
diff --git a/arch/arm/mach-s3c2410/mach-bast.c b/arch/arm/mach-s3c2410/mach-bast.c index ed1f07d7252f..7b51bfd0ba6d 100644 --- a/arch/arm/mach-s3c2410/mach-bast.c +++ b/arch/arm/mach-s3c2410/mach-bast.c | |||
@@ -230,7 +230,7 @@ static int chip0_map[] = { 1 }; | |||
230 | static int chip1_map[] = { 2 }; | 230 | static int chip1_map[] = { 2 }; |
231 | static int chip2_map[] = { 3 }; | 231 | static int chip2_map[] = { 3 }; |
232 | 232 | ||
233 | struct mtd_partition bast_default_nand_part[] = { | 233 | static struct mtd_partition bast_default_nand_part[] = { |
234 | [0] = { | 234 | [0] = { |
235 | .name = "Boot Agent", | 235 | .name = "Boot Agent", |
236 | .size = SZ_16K, | 236 | .size = SZ_16K, |
@@ -307,9 +307,9 @@ static void bast_nand_select(struct s3c2410_nand_set *set, int slot) | |||
307 | } | 307 | } |
308 | 308 | ||
309 | static struct s3c2410_platform_nand bast_nand_info = { | 309 | static struct s3c2410_platform_nand bast_nand_info = { |
310 | .tacls = 40, | 310 | .tacls = 30, |
311 | .twrph0 = 80, | 311 | .twrph0 = 60, |
312 | .twrph1 = 80, | 312 | .twrph1 = 60, |
313 | .nr_sets = ARRAY_SIZE(bast_nand_sets), | 313 | .nr_sets = ARRAY_SIZE(bast_nand_sets), |
314 | .sets = bast_nand_sets, | 314 | .sets = bast_nand_sets, |
315 | .select_chip = bast_nand_select, | 315 | .select_chip = bast_nand_select, |
@@ -340,7 +340,7 @@ static struct resource bast_dm9k_resource[] = { | |||
340 | * better IO routines can be written and tested | 340 | * better IO routines can be written and tested |
341 | */ | 341 | */ |
342 | 342 | ||
343 | struct dm9000_plat_data bast_dm9k_platdata = { | 343 | static struct dm9000_plat_data bast_dm9k_platdata = { |
344 | .flags = DM9000_PLATF_16BITONLY | 344 | .flags = DM9000_PLATF_16BITONLY |
345 | }; | 345 | }; |
346 | 346 | ||
diff --git a/arch/arm/mach-s3c2410/mach-vr1000.c b/arch/arm/mach-s3c2410/mach-vr1000.c index 663a7f98fc0b..46b259673c18 100644 --- a/arch/arm/mach-s3c2410/mach-vr1000.c +++ b/arch/arm/mach-s3c2410/mach-vr1000.c | |||
@@ -288,7 +288,7 @@ static struct resource vr1000_dm9k1_resource[] = { | |||
288 | * better IO routines can be written and tested | 288 | * better IO routines can be written and tested |
289 | */ | 289 | */ |
290 | 290 | ||
291 | struct dm9000_plat_data vr1000_dm9k_platdata = { | 291 | static struct dm9000_plat_data vr1000_dm9k_platdata = { |
292 | .flags = DM9000_PLATF_16BITONLY, | 292 | .flags = DM9000_PLATF_16BITONLY, |
293 | }; | 293 | }; |
294 | 294 | ||
diff --git a/arch/arm/mach-s3c2410/s3c2410.c b/arch/arm/mach-s3c2410/s3c2410.c index 0b88993dfd27..a8bf5ec82602 100644 --- a/arch/arm/mach-s3c2410/s3c2410.c +++ b/arch/arm/mach-s3c2410/s3c2410.c | |||
@@ -125,9 +125,6 @@ static struct platform_device *uart_devices[] __initdata = { | |||
125 | &s3c_uart2 | 125 | &s3c_uart2 |
126 | }; | 126 | }; |
127 | 127 | ||
128 | /* store our uart devices for the serial driver console */ | ||
129 | struct platform_device *s3c2410_uart_devices[3]; | ||
130 | |||
131 | static int s3c2410_uart_count = 0; | 128 | static int s3c2410_uart_count = 0; |
132 | 129 | ||
133 | /* uart registration process */ | 130 | /* uart registration process */ |
diff --git a/arch/arm/mach-s3c2410/s3c2440.c b/arch/arm/mach-s3c2410/s3c2440.c index d4c8281b55f6..833fa36bce05 100644 --- a/arch/arm/mach-s3c2410/s3c2440.c +++ b/arch/arm/mach-s3c2410/s3c2440.c | |||
@@ -151,7 +151,7 @@ void __init s3c2440_init_uarts(struct s3c2410_uartcfg *cfg, int no) | |||
151 | 151 | ||
152 | #ifdef CONFIG_PM | 152 | #ifdef CONFIG_PM |
153 | 153 | ||
154 | struct sleep_save s3c2440_sleep[] = { | 154 | static struct sleep_save s3c2440_sleep[] = { |
155 | SAVE_ITEM(S3C2440_DSC0), | 155 | SAVE_ITEM(S3C2440_DSC0), |
156 | SAVE_ITEM(S3C2440_DSC1), | 156 | SAVE_ITEM(S3C2440_DSC1), |
157 | SAVE_ITEM(S3C2440_GPJDAT), | 157 | SAVE_ITEM(S3C2440_GPJDAT), |
@@ -260,7 +260,7 @@ void __init s3c2440_init_clocks(int xtal) | |||
260 | * as a driver which may support both 2410 and 2440 may try and use it. | 260 | * as a driver which may support both 2410 and 2440 may try and use it. |
261 | */ | 261 | */ |
262 | 262 | ||
263 | int __init s3c2440_core_init(void) | 263 | static int __init s3c2440_core_init(void) |
264 | { | 264 | { |
265 | return sysdev_class_register(&s3c2440_sysclass); | 265 | return sysdev_class_register(&s3c2440_sysclass); |
266 | } | 266 | } |
diff --git a/arch/arm/mach-s3c2410/time.c b/arch/arm/mach-s3c2410/time.c index c0acfb2ad790..8a00e3c3cd08 100644 --- a/arch/arm/mach-s3c2410/time.c +++ b/arch/arm/mach-s3c2410/time.c | |||
@@ -38,6 +38,7 @@ | |||
38 | #include <asm/hardware/clock.h> | 38 | #include <asm/hardware/clock.h> |
39 | 39 | ||
40 | #include "clock.h" | 40 | #include "clock.h" |
41 | #include "cpu.h" | ||
41 | 42 | ||
42 | static unsigned long timer_startval; | 43 | static unsigned long timer_startval; |
43 | static unsigned long timer_usec_ticks; | 44 | static unsigned long timer_usec_ticks; |
diff --git a/arch/arm/mach-sa1100/collie.c b/arch/arm/mach-sa1100/collie.c index 25d6a4e27533..6ecab7e2c238 100644 --- a/arch/arm/mach-sa1100/collie.c +++ b/arch/arm/mach-sa1100/collie.c | |||
@@ -111,11 +111,11 @@ static struct mtd_partition collie_partitions[] = { | |||
111 | 111 | ||
112 | static void collie_set_vpp(int vpp) | 112 | static void collie_set_vpp(int vpp) |
113 | { | 113 | { |
114 | write_scoop_reg(&colliescoop_device.dev, SCOOP_GPCR, read_scoop_reg(SCOOP_GPCR) | COLLIE_SCP_VPEN); | 114 | write_scoop_reg(&colliescoop_device.dev, SCOOP_GPCR, read_scoop_reg(&colliescoop_device.dev, SCOOP_GPCR) | COLLIE_SCP_VPEN); |
115 | if (vpp) | 115 | if (vpp) |
116 | write_scoop_reg(&colliescoop_device.dev, SCOOP_GPWR, read_scoop_reg(SCOOP_GPWR) | COLLIE_SCP_VPEN); | 116 | write_scoop_reg(&colliescoop_device.dev, SCOOP_GPWR, read_scoop_reg(&colliescoop_device.dev, SCOOP_GPWR) | COLLIE_SCP_VPEN); |
117 | else | 117 | else |
118 | write_scoop_reg(&colliescoop_device.dev, SCOOP_GPWR, read_scoop_reg(SCOOP_GPWR) & ~COLLIE_SCP_VPEN); | 118 | write_scoop_reg(&colliescoop_device.dev, SCOOP_GPWR, read_scoop_reg(&colliescoop_device.dev, SCOOP_GPWR) & ~COLLIE_SCP_VPEN); |
119 | } | 119 | } |
120 | 120 | ||
121 | static struct flash_platform_data collie_flash_data = { | 121 | static struct flash_platform_data collie_flash_data = { |
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig index db5e47dfc303..c54e04c995ee 100644 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig | |||
@@ -370,21 +370,21 @@ config CPU_BIG_ENDIAN | |||
370 | 370 | ||
371 | config CPU_ICACHE_DISABLE | 371 | config CPU_ICACHE_DISABLE |
372 | bool "Disable I-Cache" | 372 | bool "Disable I-Cache" |
373 | depends on CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM1020 | 373 | depends on CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM1020 || CPU_V6 |
374 | help | 374 | help |
375 | Say Y here to disable the processor instruction cache. Unless | 375 | Say Y here to disable the processor instruction cache. Unless |
376 | you have a reason not to or are unsure, say N. | 376 | you have a reason not to or are unsure, say N. |
377 | 377 | ||
378 | config CPU_DCACHE_DISABLE | 378 | config CPU_DCACHE_DISABLE |
379 | bool "Disable D-Cache" | 379 | bool "Disable D-Cache" |
380 | depends on CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM1020 | 380 | depends on CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM1020 || CPU_V6 |
381 | help | 381 | help |
382 | Say Y here to disable the processor data cache. Unless | 382 | Say Y here to disable the processor data cache. Unless |
383 | you have a reason not to or are unsure, say N. | 383 | you have a reason not to or are unsure, say N. |
384 | 384 | ||
385 | config CPU_DCACHE_WRITETHROUGH | 385 | config CPU_DCACHE_WRITETHROUGH |
386 | bool "Force write through D-cache" | 386 | bool "Force write through D-cache" |
387 | depends on (CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM1020) && !CPU_DCACHE_DISABLE | 387 | depends on (CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM1020 || CPU_V6) && !CPU_DCACHE_DISABLE |
388 | default y if CPU_ARM925T | 388 | default y if CPU_ARM925T |
389 | help | 389 | help |
390 | Say Y here to use the data cache in writethrough mode. Unless you | 390 | Say Y here to use the data cache in writethrough mode. Unless you |
@@ -399,7 +399,7 @@ config CPU_CACHE_ROUND_ROBIN | |||
399 | 399 | ||
400 | config CPU_BPREDICT_DISABLE | 400 | config CPU_BPREDICT_DISABLE |
401 | bool "Disable branch prediction" | 401 | bool "Disable branch prediction" |
402 | depends on CPU_ARM1020 | 402 | depends on CPU_ARM1020 || CPU_V6 |
403 | help | 403 | help |
404 | Say Y here to disable branch prediction. If unsure, say N. | 404 | Say Y here to disable branch prediction. If unsure, say N. |
405 | 405 | ||
diff --git a/arch/arm/mm/alignment.c b/arch/arm/mm/alignment.c index 4b39d867ac14..705c98921c37 100644 --- a/arch/arm/mm/alignment.c +++ b/arch/arm/mm/alignment.c | |||
@@ -111,7 +111,7 @@ proc_alignment_read(char *page, char **start, off_t off, int count, int *eof, | |||
111 | } | 111 | } |
112 | 112 | ||
113 | static int proc_alignment_write(struct file *file, const char __user *buffer, | 113 | static int proc_alignment_write(struct file *file, const char __user *buffer, |
114 | unsigned long count, void *data) | 114 | unsigned long count, void *data) |
115 | { | 115 | { |
116 | char mode; | 116 | char mode; |
117 | 117 | ||
@@ -119,7 +119,7 @@ static int proc_alignment_write(struct file *file, const char __user *buffer, | |||
119 | if (get_user(mode, buffer)) | 119 | if (get_user(mode, buffer)) |
120 | return -EFAULT; | 120 | return -EFAULT; |
121 | if (mode >= '0' && mode <= '5') | 121 | if (mode >= '0' && mode <= '5') |
122 | ai_usermode = mode - '0'; | 122 | ai_usermode = mode - '0'; |
123 | } | 123 | } |
124 | return count; | 124 | return count; |
125 | } | 125 | } |
@@ -262,7 +262,7 @@ union offset_union { | |||
262 | goto fault; \ | 262 | goto fault; \ |
263 | } while (0) | 263 | } while (0) |
264 | 264 | ||
265 | #define put32_unaligned_check(val,addr) \ | 265 | #define put32_unaligned_check(val,addr) \ |
266 | __put32_unaligned_check("strb", val, addr) | 266 | __put32_unaligned_check("strb", val, addr) |
267 | 267 | ||
268 | #define put32t_unaligned_check(val,addr) \ | 268 | #define put32t_unaligned_check(val,addr) \ |
@@ -306,19 +306,19 @@ do_alignment_ldrhstrh(unsigned long addr, unsigned long instr, struct pt_regs *r | |||
306 | return TYPE_LDST; | 306 | return TYPE_LDST; |
307 | 307 | ||
308 | user: | 308 | user: |
309 | if (LDST_L_BIT(instr)) { | 309 | if (LDST_L_BIT(instr)) { |
310 | unsigned long val; | 310 | unsigned long val; |
311 | get16t_unaligned_check(val, addr); | 311 | get16t_unaligned_check(val, addr); |
312 | 312 | ||
313 | /* signed half-word? */ | 313 | /* signed half-word? */ |
314 | if (instr & 0x40) | 314 | if (instr & 0x40) |
315 | val = (signed long)((signed short) val); | 315 | val = (signed long)((signed short) val); |
316 | 316 | ||
317 | regs->uregs[rd] = val; | 317 | regs->uregs[rd] = val; |
318 | } else | 318 | } else |
319 | put16t_unaligned_check(regs->uregs[rd], addr); | 319 | put16t_unaligned_check(regs->uregs[rd], addr); |
320 | 320 | ||
321 | return TYPE_LDST; | 321 | return TYPE_LDST; |
322 | 322 | ||
323 | fault: | 323 | fault: |
324 | return TYPE_FAULT; | 324 | return TYPE_FAULT; |
@@ -330,6 +330,9 @@ do_alignment_ldrdstrd(unsigned long addr, unsigned long instr, | |||
330 | { | 330 | { |
331 | unsigned int rd = RD_BITS(instr); | 331 | unsigned int rd = RD_BITS(instr); |
332 | 332 | ||
333 | if (((rd & 1) == 1) || (rd == 14)) | ||
334 | goto bad; | ||
335 | |||
333 | ai_dword += 1; | 336 | ai_dword += 1; |
334 | 337 | ||
335 | if (user_mode(regs)) | 338 | if (user_mode(regs)) |
@@ -339,11 +342,11 @@ do_alignment_ldrdstrd(unsigned long addr, unsigned long instr, | |||
339 | unsigned long val; | 342 | unsigned long val; |
340 | get32_unaligned_check(val, addr); | 343 | get32_unaligned_check(val, addr); |
341 | regs->uregs[rd] = val; | 344 | regs->uregs[rd] = val; |
342 | get32_unaligned_check(val, addr+4); | 345 | get32_unaligned_check(val, addr + 4); |
343 | regs->uregs[rd+1] = val; | 346 | regs->uregs[rd + 1] = val; |
344 | } else { | 347 | } else { |
345 | put32_unaligned_check(regs->uregs[rd], addr); | 348 | put32_unaligned_check(regs->uregs[rd], addr); |
346 | put32_unaligned_check(regs->uregs[rd+1], addr+4); | 349 | put32_unaligned_check(regs->uregs[rd + 1], addr + 4); |
347 | } | 350 | } |
348 | 351 | ||
349 | return TYPE_LDST; | 352 | return TYPE_LDST; |
@@ -353,15 +356,16 @@ do_alignment_ldrdstrd(unsigned long addr, unsigned long instr, | |||
353 | unsigned long val; | 356 | unsigned long val; |
354 | get32t_unaligned_check(val, addr); | 357 | get32t_unaligned_check(val, addr); |
355 | regs->uregs[rd] = val; | 358 | regs->uregs[rd] = val; |
356 | get32t_unaligned_check(val, addr+4); | 359 | get32t_unaligned_check(val, addr + 4); |
357 | regs->uregs[rd+1] = val; | 360 | regs->uregs[rd + 1] = val; |
358 | } else { | 361 | } else { |
359 | put32t_unaligned_check(regs->uregs[rd], addr); | 362 | put32t_unaligned_check(regs->uregs[rd], addr); |
360 | put32t_unaligned_check(regs->uregs[rd+1], addr+4); | 363 | put32t_unaligned_check(regs->uregs[rd + 1], addr + 4); |
361 | } | 364 | } |
362 | 365 | ||
363 | return TYPE_LDST; | 366 | return TYPE_LDST; |
364 | 367 | bad: | |
368 | return TYPE_ERROR; | ||
365 | fault: | 369 | fault: |
366 | return TYPE_FAULT; | 370 | return TYPE_FAULT; |
367 | } | 371 | } |
@@ -439,7 +443,7 @@ do_alignment_ldmstm(unsigned long addr, unsigned long instr, struct pt_regs *reg | |||
439 | if (LDST_P_EQ_U(instr)) /* U = P */ | 443 | if (LDST_P_EQ_U(instr)) /* U = P */ |
440 | eaddr += 4; | 444 | eaddr += 4; |
441 | 445 | ||
442 | /* | 446 | /* |
443 | * For alignment faults on the ARM922T/ARM920T the MMU makes | 447 | * For alignment faults on the ARM922T/ARM920T the MMU makes |
444 | * the FSR (and hence addr) equal to the updated base address | 448 | * the FSR (and hence addr) equal to the updated base address |
445 | * of the multiple access rather than the restored value. | 449 | * of the multiple access rather than the restored value. |
@@ -566,7 +570,7 @@ thumb2arm(u16 tinstr) | |||
566 | /* 6.5.1 Format 3: */ | 570 | /* 6.5.1 Format 3: */ |
567 | case 0x4800 >> 11: /* 7.1.28 LDR(3) */ | 571 | case 0x4800 >> 11: /* 7.1.28 LDR(3) */ |
568 | /* NOTE: This case is not technically possible. We're | 572 | /* NOTE: This case is not technically possible. We're |
569 | * loading 32-bit memory data via PC relative | 573 | * loading 32-bit memory data via PC relative |
570 | * addressing mode. So we can and should eliminate | 574 | * addressing mode. So we can and should eliminate |
571 | * this case. But I'll leave it here for now. | 575 | * this case. But I'll leave it here for now. |
572 | */ | 576 | */ |
@@ -638,7 +642,7 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
638 | 642 | ||
639 | if (fault) { | 643 | if (fault) { |
640 | type = TYPE_FAULT; | 644 | type = TYPE_FAULT; |
641 | goto bad_or_fault; | 645 | goto bad_or_fault; |
642 | } | 646 | } |
643 | 647 | ||
644 | if (user_mode(regs)) | 648 | if (user_mode(regs)) |
@@ -663,6 +667,8 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
663 | else if ((instr & 0x001000f0) == 0x000000d0 || /* LDRD */ | 667 | else if ((instr & 0x001000f0) == 0x000000d0 || /* LDRD */ |
664 | (instr & 0x001000f0) == 0x000000f0) /* STRD */ | 668 | (instr & 0x001000f0) == 0x000000f0) /* STRD */ |
665 | handler = do_alignment_ldrdstrd; | 669 | handler = do_alignment_ldrdstrd; |
670 | else if ((instr & 0x01f00ff0) == 0x01000090) /* SWP */ | ||
671 | goto swp; | ||
666 | else | 672 | else |
667 | goto bad; | 673 | goto bad; |
668 | break; | 674 | break; |
@@ -733,6 +739,9 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
733 | do_bad_area(current, current->mm, addr, fsr, regs); | 739 | do_bad_area(current, current->mm, addr, fsr, regs); |
734 | return 0; | 740 | return 0; |
735 | 741 | ||
742 | swp: | ||
743 | printk(KERN_ERR "Alignment trap: not handling swp instruction\n"); | ||
744 | |||
736 | bad: | 745 | bad: |
737 | /* | 746 | /* |
738 | * Oops, we didn't handle the instruction. | 747 | * Oops, we didn't handle the instruction. |
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S index caf3b19b167f..9bb5fff406fb 100644 --- a/arch/arm/mm/proc-v6.S +++ b/arch/arm/mm/proc-v6.S | |||
@@ -55,7 +55,14 @@ ENTRY(cpu_v6_proc_init) | |||
55 | mov pc, lr | 55 | mov pc, lr |
56 | 56 | ||
57 | ENTRY(cpu_v6_proc_fin) | 57 | ENTRY(cpu_v6_proc_fin) |
58 | mov pc, lr | 58 | stmfd sp!, {lr} |
59 | cpsid if @ disable interrupts | ||
60 | bl v6_flush_kern_cache_all | ||
61 | mrc p15, 0, r0, c1, c0, 0 @ ctrl register | ||
62 | bic r0, r0, #0x1000 @ ...i............ | ||
63 | bic r0, r0, #0x0006 @ .............ca. | ||
64 | mcr p15, 0, r0, c1, c0, 0 @ disable caches | ||
65 | ldmfd sp!, {pc} | ||
59 | 66 | ||
60 | /* | 67 | /* |
61 | * cpu_v6_reset(loc) | 68 | * cpu_v6_reset(loc) |
diff --git a/arch/arm/nwfpe/fpa11.c b/arch/arm/nwfpe/fpa11.c index 7690f731ee87..7b3d74d73c80 100644 --- a/arch/arm/nwfpe/fpa11.c +++ b/arch/arm/nwfpe/fpa11.c | |||
@@ -31,11 +31,6 @@ | |||
31 | #include <linux/string.h> | 31 | #include <linux/string.h> |
32 | #include <asm/system.h> | 32 | #include <asm/system.h> |
33 | 33 | ||
34 | /* forward declarations */ | ||
35 | unsigned int EmulateCPDO(const unsigned int); | ||
36 | unsigned int EmulateCPDT(const unsigned int); | ||
37 | unsigned int EmulateCPRT(const unsigned int); | ||
38 | |||
39 | /* Reset the FPA11 chip. Called to initialize and reset the emulator. */ | 34 | /* Reset the FPA11 chip. Called to initialize and reset the emulator. */ |
40 | static void resetFPA11(void) | 35 | static void resetFPA11(void) |
41 | { | 36 | { |
diff --git a/arch/arm/nwfpe/fpa11.h b/arch/arm/nwfpe/fpa11.h index 93523ae4b7a1..9677ae8448e8 100644 --- a/arch/arm/nwfpe/fpa11.h +++ b/arch/arm/nwfpe/fpa11.h | |||
@@ -95,4 +95,24 @@ extern int8 SetRoundingMode(const unsigned int); | |||
95 | extern int8 SetRoundingPrecision(const unsigned int); | 95 | extern int8 SetRoundingPrecision(const unsigned int); |
96 | extern void nwfpe_init_fpa(union fp_state *fp); | 96 | extern void nwfpe_init_fpa(union fp_state *fp); |
97 | 97 | ||
98 | extern unsigned int EmulateAll(unsigned int opcode); | ||
99 | |||
100 | extern unsigned int EmulateCPDT(const unsigned int opcode); | ||
101 | extern unsigned int EmulateCPDO(const unsigned int opcode); | ||
102 | extern unsigned int EmulateCPRT(const unsigned int opcode); | ||
103 | |||
104 | /* fpa11_cpdt.c */ | ||
105 | extern unsigned int PerformLDF(const unsigned int opcode); | ||
106 | extern unsigned int PerformSTF(const unsigned int opcode); | ||
107 | extern unsigned int PerformLFM(const unsigned int opcode); | ||
108 | extern unsigned int PerformSFM(const unsigned int opcode); | ||
109 | |||
110 | /* single_cpdo.c */ | ||
111 | |||
112 | extern unsigned int SingleCPDO(struct roundingData *roundData, | ||
113 | const unsigned int opcode, FPREG * rFd); | ||
114 | /* double_cpdo.c */ | ||
115 | extern unsigned int DoubleCPDO(struct roundingData *roundData, | ||
116 | const unsigned int opcode, FPREG * rFd); | ||
117 | |||
98 | #endif | 118 | #endif |
diff --git a/arch/arm/nwfpe/fpa11_cprt.c b/arch/arm/nwfpe/fpa11_cprt.c index adf8d3000540..7c67023655e4 100644 --- a/arch/arm/nwfpe/fpa11_cprt.c +++ b/arch/arm/nwfpe/fpa11_cprt.c | |||
@@ -26,12 +26,11 @@ | |||
26 | #include "fpa11.inl" | 26 | #include "fpa11.inl" |
27 | #include "fpmodule.h" | 27 | #include "fpmodule.h" |
28 | #include "fpmodule.inl" | 28 | #include "fpmodule.inl" |
29 | #include "softfloat.h" | ||
29 | 30 | ||
30 | #ifdef CONFIG_FPE_NWFPE_XP | 31 | #ifdef CONFIG_FPE_NWFPE_XP |
31 | extern flag floatx80_is_nan(floatx80); | 32 | extern flag floatx80_is_nan(floatx80); |
32 | #endif | 33 | #endif |
33 | extern flag float64_is_nan(float64); | ||
34 | extern flag float32_is_nan(float32); | ||
35 | 34 | ||
36 | unsigned int PerformFLT(const unsigned int opcode); | 35 | unsigned int PerformFLT(const unsigned int opcode); |
37 | unsigned int PerformFIX(const unsigned int opcode); | 36 | unsigned int PerformFIX(const unsigned int opcode); |
diff --git a/arch/arm/nwfpe/fpopcode.h b/arch/arm/nwfpe/fpopcode.h index 1777e92a88e6..6528e081c83f 100644 --- a/arch/arm/nwfpe/fpopcode.h +++ b/arch/arm/nwfpe/fpopcode.h | |||
@@ -476,4 +476,10 @@ static inline unsigned int getDestinationSize(const unsigned int opcode) | |||
476 | return (nRc); | 476 | return (nRc); |
477 | } | 477 | } |
478 | 478 | ||
479 | extern unsigned int checkCondition(const unsigned int opcode, | ||
480 | const unsigned int ccodes); | ||
481 | |||
482 | extern const float64 float64Constant[]; | ||
483 | extern const float32 float32Constant[]; | ||
484 | |||
479 | #endif | 485 | #endif |
diff --git a/arch/arm/nwfpe/softfloat.h b/arch/arm/nwfpe/softfloat.h index 1c8799b9ee4d..14151700b6b2 100644 --- a/arch/arm/nwfpe/softfloat.h +++ b/arch/arm/nwfpe/softfloat.h | |||
@@ -265,4 +265,7 @@ static inline flag float64_lt_nocheck(float64 a, float64 b) | |||
265 | return (a != b) && (aSign ^ (a < b)); | 265 | return (a != b) && (aSign ^ (a < b)); |
266 | } | 266 | } |
267 | 267 | ||
268 | extern flag float32_is_nan( float32 a ); | ||
269 | extern flag float64_is_nan( float64 a ); | ||
270 | |||
268 | #endif | 271 | #endif |
diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types index 6d3a79e5fef8..ae7c64b8cec3 100644 --- a/arch/arm/tools/mach-types +++ b/arch/arm/tools/mach-types | |||
@@ -2,11 +2,17 @@ | |||
2 | # | 2 | # |
3 | # This file is linux/arch/arm/tools/mach-types | 3 | # This file is linux/arch/arm/tools/mach-types |
4 | # | 4 | # |
5 | # Up to date versions of this file can be obtained from: | ||
6 | # | ||
7 | # http://www.arm.linux.org.uk/developer/machines/?action=download | ||
8 | # | ||
5 | # Please do not send patches to this file; it is automatically generated! | 9 | # Please do not send patches to this file; it is automatically generated! |
6 | # To add an entry into this database, please see Documentation/arm/README, | 10 | # To add an entry into this database, please see Documentation/arm/README, |
7 | # or contact rmk@arm.linux.org.uk | 11 | # or visit: |
12 | # | ||
13 | # http://www.arm.linux.org.uk/developer/machines/?action=new | ||
8 | # | 14 | # |
9 | # Last update: Thu Jun 23 20:19:33 2005 | 15 | # Last update: Mon Oct 10 09:46:25 2005 |
10 | # | 16 | # |
11 | # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number | 17 | # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number |
12 | # | 18 | # |
@@ -421,7 +427,7 @@ mt02 MACH_MT02 MT02 410 | |||
421 | mport3s MACH_MPORT3S MPORT3S 411 | 427 | mport3s MACH_MPORT3S MPORT3S 411 |
422 | ra_alpha MACH_RA_ALPHA RA_ALPHA 412 | 428 | ra_alpha MACH_RA_ALPHA RA_ALPHA 412 |
423 | xcep MACH_XCEP XCEP 413 | 429 | xcep MACH_XCEP XCEP 413 |
424 | arcom_mercury MACH_ARCOM_MERCURY ARCOM_MERCURY 414 | 430 | arcom_vulcan MACH_ARCOM_VULCAN ARCOM_VULCAN 414 |
425 | stargate MACH_STARGATE STARGATE 415 | 431 | stargate MACH_STARGATE STARGATE 415 |
426 | armadilloj MACH_ARMADILLOJ ARMADILLOJ 416 | 432 | armadilloj MACH_ARMADILLOJ ARMADILLOJ 416 |
427 | elroy_jack MACH_ELROY_JACK ELROY_JACK 417 | 433 | elroy_jack MACH_ELROY_JACK ELROY_JACK 417 |
@@ -454,7 +460,7 @@ esl_sarva MACH_ESL_SARVA ESL_SARVA 443 | |||
454 | xm250 MACH_XM250 XM250 444 | 460 | xm250 MACH_XM250 XM250 444 |
455 | t6tc1xb MACH_T6TC1XB T6TC1XB 445 | 461 | t6tc1xb MACH_T6TC1XB T6TC1XB 445 |
456 | ess710 MACH_ESS710 ESS710 446 | 462 | ess710 MACH_ESS710 ESS710 446 |
457 | mx3ads MACH_MX3ADS MX3ADS 447 | 463 | mx31ads MACH_MX3ADS MX3ADS 447 |
458 | himalaya MACH_HIMALAYA HIMALAYA 448 | 464 | himalaya MACH_HIMALAYA HIMALAYA 448 |
459 | bolfenk MACH_BOLFENK BOLFENK 449 | 465 | bolfenk MACH_BOLFENK BOLFENK 449 |
460 | at91rm9200kr MACH_AT91RM9200KR AT91RM9200KR 450 | 466 | at91rm9200kr MACH_AT91RM9200KR AT91RM9200KR 450 |
@@ -787,3 +793,79 @@ ez_ixp42x MACH_EZ_IXP42X EZ_IXP42X 778 | |||
787 | tapwave_zodiac MACH_TAPWAVE_ZODIAC TAPWAVE_ZODIAC 779 | 793 | tapwave_zodiac MACH_TAPWAVE_ZODIAC TAPWAVE_ZODIAC 779 |
788 | universalmeter MACH_UNIVERSALMETER UNIVERSALMETER 780 | 794 | universalmeter MACH_UNIVERSALMETER UNIVERSALMETER 780 |
789 | hicoarm9 MACH_HICOARM9 HICOARM9 781 | 795 | hicoarm9 MACH_HICOARM9 HICOARM9 781 |
796 | pnx4008 MACH_PNX4008 PNX4008 782 | ||
797 | kws6000 MACH_KWS6000 KWS6000 783 | ||
798 | portux920t MACH_PORTUX920T PORTUX920T 784 | ||
799 | ez_x5 MACH_EZ_X5 EZ_X5 785 | ||
800 | omap_rudolph MACH_OMAP_RUDOLPH OMAP_RUDOLPH 786 | ||
801 | cpuat91 MACH_CPUAT91 CPUAT91 787 | ||
802 | rea9200 MACH_REA9200 REA9200 788 | ||
803 | acts_pune_sa1110 MACH_ACTS_PUNE_SA1110 ACTS_PUNE_SA1110 789 | ||
804 | ixp425 MACH_IXP425 IXP425 790 | ||
805 | argonplusodyssey MACH_ODYSSEY ODYSSEY 791 | ||
806 | perch MACH_PERCH PERCH 792 | ||
807 | eis05r1 MACH_EIS05R1 EIS05R1 793 | ||
808 | pepperpad MACH_PEPPERPAD PEPPERPAD 794 | ||
809 | sb3010 MACH_SB3010 SB3010 795 | ||
810 | rm9200 MACH_RM9200 RM9200 796 | ||
811 | dma03 MACH_DMA03 DMA03 797 | ||
812 | road_s101 MACH_ROAD_S101 ROAD_S101 798 | ||
813 | iq_nextgen_a MACH_IQ_NEXTGEN_A IQ_NEXTGEN_A 799 | ||
814 | iq_nextgen_b MACH_IQ_NEXTGEN_B IQ_NEXTGEN_B 800 | ||
815 | iq_nextgen_c MACH_IQ_NEXTGEN_C IQ_NEXTGEN_C 801 | ||
816 | iq_nextgen_d MACH_IQ_NEXTGEN_D IQ_NEXTGEN_D 802 | ||
817 | iq_nextgen_e MACH_IQ_NEXTGEN_E IQ_NEXTGEN_E 803 | ||
818 | mallow_at91 MACH_MALLOW_AT91 MALLOW_AT91 804 | ||
819 | cybertracker MACH_CYBERTRACKER CYBERTRACKER 805 | ||
820 | gesbc931x MACH_GESBC931X GESBC931X 806 | ||
821 | centipad MACH_CENTIPAD CENTIPAD 807 | ||
822 | armsoc MACH_ARMSOC ARMSOC 808 | ||
823 | se4200 MACH_SE4200 SE4200 809 | ||
824 | ems197a MACH_EMS197A EMS197A 810 | ||
825 | micro9 MACH_MICRO9 MICRO9 811 | ||
826 | micro9l MACH_MICRO9L MICRO9L 812 | ||
827 | uc5471dsp MACH_UC5471DSP UC5471DSP 813 | ||
828 | sj5471eng MACH_SJ5471ENG SJ5471ENG 814 | ||
829 | none MACH_CMPXA26X CMPXA26X 815 | ||
830 | nc MACH_NC NC 816 | ||
831 | omap_palmte MACH_OMAP_PALMTE OMAP_PALMTE 817 | ||
832 | ajax52x MACH_AJAX52X AJAX52X 818 | ||
833 | siriustar MACH_SIRIUSTAR SIRIUSTAR 819 | ||
834 | iodata_hdlg MACH_IODATA_HDLG IODATA_HDLG 820 | ||
835 | at91rm9200utl MACH_AT91RM9200UTL AT91RM9200UTL 821 | ||
836 | biosafe MACH_BIOSAFE BIOSAFE 822 | ||
837 | mp1000 MACH_MP1000 MP1000 823 | ||
838 | parsy MACH_PARSY PARSY 824 | ||
839 | ccxp270 MACH_CCXP CCXP 825 | ||
840 | omap_gsample MACH_OMAP_GSAMPLE OMAP_GSAMPLE 826 | ||
841 | realview_eb MACH_REALVIEW_EB REALVIEW_EB 827 | ||
842 | samoa MACH_SAMOA SAMOA 828 | ||
843 | t3xscale MACH_T3XSCALE T3XSCALE 829 | ||
844 | i878 MACH_I878 I878 830 | ||
845 | borzoi MACH_BORZOI BORZOI 831 | ||
846 | gecko MACH_GECKO GECKO 832 | ||
847 | ds101 MACH_DS101 DS101 833 | ||
848 | omap_palmtt2 MACH_OMAP_PALMTT2 OMAP_PALMTT2 834 | ||
849 | xscale_palmld MACH_XSCALE_PALMLD XSCALE_PALMLD 835 | ||
850 | cc9c MACH_CC9C CC9C 836 | ||
851 | sbc1670 MACH_SBC1670 SBC1670 837 | ||
852 | ixdp28x5 MACH_IXDP28X5 IXDP28X5 838 | ||
853 | omap_palmtt MACH_OMAP_PALMTT OMAP_PALMTT 839 | ||
854 | ml696k MACH_ML696K ML696K 840 | ||
855 | arcom_zeus MACH_ARCOM_ZEUS ARCOM_ZEUS 841 | ||
856 | osiris MACH_OSIRIS OSIRIS 842 | ||
857 | maestro MACH_MAESTRO MAESTRO 843 | ||
858 | tunge2 MACH_TUNGE2 TUNGE2 844 | ||
859 | ixbbm MACH_IXBBM IXBBM 845 | ||
860 | mx27 MACH_MX27 MX27 846 | ||
861 | ax8004 MACH_AX8004 AX8004 847 | ||
862 | at91sam9261ek MACH_AT91SAM9261EK AT91SAM9261EK 848 | ||
863 | loft MACH_LOFT LOFT 849 | ||
864 | magpie MACH_MAGPIE MAGPIE 850 | ||
865 | mx21 MACH_MX21 MX21 851 | ||
866 | mb87m3400 MACH_MB87M3400 MB87M3400 852 | ||
867 | mguard_delta MACH_MGUARD_DELTA MGUARD_DELTA 853 | ||
868 | davinci_dvdp MACH_DAVINCI_DVDP DAVINCI_DVDP 854 | ||
869 | htcuniversal MACH_HTCUNIVERSAL HTCUNIVERSAL 855 | ||
870 | tpad MACH_TPAD TPAD 856 | ||
871 | roverp3 MACH_ROVERP3 ROVERP3 857 | ||
diff --git a/arch/cris/arch-v32/drivers/pci/dma.c b/arch/cris/arch-v32/drivers/pci/dma.c index 10329306d23c..426b09878a05 100644 --- a/arch/cris/arch-v32/drivers/pci/dma.c +++ b/arch/cris/arch-v32/drivers/pci/dma.c | |||
@@ -24,7 +24,7 @@ struct dma_coherent_mem { | |||
24 | }; | 24 | }; |
25 | 25 | ||
26 | void *dma_alloc_coherent(struct device *dev, size_t size, | 26 | void *dma_alloc_coherent(struct device *dev, size_t size, |
27 | dma_addr_t *dma_handle, unsigned int __nocast gfp) | 27 | dma_addr_t *dma_handle, gfp_t gfp) |
28 | { | 28 | { |
29 | void *ret; | 29 | void *ret; |
30 | struct dma_coherent_mem *mem = dev ? dev->dma_mem : NULL; | 30 | struct dma_coherent_mem *mem = dev ? dev->dma_mem : NULL; |
diff --git a/arch/cris/arch-v32/kernel/smp.c b/arch/cris/arch-v32/kernel/smp.c index 2c5cae04a95c..957f551ba5ce 100644 --- a/arch/cris/arch-v32/kernel/smp.c +++ b/arch/cris/arch-v32/kernel/smp.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
16 | #include <linux/cpumask.h> | 16 | #include <linux/cpumask.h> |
17 | #include <linux/interrupt.h> | 17 | #include <linux/interrupt.h> |
18 | #include <linux/module.h> | ||
18 | 19 | ||
19 | #define IPI_SCHEDULE 1 | 20 | #define IPI_SCHEDULE 1 |
20 | #define IPI_CALL 2 | 21 | #define IPI_CALL 2 |
@@ -28,6 +29,7 @@ spinlock_t cris_atomic_locks[] = { [0 ... LOCK_COUNT - 1] = SPIN_LOCK_UNLOCKED}; | |||
28 | /* CPU masks */ | 29 | /* CPU masks */ |
29 | cpumask_t cpu_online_map = CPU_MASK_NONE; | 30 | cpumask_t cpu_online_map = CPU_MASK_NONE; |
30 | cpumask_t phys_cpu_present_map = CPU_MASK_NONE; | 31 | cpumask_t phys_cpu_present_map = CPU_MASK_NONE; |
32 | EXPORT_SYMBOL(phys_cpu_present_map); | ||
31 | 33 | ||
32 | /* Variables used during SMP boot */ | 34 | /* Variables used during SMP boot */ |
33 | volatile int cpu_now_booting = 0; | 35 | volatile int cpu_now_booting = 0; |
diff --git a/arch/i386/kernel/cpu/amd.c b/arch/i386/kernel/cpu/amd.c index 4c1ddf2b57cc..53a1681cd964 100644 --- a/arch/i386/kernel/cpu/amd.c +++ b/arch/i386/kernel/cpu/amd.c | |||
@@ -29,7 +29,7 @@ static void __init init_amd(struct cpuinfo_x86 *c) | |||
29 | int r; | 29 | int r; |
30 | 30 | ||
31 | #ifdef CONFIG_SMP | 31 | #ifdef CONFIG_SMP |
32 | unsigned long value; | 32 | unsigned long long value; |
33 | 33 | ||
34 | /* Disable TLB flush filter by setting HWCR.FFDIS on K8 | 34 | /* Disable TLB flush filter by setting HWCR.FFDIS on K8 |
35 | * bit 6 of msr C001_0015 | 35 | * bit 6 of msr C001_0015 |
diff --git a/arch/i386/kernel/cpu/cpufreq/powernow-k8.c b/arch/i386/kernel/cpu/cpufreq/powernow-k8.c index ab6e0611303d..58ca98fdc2ca 100644 --- a/arch/i386/kernel/cpu/cpufreq/powernow-k8.c +++ b/arch/i386/kernel/cpu/cpufreq/powernow-k8.c | |||
@@ -44,7 +44,7 @@ | |||
44 | 44 | ||
45 | #define PFX "powernow-k8: " | 45 | #define PFX "powernow-k8: " |
46 | #define BFX PFX "BIOS error: " | 46 | #define BFX PFX "BIOS error: " |
47 | #define VERSION "version 1.50.3" | 47 | #define VERSION "version 1.50.4" |
48 | #include "powernow-k8.h" | 48 | #include "powernow-k8.h" |
49 | 49 | ||
50 | /* serialize freq changes */ | 50 | /* serialize freq changes */ |
@@ -111,8 +111,8 @@ static int query_current_values_with_pending_wait(struct powernow_k8_data *data) | |||
111 | u32 i = 0; | 111 | u32 i = 0; |
112 | 112 | ||
113 | do { | 113 | do { |
114 | if (i++ > 0x1000000) { | 114 | if (i++ > 10000) { |
115 | printk(KERN_ERR PFX "detected change pending stuck\n"); | 115 | dprintk("detected change pending stuck\n"); |
116 | return 1; | 116 | return 1; |
117 | } | 117 | } |
118 | rdmsr(MSR_FIDVID_STATUS, lo, hi); | 118 | rdmsr(MSR_FIDVID_STATUS, lo, hi); |
@@ -159,6 +159,7 @@ static int write_new_fid(struct powernow_k8_data *data, u32 fid) | |||
159 | { | 159 | { |
160 | u32 lo; | 160 | u32 lo; |
161 | u32 savevid = data->currvid; | 161 | u32 savevid = data->currvid; |
162 | u32 i = 0; | ||
162 | 163 | ||
163 | if ((fid & INVALID_FID_MASK) || (data->currvid & INVALID_VID_MASK)) { | 164 | if ((fid & INVALID_FID_MASK) || (data->currvid & INVALID_VID_MASK)) { |
164 | printk(KERN_ERR PFX "internal error - overflow on fid write\n"); | 165 | printk(KERN_ERR PFX "internal error - overflow on fid write\n"); |
@@ -170,10 +171,13 @@ static int write_new_fid(struct powernow_k8_data *data, u32 fid) | |||
170 | dprintk("writing fid 0x%x, lo 0x%x, hi 0x%x\n", | 171 | dprintk("writing fid 0x%x, lo 0x%x, hi 0x%x\n", |
171 | fid, lo, data->plllock * PLL_LOCK_CONVERSION); | 172 | fid, lo, data->plllock * PLL_LOCK_CONVERSION); |
172 | 173 | ||
173 | wrmsr(MSR_FIDVID_CTL, lo, data->plllock * PLL_LOCK_CONVERSION); | 174 | do { |
174 | 175 | wrmsr(MSR_FIDVID_CTL, lo, data->plllock * PLL_LOCK_CONVERSION); | |
175 | if (query_current_values_with_pending_wait(data)) | 176 | if (i++ > 100) { |
176 | return 1; | 177 | printk(KERN_ERR PFX "internal error - pending bit very stuck - no further pstate changes possible\n"); |
178 | return 1; | ||
179 | } | ||
180 | } while (query_current_values_with_pending_wait(data)); | ||
177 | 181 | ||
178 | count_off_irt(data); | 182 | count_off_irt(data); |
179 | 183 | ||
@@ -197,6 +201,7 @@ static int write_new_vid(struct powernow_k8_data *data, u32 vid) | |||
197 | { | 201 | { |
198 | u32 lo; | 202 | u32 lo; |
199 | u32 savefid = data->currfid; | 203 | u32 savefid = data->currfid; |
204 | int i = 0; | ||
200 | 205 | ||
201 | if ((data->currfid & INVALID_FID_MASK) || (vid & INVALID_VID_MASK)) { | 206 | if ((data->currfid & INVALID_FID_MASK) || (vid & INVALID_VID_MASK)) { |
202 | printk(KERN_ERR PFX "internal error - overflow on vid write\n"); | 207 | printk(KERN_ERR PFX "internal error - overflow on vid write\n"); |
@@ -208,10 +213,13 @@ static int write_new_vid(struct powernow_k8_data *data, u32 vid) | |||
208 | dprintk("writing vid 0x%x, lo 0x%x, hi 0x%x\n", | 213 | dprintk("writing vid 0x%x, lo 0x%x, hi 0x%x\n", |
209 | vid, lo, STOP_GRANT_5NS); | 214 | vid, lo, STOP_GRANT_5NS); |
210 | 215 | ||
211 | wrmsr(MSR_FIDVID_CTL, lo, STOP_GRANT_5NS); | 216 | do { |
212 | 217 | wrmsr(MSR_FIDVID_CTL, lo, STOP_GRANT_5NS); | |
213 | if (query_current_values_with_pending_wait(data)) | 218 | if (i++ > 100) { |
214 | return 1; | 219 | printk(KERN_ERR PFX "internal error - pending bit very stuck - no further pstate changes possible\n"); |
220 | return 1; | ||
221 | } | ||
222 | } while (query_current_values_with_pending_wait(data)); | ||
215 | 223 | ||
216 | if (savefid != data->currfid) { | 224 | if (savefid != data->currfid) { |
217 | printk(KERN_ERR PFX "fid changed on vid trans, old 0x%x new 0x%x\n", | 225 | printk(KERN_ERR PFX "fid changed on vid trans, old 0x%x new 0x%x\n", |
diff --git a/arch/i386/kernel/pci-dma.c b/arch/i386/kernel/pci-dma.c index 1e51427cc9eb..25fe66853934 100644 --- a/arch/i386/kernel/pci-dma.c +++ b/arch/i386/kernel/pci-dma.c | |||
@@ -23,7 +23,7 @@ struct dma_coherent_mem { | |||
23 | }; | 23 | }; |
24 | 24 | ||
25 | void *dma_alloc_coherent(struct device *dev, size_t size, | 25 | void *dma_alloc_coherent(struct device *dev, size_t size, |
26 | dma_addr_t *dma_handle, unsigned int __nocast gfp) | 26 | dma_addr_t *dma_handle, gfp_t gfp) |
27 | { | 27 | { |
28 | void *ret; | 28 | void *ret; |
29 | struct dma_coherent_mem *mem = dev ? dev->dma_mem : NULL; | 29 | struct dma_coherent_mem *mem = dev ? dev->dma_mem : NULL; |
diff --git a/arch/i386/kernel/signal.c b/arch/i386/kernel/signal.c index 61eb0c8a6e47..adcd069db91e 100644 --- a/arch/i386/kernel/signal.c +++ b/arch/i386/kernel/signal.c | |||
@@ -338,7 +338,11 @@ get_sigframe(struct k_sigaction *ka, struct pt_regs * regs, size_t frame_size) | |||
338 | esp = (unsigned long) ka->sa.sa_restorer; | 338 | esp = (unsigned long) ka->sa.sa_restorer; |
339 | } | 339 | } |
340 | 340 | ||
341 | return (void __user *)((esp - frame_size) & -8ul); | 341 | esp -= frame_size; |
342 | /* Align the stack pointer according to the i386 ABI, | ||
343 | * i.e. so that on function entry ((sp + 4) & 15) == 0. */ | ||
344 | esp = ((esp + 4) & -16ul) - 4; | ||
345 | return (void __user *) esp; | ||
342 | } | 346 | } |
343 | 347 | ||
344 | /* These symbols are defined with the addresses in the vsyscall page. | 348 | /* These symbols are defined with the addresses in the vsyscall page. |
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig index a86236d6ba5d..1642375fb14e 100644 --- a/arch/ia64/Kconfig +++ b/arch/ia64/Kconfig | |||
@@ -220,8 +220,8 @@ config SMP | |||
220 | If you don't know what to do here, say N. | 220 | If you don't know what to do here, say N. |
221 | 221 | ||
222 | config NR_CPUS | 222 | config NR_CPUS |
223 | int "Maximum number of CPUs (2-512)" | 223 | int "Maximum number of CPUs (2-1024)" |
224 | range 2 512 | 224 | range 2 1024 |
225 | depends on SMP | 225 | depends on SMP |
226 | default "64" | 226 | default "64" |
227 | help | 227 | help |
diff --git a/arch/ia64/configs/bigsur_defconfig b/arch/ia64/configs/bigsur_defconfig index 3b65cbb31b1d..b40672bb3ab0 100644 --- a/arch/ia64/configs/bigsur_defconfig +++ b/arch/ia64/configs/bigsur_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.10-rc2 | 3 | # Linux kernel version: 2.6.14-rc1 |
4 | # Mon Nov 29 13:27:48 2004 | 4 | # Wed Sep 14 15:18:49 2005 |
5 | # | 5 | # |
6 | 6 | ||
7 | # | 7 | # |
@@ -10,34 +10,40 @@ | |||
10 | CONFIG_EXPERIMENTAL=y | 10 | CONFIG_EXPERIMENTAL=y |
11 | CONFIG_CLEAN_COMPILE=y | 11 | CONFIG_CLEAN_COMPILE=y |
12 | CONFIG_LOCK_KERNEL=y | 12 | CONFIG_LOCK_KERNEL=y |
13 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
13 | 14 | ||
14 | # | 15 | # |
15 | # General setup | 16 | # General setup |
16 | # | 17 | # |
17 | CONFIG_LOCALVERSION="" | 18 | CONFIG_LOCALVERSION="" |
19 | CONFIG_LOCALVERSION_AUTO=y | ||
18 | CONFIG_SWAP=y | 20 | CONFIG_SWAP=y |
19 | CONFIG_SYSVIPC=y | 21 | CONFIG_SYSVIPC=y |
20 | CONFIG_POSIX_MQUEUE=y | 22 | CONFIG_POSIX_MQUEUE=y |
21 | # CONFIG_BSD_PROCESS_ACCT is not set | 23 | # CONFIG_BSD_PROCESS_ACCT is not set |
22 | CONFIG_SYSCTL=y | 24 | CONFIG_SYSCTL=y |
23 | # CONFIG_AUDIT is not set | 25 | # CONFIG_AUDIT is not set |
24 | CONFIG_LOG_BUF_SHIFT=16 | ||
25 | CONFIG_HOTPLUG=y | 26 | CONFIG_HOTPLUG=y |
26 | CONFIG_KOBJECT_UEVENT=y | 27 | CONFIG_KOBJECT_UEVENT=y |
27 | # CONFIG_IKCONFIG is not set | 28 | # CONFIG_IKCONFIG is not set |
29 | # CONFIG_CPUSETS is not set | ||
30 | CONFIG_INITRAMFS_SOURCE="" | ||
28 | # CONFIG_EMBEDDED is not set | 31 | # CONFIG_EMBEDDED is not set |
29 | CONFIG_KALLSYMS=y | 32 | CONFIG_KALLSYMS=y |
30 | # CONFIG_KALLSYMS_ALL is not set | 33 | # CONFIG_KALLSYMS_ALL is not set |
31 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 34 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
35 | CONFIG_PRINTK=y | ||
36 | CONFIG_BUG=y | ||
37 | CONFIG_BASE_FULL=y | ||
32 | CONFIG_FUTEX=y | 38 | CONFIG_FUTEX=y |
33 | CONFIG_EPOLL=y | 39 | CONFIG_EPOLL=y |
34 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
35 | CONFIG_SHMEM=y | 40 | CONFIG_SHMEM=y |
36 | CONFIG_CC_ALIGN_FUNCTIONS=0 | 41 | CONFIG_CC_ALIGN_FUNCTIONS=0 |
37 | CONFIG_CC_ALIGN_LABELS=0 | 42 | CONFIG_CC_ALIGN_LABELS=0 |
38 | CONFIG_CC_ALIGN_LOOPS=0 | 43 | CONFIG_CC_ALIGN_LOOPS=0 |
39 | CONFIG_CC_ALIGN_JUMPS=0 | 44 | CONFIG_CC_ALIGN_JUMPS=0 |
40 | # CONFIG_TINY_SHMEM is not set | 45 | # CONFIG_TINY_SHMEM is not set |
46 | CONFIG_BASE_SMALL=0 | ||
41 | 47 | ||
42 | # | 48 | # |
43 | # Loadable module support | 49 | # Loadable module support |
@@ -58,12 +64,15 @@ CONFIG_IA64=y | |||
58 | CONFIG_64BIT=y | 64 | CONFIG_64BIT=y |
59 | CONFIG_MMU=y | 65 | CONFIG_MMU=y |
60 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 66 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
67 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
61 | CONFIG_TIME_INTERPOLATION=y | 68 | CONFIG_TIME_INTERPOLATION=y |
62 | CONFIG_EFI=y | 69 | CONFIG_EFI=y |
63 | CONFIG_GENERIC_IOMAP=y | 70 | CONFIG_GENERIC_IOMAP=y |
71 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | ||
64 | # CONFIG_IA64_GENERIC is not set | 72 | # CONFIG_IA64_GENERIC is not set |
65 | CONFIG_IA64_DIG=y | 73 | CONFIG_IA64_DIG=y |
66 | # CONFIG_IA64_HP_ZX1 is not set | 74 | # CONFIG_IA64_HP_ZX1 is not set |
75 | # CONFIG_IA64_HP_ZX1_SWIOTLB is not set | ||
67 | # CONFIG_IA64_SGI_SN2 is not set | 76 | # CONFIG_IA64_SGI_SN2 is not set |
68 | # CONFIG_IA64_HP_SIM is not set | 77 | # CONFIG_IA64_HP_SIM is not set |
69 | CONFIG_ITANIUM=y | 78 | CONFIG_ITANIUM=y |
@@ -72,17 +81,30 @@ CONFIG_ITANIUM=y | |||
72 | # CONFIG_IA64_PAGE_SIZE_8KB is not set | 81 | # CONFIG_IA64_PAGE_SIZE_8KB is not set |
73 | CONFIG_IA64_PAGE_SIZE_16KB=y | 82 | CONFIG_IA64_PAGE_SIZE_16KB=y |
74 | # CONFIG_IA64_PAGE_SIZE_64KB is not set | 83 | # CONFIG_IA64_PAGE_SIZE_64KB is not set |
84 | # CONFIG_HZ_100 is not set | ||
85 | CONFIG_HZ_250=y | ||
86 | # CONFIG_HZ_1000 is not set | ||
87 | CONFIG_HZ=250 | ||
75 | CONFIG_IA64_BRL_EMU=y | 88 | CONFIG_IA64_BRL_EMU=y |
76 | CONFIG_IA64_L1_CACHE_SHIFT=6 | 89 | CONFIG_IA64_L1_CACHE_SHIFT=6 |
77 | # CONFIG_NUMA is not set | 90 | # CONFIG_NUMA is not set |
78 | # CONFIG_VIRTUAL_MEM_MAP is not set | 91 | # CONFIG_VIRTUAL_MEM_MAP is not set |
79 | # CONFIG_IA64_CYCLONE is not set | 92 | # CONFIG_IA64_CYCLONE is not set |
80 | CONFIG_IOSAPIC=y | 93 | CONFIG_IOSAPIC=y |
94 | # CONFIG_IA64_SGI_SN_XP is not set | ||
81 | CONFIG_FORCE_MAX_ZONEORDER=18 | 95 | CONFIG_FORCE_MAX_ZONEORDER=18 |
82 | CONFIG_SMP=y | 96 | CONFIG_SMP=y |
83 | CONFIG_NR_CPUS=2 | 97 | CONFIG_NR_CPUS=2 |
84 | # CONFIG_HOTPLUG_CPU is not set | 98 | # CONFIG_HOTPLUG_CPU is not set |
99 | # CONFIG_SCHED_SMT is not set | ||
85 | CONFIG_PREEMPT=y | 100 | CONFIG_PREEMPT=y |
101 | CONFIG_SELECT_MEMORY_MODEL=y | ||
102 | CONFIG_FLATMEM_MANUAL=y | ||
103 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
104 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
105 | CONFIG_FLATMEM=y | ||
106 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
107 | # CONFIG_SPARSEMEM_STATIC is not set | ||
86 | CONFIG_HAVE_DEC_LOCK=y | 108 | CONFIG_HAVE_DEC_LOCK=y |
87 | CONFIG_IA32_SUPPORT=y | 109 | CONFIG_IA32_SUPPORT=y |
88 | CONFIG_COMPAT=y | 110 | CONFIG_COMPAT=y |
@@ -95,6 +117,7 @@ CONFIG_IA64_PALINFO=y | |||
95 | # | 117 | # |
96 | CONFIG_EFI_VARS=y | 118 | CONFIG_EFI_VARS=y |
97 | CONFIG_EFI_PCDP=y | 119 | CONFIG_EFI_PCDP=y |
120 | # CONFIG_DELL_RBU is not set | ||
98 | CONFIG_BINFMT_ELF=y | 121 | CONFIG_BINFMT_ELF=y |
99 | CONFIG_BINFMT_MISC=m | 122 | CONFIG_BINFMT_MISC=m |
100 | 123 | ||
@@ -102,18 +125,26 @@ CONFIG_BINFMT_MISC=m | |||
102 | # Power management and ACPI | 125 | # Power management and ACPI |
103 | # | 126 | # |
104 | CONFIG_PM=y | 127 | CONFIG_PM=y |
105 | CONFIG_ACPI=y | 128 | # CONFIG_PM_DEBUG is not set |
106 | 129 | ||
107 | # | 130 | # |
108 | # ACPI (Advanced Configuration and Power Interface) Support | 131 | # ACPI (Advanced Configuration and Power Interface) Support |
109 | # | 132 | # |
133 | CONFIG_ACPI=y | ||
110 | CONFIG_ACPI_BUTTON=m | 134 | CONFIG_ACPI_BUTTON=m |
111 | CONFIG_ACPI_FAN=m | 135 | CONFIG_ACPI_FAN=m |
112 | CONFIG_ACPI_PROCESSOR=m | 136 | CONFIG_ACPI_PROCESSOR=m |
113 | CONFIG_ACPI_THERMAL=m | 137 | CONFIG_ACPI_THERMAL=m |
138 | CONFIG_ACPI_BLACKLIST_YEAR=0 | ||
114 | # CONFIG_ACPI_DEBUG is not set | 139 | # CONFIG_ACPI_DEBUG is not set |
115 | CONFIG_ACPI_POWER=y | 140 | CONFIG_ACPI_POWER=y |
116 | CONFIG_ACPI_SYSTEM=y | 141 | CONFIG_ACPI_SYSTEM=y |
142 | # CONFIG_ACPI_CONTAINER is not set | ||
143 | |||
144 | # | ||
145 | # CPU Frequency scaling | ||
146 | # | ||
147 | # CONFIG_CPU_FREQ is not set | ||
117 | 148 | ||
118 | # | 149 | # |
119 | # Bus options (PCI, PCMCIA) | 150 | # Bus options (PCI, PCMCIA) |
@@ -122,7 +153,7 @@ CONFIG_PCI=y | |||
122 | CONFIG_PCI_DOMAINS=y | 153 | CONFIG_PCI_DOMAINS=y |
123 | # CONFIG_PCI_MSI is not set | 154 | # CONFIG_PCI_MSI is not set |
124 | CONFIG_PCI_LEGACY_PROC=y | 155 | CONFIG_PCI_LEGACY_PROC=y |
125 | CONFIG_PCI_NAMES=y | 156 | # CONFIG_PCI_DEBUG is not set |
126 | 157 | ||
127 | # | 158 | # |
128 | # PCI Hotplug Support | 159 | # PCI Hotplug Support |
@@ -135,8 +166,70 @@ CONFIG_PCI_NAMES=y | |||
135 | # CONFIG_PCCARD is not set | 166 | # CONFIG_PCCARD is not set |
136 | 167 | ||
137 | # | 168 | # |
138 | # PC-card bridges | 169 | # Networking |
170 | # | ||
171 | CONFIG_NET=y | ||
172 | |||
173 | # | ||
174 | # Networking options | ||
175 | # | ||
176 | CONFIG_PACKET=y | ||
177 | CONFIG_PACKET_MMAP=y | ||
178 | CONFIG_UNIX=y | ||
179 | # CONFIG_NET_KEY is not set | ||
180 | CONFIG_INET=y | ||
181 | # CONFIG_IP_MULTICAST is not set | ||
182 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
183 | CONFIG_IP_FIB_HASH=y | ||
184 | # CONFIG_IP_PNP is not set | ||
185 | # CONFIG_NET_IPIP is not set | ||
186 | # CONFIG_NET_IPGRE is not set | ||
187 | # CONFIG_ARPD is not set | ||
188 | # CONFIG_SYN_COOKIES is not set | ||
189 | # CONFIG_INET_AH is not set | ||
190 | # CONFIG_INET_ESP is not set | ||
191 | # CONFIG_INET_IPCOMP is not set | ||
192 | # CONFIG_INET_TUNNEL is not set | ||
193 | CONFIG_INET_DIAG=y | ||
194 | CONFIG_INET_TCP_DIAG=y | ||
195 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
196 | CONFIG_TCP_CONG_BIC=y | ||
197 | # CONFIG_IPV6 is not set | ||
198 | # CONFIG_NETFILTER is not set | ||
199 | |||
200 | # | ||
201 | # DCCP Configuration (EXPERIMENTAL) | ||
202 | # | ||
203 | # CONFIG_IP_DCCP is not set | ||
204 | |||
205 | # | ||
206 | # SCTP Configuration (EXPERIMENTAL) | ||
207 | # | ||
208 | # CONFIG_IP_SCTP is not set | ||
209 | # CONFIG_ATM is not set | ||
210 | # CONFIG_BRIDGE is not set | ||
211 | # CONFIG_VLAN_8021Q is not set | ||
212 | # CONFIG_DECNET is not set | ||
213 | # CONFIG_LLC2 is not set | ||
214 | # CONFIG_IPX is not set | ||
215 | # CONFIG_ATALK is not set | ||
216 | # CONFIG_X25 is not set | ||
217 | # CONFIG_LAPB is not set | ||
218 | # CONFIG_NET_DIVERT is not set | ||
219 | # CONFIG_ECONET is not set | ||
220 | # CONFIG_WAN_ROUTER is not set | ||
221 | # CONFIG_NET_SCHED is not set | ||
222 | # CONFIG_NET_CLS_ROUTE is not set | ||
223 | |||
224 | # | ||
225 | # Network testing | ||
139 | # | 226 | # |
227 | # CONFIG_NET_PKTGEN is not set | ||
228 | # CONFIG_NETFILTER_NETLINK is not set | ||
229 | # CONFIG_HAMRADIO is not set | ||
230 | # CONFIG_IRDA is not set | ||
231 | # CONFIG_BT is not set | ||
232 | # CONFIG_IEEE80211 is not set | ||
140 | 233 | ||
141 | # | 234 | # |
142 | # Device Drivers | 235 | # Device Drivers |
@@ -151,6 +244,11 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
151 | # CONFIG_DEBUG_DRIVER is not set | 244 | # CONFIG_DEBUG_DRIVER is not set |
152 | 245 | ||
153 | # | 246 | # |
247 | # Connector - unified userspace <-> kernelspace linker | ||
248 | # | ||
249 | # CONFIG_CONNECTOR is not set | ||
250 | |||
251 | # | ||
154 | # Memory Technology Devices (MTD) | 252 | # Memory Technology Devices (MTD) |
155 | # | 253 | # |
156 | # CONFIG_MTD is not set | 254 | # CONFIG_MTD is not set |
@@ -163,7 +261,13 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
163 | # | 261 | # |
164 | # Plug and Play support | 262 | # Plug and Play support |
165 | # | 263 | # |
166 | # CONFIG_PNP is not set | 264 | CONFIG_PNP=y |
265 | # CONFIG_PNP_DEBUG is not set | ||
266 | |||
267 | # | ||
268 | # Protocols | ||
269 | # | ||
270 | CONFIG_PNPACPI=y | ||
167 | 271 | ||
168 | # | 272 | # |
169 | # Block devices | 273 | # Block devices |
@@ -172,14 +276,15 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
172 | # CONFIG_BLK_CPQ_CISS_DA is not set | 276 | # CONFIG_BLK_CPQ_CISS_DA is not set |
173 | # CONFIG_BLK_DEV_DAC960 is not set | 277 | # CONFIG_BLK_DEV_DAC960 is not set |
174 | # CONFIG_BLK_DEV_UMEM is not set | 278 | # CONFIG_BLK_DEV_UMEM is not set |
279 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
175 | CONFIG_BLK_DEV_LOOP=m | 280 | CONFIG_BLK_DEV_LOOP=m |
176 | CONFIG_BLK_DEV_CRYPTOLOOP=m | 281 | CONFIG_BLK_DEV_CRYPTOLOOP=m |
177 | CONFIG_BLK_DEV_NBD=m | 282 | CONFIG_BLK_DEV_NBD=m |
178 | # CONFIG_BLK_DEV_SX8 is not set | 283 | # CONFIG_BLK_DEV_SX8 is not set |
179 | # CONFIG_BLK_DEV_UB is not set | 284 | # CONFIG_BLK_DEV_UB is not set |
180 | CONFIG_BLK_DEV_RAM=m | 285 | CONFIG_BLK_DEV_RAM=m |
286 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
181 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 287 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
182 | CONFIG_INITRAMFS_SOURCE="" | ||
183 | # CONFIG_CDROM_PKTCDVD is not set | 288 | # CONFIG_CDROM_PKTCDVD is not set |
184 | 289 | ||
185 | # | 290 | # |
@@ -189,6 +294,7 @@ CONFIG_IOSCHED_NOOP=y | |||
189 | CONFIG_IOSCHED_AS=y | 294 | CONFIG_IOSCHED_AS=y |
190 | CONFIG_IOSCHED_DEADLINE=y | 295 | CONFIG_IOSCHED_DEADLINE=y |
191 | CONFIG_IOSCHED_CFQ=y | 296 | CONFIG_IOSCHED_CFQ=y |
297 | # CONFIG_ATA_OVER_ETH is not set | ||
192 | 298 | ||
193 | # | 299 | # |
194 | # ATA/ATAPI/MFM/RLL support | 300 | # ATA/ATAPI/MFM/RLL support |
@@ -211,7 +317,8 @@ CONFIG_BLK_DEV_IDEFLOPPY=m | |||
211 | # | 317 | # |
212 | # IDE chipset support/bugfixes | 318 | # IDE chipset support/bugfixes |
213 | # | 319 | # |
214 | CONFIG_IDE_GENERIC=m | 320 | # CONFIG_IDE_GENERIC is not set |
321 | # CONFIG_BLK_DEV_IDEPNP is not set | ||
215 | CONFIG_BLK_DEV_IDEPCI=y | 322 | CONFIG_BLK_DEV_IDEPCI=y |
216 | CONFIG_IDEPCI_SHARE_IRQ=y | 323 | CONFIG_IDEPCI_SHARE_IRQ=y |
217 | # CONFIG_BLK_DEV_OFFBOARD is not set | 324 | # CONFIG_BLK_DEV_OFFBOARD is not set |
@@ -233,6 +340,7 @@ CONFIG_IDEDMA_PCI_AUTO=y | |||
233 | # CONFIG_BLK_DEV_HPT366 is not set | 340 | # CONFIG_BLK_DEV_HPT366 is not set |
234 | # CONFIG_BLK_DEV_SC1200 is not set | 341 | # CONFIG_BLK_DEV_SC1200 is not set |
235 | CONFIG_BLK_DEV_PIIX=m | 342 | CONFIG_BLK_DEV_PIIX=m |
343 | # CONFIG_BLK_DEV_IT821X is not set | ||
236 | # CONFIG_BLK_DEV_NS87415 is not set | 344 | # CONFIG_BLK_DEV_NS87415 is not set |
237 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 345 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
238 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set | 346 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set |
@@ -250,6 +358,7 @@ CONFIG_IDEDMA_AUTO=y | |||
250 | # | 358 | # |
251 | # SCSI device support | 359 | # SCSI device support |
252 | # | 360 | # |
361 | # CONFIG_RAID_ATTRS is not set | ||
253 | CONFIG_SCSI=y | 362 | CONFIG_SCSI=y |
254 | CONFIG_SCSI_PROC_FS=y | 363 | CONFIG_SCSI_PROC_FS=y |
255 | 364 | ||
@@ -261,6 +370,7 @@ CONFIG_BLK_DEV_SD=y | |||
261 | # CONFIG_CHR_DEV_OSST is not set | 370 | # CONFIG_CHR_DEV_OSST is not set |
262 | # CONFIG_BLK_DEV_SR is not set | 371 | # CONFIG_BLK_DEV_SR is not set |
263 | # CONFIG_CHR_DEV_SG is not set | 372 | # CONFIG_CHR_DEV_SG is not set |
373 | # CONFIG_CHR_DEV_SCH is not set | ||
264 | 374 | ||
265 | # | 375 | # |
266 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | 376 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs |
@@ -274,6 +384,8 @@ CONFIG_SCSI_LOGGING=y | |||
274 | # | 384 | # |
275 | CONFIG_SCSI_SPI_ATTRS=m | 385 | CONFIG_SCSI_SPI_ATTRS=m |
276 | # CONFIG_SCSI_FC_ATTRS is not set | 386 | # CONFIG_SCSI_FC_ATTRS is not set |
387 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
388 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
277 | 389 | ||
278 | # | 390 | # |
279 | # SCSI low-level drivers | 391 | # SCSI low-level drivers |
@@ -288,18 +400,13 @@ CONFIG_SCSI_SPI_ATTRS=m | |||
288 | # CONFIG_MEGARAID_NEWGEN is not set | 400 | # CONFIG_MEGARAID_NEWGEN is not set |
289 | # CONFIG_MEGARAID_LEGACY is not set | 401 | # CONFIG_MEGARAID_LEGACY is not set |
290 | # CONFIG_SCSI_SATA is not set | 402 | # CONFIG_SCSI_SATA is not set |
291 | # CONFIG_SCSI_BUSLOGIC is not set | ||
292 | # CONFIG_SCSI_DMX3191D is not set | 403 | # CONFIG_SCSI_DMX3191D is not set |
293 | # CONFIG_SCSI_EATA is not set | ||
294 | # CONFIG_SCSI_EATA_PIO is not set | ||
295 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 404 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
296 | # CONFIG_SCSI_GDTH is not set | ||
297 | # CONFIG_SCSI_IPS is not set | 405 | # CONFIG_SCSI_IPS is not set |
298 | # CONFIG_SCSI_INITIO is not set | 406 | # CONFIG_SCSI_INITIO is not set |
299 | # CONFIG_SCSI_INIA100 is not set | 407 | # CONFIG_SCSI_INIA100 is not set |
300 | # CONFIG_SCSI_SYM53C8XX_2 is not set | 408 | # CONFIG_SCSI_SYM53C8XX_2 is not set |
301 | # CONFIG_SCSI_IPR is not set | 409 | # CONFIG_SCSI_IPR is not set |
302 | # CONFIG_SCSI_QLOGIC_ISP is not set | ||
303 | # CONFIG_SCSI_QLOGIC_FC is not set | 410 | # CONFIG_SCSI_QLOGIC_FC is not set |
304 | CONFIG_SCSI_QLOGIC_1280=y | 411 | CONFIG_SCSI_QLOGIC_1280=y |
305 | # CONFIG_SCSI_QLOGIC_1280_1040 is not set | 412 | # CONFIG_SCSI_QLOGIC_1280_1040 is not set |
@@ -309,7 +416,8 @@ CONFIG_SCSI_QLA2XXX=y | |||
309 | # CONFIG_SCSI_QLA2300 is not set | 416 | # CONFIG_SCSI_QLA2300 is not set |
310 | # CONFIG_SCSI_QLA2322 is not set | 417 | # CONFIG_SCSI_QLA2322 is not set |
311 | # CONFIG_SCSI_QLA6312 is not set | 418 | # CONFIG_SCSI_QLA6312 is not set |
312 | # CONFIG_SCSI_QLA6322 is not set | 419 | # CONFIG_SCSI_QLA24XX is not set |
420 | # CONFIG_SCSI_LPFC is not set | ||
313 | # CONFIG_SCSI_DC395x is not set | 421 | # CONFIG_SCSI_DC395x is not set |
314 | # CONFIG_SCSI_DC390T is not set | 422 | # CONFIG_SCSI_DC390T is not set |
315 | # CONFIG_SCSI_DEBUG is not set | 423 | # CONFIG_SCSI_DEBUG is not set |
@@ -332,11 +440,14 @@ CONFIG_DM_CRYPT=m | |||
332 | CONFIG_DM_SNAPSHOT=m | 440 | CONFIG_DM_SNAPSHOT=m |
333 | CONFIG_DM_MIRROR=m | 441 | CONFIG_DM_MIRROR=m |
334 | CONFIG_DM_ZERO=m | 442 | CONFIG_DM_ZERO=m |
443 | # CONFIG_DM_MULTIPATH is not set | ||
335 | 444 | ||
336 | # | 445 | # |
337 | # Fusion MPT device support | 446 | # Fusion MPT device support |
338 | # | 447 | # |
339 | # CONFIG_FUSION is not set | 448 | # CONFIG_FUSION is not set |
449 | # CONFIG_FUSION_SPI is not set | ||
450 | # CONFIG_FUSION_FC is not set | ||
340 | 451 | ||
341 | # | 452 | # |
342 | # IEEE 1394 (FireWire) support | 453 | # IEEE 1394 (FireWire) support |
@@ -349,72 +460,14 @@ CONFIG_DM_ZERO=m | |||
349 | # CONFIG_I2O is not set | 460 | # CONFIG_I2O is not set |
350 | 461 | ||
351 | # | 462 | # |
352 | # Networking support | 463 | # Network device support |
353 | # | 464 | # |
354 | CONFIG_NET=y | ||
355 | |||
356 | # | ||
357 | # Networking options | ||
358 | # | ||
359 | CONFIG_PACKET=y | ||
360 | CONFIG_PACKET_MMAP=y | ||
361 | # CONFIG_NETLINK_DEV is not set | ||
362 | CONFIG_UNIX=y | ||
363 | # CONFIG_NET_KEY is not set | ||
364 | CONFIG_INET=y | ||
365 | # CONFIG_IP_MULTICAST is not set | ||
366 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
367 | # CONFIG_IP_PNP is not set | ||
368 | # CONFIG_NET_IPIP is not set | ||
369 | # CONFIG_NET_IPGRE is not set | ||
370 | # CONFIG_ARPD is not set | ||
371 | # CONFIG_SYN_COOKIES is not set | ||
372 | # CONFIG_INET_AH is not set | ||
373 | # CONFIG_INET_ESP is not set | ||
374 | # CONFIG_INET_IPCOMP is not set | ||
375 | # CONFIG_INET_TUNNEL is not set | ||
376 | CONFIG_IP_TCPDIAG=y | ||
377 | # CONFIG_IP_TCPDIAG_IPV6 is not set | ||
378 | # CONFIG_IPV6 is not set | ||
379 | # CONFIG_NETFILTER is not set | ||
380 | |||
381 | # | ||
382 | # SCTP Configuration (EXPERIMENTAL) | ||
383 | # | ||
384 | # CONFIG_IP_SCTP is not set | ||
385 | # CONFIG_ATM is not set | ||
386 | # CONFIG_BRIDGE is not set | ||
387 | # CONFIG_VLAN_8021Q is not set | ||
388 | # CONFIG_DECNET is not set | ||
389 | # CONFIG_LLC2 is not set | ||
390 | # CONFIG_IPX is not set | ||
391 | # CONFIG_ATALK is not set | ||
392 | # CONFIG_X25 is not set | ||
393 | # CONFIG_LAPB is not set | ||
394 | # CONFIG_NET_DIVERT is not set | ||
395 | # CONFIG_ECONET is not set | ||
396 | # CONFIG_WAN_ROUTER is not set | ||
397 | |||
398 | # | ||
399 | # QoS and/or fair queueing | ||
400 | # | ||
401 | # CONFIG_NET_SCHED is not set | ||
402 | # CONFIG_NET_CLS_ROUTE is not set | ||
403 | |||
404 | # | ||
405 | # Network testing | ||
406 | # | ||
407 | # CONFIG_NET_PKTGEN is not set | ||
408 | # CONFIG_NETPOLL is not set | ||
409 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
410 | # CONFIG_HAMRADIO is not set | ||
411 | # CONFIG_IRDA is not set | ||
412 | # CONFIG_BT is not set | ||
413 | CONFIG_NETDEVICES=y | 465 | CONFIG_NETDEVICES=y |
414 | CONFIG_DUMMY=y | 466 | CONFIG_DUMMY=y |
415 | # CONFIG_BONDING is not set | 467 | # CONFIG_BONDING is not set |
416 | # CONFIG_EQUALIZER is not set | 468 | # CONFIG_EQUALIZER is not set |
417 | # CONFIG_TUN is not set | 469 | # CONFIG_TUN is not set |
470 | # CONFIG_NET_SB1000 is not set | ||
418 | 471 | ||
419 | # | 472 | # |
420 | # ARCnet devices | 473 | # ARCnet devices |
@@ -422,6 +475,11 @@ CONFIG_DUMMY=y | |||
422 | # CONFIG_ARCNET is not set | 475 | # CONFIG_ARCNET is not set |
423 | 476 | ||
424 | # | 477 | # |
478 | # PHY device support | ||
479 | # | ||
480 | # CONFIG_PHYLIB is not set | ||
481 | |||
482 | # | ||
425 | # Ethernet (10 or 100Mbit) | 483 | # Ethernet (10 or 100Mbit) |
426 | # | 484 | # |
427 | CONFIG_NET_ETHERNET=y | 485 | CONFIG_NET_ETHERNET=y |
@@ -443,7 +501,6 @@ CONFIG_NET_PCI=y | |||
443 | # CONFIG_FORCEDETH is not set | 501 | # CONFIG_FORCEDETH is not set |
444 | # CONFIG_DGRS is not set | 502 | # CONFIG_DGRS is not set |
445 | CONFIG_EEPRO100=y | 503 | CONFIG_EEPRO100=y |
446 | # CONFIG_EEPRO100_PIO is not set | ||
447 | # CONFIG_E100 is not set | 504 | # CONFIG_E100 is not set |
448 | # CONFIG_FEALNX is not set | 505 | # CONFIG_FEALNX is not set |
449 | # CONFIG_NATSEMI is not set | 506 | # CONFIG_NATSEMI is not set |
@@ -465,13 +522,17 @@ CONFIG_EEPRO100=y | |||
465 | # CONFIG_HAMACHI is not set | 522 | # CONFIG_HAMACHI is not set |
466 | # CONFIG_YELLOWFIN is not set | 523 | # CONFIG_YELLOWFIN is not set |
467 | # CONFIG_R8169 is not set | 524 | # CONFIG_R8169 is not set |
525 | # CONFIG_SIS190 is not set | ||
526 | # CONFIG_SKGE is not set | ||
468 | # CONFIG_SK98LIN is not set | 527 | # CONFIG_SK98LIN is not set |
469 | # CONFIG_VIA_VELOCITY is not set | 528 | # CONFIG_VIA_VELOCITY is not set |
470 | # CONFIG_TIGON3 is not set | 529 | # CONFIG_TIGON3 is not set |
530 | # CONFIG_BNX2 is not set | ||
471 | 531 | ||
472 | # | 532 | # |
473 | # Ethernet (10000 Mbit) | 533 | # Ethernet (10000 Mbit) |
474 | # | 534 | # |
535 | # CONFIG_CHELSIO_T1 is not set | ||
475 | # CONFIG_IXGB is not set | 536 | # CONFIG_IXGB is not set |
476 | # CONFIG_S2IO is not set | 537 | # CONFIG_S2IO is not set |
477 | 538 | ||
@@ -496,6 +557,8 @@ CONFIG_EEPRO100=y | |||
496 | # CONFIG_NET_FC is not set | 557 | # CONFIG_NET_FC is not set |
497 | # CONFIG_SHAPER is not set | 558 | # CONFIG_SHAPER is not set |
498 | # CONFIG_NETCONSOLE is not set | 559 | # CONFIG_NETCONSOLE is not set |
560 | # CONFIG_NETPOLL is not set | ||
561 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
499 | 562 | ||
500 | # | 563 | # |
501 | # ISDN subsystem | 564 | # ISDN subsystem |
@@ -525,18 +588,6 @@ CONFIG_INPUT_EVDEV=y | |||
525 | # CONFIG_INPUT_EVBUG is not set | 588 | # CONFIG_INPUT_EVBUG is not set |
526 | 589 | ||
527 | # | 590 | # |
528 | # Input I/O drivers | ||
529 | # | ||
530 | # CONFIG_GAMEPORT is not set | ||
531 | CONFIG_SOUND_GAMEPORT=y | ||
532 | CONFIG_SERIO=y | ||
533 | CONFIG_SERIO_I8042=y | ||
534 | CONFIG_SERIO_SERPORT=y | ||
535 | # CONFIG_SERIO_CT82C710 is not set | ||
536 | # CONFIG_SERIO_PCIPS2 is not set | ||
537 | # CONFIG_SERIO_RAW is not set | ||
538 | |||
539 | # | ||
540 | # Input Device Drivers | 591 | # Input Device Drivers |
541 | # | 592 | # |
542 | CONFIG_INPUT_KEYBOARD=y | 593 | CONFIG_INPUT_KEYBOARD=y |
@@ -554,6 +605,17 @@ CONFIG_MOUSE_PS2=y | |||
554 | # CONFIG_INPUT_MISC is not set | 605 | # CONFIG_INPUT_MISC is not set |
555 | 606 | ||
556 | # | 607 | # |
608 | # Hardware I/O ports | ||
609 | # | ||
610 | CONFIG_SERIO=y | ||
611 | CONFIG_SERIO_I8042=y | ||
612 | CONFIG_SERIO_SERPORT=y | ||
613 | # CONFIG_SERIO_PCIPS2 is not set | ||
614 | CONFIG_SERIO_LIBPS2=y | ||
615 | # CONFIG_SERIO_RAW is not set | ||
616 | # CONFIG_GAMEPORT is not set | ||
617 | |||
618 | # | ||
557 | # Character devices | 619 | # Character devices |
558 | # | 620 | # |
559 | CONFIG_VT=y | 621 | CONFIG_VT=y |
@@ -571,7 +633,6 @@ CONFIG_SERIAL_8250_NR_UARTS=4 | |||
571 | CONFIG_SERIAL_8250_EXTENDED=y | 633 | CONFIG_SERIAL_8250_EXTENDED=y |
572 | CONFIG_SERIAL_8250_SHARE_IRQ=y | 634 | CONFIG_SERIAL_8250_SHARE_IRQ=y |
573 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set | 635 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set |
574 | # CONFIG_SERIAL_8250_MULTIPORT is not set | ||
575 | # CONFIG_SERIAL_8250_RSA is not set | 636 | # CONFIG_SERIAL_8250_RSA is not set |
576 | 637 | ||
577 | # | 638 | # |
@@ -579,6 +640,7 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y | |||
579 | # | 640 | # |
580 | CONFIG_SERIAL_CORE=y | 641 | CONFIG_SERIAL_CORE=y |
581 | CONFIG_SERIAL_CORE_CONSOLE=y | 642 | CONFIG_SERIAL_CORE_CONSOLE=y |
643 | # CONFIG_SERIAL_JSM is not set | ||
582 | CONFIG_UNIX98_PTYS=y | 644 | CONFIG_UNIX98_PTYS=y |
583 | CONFIG_LEGACY_PTYS=y | 645 | CONFIG_LEGACY_PTYS=y |
584 | CONFIG_LEGACY_PTY_COUNT=256 | 646 | CONFIG_LEGACY_PTY_COUNT=256 |
@@ -603,14 +665,22 @@ CONFIG_EFI_RTC=y | |||
603 | # | 665 | # |
604 | CONFIG_AGP=m | 666 | CONFIG_AGP=m |
605 | CONFIG_AGP_I460=m | 667 | CONFIG_AGP_I460=m |
606 | CONFIG_DRM=y | 668 | CONFIG_DRM=m |
607 | # CONFIG_DRM_TDFX is not set | 669 | # CONFIG_DRM_TDFX is not set |
608 | CONFIG_DRM_R128=m | 670 | CONFIG_DRM_R128=m |
609 | # CONFIG_DRM_RADEON is not set | 671 | # CONFIG_DRM_RADEON is not set |
610 | # CONFIG_DRM_MGA is not set | 672 | # CONFIG_DRM_MGA is not set |
611 | # CONFIG_DRM_SIS is not set | 673 | # CONFIG_DRM_SIS is not set |
674 | # CONFIG_DRM_VIA is not set | ||
675 | # CONFIG_DRM_SAVAGE is not set | ||
612 | # CONFIG_RAW_DRIVER is not set | 676 | # CONFIG_RAW_DRIVER is not set |
613 | # CONFIG_HPET is not set | 677 | # CONFIG_HPET is not set |
678 | # CONFIG_HANGCHECK_TIMER is not set | ||
679 | |||
680 | # | ||
681 | # TPM devices | ||
682 | # | ||
683 | # CONFIG_TCG_TPM is not set | ||
614 | 684 | ||
615 | # | 685 | # |
616 | # I2C support | 686 | # I2C support |
@@ -635,7 +705,7 @@ CONFIG_I2C_ALGOBIT=y | |||
635 | # CONFIG_I2C_AMD8111 is not set | 705 | # CONFIG_I2C_AMD8111 is not set |
636 | # CONFIG_I2C_I801 is not set | 706 | # CONFIG_I2C_I801 is not set |
637 | # CONFIG_I2C_I810 is not set | 707 | # CONFIG_I2C_I810 is not set |
638 | # CONFIG_I2C_ISA is not set | 708 | # CONFIG_I2C_PIIX4 is not set |
639 | # CONFIG_I2C_NFORCE2 is not set | 709 | # CONFIG_I2C_NFORCE2 is not set |
640 | # CONFIG_I2C_PARPORT_LIGHT is not set | 710 | # CONFIG_I2C_PARPORT_LIGHT is not set |
641 | # CONFIG_I2C_PROSAVAGE is not set | 711 | # CONFIG_I2C_PROSAVAGE is not set |
@@ -651,16 +721,43 @@ CONFIG_I2C_ALGOBIT=y | |||
651 | # CONFIG_I2C_PCA_ISA is not set | 721 | # CONFIG_I2C_PCA_ISA is not set |
652 | 722 | ||
653 | # | 723 | # |
654 | # Hardware Sensors Chip support | 724 | # Miscellaneous I2C Chip support |
655 | # | 725 | # |
656 | # CONFIG_I2C_SENSOR is not set | 726 | # CONFIG_SENSORS_DS1337 is not set |
727 | # CONFIG_SENSORS_DS1374 is not set | ||
728 | # CONFIG_SENSORS_EEPROM is not set | ||
729 | # CONFIG_SENSORS_PCF8574 is not set | ||
730 | # CONFIG_SENSORS_PCA9539 is not set | ||
731 | # CONFIG_SENSORS_PCF8591 is not set | ||
732 | # CONFIG_SENSORS_RTC8564 is not set | ||
733 | # CONFIG_SENSORS_MAX6875 is not set | ||
734 | # CONFIG_I2C_DEBUG_CORE is not set | ||
735 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
736 | # CONFIG_I2C_DEBUG_BUS is not set | ||
737 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
738 | |||
739 | # | ||
740 | # Dallas's 1-wire bus | ||
741 | # | ||
742 | # CONFIG_W1 is not set | ||
743 | |||
744 | # | ||
745 | # Hardware Monitoring support | ||
746 | # | ||
747 | CONFIG_HWMON=y | ||
748 | # CONFIG_HWMON_VID is not set | ||
657 | # CONFIG_SENSORS_ADM1021 is not set | 749 | # CONFIG_SENSORS_ADM1021 is not set |
658 | # CONFIG_SENSORS_ADM1025 is not set | 750 | # CONFIG_SENSORS_ADM1025 is not set |
751 | # CONFIG_SENSORS_ADM1026 is not set | ||
659 | # CONFIG_SENSORS_ADM1031 is not set | 752 | # CONFIG_SENSORS_ADM1031 is not set |
753 | # CONFIG_SENSORS_ADM9240 is not set | ||
660 | # CONFIG_SENSORS_ASB100 is not set | 754 | # CONFIG_SENSORS_ASB100 is not set |
755 | # CONFIG_SENSORS_ATXP1 is not set | ||
661 | # CONFIG_SENSORS_DS1621 is not set | 756 | # CONFIG_SENSORS_DS1621 is not set |
662 | # CONFIG_SENSORS_FSCHER is not set | 757 | # CONFIG_SENSORS_FSCHER is not set |
758 | # CONFIG_SENSORS_FSCPOS is not set | ||
663 | # CONFIG_SENSORS_GL518SM is not set | 759 | # CONFIG_SENSORS_GL518SM is not set |
760 | # CONFIG_SENSORS_GL520SM is not set | ||
664 | # CONFIG_SENSORS_IT87 is not set | 761 | # CONFIG_SENSORS_IT87 is not set |
665 | # CONFIG_SENSORS_LM63 is not set | 762 | # CONFIG_SENSORS_LM63 is not set |
666 | # CONFIG_SENSORS_LM75 is not set | 763 | # CONFIG_SENSORS_LM75 is not set |
@@ -671,33 +768,26 @@ CONFIG_I2C_ALGOBIT=y | |||
671 | # CONFIG_SENSORS_LM85 is not set | 768 | # CONFIG_SENSORS_LM85 is not set |
672 | # CONFIG_SENSORS_LM87 is not set | 769 | # CONFIG_SENSORS_LM87 is not set |
673 | # CONFIG_SENSORS_LM90 is not set | 770 | # CONFIG_SENSORS_LM90 is not set |
771 | # CONFIG_SENSORS_LM92 is not set | ||
674 | # CONFIG_SENSORS_MAX1619 is not set | 772 | # CONFIG_SENSORS_MAX1619 is not set |
675 | # CONFIG_SENSORS_PC87360 is not set | 773 | # CONFIG_SENSORS_PC87360 is not set |
774 | # CONFIG_SENSORS_SIS5595 is not set | ||
676 | # CONFIG_SENSORS_SMSC47M1 is not set | 775 | # CONFIG_SENSORS_SMSC47M1 is not set |
776 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
677 | # CONFIG_SENSORS_VIA686A is not set | 777 | # CONFIG_SENSORS_VIA686A is not set |
678 | # CONFIG_SENSORS_W83781D is not set | 778 | # CONFIG_SENSORS_W83781D is not set |
779 | # CONFIG_SENSORS_W83792D is not set | ||
679 | # CONFIG_SENSORS_W83L785TS is not set | 780 | # CONFIG_SENSORS_W83L785TS is not set |
680 | # CONFIG_SENSORS_W83627HF is not set | 781 | # CONFIG_SENSORS_W83627HF is not set |
782 | # CONFIG_SENSORS_W83627EHF is not set | ||
783 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
681 | 784 | ||
682 | # | 785 | # |
683 | # Other I2C Chip support | 786 | # Misc devices |
684 | # | ||
685 | # CONFIG_SENSORS_EEPROM is not set | ||
686 | # CONFIG_SENSORS_PCF8574 is not set | ||
687 | # CONFIG_SENSORS_PCF8591 is not set | ||
688 | # CONFIG_SENSORS_RTC8564 is not set | ||
689 | # CONFIG_I2C_DEBUG_CORE is not set | ||
690 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
691 | # CONFIG_I2C_DEBUG_BUS is not set | ||
692 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
693 | |||
694 | # | ||
695 | # Dallas's 1-wire bus | ||
696 | # | 787 | # |
697 | # CONFIG_W1 is not set | ||
698 | 788 | ||
699 | # | 789 | # |
700 | # Misc devices | 790 | # Multimedia Capabilities Port drivers |
701 | # | 791 | # |
702 | 792 | ||
703 | # | 793 | # |
@@ -752,11 +842,12 @@ CONFIG_SND_OPL3_LIB=m | |||
752 | # CONFIG_SND_MTPAV is not set | 842 | # CONFIG_SND_MTPAV is not set |
753 | # CONFIG_SND_SERIAL_U16550 is not set | 843 | # CONFIG_SND_SERIAL_U16550 is not set |
754 | # CONFIG_SND_MPU401 is not set | 844 | # CONFIG_SND_MPU401 is not set |
845 | CONFIG_SND_AC97_CODEC=m | ||
846 | CONFIG_SND_AC97_BUS=m | ||
755 | 847 | ||
756 | # | 848 | # |
757 | # PCI devices | 849 | # PCI devices |
758 | # | 850 | # |
759 | CONFIG_SND_AC97_CODEC=m | ||
760 | # CONFIG_SND_ALI5451 is not set | 851 | # CONFIG_SND_ALI5451 is not set |
761 | # CONFIG_SND_ATIIXP is not set | 852 | # CONFIG_SND_ATIIXP is not set |
762 | # CONFIG_SND_ATIIXP_MODEM is not set | 853 | # CONFIG_SND_ATIIXP_MODEM is not set |
@@ -768,6 +859,8 @@ CONFIG_SND_AC97_CODEC=m | |||
768 | # CONFIG_SND_CS46XX is not set | 859 | # CONFIG_SND_CS46XX is not set |
769 | CONFIG_SND_CS4281=m | 860 | CONFIG_SND_CS4281=m |
770 | # CONFIG_SND_EMU10K1 is not set | 861 | # CONFIG_SND_EMU10K1 is not set |
862 | # CONFIG_SND_EMU10K1X is not set | ||
863 | # CONFIG_SND_CA0106 is not set | ||
771 | # CONFIG_SND_KORG1212 is not set | 864 | # CONFIG_SND_KORG1212 is not set |
772 | # CONFIG_SND_MIXART is not set | 865 | # CONFIG_SND_MIXART is not set |
773 | # CONFIG_SND_NM256 is not set | 866 | # CONFIG_SND_NM256 is not set |
@@ -775,9 +868,10 @@ CONFIG_SND_CS4281=m | |||
775 | # CONFIG_SND_RME96 is not set | 868 | # CONFIG_SND_RME96 is not set |
776 | # CONFIG_SND_RME9652 is not set | 869 | # CONFIG_SND_RME9652 is not set |
777 | # CONFIG_SND_HDSP is not set | 870 | # CONFIG_SND_HDSP is not set |
871 | # CONFIG_SND_HDSPM is not set | ||
778 | # CONFIG_SND_TRIDENT is not set | 872 | # CONFIG_SND_TRIDENT is not set |
779 | # CONFIG_SND_YMFPCI is not set | 873 | # CONFIG_SND_YMFPCI is not set |
780 | # CONFIG_SND_ALS4000 is not set | 874 | # CONFIG_SND_AD1889 is not set |
781 | # CONFIG_SND_CMIPCI is not set | 875 | # CONFIG_SND_CMIPCI is not set |
782 | # CONFIG_SND_ENS1370 is not set | 876 | # CONFIG_SND_ENS1370 is not set |
783 | # CONFIG_SND_ENS1371 is not set | 877 | # CONFIG_SND_ENS1371 is not set |
@@ -791,13 +885,14 @@ CONFIG_SND_CS4281=m | |||
791 | # CONFIG_SND_INTEL8X0M is not set | 885 | # CONFIG_SND_INTEL8X0M is not set |
792 | # CONFIG_SND_SONICVIBES is not set | 886 | # CONFIG_SND_SONICVIBES is not set |
793 | # CONFIG_SND_VIA82XX is not set | 887 | # CONFIG_SND_VIA82XX is not set |
888 | # CONFIG_SND_VIA82XX_MODEM is not set | ||
794 | # CONFIG_SND_VX222 is not set | 889 | # CONFIG_SND_VX222 is not set |
890 | # CONFIG_SND_HDA_INTEL is not set | ||
795 | 891 | ||
796 | # | 892 | # |
797 | # USB devices | 893 | # USB devices |
798 | # | 894 | # |
799 | # CONFIG_SND_USB_AUDIO is not set | 895 | # CONFIG_SND_USB_AUDIO is not set |
800 | # CONFIG_SND_USB_USX2Y is not set | ||
801 | 896 | ||
802 | # | 897 | # |
803 | # Open Sound System | 898 | # Open Sound System |
@@ -807,6 +902,8 @@ CONFIG_SND_CS4281=m | |||
807 | # | 902 | # |
808 | # USB support | 903 | # USB support |
809 | # | 904 | # |
905 | CONFIG_USB_ARCH_HAS_HCD=y | ||
906 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
810 | CONFIG_USB=m | 907 | CONFIG_USB=m |
811 | # CONFIG_USB_DEBUG is not set | 908 | # CONFIG_USB_DEBUG is not set |
812 | 909 | ||
@@ -818,35 +915,38 @@ CONFIG_USB_DEVICEFS=y | |||
818 | # CONFIG_USB_DYNAMIC_MINORS is not set | 915 | # CONFIG_USB_DYNAMIC_MINORS is not set |
819 | # CONFIG_USB_SUSPEND is not set | 916 | # CONFIG_USB_SUSPEND is not set |
820 | # CONFIG_USB_OTG is not set | 917 | # CONFIG_USB_OTG is not set |
821 | CONFIG_USB_ARCH_HAS_HCD=y | ||
822 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
823 | 918 | ||
824 | # | 919 | # |
825 | # USB Host Controller Drivers | 920 | # USB Host Controller Drivers |
826 | # | 921 | # |
827 | # CONFIG_USB_EHCI_HCD is not set | 922 | # CONFIG_USB_EHCI_HCD is not set |
923 | # CONFIG_USB_ISP116X_HCD is not set | ||
828 | # CONFIG_USB_OHCI_HCD is not set | 924 | # CONFIG_USB_OHCI_HCD is not set |
829 | CONFIG_USB_UHCI_HCD=m | 925 | CONFIG_USB_UHCI_HCD=m |
926 | # CONFIG_USB_SL811_HCD is not set | ||
830 | 927 | ||
831 | # | 928 | # |
832 | # USB Device Class drivers | 929 | # USB Device Class drivers |
833 | # | 930 | # |
834 | CONFIG_USB_AUDIO=m | 931 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set |
835 | CONFIG_USB_BLUETOOTH_TTY=m | 932 | CONFIG_USB_BLUETOOTH_TTY=m |
836 | CONFIG_USB_MIDI=m | ||
837 | CONFIG_USB_ACM=m | 933 | CONFIG_USB_ACM=m |
838 | CONFIG_USB_PRINTER=m | 934 | CONFIG_USB_PRINTER=m |
935 | |||
936 | # | ||
937 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | ||
938 | # | ||
839 | CONFIG_USB_STORAGE=m | 939 | CONFIG_USB_STORAGE=m |
840 | # CONFIG_USB_STORAGE_DEBUG is not set | 940 | # CONFIG_USB_STORAGE_DEBUG is not set |
841 | # CONFIG_USB_STORAGE_RW_DETECT is not set | ||
842 | # CONFIG_USB_STORAGE_DATAFAB is not set | 941 | # CONFIG_USB_STORAGE_DATAFAB is not set |
843 | # CONFIG_USB_STORAGE_FREECOM is not set | 942 | # CONFIG_USB_STORAGE_FREECOM is not set |
844 | # CONFIG_USB_STORAGE_ISD200 is not set | 943 | # CONFIG_USB_STORAGE_ISD200 is not set |
845 | # CONFIG_USB_STORAGE_DPCM is not set | 944 | # CONFIG_USB_STORAGE_DPCM is not set |
846 | # CONFIG_USB_STORAGE_HP8200e is not set | 945 | # CONFIG_USB_STORAGE_USBAT is not set |
847 | # CONFIG_USB_STORAGE_SDDR09 is not set | 946 | # CONFIG_USB_STORAGE_SDDR09 is not set |
848 | # CONFIG_USB_STORAGE_SDDR55 is not set | 947 | # CONFIG_USB_STORAGE_SDDR55 is not set |
849 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 948 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
949 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
850 | 950 | ||
851 | # | 951 | # |
852 | # USB Input Devices | 952 | # USB Input Devices |
@@ -863,19 +963,23 @@ CONFIG_USB_HIDDEV=y | |||
863 | # CONFIG_USB_MOUSE is not set | 963 | # CONFIG_USB_MOUSE is not set |
864 | # CONFIG_USB_AIPTEK is not set | 964 | # CONFIG_USB_AIPTEK is not set |
865 | # CONFIG_USB_WACOM is not set | 965 | # CONFIG_USB_WACOM is not set |
966 | # CONFIG_USB_ACECAD is not set | ||
866 | # CONFIG_USB_KBTAB is not set | 967 | # CONFIG_USB_KBTAB is not set |
867 | # CONFIG_USB_POWERMATE is not set | 968 | # CONFIG_USB_POWERMATE is not set |
868 | # CONFIG_USB_MTOUCH is not set | 969 | # CONFIG_USB_MTOUCH is not set |
970 | # CONFIG_USB_ITMTOUCH is not set | ||
869 | # CONFIG_USB_EGALAX is not set | 971 | # CONFIG_USB_EGALAX is not set |
972 | # CONFIG_USB_YEALINK is not set | ||
870 | # CONFIG_USB_XPAD is not set | 973 | # CONFIG_USB_XPAD is not set |
871 | # CONFIG_USB_ATI_REMOTE is not set | 974 | # CONFIG_USB_ATI_REMOTE is not set |
975 | # CONFIG_USB_KEYSPAN_REMOTE is not set | ||
976 | # CONFIG_USB_APPLETOUCH is not set | ||
872 | 977 | ||
873 | # | 978 | # |
874 | # USB Imaging devices | 979 | # USB Imaging devices |
875 | # | 980 | # |
876 | # CONFIG_USB_MDC800 is not set | 981 | # CONFIG_USB_MDC800 is not set |
877 | # CONFIG_USB_MICROTEK is not set | 982 | # CONFIG_USB_MICROTEK is not set |
878 | # CONFIG_USB_HPUSBSCSI is not set | ||
879 | 983 | ||
880 | # | 984 | # |
881 | # USB Multimedia devices | 985 | # USB Multimedia devices |
@@ -894,6 +998,7 @@ CONFIG_USB_HIDDEV=y | |||
894 | # CONFIG_USB_PEGASUS is not set | 998 | # CONFIG_USB_PEGASUS is not set |
895 | # CONFIG_USB_RTL8150 is not set | 999 | # CONFIG_USB_RTL8150 is not set |
896 | # CONFIG_USB_USBNET is not set | 1000 | # CONFIG_USB_USBNET is not set |
1001 | CONFIG_USB_MON=y | ||
897 | 1002 | ||
898 | # | 1003 | # |
899 | # USB port drivers | 1004 | # USB port drivers |
@@ -909,7 +1014,6 @@ CONFIG_USB_HIDDEV=y | |||
909 | # | 1014 | # |
910 | # CONFIG_USB_EMI62 is not set | 1015 | # CONFIG_USB_EMI62 is not set |
911 | # CONFIG_USB_EMI26 is not set | 1016 | # CONFIG_USB_EMI26 is not set |
912 | # CONFIG_USB_TIGL is not set | ||
913 | # CONFIG_USB_AUERSWALD is not set | 1017 | # CONFIG_USB_AUERSWALD is not set |
914 | # CONFIG_USB_RIO500 is not set | 1018 | # CONFIG_USB_RIO500 is not set |
915 | # CONFIG_USB_LEGOTOWER is not set | 1019 | # CONFIG_USB_LEGOTOWER is not set |
@@ -918,10 +1022,12 @@ CONFIG_USB_HIDDEV=y | |||
918 | # CONFIG_USB_CYTHERM is not set | 1022 | # CONFIG_USB_CYTHERM is not set |
919 | # CONFIG_USB_PHIDGETKIT is not set | 1023 | # CONFIG_USB_PHIDGETKIT is not set |
920 | # CONFIG_USB_PHIDGETSERVO is not set | 1024 | # CONFIG_USB_PHIDGETSERVO is not set |
1025 | # CONFIG_USB_IDMOUSE is not set | ||
1026 | # CONFIG_USB_LD is not set | ||
921 | # CONFIG_USB_TEST is not set | 1027 | # CONFIG_USB_TEST is not set |
922 | 1028 | ||
923 | # | 1029 | # |
924 | # USB ATM/DSL drivers | 1030 | # USB DSL modem support |
925 | # | 1031 | # |
926 | 1032 | ||
927 | # | 1033 | # |
@@ -930,10 +1036,25 @@ CONFIG_USB_HIDDEV=y | |||
930 | # CONFIG_USB_GADGET is not set | 1036 | # CONFIG_USB_GADGET is not set |
931 | 1037 | ||
932 | # | 1038 | # |
1039 | # MMC/SD Card support | ||
1040 | # | ||
1041 | # CONFIG_MMC is not set | ||
1042 | |||
1043 | # | ||
1044 | # InfiniBand support | ||
1045 | # | ||
1046 | # CONFIG_INFINIBAND is not set | ||
1047 | |||
1048 | # | ||
1049 | # SN Devices | ||
1050 | # | ||
1051 | |||
1052 | # | ||
933 | # File systems | 1053 | # File systems |
934 | # | 1054 | # |
935 | CONFIG_EXT2_FS=y | 1055 | CONFIG_EXT2_FS=y |
936 | # CONFIG_EXT2_FS_XATTR is not set | 1056 | # CONFIG_EXT2_FS_XATTR is not set |
1057 | # CONFIG_EXT2_FS_XIP is not set | ||
937 | CONFIG_EXT3_FS=y | 1058 | CONFIG_EXT3_FS=y |
938 | CONFIG_EXT3_FS_XATTR=y | 1059 | CONFIG_EXT3_FS_XATTR=y |
939 | # CONFIG_EXT3_FS_POSIX_ACL is not set | 1060 | # CONFIG_EXT3_FS_POSIX_ACL is not set |
@@ -945,17 +1066,20 @@ CONFIG_FS_MBCACHE=y | |||
945 | # CONFIG_JFS_FS is not set | 1066 | # CONFIG_JFS_FS is not set |
946 | CONFIG_FS_POSIX_ACL=y | 1067 | CONFIG_FS_POSIX_ACL=y |
947 | CONFIG_XFS_FS=y | 1068 | CONFIG_XFS_FS=y |
948 | # CONFIG_XFS_RT is not set | 1069 | CONFIG_XFS_EXPORT=y |
949 | CONFIG_XFS_QUOTA=y | 1070 | CONFIG_XFS_QUOTA=y |
950 | CONFIG_XFS_SECURITY=y | 1071 | CONFIG_XFS_SECURITY=y |
951 | CONFIG_XFS_POSIX_ACL=y | 1072 | CONFIG_XFS_POSIX_ACL=y |
1073 | # CONFIG_XFS_RT is not set | ||
952 | # CONFIG_MINIX_FS is not set | 1074 | # CONFIG_MINIX_FS is not set |
953 | # CONFIG_ROMFS_FS is not set | 1075 | # CONFIG_ROMFS_FS is not set |
1076 | CONFIG_INOTIFY=y | ||
954 | # CONFIG_QUOTA is not set | 1077 | # CONFIG_QUOTA is not set |
955 | CONFIG_QUOTACTL=y | 1078 | CONFIG_QUOTACTL=y |
956 | CONFIG_DNOTIFY=y | 1079 | CONFIG_DNOTIFY=y |
957 | CONFIG_AUTOFS_FS=m | 1080 | CONFIG_AUTOFS_FS=m |
958 | CONFIG_AUTOFS4_FS=m | 1081 | CONFIG_AUTOFS4_FS=m |
1082 | # CONFIG_FUSE_FS is not set | ||
959 | 1083 | ||
960 | # | 1084 | # |
961 | # CD-ROM/DVD Filesystems | 1085 | # CD-ROM/DVD Filesystems |
@@ -982,14 +1106,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
982 | CONFIG_PROC_FS=y | 1106 | CONFIG_PROC_FS=y |
983 | CONFIG_PROC_KCORE=y | 1107 | CONFIG_PROC_KCORE=y |
984 | CONFIG_SYSFS=y | 1108 | CONFIG_SYSFS=y |
985 | # CONFIG_DEVFS_FS is not set | ||
986 | CONFIG_DEVPTS_FS_XATTR=y | ||
987 | CONFIG_DEVPTS_FS_SECURITY=y | ||
988 | CONFIG_TMPFS=y | 1109 | CONFIG_TMPFS=y |
989 | # CONFIG_TMPFS_XATTR is not set | ||
990 | CONFIG_HUGETLBFS=y | 1110 | CONFIG_HUGETLBFS=y |
991 | CONFIG_HUGETLB_PAGE=y | 1111 | CONFIG_HUGETLB_PAGE=y |
992 | CONFIG_RAMFS=y | 1112 | CONFIG_RAMFS=y |
1113 | # CONFIG_RELAYFS_FS is not set | ||
993 | 1114 | ||
994 | # | 1115 | # |
995 | # Miscellaneous filesystems | 1116 | # Miscellaneous filesystems |
@@ -1013,15 +1134,18 @@ CONFIG_RAMFS=y | |||
1013 | # | 1134 | # |
1014 | CONFIG_NFS_FS=m | 1135 | CONFIG_NFS_FS=m |
1015 | CONFIG_NFS_V3=y | 1136 | CONFIG_NFS_V3=y |
1137 | # CONFIG_NFS_V3_ACL is not set | ||
1016 | CONFIG_NFS_V4=y | 1138 | CONFIG_NFS_V4=y |
1017 | # CONFIG_NFS_DIRECTIO is not set | 1139 | # CONFIG_NFS_DIRECTIO is not set |
1018 | CONFIG_NFSD=m | 1140 | CONFIG_NFSD=m |
1019 | CONFIG_NFSD_V3=y | 1141 | CONFIG_NFSD_V3=y |
1142 | # CONFIG_NFSD_V3_ACL is not set | ||
1020 | CONFIG_NFSD_V4=y | 1143 | CONFIG_NFSD_V4=y |
1021 | CONFIG_NFSD_TCP=y | 1144 | CONFIG_NFSD_TCP=y |
1022 | CONFIG_LOCKD=m | 1145 | CONFIG_LOCKD=m |
1023 | CONFIG_LOCKD_V4=y | 1146 | CONFIG_LOCKD_V4=y |
1024 | CONFIG_EXPORTFS=m | 1147 | CONFIG_EXPORTFS=y |
1148 | CONFIG_NFS_COMMON=y | ||
1025 | CONFIG_SUNRPC=m | 1149 | CONFIG_SUNRPC=m |
1026 | CONFIG_SUNRPC_GSS=m | 1150 | CONFIG_SUNRPC_GSS=m |
1027 | CONFIG_RPCSEC_GSS_KRB5=m | 1151 | CONFIG_RPCSEC_GSS_KRB5=m |
@@ -1031,9 +1155,11 @@ CONFIG_CIFS=m | |||
1031 | CONFIG_CIFS_STATS=y | 1155 | CONFIG_CIFS_STATS=y |
1032 | CONFIG_CIFS_XATTR=y | 1156 | CONFIG_CIFS_XATTR=y |
1033 | CONFIG_CIFS_POSIX=y | 1157 | CONFIG_CIFS_POSIX=y |
1158 | # CONFIG_CIFS_EXPERIMENTAL is not set | ||
1034 | # CONFIG_NCP_FS is not set | 1159 | # CONFIG_NCP_FS is not set |
1035 | # CONFIG_CODA_FS is not set | 1160 | # CONFIG_CODA_FS is not set |
1036 | # CONFIG_AFS_FS is not set | 1161 | # CONFIG_AFS_FS is not set |
1162 | # CONFIG_9P_FS is not set | ||
1037 | 1163 | ||
1038 | # | 1164 | # |
1039 | # Partition Types | 1165 | # Partition Types |
@@ -1103,8 +1229,12 @@ CONFIG_NLS_UTF8=m | |||
1103 | # Library routines | 1229 | # Library routines |
1104 | # | 1230 | # |
1105 | # CONFIG_CRC_CCITT is not set | 1231 | # CONFIG_CRC_CCITT is not set |
1232 | # CONFIG_CRC16 is not set | ||
1106 | CONFIG_CRC32=y | 1233 | CONFIG_CRC32=y |
1107 | # CONFIG_LIBCRC32C is not set | 1234 | # CONFIG_LIBCRC32C is not set |
1235 | CONFIG_GENERIC_HARDIRQS=y | ||
1236 | CONFIG_GENERIC_IRQ_PROBE=y | ||
1237 | CONFIG_GENERIC_PENDING_IRQ=y | ||
1108 | 1238 | ||
1109 | # | 1239 | # |
1110 | # Profiling support | 1240 | # Profiling support |
@@ -1115,14 +1245,20 @@ CONFIG_OPROFILE=y | |||
1115 | # | 1245 | # |
1116 | # Kernel hacking | 1246 | # Kernel hacking |
1117 | # | 1247 | # |
1248 | # CONFIG_PRINTK_TIME is not set | ||
1118 | CONFIG_DEBUG_KERNEL=y | 1249 | CONFIG_DEBUG_KERNEL=y |
1119 | CONFIG_MAGIC_SYSRQ=y | 1250 | CONFIG_MAGIC_SYSRQ=y |
1251 | CONFIG_LOG_BUF_SHIFT=16 | ||
1252 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1120 | # CONFIG_SCHEDSTATS is not set | 1253 | # CONFIG_SCHEDSTATS is not set |
1121 | # CONFIG_DEBUG_SLAB is not set | 1254 | # CONFIG_DEBUG_SLAB is not set |
1255 | CONFIG_DEBUG_PREEMPT=y | ||
1122 | # CONFIG_DEBUG_SPINLOCK is not set | 1256 | # CONFIG_DEBUG_SPINLOCK is not set |
1123 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | 1257 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set |
1124 | # CONFIG_DEBUG_KOBJECT is not set | 1258 | # CONFIG_DEBUG_KOBJECT is not set |
1125 | # CONFIG_DEBUG_INFO is not set | 1259 | # CONFIG_DEBUG_INFO is not set |
1260 | # CONFIG_DEBUG_FS is not set | ||
1261 | # CONFIG_KPROBES is not set | ||
1126 | # CONFIG_IA64_GRANULE_16MB is not set | 1262 | # CONFIG_IA64_GRANULE_16MB is not set |
1127 | CONFIG_IA64_GRANULE_64MB=y | 1263 | CONFIG_IA64_GRANULE_64MB=y |
1128 | # CONFIG_IA64_PRINT_HAZARDS is not set | 1264 | # CONFIG_IA64_PRINT_HAZARDS is not set |
@@ -1149,6 +1285,7 @@ CONFIG_CRYPTO_MD5=y | |||
1149 | # CONFIG_CRYPTO_SHA256 is not set | 1285 | # CONFIG_CRYPTO_SHA256 is not set |
1150 | # CONFIG_CRYPTO_SHA512 is not set | 1286 | # CONFIG_CRYPTO_SHA512 is not set |
1151 | # CONFIG_CRYPTO_WP512 is not set | 1287 | # CONFIG_CRYPTO_WP512 is not set |
1288 | # CONFIG_CRYPTO_TGR192 is not set | ||
1152 | CONFIG_CRYPTO_DES=y | 1289 | CONFIG_CRYPTO_DES=y |
1153 | # CONFIG_CRYPTO_BLOWFISH is not set | 1290 | # CONFIG_CRYPTO_BLOWFISH is not set |
1154 | # CONFIG_CRYPTO_TWOFISH is not set | 1291 | # CONFIG_CRYPTO_TWOFISH is not set |
@@ -1164,3 +1301,7 @@ CONFIG_CRYPTO_DES=y | |||
1164 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1301 | # CONFIG_CRYPTO_MICHAEL_MIC is not set |
1165 | # CONFIG_CRYPTO_CRC32C is not set | 1302 | # CONFIG_CRYPTO_CRC32C is not set |
1166 | # CONFIG_CRYPTO_TEST is not set | 1303 | # CONFIG_CRYPTO_TEST is not set |
1304 | |||
1305 | # | ||
1306 | # Hardware crypto devices | ||
1307 | # | ||
diff --git a/arch/ia64/configs/tiger_defconfig b/arch/ia64/configs/tiger_defconfig index d452e18ac494..9bc8bcafc905 100644 --- a/arch/ia64/configs/tiger_defconfig +++ b/arch/ia64/configs/tiger_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6-tiger-smp | 3 | # Linux kernel version: 2.6.14-rc1 |
4 | # Wed Aug 17 10:19:51 2005 | 4 | # Wed Sep 14 15:17:57 2005 |
5 | # | 5 | # |
6 | 6 | ||
7 | # | 7 | # |
@@ -16,6 +16,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
16 | # General setup | 16 | # General setup |
17 | # | 17 | # |
18 | CONFIG_LOCALVERSION="" | 18 | CONFIG_LOCALVERSION="" |
19 | CONFIG_LOCALVERSION_AUTO=y | ||
19 | CONFIG_SWAP=y | 20 | CONFIG_SWAP=y |
20 | CONFIG_SYSVIPC=y | 21 | CONFIG_SYSVIPC=y |
21 | CONFIG_POSIX_MQUEUE=y | 22 | CONFIG_POSIX_MQUEUE=y |
@@ -27,6 +28,7 @@ CONFIG_KOBJECT_UEVENT=y | |||
27 | CONFIG_IKCONFIG=y | 28 | CONFIG_IKCONFIG=y |
28 | CONFIG_IKCONFIG_PROC=y | 29 | CONFIG_IKCONFIG_PROC=y |
29 | # CONFIG_CPUSETS is not set | 30 | # CONFIG_CPUSETS is not set |
31 | CONFIG_INITRAMFS_SOURCE="" | ||
30 | # CONFIG_EMBEDDED is not set | 32 | # CONFIG_EMBEDDED is not set |
31 | CONFIG_KALLSYMS=y | 33 | CONFIG_KALLSYMS=y |
32 | CONFIG_KALLSYMS_ALL=y | 34 | CONFIG_KALLSYMS_ALL=y |
@@ -103,6 +105,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
103 | # CONFIG_SPARSEMEM_MANUAL is not set | 105 | # CONFIG_SPARSEMEM_MANUAL is not set |
104 | CONFIG_FLATMEM=y | 106 | CONFIG_FLATMEM=y |
105 | CONFIG_FLAT_NODE_MEM_MAP=y | 107 | CONFIG_FLAT_NODE_MEM_MAP=y |
108 | # CONFIG_SPARSEMEM_STATIC is not set | ||
106 | CONFIG_HAVE_DEC_LOCK=y | 109 | CONFIG_HAVE_DEC_LOCK=y |
107 | CONFIG_IA32_SUPPORT=y | 110 | CONFIG_IA32_SUPPORT=y |
108 | CONFIG_COMPAT=y | 111 | CONFIG_COMPAT=y |
@@ -115,6 +118,7 @@ CONFIG_IA64_PALINFO=y | |||
115 | # | 118 | # |
116 | CONFIG_EFI_VARS=y | 119 | CONFIG_EFI_VARS=y |
117 | CONFIG_EFI_PCDP=y | 120 | CONFIG_EFI_PCDP=y |
121 | # CONFIG_DELL_RBU is not set | ||
118 | CONFIG_BINFMT_ELF=y | 122 | CONFIG_BINFMT_ELF=y |
119 | CONFIG_BINFMT_MISC=m | 123 | CONFIG_BINFMT_MISC=m |
120 | 124 | ||
@@ -122,20 +126,27 @@ CONFIG_BINFMT_MISC=m | |||
122 | # Power management and ACPI | 126 | # Power management and ACPI |
123 | # | 127 | # |
124 | CONFIG_PM=y | 128 | CONFIG_PM=y |
125 | CONFIG_ACPI=y | 129 | # CONFIG_PM_DEBUG is not set |
126 | 130 | ||
127 | # | 131 | # |
128 | # ACPI (Advanced Configuration and Power Interface) Support | 132 | # ACPI (Advanced Configuration and Power Interface) Support |
129 | # | 133 | # |
134 | CONFIG_ACPI=y | ||
130 | CONFIG_ACPI_BUTTON=m | 135 | CONFIG_ACPI_BUTTON=m |
131 | CONFIG_ACPI_FAN=m | 136 | CONFIG_ACPI_FAN=m |
132 | CONFIG_ACPI_PROCESSOR=m | 137 | CONFIG_ACPI_PROCESSOR=m |
133 | # CONFIG_ACPI_HOTPLUG_CPU is not set | 138 | CONFIG_ACPI_HOTPLUG_CPU=y |
134 | CONFIG_ACPI_THERMAL=m | 139 | CONFIG_ACPI_THERMAL=m |
140 | CONFIG_ACPI_BLACKLIST_YEAR=0 | ||
135 | # CONFIG_ACPI_DEBUG is not set | 141 | # CONFIG_ACPI_DEBUG is not set |
136 | CONFIG_ACPI_POWER=y | 142 | CONFIG_ACPI_POWER=y |
137 | CONFIG_ACPI_SYSTEM=y | 143 | CONFIG_ACPI_SYSTEM=y |
138 | # CONFIG_ACPI_CONTAINER is not set | 144 | CONFIG_ACPI_CONTAINER=m |
145 | |||
146 | # | ||
147 | # CPU Frequency scaling | ||
148 | # | ||
149 | # CONFIG_CPU_FREQ is not set | ||
139 | 150 | ||
140 | # | 151 | # |
141 | # Bus options (PCI, PCMCIA) | 152 | # Bus options (PCI, PCMCIA) |
@@ -144,7 +155,6 @@ CONFIG_PCI=y | |||
144 | CONFIG_PCI_DOMAINS=y | 155 | CONFIG_PCI_DOMAINS=y |
145 | # CONFIG_PCI_MSI is not set | 156 | # CONFIG_PCI_MSI is not set |
146 | CONFIG_PCI_LEGACY_PROC=y | 157 | CONFIG_PCI_LEGACY_PROC=y |
147 | CONFIG_PCI_NAMES=y | ||
148 | # CONFIG_PCI_DEBUG is not set | 158 | # CONFIG_PCI_DEBUG is not set |
149 | 159 | ||
150 | # | 160 | # |
@@ -188,14 +198,19 @@ CONFIG_SYN_COOKIES=y | |||
188 | # CONFIG_INET_ESP is not set | 198 | # CONFIG_INET_ESP is not set |
189 | # CONFIG_INET_IPCOMP is not set | 199 | # CONFIG_INET_IPCOMP is not set |
190 | # CONFIG_INET_TUNNEL is not set | 200 | # CONFIG_INET_TUNNEL is not set |
191 | CONFIG_IP_TCPDIAG=y | 201 | CONFIG_INET_DIAG=y |
192 | # CONFIG_IP_TCPDIAG_IPV6 is not set | 202 | CONFIG_INET_TCP_DIAG=y |
193 | # CONFIG_TCP_CONG_ADVANCED is not set | 203 | # CONFIG_TCP_CONG_ADVANCED is not set |
194 | CONFIG_TCP_CONG_BIC=y | 204 | CONFIG_TCP_CONG_BIC=y |
195 | # CONFIG_IPV6 is not set | 205 | # CONFIG_IPV6 is not set |
196 | # CONFIG_NETFILTER is not set | 206 | # CONFIG_NETFILTER is not set |
197 | 207 | ||
198 | # | 208 | # |
209 | # DCCP Configuration (EXPERIMENTAL) | ||
210 | # | ||
211 | # CONFIG_IP_DCCP is not set | ||
212 | |||
213 | # | ||
199 | # SCTP Configuration (EXPERIMENTAL) | 214 | # SCTP Configuration (EXPERIMENTAL) |
200 | # | 215 | # |
201 | # CONFIG_IP_SCTP is not set | 216 | # CONFIG_IP_SCTP is not set |
@@ -218,9 +233,11 @@ CONFIG_TCP_CONG_BIC=y | |||
218 | # Network testing | 233 | # Network testing |
219 | # | 234 | # |
220 | # CONFIG_NET_PKTGEN is not set | 235 | # CONFIG_NET_PKTGEN is not set |
236 | # CONFIG_NETFILTER_NETLINK is not set | ||
221 | # CONFIG_HAMRADIO is not set | 237 | # CONFIG_HAMRADIO is not set |
222 | # CONFIG_IRDA is not set | 238 | # CONFIG_IRDA is not set |
223 | # CONFIG_BT is not set | 239 | # CONFIG_BT is not set |
240 | # CONFIG_IEEE80211 is not set | ||
224 | 241 | ||
225 | # | 242 | # |
226 | # Device Drivers | 243 | # Device Drivers |
@@ -235,6 +252,11 @@ CONFIG_FW_LOADER=m | |||
235 | # CONFIG_DEBUG_DRIVER is not set | 252 | # CONFIG_DEBUG_DRIVER is not set |
236 | 253 | ||
237 | # | 254 | # |
255 | # Connector - unified userspace <-> kernelspace linker | ||
256 | # | ||
257 | # CONFIG_CONNECTOR is not set | ||
258 | |||
259 | # | ||
238 | # Memory Technology Devices (MTD) | 260 | # Memory Technology Devices (MTD) |
239 | # | 261 | # |
240 | # CONFIG_MTD is not set | 262 | # CONFIG_MTD is not set |
@@ -247,7 +269,13 @@ CONFIG_FW_LOADER=m | |||
247 | # | 269 | # |
248 | # Plug and Play support | 270 | # Plug and Play support |
249 | # | 271 | # |
250 | # CONFIG_PNP is not set | 272 | CONFIG_PNP=y |
273 | # CONFIG_PNP_DEBUG is not set | ||
274 | |||
275 | # | ||
276 | # Protocols | ||
277 | # | ||
278 | CONFIG_PNPACPI=y | ||
251 | 279 | ||
252 | # | 280 | # |
253 | # Block devices | 281 | # Block devices |
@@ -266,7 +294,6 @@ CONFIG_BLK_DEV_RAM=y | |||
266 | CONFIG_BLK_DEV_RAM_COUNT=16 | 294 | CONFIG_BLK_DEV_RAM_COUNT=16 |
267 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 295 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
268 | CONFIG_BLK_DEV_INITRD=y | 296 | CONFIG_BLK_DEV_INITRD=y |
269 | CONFIG_INITRAMFS_SOURCE="" | ||
270 | # CONFIG_CDROM_PKTCDVD is not set | 297 | # CONFIG_CDROM_PKTCDVD is not set |
271 | 298 | ||
272 | # | 299 | # |
@@ -299,7 +326,8 @@ CONFIG_BLK_DEV_IDESCSI=m | |||
299 | # | 326 | # |
300 | # IDE chipset support/bugfixes | 327 | # IDE chipset support/bugfixes |
301 | # | 328 | # |
302 | CONFIG_IDE_GENERIC=y | 329 | # CONFIG_IDE_GENERIC is not set |
330 | # CONFIG_BLK_DEV_IDEPNP is not set | ||
303 | CONFIG_BLK_DEV_IDEPCI=y | 331 | CONFIG_BLK_DEV_IDEPCI=y |
304 | # CONFIG_IDEPCI_SHARE_IRQ is not set | 332 | # CONFIG_IDEPCI_SHARE_IRQ is not set |
305 | # CONFIG_BLK_DEV_OFFBOARD is not set | 333 | # CONFIG_BLK_DEV_OFFBOARD is not set |
@@ -339,6 +367,7 @@ CONFIG_IDEDMA_AUTO=y | |||
339 | # | 367 | # |
340 | # SCSI device support | 368 | # SCSI device support |
341 | # | 369 | # |
370 | # CONFIG_RAID_ATTRS is not set | ||
342 | CONFIG_SCSI=y | 371 | CONFIG_SCSI=y |
343 | CONFIG_SCSI_PROC_FS=y | 372 | CONFIG_SCSI_PROC_FS=y |
344 | 373 | ||
@@ -366,6 +395,7 @@ CONFIG_CHR_DEV_SG=m | |||
366 | CONFIG_SCSI_SPI_ATTRS=y | 395 | CONFIG_SCSI_SPI_ATTRS=y |
367 | CONFIG_SCSI_FC_ATTRS=y | 396 | CONFIG_SCSI_FC_ATTRS=y |
368 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 397 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
398 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
369 | 399 | ||
370 | # | 400 | # |
371 | # SCSI low-level drivers | 401 | # SCSI low-level drivers |
@@ -454,6 +484,7 @@ CONFIG_DUMMY=m | |||
454 | # CONFIG_BONDING is not set | 484 | # CONFIG_BONDING is not set |
455 | # CONFIG_EQUALIZER is not set | 485 | # CONFIG_EQUALIZER is not set |
456 | # CONFIG_TUN is not set | 486 | # CONFIG_TUN is not set |
487 | # CONFIG_NET_SB1000 is not set | ||
457 | 488 | ||
458 | # | 489 | # |
459 | # ARCnet devices | 490 | # ARCnet devices |
@@ -461,6 +492,11 @@ CONFIG_DUMMY=m | |||
461 | # CONFIG_ARCNET is not set | 492 | # CONFIG_ARCNET is not set |
462 | 493 | ||
463 | # | 494 | # |
495 | # PHY device support | ||
496 | # | ||
497 | # CONFIG_PHYLIB is not set | ||
498 | |||
499 | # | ||
464 | # Ethernet (10 or 100Mbit) | 500 | # Ethernet (10 or 100Mbit) |
465 | # | 501 | # |
466 | CONFIG_NET_ETHERNET=y | 502 | CONFIG_NET_ETHERNET=y |
@@ -481,6 +517,7 @@ CONFIG_TULIP=m | |||
481 | # CONFIG_DE4X5 is not set | 517 | # CONFIG_DE4X5 is not set |
482 | # CONFIG_WINBOND_840 is not set | 518 | # CONFIG_WINBOND_840 is not set |
483 | # CONFIG_DM9102 is not set | 519 | # CONFIG_DM9102 is not set |
520 | # CONFIG_ULI526X is not set | ||
484 | # CONFIG_HP100 is not set | 521 | # CONFIG_HP100 is not set |
485 | CONFIG_NET_PCI=y | 522 | CONFIG_NET_PCI=y |
486 | # CONFIG_PCNET32 is not set | 523 | # CONFIG_PCNET32 is not set |
@@ -512,6 +549,7 @@ CONFIG_E1000=y | |||
512 | # CONFIG_HAMACHI is not set | 549 | # CONFIG_HAMACHI is not set |
513 | # CONFIG_YELLOWFIN is not set | 550 | # CONFIG_YELLOWFIN is not set |
514 | # CONFIG_R8169 is not set | 551 | # CONFIG_R8169 is not set |
552 | # CONFIG_SIS190 is not set | ||
515 | # CONFIG_SKGE is not set | 553 | # CONFIG_SKGE is not set |
516 | # CONFIG_SK98LIN is not set | 554 | # CONFIG_SK98LIN is not set |
517 | # CONFIG_VIA_VELOCITY is not set | 555 | # CONFIG_VIA_VELOCITY is not set |
@@ -521,6 +559,7 @@ CONFIG_TIGON3=y | |||
521 | # | 559 | # |
522 | # Ethernet (10000 Mbit) | 560 | # Ethernet (10000 Mbit) |
523 | # | 561 | # |
562 | # CONFIG_CHELSIO_T1 is not set | ||
524 | # CONFIG_IXGB is not set | 563 | # CONFIG_IXGB is not set |
525 | # CONFIG_S2IO is not set | 564 | # CONFIG_S2IO is not set |
526 | 565 | ||
@@ -618,6 +657,7 @@ CONFIG_HW_CONSOLE=y | |||
618 | CONFIG_SERIAL_NONSTANDARD=y | 657 | CONFIG_SERIAL_NONSTANDARD=y |
619 | # CONFIG_ROCKETPORT is not set | 658 | # CONFIG_ROCKETPORT is not set |
620 | # CONFIG_CYCLADES is not set | 659 | # CONFIG_CYCLADES is not set |
660 | # CONFIG_DIGIEPCA is not set | ||
621 | # CONFIG_MOXA_SMARTIO is not set | 661 | # CONFIG_MOXA_SMARTIO is not set |
622 | # CONFIG_ISI is not set | 662 | # CONFIG_ISI is not set |
623 | # CONFIG_SYNCLINKMP is not set | 663 | # CONFIG_SYNCLINKMP is not set |
@@ -675,6 +715,7 @@ CONFIG_DRM_RADEON=m | |||
675 | CONFIG_DRM_MGA=m | 715 | CONFIG_DRM_MGA=m |
676 | CONFIG_DRM_SIS=m | 716 | CONFIG_DRM_SIS=m |
677 | # CONFIG_DRM_VIA is not set | 717 | # CONFIG_DRM_VIA is not set |
718 | # CONFIG_DRM_SAVAGE is not set | ||
678 | CONFIG_RAW_DRIVER=m | 719 | CONFIG_RAW_DRIVER=m |
679 | CONFIG_HPET=y | 720 | CONFIG_HPET=y |
680 | # CONFIG_HPET_RTC_IRQ is not set | 721 | # CONFIG_HPET_RTC_IRQ is not set |
@@ -691,7 +732,6 @@ CONFIG_MAX_RAW_DEVS=256 | |||
691 | # I2C support | 732 | # I2C support |
692 | # | 733 | # |
693 | # CONFIG_I2C is not set | 734 | # CONFIG_I2C is not set |
694 | # CONFIG_I2C_SENSOR is not set | ||
695 | 735 | ||
696 | # | 736 | # |
697 | # Dallas's 1-wire bus | 737 | # Dallas's 1-wire bus |
@@ -702,6 +742,7 @@ CONFIG_MAX_RAW_DEVS=256 | |||
702 | # Hardware Monitoring support | 742 | # Hardware Monitoring support |
703 | # | 743 | # |
704 | CONFIG_HWMON=y | 744 | CONFIG_HWMON=y |
745 | # CONFIG_HWMON_VID is not set | ||
705 | # CONFIG_HWMON_DEBUG_CHIP is not set | 746 | # CONFIG_HWMON_DEBUG_CHIP is not set |
706 | 747 | ||
707 | # | 748 | # |
@@ -709,6 +750,10 @@ CONFIG_HWMON=y | |||
709 | # | 750 | # |
710 | 751 | ||
711 | # | 752 | # |
753 | # Multimedia Capabilities Port drivers | ||
754 | # | ||
755 | |||
756 | # | ||
712 | # Multimedia devices | 757 | # Multimedia devices |
713 | # | 758 | # |
714 | # CONFIG_VIDEO_DEV is not set | 759 | # CONFIG_VIDEO_DEV is not set |
@@ -800,9 +845,11 @@ CONFIG_USB_HIDINPUT=y | |||
800 | # CONFIG_USB_MTOUCH is not set | 845 | # CONFIG_USB_MTOUCH is not set |
801 | # CONFIG_USB_ITMTOUCH is not set | 846 | # CONFIG_USB_ITMTOUCH is not set |
802 | # CONFIG_USB_EGALAX is not set | 847 | # CONFIG_USB_EGALAX is not set |
848 | # CONFIG_USB_YEALINK is not set | ||
803 | # CONFIG_USB_XPAD is not set | 849 | # CONFIG_USB_XPAD is not set |
804 | # CONFIG_USB_ATI_REMOTE is not set | 850 | # CONFIG_USB_ATI_REMOTE is not set |
805 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 851 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
852 | # CONFIG_USB_APPLETOUCH is not set | ||
806 | 853 | ||
807 | # | 854 | # |
808 | # USB Imaging devices | 855 | # USB Imaging devices |
@@ -902,16 +949,12 @@ CONFIG_REISERFS_FS_POSIX_ACL=y | |||
902 | CONFIG_REISERFS_FS_SECURITY=y | 949 | CONFIG_REISERFS_FS_SECURITY=y |
903 | # CONFIG_JFS_FS is not set | 950 | # CONFIG_JFS_FS is not set |
904 | CONFIG_FS_POSIX_ACL=y | 951 | CONFIG_FS_POSIX_ACL=y |
905 | |||
906 | # | ||
907 | # XFS support | ||
908 | # | ||
909 | CONFIG_XFS_FS=y | 952 | CONFIG_XFS_FS=y |
910 | CONFIG_XFS_EXPORT=y | 953 | CONFIG_XFS_EXPORT=y |
911 | # CONFIG_XFS_RT is not set | ||
912 | # CONFIG_XFS_QUOTA is not set | 954 | # CONFIG_XFS_QUOTA is not set |
913 | # CONFIG_XFS_SECURITY is not set | 955 | # CONFIG_XFS_SECURITY is not set |
914 | # CONFIG_XFS_POSIX_ACL is not set | 956 | # CONFIG_XFS_POSIX_ACL is not set |
957 | # CONFIG_XFS_RT is not set | ||
915 | # CONFIG_MINIX_FS is not set | 958 | # CONFIG_MINIX_FS is not set |
916 | # CONFIG_ROMFS_FS is not set | 959 | # CONFIG_ROMFS_FS is not set |
917 | CONFIG_INOTIFY=y | 960 | CONFIG_INOTIFY=y |
@@ -919,6 +962,7 @@ CONFIG_INOTIFY=y | |||
919 | CONFIG_DNOTIFY=y | 962 | CONFIG_DNOTIFY=y |
920 | CONFIG_AUTOFS_FS=y | 963 | CONFIG_AUTOFS_FS=y |
921 | CONFIG_AUTOFS4_FS=y | 964 | CONFIG_AUTOFS4_FS=y |
965 | # CONFIG_FUSE_FS is not set | ||
922 | 966 | ||
923 | # | 967 | # |
924 | # CD-ROM/DVD Filesystems | 968 | # CD-ROM/DVD Filesystems |
@@ -947,13 +991,11 @@ CONFIG_NTFS_FS=m | |||
947 | CONFIG_PROC_FS=y | 991 | CONFIG_PROC_FS=y |
948 | CONFIG_PROC_KCORE=y | 992 | CONFIG_PROC_KCORE=y |
949 | CONFIG_SYSFS=y | 993 | CONFIG_SYSFS=y |
950 | # CONFIG_DEVPTS_FS_XATTR is not set | ||
951 | CONFIG_TMPFS=y | 994 | CONFIG_TMPFS=y |
952 | CONFIG_TMPFS_XATTR=y | ||
953 | CONFIG_TMPFS_SECURITY=y | ||
954 | CONFIG_HUGETLBFS=y | 995 | CONFIG_HUGETLBFS=y |
955 | CONFIG_HUGETLB_PAGE=y | 996 | CONFIG_HUGETLB_PAGE=y |
956 | CONFIG_RAMFS=y | 997 | CONFIG_RAMFS=y |
998 | # CONFIG_RELAYFS_FS is not set | ||
957 | 999 | ||
958 | # | 1000 | # |
959 | # Miscellaneous filesystems | 1001 | # Miscellaneous filesystems |
@@ -1003,6 +1045,7 @@ CONFIG_CIFS=m | |||
1003 | # CONFIG_NCP_FS is not set | 1045 | # CONFIG_NCP_FS is not set |
1004 | # CONFIG_CODA_FS is not set | 1046 | # CONFIG_CODA_FS is not set |
1005 | # CONFIG_AFS_FS is not set | 1047 | # CONFIG_AFS_FS is not set |
1048 | # CONFIG_9P_FS is not set | ||
1006 | 1049 | ||
1007 | # | 1050 | # |
1008 | # Partition Types | 1051 | # Partition Types |
@@ -1072,10 +1115,12 @@ CONFIG_NLS_UTF8=m | |||
1072 | # Library routines | 1115 | # Library routines |
1073 | # | 1116 | # |
1074 | # CONFIG_CRC_CCITT is not set | 1117 | # CONFIG_CRC_CCITT is not set |
1118 | # CONFIG_CRC16 is not set | ||
1075 | CONFIG_CRC32=y | 1119 | CONFIG_CRC32=y |
1076 | # CONFIG_LIBCRC32C is not set | 1120 | # CONFIG_LIBCRC32C is not set |
1077 | CONFIG_GENERIC_HARDIRQS=y | 1121 | CONFIG_GENERIC_HARDIRQS=y |
1078 | CONFIG_GENERIC_IRQ_PROBE=y | 1122 | CONFIG_GENERIC_IRQ_PROBE=y |
1123 | CONFIG_GENERIC_PENDING_IRQ=y | ||
1079 | 1124 | ||
1080 | # | 1125 | # |
1081 | # Profiling support | 1126 | # Profiling support |
@@ -1089,6 +1134,7 @@ CONFIG_GENERIC_IRQ_PROBE=y | |||
1089 | CONFIG_DEBUG_KERNEL=y | 1134 | CONFIG_DEBUG_KERNEL=y |
1090 | CONFIG_MAGIC_SYSRQ=y | 1135 | CONFIG_MAGIC_SYSRQ=y |
1091 | CONFIG_LOG_BUF_SHIFT=20 | 1136 | CONFIG_LOG_BUF_SHIFT=20 |
1137 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1092 | # CONFIG_SCHEDSTATS is not set | 1138 | # CONFIG_SCHEDSTATS is not set |
1093 | # CONFIG_DEBUG_SLAB is not set | 1139 | # CONFIG_DEBUG_SLAB is not set |
1094 | # CONFIG_DEBUG_SPINLOCK is not set | 1140 | # CONFIG_DEBUG_SPINLOCK is not set |
diff --git a/arch/ia64/configs/zx1_defconfig b/arch/ia64/configs/zx1_defconfig index 80b0e9eb7fb3..0856ca67dd50 100644 --- a/arch/ia64/configs/zx1_defconfig +++ b/arch/ia64/configs/zx1_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6 | 3 | # Linux kernel version: 2.6.14-rc1 |
4 | # Wed Aug 17 10:02:43 2005 | 4 | # Wed Sep 14 15:15:01 2005 |
5 | # | 5 | # |
6 | 6 | ||
7 | # | 7 | # |
@@ -18,6 +18,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
18 | # General setup | 18 | # General setup |
19 | # | 19 | # |
20 | CONFIG_LOCALVERSION="" | 20 | CONFIG_LOCALVERSION="" |
21 | CONFIG_LOCALVERSION_AUTO=y | ||
21 | CONFIG_SWAP=y | 22 | CONFIG_SWAP=y |
22 | CONFIG_SYSVIPC=y | 23 | CONFIG_SYSVIPC=y |
23 | # CONFIG_POSIX_MQUEUE is not set | 24 | # CONFIG_POSIX_MQUEUE is not set |
@@ -29,6 +30,7 @@ CONFIG_HOTPLUG=y | |||
29 | CONFIG_KOBJECT_UEVENT=y | 30 | CONFIG_KOBJECT_UEVENT=y |
30 | # CONFIG_IKCONFIG is not set | 31 | # CONFIG_IKCONFIG is not set |
31 | # CONFIG_CPUSETS is not set | 32 | # CONFIG_CPUSETS is not set |
33 | CONFIG_INITRAMFS_SOURCE="" | ||
32 | # CONFIG_EMBEDDED is not set | 34 | # CONFIG_EMBEDDED is not set |
33 | CONFIG_KALLSYMS=y | 35 | CONFIG_KALLSYMS=y |
34 | # CONFIG_KALLSYMS_ALL is not set | 36 | # CONFIG_KALLSYMS_ALL is not set |
@@ -103,6 +105,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
103 | # CONFIG_SPARSEMEM_MANUAL is not set | 105 | # CONFIG_SPARSEMEM_MANUAL is not set |
104 | CONFIG_FLATMEM=y | 106 | CONFIG_FLATMEM=y |
105 | CONFIG_FLAT_NODE_MEM_MAP=y | 107 | CONFIG_FLAT_NODE_MEM_MAP=y |
108 | # CONFIG_SPARSEMEM_STATIC is not set | ||
106 | CONFIG_HAVE_DEC_LOCK=y | 109 | CONFIG_HAVE_DEC_LOCK=y |
107 | CONFIG_IA32_SUPPORT=y | 110 | CONFIG_IA32_SUPPORT=y |
108 | CONFIG_COMPAT=y | 111 | CONFIG_COMPAT=y |
@@ -115,6 +118,7 @@ CONFIG_IA64_PALINFO=y | |||
115 | # | 118 | # |
116 | CONFIG_EFI_VARS=y | 119 | CONFIG_EFI_VARS=y |
117 | CONFIG_EFI_PCDP=y | 120 | CONFIG_EFI_PCDP=y |
121 | # CONFIG_DELL_RBU is not set | ||
118 | CONFIG_BINFMT_ELF=y | 122 | CONFIG_BINFMT_ELF=y |
119 | CONFIG_BINFMT_MISC=y | 123 | CONFIG_BINFMT_MISC=y |
120 | 124 | ||
@@ -122,28 +126,34 @@ CONFIG_BINFMT_MISC=y | |||
122 | # Power management and ACPI | 126 | # Power management and ACPI |
123 | # | 127 | # |
124 | CONFIG_PM=y | 128 | CONFIG_PM=y |
125 | CONFIG_ACPI=y | 129 | # CONFIG_PM_DEBUG is not set |
126 | 130 | ||
127 | # | 131 | # |
128 | # ACPI (Advanced Configuration and Power Interface) Support | 132 | # ACPI (Advanced Configuration and Power Interface) Support |
129 | # | 133 | # |
134 | CONFIG_ACPI=y | ||
130 | CONFIG_ACPI_BUTTON=y | 135 | CONFIG_ACPI_BUTTON=y |
131 | CONFIG_ACPI_FAN=y | 136 | CONFIG_ACPI_FAN=y |
132 | CONFIG_ACPI_PROCESSOR=y | 137 | CONFIG_ACPI_PROCESSOR=y |
133 | CONFIG_ACPI_THERMAL=y | 138 | CONFIG_ACPI_THERMAL=y |
139 | CONFIG_ACPI_BLACKLIST_YEAR=0 | ||
134 | # CONFIG_ACPI_DEBUG is not set | 140 | # CONFIG_ACPI_DEBUG is not set |
135 | CONFIG_ACPI_POWER=y | 141 | CONFIG_ACPI_POWER=y |
136 | CONFIG_ACPI_SYSTEM=y | 142 | CONFIG_ACPI_SYSTEM=y |
137 | # CONFIG_ACPI_CONTAINER is not set | 143 | # CONFIG_ACPI_CONTAINER is not set |
138 | 144 | ||
139 | # | 145 | # |
146 | # CPU Frequency scaling | ||
147 | # | ||
148 | # CONFIG_CPU_FREQ is not set | ||
149 | |||
150 | # | ||
140 | # Bus options (PCI, PCMCIA) | 151 | # Bus options (PCI, PCMCIA) |
141 | # | 152 | # |
142 | CONFIG_PCI=y | 153 | CONFIG_PCI=y |
143 | CONFIG_PCI_DOMAINS=y | 154 | CONFIG_PCI_DOMAINS=y |
144 | # CONFIG_PCI_MSI is not set | 155 | # CONFIG_PCI_MSI is not set |
145 | CONFIG_PCI_LEGACY_PROC=y | 156 | CONFIG_PCI_LEGACY_PROC=y |
146 | CONFIG_PCI_NAMES=y | ||
147 | # CONFIG_PCI_DEBUG is not set | 157 | # CONFIG_PCI_DEBUG is not set |
148 | 158 | ||
149 | # | 159 | # |
@@ -187,8 +197,8 @@ CONFIG_IP_FIB_HASH=y | |||
187 | # CONFIG_INET_ESP is not set | 197 | # CONFIG_INET_ESP is not set |
188 | # CONFIG_INET_IPCOMP is not set | 198 | # CONFIG_INET_IPCOMP is not set |
189 | # CONFIG_INET_TUNNEL is not set | 199 | # CONFIG_INET_TUNNEL is not set |
190 | # CONFIG_IP_TCPDIAG is not set | 200 | CONFIG_INET_DIAG=y |
191 | # CONFIG_IP_TCPDIAG_IPV6 is not set | 201 | CONFIG_INET_TCP_DIAG=y |
192 | # CONFIG_TCP_CONG_ADVANCED is not set | 202 | # CONFIG_TCP_CONG_ADVANCED is not set |
193 | CONFIG_TCP_CONG_BIC=y | 203 | CONFIG_TCP_CONG_BIC=y |
194 | 204 | ||
@@ -204,7 +214,6 @@ CONFIG_NETFILTER=y | |||
204 | # IP: Netfilter Configuration | 214 | # IP: Netfilter Configuration |
205 | # | 215 | # |
206 | # CONFIG_IP_NF_CONNTRACK is not set | 216 | # CONFIG_IP_NF_CONNTRACK is not set |
207 | # CONFIG_IP_NF_CONNTRACK_MARK is not set | ||
208 | # CONFIG_IP_NF_QUEUE is not set | 217 | # CONFIG_IP_NF_QUEUE is not set |
209 | # CONFIG_IP_NF_IPTABLES is not set | 218 | # CONFIG_IP_NF_IPTABLES is not set |
210 | CONFIG_IP_NF_ARPTABLES=y | 219 | CONFIG_IP_NF_ARPTABLES=y |
@@ -212,6 +221,11 @@ CONFIG_IP_NF_ARPTABLES=y | |||
212 | # CONFIG_IP_NF_ARP_MANGLE is not set | 221 | # CONFIG_IP_NF_ARP_MANGLE is not set |
213 | 222 | ||
214 | # | 223 | # |
224 | # DCCP Configuration (EXPERIMENTAL) | ||
225 | # | ||
226 | # CONFIG_IP_DCCP is not set | ||
227 | |||
228 | # | ||
215 | # SCTP Configuration (EXPERIMENTAL) | 229 | # SCTP Configuration (EXPERIMENTAL) |
216 | # | 230 | # |
217 | # CONFIG_IP_SCTP is not set | 231 | # CONFIG_IP_SCTP is not set |
@@ -234,9 +248,11 @@ CONFIG_IP_NF_ARPTABLES=y | |||
234 | # Network testing | 248 | # Network testing |
235 | # | 249 | # |
236 | # CONFIG_NET_PKTGEN is not set | 250 | # CONFIG_NET_PKTGEN is not set |
251 | # CONFIG_NETFILTER_NETLINK is not set | ||
237 | # CONFIG_HAMRADIO is not set | 252 | # CONFIG_HAMRADIO is not set |
238 | # CONFIG_IRDA is not set | 253 | # CONFIG_IRDA is not set |
239 | # CONFIG_BT is not set | 254 | # CONFIG_BT is not set |
255 | # CONFIG_IEEE80211 is not set | ||
240 | 256 | ||
241 | # | 257 | # |
242 | # Device Drivers | 258 | # Device Drivers |
@@ -251,6 +267,11 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
251 | # CONFIG_DEBUG_DRIVER is not set | 267 | # CONFIG_DEBUG_DRIVER is not set |
252 | 268 | ||
253 | # | 269 | # |
270 | # Connector - unified userspace <-> kernelspace linker | ||
271 | # | ||
272 | # CONFIG_CONNECTOR is not set | ||
273 | |||
274 | # | ||
254 | # Memory Technology Devices (MTD) | 275 | # Memory Technology Devices (MTD) |
255 | # | 276 | # |
256 | # CONFIG_MTD is not set | 277 | # CONFIG_MTD is not set |
@@ -263,7 +284,13 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
263 | # | 284 | # |
264 | # Plug and Play support | 285 | # Plug and Play support |
265 | # | 286 | # |
266 | # CONFIG_PNP is not set | 287 | CONFIG_PNP=y |
288 | # CONFIG_PNP_DEBUG is not set | ||
289 | |||
290 | # | ||
291 | # Protocols | ||
292 | # | ||
293 | CONFIG_PNPACPI=y | ||
267 | 294 | ||
268 | # | 295 | # |
269 | # Block devices | 296 | # Block devices |
@@ -282,7 +309,6 @@ CONFIG_BLK_DEV_RAM=y | |||
282 | CONFIG_BLK_DEV_RAM_COUNT=16 | 309 | CONFIG_BLK_DEV_RAM_COUNT=16 |
283 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 310 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
284 | CONFIG_BLK_DEV_INITRD=y | 311 | CONFIG_BLK_DEV_INITRD=y |
285 | CONFIG_INITRAMFS_SOURCE="" | ||
286 | # CONFIG_CDROM_PKTCDVD is not set | 312 | # CONFIG_CDROM_PKTCDVD is not set |
287 | 313 | ||
288 | # | 314 | # |
@@ -315,7 +341,8 @@ CONFIG_BLK_DEV_IDECD=y | |||
315 | # | 341 | # |
316 | # IDE chipset support/bugfixes | 342 | # IDE chipset support/bugfixes |
317 | # | 343 | # |
318 | CONFIG_IDE_GENERIC=y | 344 | # CONFIG_IDE_GENERIC is not set |
345 | # CONFIG_BLK_DEV_IDEPNP is not set | ||
319 | CONFIG_BLK_DEV_IDEPCI=y | 346 | CONFIG_BLK_DEV_IDEPCI=y |
320 | CONFIG_IDEPCI_SHARE_IRQ=y | 347 | CONFIG_IDEPCI_SHARE_IRQ=y |
321 | # CONFIG_BLK_DEV_OFFBOARD is not set | 348 | # CONFIG_BLK_DEV_OFFBOARD is not set |
@@ -354,6 +381,7 @@ CONFIG_BLK_DEV_IDEDMA=y | |||
354 | # | 381 | # |
355 | # SCSI device support | 382 | # SCSI device support |
356 | # | 383 | # |
384 | # CONFIG_RAID_ATTRS is not set | ||
357 | CONFIG_SCSI=y | 385 | CONFIG_SCSI=y |
358 | CONFIG_SCSI_PROC_FS=y | 386 | CONFIG_SCSI_PROC_FS=y |
359 | 387 | ||
@@ -381,6 +409,7 @@ CONFIG_SCSI_LOGGING=y | |||
381 | CONFIG_SCSI_SPI_ATTRS=y | 409 | CONFIG_SCSI_SPI_ATTRS=y |
382 | # CONFIG_SCSI_FC_ATTRS is not set | 410 | # CONFIG_SCSI_FC_ATTRS is not set |
383 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 411 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
412 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
384 | 413 | ||
385 | # | 414 | # |
386 | # SCSI low-level drivers | 415 | # SCSI low-level drivers |
@@ -457,6 +486,7 @@ CONFIG_DUMMY=y | |||
457 | # CONFIG_BONDING is not set | 486 | # CONFIG_BONDING is not set |
458 | # CONFIG_EQUALIZER is not set | 487 | # CONFIG_EQUALIZER is not set |
459 | # CONFIG_TUN is not set | 488 | # CONFIG_TUN is not set |
489 | # CONFIG_NET_SB1000 is not set | ||
460 | 490 | ||
461 | # | 491 | # |
462 | # ARCnet devices | 492 | # ARCnet devices |
@@ -464,6 +494,11 @@ CONFIG_DUMMY=y | |||
464 | # CONFIG_ARCNET is not set | 494 | # CONFIG_ARCNET is not set |
465 | 495 | ||
466 | # | 496 | # |
497 | # PHY device support | ||
498 | # | ||
499 | # CONFIG_PHYLIB is not set | ||
500 | |||
501 | # | ||
467 | # Ethernet (10 or 100Mbit) | 502 | # Ethernet (10 or 100Mbit) |
468 | # | 503 | # |
469 | CONFIG_NET_ETHERNET=y | 504 | CONFIG_NET_ETHERNET=y |
@@ -485,6 +520,7 @@ CONFIG_TULIP_NAPI_HW_MITIGATION=y | |||
485 | # CONFIG_DE4X5 is not set | 520 | # CONFIG_DE4X5 is not set |
486 | # CONFIG_WINBOND_840 is not set | 521 | # CONFIG_WINBOND_840 is not set |
487 | # CONFIG_DM9102 is not set | 522 | # CONFIG_DM9102 is not set |
523 | # CONFIG_ULI526X is not set | ||
488 | # CONFIG_HP100 is not set | 524 | # CONFIG_HP100 is not set |
489 | CONFIG_NET_PCI=y | 525 | CONFIG_NET_PCI=y |
490 | # CONFIG_PCNET32 is not set | 526 | # CONFIG_PCNET32 is not set |
@@ -516,6 +552,7 @@ CONFIG_E1000=y | |||
516 | # CONFIG_HAMACHI is not set | 552 | # CONFIG_HAMACHI is not set |
517 | # CONFIG_YELLOWFIN is not set | 553 | # CONFIG_YELLOWFIN is not set |
518 | # CONFIG_R8169 is not set | 554 | # CONFIG_R8169 is not set |
555 | # CONFIG_SIS190 is not set | ||
519 | # CONFIG_SKGE is not set | 556 | # CONFIG_SKGE is not set |
520 | # CONFIG_SK98LIN is not set | 557 | # CONFIG_SK98LIN is not set |
521 | # CONFIG_VIA_VELOCITY is not set | 558 | # CONFIG_VIA_VELOCITY is not set |
@@ -525,6 +562,7 @@ CONFIG_TIGON3=y | |||
525 | # | 562 | # |
526 | # Ethernet (10000 Mbit) | 563 | # Ethernet (10000 Mbit) |
527 | # | 564 | # |
565 | # CONFIG_CHELSIO_T1 is not set | ||
528 | # CONFIG_IXGB is not set | 566 | # CONFIG_IXGB is not set |
529 | # CONFIG_S2IO is not set | 567 | # CONFIG_S2IO is not set |
530 | 568 | ||
@@ -650,12 +688,12 @@ CONFIG_AGP=y | |||
650 | CONFIG_AGP_HP_ZX1=y | 688 | CONFIG_AGP_HP_ZX1=y |
651 | CONFIG_DRM=y | 689 | CONFIG_DRM=y |
652 | # CONFIG_DRM_TDFX is not set | 690 | # CONFIG_DRM_TDFX is not set |
653 | # CONFIG_DRM_GAMMA is not set | ||
654 | # CONFIG_DRM_R128 is not set | 691 | # CONFIG_DRM_R128 is not set |
655 | CONFIG_DRM_RADEON=y | 692 | CONFIG_DRM_RADEON=y |
656 | # CONFIG_DRM_MGA is not set | 693 | # CONFIG_DRM_MGA is not set |
657 | # CONFIG_DRM_SIS is not set | 694 | # CONFIG_DRM_SIS is not set |
658 | # CONFIG_DRM_VIA is not set | 695 | # CONFIG_DRM_VIA is not set |
696 | # CONFIG_DRM_SAVAGE is not set | ||
659 | # CONFIG_RAW_DRIVER is not set | 697 | # CONFIG_RAW_DRIVER is not set |
660 | # CONFIG_HPET is not set | 698 | # CONFIG_HPET is not set |
661 | # CONFIG_HANGCHECK_TIMER is not set | 699 | # CONFIG_HANGCHECK_TIMER is not set |
@@ -689,7 +727,6 @@ CONFIG_I2C_ALGOPCF=y | |||
689 | # CONFIG_I2C_I801 is not set | 727 | # CONFIG_I2C_I801 is not set |
690 | # CONFIG_I2C_I810 is not set | 728 | # CONFIG_I2C_I810 is not set |
691 | # CONFIG_I2C_PIIX4 is not set | 729 | # CONFIG_I2C_PIIX4 is not set |
692 | # CONFIG_I2C_ISA is not set | ||
693 | # CONFIG_I2C_NFORCE2 is not set | 730 | # CONFIG_I2C_NFORCE2 is not set |
694 | # CONFIG_I2C_PARPORT_LIGHT is not set | 731 | # CONFIG_I2C_PARPORT_LIGHT is not set |
695 | # CONFIG_I2C_PROSAVAGE is not set | 732 | # CONFIG_I2C_PROSAVAGE is not set |
@@ -703,7 +740,6 @@ CONFIG_I2C_ALGOPCF=y | |||
703 | # CONFIG_I2C_VIAPRO is not set | 740 | # CONFIG_I2C_VIAPRO is not set |
704 | # CONFIG_I2C_VOODOO3 is not set | 741 | # CONFIG_I2C_VOODOO3 is not set |
705 | # CONFIG_I2C_PCA_ISA is not set | 742 | # CONFIG_I2C_PCA_ISA is not set |
706 | # CONFIG_I2C_SENSOR is not set | ||
707 | 743 | ||
708 | # | 744 | # |
709 | # Miscellaneous I2C Chip support | 745 | # Miscellaneous I2C Chip support |
@@ -730,12 +766,17 @@ CONFIG_I2C_ALGOPCF=y | |||
730 | # Hardware Monitoring support | 766 | # Hardware Monitoring support |
731 | # | 767 | # |
732 | # CONFIG_HWMON is not set | 768 | # CONFIG_HWMON is not set |
769 | # CONFIG_HWMON_VID is not set | ||
733 | 770 | ||
734 | # | 771 | # |
735 | # Misc devices | 772 | # Misc devices |
736 | # | 773 | # |
737 | 774 | ||
738 | # | 775 | # |
776 | # Multimedia Capabilities Port drivers | ||
777 | # | ||
778 | |||
779 | # | ||
739 | # Multimedia devices | 780 | # Multimedia devices |
740 | # | 781 | # |
741 | CONFIG_VIDEO_DEV=y | 782 | CONFIG_VIDEO_DEV=y |
@@ -806,6 +847,7 @@ CONFIG_FB_RADEON_DEBUG=y | |||
806 | # CONFIG_FB_KYRO is not set | 847 | # CONFIG_FB_KYRO is not set |
807 | # CONFIG_FB_3DFX is not set | 848 | # CONFIG_FB_3DFX is not set |
808 | # CONFIG_FB_VOODOO1 is not set | 849 | # CONFIG_FB_VOODOO1 is not set |
850 | # CONFIG_FB_CYBLA is not set | ||
809 | # CONFIG_FB_TRIDENT is not set | 851 | # CONFIG_FB_TRIDENT is not set |
810 | # CONFIG_FB_PM3 is not set | 852 | # CONFIG_FB_PM3 is not set |
811 | # CONFIG_FB_S1D13XXX is not set | 853 | # CONFIG_FB_S1D13XXX is not set |
@@ -862,11 +904,12 @@ CONFIG_SND_OPL3_LIB=y | |||
862 | # CONFIG_SND_MTPAV is not set | 904 | # CONFIG_SND_MTPAV is not set |
863 | # CONFIG_SND_SERIAL_U16550 is not set | 905 | # CONFIG_SND_SERIAL_U16550 is not set |
864 | # CONFIG_SND_MPU401 is not set | 906 | # CONFIG_SND_MPU401 is not set |
907 | CONFIG_SND_AC97_CODEC=y | ||
908 | CONFIG_SND_AC97_BUS=y | ||
865 | 909 | ||
866 | # | 910 | # |
867 | # PCI devices | 911 | # PCI devices |
868 | # | 912 | # |
869 | CONFIG_SND_AC97_CODEC=y | ||
870 | # CONFIG_SND_ALI5451 is not set | 913 | # CONFIG_SND_ALI5451 is not set |
871 | # CONFIG_SND_ATIIXP is not set | 914 | # CONFIG_SND_ATIIXP is not set |
872 | # CONFIG_SND_ATIIXP_MODEM is not set | 915 | # CONFIG_SND_ATIIXP_MODEM is not set |
@@ -890,7 +933,7 @@ CONFIG_SND_AC97_CODEC=y | |||
890 | # CONFIG_SND_HDSPM is not set | 933 | # CONFIG_SND_HDSPM is not set |
891 | # CONFIG_SND_TRIDENT is not set | 934 | # CONFIG_SND_TRIDENT is not set |
892 | # CONFIG_SND_YMFPCI is not set | 935 | # CONFIG_SND_YMFPCI is not set |
893 | # CONFIG_SND_ALS4000 is not set | 936 | # CONFIG_SND_AD1889 is not set |
894 | # CONFIG_SND_CMIPCI is not set | 937 | # CONFIG_SND_CMIPCI is not set |
895 | # CONFIG_SND_ENS1370 is not set | 938 | # CONFIG_SND_ENS1370 is not set |
896 | # CONFIG_SND_ENS1371 is not set | 939 | # CONFIG_SND_ENS1371 is not set |
@@ -952,9 +995,8 @@ CONFIG_USB_UHCI_HCD=y | |||
952 | # | 995 | # |
953 | # USB Device Class drivers | 996 | # USB Device Class drivers |
954 | # | 997 | # |
955 | # CONFIG_USB_AUDIO is not set | 998 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set |
956 | # CONFIG_USB_BLUETOOTH_TTY is not set | 999 | # CONFIG_USB_BLUETOOTH_TTY is not set |
957 | # CONFIG_USB_MIDI is not set | ||
958 | # CONFIG_USB_ACM is not set | 1000 | # CONFIG_USB_ACM is not set |
959 | # CONFIG_USB_PRINTER is not set | 1001 | # CONFIG_USB_PRINTER is not set |
960 | 1002 | ||
@@ -971,6 +1013,7 @@ CONFIG_USB_STORAGE=y | |||
971 | # CONFIG_USB_STORAGE_SDDR09 is not set | 1013 | # CONFIG_USB_STORAGE_SDDR09 is not set |
972 | # CONFIG_USB_STORAGE_SDDR55 is not set | 1014 | # CONFIG_USB_STORAGE_SDDR55 is not set |
973 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 1015 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
1016 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
974 | 1017 | ||
975 | # | 1018 | # |
976 | # USB Input Devices | 1019 | # USB Input Devices |
@@ -987,9 +1030,11 @@ CONFIG_USB_HIDDEV=y | |||
987 | # CONFIG_USB_MTOUCH is not set | 1030 | # CONFIG_USB_MTOUCH is not set |
988 | # CONFIG_USB_ITMTOUCH is not set | 1031 | # CONFIG_USB_ITMTOUCH is not set |
989 | # CONFIG_USB_EGALAX is not set | 1032 | # CONFIG_USB_EGALAX is not set |
1033 | # CONFIG_USB_YEALINK is not set | ||
990 | # CONFIG_USB_XPAD is not set | 1034 | # CONFIG_USB_XPAD is not set |
991 | # CONFIG_USB_ATI_REMOTE is not set | 1035 | # CONFIG_USB_ATI_REMOTE is not set |
992 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 1036 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
1037 | # CONFIG_USB_APPLETOUCH is not set | ||
993 | 1038 | ||
994 | # | 1039 | # |
995 | # USB Imaging devices | 1040 | # USB Imaging devices |
@@ -1088,10 +1133,6 @@ CONFIG_FS_MBCACHE=y | |||
1088 | # CONFIG_REISERFS_FS is not set | 1133 | # CONFIG_REISERFS_FS is not set |
1089 | # CONFIG_JFS_FS is not set | 1134 | # CONFIG_JFS_FS is not set |
1090 | # CONFIG_FS_POSIX_ACL is not set | 1135 | # CONFIG_FS_POSIX_ACL is not set |
1091 | |||
1092 | # | ||
1093 | # XFS support | ||
1094 | # | ||
1095 | # CONFIG_XFS_FS is not set | 1136 | # CONFIG_XFS_FS is not set |
1096 | # CONFIG_MINIX_FS is not set | 1137 | # CONFIG_MINIX_FS is not set |
1097 | # CONFIG_ROMFS_FS is not set | 1138 | # CONFIG_ROMFS_FS is not set |
@@ -1100,6 +1141,7 @@ CONFIG_FS_MBCACHE=y | |||
1100 | CONFIG_DNOTIFY=y | 1141 | CONFIG_DNOTIFY=y |
1101 | CONFIG_AUTOFS_FS=y | 1142 | CONFIG_AUTOFS_FS=y |
1102 | # CONFIG_AUTOFS4_FS is not set | 1143 | # CONFIG_AUTOFS4_FS is not set |
1144 | # CONFIG_FUSE_FS is not set | ||
1103 | 1145 | ||
1104 | # | 1146 | # |
1105 | # CD-ROM/DVD Filesystems | 1147 | # CD-ROM/DVD Filesystems |
@@ -1126,13 +1168,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1126 | CONFIG_PROC_FS=y | 1168 | CONFIG_PROC_FS=y |
1127 | CONFIG_PROC_KCORE=y | 1169 | CONFIG_PROC_KCORE=y |
1128 | CONFIG_SYSFS=y | 1170 | CONFIG_SYSFS=y |
1129 | # CONFIG_DEVPTS_FS_XATTR is not set | ||
1130 | CONFIG_TMPFS=y | 1171 | CONFIG_TMPFS=y |
1131 | CONFIG_TMPFS_XATTR=y | ||
1132 | CONFIG_TMPFS_SECURITY=y | ||
1133 | CONFIG_HUGETLBFS=y | 1172 | CONFIG_HUGETLBFS=y |
1134 | CONFIG_HUGETLB_PAGE=y | 1173 | CONFIG_HUGETLB_PAGE=y |
1135 | CONFIG_RAMFS=y | 1174 | CONFIG_RAMFS=y |
1175 | # CONFIG_RELAYFS_FS is not set | ||
1136 | 1176 | ||
1137 | # | 1177 | # |
1138 | # Miscellaneous filesystems | 1178 | # Miscellaneous filesystems |
@@ -1177,6 +1217,7 @@ CONFIG_RPCSEC_GSS_KRB5=y | |||
1177 | # CONFIG_NCP_FS is not set | 1217 | # CONFIG_NCP_FS is not set |
1178 | # CONFIG_CODA_FS is not set | 1218 | # CONFIG_CODA_FS is not set |
1179 | # CONFIG_AFS_FS is not set | 1219 | # CONFIG_AFS_FS is not set |
1220 | # CONFIG_9P_FS is not set | ||
1180 | 1221 | ||
1181 | # | 1222 | # |
1182 | # Partition Types | 1223 | # Partition Types |
@@ -1246,10 +1287,12 @@ CONFIG_NLS_UTF8=y | |||
1246 | # Library routines | 1287 | # Library routines |
1247 | # | 1288 | # |
1248 | # CONFIG_CRC_CCITT is not set | 1289 | # CONFIG_CRC_CCITT is not set |
1290 | # CONFIG_CRC16 is not set | ||
1249 | CONFIG_CRC32=y | 1291 | CONFIG_CRC32=y |
1250 | # CONFIG_LIBCRC32C is not set | 1292 | # CONFIG_LIBCRC32C is not set |
1251 | CONFIG_GENERIC_HARDIRQS=y | 1293 | CONFIG_GENERIC_HARDIRQS=y |
1252 | CONFIG_GENERIC_IRQ_PROBE=y | 1294 | CONFIG_GENERIC_IRQ_PROBE=y |
1295 | CONFIG_GENERIC_PENDING_IRQ=y | ||
1253 | 1296 | ||
1254 | # | 1297 | # |
1255 | # Profiling support | 1298 | # Profiling support |
@@ -1263,6 +1306,7 @@ CONFIG_GENERIC_IRQ_PROBE=y | |||
1263 | CONFIG_DEBUG_KERNEL=y | 1306 | CONFIG_DEBUG_KERNEL=y |
1264 | CONFIG_MAGIC_SYSRQ=y | 1307 | CONFIG_MAGIC_SYSRQ=y |
1265 | CONFIG_LOG_BUF_SHIFT=17 | 1308 | CONFIG_LOG_BUF_SHIFT=17 |
1309 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1266 | # CONFIG_SCHEDSTATS is not set | 1310 | # CONFIG_SCHEDSTATS is not set |
1267 | # CONFIG_DEBUG_SLAB is not set | 1311 | # CONFIG_DEBUG_SLAB is not set |
1268 | # CONFIG_DEBUG_SPINLOCK is not set | 1312 | # CONFIG_DEBUG_SPINLOCK is not set |
diff --git a/arch/ia64/defconfig b/arch/ia64/defconfig index 5da208115ea1..6e3f147e03e5 100644 --- a/arch/ia64/defconfig +++ b/arch/ia64/defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.12 | 3 | # Linux kernel version: 2.6.14-rc1 |
4 | # Tue Jun 21 11:30:42 2005 | 4 | # Wed Sep 14 15:13:03 2005 |
5 | # | 5 | # |
6 | 6 | ||
7 | # | 7 | # |
@@ -16,6 +16,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
16 | # General setup | 16 | # General setup |
17 | # | 17 | # |
18 | CONFIG_LOCALVERSION="" | 18 | CONFIG_LOCALVERSION="" |
19 | CONFIG_LOCALVERSION_AUTO=y | ||
19 | CONFIG_SWAP=y | 20 | CONFIG_SWAP=y |
20 | CONFIG_SYSVIPC=y | 21 | CONFIG_SYSVIPC=y |
21 | CONFIG_POSIX_MQUEUE=y | 22 | CONFIG_POSIX_MQUEUE=y |
@@ -27,6 +28,7 @@ CONFIG_KOBJECT_UEVENT=y | |||
27 | CONFIG_IKCONFIG=y | 28 | CONFIG_IKCONFIG=y |
28 | CONFIG_IKCONFIG_PROC=y | 29 | CONFIG_IKCONFIG_PROC=y |
29 | # CONFIG_CPUSETS is not set | 30 | # CONFIG_CPUSETS is not set |
31 | CONFIG_INITRAMFS_SOURCE="" | ||
30 | # CONFIG_EMBEDDED is not set | 32 | # CONFIG_EMBEDDED is not set |
31 | CONFIG_KALLSYMS=y | 33 | CONFIG_KALLSYMS=y |
32 | CONFIG_KALLSYMS_ALL=y | 34 | CONFIG_KALLSYMS_ALL=y |
@@ -80,6 +82,10 @@ CONFIG_MCKINLEY=y | |||
80 | # CONFIG_IA64_PAGE_SIZE_8KB is not set | 82 | # CONFIG_IA64_PAGE_SIZE_8KB is not set |
81 | CONFIG_IA64_PAGE_SIZE_16KB=y | 83 | CONFIG_IA64_PAGE_SIZE_16KB=y |
82 | # CONFIG_IA64_PAGE_SIZE_64KB is not set | 84 | # CONFIG_IA64_PAGE_SIZE_64KB is not set |
85 | # CONFIG_HZ_100 is not set | ||
86 | CONFIG_HZ_250=y | ||
87 | # CONFIG_HZ_1000 is not set | ||
88 | CONFIG_HZ=250 | ||
83 | CONFIG_IA64_L1_CACHE_SHIFT=7 | 89 | CONFIG_IA64_L1_CACHE_SHIFT=7 |
84 | CONFIG_NUMA=y | 90 | CONFIG_NUMA=y |
85 | CONFIG_VIRTUAL_MEM_MAP=y | 91 | CONFIG_VIRTUAL_MEM_MAP=y |
@@ -87,12 +93,21 @@ CONFIG_HOLES_IN_ZONE=y | |||
87 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y | 93 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y |
88 | CONFIG_IA64_CYCLONE=y | 94 | CONFIG_IA64_CYCLONE=y |
89 | CONFIG_IOSAPIC=y | 95 | CONFIG_IOSAPIC=y |
96 | # CONFIG_IA64_SGI_SN_XP is not set | ||
90 | CONFIG_FORCE_MAX_ZONEORDER=18 | 97 | CONFIG_FORCE_MAX_ZONEORDER=18 |
91 | CONFIG_SMP=y | 98 | CONFIG_SMP=y |
92 | CONFIG_NR_CPUS=512 | 99 | CONFIG_NR_CPUS=512 |
93 | CONFIG_HOTPLUG_CPU=y | 100 | CONFIG_HOTPLUG_CPU=y |
94 | # CONFIG_SCHED_SMT is not set | 101 | # CONFIG_SCHED_SMT is not set |
95 | # CONFIG_PREEMPT is not set | 102 | # CONFIG_PREEMPT is not set |
103 | CONFIG_SELECT_MEMORY_MODEL=y | ||
104 | # CONFIG_FLATMEM_MANUAL is not set | ||
105 | CONFIG_DISCONTIGMEM_MANUAL=y | ||
106 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
107 | CONFIG_DISCONTIGMEM=y | ||
108 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
109 | CONFIG_NEED_MULTIPLE_NODES=y | ||
110 | # CONFIG_SPARSEMEM_STATIC is not set | ||
96 | CONFIG_HAVE_DEC_LOCK=y | 111 | CONFIG_HAVE_DEC_LOCK=y |
97 | CONFIG_IA32_SUPPORT=y | 112 | CONFIG_IA32_SUPPORT=y |
98 | CONFIG_COMPAT=y | 113 | CONFIG_COMPAT=y |
@@ -105,6 +120,7 @@ CONFIG_IA64_PALINFO=y | |||
105 | # | 120 | # |
106 | CONFIG_EFI_VARS=y | 121 | CONFIG_EFI_VARS=y |
107 | CONFIG_EFI_PCDP=y | 122 | CONFIG_EFI_PCDP=y |
123 | # CONFIG_DELL_RBU is not set | ||
108 | CONFIG_BINFMT_ELF=y | 124 | CONFIG_BINFMT_ELF=y |
109 | CONFIG_BINFMT_MISC=m | 125 | CONFIG_BINFMT_MISC=m |
110 | 126 | ||
@@ -112,30 +128,36 @@ CONFIG_BINFMT_MISC=m | |||
112 | # Power management and ACPI | 128 | # Power management and ACPI |
113 | # | 129 | # |
114 | CONFIG_PM=y | 130 | CONFIG_PM=y |
115 | CONFIG_ACPI=y | 131 | # CONFIG_PM_DEBUG is not set |
116 | 132 | ||
117 | # | 133 | # |
118 | # ACPI (Advanced Configuration and Power Interface) Support | 134 | # ACPI (Advanced Configuration and Power Interface) Support |
119 | # | 135 | # |
136 | CONFIG_ACPI=y | ||
120 | CONFIG_ACPI_BUTTON=m | 137 | CONFIG_ACPI_BUTTON=m |
121 | CONFIG_ACPI_FAN=m | 138 | CONFIG_ACPI_FAN=m |
122 | CONFIG_ACPI_PROCESSOR=m | 139 | CONFIG_ACPI_PROCESSOR=m |
123 | CONFIG_ACPI_HOTPLUG_CPU=y | 140 | CONFIG_ACPI_HOTPLUG_CPU=y |
124 | CONFIG_ACPI_THERMAL=m | 141 | CONFIG_ACPI_THERMAL=m |
125 | CONFIG_ACPI_NUMA=y | 142 | CONFIG_ACPI_NUMA=y |
143 | CONFIG_ACPI_BLACKLIST_YEAR=0 | ||
126 | # CONFIG_ACPI_DEBUG is not set | 144 | # CONFIG_ACPI_DEBUG is not set |
127 | CONFIG_ACPI_POWER=y | 145 | CONFIG_ACPI_POWER=y |
128 | CONFIG_ACPI_SYSTEM=y | 146 | CONFIG_ACPI_SYSTEM=y |
129 | CONFIG_ACPI_CONTAINER=m | 147 | CONFIG_ACPI_CONTAINER=m |
130 | 148 | ||
131 | # | 149 | # |
150 | # CPU Frequency scaling | ||
151 | # | ||
152 | # CONFIG_CPU_FREQ is not set | ||
153 | |||
154 | # | ||
132 | # Bus options (PCI, PCMCIA) | 155 | # Bus options (PCI, PCMCIA) |
133 | # | 156 | # |
134 | CONFIG_PCI=y | 157 | CONFIG_PCI=y |
135 | CONFIG_PCI_DOMAINS=y | 158 | CONFIG_PCI_DOMAINS=y |
136 | # CONFIG_PCI_MSI is not set | 159 | # CONFIG_PCI_MSI is not set |
137 | CONFIG_PCI_LEGACY_PROC=y | 160 | CONFIG_PCI_LEGACY_PROC=y |
138 | CONFIG_PCI_NAMES=y | ||
139 | # CONFIG_PCI_DEBUG is not set | 161 | # CONFIG_PCI_DEBUG is not set |
140 | 162 | ||
141 | # | 163 | # |
@@ -147,6 +169,7 @@ CONFIG_HOTPLUG_PCI_ACPI=m | |||
147 | # CONFIG_HOTPLUG_PCI_ACPI_IBM is not set | 169 | # CONFIG_HOTPLUG_PCI_ACPI_IBM is not set |
148 | # CONFIG_HOTPLUG_PCI_CPCI is not set | 170 | # CONFIG_HOTPLUG_PCI_CPCI is not set |
149 | # CONFIG_HOTPLUG_PCI_SHPC is not set | 171 | # CONFIG_HOTPLUG_PCI_SHPC is not set |
172 | # CONFIG_HOTPLUG_PCI_SGI is not set | ||
150 | 173 | ||
151 | # | 174 | # |
152 | # PCCARD (PCMCIA/CardBus) support | 175 | # PCCARD (PCMCIA/CardBus) support |
@@ -154,6 +177,73 @@ CONFIG_HOTPLUG_PCI_ACPI=m | |||
154 | # CONFIG_PCCARD is not set | 177 | # CONFIG_PCCARD is not set |
155 | 178 | ||
156 | # | 179 | # |
180 | # Networking | ||
181 | # | ||
182 | CONFIG_NET=y | ||
183 | |||
184 | # | ||
185 | # Networking options | ||
186 | # | ||
187 | CONFIG_PACKET=y | ||
188 | # CONFIG_PACKET_MMAP is not set | ||
189 | CONFIG_UNIX=y | ||
190 | # CONFIG_NET_KEY is not set | ||
191 | CONFIG_INET=y | ||
192 | CONFIG_IP_MULTICAST=y | ||
193 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
194 | CONFIG_IP_FIB_HASH=y | ||
195 | # CONFIG_IP_PNP is not set | ||
196 | # CONFIG_NET_IPIP is not set | ||
197 | # CONFIG_NET_IPGRE is not set | ||
198 | # CONFIG_IP_MROUTE is not set | ||
199 | CONFIG_ARPD=y | ||
200 | CONFIG_SYN_COOKIES=y | ||
201 | # CONFIG_INET_AH is not set | ||
202 | # CONFIG_INET_ESP is not set | ||
203 | # CONFIG_INET_IPCOMP is not set | ||
204 | # CONFIG_INET_TUNNEL is not set | ||
205 | CONFIG_INET_DIAG=y | ||
206 | CONFIG_INET_TCP_DIAG=y | ||
207 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
208 | CONFIG_TCP_CONG_BIC=y | ||
209 | # CONFIG_IPV6 is not set | ||
210 | # CONFIG_NETFILTER is not set | ||
211 | |||
212 | # | ||
213 | # DCCP Configuration (EXPERIMENTAL) | ||
214 | # | ||
215 | # CONFIG_IP_DCCP is not set | ||
216 | |||
217 | # | ||
218 | # SCTP Configuration (EXPERIMENTAL) | ||
219 | # | ||
220 | # CONFIG_IP_SCTP is not set | ||
221 | # CONFIG_ATM is not set | ||
222 | # CONFIG_BRIDGE is not set | ||
223 | # CONFIG_VLAN_8021Q is not set | ||
224 | # CONFIG_DECNET is not set | ||
225 | # CONFIG_LLC2 is not set | ||
226 | # CONFIG_IPX is not set | ||
227 | # CONFIG_ATALK is not set | ||
228 | # CONFIG_X25 is not set | ||
229 | # CONFIG_LAPB is not set | ||
230 | # CONFIG_NET_DIVERT is not set | ||
231 | # CONFIG_ECONET is not set | ||
232 | # CONFIG_WAN_ROUTER is not set | ||
233 | # CONFIG_NET_SCHED is not set | ||
234 | # CONFIG_NET_CLS_ROUTE is not set | ||
235 | |||
236 | # | ||
237 | # Network testing | ||
238 | # | ||
239 | # CONFIG_NET_PKTGEN is not set | ||
240 | # CONFIG_NETFILTER_NETLINK is not set | ||
241 | # CONFIG_HAMRADIO is not set | ||
242 | # CONFIG_IRDA is not set | ||
243 | # CONFIG_BT is not set | ||
244 | # CONFIG_IEEE80211 is not set | ||
245 | |||
246 | # | ||
157 | # Device Drivers | 247 | # Device Drivers |
158 | # | 248 | # |
159 | 249 | ||
@@ -162,10 +252,15 @@ CONFIG_HOTPLUG_PCI_ACPI=m | |||
162 | # | 252 | # |
163 | CONFIG_STANDALONE=y | 253 | CONFIG_STANDALONE=y |
164 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 254 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
165 | # CONFIG_FW_LOADER is not set | 255 | CONFIG_FW_LOADER=m |
166 | # CONFIG_DEBUG_DRIVER is not set | 256 | # CONFIG_DEBUG_DRIVER is not set |
167 | 257 | ||
168 | # | 258 | # |
259 | # Connector - unified userspace <-> kernelspace linker | ||
260 | # | ||
261 | # CONFIG_CONNECTOR is not set | ||
262 | |||
263 | # | ||
169 | # Memory Technology Devices (MTD) | 264 | # Memory Technology Devices (MTD) |
170 | # | 265 | # |
171 | # CONFIG_MTD is not set | 266 | # CONFIG_MTD is not set |
@@ -178,7 +273,13 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
178 | # | 273 | # |
179 | # Plug and Play support | 274 | # Plug and Play support |
180 | # | 275 | # |
181 | # CONFIG_PNP is not set | 276 | CONFIG_PNP=y |
277 | # CONFIG_PNP_DEBUG is not set | ||
278 | |||
279 | # | ||
280 | # Protocols | ||
281 | # | ||
282 | CONFIG_PNPACPI=y | ||
182 | 283 | ||
183 | # | 284 | # |
184 | # Block devices | 285 | # Block devices |
@@ -197,7 +298,6 @@ CONFIG_BLK_DEV_RAM=y | |||
197 | CONFIG_BLK_DEV_RAM_COUNT=16 | 298 | CONFIG_BLK_DEV_RAM_COUNT=16 |
198 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 299 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
199 | CONFIG_BLK_DEV_INITRD=y | 300 | CONFIG_BLK_DEV_INITRD=y |
200 | CONFIG_INITRAMFS_SOURCE="" | ||
201 | # CONFIG_CDROM_PKTCDVD is not set | 301 | # CONFIG_CDROM_PKTCDVD is not set |
202 | 302 | ||
203 | # | 303 | # |
@@ -230,7 +330,8 @@ CONFIG_BLK_DEV_IDESCSI=m | |||
230 | # | 330 | # |
231 | # IDE chipset support/bugfixes | 331 | # IDE chipset support/bugfixes |
232 | # | 332 | # |
233 | CONFIG_IDE_GENERIC=y | 333 | # CONFIG_IDE_GENERIC is not set |
334 | # CONFIG_BLK_DEV_IDEPNP is not set | ||
234 | CONFIG_BLK_DEV_IDEPCI=y | 335 | CONFIG_BLK_DEV_IDEPCI=y |
235 | # CONFIG_IDEPCI_SHARE_IRQ is not set | 336 | # CONFIG_IDEPCI_SHARE_IRQ is not set |
236 | # CONFIG_BLK_DEV_OFFBOARD is not set | 337 | # CONFIG_BLK_DEV_OFFBOARD is not set |
@@ -252,6 +353,7 @@ CONFIG_BLK_DEV_CMD64X=y | |||
252 | # CONFIG_BLK_DEV_HPT366 is not set | 353 | # CONFIG_BLK_DEV_HPT366 is not set |
253 | # CONFIG_BLK_DEV_SC1200 is not set | 354 | # CONFIG_BLK_DEV_SC1200 is not set |
254 | CONFIG_BLK_DEV_PIIX=y | 355 | CONFIG_BLK_DEV_PIIX=y |
356 | # CONFIG_BLK_DEV_IT821X is not set | ||
255 | # CONFIG_BLK_DEV_NS87415 is not set | 357 | # CONFIG_BLK_DEV_NS87415 is not set |
256 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 358 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
257 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set | 359 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set |
@@ -270,6 +372,7 @@ CONFIG_IDEDMA_AUTO=y | |||
270 | # | 372 | # |
271 | # SCSI device support | 373 | # SCSI device support |
272 | # | 374 | # |
375 | # CONFIG_RAID_ATTRS is not set | ||
273 | CONFIG_SCSI=y | 376 | CONFIG_SCSI=y |
274 | CONFIG_SCSI_PROC_FS=y | 377 | CONFIG_SCSI_PROC_FS=y |
275 | 378 | ||
@@ -297,6 +400,7 @@ CONFIG_CHR_DEV_SG=m | |||
297 | CONFIG_SCSI_SPI_ATTRS=y | 400 | CONFIG_SCSI_SPI_ATTRS=y |
298 | CONFIG_SCSI_FC_ATTRS=y | 401 | CONFIG_SCSI_FC_ATTRS=y |
299 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 402 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
403 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
300 | 404 | ||
301 | # | 405 | # |
302 | # SCSI low-level drivers | 406 | # SCSI low-level drivers |
@@ -314,6 +418,7 @@ CONFIG_SCSI_SATA=y | |||
314 | # CONFIG_SCSI_SATA_AHCI is not set | 418 | # CONFIG_SCSI_SATA_AHCI is not set |
315 | # CONFIG_SCSI_SATA_SVW is not set | 419 | # CONFIG_SCSI_SATA_SVW is not set |
316 | # CONFIG_SCSI_ATA_PIIX is not set | 420 | # CONFIG_SCSI_ATA_PIIX is not set |
421 | # CONFIG_SCSI_SATA_MV is not set | ||
317 | # CONFIG_SCSI_SATA_NV is not set | 422 | # CONFIG_SCSI_SATA_NV is not set |
318 | # CONFIG_SCSI_SATA_PROMISE is not set | 423 | # CONFIG_SCSI_SATA_PROMISE is not set |
319 | # CONFIG_SCSI_SATA_QSTOR is not set | 424 | # CONFIG_SCSI_SATA_QSTOR is not set |
@@ -335,7 +440,6 @@ CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 | |||
335 | # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set | 440 | # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set |
336 | # CONFIG_SCSI_IPR is not set | 441 | # CONFIG_SCSI_IPR is not set |
337 | # CONFIG_SCSI_QLOGIC_FC is not set | 442 | # CONFIG_SCSI_QLOGIC_FC is not set |
338 | # CONFIG_SCSI_QLOGIC_FC_FIRMWARE is not set | ||
339 | CONFIG_SCSI_QLOGIC_1280=y | 443 | CONFIG_SCSI_QLOGIC_1280=y |
340 | # CONFIG_SCSI_QLOGIC_1280_1040 is not set | 444 | # CONFIG_SCSI_QLOGIC_1280_1040 is not set |
341 | CONFIG_SCSI_QLA2XXX=y | 445 | CONFIG_SCSI_QLA2XXX=y |
@@ -344,6 +448,7 @@ CONFIG_SCSI_QLA22XX=m | |||
344 | CONFIG_SCSI_QLA2300=m | 448 | CONFIG_SCSI_QLA2300=m |
345 | CONFIG_SCSI_QLA2322=m | 449 | CONFIG_SCSI_QLA2322=m |
346 | # CONFIG_SCSI_QLA6312 is not set | 450 | # CONFIG_SCSI_QLA6312 is not set |
451 | # CONFIG_SCSI_QLA24XX is not set | ||
347 | # CONFIG_SCSI_LPFC is not set | 452 | # CONFIG_SCSI_LPFC is not set |
348 | # CONFIG_SCSI_DC395x is not set | 453 | # CONFIG_SCSI_DC395x is not set |
349 | # CONFIG_SCSI_DC390T is not set | 454 | # CONFIG_SCSI_DC390T is not set |
@@ -390,74 +495,14 @@ CONFIG_FUSION_MAX_SGE=128 | |||
390 | # CONFIG_I2O is not set | 495 | # CONFIG_I2O is not set |
391 | 496 | ||
392 | # | 497 | # |
393 | # Networking support | 498 | # Network device support |
394 | # | ||
395 | CONFIG_NET=y | ||
396 | |||
397 | # | ||
398 | # Networking options | ||
399 | # | ||
400 | CONFIG_PACKET=y | ||
401 | # CONFIG_PACKET_MMAP is not set | ||
402 | CONFIG_UNIX=y | ||
403 | # CONFIG_NET_KEY is not set | ||
404 | CONFIG_INET=y | ||
405 | CONFIG_IP_MULTICAST=y | ||
406 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
407 | # CONFIG_IP_PNP is not set | ||
408 | # CONFIG_NET_IPIP is not set | ||
409 | # CONFIG_NET_IPGRE is not set | ||
410 | # CONFIG_IP_MROUTE is not set | ||
411 | CONFIG_ARPD=y | ||
412 | CONFIG_SYN_COOKIES=y | ||
413 | # CONFIG_INET_AH is not set | ||
414 | # CONFIG_INET_ESP is not set | ||
415 | # CONFIG_INET_IPCOMP is not set | ||
416 | # CONFIG_INET_TUNNEL is not set | ||
417 | CONFIG_IP_TCPDIAG=y | ||
418 | # CONFIG_IP_TCPDIAG_IPV6 is not set | ||
419 | # CONFIG_IPV6 is not set | ||
420 | # CONFIG_NETFILTER is not set | ||
421 | |||
422 | # | ||
423 | # SCTP Configuration (EXPERIMENTAL) | ||
424 | # | ||
425 | # CONFIG_IP_SCTP is not set | ||
426 | # CONFIG_ATM is not set | ||
427 | # CONFIG_BRIDGE is not set | ||
428 | # CONFIG_VLAN_8021Q is not set | ||
429 | # CONFIG_DECNET is not set | ||
430 | # CONFIG_LLC2 is not set | ||
431 | # CONFIG_IPX is not set | ||
432 | # CONFIG_ATALK is not set | ||
433 | # CONFIG_X25 is not set | ||
434 | # CONFIG_LAPB is not set | ||
435 | # CONFIG_NET_DIVERT is not set | ||
436 | # CONFIG_ECONET is not set | ||
437 | # CONFIG_WAN_ROUTER is not set | ||
438 | |||
439 | # | 499 | # |
440 | # QoS and/or fair queueing | ||
441 | # | ||
442 | # CONFIG_NET_SCHED is not set | ||
443 | # CONFIG_NET_CLS_ROUTE is not set | ||
444 | |||
445 | # | ||
446 | # Network testing | ||
447 | # | ||
448 | # CONFIG_NET_PKTGEN is not set | ||
449 | CONFIG_NETPOLL=y | ||
450 | # CONFIG_NETPOLL_RX is not set | ||
451 | # CONFIG_NETPOLL_TRAP is not set | ||
452 | CONFIG_NET_POLL_CONTROLLER=y | ||
453 | # CONFIG_HAMRADIO is not set | ||
454 | # CONFIG_IRDA is not set | ||
455 | # CONFIG_BT is not set | ||
456 | CONFIG_NETDEVICES=y | 500 | CONFIG_NETDEVICES=y |
457 | CONFIG_DUMMY=m | 501 | CONFIG_DUMMY=m |
458 | # CONFIG_BONDING is not set | 502 | # CONFIG_BONDING is not set |
459 | # CONFIG_EQUALIZER is not set | 503 | # CONFIG_EQUALIZER is not set |
460 | # CONFIG_TUN is not set | 504 | # CONFIG_TUN is not set |
505 | # CONFIG_NET_SB1000 is not set | ||
461 | 506 | ||
462 | # | 507 | # |
463 | # ARCnet devices | 508 | # ARCnet devices |
@@ -465,6 +510,11 @@ CONFIG_DUMMY=m | |||
465 | # CONFIG_ARCNET is not set | 510 | # CONFIG_ARCNET is not set |
466 | 511 | ||
467 | # | 512 | # |
513 | # PHY device support | ||
514 | # | ||
515 | # CONFIG_PHYLIB is not set | ||
516 | |||
517 | # | ||
468 | # Ethernet (10 or 100Mbit) | 518 | # Ethernet (10 or 100Mbit) |
469 | # | 519 | # |
470 | CONFIG_NET_ETHERNET=y | 520 | CONFIG_NET_ETHERNET=y |
@@ -485,6 +535,7 @@ CONFIG_TULIP=m | |||
485 | # CONFIG_DE4X5 is not set | 535 | # CONFIG_DE4X5 is not set |
486 | # CONFIG_WINBOND_840 is not set | 536 | # CONFIG_WINBOND_840 is not set |
487 | # CONFIG_DM9102 is not set | 537 | # CONFIG_DM9102 is not set |
538 | # CONFIG_ULI526X is not set | ||
488 | # CONFIG_HP100 is not set | 539 | # CONFIG_HP100 is not set |
489 | CONFIG_NET_PCI=y | 540 | CONFIG_NET_PCI=y |
490 | # CONFIG_PCNET32 is not set | 541 | # CONFIG_PCNET32 is not set |
@@ -516,6 +567,7 @@ CONFIG_E1000=y | |||
516 | # CONFIG_HAMACHI is not set | 567 | # CONFIG_HAMACHI is not set |
517 | # CONFIG_YELLOWFIN is not set | 568 | # CONFIG_YELLOWFIN is not set |
518 | # CONFIG_R8169 is not set | 569 | # CONFIG_R8169 is not set |
570 | # CONFIG_SIS190 is not set | ||
519 | # CONFIG_SKGE is not set | 571 | # CONFIG_SKGE is not set |
520 | # CONFIG_SK98LIN is not set | 572 | # CONFIG_SK98LIN is not set |
521 | # CONFIG_VIA_VELOCITY is not set | 573 | # CONFIG_VIA_VELOCITY is not set |
@@ -525,6 +577,7 @@ CONFIG_TIGON3=y | |||
525 | # | 577 | # |
526 | # Ethernet (10000 Mbit) | 578 | # Ethernet (10000 Mbit) |
527 | # | 579 | # |
580 | # CONFIG_CHELSIO_T1 is not set | ||
528 | # CONFIG_IXGB is not set | 581 | # CONFIG_IXGB is not set |
529 | # CONFIG_S2IO is not set | 582 | # CONFIG_S2IO is not set |
530 | 583 | ||
@@ -549,6 +602,10 @@ CONFIG_TIGON3=y | |||
549 | # CONFIG_NET_FC is not set | 602 | # CONFIG_NET_FC is not set |
550 | # CONFIG_SHAPER is not set | 603 | # CONFIG_SHAPER is not set |
551 | CONFIG_NETCONSOLE=y | 604 | CONFIG_NETCONSOLE=y |
605 | CONFIG_NETPOLL=y | ||
606 | # CONFIG_NETPOLL_RX is not set | ||
607 | # CONFIG_NETPOLL_TRAP is not set | ||
608 | CONFIG_NET_POLL_CONTROLLER=y | ||
552 | 609 | ||
553 | # | 610 | # |
554 | # ISDN subsystem | 611 | # ISDN subsystem |
@@ -607,9 +664,7 @@ CONFIG_GAMEPORT=m | |||
607 | # CONFIG_GAMEPORT_NS558 is not set | 664 | # CONFIG_GAMEPORT_NS558 is not set |
608 | # CONFIG_GAMEPORT_L4 is not set | 665 | # CONFIG_GAMEPORT_L4 is not set |
609 | # CONFIG_GAMEPORT_EMU10K1 is not set | 666 | # CONFIG_GAMEPORT_EMU10K1 is not set |
610 | # CONFIG_GAMEPORT_VORTEX is not set | ||
611 | # CONFIG_GAMEPORT_FM801 is not set | 667 | # CONFIG_GAMEPORT_FM801 is not set |
612 | # CONFIG_GAMEPORT_CS461X is not set | ||
613 | 668 | ||
614 | # | 669 | # |
615 | # Character devices | 670 | # Character devices |
@@ -620,6 +675,7 @@ CONFIG_HW_CONSOLE=y | |||
620 | CONFIG_SERIAL_NONSTANDARD=y | 675 | CONFIG_SERIAL_NONSTANDARD=y |
621 | # CONFIG_ROCKETPORT is not set | 676 | # CONFIG_ROCKETPORT is not set |
622 | # CONFIG_CYCLADES is not set | 677 | # CONFIG_CYCLADES is not set |
678 | # CONFIG_DIGIEPCA is not set | ||
623 | # CONFIG_MOXA_SMARTIO is not set | 679 | # CONFIG_MOXA_SMARTIO is not set |
624 | # CONFIG_ISI is not set | 680 | # CONFIG_ISI is not set |
625 | # CONFIG_SYNCLINKMP is not set | 681 | # CONFIG_SYNCLINKMP is not set |
@@ -641,7 +697,6 @@ CONFIG_SERIAL_8250_NR_UARTS=6 | |||
641 | CONFIG_SERIAL_8250_EXTENDED=y | 697 | CONFIG_SERIAL_8250_EXTENDED=y |
642 | CONFIG_SERIAL_8250_SHARE_IRQ=y | 698 | CONFIG_SERIAL_8250_SHARE_IRQ=y |
643 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set | 699 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set |
644 | # CONFIG_SERIAL_8250_MULTIPORT is not set | ||
645 | # CONFIG_SERIAL_8250_RSA is not set | 700 | # CONFIG_SERIAL_8250_RSA is not set |
646 | 701 | ||
647 | # | 702 | # |
@@ -650,8 +705,8 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y | |||
650 | CONFIG_SERIAL_CORE=y | 705 | CONFIG_SERIAL_CORE=y |
651 | CONFIG_SERIAL_CORE_CONSOLE=y | 706 | CONFIG_SERIAL_CORE_CONSOLE=y |
652 | CONFIG_SERIAL_SGI_L1_CONSOLE=y | 707 | CONFIG_SERIAL_SGI_L1_CONSOLE=y |
653 | CONFIG_SERIAL_SGI_IOC4=y | ||
654 | # CONFIG_SERIAL_JSM is not set | 708 | # CONFIG_SERIAL_JSM is not set |
709 | CONFIG_SERIAL_SGI_IOC4=y | ||
655 | CONFIG_UNIX98_PTYS=y | 710 | CONFIG_UNIX98_PTYS=y |
656 | CONFIG_LEGACY_PTYS=y | 711 | CONFIG_LEGACY_PTYS=y |
657 | CONFIG_LEGACY_PTY_COUNT=256 | 712 | CONFIG_LEGACY_PTY_COUNT=256 |
@@ -684,6 +739,8 @@ CONFIG_DRM_R128=m | |||
684 | CONFIG_DRM_RADEON=m | 739 | CONFIG_DRM_RADEON=m |
685 | CONFIG_DRM_MGA=m | 740 | CONFIG_DRM_MGA=m |
686 | CONFIG_DRM_SIS=m | 741 | CONFIG_DRM_SIS=m |
742 | # CONFIG_DRM_VIA is not set | ||
743 | # CONFIG_DRM_SAVAGE is not set | ||
687 | CONFIG_RAW_DRIVER=m | 744 | CONFIG_RAW_DRIVER=m |
688 | CONFIG_HPET=y | 745 | CONFIG_HPET=y |
689 | # CONFIG_HPET_RTC_IRQ is not set | 746 | # CONFIG_HPET_RTC_IRQ is not set |
@@ -708,10 +765,21 @@ CONFIG_MMTIMER=y | |||
708 | # CONFIG_W1 is not set | 765 | # CONFIG_W1 is not set |
709 | 766 | ||
710 | # | 767 | # |
768 | # Hardware Monitoring support | ||
769 | # | ||
770 | CONFIG_HWMON=y | ||
771 | # CONFIG_HWMON_VID is not set | ||
772 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
773 | |||
774 | # | ||
711 | # Misc devices | 775 | # Misc devices |
712 | # | 776 | # |
713 | 777 | ||
714 | # | 778 | # |
779 | # Multimedia Capabilities Port drivers | ||
780 | # | ||
781 | |||
782 | # | ||
715 | # Multimedia devices | 783 | # Multimedia devices |
716 | # | 784 | # |
717 | # CONFIG_VIDEO_DEV is not set | 785 | # CONFIG_VIDEO_DEV is not set |
@@ -753,6 +821,7 @@ CONFIG_SND_PCM_OSS=m | |||
753 | CONFIG_SND_SEQUENCER_OSS=y | 821 | CONFIG_SND_SEQUENCER_OSS=y |
754 | CONFIG_SND_VERBOSE_PRINTK=y | 822 | CONFIG_SND_VERBOSE_PRINTK=y |
755 | # CONFIG_SND_DEBUG is not set | 823 | # CONFIG_SND_DEBUG is not set |
824 | CONFIG_SND_GENERIC_DRIVER=y | ||
756 | 825 | ||
757 | # | 826 | # |
758 | # Generic devices | 827 | # Generic devices |
@@ -764,11 +833,12 @@ CONFIG_SND_VIRMIDI=m | |||
764 | CONFIG_SND_MTPAV=m | 833 | CONFIG_SND_MTPAV=m |
765 | CONFIG_SND_SERIAL_U16550=m | 834 | CONFIG_SND_SERIAL_U16550=m |
766 | CONFIG_SND_MPU401=m | 835 | CONFIG_SND_MPU401=m |
836 | CONFIG_SND_AC97_CODEC=m | ||
837 | CONFIG_SND_AC97_BUS=m | ||
767 | 838 | ||
768 | # | 839 | # |
769 | # PCI devices | 840 | # PCI devices |
770 | # | 841 | # |
771 | CONFIG_SND_AC97_CODEC=m | ||
772 | # CONFIG_SND_ALI5451 is not set | 842 | # CONFIG_SND_ALI5451 is not set |
773 | # CONFIG_SND_ATIIXP is not set | 843 | # CONFIG_SND_ATIIXP is not set |
774 | # CONFIG_SND_ATIIXP_MODEM is not set | 844 | # CONFIG_SND_ATIIXP_MODEM is not set |
@@ -790,9 +860,10 @@ CONFIG_SND_EMU10K1=m | |||
790 | # CONFIG_SND_RME96 is not set | 860 | # CONFIG_SND_RME96 is not set |
791 | # CONFIG_SND_RME9652 is not set | 861 | # CONFIG_SND_RME9652 is not set |
792 | # CONFIG_SND_HDSP is not set | 862 | # CONFIG_SND_HDSP is not set |
863 | # CONFIG_SND_HDSPM is not set | ||
793 | # CONFIG_SND_TRIDENT is not set | 864 | # CONFIG_SND_TRIDENT is not set |
794 | # CONFIG_SND_YMFPCI is not set | 865 | # CONFIG_SND_YMFPCI is not set |
795 | # CONFIG_SND_ALS4000 is not set | 866 | # CONFIG_SND_AD1889 is not set |
796 | # CONFIG_SND_CMIPCI is not set | 867 | # CONFIG_SND_CMIPCI is not set |
797 | # CONFIG_SND_ENS1370 is not set | 868 | # CONFIG_SND_ENS1370 is not set |
798 | # CONFIG_SND_ENS1371 is not set | 869 | # CONFIG_SND_ENS1371 is not set |
@@ -844,6 +915,7 @@ CONFIG_USB_DEVICEFS=y | |||
844 | CONFIG_USB_EHCI_HCD=m | 915 | CONFIG_USB_EHCI_HCD=m |
845 | # CONFIG_USB_EHCI_SPLIT_ISO is not set | 916 | # CONFIG_USB_EHCI_SPLIT_ISO is not set |
846 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | 917 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set |
918 | # CONFIG_USB_ISP116X_HCD is not set | ||
847 | CONFIG_USB_OHCI_HCD=m | 919 | CONFIG_USB_OHCI_HCD=m |
848 | # CONFIG_USB_OHCI_BIG_ENDIAN is not set | 920 | # CONFIG_USB_OHCI_BIG_ENDIAN is not set |
849 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | 921 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y |
@@ -853,9 +925,8 @@ CONFIG_USB_UHCI_HCD=m | |||
853 | # | 925 | # |
854 | # USB Device Class drivers | 926 | # USB Device Class drivers |
855 | # | 927 | # |
856 | # CONFIG_USB_AUDIO is not set | 928 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set |
857 | # CONFIG_USB_BLUETOOTH_TTY is not set | 929 | # CONFIG_USB_BLUETOOTH_TTY is not set |
858 | # CONFIG_USB_MIDI is not set | ||
859 | # CONFIG_USB_ACM is not set | 930 | # CONFIG_USB_ACM is not set |
860 | # CONFIG_USB_PRINTER is not set | 931 | # CONFIG_USB_PRINTER is not set |
861 | 932 | ||
@@ -888,12 +959,17 @@ CONFIG_USB_HIDINPUT=y | |||
888 | # CONFIG_USB_MOUSE is not set | 959 | # CONFIG_USB_MOUSE is not set |
889 | # CONFIG_USB_AIPTEK is not set | 960 | # CONFIG_USB_AIPTEK is not set |
890 | # CONFIG_USB_WACOM is not set | 961 | # CONFIG_USB_WACOM is not set |
962 | # CONFIG_USB_ACECAD is not set | ||
891 | # CONFIG_USB_KBTAB is not set | 963 | # CONFIG_USB_KBTAB is not set |
892 | # CONFIG_USB_POWERMATE is not set | 964 | # CONFIG_USB_POWERMATE is not set |
893 | # CONFIG_USB_MTOUCH is not set | 965 | # CONFIG_USB_MTOUCH is not set |
966 | # CONFIG_USB_ITMTOUCH is not set | ||
894 | # CONFIG_USB_EGALAX is not set | 967 | # CONFIG_USB_EGALAX is not set |
968 | # CONFIG_USB_YEALINK is not set | ||
895 | # CONFIG_USB_XPAD is not set | 969 | # CONFIG_USB_XPAD is not set |
896 | # CONFIG_USB_ATI_REMOTE is not set | 970 | # CONFIG_USB_ATI_REMOTE is not set |
971 | # CONFIG_USB_KEYSPAN_REMOTE is not set | ||
972 | # CONFIG_USB_APPLETOUCH is not set | ||
897 | 973 | ||
898 | # | 974 | # |
899 | # USB Imaging devices | 975 | # USB Imaging devices |
@@ -918,7 +994,7 @@ CONFIG_USB_HIDINPUT=y | |||
918 | # CONFIG_USB_PEGASUS is not set | 994 | # CONFIG_USB_PEGASUS is not set |
919 | # CONFIG_USB_RTL8150 is not set | 995 | # CONFIG_USB_RTL8150 is not set |
920 | # CONFIG_USB_USBNET is not set | 996 | # CONFIG_USB_USBNET is not set |
921 | CONFIG_USB_MON=m | 997 | CONFIG_USB_MON=y |
922 | 998 | ||
923 | # | 999 | # |
924 | # USB port drivers | 1000 | # USB port drivers |
@@ -944,10 +1020,11 @@ CONFIG_USB_MON=m | |||
944 | # CONFIG_USB_PHIDGETSERVO is not set | 1020 | # CONFIG_USB_PHIDGETSERVO is not set |
945 | # CONFIG_USB_IDMOUSE is not set | 1021 | # CONFIG_USB_IDMOUSE is not set |
946 | # CONFIG_USB_SISUSBVGA is not set | 1022 | # CONFIG_USB_SISUSBVGA is not set |
1023 | # CONFIG_USB_LD is not set | ||
947 | # CONFIG_USB_TEST is not set | 1024 | # CONFIG_USB_TEST is not set |
948 | 1025 | ||
949 | # | 1026 | # |
950 | # USB ATM/DSL drivers | 1027 | # USB DSL modem support |
951 | # | 1028 | # |
952 | 1029 | ||
953 | # | 1030 | # |
@@ -964,6 +1041,8 @@ CONFIG_USB_MON=m | |||
964 | # InfiniBand support | 1041 | # InfiniBand support |
965 | # | 1042 | # |
966 | CONFIG_INFINIBAND=m | 1043 | CONFIG_INFINIBAND=m |
1044 | # CONFIG_INFINIBAND_USER_MAD is not set | ||
1045 | # CONFIG_INFINIBAND_USER_ACCESS is not set | ||
967 | CONFIG_INFINIBAND_MTHCA=m | 1046 | CONFIG_INFINIBAND_MTHCA=m |
968 | # CONFIG_INFINIBAND_MTHCA_DEBUG is not set | 1047 | # CONFIG_INFINIBAND_MTHCA_DEBUG is not set |
969 | CONFIG_INFINIBAND_IPOIB=m | 1048 | CONFIG_INFINIBAND_IPOIB=m |
@@ -981,6 +1060,7 @@ CONFIG_EXT2_FS=y | |||
981 | CONFIG_EXT2_FS_XATTR=y | 1060 | CONFIG_EXT2_FS_XATTR=y |
982 | CONFIG_EXT2_FS_POSIX_ACL=y | 1061 | CONFIG_EXT2_FS_POSIX_ACL=y |
983 | CONFIG_EXT2_FS_SECURITY=y | 1062 | CONFIG_EXT2_FS_SECURITY=y |
1063 | # CONFIG_EXT2_FS_XIP is not set | ||
984 | CONFIG_EXT3_FS=y | 1064 | CONFIG_EXT3_FS=y |
985 | CONFIG_EXT3_FS_XATTR=y | 1065 | CONFIG_EXT3_FS_XATTR=y |
986 | CONFIG_EXT3_FS_POSIX_ACL=y | 1066 | CONFIG_EXT3_FS_POSIX_ACL=y |
@@ -996,22 +1076,20 @@ CONFIG_REISERFS_FS_POSIX_ACL=y | |||
996 | CONFIG_REISERFS_FS_SECURITY=y | 1076 | CONFIG_REISERFS_FS_SECURITY=y |
997 | # CONFIG_JFS_FS is not set | 1077 | # CONFIG_JFS_FS is not set |
998 | CONFIG_FS_POSIX_ACL=y | 1078 | CONFIG_FS_POSIX_ACL=y |
999 | |||
1000 | # | ||
1001 | # XFS support | ||
1002 | # | ||
1003 | CONFIG_XFS_FS=y | 1079 | CONFIG_XFS_FS=y |
1004 | CONFIG_XFS_EXPORT=y | 1080 | CONFIG_XFS_EXPORT=y |
1005 | # CONFIG_XFS_RT is not set | ||
1006 | # CONFIG_XFS_QUOTA is not set | 1081 | # CONFIG_XFS_QUOTA is not set |
1007 | # CONFIG_XFS_SECURITY is not set | 1082 | # CONFIG_XFS_SECURITY is not set |
1008 | # CONFIG_XFS_POSIX_ACL is not set | 1083 | # CONFIG_XFS_POSIX_ACL is not set |
1084 | # CONFIG_XFS_RT is not set | ||
1009 | # CONFIG_MINIX_FS is not set | 1085 | # CONFIG_MINIX_FS is not set |
1010 | # CONFIG_ROMFS_FS is not set | 1086 | # CONFIG_ROMFS_FS is not set |
1087 | CONFIG_INOTIFY=y | ||
1011 | # CONFIG_QUOTA is not set | 1088 | # CONFIG_QUOTA is not set |
1012 | CONFIG_DNOTIFY=y | 1089 | CONFIG_DNOTIFY=y |
1013 | CONFIG_AUTOFS_FS=y | 1090 | CONFIG_AUTOFS_FS=y |
1014 | CONFIG_AUTOFS4_FS=y | 1091 | CONFIG_AUTOFS4_FS=y |
1092 | # CONFIG_FUSE_FS is not set | ||
1015 | 1093 | ||
1016 | # | 1094 | # |
1017 | # CD-ROM/DVD Filesystems | 1095 | # CD-ROM/DVD Filesystems |
@@ -1040,14 +1118,11 @@ CONFIG_NTFS_FS=m | |||
1040 | CONFIG_PROC_FS=y | 1118 | CONFIG_PROC_FS=y |
1041 | CONFIG_PROC_KCORE=y | 1119 | CONFIG_PROC_KCORE=y |
1042 | CONFIG_SYSFS=y | 1120 | CONFIG_SYSFS=y |
1043 | # CONFIG_DEVFS_FS is not set | ||
1044 | # CONFIG_DEVPTS_FS_XATTR is not set | ||
1045 | CONFIG_TMPFS=y | 1121 | CONFIG_TMPFS=y |
1046 | CONFIG_TMPFS_XATTR=y | ||
1047 | CONFIG_TMPFS_SECURITY=y | ||
1048 | CONFIG_HUGETLBFS=y | 1122 | CONFIG_HUGETLBFS=y |
1049 | CONFIG_HUGETLB_PAGE=y | 1123 | CONFIG_HUGETLB_PAGE=y |
1050 | CONFIG_RAMFS=y | 1124 | CONFIG_RAMFS=y |
1125 | # CONFIG_RELAYFS_FS is not set | ||
1051 | 1126 | ||
1052 | # | 1127 | # |
1053 | # Miscellaneous filesystems | 1128 | # Miscellaneous filesystems |
@@ -1071,15 +1146,18 @@ CONFIG_RAMFS=y | |||
1071 | # | 1146 | # |
1072 | CONFIG_NFS_FS=m | 1147 | CONFIG_NFS_FS=m |
1073 | CONFIG_NFS_V3=y | 1148 | CONFIG_NFS_V3=y |
1149 | # CONFIG_NFS_V3_ACL is not set | ||
1074 | CONFIG_NFS_V4=y | 1150 | CONFIG_NFS_V4=y |
1075 | CONFIG_NFS_DIRECTIO=y | 1151 | CONFIG_NFS_DIRECTIO=y |
1076 | CONFIG_NFSD=m | 1152 | CONFIG_NFSD=m |
1077 | CONFIG_NFSD_V3=y | 1153 | CONFIG_NFSD_V3=y |
1154 | # CONFIG_NFSD_V3_ACL is not set | ||
1078 | CONFIG_NFSD_V4=y | 1155 | CONFIG_NFSD_V4=y |
1079 | CONFIG_NFSD_TCP=y | 1156 | CONFIG_NFSD_TCP=y |
1080 | CONFIG_LOCKD=m | 1157 | CONFIG_LOCKD=m |
1081 | CONFIG_LOCKD_V4=y | 1158 | CONFIG_LOCKD_V4=y |
1082 | CONFIG_EXPORTFS=y | 1159 | CONFIG_EXPORTFS=y |
1160 | CONFIG_NFS_COMMON=y | ||
1083 | CONFIG_SUNRPC=m | 1161 | CONFIG_SUNRPC=m |
1084 | CONFIG_SUNRPC_GSS=m | 1162 | CONFIG_SUNRPC_GSS=m |
1085 | CONFIG_RPCSEC_GSS_KRB5=m | 1163 | CONFIG_RPCSEC_GSS_KRB5=m |
@@ -1094,6 +1172,7 @@ CONFIG_CIFS=m | |||
1094 | # CONFIG_NCP_FS is not set | 1172 | # CONFIG_NCP_FS is not set |
1095 | # CONFIG_CODA_FS is not set | 1173 | # CONFIG_CODA_FS is not set |
1096 | # CONFIG_AFS_FS is not set | 1174 | # CONFIG_AFS_FS is not set |
1175 | # CONFIG_9P_FS is not set | ||
1097 | 1176 | ||
1098 | # | 1177 | # |
1099 | # Partition Types | 1178 | # Partition Types |
@@ -1163,10 +1242,12 @@ CONFIG_NLS_UTF8=m | |||
1163 | # Library routines | 1242 | # Library routines |
1164 | # | 1243 | # |
1165 | # CONFIG_CRC_CCITT is not set | 1244 | # CONFIG_CRC_CCITT is not set |
1245 | # CONFIG_CRC16 is not set | ||
1166 | CONFIG_CRC32=y | 1246 | CONFIG_CRC32=y |
1167 | # CONFIG_LIBCRC32C is not set | 1247 | # CONFIG_LIBCRC32C is not set |
1168 | CONFIG_GENERIC_HARDIRQS=y | 1248 | CONFIG_GENERIC_HARDIRQS=y |
1169 | CONFIG_GENERIC_IRQ_PROBE=y | 1249 | CONFIG_GENERIC_IRQ_PROBE=y |
1250 | CONFIG_GENERIC_PENDING_IRQ=y | ||
1170 | 1251 | ||
1171 | # | 1252 | # |
1172 | # HP Simulator drivers | 1253 | # HP Simulator drivers |
@@ -1187,6 +1268,7 @@ CONFIG_GENERIC_IRQ_PROBE=y | |||
1187 | CONFIG_DEBUG_KERNEL=y | 1268 | CONFIG_DEBUG_KERNEL=y |
1188 | CONFIG_MAGIC_SYSRQ=y | 1269 | CONFIG_MAGIC_SYSRQ=y |
1189 | CONFIG_LOG_BUF_SHIFT=20 | 1270 | CONFIG_LOG_BUF_SHIFT=20 |
1271 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1190 | # CONFIG_SCHEDSTATS is not set | 1272 | # CONFIG_SCHEDSTATS is not set |
1191 | # CONFIG_DEBUG_SLAB is not set | 1273 | # CONFIG_DEBUG_SLAB is not set |
1192 | # CONFIG_DEBUG_SPINLOCK is not set | 1274 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -1194,6 +1276,7 @@ CONFIG_LOG_BUF_SHIFT=20 | |||
1194 | # CONFIG_DEBUG_KOBJECT is not set | 1276 | # CONFIG_DEBUG_KOBJECT is not set |
1195 | # CONFIG_DEBUG_INFO is not set | 1277 | # CONFIG_DEBUG_INFO is not set |
1196 | # CONFIG_DEBUG_FS is not set | 1278 | # CONFIG_DEBUG_FS is not set |
1279 | # CONFIG_KPROBES is not set | ||
1197 | CONFIG_IA64_GRANULE_16MB=y | 1280 | CONFIG_IA64_GRANULE_16MB=y |
1198 | # CONFIG_IA64_GRANULE_64MB is not set | 1281 | # CONFIG_IA64_GRANULE_64MB is not set |
1199 | # CONFIG_IA64_PRINT_HAZARDS is not set | 1282 | # CONFIG_IA64_PRINT_HAZARDS is not set |
@@ -1215,7 +1298,7 @@ CONFIG_CRYPTO=y | |||
1215 | # CONFIG_CRYPTO_HMAC is not set | 1298 | # CONFIG_CRYPTO_HMAC is not set |
1216 | # CONFIG_CRYPTO_NULL is not set | 1299 | # CONFIG_CRYPTO_NULL is not set |
1217 | # CONFIG_CRYPTO_MD4 is not set | 1300 | # CONFIG_CRYPTO_MD4 is not set |
1218 | CONFIG_CRYPTO_MD5=m | 1301 | CONFIG_CRYPTO_MD5=y |
1219 | # CONFIG_CRYPTO_SHA1 is not set | 1302 | # CONFIG_CRYPTO_SHA1 is not set |
1220 | # CONFIG_CRYPTO_SHA256 is not set | 1303 | # CONFIG_CRYPTO_SHA256 is not set |
1221 | # CONFIG_CRYPTO_SHA512 is not set | 1304 | # CONFIG_CRYPTO_SHA512 is not set |
diff --git a/arch/ia64/hp/common/hwsw_iommu.c b/arch/ia64/hp/common/hwsw_iommu.c index 80f8ef013939..317c334c5a18 100644 --- a/arch/ia64/hp/common/hwsw_iommu.c +++ b/arch/ia64/hp/common/hwsw_iommu.c | |||
@@ -17,7 +17,7 @@ | |||
17 | #include <asm/machvec.h> | 17 | #include <asm/machvec.h> |
18 | 18 | ||
19 | /* swiotlb declarations & definitions: */ | 19 | /* swiotlb declarations & definitions: */ |
20 | extern void swiotlb_init_with_default_size (size_t size); | 20 | extern int swiotlb_late_init_with_default_size (size_t size); |
21 | extern ia64_mv_dma_alloc_coherent swiotlb_alloc_coherent; | 21 | extern ia64_mv_dma_alloc_coherent swiotlb_alloc_coherent; |
22 | extern ia64_mv_dma_free_coherent swiotlb_free_coherent; | 22 | extern ia64_mv_dma_free_coherent swiotlb_free_coherent; |
23 | extern ia64_mv_dma_map_single swiotlb_map_single; | 23 | extern ia64_mv_dma_map_single swiotlb_map_single; |
@@ -67,7 +67,16 @@ void | |||
67 | hwsw_init (void) | 67 | hwsw_init (void) |
68 | { | 68 | { |
69 | /* default to a smallish 2MB sw I/O TLB */ | 69 | /* default to a smallish 2MB sw I/O TLB */ |
70 | swiotlb_init_with_default_size (2 * (1<<20)); | 70 | if (swiotlb_late_init_with_default_size (2 * (1<<20)) != 0) { |
71 | #ifdef CONFIG_IA64_GENERIC | ||
72 | /* Better to have normal DMA than panic */ | ||
73 | printk(KERN_WARNING "%s: Failed to initialize software I/O TLB," | ||
74 | " reverting to hpzx1 platform vector\n", __FUNCTION__); | ||
75 | machvec_init("hpzx1"); | ||
76 | #else | ||
77 | panic("Unable to initialize software I/O TLB services"); | ||
78 | #endif | ||
79 | } | ||
71 | } | 80 | } |
72 | 81 | ||
73 | void * | 82 | void * |
diff --git a/arch/ia64/hp/common/sba_iommu.c b/arch/ia64/hp/common/sba_iommu.c index 11957598a8b9..e64ca04ace89 100644 --- a/arch/ia64/hp/common/sba_iommu.c +++ b/arch/ia64/hp/common/sba_iommu.c | |||
@@ -2028,9 +2028,40 @@ static struct acpi_driver acpi_sba_ioc_driver = { | |||
2028 | static int __init | 2028 | static int __init |
2029 | sba_init(void) | 2029 | sba_init(void) |
2030 | { | 2030 | { |
2031 | if (!ia64_platform_is("hpzx1") && !ia64_platform_is("hpzx1_swiotlb")) | ||
2032 | return 0; | ||
2033 | |||
2031 | acpi_bus_register_driver(&acpi_sba_ioc_driver); | 2034 | acpi_bus_register_driver(&acpi_sba_ioc_driver); |
2032 | if (!ioc_list) | 2035 | if (!ioc_list) { |
2036 | #ifdef CONFIG_IA64_GENERIC | ||
2037 | extern int swiotlb_late_init_with_default_size (size_t size); | ||
2038 | |||
2039 | /* | ||
2040 | * If we didn't find something sba_iommu can claim, we | ||
2041 | * need to setup the swiotlb and switch to the dig machvec. | ||
2042 | */ | ||
2043 | if (swiotlb_late_init_with_default_size(64 * (1<<20)) != 0) | ||
2044 | panic("Unable to find SBA IOMMU or initialize " | ||
2045 | "software I/O TLB: Try machvec=dig boot option"); | ||
2046 | machvec_init("dig"); | ||
2047 | #else | ||
2048 | panic("Unable to find SBA IOMMU: Try a generic or DIG kernel"); | ||
2049 | #endif | ||
2033 | return 0; | 2050 | return 0; |
2051 | } | ||
2052 | |||
2053 | #if defined(CONFIG_IA64_GENERIC) || defined(CONFIG_IA64_HP_ZX1_SWIOTLB) | ||
2054 | /* | ||
2055 | * hpzx1_swiotlb needs to have a fairly small swiotlb bounce | ||
2056 | * buffer setup to support devices with smaller DMA masks than | ||
2057 | * sba_iommu can handle. | ||
2058 | */ | ||
2059 | if (ia64_platform_is("hpzx1_swiotlb")) { | ||
2060 | extern void hwsw_init(void); | ||
2061 | |||
2062 | hwsw_init(); | ||
2063 | } | ||
2064 | #endif | ||
2034 | 2065 | ||
2035 | #ifdef CONFIG_PCI | 2066 | #ifdef CONFIG_PCI |
2036 | { | 2067 | { |
@@ -2048,18 +2079,6 @@ sba_init(void) | |||
2048 | 2079 | ||
2049 | subsys_initcall(sba_init); /* must be initialized after ACPI etc., but before any drivers... */ | 2080 | subsys_initcall(sba_init); /* must be initialized after ACPI etc., but before any drivers... */ |
2050 | 2081 | ||
2051 | extern void dig_setup(char**); | ||
2052 | /* | ||
2053 | * MAX_DMA_ADDRESS needs to be setup prior to paging_init to do any good, | ||
2054 | * so we use the platform_setup hook to fix it up. | ||
2055 | */ | ||
2056 | void __init | ||
2057 | sba_setup(char **cmdline_p) | ||
2058 | { | ||
2059 | MAX_DMA_ADDRESS = ~0UL; | ||
2060 | dig_setup(cmdline_p); | ||
2061 | } | ||
2062 | |||
2063 | static int __init | 2082 | static int __init |
2064 | nosbagart(char *str) | 2083 | nosbagart(char *str) |
2065 | { | 2084 | { |
diff --git a/arch/ia64/kernel/acpi.c b/arch/ia64/kernel/acpi.c index 7e926471e4ec..9ad94ddf6687 100644 --- a/arch/ia64/kernel/acpi.c +++ b/arch/ia64/kernel/acpi.c | |||
@@ -838,7 +838,7 @@ EXPORT_SYMBOL(acpi_unmap_lsapic); | |||
838 | #endif /* CONFIG_ACPI_HOTPLUG_CPU */ | 838 | #endif /* CONFIG_ACPI_HOTPLUG_CPU */ |
839 | 839 | ||
840 | #ifdef CONFIG_ACPI_NUMA | 840 | #ifdef CONFIG_ACPI_NUMA |
841 | acpi_status __devinit | 841 | static acpi_status __devinit |
842 | acpi_map_iosapic(acpi_handle handle, u32 depth, void *context, void **ret) | 842 | acpi_map_iosapic(acpi_handle handle, u32 depth, void *context, void **ret) |
843 | { | 843 | { |
844 | struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL }; | 844 | struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL }; |
@@ -890,7 +890,16 @@ acpi_map_iosapic(acpi_handle handle, u32 depth, void *context, void **ret) | |||
890 | map_iosapic_to_node(gsi_base, node); | 890 | map_iosapic_to_node(gsi_base, node); |
891 | return AE_OK; | 891 | return AE_OK; |
892 | } | 892 | } |
893 | #endif /* CONFIG_NUMA */ | 893 | |
894 | static int __init | ||
895 | acpi_map_iosapics (void) | ||
896 | { | ||
897 | acpi_get_devices(NULL, acpi_map_iosapic, NULL, NULL); | ||
898 | return 0; | ||
899 | } | ||
900 | |||
901 | fs_initcall(acpi_map_iosapics); | ||
902 | #endif /* CONFIG_ACPI_NUMA */ | ||
894 | 903 | ||
895 | int acpi_register_ioapic(acpi_handle handle, u64 phys_addr, u32 gsi_base) | 904 | int acpi_register_ioapic(acpi_handle handle, u64 phys_addr, u32 gsi_base) |
896 | { | 905 | { |
diff --git a/arch/ia64/kernel/efi.c b/arch/ia64/kernel/efi.c index 179f230816ed..f72ea6aebcb1 100644 --- a/arch/ia64/kernel/efi.c +++ b/arch/ia64/kernel/efi.c | |||
@@ -239,57 +239,30 @@ is_available_memory (efi_memory_desc_t *md) | |||
239 | return 0; | 239 | return 0; |
240 | } | 240 | } |
241 | 241 | ||
242 | /* | 242 | typedef struct kern_memdesc { |
243 | * Trim descriptor MD so its starts at address START_ADDR. If the descriptor covers | 243 | u64 attribute; |
244 | * memory that is normally available to the kernel, issue a warning that some memory | 244 | u64 start; |
245 | * is being ignored. | 245 | u64 num_pages; |
246 | */ | 246 | } kern_memdesc_t; |
247 | static void | ||
248 | trim_bottom (efi_memory_desc_t *md, u64 start_addr) | ||
249 | { | ||
250 | u64 num_skipped_pages; | ||
251 | 247 | ||
252 | if (md->phys_addr >= start_addr || !md->num_pages) | 248 | static kern_memdesc_t *kern_memmap; |
253 | return; | ||
254 | |||
255 | num_skipped_pages = (start_addr - md->phys_addr) >> EFI_PAGE_SHIFT; | ||
256 | if (num_skipped_pages > md->num_pages) | ||
257 | num_skipped_pages = md->num_pages; | ||
258 | |||
259 | if (is_available_memory(md)) | ||
260 | printk(KERN_NOTICE "efi.%s: ignoring %luKB of memory at 0x%lx due to granule hole " | ||
261 | "at 0x%lx\n", __FUNCTION__, | ||
262 | (num_skipped_pages << EFI_PAGE_SHIFT) >> 10, | ||
263 | md->phys_addr, start_addr - IA64_GRANULE_SIZE); | ||
264 | /* | ||
265 | * NOTE: Don't set md->phys_addr to START_ADDR because that could cause the memory | ||
266 | * descriptor list to become unsorted. In such a case, md->num_pages will be | ||
267 | * zero, so the Right Thing will happen. | ||
268 | */ | ||
269 | md->phys_addr += num_skipped_pages << EFI_PAGE_SHIFT; | ||
270 | md->num_pages -= num_skipped_pages; | ||
271 | } | ||
272 | 249 | ||
273 | static void | 250 | static void |
274 | trim_top (efi_memory_desc_t *md, u64 end_addr) | 251 | walk (efi_freemem_callback_t callback, void *arg, u64 attr) |
275 | { | 252 | { |
276 | u64 num_dropped_pages, md_end_addr; | 253 | kern_memdesc_t *k; |
277 | 254 | u64 start, end, voff; | |
278 | md_end_addr = md->phys_addr + (md->num_pages << EFI_PAGE_SHIFT); | ||
279 | |||
280 | if (md_end_addr <= end_addr || !md->num_pages) | ||
281 | return; | ||
282 | 255 | ||
283 | num_dropped_pages = (md_end_addr - end_addr) >> EFI_PAGE_SHIFT; | 256 | voff = (attr == EFI_MEMORY_WB) ? PAGE_OFFSET : __IA64_UNCACHED_OFFSET; |
284 | if (num_dropped_pages > md->num_pages) | 257 | for (k = kern_memmap; k->start != ~0UL; k++) { |
285 | num_dropped_pages = md->num_pages; | 258 | if (k->attribute != attr) |
286 | 259 | continue; | |
287 | if (is_available_memory(md)) | 260 | start = PAGE_ALIGN(k->start); |
288 | printk(KERN_NOTICE "efi.%s: ignoring %luKB of memory at 0x%lx due to granule hole " | 261 | end = (k->start + (k->num_pages << EFI_PAGE_SHIFT)) & PAGE_MASK; |
289 | "at 0x%lx\n", __FUNCTION__, | 262 | if (start < end) |
290 | (num_dropped_pages << EFI_PAGE_SHIFT) >> 10, | 263 | if ((*callback)(start + voff, end + voff, arg) < 0) |
291 | md->phys_addr, end_addr); | 264 | return; |
292 | md->num_pages -= num_dropped_pages; | 265 | } |
293 | } | 266 | } |
294 | 267 | ||
295 | /* | 268 | /* |
@@ -299,148 +272,19 @@ trim_top (efi_memory_desc_t *md, u64 end_addr) | |||
299 | void | 272 | void |
300 | efi_memmap_walk (efi_freemem_callback_t callback, void *arg) | 273 | efi_memmap_walk (efi_freemem_callback_t callback, void *arg) |
301 | { | 274 | { |
302 | int prev_valid = 0; | 275 | walk(callback, arg, EFI_MEMORY_WB); |
303 | struct range { | ||
304 | u64 start; | ||
305 | u64 end; | ||
306 | } prev, curr; | ||
307 | void *efi_map_start, *efi_map_end, *p, *q; | ||
308 | efi_memory_desc_t *md, *check_md; | ||
309 | u64 efi_desc_size, start, end, granule_addr, last_granule_addr, first_non_wb_addr = 0; | ||
310 | unsigned long total_mem = 0; | ||
311 | |||
312 | efi_map_start = __va(ia64_boot_param->efi_memmap); | ||
313 | efi_map_end = efi_map_start + ia64_boot_param->efi_memmap_size; | ||
314 | efi_desc_size = ia64_boot_param->efi_memdesc_size; | ||
315 | |||
316 | for (p = efi_map_start; p < efi_map_end; p += efi_desc_size) { | ||
317 | md = p; | ||
318 | |||
319 | /* skip over non-WB memory descriptors; that's all we're interested in... */ | ||
320 | if (!(md->attribute & EFI_MEMORY_WB)) | ||
321 | continue; | ||
322 | |||
323 | /* | ||
324 | * granule_addr is the base of md's first granule. | ||
325 | * [granule_addr - first_non_wb_addr) is guaranteed to | ||
326 | * be contiguous WB memory. | ||
327 | */ | ||
328 | granule_addr = GRANULEROUNDDOWN(md->phys_addr); | ||
329 | first_non_wb_addr = max(first_non_wb_addr, granule_addr); | ||
330 | |||
331 | if (first_non_wb_addr < md->phys_addr) { | ||
332 | trim_bottom(md, granule_addr + IA64_GRANULE_SIZE); | ||
333 | granule_addr = GRANULEROUNDDOWN(md->phys_addr); | ||
334 | first_non_wb_addr = max(first_non_wb_addr, granule_addr); | ||
335 | } | ||
336 | |||
337 | for (q = p; q < efi_map_end; q += efi_desc_size) { | ||
338 | check_md = q; | ||
339 | |||
340 | if ((check_md->attribute & EFI_MEMORY_WB) && | ||
341 | (check_md->phys_addr == first_non_wb_addr)) | ||
342 | first_non_wb_addr += check_md->num_pages << EFI_PAGE_SHIFT; | ||
343 | else | ||
344 | break; /* non-WB or hole */ | ||
345 | } | ||
346 | |||
347 | last_granule_addr = GRANULEROUNDDOWN(first_non_wb_addr); | ||
348 | if (last_granule_addr < md->phys_addr + (md->num_pages << EFI_PAGE_SHIFT)) | ||
349 | trim_top(md, last_granule_addr); | ||
350 | |||
351 | if (is_available_memory(md)) { | ||
352 | if (md->phys_addr + (md->num_pages << EFI_PAGE_SHIFT) >= max_addr) { | ||
353 | if (md->phys_addr >= max_addr) | ||
354 | continue; | ||
355 | md->num_pages = (max_addr - md->phys_addr) >> EFI_PAGE_SHIFT; | ||
356 | first_non_wb_addr = max_addr; | ||
357 | } | ||
358 | |||
359 | if (total_mem >= mem_limit) | ||
360 | continue; | ||
361 | |||
362 | if (total_mem + (md->num_pages << EFI_PAGE_SHIFT) > mem_limit) { | ||
363 | unsigned long limit_addr = md->phys_addr; | ||
364 | |||
365 | limit_addr += mem_limit - total_mem; | ||
366 | limit_addr = GRANULEROUNDDOWN(limit_addr); | ||
367 | |||
368 | if (md->phys_addr > limit_addr) | ||
369 | continue; | ||
370 | |||
371 | md->num_pages = (limit_addr - md->phys_addr) >> | ||
372 | EFI_PAGE_SHIFT; | ||
373 | first_non_wb_addr = max_addr = md->phys_addr + | ||
374 | (md->num_pages << EFI_PAGE_SHIFT); | ||
375 | } | ||
376 | total_mem += (md->num_pages << EFI_PAGE_SHIFT); | ||
377 | |||
378 | if (md->num_pages == 0) | ||
379 | continue; | ||
380 | |||
381 | curr.start = PAGE_OFFSET + md->phys_addr; | ||
382 | curr.end = curr.start + (md->num_pages << EFI_PAGE_SHIFT); | ||
383 | |||
384 | if (!prev_valid) { | ||
385 | prev = curr; | ||
386 | prev_valid = 1; | ||
387 | } else { | ||
388 | if (curr.start < prev.start) | ||
389 | printk(KERN_ERR "Oops: EFI memory table not ordered!\n"); | ||
390 | |||
391 | if (prev.end == curr.start) { | ||
392 | /* merge two consecutive memory ranges */ | ||
393 | prev.end = curr.end; | ||
394 | } else { | ||
395 | start = PAGE_ALIGN(prev.start); | ||
396 | end = prev.end & PAGE_MASK; | ||
397 | if ((end > start) && (*callback)(start, end, arg) < 0) | ||
398 | return; | ||
399 | prev = curr; | ||
400 | } | ||
401 | } | ||
402 | } | ||
403 | } | ||
404 | if (prev_valid) { | ||
405 | start = PAGE_ALIGN(prev.start); | ||
406 | end = prev.end & PAGE_MASK; | ||
407 | if (end > start) | ||
408 | (*callback)(start, end, arg); | ||
409 | } | ||
410 | } | 276 | } |
411 | 277 | ||
412 | /* | 278 | /* |
413 | * Walk the EFI memory map to pull out leftover pages in the lower | 279 | * Walks the EFI memory map and calls CALLBACK once for each EFI memory descriptor that |
414 | * memory regions which do not end up in the regular memory map and | 280 | * has memory that is available for uncached allocator. |
415 | * stick them into the uncached allocator | ||
416 | * | ||
417 | * The regular walk function is significantly more complex than the | ||
418 | * uncached walk which means it really doesn't make sense to try and | ||
419 | * marge the two. | ||
420 | */ | 281 | */ |
421 | void __init | 282 | void |
422 | efi_memmap_walk_uc (efi_freemem_callback_t callback) | 283 | efi_memmap_walk_uc (efi_freemem_callback_t callback, void *arg) |
423 | { | 284 | { |
424 | void *efi_map_start, *efi_map_end, *p; | 285 | walk(callback, arg, EFI_MEMORY_UC); |
425 | efi_memory_desc_t *md; | ||
426 | u64 efi_desc_size, start, end; | ||
427 | |||
428 | efi_map_start = __va(ia64_boot_param->efi_memmap); | ||
429 | efi_map_end = efi_map_start + ia64_boot_param->efi_memmap_size; | ||
430 | efi_desc_size = ia64_boot_param->efi_memdesc_size; | ||
431 | |||
432 | for (p = efi_map_start; p < efi_map_end; p += efi_desc_size) { | ||
433 | md = p; | ||
434 | if (md->attribute == EFI_MEMORY_UC) { | ||
435 | start = PAGE_ALIGN(md->phys_addr); | ||
436 | end = PAGE_ALIGN((md->phys_addr+(md->num_pages << EFI_PAGE_SHIFT)) & PAGE_MASK); | ||
437 | if ((*callback)(start, end, NULL) < 0) | ||
438 | return; | ||
439 | } | ||
440 | } | ||
441 | } | 286 | } |
442 | 287 | ||
443 | |||
444 | /* | 288 | /* |
445 | * Look for the PAL_CODE region reported by EFI and maps it using an | 289 | * Look for the PAL_CODE region reported by EFI and maps it using an |
446 | * ITR to enable safe PAL calls in virtual mode. See IA-64 Processor | 290 | * ITR to enable safe PAL calls in virtual mode. See IA-64 Processor |
@@ -862,3 +706,307 @@ efi_uart_console_only(void) | |||
862 | printk(KERN_ERR "Malformed %s value\n", name); | 706 | printk(KERN_ERR "Malformed %s value\n", name); |
863 | return 0; | 707 | return 0; |
864 | } | 708 | } |
709 | |||
710 | #define efi_md_size(md) (md->num_pages << EFI_PAGE_SHIFT) | ||
711 | |||
712 | static inline u64 | ||
713 | kmd_end(kern_memdesc_t *kmd) | ||
714 | { | ||
715 | return (kmd->start + (kmd->num_pages << EFI_PAGE_SHIFT)); | ||
716 | } | ||
717 | |||
718 | static inline u64 | ||
719 | efi_md_end(efi_memory_desc_t *md) | ||
720 | { | ||
721 | return (md->phys_addr + efi_md_size(md)); | ||
722 | } | ||
723 | |||
724 | static inline int | ||
725 | efi_wb(efi_memory_desc_t *md) | ||
726 | { | ||
727 | return (md->attribute & EFI_MEMORY_WB); | ||
728 | } | ||
729 | |||
730 | static inline int | ||
731 | efi_uc(efi_memory_desc_t *md) | ||
732 | { | ||
733 | return (md->attribute & EFI_MEMORY_UC); | ||
734 | } | ||
735 | |||
736 | /* | ||
737 | * Look for the first granule aligned memory descriptor memory | ||
738 | * that is big enough to hold EFI memory map. Make sure this | ||
739 | * descriptor is atleast granule sized so it does not get trimmed | ||
740 | */ | ||
741 | struct kern_memdesc * | ||
742 | find_memmap_space (void) | ||
743 | { | ||
744 | u64 contig_low=0, contig_high=0; | ||
745 | u64 as = 0, ae; | ||
746 | void *efi_map_start, *efi_map_end, *p, *q; | ||
747 | efi_memory_desc_t *md, *pmd = NULL, *check_md; | ||
748 | u64 space_needed, efi_desc_size; | ||
749 | unsigned long total_mem = 0; | ||
750 | |||
751 | efi_map_start = __va(ia64_boot_param->efi_memmap); | ||
752 | efi_map_end = efi_map_start + ia64_boot_param->efi_memmap_size; | ||
753 | efi_desc_size = ia64_boot_param->efi_memdesc_size; | ||
754 | |||
755 | /* | ||
756 | * Worst case: we need 3 kernel descriptors for each efi descriptor | ||
757 | * (if every entry has a WB part in the middle, and UC head and tail), | ||
758 | * plus one for the end marker. | ||
759 | */ | ||
760 | space_needed = sizeof(kern_memdesc_t) * | ||
761 | (3 * (ia64_boot_param->efi_memmap_size/efi_desc_size) + 1); | ||
762 | |||
763 | for (p = efi_map_start; p < efi_map_end; pmd = md, p += efi_desc_size) { | ||
764 | md = p; | ||
765 | if (!efi_wb(md)) { | ||
766 | continue; | ||
767 | } | ||
768 | if (pmd == NULL || !efi_wb(pmd) || efi_md_end(pmd) != md->phys_addr) { | ||
769 | contig_low = GRANULEROUNDUP(md->phys_addr); | ||
770 | contig_high = efi_md_end(md); | ||
771 | for (q = p + efi_desc_size; q < efi_map_end; q += efi_desc_size) { | ||
772 | check_md = q; | ||
773 | if (!efi_wb(check_md)) | ||
774 | break; | ||
775 | if (contig_high != check_md->phys_addr) | ||
776 | break; | ||
777 | contig_high = efi_md_end(check_md); | ||
778 | } | ||
779 | contig_high = GRANULEROUNDDOWN(contig_high); | ||
780 | } | ||
781 | if (!is_available_memory(md) || md->type == EFI_LOADER_DATA) | ||
782 | continue; | ||
783 | |||
784 | /* Round ends inward to granule boundaries */ | ||
785 | as = max(contig_low, md->phys_addr); | ||
786 | ae = min(contig_high, efi_md_end(md)); | ||
787 | |||
788 | /* keep within max_addr= command line arg */ | ||
789 | ae = min(ae, max_addr); | ||
790 | if (ae <= as) | ||
791 | continue; | ||
792 | |||
793 | /* avoid going over mem= command line arg */ | ||
794 | if (total_mem + (ae - as) > mem_limit) | ||
795 | ae -= total_mem + (ae - as) - mem_limit; | ||
796 | |||
797 | if (ae <= as) | ||
798 | continue; | ||
799 | |||
800 | if (ae - as > space_needed) | ||
801 | break; | ||
802 | } | ||
803 | if (p >= efi_map_end) | ||
804 | panic("Can't allocate space for kernel memory descriptors"); | ||
805 | |||
806 | return __va(as); | ||
807 | } | ||
808 | |||
809 | /* | ||
810 | * Walk the EFI memory map and gather all memory available for kernel | ||
811 | * to use. We can allocate partial granules only if the unavailable | ||
812 | * parts exist, and are WB. | ||
813 | */ | ||
814 | void | ||
815 | efi_memmap_init(unsigned long *s, unsigned long *e) | ||
816 | { | ||
817 | struct kern_memdesc *k, *prev = 0; | ||
818 | u64 contig_low=0, contig_high=0; | ||
819 | u64 as, ae, lim; | ||
820 | void *efi_map_start, *efi_map_end, *p, *q; | ||
821 | efi_memory_desc_t *md, *pmd = NULL, *check_md; | ||
822 | u64 efi_desc_size; | ||
823 | unsigned long total_mem = 0; | ||
824 | |||
825 | k = kern_memmap = find_memmap_space(); | ||
826 | |||
827 | efi_map_start = __va(ia64_boot_param->efi_memmap); | ||
828 | efi_map_end = efi_map_start + ia64_boot_param->efi_memmap_size; | ||
829 | efi_desc_size = ia64_boot_param->efi_memdesc_size; | ||
830 | |||
831 | for (p = efi_map_start; p < efi_map_end; pmd = md, p += efi_desc_size) { | ||
832 | md = p; | ||
833 | if (!efi_wb(md)) { | ||
834 | if (efi_uc(md) && (md->type == EFI_CONVENTIONAL_MEMORY || | ||
835 | md->type == EFI_BOOT_SERVICES_DATA)) { | ||
836 | k->attribute = EFI_MEMORY_UC; | ||
837 | k->start = md->phys_addr; | ||
838 | k->num_pages = md->num_pages; | ||
839 | k++; | ||
840 | } | ||
841 | continue; | ||
842 | } | ||
843 | if (pmd == NULL || !efi_wb(pmd) || efi_md_end(pmd) != md->phys_addr) { | ||
844 | contig_low = GRANULEROUNDUP(md->phys_addr); | ||
845 | contig_high = efi_md_end(md); | ||
846 | for (q = p + efi_desc_size; q < efi_map_end; q += efi_desc_size) { | ||
847 | check_md = q; | ||
848 | if (!efi_wb(check_md)) | ||
849 | break; | ||
850 | if (contig_high != check_md->phys_addr) | ||
851 | break; | ||
852 | contig_high = efi_md_end(check_md); | ||
853 | } | ||
854 | contig_high = GRANULEROUNDDOWN(contig_high); | ||
855 | } | ||
856 | if (!is_available_memory(md)) | ||
857 | continue; | ||
858 | |||
859 | /* | ||
860 | * Round ends inward to granule boundaries | ||
861 | * Give trimmings to uncached allocator | ||
862 | */ | ||
863 | if (md->phys_addr < contig_low) { | ||
864 | lim = min(efi_md_end(md), contig_low); | ||
865 | if (efi_uc(md)) { | ||
866 | if (k > kern_memmap && (k-1)->attribute == EFI_MEMORY_UC && | ||
867 | kmd_end(k-1) == md->phys_addr) { | ||
868 | (k-1)->num_pages += (lim - md->phys_addr) >> EFI_PAGE_SHIFT; | ||
869 | } else { | ||
870 | k->attribute = EFI_MEMORY_UC; | ||
871 | k->start = md->phys_addr; | ||
872 | k->num_pages = (lim - md->phys_addr) >> EFI_PAGE_SHIFT; | ||
873 | k++; | ||
874 | } | ||
875 | } | ||
876 | as = contig_low; | ||
877 | } else | ||
878 | as = md->phys_addr; | ||
879 | |||
880 | if (efi_md_end(md) > contig_high) { | ||
881 | lim = max(md->phys_addr, contig_high); | ||
882 | if (efi_uc(md)) { | ||
883 | if (lim == md->phys_addr && k > kern_memmap && | ||
884 | (k-1)->attribute == EFI_MEMORY_UC && | ||
885 | kmd_end(k-1) == md->phys_addr) { | ||
886 | (k-1)->num_pages += md->num_pages; | ||
887 | } else { | ||
888 | k->attribute = EFI_MEMORY_UC; | ||
889 | k->start = lim; | ||
890 | k->num_pages = (efi_md_end(md) - lim) >> EFI_PAGE_SHIFT; | ||
891 | k++; | ||
892 | } | ||
893 | } | ||
894 | ae = contig_high; | ||
895 | } else | ||
896 | ae = efi_md_end(md); | ||
897 | |||
898 | /* keep within max_addr= command line arg */ | ||
899 | ae = min(ae, max_addr); | ||
900 | if (ae <= as) | ||
901 | continue; | ||
902 | |||
903 | /* avoid going over mem= command line arg */ | ||
904 | if (total_mem + (ae - as) > mem_limit) | ||
905 | ae -= total_mem + (ae - as) - mem_limit; | ||
906 | |||
907 | if (ae <= as) | ||
908 | continue; | ||
909 | if (prev && kmd_end(prev) == md->phys_addr) { | ||
910 | prev->num_pages += (ae - as) >> EFI_PAGE_SHIFT; | ||
911 | total_mem += ae - as; | ||
912 | continue; | ||
913 | } | ||
914 | k->attribute = EFI_MEMORY_WB; | ||
915 | k->start = as; | ||
916 | k->num_pages = (ae - as) >> EFI_PAGE_SHIFT; | ||
917 | total_mem += ae - as; | ||
918 | prev = k++; | ||
919 | } | ||
920 | k->start = ~0L; /* end-marker */ | ||
921 | |||
922 | /* reserve the memory we are using for kern_memmap */ | ||
923 | *s = (u64)kern_memmap; | ||
924 | *e = (u64)++k; | ||
925 | } | ||
926 | |||
927 | void | ||
928 | efi_initialize_iomem_resources(struct resource *code_resource, | ||
929 | struct resource *data_resource) | ||
930 | { | ||
931 | struct resource *res; | ||
932 | void *efi_map_start, *efi_map_end, *p; | ||
933 | efi_memory_desc_t *md; | ||
934 | u64 efi_desc_size; | ||
935 | char *name; | ||
936 | unsigned long flags; | ||
937 | |||
938 | efi_map_start = __va(ia64_boot_param->efi_memmap); | ||
939 | efi_map_end = efi_map_start + ia64_boot_param->efi_memmap_size; | ||
940 | efi_desc_size = ia64_boot_param->efi_memdesc_size; | ||
941 | |||
942 | res = NULL; | ||
943 | |||
944 | for (p = efi_map_start; p < efi_map_end; p += efi_desc_size) { | ||
945 | md = p; | ||
946 | |||
947 | if (md->num_pages == 0) /* should not happen */ | ||
948 | continue; | ||
949 | |||
950 | flags = IORESOURCE_MEM; | ||
951 | switch (md->type) { | ||
952 | |||
953 | case EFI_MEMORY_MAPPED_IO: | ||
954 | case EFI_MEMORY_MAPPED_IO_PORT_SPACE: | ||
955 | continue; | ||
956 | |||
957 | case EFI_LOADER_CODE: | ||
958 | case EFI_LOADER_DATA: | ||
959 | case EFI_BOOT_SERVICES_DATA: | ||
960 | case EFI_BOOT_SERVICES_CODE: | ||
961 | case EFI_CONVENTIONAL_MEMORY: | ||
962 | if (md->attribute & EFI_MEMORY_WP) { | ||
963 | name = "System ROM"; | ||
964 | flags |= IORESOURCE_READONLY; | ||
965 | } else { | ||
966 | name = "System RAM"; | ||
967 | } | ||
968 | break; | ||
969 | |||
970 | case EFI_ACPI_MEMORY_NVS: | ||
971 | name = "ACPI Non-volatile Storage"; | ||
972 | flags |= IORESOURCE_BUSY; | ||
973 | break; | ||
974 | |||
975 | case EFI_UNUSABLE_MEMORY: | ||
976 | name = "reserved"; | ||
977 | flags |= IORESOURCE_BUSY | IORESOURCE_DISABLED; | ||
978 | break; | ||
979 | |||
980 | case EFI_RESERVED_TYPE: | ||
981 | case EFI_RUNTIME_SERVICES_CODE: | ||
982 | case EFI_RUNTIME_SERVICES_DATA: | ||
983 | case EFI_ACPI_RECLAIM_MEMORY: | ||
984 | default: | ||
985 | name = "reserved"; | ||
986 | flags |= IORESOURCE_BUSY; | ||
987 | break; | ||
988 | } | ||
989 | |||
990 | if ((res = kcalloc(1, sizeof(struct resource), GFP_KERNEL)) == NULL) { | ||
991 | printk(KERN_ERR "failed to alocate resource for iomem\n"); | ||
992 | return; | ||
993 | } | ||
994 | |||
995 | res->name = name; | ||
996 | res->start = md->phys_addr; | ||
997 | res->end = md->phys_addr + (md->num_pages << EFI_PAGE_SHIFT) - 1; | ||
998 | res->flags = flags; | ||
999 | |||
1000 | if (insert_resource(&iomem_resource, res) < 0) | ||
1001 | kfree(res); | ||
1002 | else { | ||
1003 | /* | ||
1004 | * We don't know which region contains | ||
1005 | * kernel data so we try it repeatedly and | ||
1006 | * let the resource manager test it. | ||
1007 | */ | ||
1008 | insert_resource(res, code_resource); | ||
1009 | insert_resource(res, data_resource); | ||
1010 | } | ||
1011 | } | ||
1012 | } | ||
diff --git a/arch/ia64/kernel/mca.c b/arch/ia64/kernel/mca.c index 6dc726ad7137..d0a5106fba24 100644 --- a/arch/ia64/kernel/mca.c +++ b/arch/ia64/kernel/mca.c | |||
@@ -1016,6 +1016,11 @@ ia64_mca_cmc_int_handler(int cmc_irq, void *arg, struct pt_regs *ptregs) | |||
1016 | 1016 | ||
1017 | cmc_polling_enabled = 1; | 1017 | cmc_polling_enabled = 1; |
1018 | spin_unlock(&cmc_history_lock); | 1018 | spin_unlock(&cmc_history_lock); |
1019 | /* If we're being hit with CMC interrupts, we won't | ||
1020 | * ever execute the schedule_work() below. Need to | ||
1021 | * disable CMC interrupts on this processor now. | ||
1022 | */ | ||
1023 | ia64_mca_cmc_vector_disable(NULL); | ||
1019 | schedule_work(&cmc_disable_work); | 1024 | schedule_work(&cmc_disable_work); |
1020 | 1025 | ||
1021 | /* | 1026 | /* |
diff --git a/arch/ia64/kernel/setup.c b/arch/ia64/kernel/setup.c index 1f5c26dbe705..f95fd2766634 100644 --- a/arch/ia64/kernel/setup.c +++ b/arch/ia64/kernel/setup.c | |||
@@ -78,6 +78,19 @@ struct screen_info screen_info; | |||
78 | unsigned long vga_console_iobase; | 78 | unsigned long vga_console_iobase; |
79 | unsigned long vga_console_membase; | 79 | unsigned long vga_console_membase; |
80 | 80 | ||
81 | static struct resource data_resource = { | ||
82 | .name = "Kernel data", | ||
83 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM | ||
84 | }; | ||
85 | |||
86 | static struct resource code_resource = { | ||
87 | .name = "Kernel code", | ||
88 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM | ||
89 | }; | ||
90 | extern void efi_initialize_iomem_resources(struct resource *, | ||
91 | struct resource *); | ||
92 | extern char _text[], _end[], _etext[]; | ||
93 | |||
81 | unsigned long ia64_max_cacheline_size; | 94 | unsigned long ia64_max_cacheline_size; |
82 | unsigned long ia64_iobase; /* virtual address for I/O accesses */ | 95 | unsigned long ia64_iobase; /* virtual address for I/O accesses */ |
83 | EXPORT_SYMBOL(ia64_iobase); | 96 | EXPORT_SYMBOL(ia64_iobase); |
@@ -171,6 +184,22 @@ sort_regions (struct rsvd_region *rsvd_region, int max) | |||
171 | } | 184 | } |
172 | } | 185 | } |
173 | 186 | ||
187 | /* | ||
188 | * Request address space for all standard resources | ||
189 | */ | ||
190 | static int __init register_memory(void) | ||
191 | { | ||
192 | code_resource.start = ia64_tpa(_text); | ||
193 | code_resource.end = ia64_tpa(_etext) - 1; | ||
194 | data_resource.start = ia64_tpa(_etext); | ||
195 | data_resource.end = ia64_tpa(_end) - 1; | ||
196 | efi_initialize_iomem_resources(&code_resource, &data_resource); | ||
197 | |||
198 | return 0; | ||
199 | } | ||
200 | |||
201 | __initcall(register_memory); | ||
202 | |||
174 | /** | 203 | /** |
175 | * reserve_memory - setup reserved memory areas | 204 | * reserve_memory - setup reserved memory areas |
176 | * | 205 | * |
@@ -211,6 +240,9 @@ reserve_memory (void) | |||
211 | } | 240 | } |
212 | #endif | 241 | #endif |
213 | 242 | ||
243 | efi_memmap_init(&rsvd_region[n].start, &rsvd_region[n].end); | ||
244 | n++; | ||
245 | |||
214 | /* end of memory marker */ | 246 | /* end of memory marker */ |
215 | rsvd_region[n].start = ~0UL; | 247 | rsvd_region[n].start = ~0UL; |
216 | rsvd_region[n].end = ~0UL; | 248 | rsvd_region[n].end = ~0UL; |
@@ -244,28 +276,31 @@ find_initrd (void) | |||
244 | static void __init | 276 | static void __init |
245 | io_port_init (void) | 277 | io_port_init (void) |
246 | { | 278 | { |
247 | extern unsigned long ia64_iobase; | ||
248 | unsigned long phys_iobase; | 279 | unsigned long phys_iobase; |
249 | 280 | ||
250 | /* | 281 | /* |
251 | * Set `iobase' to the appropriate address in region 6 (uncached access range). | 282 | * Set `iobase' based on the EFI memory map or, failing that, the |
283 | * value firmware left in ar.k0. | ||
252 | * | 284 | * |
253 | * The EFI memory map is the "preferred" location to get the I/O port space base, | 285 | * Note that in ia32 mode, IN/OUT instructions use ar.k0 to compute |
254 | * rather the relying on AR.KR0. This should become more clear in future SAL | 286 | * the port's virtual address, so ia32_load_state() loads it with a |
255 | * specs. We'll fall back to getting it out of AR.KR0 if no appropriate entry is | 287 | * user virtual address. But in ia64 mode, glibc uses the |
256 | * found in the memory map. | 288 | * *physical* address in ar.k0 to mmap the appropriate area from |
289 | * /dev/mem, and the inX()/outX() interfaces use MMIO. In both | ||
290 | * cases, user-mode can only use the legacy 0-64K I/O port space. | ||
291 | * | ||
292 | * ar.k0 is not involved in kernel I/O port accesses, which can use | ||
293 | * any of the I/O port spaces and are done via MMIO using the | ||
294 | * virtual mmio_base from the appropriate io_space[]. | ||
257 | */ | 295 | */ |
258 | phys_iobase = efi_get_iobase(); | 296 | phys_iobase = efi_get_iobase(); |
259 | if (phys_iobase) | 297 | if (!phys_iobase) { |
260 | /* set AR.KR0 since this is all we use it for anyway */ | ||
261 | ia64_set_kr(IA64_KR_IO_BASE, phys_iobase); | ||
262 | else { | ||
263 | phys_iobase = ia64_get_kr(IA64_KR_IO_BASE); | 298 | phys_iobase = ia64_get_kr(IA64_KR_IO_BASE); |
264 | printk(KERN_INFO "No I/O port range found in EFI memory map, falling back " | 299 | printk(KERN_INFO "No I/O port range found in EFI memory map, " |
265 | "to AR.KR0\n"); | 300 | "falling back to AR.KR0 (0x%lx)\n", phys_iobase); |
266 | printk(KERN_INFO "I/O port base = 0x%lx\n", phys_iobase); | ||
267 | } | 301 | } |
268 | ia64_iobase = (unsigned long) ioremap(phys_iobase, 0); | 302 | ia64_iobase = (unsigned long) ioremap(phys_iobase, 0); |
303 | ia64_set_kr(IA64_KR_IO_BASE, __pa(ia64_iobase)); | ||
269 | 304 | ||
270 | /* setup legacy IO port space */ | 305 | /* setup legacy IO port space */ |
271 | io_space[0].mmio_base = ia64_iobase; | 306 | io_space[0].mmio_base = ia64_iobase; |
diff --git a/arch/ia64/kernel/uncached.c b/arch/ia64/kernel/uncached.c index 4e9d06c48a8b..c6d40446c2c4 100644 --- a/arch/ia64/kernel/uncached.c +++ b/arch/ia64/kernel/uncached.c | |||
@@ -205,23 +205,18 @@ EXPORT_SYMBOL(uncached_free_page); | |||
205 | static int __init | 205 | static int __init |
206 | uncached_build_memmap(unsigned long start, unsigned long end, void *arg) | 206 | uncached_build_memmap(unsigned long start, unsigned long end, void *arg) |
207 | { | 207 | { |
208 | long length; | 208 | long length = end - start; |
209 | unsigned long vstart, vend; | ||
210 | int node; | 209 | int node; |
211 | 210 | ||
212 | length = end - start; | ||
213 | vstart = start + __IA64_UNCACHED_OFFSET; | ||
214 | vend = end + __IA64_UNCACHED_OFFSET; | ||
215 | |||
216 | dprintk(KERN_ERR "uncached_build_memmap(%lx %lx)\n", start, end); | 211 | dprintk(KERN_ERR "uncached_build_memmap(%lx %lx)\n", start, end); |
217 | 212 | ||
218 | memset((char *)vstart, 0, length); | 213 | memset((char *)start, 0, length); |
219 | 214 | ||
220 | node = paddr_to_nid(start); | 215 | node = paddr_to_nid(start - __IA64_UNCACHED_OFFSET); |
221 | 216 | ||
222 | for (; vstart < vend ; vstart += PAGE_SIZE) { | 217 | for (; start < end ; start += PAGE_SIZE) { |
223 | dprintk(KERN_INFO "sticking %lx into the pool!\n", vstart); | 218 | dprintk(KERN_INFO "sticking %lx into the pool!\n", start); |
224 | gen_pool_free(uncached_pool[node], vstart, PAGE_SIZE); | 219 | gen_pool_free(uncached_pool[node], start, PAGE_SIZE); |
225 | } | 220 | } |
226 | 221 | ||
227 | return 0; | 222 | return 0; |
diff --git a/arch/ia64/lib/swiotlb.c b/arch/ia64/lib/swiotlb.c index dbc0b3e449c5..48e5ff26eb1d 100644 --- a/arch/ia64/lib/swiotlb.c +++ b/arch/ia64/lib/swiotlb.c | |||
@@ -49,6 +49,15 @@ | |||
49 | */ | 49 | */ |
50 | #define IO_TLB_SHIFT 11 | 50 | #define IO_TLB_SHIFT 11 |
51 | 51 | ||
52 | #define SLABS_PER_PAGE (1 << (PAGE_SHIFT - IO_TLB_SHIFT)) | ||
53 | |||
54 | /* | ||
55 | * Minimum IO TLB size to bother booting with. Systems with mainly | ||
56 | * 64bit capable cards will only lightly use the swiotlb. If we can't | ||
57 | * allocate a contiguous 1MB, we're probably in trouble anyway. | ||
58 | */ | ||
59 | #define IO_TLB_MIN_SLABS ((1<<20) >> IO_TLB_SHIFT) | ||
60 | |||
52 | int swiotlb_force; | 61 | int swiotlb_force; |
53 | 62 | ||
54 | /* | 63 | /* |
@@ -123,8 +132,8 @@ swiotlb_init_with_default_size (size_t default_size) | |||
123 | /* | 132 | /* |
124 | * Get IO TLB memory from the low pages | 133 | * Get IO TLB memory from the low pages |
125 | */ | 134 | */ |
126 | io_tlb_start = alloc_bootmem_low_pages(io_tlb_nslabs * | 135 | io_tlb_start = alloc_bootmem_low_pages_limit(io_tlb_nslabs * |
127 | (1 << IO_TLB_SHIFT)); | 136 | (1 << IO_TLB_SHIFT), 0x100000000); |
128 | if (!io_tlb_start) | 137 | if (!io_tlb_start) |
129 | panic("Cannot allocate SWIOTLB buffer"); | 138 | panic("Cannot allocate SWIOTLB buffer"); |
130 | io_tlb_end = io_tlb_start + io_tlb_nslabs * (1 << IO_TLB_SHIFT); | 139 | io_tlb_end = io_tlb_start + io_tlb_nslabs * (1 << IO_TLB_SHIFT); |
@@ -154,6 +163,99 @@ swiotlb_init (void) | |||
154 | swiotlb_init_with_default_size(64 * (1<<20)); /* default to 64MB */ | 163 | swiotlb_init_with_default_size(64 * (1<<20)); /* default to 64MB */ |
155 | } | 164 | } |
156 | 165 | ||
166 | /* | ||
167 | * Systems with larger DMA zones (those that don't support ISA) can | ||
168 | * initialize the swiotlb later using the slab allocator if needed. | ||
169 | * This should be just like above, but with some error catching. | ||
170 | */ | ||
171 | int | ||
172 | swiotlb_late_init_with_default_size (size_t default_size) | ||
173 | { | ||
174 | unsigned long i, req_nslabs = io_tlb_nslabs; | ||
175 | unsigned int order; | ||
176 | |||
177 | if (!io_tlb_nslabs) { | ||
178 | io_tlb_nslabs = (default_size >> IO_TLB_SHIFT); | ||
179 | io_tlb_nslabs = ALIGN(io_tlb_nslabs, IO_TLB_SEGSIZE); | ||
180 | } | ||
181 | |||
182 | /* | ||
183 | * Get IO TLB memory from the low pages | ||
184 | */ | ||
185 | order = get_order(io_tlb_nslabs * (1 << IO_TLB_SHIFT)); | ||
186 | io_tlb_nslabs = SLABS_PER_PAGE << order; | ||
187 | |||
188 | while ((SLABS_PER_PAGE << order) > IO_TLB_MIN_SLABS) { | ||
189 | io_tlb_start = (char *)__get_free_pages(GFP_DMA | __GFP_NOWARN, | ||
190 | order); | ||
191 | if (io_tlb_start) | ||
192 | break; | ||
193 | order--; | ||
194 | } | ||
195 | |||
196 | if (!io_tlb_start) | ||
197 | goto cleanup1; | ||
198 | |||
199 | if (order != get_order(io_tlb_nslabs * (1 << IO_TLB_SHIFT))) { | ||
200 | printk(KERN_WARNING "Warning: only able to allocate %ld MB " | ||
201 | "for software IO TLB\n", (PAGE_SIZE << order) >> 20); | ||
202 | io_tlb_nslabs = SLABS_PER_PAGE << order; | ||
203 | } | ||
204 | io_tlb_end = io_tlb_start + io_tlb_nslabs * (1 << IO_TLB_SHIFT); | ||
205 | memset(io_tlb_start, 0, io_tlb_nslabs * (1 << IO_TLB_SHIFT)); | ||
206 | |||
207 | /* | ||
208 | * Allocate and initialize the free list array. This array is used | ||
209 | * to find contiguous free memory regions of size up to IO_TLB_SEGSIZE | ||
210 | * between io_tlb_start and io_tlb_end. | ||
211 | */ | ||
212 | io_tlb_list = (unsigned int *)__get_free_pages(GFP_KERNEL, | ||
213 | get_order(io_tlb_nslabs * sizeof(int))); | ||
214 | if (!io_tlb_list) | ||
215 | goto cleanup2; | ||
216 | |||
217 | for (i = 0; i < io_tlb_nslabs; i++) | ||
218 | io_tlb_list[i] = IO_TLB_SEGSIZE - OFFSET(i, IO_TLB_SEGSIZE); | ||
219 | io_tlb_index = 0; | ||
220 | |||
221 | io_tlb_orig_addr = (unsigned char **)__get_free_pages(GFP_KERNEL, | ||
222 | get_order(io_tlb_nslabs * sizeof(char *))); | ||
223 | if (!io_tlb_orig_addr) | ||
224 | goto cleanup3; | ||
225 | |||
226 | memset(io_tlb_orig_addr, 0, io_tlb_nslabs * sizeof(char *)); | ||
227 | |||
228 | /* | ||
229 | * Get the overflow emergency buffer | ||
230 | */ | ||
231 | io_tlb_overflow_buffer = (void *)__get_free_pages(GFP_DMA, | ||
232 | get_order(io_tlb_overflow)); | ||
233 | if (!io_tlb_overflow_buffer) | ||
234 | goto cleanup4; | ||
235 | |||
236 | printk(KERN_INFO "Placing %ldMB software IO TLB between 0x%lx - " | ||
237 | "0x%lx\n", (io_tlb_nslabs * (1 << IO_TLB_SHIFT)) >> 20, | ||
238 | virt_to_phys(io_tlb_start), virt_to_phys(io_tlb_end)); | ||
239 | |||
240 | return 0; | ||
241 | |||
242 | cleanup4: | ||
243 | free_pages((unsigned long)io_tlb_orig_addr, get_order(io_tlb_nslabs * | ||
244 | sizeof(char *))); | ||
245 | io_tlb_orig_addr = NULL; | ||
246 | cleanup3: | ||
247 | free_pages((unsigned long)io_tlb_list, get_order(io_tlb_nslabs * | ||
248 | sizeof(int))); | ||
249 | io_tlb_list = NULL; | ||
250 | io_tlb_end = NULL; | ||
251 | cleanup2: | ||
252 | free_pages((unsigned long)io_tlb_start, order); | ||
253 | io_tlb_start = NULL; | ||
254 | cleanup1: | ||
255 | io_tlb_nslabs = req_nslabs; | ||
256 | return -ENOMEM; | ||
257 | } | ||
258 | |||
157 | static inline int | 259 | static inline int |
158 | address_needs_mapping(struct device *hwdev, dma_addr_t addr) | 260 | address_needs_mapping(struct device *hwdev, dma_addr_t addr) |
159 | { | 261 | { |
diff --git a/arch/ia64/pci/pci.c b/arch/ia64/pci/pci.c index 9b5de589b82f..017cfc3f4789 100644 --- a/arch/ia64/pci/pci.c +++ b/arch/ia64/pci/pci.c | |||
@@ -120,29 +120,6 @@ struct pci_ops pci_root_ops = { | |||
120 | .write = pci_write, | 120 | .write = pci_write, |
121 | }; | 121 | }; |
122 | 122 | ||
123 | #ifdef CONFIG_NUMA | ||
124 | extern acpi_status acpi_map_iosapic(acpi_handle, u32, void *, void **); | ||
125 | static void acpi_map_iosapics(void) | ||
126 | { | ||
127 | acpi_get_devices(NULL, acpi_map_iosapic, NULL, NULL); | ||
128 | } | ||
129 | #else | ||
130 | static void acpi_map_iosapics(void) | ||
131 | { | ||
132 | return; | ||
133 | } | ||
134 | #endif /* CONFIG_NUMA */ | ||
135 | |||
136 | static int __init | ||
137 | pci_acpi_init (void) | ||
138 | { | ||
139 | acpi_map_iosapics(); | ||
140 | |||
141 | return 0; | ||
142 | } | ||
143 | |||
144 | subsys_initcall(pci_acpi_init); | ||
145 | |||
146 | /* Called by ACPI when it finds a new root bus. */ | 123 | /* Called by ACPI when it finds a new root bus. */ |
147 | 124 | ||
148 | static struct pci_controller * __devinit | 125 | static struct pci_controller * __devinit |
@@ -191,6 +168,29 @@ add_io_space (struct acpi_resource_address64 *addr) | |||
191 | return IO_SPACE_BASE(i); | 168 | return IO_SPACE_BASE(i); |
192 | } | 169 | } |
193 | 170 | ||
171 | static acpi_status __devinit resource_to_window(struct acpi_resource *resource, | ||
172 | struct acpi_resource_address64 *addr) | ||
173 | { | ||
174 | acpi_status status; | ||
175 | |||
176 | /* | ||
177 | * We're only interested in _CRS descriptors that are | ||
178 | * - address space descriptors for memory or I/O space | ||
179 | * - non-zero size | ||
180 | * - producers, i.e., the address space is routed downstream, | ||
181 | * not consumed by the bridge itself | ||
182 | */ | ||
183 | status = acpi_resource_to_address64(resource, addr); | ||
184 | if (ACPI_SUCCESS(status) && | ||
185 | (addr->resource_type == ACPI_MEMORY_RANGE || | ||
186 | addr->resource_type == ACPI_IO_RANGE) && | ||
187 | addr->address_length && | ||
188 | addr->producer_consumer == ACPI_PRODUCER) | ||
189 | return AE_OK; | ||
190 | |||
191 | return AE_ERROR; | ||
192 | } | ||
193 | |||
194 | static acpi_status __devinit | 194 | static acpi_status __devinit |
195 | count_window (struct acpi_resource *resource, void *data) | 195 | count_window (struct acpi_resource *resource, void *data) |
196 | { | 196 | { |
@@ -198,11 +198,9 @@ count_window (struct acpi_resource *resource, void *data) | |||
198 | struct acpi_resource_address64 addr; | 198 | struct acpi_resource_address64 addr; |
199 | acpi_status status; | 199 | acpi_status status; |
200 | 200 | ||
201 | status = acpi_resource_to_address64(resource, &addr); | 201 | status = resource_to_window(resource, &addr); |
202 | if (ACPI_SUCCESS(status)) | 202 | if (ACPI_SUCCESS(status)) |
203 | if (addr.resource_type == ACPI_MEMORY_RANGE || | 203 | (*windows)++; |
204 | addr.resource_type == ACPI_IO_RANGE) | ||
205 | (*windows)++; | ||
206 | 204 | ||
207 | return AE_OK; | 205 | return AE_OK; |
208 | } | 206 | } |
@@ -221,13 +219,11 @@ static __devinit acpi_status add_window(struct acpi_resource *res, void *data) | |||
221 | unsigned long flags, offset = 0; | 219 | unsigned long flags, offset = 0; |
222 | struct resource *root; | 220 | struct resource *root; |
223 | 221 | ||
224 | status = acpi_resource_to_address64(res, &addr); | 222 | /* Return AE_OK for non-window resources to keep scanning for more */ |
223 | status = resource_to_window(res, &addr); | ||
225 | if (!ACPI_SUCCESS(status)) | 224 | if (!ACPI_SUCCESS(status)) |
226 | return AE_OK; | 225 | return AE_OK; |
227 | 226 | ||
228 | if (!addr.address_length) | ||
229 | return AE_OK; | ||
230 | |||
231 | if (addr.resource_type == ACPI_MEMORY_RANGE) { | 227 | if (addr.resource_type == ACPI_MEMORY_RANGE) { |
232 | flags = IORESOURCE_MEM; | 228 | flags = IORESOURCE_MEM; |
233 | root = &iomem_resource; | 229 | root = &iomem_resource; |
diff --git a/arch/ia64/sn/kernel/io_init.c b/arch/ia64/sn/kernel/io_init.c index 906622d9f933..b4f5053f5e1b 100644 --- a/arch/ia64/sn/kernel/io_init.c +++ b/arch/ia64/sn/kernel/io_init.c | |||
@@ -22,8 +22,6 @@ | |||
22 | #include "xtalk/hubdev.h" | 22 | #include "xtalk/hubdev.h" |
23 | #include "xtalk/xwidgetdev.h" | 23 | #include "xtalk/xwidgetdev.h" |
24 | 24 | ||
25 | nasid_t master_nasid = INVALID_NASID; /* Partition Master */ | ||
26 | |||
27 | static struct list_head sn_sysdata_list; | 25 | static struct list_head sn_sysdata_list; |
28 | 26 | ||
29 | /* sysdata list struct */ | 27 | /* sysdata list struct */ |
@@ -165,7 +163,7 @@ static void sn_fixup_ionodes(void) | |||
165 | * Get SGI Specific HUB chipset information. | 163 | * Get SGI Specific HUB chipset information. |
166 | * Inform Prom that this kernel can support domain bus numbering. | 164 | * Inform Prom that this kernel can support domain bus numbering. |
167 | */ | 165 | */ |
168 | for (i = 0; i < numionodes; i++) { | 166 | for (i = 0; i < num_cnodes; i++) { |
169 | hubdev = (struct hubdev_info *)(NODEPDA(i)->pdinfo); | 167 | hubdev = (struct hubdev_info *)(NODEPDA(i)->pdinfo); |
170 | nasid = cnodeid_to_nasid(i); | 168 | nasid = cnodeid_to_nasid(i); |
171 | hubdev->max_segment_number = 0xffffffff; | 169 | hubdev->max_segment_number = 0xffffffff; |
diff --git a/arch/ia64/sn/kernel/setup.c b/arch/ia64/sn/kernel/setup.c index 6f8c5883716b..0fb579ef18c2 100644 --- a/arch/ia64/sn/kernel/setup.c +++ b/arch/ia64/sn/kernel/setup.c | |||
@@ -59,8 +59,6 @@ DEFINE_PER_CPU(struct pda_s, pda_percpu); | |||
59 | 59 | ||
60 | #define MAX_PHYS_MEMORY (1UL << IA64_MAX_PHYS_BITS) /* Max physical address supported */ | 60 | #define MAX_PHYS_MEMORY (1UL << IA64_MAX_PHYS_BITS) /* Max physical address supported */ |
61 | 61 | ||
62 | lboard_t *root_lboard[MAX_COMPACT_NODES]; | ||
63 | |||
64 | extern void bte_init_node(nodepda_t *, cnodeid_t); | 62 | extern void bte_init_node(nodepda_t *, cnodeid_t); |
65 | 63 | ||
66 | extern void sn_timer_init(void); | 64 | extern void sn_timer_init(void); |
@@ -97,15 +95,15 @@ u8 sn_region_size; | |||
97 | EXPORT_SYMBOL(sn_region_size); | 95 | EXPORT_SYMBOL(sn_region_size); |
98 | int sn_prom_type; /* 0=hardware, 1=medusa/realprom, 2=medusa/fakeprom */ | 96 | int sn_prom_type; /* 0=hardware, 1=medusa/realprom, 2=medusa/fakeprom */ |
99 | 97 | ||
100 | short physical_node_map[MAX_PHYSNODE_ID]; | 98 | short physical_node_map[MAX_NUMALINK_NODES]; |
101 | static unsigned long sn_prom_features[MAX_PROM_FEATURE_SETS]; | 99 | static unsigned long sn_prom_features[MAX_PROM_FEATURE_SETS]; |
102 | 100 | ||
103 | EXPORT_SYMBOL(physical_node_map); | 101 | EXPORT_SYMBOL(physical_node_map); |
104 | 102 | ||
105 | int numionodes; | 103 | int num_cnodes; |
106 | 104 | ||
107 | static void sn_init_pdas(char **); | 105 | static void sn_init_pdas(char **); |
108 | static void scan_for_ionodes(void); | 106 | static void build_cnode_tables(void); |
109 | 107 | ||
110 | static nodepda_t *nodepdaindr[MAX_COMPACT_NODES]; | 108 | static nodepda_t *nodepdaindr[MAX_COMPACT_NODES]; |
111 | 109 | ||
@@ -140,19 +138,6 @@ char drive_info[4 * 16]; | |||
140 | #endif | 138 | #endif |
141 | 139 | ||
142 | /* | 140 | /* |
143 | * Get nasid of current cpu early in boot before nodepda is initialized | ||
144 | */ | ||
145 | static int | ||
146 | boot_get_nasid(void) | ||
147 | { | ||
148 | int nasid; | ||
149 | |||
150 | if (ia64_sn_get_sapic_info(get_sapicid(), &nasid, NULL, NULL)) | ||
151 | BUG(); | ||
152 | return nasid; | ||
153 | } | ||
154 | |||
155 | /* | ||
156 | * This routine can only be used during init, since | 141 | * This routine can only be used during init, since |
157 | * smp_boot_data is an init data structure. | 142 | * smp_boot_data is an init data structure. |
158 | * We have to use smp_boot_data.cpu_phys_id to find | 143 | * We have to use smp_boot_data.cpu_phys_id to find |
@@ -223,7 +208,6 @@ void __init early_sn_setup(void) | |||
223 | } | 208 | } |
224 | 209 | ||
225 | extern int platform_intr_list[]; | 210 | extern int platform_intr_list[]; |
226 | extern nasid_t master_nasid; | ||
227 | static int __initdata shub_1_1_found = 0; | 211 | static int __initdata shub_1_1_found = 0; |
228 | 212 | ||
229 | /* | 213 | /* |
@@ -269,7 +253,6 @@ static void __init sn_check_for_wars(void) | |||
269 | void __init sn_setup(char **cmdline_p) | 253 | void __init sn_setup(char **cmdline_p) |
270 | { | 254 | { |
271 | long status, ticks_per_sec, drift; | 255 | long status, ticks_per_sec, drift; |
272 | int pxm; | ||
273 | u32 version = sn_sal_rev(); | 256 | u32 version = sn_sal_rev(); |
274 | extern void sn_cpu_init(void); | 257 | extern void sn_cpu_init(void); |
275 | 258 | ||
@@ -300,11 +283,10 @@ void __init sn_setup(char **cmdline_p) | |||
300 | 283 | ||
301 | MAX_DMA_ADDRESS = PAGE_OFFSET + MAX_PHYS_MEMORY; | 284 | MAX_DMA_ADDRESS = PAGE_OFFSET + MAX_PHYS_MEMORY; |
302 | 285 | ||
303 | memset(physical_node_map, -1, sizeof(physical_node_map)); | 286 | /* |
304 | for (pxm = 0; pxm < MAX_PXM_DOMAINS; pxm++) | 287 | * Build the tables for managing cnodes. |
305 | if (pxm_to_nid_map[pxm] != -1) | 288 | */ |
306 | physical_node_map[pxm_to_nasid(pxm)] = | 289 | build_cnode_tables(); |
307 | pxm_to_nid_map[pxm]; | ||
308 | 290 | ||
309 | /* | 291 | /* |
310 | * Old PROMs do not provide an ACPI FADT. Disable legacy keyboard | 292 | * Old PROMs do not provide an ACPI FADT. Disable legacy keyboard |
@@ -319,8 +301,6 @@ void __init sn_setup(char **cmdline_p) | |||
319 | 301 | ||
320 | printk("SGI SAL version %x.%02x\n", version >> 8, version & 0x00FF); | 302 | printk("SGI SAL version %x.%02x\n", version >> 8, version & 0x00FF); |
321 | 303 | ||
322 | master_nasid = boot_get_nasid(); | ||
323 | |||
324 | status = | 304 | status = |
325 | ia64_sal_freq_base(SAL_FREQ_BASE_REALTIME_CLOCK, &ticks_per_sec, | 305 | ia64_sal_freq_base(SAL_FREQ_BASE_REALTIME_CLOCK, &ticks_per_sec, |
326 | &drift); | 306 | &drift); |
@@ -378,15 +358,6 @@ static void __init sn_init_pdas(char **cmdline_p) | |||
378 | { | 358 | { |
379 | cnodeid_t cnode; | 359 | cnodeid_t cnode; |
380 | 360 | ||
381 | memset(sn_cnodeid_to_nasid, -1, | ||
382 | sizeof(__ia64_per_cpu_var(__sn_cnodeid_to_nasid))); | ||
383 | for_each_online_node(cnode) | ||
384 | sn_cnodeid_to_nasid[cnode] = | ||
385 | pxm_to_nasid(nid_to_pxm_map[cnode]); | ||
386 | |||
387 | numionodes = num_online_nodes(); | ||
388 | scan_for_ionodes(); | ||
389 | |||
390 | /* | 361 | /* |
391 | * Allocate & initalize the nodepda for each node. | 362 | * Allocate & initalize the nodepda for each node. |
392 | */ | 363 | */ |
@@ -402,7 +373,7 @@ static void __init sn_init_pdas(char **cmdline_p) | |||
402 | /* | 373 | /* |
403 | * Allocate & initialize nodepda for TIOs. For now, put them on node 0. | 374 | * Allocate & initialize nodepda for TIOs. For now, put them on node 0. |
404 | */ | 375 | */ |
405 | for (cnode = num_online_nodes(); cnode < numionodes; cnode++) { | 376 | for (cnode = num_online_nodes(); cnode < num_cnodes; cnode++) { |
406 | nodepdaindr[cnode] = | 377 | nodepdaindr[cnode] = |
407 | alloc_bootmem_node(NODE_DATA(0), sizeof(nodepda_t)); | 378 | alloc_bootmem_node(NODE_DATA(0), sizeof(nodepda_t)); |
408 | memset(nodepdaindr[cnode], 0, sizeof(nodepda_t)); | 379 | memset(nodepdaindr[cnode], 0, sizeof(nodepda_t)); |
@@ -411,7 +382,7 @@ static void __init sn_init_pdas(char **cmdline_p) | |||
411 | /* | 382 | /* |
412 | * Now copy the array of nodepda pointers to each nodepda. | 383 | * Now copy the array of nodepda pointers to each nodepda. |
413 | */ | 384 | */ |
414 | for (cnode = 0; cnode < numionodes; cnode++) | 385 | for (cnode = 0; cnode < num_cnodes; cnode++) |
415 | memcpy(nodepdaindr[cnode]->pernode_pdaindr, nodepdaindr, | 386 | memcpy(nodepdaindr[cnode]->pernode_pdaindr, nodepdaindr, |
416 | sizeof(nodepdaindr)); | 387 | sizeof(nodepdaindr)); |
417 | 388 | ||
@@ -428,7 +399,7 @@ static void __init sn_init_pdas(char **cmdline_p) | |||
428 | * Initialize the per node hubdev. This includes IO Nodes and | 399 | * Initialize the per node hubdev. This includes IO Nodes and |
429 | * headless/memless nodes. | 400 | * headless/memless nodes. |
430 | */ | 401 | */ |
431 | for (cnode = 0; cnode < numionodes; cnode++) { | 402 | for (cnode = 0; cnode < num_cnodes; cnode++) { |
432 | hubdev_init_node(nodepdaindr[cnode], cnode); | 403 | hubdev_init_node(nodepdaindr[cnode], cnode); |
433 | } | 404 | } |
434 | } | 405 | } |
@@ -553,87 +524,58 @@ void __init sn_cpu_init(void) | |||
553 | } | 524 | } |
554 | 525 | ||
555 | /* | 526 | /* |
556 | * Scan klconfig for ionodes. Add the nasids to the | 527 | * Build tables for converting between NASIDs and cnodes. |
557 | * physical_node_map and the pda and increment numionodes. | ||
558 | */ | 528 | */ |
529 | static inline int __init board_needs_cnode(int type) | ||
530 | { | ||
531 | return (type == KLTYPE_SNIA || type == KLTYPE_TIO); | ||
532 | } | ||
559 | 533 | ||
560 | static void __init scan_for_ionodes(void) | 534 | void __init build_cnode_tables(void) |
561 | { | 535 | { |
562 | int nasid = 0; | 536 | int nasid; |
537 | int node; | ||
563 | lboard_t *brd; | 538 | lboard_t *brd; |
564 | 539 | ||
565 | /* fakeprom does not support klgraph */ | 540 | memset(physical_node_map, -1, sizeof(physical_node_map)); |
566 | if (IS_RUNNING_ON_FAKE_PROM()) | 541 | memset(sn_cnodeid_to_nasid, -1, |
567 | return; | 542 | sizeof(__ia64_per_cpu_var(__sn_cnodeid_to_nasid))); |
568 | |||
569 | /* Setup ionodes with memory */ | ||
570 | for (nasid = 0; nasid < MAX_PHYSNODE_ID; nasid += 2) { | ||
571 | char *klgraph_header; | ||
572 | cnodeid_t cnodeid; | ||
573 | |||
574 | if (physical_node_map[nasid] == -1) | ||
575 | continue; | ||
576 | 543 | ||
577 | cnodeid = -1; | 544 | /* |
578 | klgraph_header = __va(ia64_sn_get_klconfig_addr(nasid)); | 545 | * First populate the tables with C/M bricks. This ensures that |
579 | if (!klgraph_header) { | 546 | * cnode == node for all C & M bricks. |
580 | BUG(); /* All nodes must have klconfig tables! */ | 547 | */ |
581 | } | 548 | for_each_online_node(node) { |
582 | cnodeid = nasid_to_cnodeid(nasid); | 549 | nasid = pxm_to_nasid(nid_to_pxm_map[node]); |
583 | root_lboard[cnodeid] = (lboard_t *) | 550 | sn_cnodeid_to_nasid[node] = nasid; |
584 | NODE_OFFSET_TO_LBOARD((nasid), | 551 | physical_node_map[nasid] = node; |
585 | ((kl_config_hdr_t | ||
586 | *) (klgraph_header))-> | ||
587 | ch_board_info); | ||
588 | } | 552 | } |
589 | 553 | ||
590 | /* Scan headless/memless IO Nodes. */ | 554 | /* |
591 | for (nasid = 0; nasid < MAX_PHYSNODE_ID; nasid += 2) { | 555 | * num_cnodes is total number of C/M/TIO bricks. Because of the 256 node |
592 | /* if there's no nasid, don't try to read the klconfig on the node */ | 556 | * limit on the number of nodes, we can't use the generic node numbers |
593 | if (physical_node_map[nasid] == -1) | 557 | * for this. Note that num_cnodes is incremented below as TIOs or |
594 | continue; | 558 | * headless/memoryless nodes are discovered. |
595 | brd = find_lboard_any((lboard_t *) | 559 | */ |
596 | root_lboard[nasid_to_cnodeid(nasid)], | 560 | num_cnodes = num_online_nodes(); |
597 | KLTYPE_SNIA); | ||
598 | if (brd) { | ||
599 | brd = KLCF_NEXT_ANY(brd); /* Skip this node's lboard */ | ||
600 | if (!brd) | ||
601 | continue; | ||
602 | } | ||
603 | |||
604 | brd = find_lboard_any(brd, KLTYPE_SNIA); | ||
605 | 561 | ||
606 | while (brd) { | 562 | /* fakeprom does not support klgraph */ |
607 | sn_cnodeid_to_nasid[numionodes] = brd->brd_nasid; | 563 | if (IS_RUNNING_ON_FAKE_PROM()) |
608 | physical_node_map[brd->brd_nasid] = numionodes; | 564 | return; |
609 | root_lboard[numionodes] = brd; | ||
610 | numionodes++; | ||
611 | brd = KLCF_NEXT_ANY(brd); | ||
612 | if (!brd) | ||
613 | break; | ||
614 | |||
615 | brd = find_lboard_any(brd, KLTYPE_SNIA); | ||
616 | } | ||
617 | } | ||
618 | 565 | ||
619 | /* Scan for TIO nodes. */ | 566 | /* Find TIOs & headless/memoryless nodes and add them to the tables */ |
620 | for (nasid = 0; nasid < MAX_PHYSNODE_ID; nasid += 2) { | 567 | for_each_online_node(node) { |
621 | /* if there's no nasid, don't try to read the klconfig on the node */ | 568 | kl_config_hdr_t *klgraph_header; |
622 | if (physical_node_map[nasid] == -1) | 569 | nasid = cnodeid_to_nasid(node); |
623 | continue; | 570 | if ((klgraph_header = ia64_sn_get_klconfig_addr(nasid)) == NULL) |
624 | brd = find_lboard_any((lboard_t *) | 571 | BUG(); |
625 | root_lboard[nasid_to_cnodeid(nasid)], | 572 | brd = NODE_OFFSET_TO_LBOARD(nasid, klgraph_header->ch_board_info); |
626 | KLTYPE_TIO); | ||
627 | while (brd) { | 573 | while (brd) { |
628 | sn_cnodeid_to_nasid[numionodes] = brd->brd_nasid; | 574 | if (board_needs_cnode(brd->brd_type) && physical_node_map[brd->brd_nasid] < 0) { |
629 | physical_node_map[brd->brd_nasid] = numionodes; | 575 | sn_cnodeid_to_nasid[num_cnodes] = brd->brd_nasid; |
630 | root_lboard[numionodes] = brd; | 576 | physical_node_map[brd->brd_nasid] = num_cnodes++; |
631 | numionodes++; | 577 | } |
632 | brd = KLCF_NEXT_ANY(brd); | 578 | brd = find_lboard_next(brd); |
633 | if (!brd) | ||
634 | break; | ||
635 | |||
636 | brd = find_lboard_any(brd, KLTYPE_TIO); | ||
637 | } | 579 | } |
638 | } | 580 | } |
639 | } | 581 | } |
diff --git a/arch/ia64/sn/kernel/sn2/sn_hwperf.c b/arch/ia64/sn/kernel/sn2/sn_hwperf.c index 0513aacac8c1..6c6fbca3229c 100644 --- a/arch/ia64/sn/kernel/sn2/sn_hwperf.c +++ b/arch/ia64/sn/kernel/sn2/sn_hwperf.c | |||
@@ -476,8 +476,8 @@ static int sn_topology_show(struct seq_file *s, void *d) | |||
476 | for_each_online_cpu(j) { | 476 | for_each_online_cpu(j) { |
477 | seq_printf(s, j ? ":%d" : ", dist %d", | 477 | seq_printf(s, j ? ":%d" : ", dist %d", |
478 | node_distance( | 478 | node_distance( |
479 | cpuid_to_cnodeid(i), | 479 | cpu_to_node(i), |
480 | cpuid_to_cnodeid(j))); | 480 | cpu_to_node(j))); |
481 | } | 481 | } |
482 | seq_putc(s, '\n'); | 482 | seq_putc(s, '\n'); |
483 | } | 483 | } |
diff --git a/arch/ia64/sn/kernel/tiocx.c b/arch/ia64/sn/kernel/tiocx.c index b45db5133f55..0d8592a745a7 100644 --- a/arch/ia64/sn/kernel/tiocx.c +++ b/arch/ia64/sn/kernel/tiocx.c | |||
@@ -183,11 +183,12 @@ int cx_driver_unregister(struct cx_drv *cx_driver) | |||
183 | * @part_num: device's part number | 183 | * @part_num: device's part number |
184 | * @mfg_num: device's manufacturer number | 184 | * @mfg_num: device's manufacturer number |
185 | * @hubdev: hub info associated with this device | 185 | * @hubdev: hub info associated with this device |
186 | * @bt: board type of the device | ||
186 | * | 187 | * |
187 | */ | 188 | */ |
188 | int | 189 | int |
189 | cx_device_register(nasid_t nasid, int part_num, int mfg_num, | 190 | cx_device_register(nasid_t nasid, int part_num, int mfg_num, |
190 | struct hubdev_info *hubdev) | 191 | struct hubdev_info *hubdev, int bt) |
191 | { | 192 | { |
192 | struct cx_dev *cx_dev; | 193 | struct cx_dev *cx_dev; |
193 | 194 | ||
@@ -200,6 +201,7 @@ cx_device_register(nasid_t nasid, int part_num, int mfg_num, | |||
200 | cx_dev->cx_id.mfg_num = mfg_num; | 201 | cx_dev->cx_id.mfg_num = mfg_num; |
201 | cx_dev->cx_id.nasid = nasid; | 202 | cx_dev->cx_id.nasid = nasid; |
202 | cx_dev->hubdev = hubdev; | 203 | cx_dev->hubdev = hubdev; |
204 | cx_dev->bt = bt; | ||
203 | 205 | ||
204 | cx_dev->dev.parent = NULL; | 206 | cx_dev->dev.parent = NULL; |
205 | cx_dev->dev.bus = &tiocx_bus_type; | 207 | cx_dev->dev.bus = &tiocx_bus_type; |
@@ -238,7 +240,8 @@ static int cx_device_reload(struct cx_dev *cx_dev) | |||
238 | { | 240 | { |
239 | cx_device_unregister(cx_dev); | 241 | cx_device_unregister(cx_dev); |
240 | return cx_device_register(cx_dev->cx_id.nasid, cx_dev->cx_id.part_num, | 242 | return cx_device_register(cx_dev->cx_id.nasid, cx_dev->cx_id.part_num, |
241 | cx_dev->cx_id.mfg_num, cx_dev->hubdev); | 243 | cx_dev->cx_id.mfg_num, cx_dev->hubdev, |
244 | cx_dev->bt); | ||
242 | } | 245 | } |
243 | 246 | ||
244 | static inline uint64_t tiocx_intr_alloc(nasid_t nasid, int widget, | 247 | static inline uint64_t tiocx_intr_alloc(nasid_t nasid, int widget, |
@@ -365,26 +368,20 @@ static void tio_corelet_reset(nasid_t nasid, int corelet) | |||
365 | udelay(2000); | 368 | udelay(2000); |
366 | } | 369 | } |
367 | 370 | ||
368 | static int tiocx_btchar_get(int nasid) | 371 | static int is_fpga_tio(int nasid, int *bt) |
369 | { | 372 | { |
370 | moduleid_t module_id; | 373 | int ioboard_type; |
371 | geoid_t geoid; | ||
372 | int cnodeid; | ||
373 | |||
374 | cnodeid = nasid_to_cnodeid(nasid); | ||
375 | geoid = cnodeid_get_geoid(cnodeid); | ||
376 | module_id = geo_module(geoid); | ||
377 | return MODULE_GET_BTCHAR(module_id); | ||
378 | } | ||
379 | 374 | ||
380 | static int is_fpga_brick(int nasid) | 375 | ioboard_type = ia64_sn_sysctl_ioboard_get(nasid); |
381 | { | 376 | |
382 | switch (tiocx_btchar_get(nasid)) { | 377 | switch (ioboard_type) { |
383 | case L1_BRICKTYPE_SA: | 378 | case L1_BRICKTYPE_SA: |
384 | case L1_BRICKTYPE_ATHENA: | 379 | case L1_BRICKTYPE_ATHENA: |
385 | case L1_BRICKTYPE_DAYTONA: | 380 | case L1_BOARDTYPE_DAYTONA: |
381 | *bt = ioboard_type; | ||
386 | return 1; | 382 | return 1; |
387 | } | 383 | } |
384 | |||
388 | return 0; | 385 | return 0; |
389 | } | 386 | } |
390 | 387 | ||
@@ -407,16 +404,22 @@ static int tiocx_reload(struct cx_dev *cx_dev) | |||
407 | 404 | ||
408 | if (bitstream_loaded(nasid)) { | 405 | if (bitstream_loaded(nasid)) { |
409 | uint64_t cx_id; | 406 | uint64_t cx_id; |
410 | 407 | int rv; | |
411 | cx_id = | 408 | |
412 | *(volatile uint64_t *)(TIO_SWIN_BASE(nasid, TIOCX_CORELET) + | 409 | rv = ia64_sn_sysctl_tio_clock_reset(nasid); |
410 | if (rv) { | ||
411 | printk(KERN_ALERT "CX port JTAG reset failed.\n"); | ||
412 | } else { | ||
413 | cx_id = *(volatile uint64_t *) | ||
414 | (TIO_SWIN_BASE(nasid, TIOCX_CORELET) + | ||
413 | WIDGET_ID); | 415 | WIDGET_ID); |
414 | part_num = XWIDGET_PART_NUM(cx_id); | 416 | part_num = XWIDGET_PART_NUM(cx_id); |
415 | mfg_num = XWIDGET_MFG_NUM(cx_id); | 417 | mfg_num = XWIDGET_MFG_NUM(cx_id); |
416 | DBG("part= 0x%x, mfg= 0x%x\n", part_num, mfg_num); | 418 | DBG("part= 0x%x, mfg= 0x%x\n", part_num, mfg_num); |
417 | /* just ignore it if it's a CE */ | 419 | /* just ignore it if it's a CE */ |
418 | if (part_num == TIO_CE_ASIC_PARTNUM) | 420 | if (part_num == TIO_CE_ASIC_PARTNUM) |
419 | return 0; | 421 | return 0; |
422 | } | ||
420 | } | 423 | } |
421 | 424 | ||
422 | cx_dev->cx_id.part_num = part_num; | 425 | cx_dev->cx_id.part_num = part_num; |
@@ -436,10 +439,10 @@ static ssize_t show_cxdev_control(struct device *dev, struct device_attribute *a | |||
436 | { | 439 | { |
437 | struct cx_dev *cx_dev = to_cx_dev(dev); | 440 | struct cx_dev *cx_dev = to_cx_dev(dev); |
438 | 441 | ||
439 | return sprintf(buf, "0x%x 0x%x 0x%x %d\n", | 442 | return sprintf(buf, "0x%x 0x%x 0x%x 0x%x\n", |
440 | cx_dev->cx_id.nasid, | 443 | cx_dev->cx_id.nasid, |
441 | cx_dev->cx_id.part_num, cx_dev->cx_id.mfg_num, | 444 | cx_dev->cx_id.part_num, cx_dev->cx_id.mfg_num, |
442 | tiocx_btchar_get(cx_dev->cx_id.nasid)); | 445 | cx_dev->bt); |
443 | } | 446 | } |
444 | 447 | ||
445 | static ssize_t store_cxdev_control(struct device *dev, struct device_attribute *attr, const char *buf, | 448 | static ssize_t store_cxdev_control(struct device *dev, struct device_attribute *attr, const char *buf, |
@@ -486,13 +489,13 @@ static int __init tiocx_init(void) | |||
486 | 489 | ||
487 | bus_register(&tiocx_bus_type); | 490 | bus_register(&tiocx_bus_type); |
488 | 491 | ||
489 | for (cnodeid = 0; cnodeid < MAX_COMPACT_NODES; cnodeid++) { | 492 | for (cnodeid = 0; cnodeid < num_cnodes; cnodeid++) { |
490 | nasid_t nasid; | 493 | nasid_t nasid; |
494 | int bt; | ||
491 | 495 | ||
492 | if ((nasid = cnodeid_to_nasid(cnodeid)) < 0) | 496 | nasid = cnodeid_to_nasid(cnodeid); |
493 | break; /* No more nasids .. bail out of loop */ | ||
494 | 497 | ||
495 | if ((nasid & 0x1) && is_fpga_brick(nasid)) { | 498 | if ((nasid & 0x1) && is_fpga_tio(nasid, &bt)) { |
496 | struct hubdev_info *hubdev; | 499 | struct hubdev_info *hubdev; |
497 | struct xwidget_info *widgetp; | 500 | struct xwidget_info *widgetp; |
498 | 501 | ||
@@ -512,7 +515,7 @@ static int __init tiocx_init(void) | |||
512 | 515 | ||
513 | if (cx_device_register | 516 | if (cx_device_register |
514 | (nasid, widgetp->xwi_hwid.part_num, | 517 | (nasid, widgetp->xwi_hwid.part_num, |
515 | widgetp->xwi_hwid.mfg_num, hubdev) < 0) | 518 | widgetp->xwi_hwid.mfg_num, hubdev, bt) < 0) |
516 | return -ENXIO; | 519 | return -ENXIO; |
517 | else | 520 | else |
518 | found_tiocx_device++; | 521 | found_tiocx_device++; |
diff --git a/arch/ia64/sn/kernel/xpc_partition.c b/arch/ia64/sn/kernel/xpc_partition.c index 578265ea9e67..72ef330fb784 100644 --- a/arch/ia64/sn/kernel/xpc_partition.c +++ b/arch/ia64/sn/kernel/xpc_partition.c | |||
@@ -44,7 +44,7 @@ static u64 xpc_sh2_IPI_access3; | |||
44 | 44 | ||
45 | 45 | ||
46 | /* original protection values for each node */ | 46 | /* original protection values for each node */ |
47 | u64 xpc_prot_vec[MAX_COMPACT_NODES]; | 47 | u64 xpc_prot_vec[MAX_NUMNODES]; |
48 | 48 | ||
49 | 49 | ||
50 | /* this partition's reserved page */ | 50 | /* this partition's reserved page */ |
diff --git a/arch/ia64/sn/pci/pci_dma.c b/arch/ia64/sn/pci/pci_dma.c index 0e4b9ad9ef02..abdf6eea6ac8 100644 --- a/arch/ia64/sn/pci/pci_dma.c +++ b/arch/ia64/sn/pci/pci_dma.c | |||
@@ -326,6 +326,29 @@ int sn_pci_legacy_read(struct pci_bus *bus, u16 port, u32 *val, u8 size) | |||
326 | { | 326 | { |
327 | unsigned long addr; | 327 | unsigned long addr; |
328 | int ret; | 328 | int ret; |
329 | struct ia64_sal_retval isrv; | ||
330 | |||
331 | /* | ||
332 | * First, try the SN_SAL_IOIF_PCI_SAFE SAL call which can work | ||
333 | * around hw issues at the pci bus level. SGI proms older than | ||
334 | * 4.10 don't implment this. | ||
335 | */ | ||
336 | |||
337 | SAL_CALL(isrv, SN_SAL_IOIF_PCI_SAFE, | ||
338 | pci_domain_nr(bus), bus->number, | ||
339 | 0, /* io */ | ||
340 | 0, /* read */ | ||
341 | port, size, __pa(val)); | ||
342 | |||
343 | if (isrv.status == 0) | ||
344 | return size; | ||
345 | |||
346 | /* | ||
347 | * If the above failed, retry using the SAL_PROBE call which should | ||
348 | * be present in all proms (but which cannot work round PCI chipset | ||
349 | * bugs). This code is retained for compatability with old | ||
350 | * pre-4.10 proms, and should be removed at some point in the future. | ||
351 | */ | ||
329 | 352 | ||
330 | if (!SN_PCIBUS_BUSSOFT(bus)) | 353 | if (!SN_PCIBUS_BUSSOFT(bus)) |
331 | return -ENODEV; | 354 | return -ENODEV; |
@@ -349,6 +372,29 @@ int sn_pci_legacy_write(struct pci_bus *bus, u16 port, u32 val, u8 size) | |||
349 | int ret = size; | 372 | int ret = size; |
350 | unsigned long paddr; | 373 | unsigned long paddr; |
351 | unsigned long *addr; | 374 | unsigned long *addr; |
375 | struct ia64_sal_retval isrv; | ||
376 | |||
377 | /* | ||
378 | * First, try the SN_SAL_IOIF_PCI_SAFE SAL call which can work | ||
379 | * around hw issues at the pci bus level. SGI proms older than | ||
380 | * 4.10 don't implment this. | ||
381 | */ | ||
382 | |||
383 | SAL_CALL(isrv, SN_SAL_IOIF_PCI_SAFE, | ||
384 | pci_domain_nr(bus), bus->number, | ||
385 | 0, /* io */ | ||
386 | 1, /* write */ | ||
387 | port, size, __pa(&val)); | ||
388 | |||
389 | if (isrv.status == 0) | ||
390 | return size; | ||
391 | |||
392 | /* | ||
393 | * If the above failed, retry using the SAL_PROBE call which should | ||
394 | * be present in all proms (but which cannot work round PCI chipset | ||
395 | * bugs). This code is retained for compatability with old | ||
396 | * pre-4.10 proms, and should be removed at some point in the future. | ||
397 | */ | ||
352 | 398 | ||
353 | if (!SN_PCIBUS_BUSSOFT(bus)) { | 399 | if (!SN_PCIBUS_BUSSOFT(bus)) { |
354 | ret = -ENODEV; | 400 | ret = -ENODEV; |
diff --git a/arch/ia64/sn/pci/pcibr/pcibr_reg.c b/arch/ia64/sn/pci/pcibr/pcibr_reg.c index 21426d02fbe6..4f718c3e93d3 100644 --- a/arch/ia64/sn/pci/pcibr/pcibr_reg.c +++ b/arch/ia64/sn/pci/pcibr/pcibr_reg.c | |||
@@ -8,6 +8,7 @@ | |||
8 | 8 | ||
9 | #include <linux/interrupt.h> | 9 | #include <linux/interrupt.h> |
10 | #include <linux/types.h> | 10 | #include <linux/types.h> |
11 | #include <asm/sn/io.h> | ||
11 | #include <asm/sn/pcibr_provider.h> | 12 | #include <asm/sn/pcibr_provider.h> |
12 | #include <asm/sn/pcibus_provider_defs.h> | 13 | #include <asm/sn/pcibus_provider_defs.h> |
13 | #include <asm/sn/pcidev.h> | 14 | #include <asm/sn/pcidev.h> |
@@ -29,10 +30,10 @@ void pcireg_control_bit_clr(struct pcibus_info *pcibus_info, uint64_t bits) | |||
29 | if (pcibus_info) { | 30 | if (pcibus_info) { |
30 | switch (pcibus_info->pbi_bridge_type) { | 31 | switch (pcibus_info->pbi_bridge_type) { |
31 | case PCIBR_BRIDGETYPE_TIOCP: | 32 | case PCIBR_BRIDGETYPE_TIOCP: |
32 | ptr->tio.cp_control &= ~bits; | 33 | __sn_clrq_relaxed(&ptr->tio.cp_control, bits); |
33 | break; | 34 | break; |
34 | case PCIBR_BRIDGETYPE_PIC: | 35 | case PCIBR_BRIDGETYPE_PIC: |
35 | ptr->pic.p_wid_control &= ~bits; | 36 | __sn_clrq_relaxed(&ptr->pic.p_wid_control, bits); |
36 | break; | 37 | break; |
37 | default: | 38 | default: |
38 | panic | 39 | panic |
@@ -49,10 +50,10 @@ void pcireg_control_bit_set(struct pcibus_info *pcibus_info, uint64_t bits) | |||
49 | if (pcibus_info) { | 50 | if (pcibus_info) { |
50 | switch (pcibus_info->pbi_bridge_type) { | 51 | switch (pcibus_info->pbi_bridge_type) { |
51 | case PCIBR_BRIDGETYPE_TIOCP: | 52 | case PCIBR_BRIDGETYPE_TIOCP: |
52 | ptr->tio.cp_control |= bits; | 53 | __sn_setq_relaxed(&ptr->tio.cp_control, bits); |
53 | break; | 54 | break; |
54 | case PCIBR_BRIDGETYPE_PIC: | 55 | case PCIBR_BRIDGETYPE_PIC: |
55 | ptr->pic.p_wid_control |= bits; | 56 | __sn_setq_relaxed(&ptr->pic.p_wid_control, bits); |
56 | break; | 57 | break; |
57 | default: | 58 | default: |
58 | panic | 59 | panic |
@@ -73,10 +74,10 @@ uint64_t pcireg_tflush_get(struct pcibus_info *pcibus_info) | |||
73 | if (pcibus_info) { | 74 | if (pcibus_info) { |
74 | switch (pcibus_info->pbi_bridge_type) { | 75 | switch (pcibus_info->pbi_bridge_type) { |
75 | case PCIBR_BRIDGETYPE_TIOCP: | 76 | case PCIBR_BRIDGETYPE_TIOCP: |
76 | ret = ptr->tio.cp_tflush; | 77 | ret = __sn_readq_relaxed(&ptr->tio.cp_tflush); |
77 | break; | 78 | break; |
78 | case PCIBR_BRIDGETYPE_PIC: | 79 | case PCIBR_BRIDGETYPE_PIC: |
79 | ret = ptr->pic.p_wid_tflush; | 80 | ret = __sn_readq_relaxed(&ptr->pic.p_wid_tflush); |
80 | break; | 81 | break; |
81 | default: | 82 | default: |
82 | panic | 83 | panic |
@@ -103,10 +104,10 @@ uint64_t pcireg_intr_status_get(struct pcibus_info * pcibus_info) | |||
103 | if (pcibus_info) { | 104 | if (pcibus_info) { |
104 | switch (pcibus_info->pbi_bridge_type) { | 105 | switch (pcibus_info->pbi_bridge_type) { |
105 | case PCIBR_BRIDGETYPE_TIOCP: | 106 | case PCIBR_BRIDGETYPE_TIOCP: |
106 | ret = ptr->tio.cp_int_status; | 107 | ret = __sn_readq_relaxed(&ptr->tio.cp_int_status); |
107 | break; | 108 | break; |
108 | case PCIBR_BRIDGETYPE_PIC: | 109 | case PCIBR_BRIDGETYPE_PIC: |
109 | ret = ptr->pic.p_int_status; | 110 | ret = __sn_readq_relaxed(&ptr->pic.p_int_status); |
110 | break; | 111 | break; |
111 | default: | 112 | default: |
112 | panic | 113 | panic |
@@ -127,10 +128,10 @@ void pcireg_intr_enable_bit_clr(struct pcibus_info *pcibus_info, uint64_t bits) | |||
127 | if (pcibus_info) { | 128 | if (pcibus_info) { |
128 | switch (pcibus_info->pbi_bridge_type) { | 129 | switch (pcibus_info->pbi_bridge_type) { |
129 | case PCIBR_BRIDGETYPE_TIOCP: | 130 | case PCIBR_BRIDGETYPE_TIOCP: |
130 | ptr->tio.cp_int_enable &= ~bits; | 131 | __sn_clrq_relaxed(&ptr->tio.cp_int_enable, bits); |
131 | break; | 132 | break; |
132 | case PCIBR_BRIDGETYPE_PIC: | 133 | case PCIBR_BRIDGETYPE_PIC: |
133 | ptr->pic.p_int_enable &= ~bits; | 134 | __sn_clrq_relaxed(&ptr->pic.p_int_enable, ~bits); |
134 | break; | 135 | break; |
135 | default: | 136 | default: |
136 | panic | 137 | panic |
@@ -147,10 +148,10 @@ void pcireg_intr_enable_bit_set(struct pcibus_info *pcibus_info, uint64_t bits) | |||
147 | if (pcibus_info) { | 148 | if (pcibus_info) { |
148 | switch (pcibus_info->pbi_bridge_type) { | 149 | switch (pcibus_info->pbi_bridge_type) { |
149 | case PCIBR_BRIDGETYPE_TIOCP: | 150 | case PCIBR_BRIDGETYPE_TIOCP: |
150 | ptr->tio.cp_int_enable |= bits; | 151 | __sn_setq_relaxed(&ptr->tio.cp_int_enable, bits); |
151 | break; | 152 | break; |
152 | case PCIBR_BRIDGETYPE_PIC: | 153 | case PCIBR_BRIDGETYPE_PIC: |
153 | ptr->pic.p_int_enable |= bits; | 154 | __sn_setq_relaxed(&ptr->pic.p_int_enable, bits); |
154 | break; | 155 | break; |
155 | default: | 156 | default: |
156 | panic | 157 | panic |
@@ -171,14 +172,16 @@ void pcireg_intr_addr_addr_set(struct pcibus_info *pcibus_info, int int_n, | |||
171 | if (pcibus_info) { | 172 | if (pcibus_info) { |
172 | switch (pcibus_info->pbi_bridge_type) { | 173 | switch (pcibus_info->pbi_bridge_type) { |
173 | case PCIBR_BRIDGETYPE_TIOCP: | 174 | case PCIBR_BRIDGETYPE_TIOCP: |
174 | ptr->tio.cp_int_addr[int_n] &= ~TIOCP_HOST_INTR_ADDR; | 175 | __sn_clrq_relaxed(&ptr->tio.cp_int_addr[int_n], |
175 | ptr->tio.cp_int_addr[int_n] |= | 176 | TIOCP_HOST_INTR_ADDR); |
176 | (addr & TIOCP_HOST_INTR_ADDR); | 177 | __sn_setq_relaxed(&ptr->tio.cp_int_addr[int_n], |
178 | (addr & TIOCP_HOST_INTR_ADDR)); | ||
177 | break; | 179 | break; |
178 | case PCIBR_BRIDGETYPE_PIC: | 180 | case PCIBR_BRIDGETYPE_PIC: |
179 | ptr->pic.p_int_addr[int_n] &= ~PIC_HOST_INTR_ADDR; | 181 | __sn_clrq_relaxed(&ptr->pic.p_int_addr[int_n], |
180 | ptr->pic.p_int_addr[int_n] |= | 182 | PIC_HOST_INTR_ADDR); |
181 | (addr & PIC_HOST_INTR_ADDR); | 183 | __sn_setq_relaxed(&ptr->pic.p_int_addr[int_n], |
184 | (addr & PIC_HOST_INTR_ADDR)); | ||
182 | break; | 185 | break; |
183 | default: | 186 | default: |
184 | panic | 187 | panic |
@@ -198,10 +201,10 @@ void pcireg_force_intr_set(struct pcibus_info *pcibus_info, int int_n) | |||
198 | if (pcibus_info) { | 201 | if (pcibus_info) { |
199 | switch (pcibus_info->pbi_bridge_type) { | 202 | switch (pcibus_info->pbi_bridge_type) { |
200 | case PCIBR_BRIDGETYPE_TIOCP: | 203 | case PCIBR_BRIDGETYPE_TIOCP: |
201 | ptr->tio.cp_force_pin[int_n] = 1; | 204 | writeq(1, &ptr->tio.cp_force_pin[int_n]); |
202 | break; | 205 | break; |
203 | case PCIBR_BRIDGETYPE_PIC: | 206 | case PCIBR_BRIDGETYPE_PIC: |
204 | ptr->pic.p_force_pin[int_n] = 1; | 207 | writeq(1, &ptr->pic.p_force_pin[int_n]); |
205 | break; | 208 | break; |
206 | default: | 209 | default: |
207 | panic | 210 | panic |
@@ -222,10 +225,12 @@ uint64_t pcireg_wrb_flush_get(struct pcibus_info *pcibus_info, int device) | |||
222 | if (pcibus_info) { | 225 | if (pcibus_info) { |
223 | switch (pcibus_info->pbi_bridge_type) { | 226 | switch (pcibus_info->pbi_bridge_type) { |
224 | case PCIBR_BRIDGETYPE_TIOCP: | 227 | case PCIBR_BRIDGETYPE_TIOCP: |
225 | ret = ptr->tio.cp_wr_req_buf[device]; | 228 | ret = |
229 | __sn_readq_relaxed(&ptr->tio.cp_wr_req_buf[device]); | ||
226 | break; | 230 | break; |
227 | case PCIBR_BRIDGETYPE_PIC: | 231 | case PCIBR_BRIDGETYPE_PIC: |
228 | ret = ptr->pic.p_wr_req_buf[device]; | 232 | ret = |
233 | __sn_readq_relaxed(&ptr->pic.p_wr_req_buf[device]); | ||
229 | break; | 234 | break; |
230 | default: | 235 | default: |
231 | panic("pcireg_wrb_flush_get: unknown bridgetype bridge 0x%p", (void *)ptr); | 236 | panic("pcireg_wrb_flush_get: unknown bridgetype bridge 0x%p", (void *)ptr); |
@@ -244,10 +249,10 @@ void pcireg_int_ate_set(struct pcibus_info *pcibus_info, int ate_index, | |||
244 | if (pcibus_info) { | 249 | if (pcibus_info) { |
245 | switch (pcibus_info->pbi_bridge_type) { | 250 | switch (pcibus_info->pbi_bridge_type) { |
246 | case PCIBR_BRIDGETYPE_TIOCP: | 251 | case PCIBR_BRIDGETYPE_TIOCP: |
247 | ptr->tio.cp_int_ate_ram[ate_index] = (uint64_t) val; | 252 | writeq(val, &ptr->tio.cp_int_ate_ram[ate_index]); |
248 | break; | 253 | break; |
249 | case PCIBR_BRIDGETYPE_PIC: | 254 | case PCIBR_BRIDGETYPE_PIC: |
250 | ptr->pic.p_int_ate_ram[ate_index] = (uint64_t) val; | 255 | writeq(val, &ptr->pic.p_int_ate_ram[ate_index]); |
251 | break; | 256 | break; |
252 | default: | 257 | default: |
253 | panic | 258 | panic |
@@ -265,12 +270,10 @@ uint64_t *pcireg_int_ate_addr(struct pcibus_info *pcibus_info, int ate_index) | |||
265 | if (pcibus_info) { | 270 | if (pcibus_info) { |
266 | switch (pcibus_info->pbi_bridge_type) { | 271 | switch (pcibus_info->pbi_bridge_type) { |
267 | case PCIBR_BRIDGETYPE_TIOCP: | 272 | case PCIBR_BRIDGETYPE_TIOCP: |
268 | ret = | 273 | ret = &ptr->tio.cp_int_ate_ram[ate_index]; |
269 | (uint64_t *) & (ptr->tio.cp_int_ate_ram[ate_index]); | ||
270 | break; | 274 | break; |
271 | case PCIBR_BRIDGETYPE_PIC: | 275 | case PCIBR_BRIDGETYPE_PIC: |
272 | ret = | 276 | ret = &ptr->pic.p_int_ate_ram[ate_index]; |
273 | (uint64_t *) & (ptr->pic.p_int_ate_ram[ate_index]); | ||
274 | break; | 277 | break; |
275 | default: | 278 | default: |
276 | panic | 279 | panic |
diff --git a/arch/ia64/sn/pci/tioca_provider.c b/arch/ia64/sn/pci/tioca_provider.c index 19bced34d5f1..46b646a6d345 100644 --- a/arch/ia64/sn/pci/tioca_provider.c +++ b/arch/ia64/sn/pci/tioca_provider.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/pci.h> | 11 | #include <linux/pci.h> |
12 | #include <asm/sn/sn_sal.h> | 12 | #include <asm/sn/sn_sal.h> |
13 | #include <asm/sn/addrs.h> | 13 | #include <asm/sn/addrs.h> |
14 | #include <asm/sn/io.h> | ||
14 | #include <asm/sn/pcidev.h> | 15 | #include <asm/sn/pcidev.h> |
15 | #include <asm/sn/pcibus_provider_defs.h> | 16 | #include <asm/sn/pcibus_provider_defs.h> |
16 | #include <asm/sn/tioca_provider.h> | 17 | #include <asm/sn/tioca_provider.h> |
@@ -37,7 +38,7 @@ tioca_gart_init(struct tioca_kernel *tioca_kern) | |||
37 | uint64_t offset; | 38 | uint64_t offset; |
38 | struct page *tmp; | 39 | struct page *tmp; |
39 | struct tioca_common *tioca_common; | 40 | struct tioca_common *tioca_common; |
40 | volatile struct tioca *ca_base; | 41 | struct tioca *ca_base; |
41 | 42 | ||
42 | tioca_common = tioca_kern->ca_common; | 43 | tioca_common = tioca_kern->ca_common; |
43 | ca_base = (struct tioca *)tioca_common->ca_common.bs_base; | 44 | ca_base = (struct tioca *)tioca_common->ca_common.bs_base; |
@@ -174,27 +175,29 @@ tioca_gart_init(struct tioca_kernel *tioca_kern) | |||
174 | * DISABLE GART PREFETCHING due to hw bug tracked in SGI PV930029 | 175 | * DISABLE GART PREFETCHING due to hw bug tracked in SGI PV930029 |
175 | */ | 176 | */ |
176 | 177 | ||
177 | ca_base->ca_control1 |= CA_AGPDMA_OP_ENB_COMBDELAY; /* PV895469 ? */ | 178 | __sn_setq_relaxed(&ca_base->ca_control1, |
178 | ca_base->ca_control2 &= ~(CA_GART_MEM_PARAM); | 179 | CA_AGPDMA_OP_ENB_COMBDELAY); /* PV895469 ? */ |
179 | ca_base->ca_control2 |= (0x2ull << CA_GART_MEM_PARAM_SHFT); | 180 | __sn_clrq_relaxed(&ca_base->ca_control2, CA_GART_MEM_PARAM); |
181 | __sn_setq_relaxed(&ca_base->ca_control2, | ||
182 | (0x2ull << CA_GART_MEM_PARAM_SHFT)); | ||
180 | tioca_kern->ca_gart_iscoherent = 1; | 183 | tioca_kern->ca_gart_iscoherent = 1; |
181 | ca_base->ca_control2 &= | 184 | __sn_clrq_relaxed(&ca_base->ca_control2, |
182 | ~(CA_GART_WR_PREFETCH_ENB | CA_GART_RD_PREFETCH_ENB); | 185 | (CA_GART_WR_PREFETCH_ENB | CA_GART_RD_PREFETCH_ENB)); |
183 | 186 | ||
184 | /* | 187 | /* |
185 | * Unmask GART fetch error interrupts. Clear residual errors first. | 188 | * Unmask GART fetch error interrupts. Clear residual errors first. |
186 | */ | 189 | */ |
187 | 190 | ||
188 | ca_base->ca_int_status_alias = CA_GART_FETCH_ERR; | 191 | writeq(CA_GART_FETCH_ERR, &ca_base->ca_int_status_alias); |
189 | ca_base->ca_mult_error_alias = CA_GART_FETCH_ERR; | 192 | writeq(CA_GART_FETCH_ERR, &ca_base->ca_mult_error_alias); |
190 | ca_base->ca_int_mask &= ~CA_GART_FETCH_ERR; | 193 | __sn_clrq_relaxed(&ca_base->ca_int_mask, CA_GART_FETCH_ERR); |
191 | 194 | ||
192 | /* | 195 | /* |
193 | * Program the aperature and gart registers in TIOCA | 196 | * Program the aperature and gart registers in TIOCA |
194 | */ | 197 | */ |
195 | 198 | ||
196 | ca_base->ca_gart_aperature = ap_reg; | 199 | writeq(ap_reg, &ca_base->ca_gart_aperature); |
197 | ca_base->ca_gart_ptr_table = tioca_kern->ca_gart_coretalk_addr | 1; | 200 | writeq(tioca_kern->ca_gart_coretalk_addr|1, &ca_base->ca_gart_ptr_table); |
198 | 201 | ||
199 | return 0; | 202 | return 0; |
200 | } | 203 | } |
@@ -211,7 +214,6 @@ void | |||
211 | tioca_fastwrite_enable(struct tioca_kernel *tioca_kern) | 214 | tioca_fastwrite_enable(struct tioca_kernel *tioca_kern) |
212 | { | 215 | { |
213 | int cap_ptr; | 216 | int cap_ptr; |
214 | uint64_t ca_control1; | ||
215 | uint32_t reg; | 217 | uint32_t reg; |
216 | struct tioca *tioca_base; | 218 | struct tioca *tioca_base; |
217 | struct pci_dev *pdev; | 219 | struct pci_dev *pdev; |
@@ -256,9 +258,7 @@ tioca_fastwrite_enable(struct tioca_kernel *tioca_kern) | |||
256 | */ | 258 | */ |
257 | 259 | ||
258 | tioca_base = (struct tioca *)common->ca_common.bs_base; | 260 | tioca_base = (struct tioca *)common->ca_common.bs_base; |
259 | ca_control1 = tioca_base->ca_control1; | 261 | __sn_setq_relaxed(&tioca_base->ca_control1, CA_AGP_FW_ENABLE); |
260 | ca_control1 |= CA_AGP_FW_ENABLE; | ||
261 | tioca_base->ca_control1 = ca_control1; | ||
262 | } | 262 | } |
263 | 263 | ||
264 | EXPORT_SYMBOL(tioca_fastwrite_enable); /* used by agp-sgi */ | 264 | EXPORT_SYMBOL(tioca_fastwrite_enable); /* used by agp-sgi */ |
@@ -345,7 +345,7 @@ tioca_dma_d48(struct pci_dev *pdev, uint64_t paddr) | |||
345 | return 0; | 345 | return 0; |
346 | } | 346 | } |
347 | 347 | ||
348 | agp_dma_extn = ca_base->ca_agp_dma_addr_extn; | 348 | agp_dma_extn = __sn_readq_relaxed(&ca_base->ca_agp_dma_addr_extn); |
349 | if (node_upper != (agp_dma_extn >> CA_AGP_DMA_NODE_ID_SHFT)) { | 349 | if (node_upper != (agp_dma_extn >> CA_AGP_DMA_NODE_ID_SHFT)) { |
350 | printk(KERN_ERR "%s: coretalk upper node (%u) " | 350 | printk(KERN_ERR "%s: coretalk upper node (%u) " |
351 | "mismatch with ca_agp_dma_addr_extn (%lu)\n", | 351 | "mismatch with ca_agp_dma_addr_extn (%lu)\n", |
diff --git a/arch/ia64/sn/pci/tioce_provider.c b/arch/ia64/sn/pci/tioce_provider.c index 8e75db2b825d..9f03d4e5121c 100644 --- a/arch/ia64/sn/pci/tioce_provider.c +++ b/arch/ia64/sn/pci/tioce_provider.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/pci.h> | 11 | #include <linux/pci.h> |
12 | #include <asm/sn/sn_sal.h> | 12 | #include <asm/sn/sn_sal.h> |
13 | #include <asm/sn/addrs.h> | 13 | #include <asm/sn/addrs.h> |
14 | #include <asm/sn/io.h> | ||
14 | #include <asm/sn/pcidev.h> | 15 | #include <asm/sn/pcidev.h> |
15 | #include <asm/sn/pcibus_provider_defs.h> | 16 | #include <asm/sn/pcibus_provider_defs.h> |
16 | #include <asm/sn/tioce_provider.h> | 17 | #include <asm/sn/tioce_provider.h> |
@@ -227,7 +228,7 @@ tioce_alloc_map(struct tioce_kernel *ce_kern, int type, int port, | |||
227 | 228 | ||
228 | ate = ATE_MAKE(addr, pagesize); | 229 | ate = ATE_MAKE(addr, pagesize); |
229 | ate_shadow[i + j] = ate; | 230 | ate_shadow[i + j] = ate; |
230 | ate_reg[i + j] = ate; | 231 | writeq(ate, &ate_reg[i + j]); |
231 | addr += pagesize; | 232 | addr += pagesize; |
232 | } | 233 | } |
233 | 234 | ||
@@ -268,10 +269,10 @@ tioce_dma_d32(struct pci_dev *pdev, uint64_t ct_addr) | |||
268 | pcidev_to_tioce(pdev, &ce_mmr, &ce_kern, &port); | 269 | pcidev_to_tioce(pdev, &ce_mmr, &ce_kern, &port); |
269 | 270 | ||
270 | if (ce_kern->ce_port[port].dirmap_refcnt == 0) { | 271 | if (ce_kern->ce_port[port].dirmap_refcnt == 0) { |
271 | volatile uint64_t tmp; | 272 | uint64_t tmp; |
272 | 273 | ||
273 | ce_kern->ce_port[port].dirmap_shadow = ct_upper; | 274 | ce_kern->ce_port[port].dirmap_shadow = ct_upper; |
274 | ce_mmr->ce_ure_dir_map[port] = ct_upper; | 275 | writeq(ct_upper, &ce_mmr->ce_ure_dir_map[port]); |
275 | tmp = ce_mmr->ce_ure_dir_map[port]; | 276 | tmp = ce_mmr->ce_ure_dir_map[port]; |
276 | dma_ok = 1; | 277 | dma_ok = 1; |
277 | } else | 278 | } else |
@@ -343,7 +344,7 @@ tioce_dma_unmap(struct pci_dev *pdev, dma_addr_t bus_addr, int dir) | |||
343 | if (TIOCE_D32_ADDR(bus_addr)) { | 344 | if (TIOCE_D32_ADDR(bus_addr)) { |
344 | if (--ce_kern->ce_port[port].dirmap_refcnt == 0) { | 345 | if (--ce_kern->ce_port[port].dirmap_refcnt == 0) { |
345 | ce_kern->ce_port[port].dirmap_shadow = 0; | 346 | ce_kern->ce_port[port].dirmap_shadow = 0; |
346 | ce_mmr->ce_ure_dir_map[port] = 0; | 347 | writeq(0, &ce_mmr->ce_ure_dir_map[port]); |
347 | } | 348 | } |
348 | } else { | 349 | } else { |
349 | struct tioce_dmamap *map; | 350 | struct tioce_dmamap *map; |
@@ -582,18 +583,18 @@ tioce_kern_init(struct tioce_common *tioce_common) | |||
582 | */ | 583 | */ |
583 | 584 | ||
584 | tioce_mmr = (struct tioce *)tioce_common->ce_pcibus.bs_base; | 585 | tioce_mmr = (struct tioce *)tioce_common->ce_pcibus.bs_base; |
585 | tioce_mmr->ce_ure_page_map &= ~CE_URE_PAGESIZE_MASK; | 586 | __sn_clrq_relaxed(&tioce_mmr->ce_ure_page_map, CE_URE_PAGESIZE_MASK); |
586 | tioce_mmr->ce_ure_page_map |= CE_URE_256K_PAGESIZE; | 587 | __sn_setq_relaxed(&tioce_mmr->ce_ure_page_map, CE_URE_256K_PAGESIZE); |
587 | tioce_kern->ce_ate3240_pagesize = KB(256); | 588 | tioce_kern->ce_ate3240_pagesize = KB(256); |
588 | 589 | ||
589 | for (i = 0; i < TIOCE_NUM_M40_ATES; i++) { | 590 | for (i = 0; i < TIOCE_NUM_M40_ATES; i++) { |
590 | tioce_kern->ce_ate40_shadow[i] = 0; | 591 | tioce_kern->ce_ate40_shadow[i] = 0; |
591 | tioce_mmr->ce_ure_ate40[i] = 0; | 592 | writeq(0, &tioce_mmr->ce_ure_ate40[i]); |
592 | } | 593 | } |
593 | 594 | ||
594 | for (i = 0; i < TIOCE_NUM_M3240_ATES; i++) { | 595 | for (i = 0; i < TIOCE_NUM_M3240_ATES; i++) { |
595 | tioce_kern->ce_ate3240_shadow[i] = 0; | 596 | tioce_kern->ce_ate3240_shadow[i] = 0; |
596 | tioce_mmr->ce_ure_ate3240[i] = 0; | 597 | writeq(0, &tioce_mmr->ce_ure_ate3240[i]); |
597 | } | 598 | } |
598 | 599 | ||
599 | return tioce_kern; | 600 | return tioce_kern; |
@@ -665,7 +666,7 @@ tioce_force_interrupt(struct sn_irq_info *sn_irq_info) | |||
665 | default: | 666 | default: |
666 | return; | 667 | return; |
667 | } | 668 | } |
668 | ce_mmr->ce_adm_force_int = force_int_val; | 669 | writeq(force_int_val, &ce_mmr->ce_adm_force_int); |
669 | } | 670 | } |
670 | 671 | ||
671 | /** | 672 | /** |
@@ -686,6 +687,7 @@ tioce_target_interrupt(struct sn_irq_info *sn_irq_info) | |||
686 | struct tioce_common *ce_common; | 687 | struct tioce_common *ce_common; |
687 | struct tioce *ce_mmr; | 688 | struct tioce *ce_mmr; |
688 | int bit; | 689 | int bit; |
690 | uint64_t vector; | ||
689 | 691 | ||
690 | pcidev_info = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; | 692 | pcidev_info = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; |
691 | if (!pcidev_info) | 693 | if (!pcidev_info) |
@@ -696,11 +698,11 @@ tioce_target_interrupt(struct sn_irq_info *sn_irq_info) | |||
696 | 698 | ||
697 | bit = sn_irq_info->irq_int_bit; | 699 | bit = sn_irq_info->irq_int_bit; |
698 | 700 | ||
699 | ce_mmr->ce_adm_int_mask |= (1UL << bit); | 701 | __sn_setq_relaxed(&ce_mmr->ce_adm_int_mask, (1UL << bit)); |
700 | ce_mmr->ce_adm_int_dest[bit] = | 702 | vector = (uint64_t)sn_irq_info->irq_irq << INTR_VECTOR_SHFT; |
701 | ((uint64_t)sn_irq_info->irq_irq << INTR_VECTOR_SHFT) | | 703 | vector |= sn_irq_info->irq_xtalkaddr; |
702 | sn_irq_info->irq_xtalkaddr; | 704 | writeq(vector, &ce_mmr->ce_adm_int_dest[bit]); |
703 | ce_mmr->ce_adm_int_mask &= ~(1UL << bit); | 705 | __sn_clrq_relaxed(&ce_mmr->ce_adm_int_mask, (1UL << bit)); |
704 | 706 | ||
705 | tioce_force_interrupt(sn_irq_info); | 707 | tioce_force_interrupt(sn_irq_info); |
706 | } | 708 | } |
diff --git a/arch/m32r/kernel/entry.S b/arch/m32r/kernel/entry.S index dddbf6b5ed2c..85920fb8d08c 100644 --- a/arch/m32r/kernel/entry.S +++ b/arch/m32r/kernel/entry.S | |||
@@ -681,6 +681,15 @@ ENTRY(debug_trap) | |||
681 | bl do_debug_trap | 681 | bl do_debug_trap |
682 | bra error_code | 682 | bra error_code |
683 | 683 | ||
684 | ENTRY(ill_trap) | ||
685 | /* void ill_trap(void) */ | ||
686 | SWITCH_TO_KERNEL_STACK | ||
687 | SAVE_ALL | ||
688 | ldi r1, #0 ; error_code ; FIXME | ||
689 | mv r0, sp ; pt_regs | ||
690 | bl do_ill_trap | ||
691 | bra error_code | ||
692 | |||
684 | 693 | ||
685 | /* Cache flushing handler */ | 694 | /* Cache flushing handler */ |
686 | ENTRY(cache_flushing_handler) | 695 | ENTRY(cache_flushing_handler) |
diff --git a/arch/m32r/kernel/smp.c b/arch/m32r/kernel/smp.c index a4576ac7e870..8b1f6eb76870 100644 --- a/arch/m32r/kernel/smp.c +++ b/arch/m32r/kernel/smp.c | |||
@@ -275,12 +275,14 @@ static void flush_tlb_all_ipi(void *info) | |||
275 | *==========================================================================*/ | 275 | *==========================================================================*/ |
276 | void smp_flush_tlb_mm(struct mm_struct *mm) | 276 | void smp_flush_tlb_mm(struct mm_struct *mm) |
277 | { | 277 | { |
278 | int cpu_id = smp_processor_id(); | 278 | int cpu_id; |
279 | cpumask_t cpu_mask; | 279 | cpumask_t cpu_mask; |
280 | unsigned long *mmc = &mm->context[cpu_id]; | 280 | unsigned long *mmc; |
281 | unsigned long flags; | 281 | unsigned long flags; |
282 | 282 | ||
283 | preempt_disable(); | 283 | preempt_disable(); |
284 | cpu_id = smp_processor_id(); | ||
285 | mmc = &mm->context[cpu_id]; | ||
284 | cpu_mask = mm->cpu_vm_mask; | 286 | cpu_mask = mm->cpu_vm_mask; |
285 | cpu_clear(cpu_id, cpu_mask); | 287 | cpu_clear(cpu_id, cpu_mask); |
286 | 288 | ||
@@ -343,12 +345,14 @@ void smp_flush_tlb_range(struct vm_area_struct *vma, unsigned long start, | |||
343 | void smp_flush_tlb_page(struct vm_area_struct *vma, unsigned long va) | 345 | void smp_flush_tlb_page(struct vm_area_struct *vma, unsigned long va) |
344 | { | 346 | { |
345 | struct mm_struct *mm = vma->vm_mm; | 347 | struct mm_struct *mm = vma->vm_mm; |
346 | int cpu_id = smp_processor_id(); | 348 | int cpu_id; |
347 | cpumask_t cpu_mask; | 349 | cpumask_t cpu_mask; |
348 | unsigned long *mmc = &mm->context[cpu_id]; | 350 | unsigned long *mmc; |
349 | unsigned long flags; | 351 | unsigned long flags; |
350 | 352 | ||
351 | preempt_disable(); | 353 | preempt_disable(); |
354 | cpu_id = smp_processor_id(); | ||
355 | mmc = &mm->context[cpu_id]; | ||
352 | cpu_mask = mm->cpu_vm_mask; | 356 | cpu_mask = mm->cpu_vm_mask; |
353 | cpu_clear(cpu_id, cpu_mask); | 357 | cpu_clear(cpu_id, cpu_mask); |
354 | 358 | ||
diff --git a/arch/m32r/kernel/traps.c b/arch/m32r/kernel/traps.c index 01922271d17e..5fe8ed6d62dc 100644 --- a/arch/m32r/kernel/traps.c +++ b/arch/m32r/kernel/traps.c | |||
@@ -5,8 +5,6 @@ | |||
5 | * Hitoshi Yamamoto | 5 | * Hitoshi Yamamoto |
6 | */ | 6 | */ |
7 | 7 | ||
8 | /* $Id$ */ | ||
9 | |||
10 | /* | 8 | /* |
11 | * 'traps.c' handles hardware traps and faults after we have saved some | 9 | * 'traps.c' handles hardware traps and faults after we have saved some |
12 | * state in 'entry.S'. | 10 | * state in 'entry.S'. |
@@ -35,6 +33,7 @@ asmlinkage void ei_handler(void); | |||
35 | asmlinkage void rie_handler(void); | 33 | asmlinkage void rie_handler(void); |
36 | asmlinkage void debug_trap(void); | 34 | asmlinkage void debug_trap(void); |
37 | asmlinkage void cache_flushing_handler(void); | 35 | asmlinkage void cache_flushing_handler(void); |
36 | asmlinkage void ill_trap(void); | ||
38 | 37 | ||
39 | #ifdef CONFIG_SMP | 38 | #ifdef CONFIG_SMP |
40 | extern void smp_reschedule_interrupt(void); | 39 | extern void smp_reschedule_interrupt(void); |
@@ -77,22 +76,22 @@ void set_eit_vector_entries(void) | |||
77 | eit_vector[5] = BRA_INSN(default_eit_handler, 5); | 76 | eit_vector[5] = BRA_INSN(default_eit_handler, 5); |
78 | eit_vector[8] = BRA_INSN(rie_handler, 8); | 77 | eit_vector[8] = BRA_INSN(rie_handler, 8); |
79 | eit_vector[12] = BRA_INSN(alignment_check, 12); | 78 | eit_vector[12] = BRA_INSN(alignment_check, 12); |
80 | eit_vector[16] = 0xff000000UL; | 79 | eit_vector[16] = BRA_INSN(ill_trap, 16); |
81 | eit_vector[17] = BRA_INSN(debug_trap, 17); | 80 | eit_vector[17] = BRA_INSN(debug_trap, 17); |
82 | eit_vector[18] = BRA_INSN(system_call, 18); | 81 | eit_vector[18] = BRA_INSN(system_call, 18); |
83 | eit_vector[19] = 0xff000000UL; | 82 | eit_vector[19] = BRA_INSN(ill_trap, 19); |
84 | eit_vector[20] = 0xff000000UL; | 83 | eit_vector[20] = BRA_INSN(ill_trap, 20); |
85 | eit_vector[21] = 0xff000000UL; | 84 | eit_vector[21] = BRA_INSN(ill_trap, 21); |
86 | eit_vector[22] = 0xff000000UL; | 85 | eit_vector[22] = BRA_INSN(ill_trap, 22); |
87 | eit_vector[23] = 0xff000000UL; | 86 | eit_vector[23] = BRA_INSN(ill_trap, 23); |
88 | eit_vector[24] = 0xff000000UL; | 87 | eit_vector[24] = BRA_INSN(ill_trap, 24); |
89 | eit_vector[25] = 0xff000000UL; | 88 | eit_vector[25] = BRA_INSN(ill_trap, 25); |
90 | eit_vector[26] = 0xff000000UL; | 89 | eit_vector[26] = BRA_INSN(ill_trap, 26); |
91 | eit_vector[27] = 0xff000000UL; | 90 | eit_vector[27] = BRA_INSN(ill_trap, 27); |
92 | eit_vector[28] = BRA_INSN(cache_flushing_handler, 28); | 91 | eit_vector[28] = BRA_INSN(cache_flushing_handler, 28); |
93 | eit_vector[29] = 0xff000000UL; | 92 | eit_vector[29] = BRA_INSN(ill_trap, 29); |
94 | eit_vector[30] = 0xff000000UL; | 93 | eit_vector[30] = BRA_INSN(ill_trap, 30); |
95 | eit_vector[31] = 0xff000000UL; | 94 | eit_vector[31] = BRA_INSN(ill_trap, 31); |
96 | eit_vector[32] = BRA_INSN(ei_handler, 32); | 95 | eit_vector[32] = BRA_INSN(ei_handler, 32); |
97 | eit_vector[64] = BRA_INSN(pie_handler, 64); | 96 | eit_vector[64] = BRA_INSN(pie_handler, 64); |
98 | #ifdef CONFIG_MMU | 97 | #ifdef CONFIG_MMU |
@@ -286,7 +285,8 @@ asmlinkage void do_##name(struct pt_regs * regs, long error_code) \ | |||
286 | 285 | ||
287 | DO_ERROR( 1, SIGTRAP, "debug trap", debug_trap) | 286 | DO_ERROR( 1, SIGTRAP, "debug trap", debug_trap) |
288 | DO_ERROR_INFO(0x20, SIGILL, "reserved instruction ", rie_handler, ILL_ILLOPC, regs->bpc) | 287 | DO_ERROR_INFO(0x20, SIGILL, "reserved instruction ", rie_handler, ILL_ILLOPC, regs->bpc) |
289 | DO_ERROR_INFO(0x100, SIGILL, "privilege instruction", pie_handler, ILL_PRVOPC, regs->bpc) | 288 | DO_ERROR_INFO(0x100, SIGILL, "privileged instruction", pie_handler, ILL_PRVOPC, regs->bpc) |
289 | DO_ERROR_INFO(-1, SIGILL, "illegal trap", ill_trap, ILL_ILLTRP, regs->bpc) | ||
290 | 290 | ||
291 | extern int handle_unaligned_access(unsigned long, struct pt_regs *); | 291 | extern int handle_unaligned_access(unsigned long, struct pt_regs *); |
292 | 292 | ||
@@ -329,4 +329,3 @@ asmlinkage void do_alignment_check(struct pt_regs *regs, long error_code) | |||
329 | set_fs(oldfs); | 329 | set_fs(oldfs); |
330 | } | 330 | } |
331 | } | 331 | } |
332 | |||
diff --git a/arch/mips/pci/fixup-tb0226.c b/arch/mips/pci/fixup-tb0226.c index 61513d5d97da..b5d42b12de10 100644 --- a/arch/mips/pci/fixup-tb0226.c +++ b/arch/mips/pci/fixup-tb0226.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * fixup-tb0226.c, The TANBAC TB0226 specific PCI fixups. | 2 | * fixup-tb0226.c, The TANBAC TB0226 specific PCI fixups. |
3 | * | 3 | * |
4 | * Copyright (C) 2002-2004 Yoichi Yuasa <yuasa@hh.iij4u.or.jp> | 4 | * Copyright (C) 2002-2005 Yoichi Yuasa <yuasa@hh.iij4u.or.jp> |
5 | * | 5 | * |
6 | * This program is free software; you can redistribute it and/or modify | 6 | * This program is free software; you can redistribute it and/or modify |
7 | * it under the terms of the GNU General Public License as published by | 7 | * it under the terms of the GNU General Public License as published by |
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/init.h> | 20 | #include <linux/init.h> |
21 | #include <linux/pci.h> | 21 | #include <linux/pci.h> |
22 | 22 | ||
23 | #include <asm/vr41xx/giu.h> | ||
23 | #include <asm/vr41xx/tb0226.h> | 24 | #include <asm/vr41xx/tb0226.h> |
24 | 25 | ||
25 | int __init pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin) | 26 | int __init pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin) |
@@ -29,42 +30,42 @@ int __init pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin) | |||
29 | switch (slot) { | 30 | switch (slot) { |
30 | case 12: | 31 | case 12: |
31 | vr41xx_set_irq_trigger(GD82559_1_PIN, | 32 | vr41xx_set_irq_trigger(GD82559_1_PIN, |
32 | TRIGGER_LEVEL, | 33 | IRQ_TRIGGER_LEVEL, |
33 | SIGNAL_THROUGH); | 34 | IRQ_SIGNAL_THROUGH); |
34 | vr41xx_set_irq_level(GD82559_1_PIN, LEVEL_LOW); | 35 | vr41xx_set_irq_level(GD82559_1_PIN, IRQ_LEVEL_LOW); |
35 | irq = GD82559_1_IRQ; | 36 | irq = GD82559_1_IRQ; |
36 | break; | 37 | break; |
37 | case 13: | 38 | case 13: |
38 | vr41xx_set_irq_trigger(GD82559_2_PIN, | 39 | vr41xx_set_irq_trigger(GD82559_2_PIN, |
39 | TRIGGER_LEVEL, | 40 | IRQ_TRIGGER_LEVEL, |
40 | SIGNAL_THROUGH); | 41 | IRQ_SIGNAL_THROUGH); |
41 | vr41xx_set_irq_level(GD82559_2_PIN, LEVEL_LOW); | 42 | vr41xx_set_irq_level(GD82559_2_PIN, IRQ_LEVEL_LOW); |
42 | irq = GD82559_2_IRQ; | 43 | irq = GD82559_2_IRQ; |
43 | break; | 44 | break; |
44 | case 14: | 45 | case 14: |
45 | switch (pin) { | 46 | switch (pin) { |
46 | case 1: | 47 | case 1: |
47 | vr41xx_set_irq_trigger(UPD720100_INTA_PIN, | 48 | vr41xx_set_irq_trigger(UPD720100_INTA_PIN, |
48 | TRIGGER_LEVEL, | 49 | IRQ_TRIGGER_LEVEL, |
49 | SIGNAL_THROUGH); | 50 | IRQ_SIGNAL_THROUGH); |
50 | vr41xx_set_irq_level(UPD720100_INTA_PIN, | 51 | vr41xx_set_irq_level(UPD720100_INTA_PIN, |
51 | LEVEL_LOW); | 52 | IRQ_LEVEL_LOW); |
52 | irq = UPD720100_INTA_IRQ; | 53 | irq = UPD720100_INTA_IRQ; |
53 | break; | 54 | break; |
54 | case 2: | 55 | case 2: |
55 | vr41xx_set_irq_trigger(UPD720100_INTB_PIN, | 56 | vr41xx_set_irq_trigger(UPD720100_INTB_PIN, |
56 | TRIGGER_LEVEL, | 57 | IRQ_TRIGGER_LEVEL, |
57 | SIGNAL_THROUGH); | 58 | IRQ_SIGNAL_THROUGH); |
58 | vr41xx_set_irq_level(UPD720100_INTB_PIN, | 59 | vr41xx_set_irq_level(UPD720100_INTB_PIN, |
59 | LEVEL_LOW); | 60 | IRQ_LEVEL_LOW); |
60 | irq = UPD720100_INTB_IRQ; | 61 | irq = UPD720100_INTB_IRQ; |
61 | break; | 62 | break; |
62 | case 3: | 63 | case 3: |
63 | vr41xx_set_irq_trigger(UPD720100_INTC_PIN, | 64 | vr41xx_set_irq_trigger(UPD720100_INTC_PIN, |
64 | TRIGGER_LEVEL, | 65 | IRQ_TRIGGER_LEVEL, |
65 | SIGNAL_THROUGH); | 66 | IRQ_SIGNAL_THROUGH); |
66 | vr41xx_set_irq_level(UPD720100_INTC_PIN, | 67 | vr41xx_set_irq_level(UPD720100_INTC_PIN, |
67 | LEVEL_LOW); | 68 | IRQ_LEVEL_LOW); |
68 | irq = UPD720100_INTC_IRQ; | 69 | irq = UPD720100_INTC_IRQ; |
69 | break; | 70 | break; |
70 | default: | 71 | default: |
diff --git a/arch/ppc/kernel/cputable.c b/arch/ppc/kernel/cputable.c index 546e1ea4cafa..6b76cf58d9e0 100644 --- a/arch/ppc/kernel/cputable.c +++ b/arch/ppc/kernel/cputable.c | |||
@@ -91,7 +91,7 @@ struct cpu_spec cpu_specs[] = { | |||
91 | .cpu_features = CPU_FTR_COMMON | CPU_FTR_601 | | 91 | .cpu_features = CPU_FTR_COMMON | CPU_FTR_601 | |
92 | CPU_FTR_HPTE_TABLE, | 92 | CPU_FTR_HPTE_TABLE, |
93 | .cpu_user_features = COMMON_PPC | PPC_FEATURE_601_INSTR | | 93 | .cpu_user_features = COMMON_PPC | PPC_FEATURE_601_INSTR | |
94 | PPC_FEATURE_UNIFIED_CACHE, | 94 | PPC_FEATURE_UNIFIED_CACHE | PPC_FEATURE_NO_TB, |
95 | .icache_bsize = 32, | 95 | .icache_bsize = 32, |
96 | .dcache_bsize = 32, | 96 | .dcache_bsize = 32, |
97 | .cpu_setup = __setup_cpu_601 | 97 | .cpu_setup = __setup_cpu_601 |
@@ -745,7 +745,8 @@ struct cpu_spec cpu_specs[] = { | |||
745 | .cpu_name = "403GCX", | 745 | .cpu_name = "403GCX", |
746 | .cpu_features = CPU_FTR_SPLIT_ID_CACHE | | 746 | .cpu_features = CPU_FTR_SPLIT_ID_CACHE | |
747 | CPU_FTR_USE_TB, | 747 | CPU_FTR_USE_TB, |
748 | .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU, | 748 | .cpu_user_features = PPC_FEATURE_32 | |
749 | PPC_FEATURE_HAS_MMU | PPC_FEATURE_NO_TB, | ||
749 | .icache_bsize = 16, | 750 | .icache_bsize = 16, |
750 | .dcache_bsize = 16, | 751 | .dcache_bsize = 16, |
751 | }, | 752 | }, |
diff --git a/arch/ppc/kernel/dma-mapping.c b/arch/ppc/kernel/dma-mapping.c index b566d982806c..8edee806dae7 100644 --- a/arch/ppc/kernel/dma-mapping.c +++ b/arch/ppc/kernel/dma-mapping.c | |||
@@ -401,10 +401,10 @@ EXPORT_SYMBOL(__dma_sync); | |||
401 | static inline void __dma_sync_page_highmem(struct page *page, | 401 | static inline void __dma_sync_page_highmem(struct page *page, |
402 | unsigned long offset, size_t size, int direction) | 402 | unsigned long offset, size_t size, int direction) |
403 | { | 403 | { |
404 | size_t seg_size = min((size_t)PAGE_SIZE, size) - offset; | 404 | size_t seg_size = min((size_t)(PAGE_SIZE - offset), size); |
405 | size_t cur_size = seg_size; | 405 | size_t cur_size = seg_size; |
406 | unsigned long flags, start, seg_offset = offset; | 406 | unsigned long flags, start, seg_offset = offset; |
407 | int nr_segs = PAGE_ALIGN(size + (PAGE_SIZE - offset))/PAGE_SIZE; | 407 | int nr_segs = 1 + ((size - seg_size) + PAGE_SIZE - 1)/PAGE_SIZE; |
408 | int seg_nr = 0; | 408 | int seg_nr = 0; |
409 | 409 | ||
410 | local_irq_save(flags); | 410 | local_irq_save(flags); |
diff --git a/arch/ppc/platforms/pmac_time.c b/arch/ppc/platforms/pmac_time.c index 778ce4fec368..efb819f9490d 100644 --- a/arch/ppc/platforms/pmac_time.c +++ b/arch/ppc/platforms/pmac_time.c | |||
@@ -195,7 +195,7 @@ via_calibrate_decr(void) | |||
195 | ; | 195 | ; |
196 | dend = get_dec(); | 196 | dend = get_dec(); |
197 | 197 | ||
198 | tb_ticks_per_jiffy = (dstart - dend) / (6 * (HZ/100)); | 198 | tb_ticks_per_jiffy = (dstart - dend) / ((6 * HZ)/100); |
199 | tb_to_us = mulhwu_scale_factor(dstart - dend, 60000); | 199 | tb_to_us = mulhwu_scale_factor(dstart - dend, 60000); |
200 | 200 | ||
201 | printk(KERN_INFO "via_calibrate_decr: ticks per jiffy = %u (%u ticks)\n", | 201 | printk(KERN_INFO "via_calibrate_decr: ticks per jiffy = %u (%u ticks)\n", |
diff --git a/arch/ppc64/configs/bpa_defconfig b/arch/ppc64/configs/bpa_defconfig index 46c5da41c3ae..67ffecbc05cb 100644 --- a/arch/ppc64/configs/bpa_defconfig +++ b/arch/ppc64/configs/bpa_defconfig | |||
@@ -1,17 +1,17 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6 | 3 | # Linux kernel version: 2.6.14-rc4 |
4 | # Mon Aug 8 14:12:19 2005 | 4 | # Thu Oct 20 08:29:10 2005 |
5 | # | 5 | # |
6 | CONFIG_64BIT=y | 6 | CONFIG_64BIT=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
9 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 9 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
10 | CONFIG_GENERIC_ISA_DMA=y | 10 | CONFIG_GENERIC_ISA_DMA=y |
11 | CONFIG_HAVE_DEC_LOCK=y | ||
12 | CONFIG_EARLY_PRINTK=y | 11 | CONFIG_EARLY_PRINTK=y |
13 | CONFIG_COMPAT=y | 12 | CONFIG_COMPAT=y |
14 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 13 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
14 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | ||
15 | CONFIG_FORCE_MAX_ZONEORDER=13 | 15 | CONFIG_FORCE_MAX_ZONEORDER=13 |
16 | 16 | ||
17 | # | 17 | # |
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
26 | # General setup | 26 | # General setup |
27 | # | 27 | # |
28 | CONFIG_LOCALVERSION="" | 28 | CONFIG_LOCALVERSION="" |
29 | CONFIG_LOCALVERSION_AUTO=y | ||
29 | CONFIG_SWAP=y | 30 | CONFIG_SWAP=y |
30 | CONFIG_SYSVIPC=y | 31 | CONFIG_SYSVIPC=y |
31 | # CONFIG_POSIX_MQUEUE is not set | 32 | # CONFIG_POSIX_MQUEUE is not set |
@@ -36,6 +37,7 @@ CONFIG_HOTPLUG=y | |||
36 | CONFIG_KOBJECT_UEVENT=y | 37 | CONFIG_KOBJECT_UEVENT=y |
37 | # CONFIG_IKCONFIG is not set | 38 | # CONFIG_IKCONFIG is not set |
38 | # CONFIG_CPUSETS is not set | 39 | # CONFIG_CPUSETS is not set |
40 | CONFIG_INITRAMFS_SOURCE="" | ||
39 | # CONFIG_EMBEDDED is not set | 41 | # CONFIG_EMBEDDED is not set |
40 | CONFIG_KALLSYMS=y | 42 | CONFIG_KALLSYMS=y |
41 | # CONFIG_KALLSYMS_ALL is not set | 43 | # CONFIG_KALLSYMS_ALL is not set |
@@ -95,6 +97,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
95 | # CONFIG_SPARSEMEM_MANUAL is not set | 97 | # CONFIG_SPARSEMEM_MANUAL is not set |
96 | CONFIG_FLATMEM=y | 98 | CONFIG_FLATMEM=y |
97 | CONFIG_FLAT_NODE_MEM_MAP=y | 99 | CONFIG_FLAT_NODE_MEM_MAP=y |
100 | # CONFIG_SPARSEMEM_STATIC is not set | ||
98 | # CONFIG_NUMA is not set | 101 | # CONFIG_NUMA is not set |
99 | CONFIG_SCHED_SMT=y | 102 | CONFIG_SCHED_SMT=y |
100 | CONFIG_PREEMPT_NONE=y | 103 | CONFIG_PREEMPT_NONE=y |
@@ -110,17 +113,18 @@ CONFIG_PPC_RTAS=y | |||
110 | CONFIG_RTAS_PROC=y | 113 | CONFIG_RTAS_PROC=y |
111 | CONFIG_RTAS_FLASH=y | 114 | CONFIG_RTAS_FLASH=y |
112 | CONFIG_SECCOMP=y | 115 | CONFIG_SECCOMP=y |
116 | CONFIG_BINFMT_ELF=y | ||
117 | # CONFIG_BINFMT_MISC is not set | ||
118 | CONFIG_PROC_DEVICETREE=y | ||
119 | # CONFIG_CMDLINE_BOOL is not set | ||
113 | CONFIG_ISA_DMA_API=y | 120 | CONFIG_ISA_DMA_API=y |
114 | 121 | ||
115 | # | 122 | # |
116 | # General setup | 123 | # Bus Options |
117 | # | 124 | # |
118 | CONFIG_PCI=y | 125 | CONFIG_PCI=y |
119 | CONFIG_PCI_DOMAINS=y | 126 | CONFIG_PCI_DOMAINS=y |
120 | CONFIG_BINFMT_ELF=y | ||
121 | # CONFIG_BINFMT_MISC is not set | ||
122 | CONFIG_PCI_LEGACY_PROC=y | 127 | CONFIG_PCI_LEGACY_PROC=y |
123 | CONFIG_PCI_NAMES=y | ||
124 | # CONFIG_PCI_DEBUG is not set | 128 | # CONFIG_PCI_DEBUG is not set |
125 | 129 | ||
126 | # | 130 | # |
@@ -132,8 +136,6 @@ CONFIG_PCI_NAMES=y | |||
132 | # PCI Hotplug Support | 136 | # PCI Hotplug Support |
133 | # | 137 | # |
134 | # CONFIG_HOTPLUG_PCI is not set | 138 | # CONFIG_HOTPLUG_PCI is not set |
135 | CONFIG_PROC_DEVICETREE=y | ||
136 | # CONFIG_CMDLINE_BOOL is not set | ||
137 | 139 | ||
138 | # | 140 | # |
139 | # Networking | 141 | # Networking |
@@ -163,8 +165,8 @@ CONFIG_SYN_COOKIES=y | |||
163 | # CONFIG_INET_ESP is not set | 165 | # CONFIG_INET_ESP is not set |
164 | # CONFIG_INET_IPCOMP is not set | 166 | # CONFIG_INET_IPCOMP is not set |
165 | CONFIG_INET_TUNNEL=y | 167 | CONFIG_INET_TUNNEL=y |
166 | CONFIG_IP_TCPDIAG=y | 168 | CONFIG_INET_DIAG=y |
167 | CONFIG_IP_TCPDIAG_IPV6=y | 169 | CONFIG_INET_TCP_DIAG=y |
168 | # CONFIG_TCP_CONG_ADVANCED is not set | 170 | # CONFIG_TCP_CONG_ADVANCED is not set |
169 | CONFIG_TCP_CONG_BIC=y | 171 | CONFIG_TCP_CONG_BIC=y |
170 | 172 | ||
@@ -181,6 +183,7 @@ CONFIG_INET6_TUNNEL=m | |||
181 | CONFIG_IPV6_TUNNEL=m | 183 | CONFIG_IPV6_TUNNEL=m |
182 | CONFIG_NETFILTER=y | 184 | CONFIG_NETFILTER=y |
183 | # CONFIG_NETFILTER_DEBUG is not set | 185 | # CONFIG_NETFILTER_DEBUG is not set |
186 | # CONFIG_NETFILTER_NETLINK is not set | ||
184 | 187 | ||
185 | # | 188 | # |
186 | # IP: Netfilter Configuration | 189 | # IP: Netfilter Configuration |
@@ -188,11 +191,14 @@ CONFIG_NETFILTER=y | |||
188 | CONFIG_IP_NF_CONNTRACK=y | 191 | CONFIG_IP_NF_CONNTRACK=y |
189 | # CONFIG_IP_NF_CT_ACCT is not set | 192 | # CONFIG_IP_NF_CT_ACCT is not set |
190 | # CONFIG_IP_NF_CONNTRACK_MARK is not set | 193 | # CONFIG_IP_NF_CONNTRACK_MARK is not set |
194 | # CONFIG_IP_NF_CONNTRACK_EVENTS is not set | ||
191 | CONFIG_IP_NF_CT_PROTO_SCTP=y | 195 | CONFIG_IP_NF_CT_PROTO_SCTP=y |
192 | CONFIG_IP_NF_FTP=m | 196 | CONFIG_IP_NF_FTP=m |
193 | CONFIG_IP_NF_IRC=m | 197 | CONFIG_IP_NF_IRC=m |
198 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
194 | CONFIG_IP_NF_TFTP=m | 199 | CONFIG_IP_NF_TFTP=m |
195 | CONFIG_IP_NF_AMANDA=m | 200 | CONFIG_IP_NF_AMANDA=m |
201 | # CONFIG_IP_NF_PPTP is not set | ||
196 | CONFIG_IP_NF_QUEUE=m | 202 | CONFIG_IP_NF_QUEUE=m |
197 | CONFIG_IP_NF_IPTABLES=m | 203 | CONFIG_IP_NF_IPTABLES=m |
198 | CONFIG_IP_NF_MATCH_LIMIT=m | 204 | CONFIG_IP_NF_MATCH_LIMIT=m |
@@ -216,13 +222,16 @@ CONFIG_IP_NF_MATCH_OWNER=m | |||
216 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | 222 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
217 | CONFIG_IP_NF_MATCH_REALM=m | 223 | CONFIG_IP_NF_MATCH_REALM=m |
218 | CONFIG_IP_NF_MATCH_SCTP=m | 224 | CONFIG_IP_NF_MATCH_SCTP=m |
225 | # CONFIG_IP_NF_MATCH_DCCP is not set | ||
219 | CONFIG_IP_NF_MATCH_COMMENT=m | 226 | CONFIG_IP_NF_MATCH_COMMENT=m |
220 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | 227 | CONFIG_IP_NF_MATCH_HASHLIMIT=m |
228 | CONFIG_IP_NF_MATCH_STRING=m | ||
221 | CONFIG_IP_NF_FILTER=m | 229 | CONFIG_IP_NF_FILTER=m |
222 | CONFIG_IP_NF_TARGET_REJECT=m | 230 | CONFIG_IP_NF_TARGET_REJECT=m |
223 | CONFIG_IP_NF_TARGET_LOG=m | 231 | CONFIG_IP_NF_TARGET_LOG=m |
224 | CONFIG_IP_NF_TARGET_ULOG=m | 232 | CONFIG_IP_NF_TARGET_ULOG=m |
225 | CONFIG_IP_NF_TARGET_TCPMSS=m | 233 | CONFIG_IP_NF_TARGET_TCPMSS=m |
234 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
226 | CONFIG_IP_NF_NAT=m | 235 | CONFIG_IP_NF_NAT=m |
227 | CONFIG_IP_NF_NAT_NEEDED=y | 236 | CONFIG_IP_NF_NAT_NEEDED=y |
228 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 237 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
@@ -240,6 +249,7 @@ CONFIG_IP_NF_TARGET_ECN=m | |||
240 | CONFIG_IP_NF_TARGET_DSCP=m | 249 | CONFIG_IP_NF_TARGET_DSCP=m |
241 | CONFIG_IP_NF_TARGET_MARK=m | 250 | CONFIG_IP_NF_TARGET_MARK=m |
242 | CONFIG_IP_NF_TARGET_CLASSIFY=m | 251 | CONFIG_IP_NF_TARGET_CLASSIFY=m |
252 | CONFIG_IP_NF_TARGET_TTL=m | ||
243 | CONFIG_IP_NF_RAW=m | 253 | CONFIG_IP_NF_RAW=m |
244 | CONFIG_IP_NF_TARGET_NOTRACK=m | 254 | CONFIG_IP_NF_TARGET_NOTRACK=m |
245 | CONFIG_IP_NF_ARPTABLES=m | 255 | CONFIG_IP_NF_ARPTABLES=m |
@@ -251,6 +261,12 @@ CONFIG_IP_NF_ARP_MANGLE=m | |||
251 | # | 261 | # |
252 | # CONFIG_IP6_NF_QUEUE is not set | 262 | # CONFIG_IP6_NF_QUEUE is not set |
253 | # CONFIG_IP6_NF_IPTABLES is not set | 263 | # CONFIG_IP6_NF_IPTABLES is not set |
264 | # CONFIG_IP6_NF_TARGET_NFQUEUE is not set | ||
265 | |||
266 | # | ||
267 | # DCCP Configuration (EXPERIMENTAL) | ||
268 | # | ||
269 | # CONFIG_IP_DCCP is not set | ||
254 | 270 | ||
255 | # | 271 | # |
256 | # SCTP Configuration (EXPERIMENTAL) | 272 | # SCTP Configuration (EXPERIMENTAL) |
@@ -278,6 +294,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
278 | # CONFIG_HAMRADIO is not set | 294 | # CONFIG_HAMRADIO is not set |
279 | # CONFIG_IRDA is not set | 295 | # CONFIG_IRDA is not set |
280 | # CONFIG_BT is not set | 296 | # CONFIG_BT is not set |
297 | # CONFIG_IEEE80211 is not set | ||
281 | 298 | ||
282 | # | 299 | # |
283 | # Device Drivers | 300 | # Device Drivers |
@@ -292,6 +309,11 @@ CONFIG_FW_LOADER=y | |||
292 | # CONFIG_DEBUG_DRIVER is not set | 309 | # CONFIG_DEBUG_DRIVER is not set |
293 | 310 | ||
294 | # | 311 | # |
312 | # Connector - unified userspace <-> kernelspace linker | ||
313 | # | ||
314 | # CONFIG_CONNECTOR is not set | ||
315 | |||
316 | # | ||
295 | # Memory Technology Devices (MTD) | 317 | # Memory Technology Devices (MTD) |
296 | # | 318 | # |
297 | # CONFIG_MTD is not set | 319 | # CONFIG_MTD is not set |
@@ -322,7 +344,6 @@ CONFIG_BLK_DEV_RAM=y | |||
322 | CONFIG_BLK_DEV_RAM_COUNT=16 | 344 | CONFIG_BLK_DEV_RAM_COUNT=16 |
323 | CONFIG_BLK_DEV_RAM_SIZE=131072 | 345 | CONFIG_BLK_DEV_RAM_SIZE=131072 |
324 | CONFIG_BLK_DEV_INITRD=y | 346 | CONFIG_BLK_DEV_INITRD=y |
325 | CONFIG_INITRAMFS_SOURCE="" | ||
326 | # CONFIG_CDROM_PKTCDVD is not set | 347 | # CONFIG_CDROM_PKTCDVD is not set |
327 | 348 | ||
328 | # | 349 | # |
@@ -395,6 +416,7 @@ CONFIG_IDEDMA_AUTO=y | |||
395 | # | 416 | # |
396 | # SCSI device support | 417 | # SCSI device support |
397 | # | 418 | # |
419 | # CONFIG_RAID_ATTRS is not set | ||
398 | # CONFIG_SCSI is not set | 420 | # CONFIG_SCSI is not set |
399 | 421 | ||
400 | # | 422 | # |
@@ -436,12 +458,18 @@ CONFIG_NETDEVICES=y | |||
436 | # CONFIG_ARCNET is not set | 458 | # CONFIG_ARCNET is not set |
437 | 459 | ||
438 | # | 460 | # |
461 | # PHY device support | ||
462 | # | ||
463 | # CONFIG_PHYLIB is not set | ||
464 | |||
465 | # | ||
439 | # Ethernet (10 or 100Mbit) | 466 | # Ethernet (10 or 100Mbit) |
440 | # | 467 | # |
441 | CONFIG_NET_ETHERNET=y | 468 | CONFIG_NET_ETHERNET=y |
442 | CONFIG_MII=y | 469 | CONFIG_MII=y |
443 | # CONFIG_HAPPYMEAL is not set | 470 | # CONFIG_HAPPYMEAL is not set |
444 | # CONFIG_SUNGEM is not set | 471 | # CONFIG_SUNGEM is not set |
472 | # CONFIG_CASSINI is not set | ||
445 | # CONFIG_NET_VENDOR_3COM is not set | 473 | # CONFIG_NET_VENDOR_3COM is not set |
446 | 474 | ||
447 | # | 475 | # |
@@ -462,15 +490,18 @@ CONFIG_E1000=m | |||
462 | # CONFIG_HAMACHI is not set | 490 | # CONFIG_HAMACHI is not set |
463 | # CONFIG_YELLOWFIN is not set | 491 | # CONFIG_YELLOWFIN is not set |
464 | # CONFIG_R8169 is not set | 492 | # CONFIG_R8169 is not set |
493 | # CONFIG_SIS190 is not set | ||
465 | CONFIG_SKGE=m | 494 | CONFIG_SKGE=m |
466 | # CONFIG_SK98LIN is not set | 495 | # CONFIG_SK98LIN is not set |
467 | # CONFIG_TIGON3 is not set | 496 | # CONFIG_TIGON3 is not set |
468 | # CONFIG_BNX2 is not set | 497 | # CONFIG_BNX2 is not set |
498 | # CONFIG_SPIDER_NET is not set | ||
469 | # CONFIG_MV643XX_ETH is not set | 499 | # CONFIG_MV643XX_ETH is not set |
470 | 500 | ||
471 | # | 501 | # |
472 | # Ethernet (10000 Mbit) | 502 | # Ethernet (10000 Mbit) |
473 | # | 503 | # |
504 | # CONFIG_CHELSIO_T1 is not set | ||
474 | # CONFIG_IXGB is not set | 505 | # CONFIG_IXGB is not set |
475 | # CONFIG_S2IO is not set | 506 | # CONFIG_S2IO is not set |
476 | 507 | ||
@@ -552,6 +583,7 @@ CONFIG_HW_CONSOLE=y | |||
552 | CONFIG_SERIAL_NONSTANDARD=y | 583 | CONFIG_SERIAL_NONSTANDARD=y |
553 | # CONFIG_ROCKETPORT is not set | 584 | # CONFIG_ROCKETPORT is not set |
554 | # CONFIG_CYCLADES is not set | 585 | # CONFIG_CYCLADES is not set |
586 | # CONFIG_DIGIEPCA is not set | ||
555 | # CONFIG_MOXA_SMARTIO is not set | 587 | # CONFIG_MOXA_SMARTIO is not set |
556 | # CONFIG_ISI is not set | 588 | # CONFIG_ISI is not set |
557 | # CONFIG_SYNCLINK is not set | 589 | # CONFIG_SYNCLINK is not set |
@@ -642,7 +674,6 @@ CONFIG_I2C_ALGOBIT=y | |||
642 | # CONFIG_I2C_I801 is not set | 674 | # CONFIG_I2C_I801 is not set |
643 | # CONFIG_I2C_I810 is not set | 675 | # CONFIG_I2C_I810 is not set |
644 | # CONFIG_I2C_PIIX4 is not set | 676 | # CONFIG_I2C_PIIX4 is not set |
645 | # CONFIG_I2C_ISA is not set | ||
646 | # CONFIG_I2C_NFORCE2 is not set | 677 | # CONFIG_I2C_NFORCE2 is not set |
647 | # CONFIG_I2C_PARPORT_LIGHT is not set | 678 | # CONFIG_I2C_PARPORT_LIGHT is not set |
648 | # CONFIG_I2C_PROSAVAGE is not set | 679 | # CONFIG_I2C_PROSAVAGE is not set |
@@ -656,7 +687,6 @@ CONFIG_I2C_ALGOBIT=y | |||
656 | # CONFIG_I2C_VIAPRO is not set | 687 | # CONFIG_I2C_VIAPRO is not set |
657 | # CONFIG_I2C_VOODOO3 is not set | 688 | # CONFIG_I2C_VOODOO3 is not set |
658 | # CONFIG_I2C_PCA_ISA is not set | 689 | # CONFIG_I2C_PCA_ISA is not set |
659 | # CONFIG_I2C_SENSOR is not set | ||
660 | 690 | ||
661 | # | 691 | # |
662 | # Miscellaneous I2C Chip support | 692 | # Miscellaneous I2C Chip support |
@@ -683,12 +713,17 @@ CONFIG_I2C_ALGOBIT=y | |||
683 | # Hardware Monitoring support | 713 | # Hardware Monitoring support |
684 | # | 714 | # |
685 | # CONFIG_HWMON is not set | 715 | # CONFIG_HWMON is not set |
716 | # CONFIG_HWMON_VID is not set | ||
686 | 717 | ||
687 | # | 718 | # |
688 | # Misc devices | 719 | # Misc devices |
689 | # | 720 | # |
690 | 721 | ||
691 | # | 722 | # |
723 | # Multimedia Capabilities Port drivers | ||
724 | # | ||
725 | |||
726 | # | ||
692 | # Multimedia devices | 727 | # Multimedia devices |
693 | # | 728 | # |
694 | # CONFIG_VIDEO_DEV is not set | 729 | # CONFIG_VIDEO_DEV is not set |
@@ -756,10 +791,6 @@ CONFIG_FS_MBCACHE=y | |||
756 | # CONFIG_REISERFS_FS is not set | 791 | # CONFIG_REISERFS_FS is not set |
757 | # CONFIG_JFS_FS is not set | 792 | # CONFIG_JFS_FS is not set |
758 | CONFIG_FS_POSIX_ACL=y | 793 | CONFIG_FS_POSIX_ACL=y |
759 | |||
760 | # | ||
761 | # XFS support | ||
762 | # | ||
763 | # CONFIG_XFS_FS is not set | 794 | # CONFIG_XFS_FS is not set |
764 | # CONFIG_MINIX_FS is not set | 795 | # CONFIG_MINIX_FS is not set |
765 | # CONFIG_ROMFS_FS is not set | 796 | # CONFIG_ROMFS_FS is not set |
@@ -768,6 +799,7 @@ CONFIG_INOTIFY=y | |||
768 | CONFIG_DNOTIFY=y | 799 | CONFIG_DNOTIFY=y |
769 | # CONFIG_AUTOFS_FS is not set | 800 | # CONFIG_AUTOFS_FS is not set |
770 | # CONFIG_AUTOFS4_FS is not set | 801 | # CONFIG_AUTOFS4_FS is not set |
802 | # CONFIG_FUSE_FS is not set | ||
771 | 803 | ||
772 | # | 804 | # |
773 | # CD-ROM/DVD Filesystems | 805 | # CD-ROM/DVD Filesystems |
@@ -794,13 +826,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
794 | CONFIG_PROC_FS=y | 826 | CONFIG_PROC_FS=y |
795 | CONFIG_PROC_KCORE=y | 827 | CONFIG_PROC_KCORE=y |
796 | CONFIG_SYSFS=y | 828 | CONFIG_SYSFS=y |
797 | # CONFIG_DEVPTS_FS_XATTR is not set | ||
798 | CONFIG_TMPFS=y | 829 | CONFIG_TMPFS=y |
799 | CONFIG_TMPFS_XATTR=y | ||
800 | # CONFIG_TMPFS_SECURITY is not set | ||
801 | CONFIG_HUGETLBFS=y | 830 | CONFIG_HUGETLBFS=y |
802 | CONFIG_HUGETLB_PAGE=y | 831 | CONFIG_HUGETLB_PAGE=y |
803 | CONFIG_RAMFS=y | 832 | CONFIG_RAMFS=y |
833 | # CONFIG_RELAYFS_FS is not set | ||
804 | 834 | ||
805 | # | 835 | # |
806 | # Miscellaneous filesystems | 836 | # Miscellaneous filesystems |
@@ -846,6 +876,7 @@ CONFIG_SUNRPC=m | |||
846 | # CONFIG_NCP_FS is not set | 876 | # CONFIG_NCP_FS is not set |
847 | # CONFIG_CODA_FS is not set | 877 | # CONFIG_CODA_FS is not set |
848 | # CONFIG_AFS_FS is not set | 878 | # CONFIG_AFS_FS is not set |
879 | # CONFIG_9P_FS is not set | ||
849 | 880 | ||
850 | # | 881 | # |
851 | # Partition Types | 882 | # Partition Types |
@@ -923,6 +954,7 @@ CONFIG_NLS_ISO8859_15=m | |||
923 | CONFIG_DEBUG_KERNEL=y | 954 | CONFIG_DEBUG_KERNEL=y |
924 | CONFIG_MAGIC_SYSRQ=y | 955 | CONFIG_MAGIC_SYSRQ=y |
925 | CONFIG_LOG_BUF_SHIFT=15 | 956 | CONFIG_LOG_BUF_SHIFT=15 |
957 | CONFIG_DETECT_SOFTLOCKUP=y | ||
926 | # CONFIG_SCHEDSTATS is not set | 958 | # CONFIG_SCHEDSTATS is not set |
927 | # CONFIG_DEBUG_SLAB is not set | 959 | # CONFIG_DEBUG_SLAB is not set |
928 | # CONFIG_DEBUG_SPINLOCK is not set | 960 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -981,7 +1013,12 @@ CONFIG_CRYPTO_DEFLATE=m | |||
981 | # Library routines | 1013 | # Library routines |
982 | # | 1014 | # |
983 | # CONFIG_CRC_CCITT is not set | 1015 | # CONFIG_CRC_CCITT is not set |
1016 | # CONFIG_CRC16 is not set | ||
984 | CONFIG_CRC32=y | 1017 | CONFIG_CRC32=y |
985 | # CONFIG_LIBCRC32C is not set | 1018 | # CONFIG_LIBCRC32C is not set |
986 | CONFIG_ZLIB_INFLATE=m | 1019 | CONFIG_ZLIB_INFLATE=m |
987 | CONFIG_ZLIB_DEFLATE=m | 1020 | CONFIG_ZLIB_DEFLATE=m |
1021 | CONFIG_TEXTSEARCH=y | ||
1022 | CONFIG_TEXTSEARCH_KMP=m | ||
1023 | CONFIG_TEXTSEARCH_BM=m | ||
1024 | CONFIG_TEXTSEARCH_FSM=m | ||
diff --git a/arch/ppc64/configs/g5_defconfig b/arch/ppc64/configs/g5_defconfig index fc83d9330282..6323065fbf2c 100644 --- a/arch/ppc64/configs/g5_defconfig +++ b/arch/ppc64/configs/g5_defconfig | |||
@@ -1,17 +1,17 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6 | 3 | # Linux kernel version: 2.6.14-rc4 |
4 | # Mon Aug 8 14:16:59 2005 | 4 | # Thu Oct 20 08:30:23 2005 |
5 | # | 5 | # |
6 | CONFIG_64BIT=y | 6 | CONFIG_64BIT=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
9 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 9 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
10 | CONFIG_GENERIC_ISA_DMA=y | 10 | CONFIG_GENERIC_ISA_DMA=y |
11 | CONFIG_HAVE_DEC_LOCK=y | ||
12 | CONFIG_EARLY_PRINTK=y | 11 | CONFIG_EARLY_PRINTK=y |
13 | CONFIG_COMPAT=y | 12 | CONFIG_COMPAT=y |
14 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 13 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
14 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | ||
15 | CONFIG_FORCE_MAX_ZONEORDER=13 | 15 | CONFIG_FORCE_MAX_ZONEORDER=13 |
16 | 16 | ||
17 | # | 17 | # |
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
26 | # General setup | 26 | # General setup |
27 | # | 27 | # |
28 | CONFIG_LOCALVERSION="" | 28 | CONFIG_LOCALVERSION="" |
29 | CONFIG_LOCALVERSION_AUTO=y | ||
29 | CONFIG_SWAP=y | 30 | CONFIG_SWAP=y |
30 | CONFIG_SYSVIPC=y | 31 | CONFIG_SYSVIPC=y |
31 | CONFIG_POSIX_MQUEUE=y | 32 | CONFIG_POSIX_MQUEUE=y |
@@ -37,6 +38,7 @@ CONFIG_KOBJECT_UEVENT=y | |||
37 | CONFIG_IKCONFIG=y | 38 | CONFIG_IKCONFIG=y |
38 | CONFIG_IKCONFIG_PROC=y | 39 | CONFIG_IKCONFIG_PROC=y |
39 | # CONFIG_CPUSETS is not set | 40 | # CONFIG_CPUSETS is not set |
41 | CONFIG_INITRAMFS_SOURCE="" | ||
40 | # CONFIG_EMBEDDED is not set | 42 | # CONFIG_EMBEDDED is not set |
41 | CONFIG_KALLSYMS=y | 43 | CONFIG_KALLSYMS=y |
42 | # CONFIG_KALLSYMS_ALL is not set | 44 | # CONFIG_KALLSYMS_ALL is not set |
@@ -97,6 +99,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
97 | # CONFIG_SPARSEMEM_MANUAL is not set | 99 | # CONFIG_SPARSEMEM_MANUAL is not set |
98 | CONFIG_FLATMEM=y | 100 | CONFIG_FLATMEM=y |
99 | CONFIG_FLAT_NODE_MEM_MAP=y | 101 | CONFIG_FLAT_NODE_MEM_MAP=y |
102 | # CONFIG_SPARSEMEM_STATIC is not set | ||
100 | # CONFIG_NUMA is not set | 103 | # CONFIG_NUMA is not set |
101 | # CONFIG_SCHED_SMT is not set | 104 | # CONFIG_SCHED_SMT is not set |
102 | CONFIG_PREEMPT_NONE=y | 105 | CONFIG_PREEMPT_NONE=y |
@@ -109,19 +112,20 @@ CONFIG_HZ_250=y | |||
109 | CONFIG_HZ=250 | 112 | CONFIG_HZ=250 |
110 | CONFIG_GENERIC_HARDIRQS=y | 113 | CONFIG_GENERIC_HARDIRQS=y |
111 | CONFIG_SECCOMP=y | 114 | CONFIG_SECCOMP=y |
115 | CONFIG_BINFMT_ELF=y | ||
116 | # CONFIG_BINFMT_MISC is not set | ||
117 | # CONFIG_HOTPLUG_CPU is not set | ||
118 | CONFIG_PROC_DEVICETREE=y | ||
119 | # CONFIG_CMDLINE_BOOL is not set | ||
112 | CONFIG_ISA_DMA_API=y | 120 | CONFIG_ISA_DMA_API=y |
113 | 121 | ||
114 | # | 122 | # |
115 | # General setup | 123 | # Bus Options |
116 | # | 124 | # |
117 | CONFIG_PCI=y | 125 | CONFIG_PCI=y |
118 | CONFIG_PCI_DOMAINS=y | 126 | CONFIG_PCI_DOMAINS=y |
119 | CONFIG_BINFMT_ELF=y | ||
120 | # CONFIG_BINFMT_MISC is not set | ||
121 | CONFIG_PCI_LEGACY_PROC=y | 127 | CONFIG_PCI_LEGACY_PROC=y |
122 | CONFIG_PCI_NAMES=y | ||
123 | # CONFIG_PCI_DEBUG is not set | 128 | # CONFIG_PCI_DEBUG is not set |
124 | # CONFIG_HOTPLUG_CPU is not set | ||
125 | 129 | ||
126 | # | 130 | # |
127 | # PCCARD (PCMCIA/CardBus) support | 131 | # PCCARD (PCMCIA/CardBus) support |
@@ -132,8 +136,6 @@ CONFIG_PCI_NAMES=y | |||
132 | # PCI Hotplug Support | 136 | # PCI Hotplug Support |
133 | # | 137 | # |
134 | # CONFIG_HOTPLUG_PCI is not set | 138 | # CONFIG_HOTPLUG_PCI is not set |
135 | CONFIG_PROC_DEVICETREE=y | ||
136 | # CONFIG_CMDLINE_BOOL is not set | ||
137 | 139 | ||
138 | # | 140 | # |
139 | # Networking | 141 | # Networking |
@@ -163,8 +165,8 @@ CONFIG_INET_AH=m | |||
163 | CONFIG_INET_ESP=m | 165 | CONFIG_INET_ESP=m |
164 | CONFIG_INET_IPCOMP=m | 166 | CONFIG_INET_IPCOMP=m |
165 | CONFIG_INET_TUNNEL=y | 167 | CONFIG_INET_TUNNEL=y |
166 | CONFIG_IP_TCPDIAG=m | 168 | CONFIG_INET_DIAG=y |
167 | # CONFIG_IP_TCPDIAG_IPV6 is not set | 169 | CONFIG_INET_TCP_DIAG=y |
168 | # CONFIG_TCP_CONG_ADVANCED is not set | 170 | # CONFIG_TCP_CONG_ADVANCED is not set |
169 | CONFIG_TCP_CONG_BIC=y | 171 | CONFIG_TCP_CONG_BIC=y |
170 | 172 | ||
@@ -175,6 +177,7 @@ CONFIG_TCP_CONG_BIC=y | |||
175 | # CONFIG_IPV6 is not set | 177 | # CONFIG_IPV6 is not set |
176 | CONFIG_NETFILTER=y | 178 | CONFIG_NETFILTER=y |
177 | # CONFIG_NETFILTER_DEBUG is not set | 179 | # CONFIG_NETFILTER_DEBUG is not set |
180 | # CONFIG_NETFILTER_NETLINK is not set | ||
178 | 181 | ||
179 | # | 182 | # |
180 | # IP: Netfilter Configuration | 183 | # IP: Netfilter Configuration |
@@ -182,11 +185,14 @@ CONFIG_NETFILTER=y | |||
182 | CONFIG_IP_NF_CONNTRACK=m | 185 | CONFIG_IP_NF_CONNTRACK=m |
183 | CONFIG_IP_NF_CT_ACCT=y | 186 | CONFIG_IP_NF_CT_ACCT=y |
184 | CONFIG_IP_NF_CONNTRACK_MARK=y | 187 | CONFIG_IP_NF_CONNTRACK_MARK=y |
188 | CONFIG_IP_NF_CONNTRACK_EVENTS=y | ||
185 | CONFIG_IP_NF_CT_PROTO_SCTP=m | 189 | CONFIG_IP_NF_CT_PROTO_SCTP=m |
186 | CONFIG_IP_NF_FTP=m | 190 | CONFIG_IP_NF_FTP=m |
187 | CONFIG_IP_NF_IRC=m | 191 | CONFIG_IP_NF_IRC=m |
192 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
188 | CONFIG_IP_NF_TFTP=m | 193 | CONFIG_IP_NF_TFTP=m |
189 | CONFIG_IP_NF_AMANDA=m | 194 | CONFIG_IP_NF_AMANDA=m |
195 | # CONFIG_IP_NF_PPTP is not set | ||
190 | CONFIG_IP_NF_QUEUE=m | 196 | CONFIG_IP_NF_QUEUE=m |
191 | CONFIG_IP_NF_IPTABLES=m | 197 | CONFIG_IP_NF_IPTABLES=m |
192 | CONFIG_IP_NF_MATCH_LIMIT=m | 198 | CONFIG_IP_NF_MATCH_LIMIT=m |
@@ -210,14 +216,18 @@ CONFIG_IP_NF_MATCH_OWNER=m | |||
210 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | 216 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
211 | CONFIG_IP_NF_MATCH_REALM=m | 217 | CONFIG_IP_NF_MATCH_REALM=m |
212 | CONFIG_IP_NF_MATCH_SCTP=m | 218 | CONFIG_IP_NF_MATCH_SCTP=m |
219 | # CONFIG_IP_NF_MATCH_DCCP is not set | ||
213 | CONFIG_IP_NF_MATCH_COMMENT=m | 220 | CONFIG_IP_NF_MATCH_COMMENT=m |
214 | CONFIG_IP_NF_MATCH_CONNMARK=m | 221 | CONFIG_IP_NF_MATCH_CONNMARK=m |
222 | CONFIG_IP_NF_MATCH_CONNBYTES=m | ||
215 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | 223 | CONFIG_IP_NF_MATCH_HASHLIMIT=m |
224 | CONFIG_IP_NF_MATCH_STRING=m | ||
216 | CONFIG_IP_NF_FILTER=m | 225 | CONFIG_IP_NF_FILTER=m |
217 | CONFIG_IP_NF_TARGET_REJECT=m | 226 | CONFIG_IP_NF_TARGET_REJECT=m |
218 | CONFIG_IP_NF_TARGET_LOG=m | 227 | CONFIG_IP_NF_TARGET_LOG=m |
219 | CONFIG_IP_NF_TARGET_ULOG=m | 228 | CONFIG_IP_NF_TARGET_ULOG=m |
220 | CONFIG_IP_NF_TARGET_TCPMSS=m | 229 | CONFIG_IP_NF_TARGET_TCPMSS=m |
230 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
221 | CONFIG_IP_NF_NAT=m | 231 | CONFIG_IP_NF_NAT=m |
222 | CONFIG_IP_NF_NAT_NEEDED=y | 232 | CONFIG_IP_NF_NAT_NEEDED=y |
223 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 233 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
@@ -235,6 +245,7 @@ CONFIG_IP_NF_TARGET_ECN=m | |||
235 | CONFIG_IP_NF_TARGET_DSCP=m | 245 | CONFIG_IP_NF_TARGET_DSCP=m |
236 | CONFIG_IP_NF_TARGET_MARK=m | 246 | CONFIG_IP_NF_TARGET_MARK=m |
237 | CONFIG_IP_NF_TARGET_CLASSIFY=m | 247 | CONFIG_IP_NF_TARGET_CLASSIFY=m |
248 | CONFIG_IP_NF_TARGET_TTL=m | ||
238 | CONFIG_IP_NF_TARGET_CONNMARK=m | 249 | CONFIG_IP_NF_TARGET_CONNMARK=m |
239 | CONFIG_IP_NF_TARGET_CLUSTERIP=m | 250 | CONFIG_IP_NF_TARGET_CLUSTERIP=m |
240 | CONFIG_IP_NF_RAW=m | 251 | CONFIG_IP_NF_RAW=m |
@@ -244,6 +255,11 @@ CONFIG_IP_NF_ARPFILTER=m | |||
244 | CONFIG_IP_NF_ARP_MANGLE=m | 255 | CONFIG_IP_NF_ARP_MANGLE=m |
245 | 256 | ||
246 | # | 257 | # |
258 | # DCCP Configuration (EXPERIMENTAL) | ||
259 | # | ||
260 | # CONFIG_IP_DCCP is not set | ||
261 | |||
262 | # | ||
247 | # SCTP Configuration (EXPERIMENTAL) | 263 | # SCTP Configuration (EXPERIMENTAL) |
248 | # | 264 | # |
249 | # CONFIG_IP_SCTP is not set | 265 | # CONFIG_IP_SCTP is not set |
@@ -270,6 +286,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
270 | # CONFIG_HAMRADIO is not set | 286 | # CONFIG_HAMRADIO is not set |
271 | # CONFIG_IRDA is not set | 287 | # CONFIG_IRDA is not set |
272 | # CONFIG_BT is not set | 288 | # CONFIG_BT is not set |
289 | # CONFIG_IEEE80211 is not set | ||
273 | 290 | ||
274 | # | 291 | # |
275 | # Device Drivers | 292 | # Device Drivers |
@@ -284,6 +301,11 @@ CONFIG_FW_LOADER=y | |||
284 | # CONFIG_DEBUG_DRIVER is not set | 301 | # CONFIG_DEBUG_DRIVER is not set |
285 | 302 | ||
286 | # | 303 | # |
304 | # Connector - unified userspace <-> kernelspace linker | ||
305 | # | ||
306 | # CONFIG_CONNECTOR is not set | ||
307 | |||
308 | # | ||
287 | # Memory Technology Devices (MTD) | 309 | # Memory Technology Devices (MTD) |
288 | # | 310 | # |
289 | # CONFIG_MTD is not set | 311 | # CONFIG_MTD is not set |
@@ -315,7 +337,6 @@ CONFIG_BLK_DEV_RAM=y | |||
315 | CONFIG_BLK_DEV_RAM_COUNT=16 | 337 | CONFIG_BLK_DEV_RAM_COUNT=16 |
316 | CONFIG_BLK_DEV_RAM_SIZE=65536 | 338 | CONFIG_BLK_DEV_RAM_SIZE=65536 |
317 | CONFIG_BLK_DEV_INITRD=y | 339 | CONFIG_BLK_DEV_INITRD=y |
318 | CONFIG_INITRAMFS_SOURCE="" | ||
319 | CONFIG_CDROM_PKTCDVD=m | 340 | CONFIG_CDROM_PKTCDVD=m |
320 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 341 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
321 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 342 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
@@ -395,6 +416,7 @@ CONFIG_IDEDMA_AUTO=y | |||
395 | # | 416 | # |
396 | # SCSI device support | 417 | # SCSI device support |
397 | # | 418 | # |
419 | # CONFIG_RAID_ATTRS is not set | ||
398 | CONFIG_SCSI=y | 420 | CONFIG_SCSI=y |
399 | CONFIG_SCSI_PROC_FS=y | 421 | CONFIG_SCSI_PROC_FS=y |
400 | 422 | ||
@@ -422,6 +444,7 @@ CONFIG_SCSI_CONSTANTS=y | |||
422 | CONFIG_SCSI_SPI_ATTRS=y | 444 | CONFIG_SCSI_SPI_ATTRS=y |
423 | # CONFIG_SCSI_FC_ATTRS is not set | 445 | # CONFIG_SCSI_FC_ATTRS is not set |
424 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 446 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
447 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
425 | 448 | ||
426 | # | 449 | # |
427 | # SCSI low-level drivers | 450 | # SCSI low-level drivers |
@@ -435,10 +458,12 @@ CONFIG_SCSI_SPI_ATTRS=y | |||
435 | # CONFIG_SCSI_AIC79XX is not set | 458 | # CONFIG_SCSI_AIC79XX is not set |
436 | # CONFIG_MEGARAID_NEWGEN is not set | 459 | # CONFIG_MEGARAID_NEWGEN is not set |
437 | # CONFIG_MEGARAID_LEGACY is not set | 460 | # CONFIG_MEGARAID_LEGACY is not set |
461 | # CONFIG_MEGARAID_SAS is not set | ||
438 | CONFIG_SCSI_SATA=y | 462 | CONFIG_SCSI_SATA=y |
439 | # CONFIG_SCSI_SATA_AHCI is not set | 463 | # CONFIG_SCSI_SATA_AHCI is not set |
440 | CONFIG_SCSI_SATA_SVW=y | 464 | CONFIG_SCSI_SATA_SVW=y |
441 | # CONFIG_SCSI_ATA_PIIX is not set | 465 | # CONFIG_SCSI_ATA_PIIX is not set |
466 | # CONFIG_SCSI_SATA_MV is not set | ||
442 | # CONFIG_SCSI_SATA_NV is not set | 467 | # CONFIG_SCSI_SATA_NV is not set |
443 | # CONFIG_SCSI_SATA_PROMISE is not set | 468 | # CONFIG_SCSI_SATA_PROMISE is not set |
444 | # CONFIG_SCSI_SATA_QSTOR is not set | 469 | # CONFIG_SCSI_SATA_QSTOR is not set |
@@ -498,6 +523,7 @@ CONFIG_DM_ZERO=m | |||
498 | # CONFIG_FUSION is not set | 523 | # CONFIG_FUSION is not set |
499 | # CONFIG_FUSION_SPI is not set | 524 | # CONFIG_FUSION_SPI is not set |
500 | # CONFIG_FUSION_FC is not set | 525 | # CONFIG_FUSION_FC is not set |
526 | # CONFIG_FUSION_SAS is not set | ||
501 | 527 | ||
502 | # | 528 | # |
503 | # IEEE 1394 (FireWire) support | 529 | # IEEE 1394 (FireWire) support |
@@ -540,7 +566,6 @@ CONFIG_IEEE1394_RAWIO=y | |||
540 | # | 566 | # |
541 | CONFIG_ADB_PMU=y | 567 | CONFIG_ADB_PMU=y |
542 | CONFIG_PMAC_SMU=y | 568 | CONFIG_PMAC_SMU=y |
543 | # CONFIG_PMAC_BACKLIGHT is not set | ||
544 | CONFIG_THERM_PM72=y | 569 | CONFIG_THERM_PM72=y |
545 | 570 | ||
546 | # | 571 | # |
@@ -558,12 +583,18 @@ CONFIG_TUN=m | |||
558 | # CONFIG_ARCNET is not set | 583 | # CONFIG_ARCNET is not set |
559 | 584 | ||
560 | # | 585 | # |
586 | # PHY device support | ||
587 | # | ||
588 | # CONFIG_PHYLIB is not set | ||
589 | |||
590 | # | ||
561 | # Ethernet (10 or 100Mbit) | 591 | # Ethernet (10 or 100Mbit) |
562 | # | 592 | # |
563 | CONFIG_NET_ETHERNET=y | 593 | CONFIG_NET_ETHERNET=y |
564 | CONFIG_MII=y | 594 | CONFIG_MII=y |
565 | # CONFIG_HAPPYMEAL is not set | 595 | # CONFIG_HAPPYMEAL is not set |
566 | CONFIG_SUNGEM=y | 596 | CONFIG_SUNGEM=y |
597 | # CONFIG_CASSINI is not set | ||
567 | # CONFIG_NET_VENDOR_3COM is not set | 598 | # CONFIG_NET_VENDOR_3COM is not set |
568 | 599 | ||
569 | # | 600 | # |
@@ -585,6 +616,7 @@ CONFIG_E1000=y | |||
585 | # CONFIG_HAMACHI is not set | 616 | # CONFIG_HAMACHI is not set |
586 | # CONFIG_YELLOWFIN is not set | 617 | # CONFIG_YELLOWFIN is not set |
587 | # CONFIG_R8169 is not set | 618 | # CONFIG_R8169 is not set |
619 | # CONFIG_SIS190 is not set | ||
588 | # CONFIG_SKGE is not set | 620 | # CONFIG_SKGE is not set |
589 | # CONFIG_SK98LIN is not set | 621 | # CONFIG_SK98LIN is not set |
590 | CONFIG_TIGON3=m | 622 | CONFIG_TIGON3=m |
@@ -594,6 +626,7 @@ CONFIG_TIGON3=m | |||
594 | # | 626 | # |
595 | # Ethernet (10000 Mbit) | 627 | # Ethernet (10000 Mbit) |
596 | # | 628 | # |
629 | # CONFIG_CHELSIO_T1 is not set | ||
597 | # CONFIG_IXGB is not set | 630 | # CONFIG_IXGB is not set |
598 | # CONFIG_S2IO is not set | 631 | # CONFIG_S2IO is not set |
599 | 632 | ||
@@ -760,8 +793,8 @@ CONFIG_I2C_ALGOBIT=y | |||
760 | # CONFIG_I2C_I801 is not set | 793 | # CONFIG_I2C_I801 is not set |
761 | # CONFIG_I2C_I810 is not set | 794 | # CONFIG_I2C_I810 is not set |
762 | # CONFIG_I2C_PIIX4 is not set | 795 | # CONFIG_I2C_PIIX4 is not set |
763 | # CONFIG_I2C_ISA is not set | ||
764 | CONFIG_I2C_KEYWEST=y | 796 | CONFIG_I2C_KEYWEST=y |
797 | CONFIG_I2C_PMAC_SMU=y | ||
765 | # CONFIG_I2C_NFORCE2 is not set | 798 | # CONFIG_I2C_NFORCE2 is not set |
766 | # CONFIG_I2C_PARPORT_LIGHT is not set | 799 | # CONFIG_I2C_PARPORT_LIGHT is not set |
767 | # CONFIG_I2C_PROSAVAGE is not set | 800 | # CONFIG_I2C_PROSAVAGE is not set |
@@ -775,7 +808,6 @@ CONFIG_I2C_KEYWEST=y | |||
775 | # CONFIG_I2C_VIAPRO is not set | 808 | # CONFIG_I2C_VIAPRO is not set |
776 | # CONFIG_I2C_VOODOO3 is not set | 809 | # CONFIG_I2C_VOODOO3 is not set |
777 | # CONFIG_I2C_PCA_ISA is not set | 810 | # CONFIG_I2C_PCA_ISA is not set |
778 | # CONFIG_I2C_SENSOR is not set | ||
779 | 811 | ||
780 | # | 812 | # |
781 | # Miscellaneous I2C Chip support | 813 | # Miscellaneous I2C Chip support |
@@ -802,12 +834,17 @@ CONFIG_I2C_KEYWEST=y | |||
802 | # Hardware Monitoring support | 834 | # Hardware Monitoring support |
803 | # | 835 | # |
804 | # CONFIG_HWMON is not set | 836 | # CONFIG_HWMON is not set |
837 | # CONFIG_HWMON_VID is not set | ||
805 | 838 | ||
806 | # | 839 | # |
807 | # Misc devices | 840 | # Misc devices |
808 | # | 841 | # |
809 | 842 | ||
810 | # | 843 | # |
844 | # Multimedia Capabilities Port drivers | ||
845 | # | ||
846 | |||
847 | # | ||
811 | # Multimedia devices | 848 | # Multimedia devices |
812 | # | 849 | # |
813 | # CONFIG_VIDEO_DEV is not set | 850 | # CONFIG_VIDEO_DEV is not set |
@@ -856,6 +893,7 @@ CONFIG_FB_RADEON_I2C=y | |||
856 | # CONFIG_FB_KYRO is not set | 893 | # CONFIG_FB_KYRO is not set |
857 | # CONFIG_FB_3DFX is not set | 894 | # CONFIG_FB_3DFX is not set |
858 | # CONFIG_FB_VOODOO1 is not set | 895 | # CONFIG_FB_VOODOO1 is not set |
896 | # CONFIG_FB_CYBLA is not set | ||
859 | # CONFIG_FB_TRIDENT is not set | 897 | # CONFIG_FB_TRIDENT is not set |
860 | # CONFIG_FB_S1D13XXX is not set | 898 | # CONFIG_FB_S1D13XXX is not set |
861 | # CONFIG_FB_VIRTUAL is not set | 899 | # CONFIG_FB_VIRTUAL is not set |
@@ -937,6 +975,7 @@ CONFIG_USB_STORAGE_DPCM=y | |||
937 | CONFIG_USB_STORAGE_SDDR09=y | 975 | CONFIG_USB_STORAGE_SDDR09=y |
938 | CONFIG_USB_STORAGE_SDDR55=y | 976 | CONFIG_USB_STORAGE_SDDR55=y |
939 | CONFIG_USB_STORAGE_JUMPSHOT=y | 977 | CONFIG_USB_STORAGE_JUMPSHOT=y |
978 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
940 | 979 | ||
941 | # | 980 | # |
942 | # USB Input Devices | 981 | # USB Input Devices |
@@ -956,9 +995,11 @@ CONFIG_USB_HIDDEV=y | |||
956 | # CONFIG_USB_MTOUCH is not set | 995 | # CONFIG_USB_MTOUCH is not set |
957 | # CONFIG_USB_ITMTOUCH is not set | 996 | # CONFIG_USB_ITMTOUCH is not set |
958 | # CONFIG_USB_EGALAX is not set | 997 | # CONFIG_USB_EGALAX is not set |
998 | # CONFIG_USB_YEALINK is not set | ||
959 | # CONFIG_USB_XPAD is not set | 999 | # CONFIG_USB_XPAD is not set |
960 | # CONFIG_USB_ATI_REMOTE is not set | 1000 | # CONFIG_USB_ATI_REMOTE is not set |
961 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 1001 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
1002 | # CONFIG_USB_APPLETOUCH is not set | ||
962 | 1003 | ||
963 | # | 1004 | # |
964 | # USB Imaging devices | 1005 | # USB Imaging devices |
@@ -983,30 +1024,14 @@ CONFIG_USB_KAWETH=m | |||
983 | CONFIG_USB_PEGASUS=m | 1024 | CONFIG_USB_PEGASUS=m |
984 | CONFIG_USB_RTL8150=m | 1025 | CONFIG_USB_RTL8150=m |
985 | CONFIG_USB_USBNET=m | 1026 | CONFIG_USB_USBNET=m |
986 | 1027 | # CONFIG_USB_NET_AX8817X is not set | |
987 | # | 1028 | CONFIG_USB_NET_CDCETHER=m |
988 | # USB Host-to-Host Cables | 1029 | # CONFIG_USB_NET_GL620A is not set |
989 | # | 1030 | # CONFIG_USB_NET_NET1080 is not set |
990 | CONFIG_USB_ALI_M5632=y | 1031 | # CONFIG_USB_NET_PLUSB is not set |
991 | CONFIG_USB_AN2720=y | 1032 | # CONFIG_USB_NET_RNDIS_HOST is not set |
992 | CONFIG_USB_BELKIN=y | 1033 | # CONFIG_USB_NET_CDC_SUBSET is not set |
993 | CONFIG_USB_GENESYS=y | 1034 | # CONFIG_USB_NET_ZAURUS is not set |
994 | CONFIG_USB_NET1080=y | ||
995 | CONFIG_USB_PL2301=y | ||
996 | CONFIG_USB_KC2190=y | ||
997 | |||
998 | # | ||
999 | # Intelligent USB Devices/Gadgets | ||
1000 | # | ||
1001 | CONFIG_USB_ARMLINUX=y | ||
1002 | CONFIG_USB_EPSON2888=y | ||
1003 | CONFIG_USB_ZAURUS=y | ||
1004 | CONFIG_USB_CDCETHER=y | ||
1005 | |||
1006 | # | ||
1007 | # USB Network Adapters | ||
1008 | # | ||
1009 | CONFIG_USB_AX8817X=y | ||
1010 | CONFIG_USB_MON=y | 1035 | CONFIG_USB_MON=y |
1011 | 1036 | ||
1012 | # | 1037 | # |
@@ -1124,16 +1149,12 @@ CONFIG_REISERFS_FS_POSIX_ACL=y | |||
1124 | CONFIG_REISERFS_FS_SECURITY=y | 1149 | CONFIG_REISERFS_FS_SECURITY=y |
1125 | # CONFIG_JFS_FS is not set | 1150 | # CONFIG_JFS_FS is not set |
1126 | CONFIG_FS_POSIX_ACL=y | 1151 | CONFIG_FS_POSIX_ACL=y |
1127 | |||
1128 | # | ||
1129 | # XFS support | ||
1130 | # | ||
1131 | CONFIG_XFS_FS=m | 1152 | CONFIG_XFS_FS=m |
1132 | CONFIG_XFS_EXPORT=y | 1153 | CONFIG_XFS_EXPORT=y |
1133 | # CONFIG_XFS_RT is not set | ||
1134 | # CONFIG_XFS_QUOTA is not set | 1154 | # CONFIG_XFS_QUOTA is not set |
1135 | CONFIG_XFS_SECURITY=y | 1155 | CONFIG_XFS_SECURITY=y |
1136 | CONFIG_XFS_POSIX_ACL=y | 1156 | CONFIG_XFS_POSIX_ACL=y |
1157 | # CONFIG_XFS_RT is not set | ||
1137 | # CONFIG_MINIX_FS is not set | 1158 | # CONFIG_MINIX_FS is not set |
1138 | # CONFIG_ROMFS_FS is not set | 1159 | # CONFIG_ROMFS_FS is not set |
1139 | CONFIG_INOTIFY=y | 1160 | CONFIG_INOTIFY=y |
@@ -1141,6 +1162,7 @@ CONFIG_INOTIFY=y | |||
1141 | CONFIG_DNOTIFY=y | 1162 | CONFIG_DNOTIFY=y |
1142 | CONFIG_AUTOFS_FS=m | 1163 | CONFIG_AUTOFS_FS=m |
1143 | # CONFIG_AUTOFS4_FS is not set | 1164 | # CONFIG_AUTOFS4_FS is not set |
1165 | # CONFIG_FUSE_FS is not set | ||
1144 | 1166 | ||
1145 | # | 1167 | # |
1146 | # CD-ROM/DVD Filesystems | 1168 | # CD-ROM/DVD Filesystems |
@@ -1168,14 +1190,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1168 | CONFIG_PROC_FS=y | 1190 | CONFIG_PROC_FS=y |
1169 | CONFIG_PROC_KCORE=y | 1191 | CONFIG_PROC_KCORE=y |
1170 | CONFIG_SYSFS=y | 1192 | CONFIG_SYSFS=y |
1171 | CONFIG_DEVPTS_FS_XATTR=y | ||
1172 | # CONFIG_DEVPTS_FS_SECURITY is not set | ||
1173 | CONFIG_TMPFS=y | 1193 | CONFIG_TMPFS=y |
1174 | CONFIG_TMPFS_XATTR=y | ||
1175 | CONFIG_TMPFS_SECURITY=y | ||
1176 | CONFIG_HUGETLBFS=y | 1194 | CONFIG_HUGETLBFS=y |
1177 | CONFIG_HUGETLB_PAGE=y | 1195 | CONFIG_HUGETLB_PAGE=y |
1178 | CONFIG_RAMFS=y | 1196 | CONFIG_RAMFS=y |
1197 | # CONFIG_RELAYFS_FS is not set | ||
1179 | 1198 | ||
1180 | # | 1199 | # |
1181 | # Miscellaneous filesystems | 1200 | # Miscellaneous filesystems |
@@ -1225,6 +1244,7 @@ CONFIG_CIFS=m | |||
1225 | # CONFIG_NCP_FS is not set | 1244 | # CONFIG_NCP_FS is not set |
1226 | # CONFIG_CODA_FS is not set | 1245 | # CONFIG_CODA_FS is not set |
1227 | # CONFIG_AFS_FS is not set | 1246 | # CONFIG_AFS_FS is not set |
1247 | # CONFIG_9P_FS is not set | ||
1228 | 1248 | ||
1229 | # | 1249 | # |
1230 | # Partition Types | 1250 | # Partition Types |
@@ -1303,6 +1323,7 @@ CONFIG_OPROFILE=y | |||
1303 | CONFIG_DEBUG_KERNEL=y | 1323 | CONFIG_DEBUG_KERNEL=y |
1304 | CONFIG_MAGIC_SYSRQ=y | 1324 | CONFIG_MAGIC_SYSRQ=y |
1305 | CONFIG_LOG_BUF_SHIFT=17 | 1325 | CONFIG_LOG_BUF_SHIFT=17 |
1326 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1306 | # CONFIG_SCHEDSTATS is not set | 1327 | # CONFIG_SCHEDSTATS is not set |
1307 | # CONFIG_DEBUG_SLAB is not set | 1328 | # CONFIG_DEBUG_SLAB is not set |
1308 | # CONFIG_DEBUG_SPINLOCK is not set | 1329 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -1360,7 +1381,12 @@ CONFIG_CRYPTO_TEST=m | |||
1360 | # Library routines | 1381 | # Library routines |
1361 | # | 1382 | # |
1362 | CONFIG_CRC_CCITT=m | 1383 | CONFIG_CRC_CCITT=m |
1384 | # CONFIG_CRC16 is not set | ||
1363 | CONFIG_CRC32=y | 1385 | CONFIG_CRC32=y |
1364 | CONFIG_LIBCRC32C=m | 1386 | CONFIG_LIBCRC32C=m |
1365 | CONFIG_ZLIB_INFLATE=y | 1387 | CONFIG_ZLIB_INFLATE=y |
1366 | CONFIG_ZLIB_DEFLATE=m | 1388 | CONFIG_ZLIB_DEFLATE=m |
1389 | CONFIG_TEXTSEARCH=y | ||
1390 | CONFIG_TEXTSEARCH_KMP=m | ||
1391 | CONFIG_TEXTSEARCH_BM=m | ||
1392 | CONFIG_TEXTSEARCH_FSM=m | ||
diff --git a/arch/ppc64/configs/iSeries_defconfig b/arch/ppc64/configs/iSeries_defconfig index 013d4e0e4003..62e92c7e9e27 100644 --- a/arch/ppc64/configs/iSeries_defconfig +++ b/arch/ppc64/configs/iSeries_defconfig | |||
@@ -1,17 +1,17 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6 | 3 | # Linux kernel version: 2.6.14-rc4 |
4 | # Mon Aug 8 14:17:02 2005 | 4 | # Thu Oct 20 08:30:56 2005 |
5 | # | 5 | # |
6 | CONFIG_64BIT=y | 6 | CONFIG_64BIT=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
9 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 9 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
10 | CONFIG_GENERIC_ISA_DMA=y | 10 | CONFIG_GENERIC_ISA_DMA=y |
11 | CONFIG_HAVE_DEC_LOCK=y | ||
12 | CONFIG_EARLY_PRINTK=y | 11 | CONFIG_EARLY_PRINTK=y |
13 | CONFIG_COMPAT=y | 12 | CONFIG_COMPAT=y |
14 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 13 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
14 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | ||
15 | CONFIG_FORCE_MAX_ZONEORDER=13 | 15 | CONFIG_FORCE_MAX_ZONEORDER=13 |
16 | 16 | ||
17 | # | 17 | # |
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
26 | # General setup | 26 | # General setup |
27 | # | 27 | # |
28 | CONFIG_LOCALVERSION="" | 28 | CONFIG_LOCALVERSION="" |
29 | CONFIG_LOCALVERSION_AUTO=y | ||
29 | CONFIG_SWAP=y | 30 | CONFIG_SWAP=y |
30 | CONFIG_SYSVIPC=y | 31 | CONFIG_SYSVIPC=y |
31 | CONFIG_POSIX_MQUEUE=y | 32 | CONFIG_POSIX_MQUEUE=y |
@@ -38,6 +39,7 @@ CONFIG_KOBJECT_UEVENT=y | |||
38 | CONFIG_IKCONFIG=y | 39 | CONFIG_IKCONFIG=y |
39 | CONFIG_IKCONFIG_PROC=y | 40 | CONFIG_IKCONFIG_PROC=y |
40 | # CONFIG_CPUSETS is not set | 41 | # CONFIG_CPUSETS is not set |
42 | CONFIG_INITRAMFS_SOURCE="" | ||
41 | # CONFIG_EMBEDDED is not set | 43 | # CONFIG_EMBEDDED is not set |
42 | CONFIG_KALLSYMS=y | 44 | CONFIG_KALLSYMS=y |
43 | # CONFIG_KALLSYMS_ALL is not set | 45 | # CONFIG_KALLSYMS_ALL is not set |
@@ -88,6 +90,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
88 | # CONFIG_SPARSEMEM_MANUAL is not set | 90 | # CONFIG_SPARSEMEM_MANUAL is not set |
89 | CONFIG_FLATMEM=y | 91 | CONFIG_FLATMEM=y |
90 | CONFIG_FLAT_NODE_MEM_MAP=y | 92 | CONFIG_FLAT_NODE_MEM_MAP=y |
93 | # CONFIG_SPARSEMEM_STATIC is not set | ||
91 | # CONFIG_NUMA is not set | 94 | # CONFIG_NUMA is not set |
92 | # CONFIG_SCHED_SMT is not set | 95 | # CONFIG_SCHED_SMT is not set |
93 | CONFIG_PREEMPT_NONE=y | 96 | CONFIG_PREEMPT_NONE=y |
@@ -101,17 +104,16 @@ CONFIG_HZ=250 | |||
101 | CONFIG_GENERIC_HARDIRQS=y | 104 | CONFIG_GENERIC_HARDIRQS=y |
102 | CONFIG_LPARCFG=y | 105 | CONFIG_LPARCFG=y |
103 | CONFIG_SECCOMP=y | 106 | CONFIG_SECCOMP=y |
107 | CONFIG_BINFMT_ELF=y | ||
108 | # CONFIG_BINFMT_MISC is not set | ||
104 | CONFIG_ISA_DMA_API=y | 109 | CONFIG_ISA_DMA_API=y |
105 | 110 | ||
106 | # | 111 | # |
107 | # General setup | 112 | # Bus Options |
108 | # | 113 | # |
109 | CONFIG_PCI=y | 114 | CONFIG_PCI=y |
110 | CONFIG_PCI_DOMAINS=y | 115 | CONFIG_PCI_DOMAINS=y |
111 | CONFIG_BINFMT_ELF=y | ||
112 | # CONFIG_BINFMT_MISC is not set | ||
113 | CONFIG_PCI_LEGACY_PROC=y | 116 | CONFIG_PCI_LEGACY_PROC=y |
114 | CONFIG_PCI_NAMES=y | ||
115 | # CONFIG_PCI_DEBUG is not set | 117 | # CONFIG_PCI_DEBUG is not set |
116 | 118 | ||
117 | # | 119 | # |
@@ -152,8 +154,8 @@ CONFIG_INET_AH=m | |||
152 | CONFIG_INET_ESP=m | 154 | CONFIG_INET_ESP=m |
153 | CONFIG_INET_IPCOMP=m | 155 | CONFIG_INET_IPCOMP=m |
154 | CONFIG_INET_TUNNEL=y | 156 | CONFIG_INET_TUNNEL=y |
155 | CONFIG_IP_TCPDIAG=m | 157 | CONFIG_INET_DIAG=y |
156 | # CONFIG_IP_TCPDIAG_IPV6 is not set | 158 | CONFIG_INET_TCP_DIAG=y |
157 | # CONFIG_TCP_CONG_ADVANCED is not set | 159 | # CONFIG_TCP_CONG_ADVANCED is not set |
158 | CONFIG_TCP_CONG_BIC=y | 160 | CONFIG_TCP_CONG_BIC=y |
159 | 161 | ||
@@ -164,6 +166,7 @@ CONFIG_TCP_CONG_BIC=y | |||
164 | # CONFIG_IPV6 is not set | 166 | # CONFIG_IPV6 is not set |
165 | CONFIG_NETFILTER=y | 167 | CONFIG_NETFILTER=y |
166 | # CONFIG_NETFILTER_DEBUG is not set | 168 | # CONFIG_NETFILTER_DEBUG is not set |
169 | # CONFIG_NETFILTER_NETLINK is not set | ||
167 | 170 | ||
168 | # | 171 | # |
169 | # IP: Netfilter Configuration | 172 | # IP: Netfilter Configuration |
@@ -171,11 +174,14 @@ CONFIG_NETFILTER=y | |||
171 | CONFIG_IP_NF_CONNTRACK=m | 174 | CONFIG_IP_NF_CONNTRACK=m |
172 | CONFIG_IP_NF_CT_ACCT=y | 175 | CONFIG_IP_NF_CT_ACCT=y |
173 | CONFIG_IP_NF_CONNTRACK_MARK=y | 176 | CONFIG_IP_NF_CONNTRACK_MARK=y |
177 | CONFIG_IP_NF_CONNTRACK_EVENTS=y | ||
174 | CONFIG_IP_NF_CT_PROTO_SCTP=m | 178 | CONFIG_IP_NF_CT_PROTO_SCTP=m |
175 | CONFIG_IP_NF_FTP=m | 179 | CONFIG_IP_NF_FTP=m |
176 | CONFIG_IP_NF_IRC=m | 180 | CONFIG_IP_NF_IRC=m |
181 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
177 | CONFIG_IP_NF_TFTP=m | 182 | CONFIG_IP_NF_TFTP=m |
178 | CONFIG_IP_NF_AMANDA=m | 183 | CONFIG_IP_NF_AMANDA=m |
184 | # CONFIG_IP_NF_PPTP is not set | ||
179 | CONFIG_IP_NF_QUEUE=m | 185 | CONFIG_IP_NF_QUEUE=m |
180 | CONFIG_IP_NF_IPTABLES=m | 186 | CONFIG_IP_NF_IPTABLES=m |
181 | CONFIG_IP_NF_MATCH_LIMIT=m | 187 | CONFIG_IP_NF_MATCH_LIMIT=m |
@@ -199,14 +205,18 @@ CONFIG_IP_NF_MATCH_OWNER=m | |||
199 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | 205 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
200 | CONFIG_IP_NF_MATCH_REALM=m | 206 | CONFIG_IP_NF_MATCH_REALM=m |
201 | CONFIG_IP_NF_MATCH_SCTP=m | 207 | CONFIG_IP_NF_MATCH_SCTP=m |
208 | # CONFIG_IP_NF_MATCH_DCCP is not set | ||
202 | CONFIG_IP_NF_MATCH_COMMENT=m | 209 | CONFIG_IP_NF_MATCH_COMMENT=m |
203 | CONFIG_IP_NF_MATCH_CONNMARK=m | 210 | CONFIG_IP_NF_MATCH_CONNMARK=m |
211 | CONFIG_IP_NF_MATCH_CONNBYTES=m | ||
204 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | 212 | CONFIG_IP_NF_MATCH_HASHLIMIT=m |
213 | CONFIG_IP_NF_MATCH_STRING=m | ||
205 | CONFIG_IP_NF_FILTER=m | 214 | CONFIG_IP_NF_FILTER=m |
206 | CONFIG_IP_NF_TARGET_REJECT=m | 215 | CONFIG_IP_NF_TARGET_REJECT=m |
207 | CONFIG_IP_NF_TARGET_LOG=m | 216 | CONFIG_IP_NF_TARGET_LOG=m |
208 | CONFIG_IP_NF_TARGET_ULOG=m | 217 | CONFIG_IP_NF_TARGET_ULOG=m |
209 | CONFIG_IP_NF_TARGET_TCPMSS=m | 218 | CONFIG_IP_NF_TARGET_TCPMSS=m |
219 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
210 | CONFIG_IP_NF_NAT=m | 220 | CONFIG_IP_NF_NAT=m |
211 | CONFIG_IP_NF_NAT_NEEDED=y | 221 | CONFIG_IP_NF_NAT_NEEDED=y |
212 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 222 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
@@ -224,6 +234,7 @@ CONFIG_IP_NF_TARGET_ECN=m | |||
224 | CONFIG_IP_NF_TARGET_DSCP=m | 234 | CONFIG_IP_NF_TARGET_DSCP=m |
225 | CONFIG_IP_NF_TARGET_MARK=m | 235 | CONFIG_IP_NF_TARGET_MARK=m |
226 | CONFIG_IP_NF_TARGET_CLASSIFY=m | 236 | CONFIG_IP_NF_TARGET_CLASSIFY=m |
237 | CONFIG_IP_NF_TARGET_TTL=m | ||
227 | CONFIG_IP_NF_TARGET_CONNMARK=m | 238 | CONFIG_IP_NF_TARGET_CONNMARK=m |
228 | CONFIG_IP_NF_TARGET_CLUSTERIP=m | 239 | CONFIG_IP_NF_TARGET_CLUSTERIP=m |
229 | CONFIG_IP_NF_RAW=m | 240 | CONFIG_IP_NF_RAW=m |
@@ -233,6 +244,11 @@ CONFIG_IP_NF_ARPFILTER=m | |||
233 | CONFIG_IP_NF_ARP_MANGLE=m | 244 | CONFIG_IP_NF_ARP_MANGLE=m |
234 | 245 | ||
235 | # | 246 | # |
247 | # DCCP Configuration (EXPERIMENTAL) | ||
248 | # | ||
249 | # CONFIG_IP_DCCP is not set | ||
250 | |||
251 | # | ||
236 | # SCTP Configuration (EXPERIMENTAL) | 252 | # SCTP Configuration (EXPERIMENTAL) |
237 | # | 253 | # |
238 | # CONFIG_IP_SCTP is not set | 254 | # CONFIG_IP_SCTP is not set |
@@ -259,6 +275,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
259 | # CONFIG_HAMRADIO is not set | 275 | # CONFIG_HAMRADIO is not set |
260 | # CONFIG_IRDA is not set | 276 | # CONFIG_IRDA is not set |
261 | # CONFIG_BT is not set | 277 | # CONFIG_BT is not set |
278 | # CONFIG_IEEE80211 is not set | ||
262 | 279 | ||
263 | # | 280 | # |
264 | # Device Drivers | 281 | # Device Drivers |
@@ -273,6 +290,11 @@ CONFIG_FW_LOADER=m | |||
273 | # CONFIG_DEBUG_DRIVER is not set | 290 | # CONFIG_DEBUG_DRIVER is not set |
274 | 291 | ||
275 | # | 292 | # |
293 | # Connector - unified userspace <-> kernelspace linker | ||
294 | # | ||
295 | # CONFIG_CONNECTOR is not set | ||
296 | |||
297 | # | ||
276 | # Memory Technology Devices (MTD) | 298 | # Memory Technology Devices (MTD) |
277 | # | 299 | # |
278 | # CONFIG_MTD is not set | 300 | # CONFIG_MTD is not set |
@@ -303,7 +325,6 @@ CONFIG_BLK_DEV_RAM=y | |||
303 | CONFIG_BLK_DEV_RAM_COUNT=16 | 325 | CONFIG_BLK_DEV_RAM_COUNT=16 |
304 | CONFIG_BLK_DEV_RAM_SIZE=65536 | 326 | CONFIG_BLK_DEV_RAM_SIZE=65536 |
305 | CONFIG_BLK_DEV_INITRD=y | 327 | CONFIG_BLK_DEV_INITRD=y |
306 | CONFIG_INITRAMFS_SOURCE="" | ||
307 | # CONFIG_CDROM_PKTCDVD is not set | 328 | # CONFIG_CDROM_PKTCDVD is not set |
308 | 329 | ||
309 | # | 330 | # |
@@ -323,6 +344,7 @@ CONFIG_IOSCHED_CFQ=y | |||
323 | # | 344 | # |
324 | # SCSI device support | 345 | # SCSI device support |
325 | # | 346 | # |
347 | # CONFIG_RAID_ATTRS is not set | ||
326 | CONFIG_SCSI=y | 348 | CONFIG_SCSI=y |
327 | CONFIG_SCSI_PROC_FS=y | 349 | CONFIG_SCSI_PROC_FS=y |
328 | 350 | ||
@@ -350,6 +372,7 @@ CONFIG_SCSI_CONSTANTS=y | |||
350 | CONFIG_SCSI_SPI_ATTRS=y | 372 | CONFIG_SCSI_SPI_ATTRS=y |
351 | CONFIG_SCSI_FC_ATTRS=y | 373 | CONFIG_SCSI_FC_ATTRS=y |
352 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 374 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
375 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
353 | 376 | ||
354 | # | 377 | # |
355 | # SCSI low-level drivers | 378 | # SCSI low-level drivers |
@@ -363,6 +386,7 @@ CONFIG_SCSI_FC_ATTRS=y | |||
363 | # CONFIG_SCSI_AIC79XX is not set | 386 | # CONFIG_SCSI_AIC79XX is not set |
364 | # CONFIG_MEGARAID_NEWGEN is not set | 387 | # CONFIG_MEGARAID_NEWGEN is not set |
365 | # CONFIG_MEGARAID_LEGACY is not set | 388 | # CONFIG_MEGARAID_LEGACY is not set |
389 | # CONFIG_MEGARAID_SAS is not set | ||
366 | # CONFIG_SCSI_SATA is not set | 390 | # CONFIG_SCSI_SATA is not set |
367 | # CONFIG_SCSI_BUSLOGIC is not set | 391 | # CONFIG_SCSI_BUSLOGIC is not set |
368 | # CONFIG_SCSI_DMX3191D is not set | 392 | # CONFIG_SCSI_DMX3191D is not set |
@@ -415,6 +439,7 @@ CONFIG_DM_ZERO=m | |||
415 | # CONFIG_FUSION is not set | 439 | # CONFIG_FUSION is not set |
416 | # CONFIG_FUSION_SPI is not set | 440 | # CONFIG_FUSION_SPI is not set |
417 | # CONFIG_FUSION_FC is not set | 441 | # CONFIG_FUSION_FC is not set |
442 | # CONFIG_FUSION_SAS is not set | ||
418 | 443 | ||
419 | # | 444 | # |
420 | # IEEE 1394 (FireWire) support | 445 | # IEEE 1394 (FireWire) support |
@@ -445,12 +470,18 @@ CONFIG_TUN=m | |||
445 | # CONFIG_ARCNET is not set | 470 | # CONFIG_ARCNET is not set |
446 | 471 | ||
447 | # | 472 | # |
473 | # PHY device support | ||
474 | # | ||
475 | # CONFIG_PHYLIB is not set | ||
476 | |||
477 | # | ||
448 | # Ethernet (10 or 100Mbit) | 478 | # Ethernet (10 or 100Mbit) |
449 | # | 479 | # |
450 | CONFIG_NET_ETHERNET=y | 480 | CONFIG_NET_ETHERNET=y |
451 | CONFIG_MII=y | 481 | CONFIG_MII=y |
452 | # CONFIG_HAPPYMEAL is not set | 482 | # CONFIG_HAPPYMEAL is not set |
453 | # CONFIG_SUNGEM is not set | 483 | # CONFIG_SUNGEM is not set |
484 | # CONFIG_CASSINI is not set | ||
454 | # CONFIG_NET_VENDOR_3COM is not set | 485 | # CONFIG_NET_VENDOR_3COM is not set |
455 | 486 | ||
456 | # | 487 | # |
@@ -489,6 +520,7 @@ CONFIG_E1000=m | |||
489 | # CONFIG_HAMACHI is not set | 520 | # CONFIG_HAMACHI is not set |
490 | # CONFIG_YELLOWFIN is not set | 521 | # CONFIG_YELLOWFIN is not set |
491 | # CONFIG_R8169 is not set | 522 | # CONFIG_R8169 is not set |
523 | # CONFIG_SIS190 is not set | ||
492 | # CONFIG_SKGE is not set | 524 | # CONFIG_SKGE is not set |
493 | # CONFIG_SK98LIN is not set | 525 | # CONFIG_SK98LIN is not set |
494 | # CONFIG_VIA_VELOCITY is not set | 526 | # CONFIG_VIA_VELOCITY is not set |
@@ -498,6 +530,7 @@ CONFIG_E1000=m | |||
498 | # | 530 | # |
499 | # Ethernet (10000 Mbit) | 531 | # Ethernet (10000 Mbit) |
500 | # | 532 | # |
533 | # CONFIG_CHELSIO_T1 is not set | ||
501 | # CONFIG_IXGB is not set | 534 | # CONFIG_IXGB is not set |
502 | # CONFIG_S2IO is not set | 535 | # CONFIG_S2IO is not set |
503 | 536 | ||
@@ -632,7 +665,6 @@ CONFIG_MAX_RAW_DEVS=256 | |||
632 | # I2C support | 665 | # I2C support |
633 | # | 666 | # |
634 | # CONFIG_I2C is not set | 667 | # CONFIG_I2C is not set |
635 | # CONFIG_I2C_SENSOR is not set | ||
636 | 668 | ||
637 | # | 669 | # |
638 | # Dallas's 1-wire bus | 670 | # Dallas's 1-wire bus |
@@ -643,12 +675,17 @@ CONFIG_MAX_RAW_DEVS=256 | |||
643 | # Hardware Monitoring support | 675 | # Hardware Monitoring support |
644 | # | 676 | # |
645 | # CONFIG_HWMON is not set | 677 | # CONFIG_HWMON is not set |
678 | # CONFIG_HWMON_VID is not set | ||
646 | 679 | ||
647 | # | 680 | # |
648 | # Misc devices | 681 | # Misc devices |
649 | # | 682 | # |
650 | 683 | ||
651 | # | 684 | # |
685 | # Multimedia Capabilities Port drivers | ||
686 | # | ||
687 | |||
688 | # | ||
652 | # Multimedia devices | 689 | # Multimedia devices |
653 | # | 690 | # |
654 | # CONFIG_VIDEO_DEV is not set | 691 | # CONFIG_VIDEO_DEV is not set |
@@ -722,16 +759,12 @@ CONFIG_JFS_SECURITY=y | |||
722 | # CONFIG_JFS_DEBUG is not set | 759 | # CONFIG_JFS_DEBUG is not set |
723 | # CONFIG_JFS_STATISTICS is not set | 760 | # CONFIG_JFS_STATISTICS is not set |
724 | CONFIG_FS_POSIX_ACL=y | 761 | CONFIG_FS_POSIX_ACL=y |
725 | |||
726 | # | ||
727 | # XFS support | ||
728 | # | ||
729 | CONFIG_XFS_FS=m | 762 | CONFIG_XFS_FS=m |
730 | CONFIG_XFS_EXPORT=y | 763 | CONFIG_XFS_EXPORT=y |
731 | # CONFIG_XFS_RT is not set | ||
732 | # CONFIG_XFS_QUOTA is not set | 764 | # CONFIG_XFS_QUOTA is not set |
733 | CONFIG_XFS_SECURITY=y | 765 | CONFIG_XFS_SECURITY=y |
734 | CONFIG_XFS_POSIX_ACL=y | 766 | CONFIG_XFS_POSIX_ACL=y |
767 | # CONFIG_XFS_RT is not set | ||
735 | # CONFIG_MINIX_FS is not set | 768 | # CONFIG_MINIX_FS is not set |
736 | # CONFIG_ROMFS_FS is not set | 769 | # CONFIG_ROMFS_FS is not set |
737 | CONFIG_INOTIFY=y | 770 | CONFIG_INOTIFY=y |
@@ -739,6 +772,7 @@ CONFIG_INOTIFY=y | |||
739 | CONFIG_DNOTIFY=y | 772 | CONFIG_DNOTIFY=y |
740 | CONFIG_AUTOFS_FS=m | 773 | CONFIG_AUTOFS_FS=m |
741 | # CONFIG_AUTOFS4_FS is not set | 774 | # CONFIG_AUTOFS4_FS is not set |
775 | # CONFIG_FUSE_FS is not set | ||
742 | 776 | ||
743 | # | 777 | # |
744 | # CD-ROM/DVD Filesystems | 778 | # CD-ROM/DVD Filesystems |
@@ -766,14 +800,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
766 | CONFIG_PROC_FS=y | 800 | CONFIG_PROC_FS=y |
767 | CONFIG_PROC_KCORE=y | 801 | CONFIG_PROC_KCORE=y |
768 | CONFIG_SYSFS=y | 802 | CONFIG_SYSFS=y |
769 | CONFIG_DEVPTS_FS_XATTR=y | ||
770 | CONFIG_DEVPTS_FS_SECURITY=y | ||
771 | CONFIG_TMPFS=y | 803 | CONFIG_TMPFS=y |
772 | CONFIG_TMPFS_XATTR=y | ||
773 | CONFIG_TMPFS_SECURITY=y | ||
774 | # CONFIG_HUGETLBFS is not set | 804 | # CONFIG_HUGETLBFS is not set |
775 | # CONFIG_HUGETLB_PAGE is not set | 805 | # CONFIG_HUGETLB_PAGE is not set |
776 | CONFIG_RAMFS=y | 806 | CONFIG_RAMFS=y |
807 | # CONFIG_RELAYFS_FS is not set | ||
777 | 808 | ||
778 | # | 809 | # |
779 | # Miscellaneous filesystems | 810 | # Miscellaneous filesystems |
@@ -824,6 +855,7 @@ CONFIG_CIFS_POSIX=y | |||
824 | # CONFIG_NCP_FS is not set | 855 | # CONFIG_NCP_FS is not set |
825 | # CONFIG_CODA_FS is not set | 856 | # CONFIG_CODA_FS is not set |
826 | # CONFIG_AFS_FS is not set | 857 | # CONFIG_AFS_FS is not set |
858 | # CONFIG_9P_FS is not set | ||
827 | 859 | ||
828 | # | 860 | # |
829 | # Partition Types | 861 | # Partition Types |
@@ -897,6 +929,7 @@ CONFIG_OPROFILE=y | |||
897 | CONFIG_DEBUG_KERNEL=y | 929 | CONFIG_DEBUG_KERNEL=y |
898 | CONFIG_MAGIC_SYSRQ=y | 930 | CONFIG_MAGIC_SYSRQ=y |
899 | CONFIG_LOG_BUF_SHIFT=17 | 931 | CONFIG_LOG_BUF_SHIFT=17 |
932 | CONFIG_DETECT_SOFTLOCKUP=y | ||
900 | # CONFIG_SCHEDSTATS is not set | 933 | # CONFIG_SCHEDSTATS is not set |
901 | # CONFIG_DEBUG_SLAB is not set | 934 | # CONFIG_DEBUG_SLAB is not set |
902 | # CONFIG_DEBUG_SPINLOCK is not set | 935 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -954,7 +987,12 @@ CONFIG_CRYPTO_TEST=m | |||
954 | # Library routines | 987 | # Library routines |
955 | # | 988 | # |
956 | CONFIG_CRC_CCITT=m | 989 | CONFIG_CRC_CCITT=m |
990 | # CONFIG_CRC16 is not set | ||
957 | CONFIG_CRC32=y | 991 | CONFIG_CRC32=y |
958 | CONFIG_LIBCRC32C=m | 992 | CONFIG_LIBCRC32C=m |
959 | CONFIG_ZLIB_INFLATE=y | 993 | CONFIG_ZLIB_INFLATE=y |
960 | CONFIG_ZLIB_DEFLATE=m | 994 | CONFIG_ZLIB_DEFLATE=m |
995 | CONFIG_TEXTSEARCH=y | ||
996 | CONFIG_TEXTSEARCH_KMP=m | ||
997 | CONFIG_TEXTSEARCH_BM=m | ||
998 | CONFIG_TEXTSEARCH_FSM=m | ||
diff --git a/arch/ppc64/configs/maple_defconfig b/arch/ppc64/configs/maple_defconfig index dd42892cd873..7b480f3d1406 100644 --- a/arch/ppc64/configs/maple_defconfig +++ b/arch/ppc64/configs/maple_defconfig | |||
@@ -1,17 +1,17 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6 | 3 | # Linux kernel version: 2.6.14-rc4 |
4 | # Mon Aug 8 14:17:04 2005 | 4 | # Thu Oct 20 08:31:24 2005 |
5 | # | 5 | # |
6 | CONFIG_64BIT=y | 6 | CONFIG_64BIT=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
9 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 9 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
10 | CONFIG_GENERIC_ISA_DMA=y | 10 | CONFIG_GENERIC_ISA_DMA=y |
11 | CONFIG_HAVE_DEC_LOCK=y | ||
12 | CONFIG_EARLY_PRINTK=y | 11 | CONFIG_EARLY_PRINTK=y |
13 | CONFIG_COMPAT=y | 12 | CONFIG_COMPAT=y |
14 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 13 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
14 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | ||
15 | CONFIG_FORCE_MAX_ZONEORDER=13 | 15 | CONFIG_FORCE_MAX_ZONEORDER=13 |
16 | 16 | ||
17 | # | 17 | # |
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
26 | # General setup | 26 | # General setup |
27 | # | 27 | # |
28 | CONFIG_LOCALVERSION="" | 28 | CONFIG_LOCALVERSION="" |
29 | CONFIG_LOCALVERSION_AUTO=y | ||
29 | CONFIG_SWAP=y | 30 | CONFIG_SWAP=y |
30 | CONFIG_SYSVIPC=y | 31 | CONFIG_SYSVIPC=y |
31 | CONFIG_POSIX_MQUEUE=y | 32 | CONFIG_POSIX_MQUEUE=y |
@@ -37,6 +38,7 @@ CONFIG_KOBJECT_UEVENT=y | |||
37 | CONFIG_IKCONFIG=y | 38 | CONFIG_IKCONFIG=y |
38 | CONFIG_IKCONFIG_PROC=y | 39 | CONFIG_IKCONFIG_PROC=y |
39 | # CONFIG_CPUSETS is not set | 40 | # CONFIG_CPUSETS is not set |
41 | CONFIG_INITRAMFS_SOURCE="" | ||
40 | # CONFIG_EMBEDDED is not set | 42 | # CONFIG_EMBEDDED is not set |
41 | CONFIG_KALLSYMS=y | 43 | CONFIG_KALLSYMS=y |
42 | CONFIG_KALLSYMS_ALL=y | 44 | CONFIG_KALLSYMS_ALL=y |
@@ -97,6 +99,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
97 | # CONFIG_SPARSEMEM_MANUAL is not set | 99 | # CONFIG_SPARSEMEM_MANUAL is not set |
98 | CONFIG_FLATMEM=y | 100 | CONFIG_FLATMEM=y |
99 | CONFIG_FLAT_NODE_MEM_MAP=y | 101 | CONFIG_FLAT_NODE_MEM_MAP=y |
102 | # CONFIG_SPARSEMEM_STATIC is not set | ||
100 | # CONFIG_NUMA is not set | 103 | # CONFIG_NUMA is not set |
101 | # CONFIG_SCHED_SMT is not set | 104 | # CONFIG_SCHED_SMT is not set |
102 | CONFIG_PREEMPT_NONE=y | 105 | CONFIG_PREEMPT_NONE=y |
@@ -109,17 +112,18 @@ CONFIG_HZ_250=y | |||
109 | CONFIG_HZ=250 | 112 | CONFIG_HZ=250 |
110 | CONFIG_GENERIC_HARDIRQS=y | 113 | CONFIG_GENERIC_HARDIRQS=y |
111 | CONFIG_SECCOMP=y | 114 | CONFIG_SECCOMP=y |
115 | CONFIG_BINFMT_ELF=y | ||
116 | # CONFIG_BINFMT_MISC is not set | ||
117 | CONFIG_PROC_DEVICETREE=y | ||
118 | # CONFIG_CMDLINE_BOOL is not set | ||
112 | CONFIG_ISA_DMA_API=y | 119 | CONFIG_ISA_DMA_API=y |
113 | 120 | ||
114 | # | 121 | # |
115 | # General setup | 122 | # Bus Options |
116 | # | 123 | # |
117 | CONFIG_PCI=y | 124 | CONFIG_PCI=y |
118 | CONFIG_PCI_DOMAINS=y | 125 | CONFIG_PCI_DOMAINS=y |
119 | CONFIG_BINFMT_ELF=y | ||
120 | # CONFIG_BINFMT_MISC is not set | ||
121 | CONFIG_PCI_LEGACY_PROC=y | 126 | CONFIG_PCI_LEGACY_PROC=y |
122 | CONFIG_PCI_NAMES=y | ||
123 | # CONFIG_PCI_DEBUG is not set | 127 | # CONFIG_PCI_DEBUG is not set |
124 | 128 | ||
125 | # | 129 | # |
@@ -131,8 +135,6 @@ CONFIG_PCI_NAMES=y | |||
131 | # PCI Hotplug Support | 135 | # PCI Hotplug Support |
132 | # | 136 | # |
133 | # CONFIG_HOTPLUG_PCI is not set | 137 | # CONFIG_HOTPLUG_PCI is not set |
134 | CONFIG_PROC_DEVICETREE=y | ||
135 | # CONFIG_CMDLINE_BOOL is not set | ||
136 | 138 | ||
137 | # | 139 | # |
138 | # Networking | 140 | # Networking |
@@ -163,14 +165,19 @@ CONFIG_IP_PNP_DHCP=y | |||
163 | # CONFIG_INET_ESP is not set | 165 | # CONFIG_INET_ESP is not set |
164 | # CONFIG_INET_IPCOMP is not set | 166 | # CONFIG_INET_IPCOMP is not set |
165 | # CONFIG_INET_TUNNEL is not set | 167 | # CONFIG_INET_TUNNEL is not set |
166 | CONFIG_IP_TCPDIAG=y | 168 | CONFIG_INET_DIAG=y |
167 | # CONFIG_IP_TCPDIAG_IPV6 is not set | 169 | CONFIG_INET_TCP_DIAG=y |
168 | # CONFIG_TCP_CONG_ADVANCED is not set | 170 | # CONFIG_TCP_CONG_ADVANCED is not set |
169 | CONFIG_TCP_CONG_BIC=y | 171 | CONFIG_TCP_CONG_BIC=y |
170 | # CONFIG_IPV6 is not set | 172 | # CONFIG_IPV6 is not set |
171 | # CONFIG_NETFILTER is not set | 173 | # CONFIG_NETFILTER is not set |
172 | 174 | ||
173 | # | 175 | # |
176 | # DCCP Configuration (EXPERIMENTAL) | ||
177 | # | ||
178 | # CONFIG_IP_DCCP is not set | ||
179 | |||
180 | # | ||
174 | # SCTP Configuration (EXPERIMENTAL) | 181 | # SCTP Configuration (EXPERIMENTAL) |
175 | # | 182 | # |
176 | # CONFIG_IP_SCTP is not set | 183 | # CONFIG_IP_SCTP is not set |
@@ -196,6 +203,7 @@ CONFIG_TCP_CONG_BIC=y | |||
196 | # CONFIG_HAMRADIO is not set | 203 | # CONFIG_HAMRADIO is not set |
197 | # CONFIG_IRDA is not set | 204 | # CONFIG_IRDA is not set |
198 | # CONFIG_BT is not set | 205 | # CONFIG_BT is not set |
206 | # CONFIG_IEEE80211 is not set | ||
199 | 207 | ||
200 | # | 208 | # |
201 | # Device Drivers | 209 | # Device Drivers |
@@ -210,6 +218,11 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
210 | # CONFIG_DEBUG_DRIVER is not set | 218 | # CONFIG_DEBUG_DRIVER is not set |
211 | 219 | ||
212 | # | 220 | # |
221 | # Connector - unified userspace <-> kernelspace linker | ||
222 | # | ||
223 | # CONFIG_CONNECTOR is not set | ||
224 | |||
225 | # | ||
213 | # Memory Technology Devices (MTD) | 226 | # Memory Technology Devices (MTD) |
214 | # | 227 | # |
215 | # CONFIG_MTD is not set | 228 | # CONFIG_MTD is not set |
@@ -240,7 +253,6 @@ CONFIG_BLK_DEV_RAM=y | |||
240 | CONFIG_BLK_DEV_RAM_COUNT=16 | 253 | CONFIG_BLK_DEV_RAM_COUNT=16 |
241 | CONFIG_BLK_DEV_RAM_SIZE=8192 | 254 | CONFIG_BLK_DEV_RAM_SIZE=8192 |
242 | # CONFIG_BLK_DEV_INITRD is not set | 255 | # CONFIG_BLK_DEV_INITRD is not set |
243 | CONFIG_INITRAMFS_SOURCE="" | ||
244 | # CONFIG_CDROM_PKTCDVD is not set | 256 | # CONFIG_CDROM_PKTCDVD is not set |
245 | 257 | ||
246 | # | 258 | # |
@@ -313,6 +325,7 @@ CONFIG_IDEDMA_AUTO=y | |||
313 | # | 325 | # |
314 | # SCSI device support | 326 | # SCSI device support |
315 | # | 327 | # |
328 | # CONFIG_RAID_ATTRS is not set | ||
316 | # CONFIG_SCSI is not set | 329 | # CONFIG_SCSI is not set |
317 | 330 | ||
318 | # | 331 | # |
@@ -354,12 +367,18 @@ CONFIG_NETDEVICES=y | |||
354 | # CONFIG_ARCNET is not set | 367 | # CONFIG_ARCNET is not set |
355 | 368 | ||
356 | # | 369 | # |
370 | # PHY device support | ||
371 | # | ||
372 | # CONFIG_PHYLIB is not set | ||
373 | |||
374 | # | ||
357 | # Ethernet (10 or 100Mbit) | 375 | # Ethernet (10 or 100Mbit) |
358 | # | 376 | # |
359 | CONFIG_NET_ETHERNET=y | 377 | CONFIG_NET_ETHERNET=y |
360 | CONFIG_MII=y | 378 | CONFIG_MII=y |
361 | # CONFIG_HAPPYMEAL is not set | 379 | # CONFIG_HAPPYMEAL is not set |
362 | # CONFIG_SUNGEM is not set | 380 | # CONFIG_SUNGEM is not set |
381 | # CONFIG_CASSINI is not set | ||
363 | # CONFIG_NET_VENDOR_3COM is not set | 382 | # CONFIG_NET_VENDOR_3COM is not set |
364 | 383 | ||
365 | # | 384 | # |
@@ -398,6 +417,7 @@ CONFIG_E1000=y | |||
398 | # CONFIG_HAMACHI is not set | 417 | # CONFIG_HAMACHI is not set |
399 | # CONFIG_YELLOWFIN is not set | 418 | # CONFIG_YELLOWFIN is not set |
400 | # CONFIG_R8169 is not set | 419 | # CONFIG_R8169 is not set |
420 | # CONFIG_SIS190 is not set | ||
401 | # CONFIG_SKGE is not set | 421 | # CONFIG_SKGE is not set |
402 | # CONFIG_SK98LIN is not set | 422 | # CONFIG_SK98LIN is not set |
403 | # CONFIG_VIA_VELOCITY is not set | 423 | # CONFIG_VIA_VELOCITY is not set |
@@ -408,6 +428,7 @@ CONFIG_E1000=y | |||
408 | # | 428 | # |
409 | # Ethernet (10000 Mbit) | 429 | # Ethernet (10000 Mbit) |
410 | # | 430 | # |
431 | # CONFIG_CHELSIO_T1 is not set | ||
411 | # CONFIG_IXGB is not set | 432 | # CONFIG_IXGB is not set |
412 | # CONFIG_S2IO is not set | 433 | # CONFIG_S2IO is not set |
413 | 434 | ||
@@ -553,7 +574,6 @@ CONFIG_I2C_AMD8111=y | |||
553 | # CONFIG_I2C_I801 is not set | 574 | # CONFIG_I2C_I801 is not set |
554 | # CONFIG_I2C_I810 is not set | 575 | # CONFIG_I2C_I810 is not set |
555 | # CONFIG_I2C_PIIX4 is not set | 576 | # CONFIG_I2C_PIIX4 is not set |
556 | # CONFIG_I2C_ISA is not set | ||
557 | # CONFIG_I2C_NFORCE2 is not set | 577 | # CONFIG_I2C_NFORCE2 is not set |
558 | # CONFIG_I2C_PARPORT_LIGHT is not set | 578 | # CONFIG_I2C_PARPORT_LIGHT is not set |
559 | # CONFIG_I2C_PROSAVAGE is not set | 579 | # CONFIG_I2C_PROSAVAGE is not set |
@@ -567,7 +587,6 @@ CONFIG_I2C_AMD8111=y | |||
567 | # CONFIG_I2C_VIAPRO is not set | 587 | # CONFIG_I2C_VIAPRO is not set |
568 | # CONFIG_I2C_VOODOO3 is not set | 588 | # CONFIG_I2C_VOODOO3 is not set |
569 | # CONFIG_I2C_PCA_ISA is not set | 589 | # CONFIG_I2C_PCA_ISA is not set |
570 | # CONFIG_I2C_SENSOR is not set | ||
571 | 590 | ||
572 | # | 591 | # |
573 | # Miscellaneous I2C Chip support | 592 | # Miscellaneous I2C Chip support |
@@ -594,12 +613,17 @@ CONFIG_I2C_AMD8111=y | |||
594 | # Hardware Monitoring support | 613 | # Hardware Monitoring support |
595 | # | 614 | # |
596 | # CONFIG_HWMON is not set | 615 | # CONFIG_HWMON is not set |
616 | # CONFIG_HWMON_VID is not set | ||
597 | 617 | ||
598 | # | 618 | # |
599 | # Misc devices | 619 | # Misc devices |
600 | # | 620 | # |
601 | 621 | ||
602 | # | 622 | # |
623 | # Multimedia Capabilities Port drivers | ||
624 | # | ||
625 | |||
626 | # | ||
603 | # Multimedia devices | 627 | # Multimedia devices |
604 | # | 628 | # |
605 | # CONFIG_VIDEO_DEV is not set | 629 | # CONFIG_VIDEO_DEV is not set |
@@ -681,9 +705,11 @@ CONFIG_USB_HIDINPUT=y | |||
681 | # CONFIG_USB_MTOUCH is not set | 705 | # CONFIG_USB_MTOUCH is not set |
682 | # CONFIG_USB_ITMTOUCH is not set | 706 | # CONFIG_USB_ITMTOUCH is not set |
683 | # CONFIG_USB_EGALAX is not set | 707 | # CONFIG_USB_EGALAX is not set |
708 | # CONFIG_USB_YEALINK is not set | ||
684 | # CONFIG_USB_XPAD is not set | 709 | # CONFIG_USB_XPAD is not set |
685 | # CONFIG_USB_ATI_REMOTE is not set | 710 | # CONFIG_USB_ATI_REMOTE is not set |
686 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 711 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
712 | # CONFIG_USB_APPLETOUCH is not set | ||
687 | 713 | ||
688 | # | 714 | # |
689 | # USB Imaging devices | 715 | # USB Imaging devices |
@@ -814,10 +840,6 @@ CONFIG_JBD=y | |||
814 | # CONFIG_REISERFS_FS is not set | 840 | # CONFIG_REISERFS_FS is not set |
815 | # CONFIG_JFS_FS is not set | 841 | # CONFIG_JFS_FS is not set |
816 | CONFIG_FS_POSIX_ACL=y | 842 | CONFIG_FS_POSIX_ACL=y |
817 | |||
818 | # | ||
819 | # XFS support | ||
820 | # | ||
821 | # CONFIG_XFS_FS is not set | 843 | # CONFIG_XFS_FS is not set |
822 | # CONFIG_MINIX_FS is not set | 844 | # CONFIG_MINIX_FS is not set |
823 | # CONFIG_ROMFS_FS is not set | 845 | # CONFIG_ROMFS_FS is not set |
@@ -826,6 +848,7 @@ CONFIG_INOTIFY=y | |||
826 | CONFIG_DNOTIFY=y | 848 | CONFIG_DNOTIFY=y |
827 | # CONFIG_AUTOFS_FS is not set | 849 | # CONFIG_AUTOFS_FS is not set |
828 | # CONFIG_AUTOFS4_FS is not set | 850 | # CONFIG_AUTOFS4_FS is not set |
851 | # CONFIG_FUSE_FS is not set | ||
829 | 852 | ||
830 | # | 853 | # |
831 | # CD-ROM/DVD Filesystems | 854 | # CD-ROM/DVD Filesystems |
@@ -849,14 +872,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
849 | CONFIG_PROC_FS=y | 872 | CONFIG_PROC_FS=y |
850 | CONFIG_PROC_KCORE=y | 873 | CONFIG_PROC_KCORE=y |
851 | CONFIG_SYSFS=y | 874 | CONFIG_SYSFS=y |
852 | CONFIG_DEVPTS_FS_XATTR=y | ||
853 | # CONFIG_DEVPTS_FS_SECURITY is not set | ||
854 | CONFIG_TMPFS=y | 875 | CONFIG_TMPFS=y |
855 | CONFIG_TMPFS_XATTR=y | ||
856 | CONFIG_TMPFS_SECURITY=y | ||
857 | CONFIG_HUGETLBFS=y | 876 | CONFIG_HUGETLBFS=y |
858 | CONFIG_HUGETLB_PAGE=y | 877 | CONFIG_HUGETLB_PAGE=y |
859 | CONFIG_RAMFS=y | 878 | CONFIG_RAMFS=y |
879 | # CONFIG_RELAYFS_FS is not set | ||
860 | 880 | ||
861 | # | 881 | # |
862 | # Miscellaneous filesystems | 882 | # Miscellaneous filesystems |
@@ -898,6 +918,7 @@ CONFIG_RPCSEC_GSS_KRB5=y | |||
898 | # CONFIG_NCP_FS is not set | 918 | # CONFIG_NCP_FS is not set |
899 | # CONFIG_CODA_FS is not set | 919 | # CONFIG_CODA_FS is not set |
900 | # CONFIG_AFS_FS is not set | 920 | # CONFIG_AFS_FS is not set |
921 | # CONFIG_9P_FS is not set | ||
901 | 922 | ||
902 | # | 923 | # |
903 | # Partition Types | 924 | # Partition Types |
@@ -975,6 +996,7 @@ CONFIG_NLS_UTF8=y | |||
975 | CONFIG_DEBUG_KERNEL=y | 996 | CONFIG_DEBUG_KERNEL=y |
976 | CONFIG_MAGIC_SYSRQ=y | 997 | CONFIG_MAGIC_SYSRQ=y |
977 | CONFIG_LOG_BUF_SHIFT=17 | 998 | CONFIG_LOG_BUF_SHIFT=17 |
999 | CONFIG_DETECT_SOFTLOCKUP=y | ||
978 | # CONFIG_SCHEDSTATS is not set | 1000 | # CONFIG_SCHEDSTATS is not set |
979 | CONFIG_DEBUG_SLAB=y | 1001 | CONFIG_DEBUG_SLAB=y |
980 | # CONFIG_DEBUG_SPINLOCK is not set | 1002 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -1034,6 +1056,7 @@ CONFIG_CRYPTO_DES=y | |||
1034 | # Library routines | 1056 | # Library routines |
1035 | # | 1057 | # |
1036 | CONFIG_CRC_CCITT=y | 1058 | CONFIG_CRC_CCITT=y |
1059 | # CONFIG_CRC16 is not set | ||
1037 | CONFIG_CRC32=y | 1060 | CONFIG_CRC32=y |
1038 | # CONFIG_LIBCRC32C is not set | 1061 | # CONFIG_LIBCRC32C is not set |
1039 | CONFIG_ZLIB_INFLATE=y | 1062 | CONFIG_ZLIB_INFLATE=y |
diff --git a/arch/ppc64/configs/pSeries_defconfig b/arch/ppc64/configs/pSeries_defconfig index 29f7b80b0efc..9f09dff9e11a 100644 --- a/arch/ppc64/configs/pSeries_defconfig +++ b/arch/ppc64/configs/pSeries_defconfig | |||
@@ -1,17 +1,17 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6 | 3 | # Linux kernel version: 2.6.14-rc4 |
4 | # Mon Aug 8 14:17:07 2005 | 4 | # Thu Oct 20 08:32:17 2005 |
5 | # | 5 | # |
6 | CONFIG_64BIT=y | 6 | CONFIG_64BIT=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
9 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 9 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
10 | CONFIG_GENERIC_ISA_DMA=y | 10 | CONFIG_GENERIC_ISA_DMA=y |
11 | CONFIG_HAVE_DEC_LOCK=y | ||
12 | CONFIG_EARLY_PRINTK=y | 11 | CONFIG_EARLY_PRINTK=y |
13 | CONFIG_COMPAT=y | 12 | CONFIG_COMPAT=y |
14 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 13 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
14 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | ||
15 | CONFIG_FORCE_MAX_ZONEORDER=13 | 15 | CONFIG_FORCE_MAX_ZONEORDER=13 |
16 | 16 | ||
17 | # | 17 | # |
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
26 | # General setup | 26 | # General setup |
27 | # | 27 | # |
28 | CONFIG_LOCALVERSION="" | 28 | CONFIG_LOCALVERSION="" |
29 | CONFIG_LOCALVERSION_AUTO=y | ||
29 | CONFIG_SWAP=y | 30 | CONFIG_SWAP=y |
30 | CONFIG_SYSVIPC=y | 31 | CONFIG_SYSVIPC=y |
31 | CONFIG_POSIX_MQUEUE=y | 32 | CONFIG_POSIX_MQUEUE=y |
@@ -38,6 +39,7 @@ CONFIG_KOBJECT_UEVENT=y | |||
38 | CONFIG_IKCONFIG=y | 39 | CONFIG_IKCONFIG=y |
39 | CONFIG_IKCONFIG_PROC=y | 40 | CONFIG_IKCONFIG_PROC=y |
40 | CONFIG_CPUSETS=y | 41 | CONFIG_CPUSETS=y |
42 | CONFIG_INITRAMFS_SOURCE="" | ||
41 | # CONFIG_EMBEDDED is not set | 43 | # CONFIG_EMBEDDED is not set |
42 | CONFIG_KALLSYMS=y | 44 | CONFIG_KALLSYMS=y |
43 | CONFIG_KALLSYMS_ALL=y | 45 | CONFIG_KALLSYMS_ALL=y |
@@ -104,6 +106,7 @@ CONFIG_DISCONTIGMEM_MANUAL=y | |||
104 | CONFIG_DISCONTIGMEM=y | 106 | CONFIG_DISCONTIGMEM=y |
105 | CONFIG_FLAT_NODE_MEM_MAP=y | 107 | CONFIG_FLAT_NODE_MEM_MAP=y |
106 | CONFIG_NEED_MULTIPLE_NODES=y | 108 | CONFIG_NEED_MULTIPLE_NODES=y |
109 | # CONFIG_SPARSEMEM_STATIC is not set | ||
107 | CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y | 110 | CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y |
108 | CONFIG_NODES_SPAN_OTHER_NODES=y | 111 | CONFIG_NODES_SPAN_OTHER_NODES=y |
109 | CONFIG_NUMA=y | 112 | CONFIG_NUMA=y |
@@ -124,19 +127,20 @@ CONFIG_RTAS_FLASH=m | |||
124 | CONFIG_SCANLOG=m | 127 | CONFIG_SCANLOG=m |
125 | CONFIG_LPARCFG=y | 128 | CONFIG_LPARCFG=y |
126 | CONFIG_SECCOMP=y | 129 | CONFIG_SECCOMP=y |
130 | CONFIG_BINFMT_ELF=y | ||
131 | # CONFIG_BINFMT_MISC is not set | ||
132 | CONFIG_HOTPLUG_CPU=y | ||
133 | CONFIG_PROC_DEVICETREE=y | ||
134 | # CONFIG_CMDLINE_BOOL is not set | ||
127 | CONFIG_ISA_DMA_API=y | 135 | CONFIG_ISA_DMA_API=y |
128 | 136 | ||
129 | # | 137 | # |
130 | # General setup | 138 | # Bus Options |
131 | # | 139 | # |
132 | CONFIG_PCI=y | 140 | CONFIG_PCI=y |
133 | CONFIG_PCI_DOMAINS=y | 141 | CONFIG_PCI_DOMAINS=y |
134 | CONFIG_BINFMT_ELF=y | ||
135 | # CONFIG_BINFMT_MISC is not set | ||
136 | CONFIG_PCI_LEGACY_PROC=y | 142 | CONFIG_PCI_LEGACY_PROC=y |
137 | CONFIG_PCI_NAMES=y | ||
138 | # CONFIG_PCI_DEBUG is not set | 143 | # CONFIG_PCI_DEBUG is not set |
139 | CONFIG_HOTPLUG_CPU=y | ||
140 | 144 | ||
141 | # | 145 | # |
142 | # PCCARD (PCMCIA/CardBus) support | 146 | # PCCARD (PCMCIA/CardBus) support |
@@ -152,8 +156,6 @@ CONFIG_HOTPLUG_PCI=m | |||
152 | # CONFIG_HOTPLUG_PCI_SHPC is not set | 156 | # CONFIG_HOTPLUG_PCI_SHPC is not set |
153 | CONFIG_HOTPLUG_PCI_RPA=m | 157 | CONFIG_HOTPLUG_PCI_RPA=m |
154 | CONFIG_HOTPLUG_PCI_RPA_DLPAR=m | 158 | CONFIG_HOTPLUG_PCI_RPA_DLPAR=m |
155 | CONFIG_PROC_DEVICETREE=y | ||
156 | # CONFIG_CMDLINE_BOOL is not set | ||
157 | 159 | ||
158 | # | 160 | # |
159 | # Networking | 161 | # Networking |
@@ -183,8 +185,8 @@ CONFIG_INET_AH=m | |||
183 | CONFIG_INET_ESP=m | 185 | CONFIG_INET_ESP=m |
184 | CONFIG_INET_IPCOMP=m | 186 | CONFIG_INET_IPCOMP=m |
185 | CONFIG_INET_TUNNEL=y | 187 | CONFIG_INET_TUNNEL=y |
186 | CONFIG_IP_TCPDIAG=m | 188 | CONFIG_INET_DIAG=y |
187 | # CONFIG_IP_TCPDIAG_IPV6 is not set | 189 | CONFIG_INET_TCP_DIAG=y |
188 | # CONFIG_TCP_CONG_ADVANCED is not set | 190 | # CONFIG_TCP_CONG_ADVANCED is not set |
189 | CONFIG_TCP_CONG_BIC=y | 191 | CONFIG_TCP_CONG_BIC=y |
190 | 192 | ||
@@ -195,6 +197,9 @@ CONFIG_TCP_CONG_BIC=y | |||
195 | # CONFIG_IPV6 is not set | 197 | # CONFIG_IPV6 is not set |
196 | CONFIG_NETFILTER=y | 198 | CONFIG_NETFILTER=y |
197 | # CONFIG_NETFILTER_DEBUG is not set | 199 | # CONFIG_NETFILTER_DEBUG is not set |
200 | CONFIG_NETFILTER_NETLINK=y | ||
201 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
202 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
198 | 203 | ||
199 | # | 204 | # |
200 | # IP: Netfilter Configuration | 205 | # IP: Netfilter Configuration |
@@ -202,11 +207,15 @@ CONFIG_NETFILTER=y | |||
202 | CONFIG_IP_NF_CONNTRACK=m | 207 | CONFIG_IP_NF_CONNTRACK=m |
203 | CONFIG_IP_NF_CT_ACCT=y | 208 | CONFIG_IP_NF_CT_ACCT=y |
204 | CONFIG_IP_NF_CONNTRACK_MARK=y | 209 | CONFIG_IP_NF_CONNTRACK_MARK=y |
210 | CONFIG_IP_NF_CONNTRACK_EVENTS=y | ||
211 | CONFIG_IP_NF_CONNTRACK_NETLINK=m | ||
205 | CONFIG_IP_NF_CT_PROTO_SCTP=m | 212 | CONFIG_IP_NF_CT_PROTO_SCTP=m |
206 | CONFIG_IP_NF_FTP=m | 213 | CONFIG_IP_NF_FTP=m |
207 | CONFIG_IP_NF_IRC=m | 214 | CONFIG_IP_NF_IRC=m |
215 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
208 | CONFIG_IP_NF_TFTP=m | 216 | CONFIG_IP_NF_TFTP=m |
209 | CONFIG_IP_NF_AMANDA=m | 217 | CONFIG_IP_NF_AMANDA=m |
218 | # CONFIG_IP_NF_PPTP is not set | ||
210 | CONFIG_IP_NF_QUEUE=m | 219 | CONFIG_IP_NF_QUEUE=m |
211 | CONFIG_IP_NF_IPTABLES=m | 220 | CONFIG_IP_NF_IPTABLES=m |
212 | CONFIG_IP_NF_MATCH_LIMIT=m | 221 | CONFIG_IP_NF_MATCH_LIMIT=m |
@@ -230,14 +239,18 @@ CONFIG_IP_NF_MATCH_OWNER=m | |||
230 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | 239 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
231 | CONFIG_IP_NF_MATCH_REALM=m | 240 | CONFIG_IP_NF_MATCH_REALM=m |
232 | CONFIG_IP_NF_MATCH_SCTP=m | 241 | CONFIG_IP_NF_MATCH_SCTP=m |
242 | # CONFIG_IP_NF_MATCH_DCCP is not set | ||
233 | CONFIG_IP_NF_MATCH_COMMENT=m | 243 | CONFIG_IP_NF_MATCH_COMMENT=m |
234 | CONFIG_IP_NF_MATCH_CONNMARK=m | 244 | CONFIG_IP_NF_MATCH_CONNMARK=m |
245 | CONFIG_IP_NF_MATCH_CONNBYTES=m | ||
235 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | 246 | CONFIG_IP_NF_MATCH_HASHLIMIT=m |
247 | CONFIG_IP_NF_MATCH_STRING=m | ||
236 | CONFIG_IP_NF_FILTER=m | 248 | CONFIG_IP_NF_FILTER=m |
237 | CONFIG_IP_NF_TARGET_REJECT=m | 249 | CONFIG_IP_NF_TARGET_REJECT=m |
238 | CONFIG_IP_NF_TARGET_LOG=m | 250 | CONFIG_IP_NF_TARGET_LOG=m |
239 | CONFIG_IP_NF_TARGET_ULOG=m | 251 | CONFIG_IP_NF_TARGET_ULOG=m |
240 | CONFIG_IP_NF_TARGET_TCPMSS=m | 252 | CONFIG_IP_NF_TARGET_TCPMSS=m |
253 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
241 | CONFIG_IP_NF_NAT=m | 254 | CONFIG_IP_NF_NAT=m |
242 | CONFIG_IP_NF_NAT_NEEDED=y | 255 | CONFIG_IP_NF_NAT_NEEDED=y |
243 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 256 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
@@ -255,6 +268,7 @@ CONFIG_IP_NF_TARGET_ECN=m | |||
255 | CONFIG_IP_NF_TARGET_DSCP=m | 268 | CONFIG_IP_NF_TARGET_DSCP=m |
256 | CONFIG_IP_NF_TARGET_MARK=m | 269 | CONFIG_IP_NF_TARGET_MARK=m |
257 | CONFIG_IP_NF_TARGET_CLASSIFY=m | 270 | CONFIG_IP_NF_TARGET_CLASSIFY=m |
271 | CONFIG_IP_NF_TARGET_TTL=m | ||
258 | CONFIG_IP_NF_TARGET_CONNMARK=m | 272 | CONFIG_IP_NF_TARGET_CONNMARK=m |
259 | CONFIG_IP_NF_TARGET_CLUSTERIP=m | 273 | CONFIG_IP_NF_TARGET_CLUSTERIP=m |
260 | CONFIG_IP_NF_RAW=m | 274 | CONFIG_IP_NF_RAW=m |
@@ -264,6 +278,11 @@ CONFIG_IP_NF_ARPFILTER=m | |||
264 | CONFIG_IP_NF_ARP_MANGLE=m | 278 | CONFIG_IP_NF_ARP_MANGLE=m |
265 | 279 | ||
266 | # | 280 | # |
281 | # DCCP Configuration (EXPERIMENTAL) | ||
282 | # | ||
283 | # CONFIG_IP_DCCP is not set | ||
284 | |||
285 | # | ||
267 | # SCTP Configuration (EXPERIMENTAL) | 286 | # SCTP Configuration (EXPERIMENTAL) |
268 | # | 287 | # |
269 | # CONFIG_IP_SCTP is not set | 288 | # CONFIG_IP_SCTP is not set |
@@ -290,6 +309,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
290 | # CONFIG_HAMRADIO is not set | 309 | # CONFIG_HAMRADIO is not set |
291 | # CONFIG_IRDA is not set | 310 | # CONFIG_IRDA is not set |
292 | # CONFIG_BT is not set | 311 | # CONFIG_BT is not set |
312 | # CONFIG_IEEE80211 is not set | ||
293 | 313 | ||
294 | # | 314 | # |
295 | # Device Drivers | 315 | # Device Drivers |
@@ -304,6 +324,11 @@ CONFIG_FW_LOADER=y | |||
304 | # CONFIG_DEBUG_DRIVER is not set | 324 | # CONFIG_DEBUG_DRIVER is not set |
305 | 325 | ||
306 | # | 326 | # |
327 | # Connector - unified userspace <-> kernelspace linker | ||
328 | # | ||
329 | # CONFIG_CONNECTOR is not set | ||
330 | |||
331 | # | ||
307 | # Memory Technology Devices (MTD) | 332 | # Memory Technology Devices (MTD) |
308 | # | 333 | # |
309 | # CONFIG_MTD is not set | 334 | # CONFIG_MTD is not set |
@@ -342,7 +367,6 @@ CONFIG_BLK_DEV_RAM=y | |||
342 | CONFIG_BLK_DEV_RAM_COUNT=16 | 367 | CONFIG_BLK_DEV_RAM_COUNT=16 |
343 | CONFIG_BLK_DEV_RAM_SIZE=65536 | 368 | CONFIG_BLK_DEV_RAM_SIZE=65536 |
344 | CONFIG_BLK_DEV_INITRD=y | 369 | CONFIG_BLK_DEV_INITRD=y |
345 | CONFIG_INITRAMFS_SOURCE="" | ||
346 | # CONFIG_CDROM_PKTCDVD is not set | 370 | # CONFIG_CDROM_PKTCDVD is not set |
347 | 371 | ||
348 | # | 372 | # |
@@ -416,6 +440,7 @@ CONFIG_IDEDMA_AUTO=y | |||
416 | # | 440 | # |
417 | # SCSI device support | 441 | # SCSI device support |
418 | # | 442 | # |
443 | # CONFIG_RAID_ATTRS is not set | ||
419 | CONFIG_SCSI=y | 444 | CONFIG_SCSI=y |
420 | CONFIG_SCSI_PROC_FS=y | 445 | CONFIG_SCSI_PROC_FS=y |
421 | 446 | ||
@@ -443,6 +468,7 @@ CONFIG_SCSI_CONSTANTS=y | |||
443 | CONFIG_SCSI_SPI_ATTRS=y | 468 | CONFIG_SCSI_SPI_ATTRS=y |
444 | CONFIG_SCSI_FC_ATTRS=y | 469 | CONFIG_SCSI_FC_ATTRS=y |
445 | CONFIG_SCSI_ISCSI_ATTRS=m | 470 | CONFIG_SCSI_ISCSI_ATTRS=m |
471 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
446 | 472 | ||
447 | # | 473 | # |
448 | # SCSI low-level drivers | 474 | # SCSI low-level drivers |
@@ -456,6 +482,7 @@ CONFIG_SCSI_ISCSI_ATTRS=m | |||
456 | # CONFIG_SCSI_AIC79XX is not set | 482 | # CONFIG_SCSI_AIC79XX is not set |
457 | # CONFIG_MEGARAID_NEWGEN is not set | 483 | # CONFIG_MEGARAID_NEWGEN is not set |
458 | # CONFIG_MEGARAID_LEGACY is not set | 484 | # CONFIG_MEGARAID_LEGACY is not set |
485 | # CONFIG_MEGARAID_SAS is not set | ||
459 | # CONFIG_SCSI_SATA is not set | 486 | # CONFIG_SCSI_SATA is not set |
460 | # CONFIG_SCSI_BUSLOGIC is not set | 487 | # CONFIG_SCSI_BUSLOGIC is not set |
461 | # CONFIG_SCSI_DMX3191D is not set | 488 | # CONFIG_SCSI_DMX3191D is not set |
@@ -517,6 +544,7 @@ CONFIG_DM_MULTIPATH_EMC=m | |||
517 | # CONFIG_FUSION is not set | 544 | # CONFIG_FUSION is not set |
518 | # CONFIG_FUSION_SPI is not set | 545 | # CONFIG_FUSION_SPI is not set |
519 | # CONFIG_FUSION_FC is not set | 546 | # CONFIG_FUSION_FC is not set |
547 | # CONFIG_FUSION_SAS is not set | ||
520 | 548 | ||
521 | # | 549 | # |
522 | # IEEE 1394 (FireWire) support | 550 | # IEEE 1394 (FireWire) support |
@@ -547,12 +575,18 @@ CONFIG_TUN=m | |||
547 | # CONFIG_ARCNET is not set | 575 | # CONFIG_ARCNET is not set |
548 | 576 | ||
549 | # | 577 | # |
578 | # PHY device support | ||
579 | # | ||
580 | # CONFIG_PHYLIB is not set | ||
581 | |||
582 | # | ||
550 | # Ethernet (10 or 100Mbit) | 583 | # Ethernet (10 or 100Mbit) |
551 | # | 584 | # |
552 | CONFIG_NET_ETHERNET=y | 585 | CONFIG_NET_ETHERNET=y |
553 | CONFIG_MII=y | 586 | CONFIG_MII=y |
554 | # CONFIG_HAPPYMEAL is not set | 587 | # CONFIG_HAPPYMEAL is not set |
555 | # CONFIG_SUNGEM is not set | 588 | # CONFIG_SUNGEM is not set |
589 | # CONFIG_CASSINI is not set | ||
556 | CONFIG_NET_VENDOR_3COM=y | 590 | CONFIG_NET_VENDOR_3COM=y |
557 | CONFIG_VORTEX=y | 591 | CONFIG_VORTEX=y |
558 | # CONFIG_TYPHOON is not set | 592 | # CONFIG_TYPHOON is not set |
@@ -581,6 +615,7 @@ CONFIG_E100=y | |||
581 | # CONFIG_EPIC100 is not set | 615 | # CONFIG_EPIC100 is not set |
582 | # CONFIG_SUNDANCE is not set | 616 | # CONFIG_SUNDANCE is not set |
583 | # CONFIG_VIA_RHINE is not set | 617 | # CONFIG_VIA_RHINE is not set |
618 | # CONFIG_NET_POCKET is not set | ||
584 | 619 | ||
585 | # | 620 | # |
586 | # Ethernet (1000 Mbit) | 621 | # Ethernet (1000 Mbit) |
@@ -594,6 +629,7 @@ CONFIG_E1000=y | |||
594 | # CONFIG_HAMACHI is not set | 629 | # CONFIG_HAMACHI is not set |
595 | # CONFIG_YELLOWFIN is not set | 630 | # CONFIG_YELLOWFIN is not set |
596 | # CONFIG_R8169 is not set | 631 | # CONFIG_R8169 is not set |
632 | # CONFIG_SIS190 is not set | ||
597 | # CONFIG_SKGE is not set | 633 | # CONFIG_SKGE is not set |
598 | # CONFIG_SK98LIN is not set | 634 | # CONFIG_SK98LIN is not set |
599 | # CONFIG_VIA_VELOCITY is not set | 635 | # CONFIG_VIA_VELOCITY is not set |
@@ -604,6 +640,7 @@ CONFIG_TIGON3=y | |||
604 | # | 640 | # |
605 | # Ethernet (10000 Mbit) | 641 | # Ethernet (10000 Mbit) |
606 | # | 642 | # |
643 | # CONFIG_CHELSIO_T1 is not set | ||
607 | CONFIG_IXGB=m | 644 | CONFIG_IXGB=m |
608 | # CONFIG_IXGB_NAPI is not set | 645 | # CONFIG_IXGB_NAPI is not set |
609 | CONFIG_S2IO=m | 646 | CONFIG_S2IO=m |
@@ -789,7 +826,6 @@ CONFIG_I2C_ALGOBIT=y | |||
789 | # CONFIG_I2C_I801 is not set | 826 | # CONFIG_I2C_I801 is not set |
790 | # CONFIG_I2C_I810 is not set | 827 | # CONFIG_I2C_I810 is not set |
791 | # CONFIG_I2C_PIIX4 is not set | 828 | # CONFIG_I2C_PIIX4 is not set |
792 | # CONFIG_I2C_ISA is not set | ||
793 | # CONFIG_I2C_NFORCE2 is not set | 829 | # CONFIG_I2C_NFORCE2 is not set |
794 | # CONFIG_I2C_PARPORT is not set | 830 | # CONFIG_I2C_PARPORT is not set |
795 | # CONFIG_I2C_PARPORT_LIGHT is not set | 831 | # CONFIG_I2C_PARPORT_LIGHT is not set |
@@ -804,7 +840,6 @@ CONFIG_I2C_ALGOBIT=y | |||
804 | # CONFIG_I2C_VIAPRO is not set | 840 | # CONFIG_I2C_VIAPRO is not set |
805 | # CONFIG_I2C_VOODOO3 is not set | 841 | # CONFIG_I2C_VOODOO3 is not set |
806 | # CONFIG_I2C_PCA_ISA is not set | 842 | # CONFIG_I2C_PCA_ISA is not set |
807 | # CONFIG_I2C_SENSOR is not set | ||
808 | 843 | ||
809 | # | 844 | # |
810 | # Miscellaneous I2C Chip support | 845 | # Miscellaneous I2C Chip support |
@@ -831,12 +866,17 @@ CONFIG_I2C_ALGOBIT=y | |||
831 | # Hardware Monitoring support | 866 | # Hardware Monitoring support |
832 | # | 867 | # |
833 | # CONFIG_HWMON is not set | 868 | # CONFIG_HWMON is not set |
869 | # CONFIG_HWMON_VID is not set | ||
834 | 870 | ||
835 | # | 871 | # |
836 | # Misc devices | 872 | # Misc devices |
837 | # | 873 | # |
838 | 874 | ||
839 | # | 875 | # |
876 | # Multimedia Capabilities Port drivers | ||
877 | # | ||
878 | |||
879 | # | ||
840 | # Multimedia devices | 880 | # Multimedia devices |
841 | # | 881 | # |
842 | # CONFIG_VIDEO_DEV is not set | 882 | # CONFIG_VIDEO_DEV is not set |
@@ -885,6 +925,7 @@ CONFIG_FB_RADEON_I2C=y | |||
885 | # CONFIG_FB_KYRO is not set | 925 | # CONFIG_FB_KYRO is not set |
886 | # CONFIG_FB_3DFX is not set | 926 | # CONFIG_FB_3DFX is not set |
887 | # CONFIG_FB_VOODOO1 is not set | 927 | # CONFIG_FB_VOODOO1 is not set |
928 | # CONFIG_FB_CYBLA is not set | ||
888 | # CONFIG_FB_TRIDENT is not set | 929 | # CONFIG_FB_TRIDENT is not set |
889 | # CONFIG_FB_S1D13XXX is not set | 930 | # CONFIG_FB_S1D13XXX is not set |
890 | # CONFIG_FB_VIRTUAL is not set | 931 | # CONFIG_FB_VIRTUAL is not set |
@@ -982,9 +1023,11 @@ CONFIG_USB_HIDDEV=y | |||
982 | # CONFIG_USB_MTOUCH is not set | 1023 | # CONFIG_USB_MTOUCH is not set |
983 | # CONFIG_USB_ITMTOUCH is not set | 1024 | # CONFIG_USB_ITMTOUCH is not set |
984 | # CONFIG_USB_EGALAX is not set | 1025 | # CONFIG_USB_EGALAX is not set |
1026 | # CONFIG_USB_YEALINK is not set | ||
985 | # CONFIG_USB_XPAD is not set | 1027 | # CONFIG_USB_XPAD is not set |
986 | # CONFIG_USB_ATI_REMOTE is not set | 1028 | # CONFIG_USB_ATI_REMOTE is not set |
987 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 1029 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
1030 | # CONFIG_USB_APPLETOUCH is not set | ||
988 | 1031 | ||
989 | # | 1032 | # |
990 | # USB Imaging devices | 1033 | # USB Imaging devices |
@@ -1057,7 +1100,8 @@ CONFIG_USB_MON=y | |||
1057 | # InfiniBand support | 1100 | # InfiniBand support |
1058 | # | 1101 | # |
1059 | CONFIG_INFINIBAND=m | 1102 | CONFIG_INFINIBAND=m |
1060 | CONFIG_INFINIBAND_USER_VERBS=m | 1103 | # CONFIG_INFINIBAND_USER_MAD is not set |
1104 | # CONFIG_INFINIBAND_USER_ACCESS is not set | ||
1061 | CONFIG_INFINIBAND_MTHCA=m | 1105 | CONFIG_INFINIBAND_MTHCA=m |
1062 | # CONFIG_INFINIBAND_MTHCA_DEBUG is not set | 1106 | # CONFIG_INFINIBAND_MTHCA_DEBUG is not set |
1063 | CONFIG_INFINIBAND_IPOIB=m | 1107 | CONFIG_INFINIBAND_IPOIB=m |
@@ -1095,16 +1139,12 @@ CONFIG_JFS_SECURITY=y | |||
1095 | # CONFIG_JFS_DEBUG is not set | 1139 | # CONFIG_JFS_DEBUG is not set |
1096 | # CONFIG_JFS_STATISTICS is not set | 1140 | # CONFIG_JFS_STATISTICS is not set |
1097 | CONFIG_FS_POSIX_ACL=y | 1141 | CONFIG_FS_POSIX_ACL=y |
1098 | |||
1099 | # | ||
1100 | # XFS support | ||
1101 | # | ||
1102 | CONFIG_XFS_FS=m | 1142 | CONFIG_XFS_FS=m |
1103 | CONFIG_XFS_EXPORT=y | 1143 | CONFIG_XFS_EXPORT=y |
1104 | # CONFIG_XFS_RT is not set | ||
1105 | # CONFIG_XFS_QUOTA is not set | 1144 | # CONFIG_XFS_QUOTA is not set |
1106 | CONFIG_XFS_SECURITY=y | 1145 | CONFIG_XFS_SECURITY=y |
1107 | CONFIG_XFS_POSIX_ACL=y | 1146 | CONFIG_XFS_POSIX_ACL=y |
1147 | # CONFIG_XFS_RT is not set | ||
1108 | # CONFIG_MINIX_FS is not set | 1148 | # CONFIG_MINIX_FS is not set |
1109 | # CONFIG_ROMFS_FS is not set | 1149 | # CONFIG_ROMFS_FS is not set |
1110 | CONFIG_INOTIFY=y | 1150 | CONFIG_INOTIFY=y |
@@ -1112,6 +1152,7 @@ CONFIG_INOTIFY=y | |||
1112 | CONFIG_DNOTIFY=y | 1152 | CONFIG_DNOTIFY=y |
1113 | CONFIG_AUTOFS_FS=m | 1153 | CONFIG_AUTOFS_FS=m |
1114 | # CONFIG_AUTOFS4_FS is not set | 1154 | # CONFIG_AUTOFS4_FS is not set |
1155 | # CONFIG_FUSE_FS is not set | ||
1115 | 1156 | ||
1116 | # | 1157 | # |
1117 | # CD-ROM/DVD Filesystems | 1158 | # CD-ROM/DVD Filesystems |
@@ -1139,14 +1180,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1139 | CONFIG_PROC_FS=y | 1180 | CONFIG_PROC_FS=y |
1140 | CONFIG_PROC_KCORE=y | 1181 | CONFIG_PROC_KCORE=y |
1141 | CONFIG_SYSFS=y | 1182 | CONFIG_SYSFS=y |
1142 | CONFIG_DEVPTS_FS_XATTR=y | ||
1143 | CONFIG_DEVPTS_FS_SECURITY=y | ||
1144 | CONFIG_TMPFS=y | 1183 | CONFIG_TMPFS=y |
1145 | CONFIG_TMPFS_XATTR=y | ||
1146 | CONFIG_TMPFS_SECURITY=y | ||
1147 | CONFIG_HUGETLBFS=y | 1184 | CONFIG_HUGETLBFS=y |
1148 | CONFIG_HUGETLB_PAGE=y | 1185 | CONFIG_HUGETLB_PAGE=y |
1149 | CONFIG_RAMFS=y | 1186 | CONFIG_RAMFS=y |
1187 | # CONFIG_RELAYFS_FS is not set | ||
1150 | 1188 | ||
1151 | # | 1189 | # |
1152 | # Miscellaneous filesystems | 1190 | # Miscellaneous filesystems |
@@ -1197,6 +1235,7 @@ CONFIG_CIFS_POSIX=y | |||
1197 | # CONFIG_NCP_FS is not set | 1235 | # CONFIG_NCP_FS is not set |
1198 | # CONFIG_CODA_FS is not set | 1236 | # CONFIG_CODA_FS is not set |
1199 | # CONFIG_AFS_FS is not set | 1237 | # CONFIG_AFS_FS is not set |
1238 | # CONFIG_9P_FS is not set | ||
1200 | 1239 | ||
1201 | # | 1240 | # |
1202 | # Partition Types | 1241 | # Partition Types |
@@ -1261,6 +1300,7 @@ CONFIG_OPROFILE=y | |||
1261 | CONFIG_DEBUG_KERNEL=y | 1300 | CONFIG_DEBUG_KERNEL=y |
1262 | CONFIG_MAGIC_SYSRQ=y | 1301 | CONFIG_MAGIC_SYSRQ=y |
1263 | CONFIG_LOG_BUF_SHIFT=17 | 1302 | CONFIG_LOG_BUF_SHIFT=17 |
1303 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1264 | # CONFIG_SCHEDSTATS is not set | 1304 | # CONFIG_SCHEDSTATS is not set |
1265 | # CONFIG_DEBUG_SLAB is not set | 1305 | # CONFIG_DEBUG_SLAB is not set |
1266 | # CONFIG_DEBUG_SPINLOCK is not set | 1306 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -1320,7 +1360,12 @@ CONFIG_CRYPTO_TEST=m | |||
1320 | # Library routines | 1360 | # Library routines |
1321 | # | 1361 | # |
1322 | CONFIG_CRC_CCITT=m | 1362 | CONFIG_CRC_CCITT=m |
1363 | # CONFIG_CRC16 is not set | ||
1323 | CONFIG_CRC32=y | 1364 | CONFIG_CRC32=y |
1324 | CONFIG_LIBCRC32C=m | 1365 | CONFIG_LIBCRC32C=m |
1325 | CONFIG_ZLIB_INFLATE=y | 1366 | CONFIG_ZLIB_INFLATE=y |
1326 | CONFIG_ZLIB_DEFLATE=m | 1367 | CONFIG_ZLIB_DEFLATE=m |
1368 | CONFIG_TEXTSEARCH=y | ||
1369 | CONFIG_TEXTSEARCH_KMP=m | ||
1370 | CONFIG_TEXTSEARCH_BM=m | ||
1371 | CONFIG_TEXTSEARCH_FSM=m | ||
diff --git a/arch/ppc64/defconfig b/arch/ppc64/defconfig index 7cb4750bb7a9..37c157c93cef 100644 --- a/arch/ppc64/defconfig +++ b/arch/ppc64/defconfig | |||
@@ -1,17 +1,17 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.13-rc6 | 3 | # Linux kernel version: 2.6.14-rc4 |
4 | # Mon Aug 8 14:16:54 2005 | 4 | # Thu Oct 20 08:28:33 2005 |
5 | # | 5 | # |
6 | CONFIG_64BIT=y | 6 | CONFIG_64BIT=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 8 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
9 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 9 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
10 | CONFIG_GENERIC_ISA_DMA=y | 10 | CONFIG_GENERIC_ISA_DMA=y |
11 | CONFIG_HAVE_DEC_LOCK=y | ||
12 | CONFIG_EARLY_PRINTK=y | 11 | CONFIG_EARLY_PRINTK=y |
13 | CONFIG_COMPAT=y | 12 | CONFIG_COMPAT=y |
14 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 13 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
14 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | ||
15 | CONFIG_FORCE_MAX_ZONEORDER=13 | 15 | CONFIG_FORCE_MAX_ZONEORDER=13 |
16 | 16 | ||
17 | # | 17 | # |
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 | |||
26 | # General setup | 26 | # General setup |
27 | # | 27 | # |
28 | CONFIG_LOCALVERSION="" | 28 | CONFIG_LOCALVERSION="" |
29 | CONFIG_LOCALVERSION_AUTO=y | ||
29 | CONFIG_SWAP=y | 30 | CONFIG_SWAP=y |
30 | CONFIG_SYSVIPC=y | 31 | CONFIG_SYSVIPC=y |
31 | CONFIG_POSIX_MQUEUE=y | 32 | CONFIG_POSIX_MQUEUE=y |
@@ -37,6 +38,7 @@ CONFIG_KOBJECT_UEVENT=y | |||
37 | CONFIG_IKCONFIG=y | 38 | CONFIG_IKCONFIG=y |
38 | CONFIG_IKCONFIG_PROC=y | 39 | CONFIG_IKCONFIG_PROC=y |
39 | CONFIG_CPUSETS=y | 40 | CONFIG_CPUSETS=y |
41 | CONFIG_INITRAMFS_SOURCE="" | ||
40 | # CONFIG_EMBEDDED is not set | 42 | # CONFIG_EMBEDDED is not set |
41 | CONFIG_KALLSYMS=y | 43 | CONFIG_KALLSYMS=y |
42 | # CONFIG_KALLSYMS_ALL is not set | 44 | # CONFIG_KALLSYMS_ALL is not set |
@@ -106,6 +108,7 @@ CONFIG_DISCONTIGMEM_MANUAL=y | |||
106 | CONFIG_DISCONTIGMEM=y | 108 | CONFIG_DISCONTIGMEM=y |
107 | CONFIG_FLAT_NODE_MEM_MAP=y | 109 | CONFIG_FLAT_NODE_MEM_MAP=y |
108 | CONFIG_NEED_MULTIPLE_NODES=y | 110 | CONFIG_NEED_MULTIPLE_NODES=y |
111 | # CONFIG_SPARSEMEM_STATIC is not set | ||
109 | CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y | 112 | CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y |
110 | CONFIG_NODES_SPAN_OTHER_NODES=y | 113 | CONFIG_NODES_SPAN_OTHER_NODES=y |
111 | # CONFIG_NUMA is not set | 114 | # CONFIG_NUMA is not set |
@@ -126,19 +129,20 @@ CONFIG_RTAS_FLASH=m | |||
126 | CONFIG_SCANLOG=m | 129 | CONFIG_SCANLOG=m |
127 | CONFIG_LPARCFG=y | 130 | CONFIG_LPARCFG=y |
128 | CONFIG_SECCOMP=y | 131 | CONFIG_SECCOMP=y |
132 | CONFIG_BINFMT_ELF=y | ||
133 | CONFIG_BINFMT_MISC=m | ||
134 | CONFIG_HOTPLUG_CPU=y | ||
135 | CONFIG_PROC_DEVICETREE=y | ||
136 | # CONFIG_CMDLINE_BOOL is not set | ||
129 | CONFIG_ISA_DMA_API=y | 137 | CONFIG_ISA_DMA_API=y |
130 | 138 | ||
131 | # | 139 | # |
132 | # General setup | 140 | # Bus Options |
133 | # | 141 | # |
134 | CONFIG_PCI=y | 142 | CONFIG_PCI=y |
135 | CONFIG_PCI_DOMAINS=y | 143 | CONFIG_PCI_DOMAINS=y |
136 | CONFIG_BINFMT_ELF=y | ||
137 | CONFIG_BINFMT_MISC=m | ||
138 | # CONFIG_PCI_LEGACY_PROC is not set | 144 | # CONFIG_PCI_LEGACY_PROC is not set |
139 | # CONFIG_PCI_NAMES is not set | ||
140 | # CONFIG_PCI_DEBUG is not set | 145 | # CONFIG_PCI_DEBUG is not set |
141 | CONFIG_HOTPLUG_CPU=y | ||
142 | 146 | ||
143 | # | 147 | # |
144 | # PCCARD (PCMCIA/CardBus) support | 148 | # PCCARD (PCMCIA/CardBus) support |
@@ -154,8 +158,6 @@ CONFIG_HOTPLUG_PCI=m | |||
154 | # CONFIG_HOTPLUG_PCI_SHPC is not set | 158 | # CONFIG_HOTPLUG_PCI_SHPC is not set |
155 | CONFIG_HOTPLUG_PCI_RPA=m | 159 | CONFIG_HOTPLUG_PCI_RPA=m |
156 | CONFIG_HOTPLUG_PCI_RPA_DLPAR=m | 160 | CONFIG_HOTPLUG_PCI_RPA_DLPAR=m |
157 | CONFIG_PROC_DEVICETREE=y | ||
158 | # CONFIG_CMDLINE_BOOL is not set | ||
159 | 161 | ||
160 | # | 162 | # |
161 | # Networking | 163 | # Networking |
@@ -185,8 +187,8 @@ CONFIG_INET_AH=m | |||
185 | CONFIG_INET_ESP=m | 187 | CONFIG_INET_ESP=m |
186 | CONFIG_INET_IPCOMP=m | 188 | CONFIG_INET_IPCOMP=m |
187 | CONFIG_INET_TUNNEL=y | 189 | CONFIG_INET_TUNNEL=y |
188 | # CONFIG_IP_TCPDIAG is not set | 190 | CONFIG_INET_DIAG=y |
189 | # CONFIG_IP_TCPDIAG_IPV6 is not set | 191 | CONFIG_INET_TCP_DIAG=y |
190 | # CONFIG_TCP_CONG_ADVANCED is not set | 192 | # CONFIG_TCP_CONG_ADVANCED is not set |
191 | CONFIG_TCP_CONG_BIC=y | 193 | CONFIG_TCP_CONG_BIC=y |
192 | 194 | ||
@@ -197,6 +199,9 @@ CONFIG_TCP_CONG_BIC=y | |||
197 | # CONFIG_IPV6 is not set | 199 | # CONFIG_IPV6 is not set |
198 | CONFIG_NETFILTER=y | 200 | CONFIG_NETFILTER=y |
199 | # CONFIG_NETFILTER_DEBUG is not set | 201 | # CONFIG_NETFILTER_DEBUG is not set |
202 | CONFIG_NETFILTER_NETLINK=y | ||
203 | CONFIG_NETFILTER_NETLINK_QUEUE=m | ||
204 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
200 | 205 | ||
201 | # | 206 | # |
202 | # IP: Netfilter Configuration | 207 | # IP: Netfilter Configuration |
@@ -204,11 +209,15 @@ CONFIG_NETFILTER=y | |||
204 | CONFIG_IP_NF_CONNTRACK=m | 209 | CONFIG_IP_NF_CONNTRACK=m |
205 | CONFIG_IP_NF_CT_ACCT=y | 210 | CONFIG_IP_NF_CT_ACCT=y |
206 | CONFIG_IP_NF_CONNTRACK_MARK=y | 211 | CONFIG_IP_NF_CONNTRACK_MARK=y |
212 | CONFIG_IP_NF_CONNTRACK_EVENTS=y | ||
213 | CONFIG_IP_NF_CONNTRACK_NETLINK=m | ||
207 | CONFIG_IP_NF_CT_PROTO_SCTP=m | 214 | CONFIG_IP_NF_CT_PROTO_SCTP=m |
208 | CONFIG_IP_NF_FTP=m | 215 | CONFIG_IP_NF_FTP=m |
209 | CONFIG_IP_NF_IRC=m | 216 | CONFIG_IP_NF_IRC=m |
217 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
210 | CONFIG_IP_NF_TFTP=m | 218 | CONFIG_IP_NF_TFTP=m |
211 | CONFIG_IP_NF_AMANDA=m | 219 | CONFIG_IP_NF_AMANDA=m |
220 | # CONFIG_IP_NF_PPTP is not set | ||
212 | CONFIG_IP_NF_QUEUE=m | 221 | CONFIG_IP_NF_QUEUE=m |
213 | CONFIG_IP_NF_IPTABLES=m | 222 | CONFIG_IP_NF_IPTABLES=m |
214 | CONFIG_IP_NF_MATCH_LIMIT=m | 223 | CONFIG_IP_NF_MATCH_LIMIT=m |
@@ -232,14 +241,18 @@ CONFIG_IP_NF_MATCH_OWNER=m | |||
232 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | 241 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
233 | CONFIG_IP_NF_MATCH_REALM=m | 242 | CONFIG_IP_NF_MATCH_REALM=m |
234 | CONFIG_IP_NF_MATCH_SCTP=m | 243 | CONFIG_IP_NF_MATCH_SCTP=m |
244 | CONFIG_IP_NF_MATCH_DCCP=m | ||
235 | CONFIG_IP_NF_MATCH_COMMENT=m | 245 | CONFIG_IP_NF_MATCH_COMMENT=m |
236 | CONFIG_IP_NF_MATCH_CONNMARK=m | 246 | CONFIG_IP_NF_MATCH_CONNMARK=m |
247 | CONFIG_IP_NF_MATCH_CONNBYTES=m | ||
237 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | 248 | CONFIG_IP_NF_MATCH_HASHLIMIT=m |
249 | CONFIG_IP_NF_MATCH_STRING=m | ||
238 | CONFIG_IP_NF_FILTER=m | 250 | CONFIG_IP_NF_FILTER=m |
239 | CONFIG_IP_NF_TARGET_REJECT=m | 251 | CONFIG_IP_NF_TARGET_REJECT=m |
240 | CONFIG_IP_NF_TARGET_LOG=m | 252 | CONFIG_IP_NF_TARGET_LOG=m |
241 | CONFIG_IP_NF_TARGET_ULOG=m | 253 | CONFIG_IP_NF_TARGET_ULOG=m |
242 | CONFIG_IP_NF_TARGET_TCPMSS=m | 254 | CONFIG_IP_NF_TARGET_TCPMSS=m |
255 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
243 | CONFIG_IP_NF_NAT=m | 256 | CONFIG_IP_NF_NAT=m |
244 | CONFIG_IP_NF_NAT_NEEDED=y | 257 | CONFIG_IP_NF_NAT_NEEDED=y |
245 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 258 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
@@ -257,6 +270,7 @@ CONFIG_IP_NF_TARGET_ECN=m | |||
257 | CONFIG_IP_NF_TARGET_DSCP=m | 270 | CONFIG_IP_NF_TARGET_DSCP=m |
258 | CONFIG_IP_NF_TARGET_MARK=m | 271 | CONFIG_IP_NF_TARGET_MARK=m |
259 | CONFIG_IP_NF_TARGET_CLASSIFY=m | 272 | CONFIG_IP_NF_TARGET_CLASSIFY=m |
273 | CONFIG_IP_NF_TARGET_TTL=m | ||
260 | CONFIG_IP_NF_TARGET_CONNMARK=m | 274 | CONFIG_IP_NF_TARGET_CONNMARK=m |
261 | CONFIG_IP_NF_TARGET_CLUSTERIP=m | 275 | CONFIG_IP_NF_TARGET_CLUSTERIP=m |
262 | CONFIG_IP_NF_RAW=m | 276 | CONFIG_IP_NF_RAW=m |
@@ -266,6 +280,11 @@ CONFIG_IP_NF_ARPFILTER=m | |||
266 | CONFIG_IP_NF_ARP_MANGLE=m | 280 | CONFIG_IP_NF_ARP_MANGLE=m |
267 | 281 | ||
268 | # | 282 | # |
283 | # DCCP Configuration (EXPERIMENTAL) | ||
284 | # | ||
285 | # CONFIG_IP_DCCP is not set | ||
286 | |||
287 | # | ||
269 | # SCTP Configuration (EXPERIMENTAL) | 288 | # SCTP Configuration (EXPERIMENTAL) |
270 | # | 289 | # |
271 | # CONFIG_IP_SCTP is not set | 290 | # CONFIG_IP_SCTP is not set |
@@ -292,6 +311,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
292 | # CONFIG_HAMRADIO is not set | 311 | # CONFIG_HAMRADIO is not set |
293 | # CONFIG_IRDA is not set | 312 | # CONFIG_IRDA is not set |
294 | # CONFIG_BT is not set | 313 | # CONFIG_BT is not set |
314 | # CONFIG_IEEE80211 is not set | ||
295 | 315 | ||
296 | # | 316 | # |
297 | # Device Drivers | 317 | # Device Drivers |
@@ -306,6 +326,11 @@ CONFIG_FW_LOADER=y | |||
306 | # CONFIG_DEBUG_DRIVER is not set | 326 | # CONFIG_DEBUG_DRIVER is not set |
307 | 327 | ||
308 | # | 328 | # |
329 | # Connector - unified userspace <-> kernelspace linker | ||
330 | # | ||
331 | # CONFIG_CONNECTOR is not set | ||
332 | |||
333 | # | ||
309 | # Memory Technology Devices (MTD) | 334 | # Memory Technology Devices (MTD) |
310 | # | 335 | # |
311 | # CONFIG_MTD is not set | 336 | # CONFIG_MTD is not set |
@@ -344,7 +369,6 @@ CONFIG_BLK_DEV_RAM=y | |||
344 | CONFIG_BLK_DEV_RAM_COUNT=16 | 369 | CONFIG_BLK_DEV_RAM_COUNT=16 |
345 | CONFIG_BLK_DEV_RAM_SIZE=65536 | 370 | CONFIG_BLK_DEV_RAM_SIZE=65536 |
346 | CONFIG_BLK_DEV_INITRD=y | 371 | CONFIG_BLK_DEV_INITRD=y |
347 | CONFIG_INITRAMFS_SOURCE="" | ||
348 | # CONFIG_CDROM_PKTCDVD is not set | 372 | # CONFIG_CDROM_PKTCDVD is not set |
349 | 373 | ||
350 | # | 374 | # |
@@ -422,6 +446,7 @@ CONFIG_IDEDMA_AUTO=y | |||
422 | # | 446 | # |
423 | # SCSI device support | 447 | # SCSI device support |
424 | # | 448 | # |
449 | # CONFIG_RAID_ATTRS is not set | ||
425 | CONFIG_SCSI=y | 450 | CONFIG_SCSI=y |
426 | CONFIG_SCSI_PROC_FS=y | 451 | CONFIG_SCSI_PROC_FS=y |
427 | 452 | ||
@@ -449,6 +474,7 @@ CONFIG_SCSI_CONSTANTS=y | |||
449 | CONFIG_SCSI_SPI_ATTRS=y | 474 | CONFIG_SCSI_SPI_ATTRS=y |
450 | CONFIG_SCSI_FC_ATTRS=y | 475 | CONFIG_SCSI_FC_ATTRS=y |
451 | CONFIG_SCSI_ISCSI_ATTRS=m | 476 | CONFIG_SCSI_ISCSI_ATTRS=m |
477 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
452 | 478 | ||
453 | # | 479 | # |
454 | # SCSI low-level drivers | 480 | # SCSI low-level drivers |
@@ -462,10 +488,12 @@ CONFIG_SCSI_ISCSI_ATTRS=m | |||
462 | # CONFIG_SCSI_AIC79XX is not set | 488 | # CONFIG_SCSI_AIC79XX is not set |
463 | # CONFIG_MEGARAID_NEWGEN is not set | 489 | # CONFIG_MEGARAID_NEWGEN is not set |
464 | # CONFIG_MEGARAID_LEGACY is not set | 490 | # CONFIG_MEGARAID_LEGACY is not set |
491 | # CONFIG_MEGARAID_SAS is not set | ||
465 | CONFIG_SCSI_SATA=y | 492 | CONFIG_SCSI_SATA=y |
466 | # CONFIG_SCSI_SATA_AHCI is not set | 493 | # CONFIG_SCSI_SATA_AHCI is not set |
467 | CONFIG_SCSI_SATA_SVW=y | 494 | CONFIG_SCSI_SATA_SVW=y |
468 | # CONFIG_SCSI_ATA_PIIX is not set | 495 | # CONFIG_SCSI_ATA_PIIX is not set |
496 | # CONFIG_SCSI_SATA_MV is not set | ||
469 | # CONFIG_SCSI_SATA_NV is not set | 497 | # CONFIG_SCSI_SATA_NV is not set |
470 | # CONFIG_SCSI_SATA_PROMISE is not set | 498 | # CONFIG_SCSI_SATA_PROMISE is not set |
471 | # CONFIG_SCSI_SATA_QSTOR is not set | 499 | # CONFIG_SCSI_SATA_QSTOR is not set |
@@ -535,6 +563,7 @@ CONFIG_DM_MULTIPATH_EMC=m | |||
535 | # CONFIG_FUSION is not set | 563 | # CONFIG_FUSION is not set |
536 | # CONFIG_FUSION_SPI is not set | 564 | # CONFIG_FUSION_SPI is not set |
537 | # CONFIG_FUSION_FC is not set | 565 | # CONFIG_FUSION_FC is not set |
566 | # CONFIG_FUSION_SAS is not set | ||
538 | 567 | ||
539 | # | 568 | # |
540 | # IEEE 1394 (FireWire) support | 569 | # IEEE 1394 (FireWire) support |
@@ -578,7 +607,6 @@ CONFIG_IEEE1394_AMDTP=m | |||
578 | # | 607 | # |
579 | CONFIG_ADB_PMU=y | 608 | CONFIG_ADB_PMU=y |
580 | CONFIG_PMAC_SMU=y | 609 | CONFIG_PMAC_SMU=y |
581 | # CONFIG_PMAC_BACKLIGHT is not set | ||
582 | CONFIG_THERM_PM72=y | 610 | CONFIG_THERM_PM72=y |
583 | 611 | ||
584 | # | 612 | # |
@@ -596,12 +624,18 @@ CONFIG_TUN=m | |||
596 | # CONFIG_ARCNET is not set | 624 | # CONFIG_ARCNET is not set |
597 | 625 | ||
598 | # | 626 | # |
627 | # PHY device support | ||
628 | # | ||
629 | # CONFIG_PHYLIB is not set | ||
630 | |||
631 | # | ||
599 | # Ethernet (10 or 100Mbit) | 632 | # Ethernet (10 or 100Mbit) |
600 | # | 633 | # |
601 | CONFIG_NET_ETHERNET=y | 634 | CONFIG_NET_ETHERNET=y |
602 | CONFIG_MII=y | 635 | CONFIG_MII=y |
603 | # CONFIG_HAPPYMEAL is not set | 636 | # CONFIG_HAPPYMEAL is not set |
604 | CONFIG_SUNGEM=y | 637 | CONFIG_SUNGEM=y |
638 | # CONFIG_CASSINI is not set | ||
605 | CONFIG_NET_VENDOR_3COM=y | 639 | CONFIG_NET_VENDOR_3COM=y |
606 | CONFIG_VORTEX=y | 640 | CONFIG_VORTEX=y |
607 | # CONFIG_TYPHOON is not set | 641 | # CONFIG_TYPHOON is not set |
@@ -630,6 +664,7 @@ CONFIG_E100=y | |||
630 | # CONFIG_EPIC100 is not set | 664 | # CONFIG_EPIC100 is not set |
631 | # CONFIG_SUNDANCE is not set | 665 | # CONFIG_SUNDANCE is not set |
632 | # CONFIG_VIA_RHINE is not set | 666 | # CONFIG_VIA_RHINE is not set |
667 | # CONFIG_NET_POCKET is not set | ||
633 | 668 | ||
634 | # | 669 | # |
635 | # Ethernet (1000 Mbit) | 670 | # Ethernet (1000 Mbit) |
@@ -643,16 +678,19 @@ CONFIG_E1000=y | |||
643 | # CONFIG_HAMACHI is not set | 678 | # CONFIG_HAMACHI is not set |
644 | # CONFIG_YELLOWFIN is not set | 679 | # CONFIG_YELLOWFIN is not set |
645 | # CONFIG_R8169 is not set | 680 | # CONFIG_R8169 is not set |
681 | # CONFIG_SIS190 is not set | ||
646 | # CONFIG_SKGE is not set | 682 | # CONFIG_SKGE is not set |
647 | # CONFIG_SK98LIN is not set | 683 | # CONFIG_SK98LIN is not set |
648 | # CONFIG_VIA_VELOCITY is not set | 684 | # CONFIG_VIA_VELOCITY is not set |
649 | CONFIG_TIGON3=y | 685 | CONFIG_TIGON3=y |
650 | # CONFIG_BNX2 is not set | 686 | # CONFIG_BNX2 is not set |
687 | # CONFIG_SPIDER_NET is not set | ||
651 | # CONFIG_MV643XX_ETH is not set | 688 | # CONFIG_MV643XX_ETH is not set |
652 | 689 | ||
653 | # | 690 | # |
654 | # Ethernet (10000 Mbit) | 691 | # Ethernet (10000 Mbit) |
655 | # | 692 | # |
693 | # CONFIG_CHELSIO_T1 is not set | ||
656 | CONFIG_IXGB=m | 694 | CONFIG_IXGB=m |
657 | # CONFIG_IXGB_NAPI is not set | 695 | # CONFIG_IXGB_NAPI is not set |
658 | # CONFIG_S2IO is not set | 696 | # CONFIG_S2IO is not set |
@@ -838,8 +876,8 @@ CONFIG_I2C_AMD8111=y | |||
838 | # CONFIG_I2C_I801 is not set | 876 | # CONFIG_I2C_I801 is not set |
839 | # CONFIG_I2C_I810 is not set | 877 | # CONFIG_I2C_I810 is not set |
840 | # CONFIG_I2C_PIIX4 is not set | 878 | # CONFIG_I2C_PIIX4 is not set |
841 | # CONFIG_I2C_ISA is not set | ||
842 | CONFIG_I2C_KEYWEST=y | 879 | CONFIG_I2C_KEYWEST=y |
880 | CONFIG_I2C_PMAC_SMU=y | ||
843 | # CONFIG_I2C_NFORCE2 is not set | 881 | # CONFIG_I2C_NFORCE2 is not set |
844 | # CONFIG_I2C_PARPORT is not set | 882 | # CONFIG_I2C_PARPORT is not set |
845 | # CONFIG_I2C_PARPORT_LIGHT is not set | 883 | # CONFIG_I2C_PARPORT_LIGHT is not set |
@@ -854,7 +892,6 @@ CONFIG_I2C_KEYWEST=y | |||
854 | # CONFIG_I2C_VIAPRO is not set | 892 | # CONFIG_I2C_VIAPRO is not set |
855 | # CONFIG_I2C_VOODOO3 is not set | 893 | # CONFIG_I2C_VOODOO3 is not set |
856 | # CONFIG_I2C_PCA_ISA is not set | 894 | # CONFIG_I2C_PCA_ISA is not set |
857 | # CONFIG_I2C_SENSOR is not set | ||
858 | 895 | ||
859 | # | 896 | # |
860 | # Miscellaneous I2C Chip support | 897 | # Miscellaneous I2C Chip support |
@@ -881,12 +918,17 @@ CONFIG_I2C_KEYWEST=y | |||
881 | # Hardware Monitoring support | 918 | # Hardware Monitoring support |
882 | # | 919 | # |
883 | # CONFIG_HWMON is not set | 920 | # CONFIG_HWMON is not set |
921 | # CONFIG_HWMON_VID is not set | ||
884 | 922 | ||
885 | # | 923 | # |
886 | # Misc devices | 924 | # Misc devices |
887 | # | 925 | # |
888 | 926 | ||
889 | # | 927 | # |
928 | # Multimedia Capabilities Port drivers | ||
929 | # | ||
930 | |||
931 | # | ||
890 | # Multimedia devices | 932 | # Multimedia devices |
891 | # | 933 | # |
892 | # CONFIG_VIDEO_DEV is not set | 934 | # CONFIG_VIDEO_DEV is not set |
@@ -939,6 +981,7 @@ CONFIG_FB_RADEON_I2C=y | |||
939 | # CONFIG_FB_KYRO is not set | 981 | # CONFIG_FB_KYRO is not set |
940 | # CONFIG_FB_3DFX is not set | 982 | # CONFIG_FB_3DFX is not set |
941 | # CONFIG_FB_VOODOO1 is not set | 983 | # CONFIG_FB_VOODOO1 is not set |
984 | # CONFIG_FB_CYBLA is not set | ||
942 | # CONFIG_FB_TRIDENT is not set | 985 | # CONFIG_FB_TRIDENT is not set |
943 | # CONFIG_FB_S1D13XXX is not set | 986 | # CONFIG_FB_S1D13XXX is not set |
944 | # CONFIG_FB_VIRTUAL is not set | 987 | # CONFIG_FB_VIRTUAL is not set |
@@ -1020,6 +1063,7 @@ CONFIG_USB_STORAGE=m | |||
1020 | # CONFIG_USB_STORAGE_SDDR09 is not set | 1063 | # CONFIG_USB_STORAGE_SDDR09 is not set |
1021 | # CONFIG_USB_STORAGE_SDDR55 is not set | 1064 | # CONFIG_USB_STORAGE_SDDR55 is not set |
1022 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 1065 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
1066 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
1023 | 1067 | ||
1024 | # | 1068 | # |
1025 | # USB Input Devices | 1069 | # USB Input Devices |
@@ -1036,9 +1080,11 @@ CONFIG_USB_HIDDEV=y | |||
1036 | # CONFIG_USB_MTOUCH is not set | 1080 | # CONFIG_USB_MTOUCH is not set |
1037 | # CONFIG_USB_ITMTOUCH is not set | 1081 | # CONFIG_USB_ITMTOUCH is not set |
1038 | # CONFIG_USB_EGALAX is not set | 1082 | # CONFIG_USB_EGALAX is not set |
1083 | # CONFIG_USB_YEALINK is not set | ||
1039 | # CONFIG_USB_XPAD is not set | 1084 | # CONFIG_USB_XPAD is not set |
1040 | # CONFIG_USB_ATI_REMOTE is not set | 1085 | # CONFIG_USB_ATI_REMOTE is not set |
1041 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 1086 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
1087 | # CONFIG_USB_APPLETOUCH is not set | ||
1042 | 1088 | ||
1043 | # | 1089 | # |
1044 | # USB Imaging devices | 1090 | # USB Imaging devices |
@@ -1111,7 +1157,8 @@ CONFIG_USB_PEGASUS=y | |||
1111 | # InfiniBand support | 1157 | # InfiniBand support |
1112 | # | 1158 | # |
1113 | CONFIG_INFINIBAND=m | 1159 | CONFIG_INFINIBAND=m |
1114 | CONFIG_INFINIBAND_USER_VERBS=m | 1160 | # CONFIG_INFINIBAND_USER_MAD is not set |
1161 | # CONFIG_INFINIBAND_USER_ACCESS is not set | ||
1115 | CONFIG_INFINIBAND_MTHCA=m | 1162 | CONFIG_INFINIBAND_MTHCA=m |
1116 | # CONFIG_INFINIBAND_MTHCA_DEBUG is not set | 1163 | # CONFIG_INFINIBAND_MTHCA_DEBUG is not set |
1117 | CONFIG_INFINIBAND_IPOIB=m | 1164 | CONFIG_INFINIBAND_IPOIB=m |
@@ -1149,16 +1196,12 @@ CONFIG_JFS_SECURITY=y | |||
1149 | # CONFIG_JFS_DEBUG is not set | 1196 | # CONFIG_JFS_DEBUG is not set |
1150 | # CONFIG_JFS_STATISTICS is not set | 1197 | # CONFIG_JFS_STATISTICS is not set |
1151 | CONFIG_FS_POSIX_ACL=y | 1198 | CONFIG_FS_POSIX_ACL=y |
1152 | |||
1153 | # | ||
1154 | # XFS support | ||
1155 | # | ||
1156 | CONFIG_XFS_FS=m | 1199 | CONFIG_XFS_FS=m |
1157 | CONFIG_XFS_EXPORT=y | 1200 | CONFIG_XFS_EXPORT=y |
1158 | # CONFIG_XFS_RT is not set | ||
1159 | # CONFIG_XFS_QUOTA is not set | 1201 | # CONFIG_XFS_QUOTA is not set |
1160 | CONFIG_XFS_SECURITY=y | 1202 | CONFIG_XFS_SECURITY=y |
1161 | CONFIG_XFS_POSIX_ACL=y | 1203 | CONFIG_XFS_POSIX_ACL=y |
1204 | # CONFIG_XFS_RT is not set | ||
1162 | # CONFIG_MINIX_FS is not set | 1205 | # CONFIG_MINIX_FS is not set |
1163 | # CONFIG_ROMFS_FS is not set | 1206 | # CONFIG_ROMFS_FS is not set |
1164 | CONFIG_INOTIFY=y | 1207 | CONFIG_INOTIFY=y |
@@ -1166,6 +1209,7 @@ CONFIG_INOTIFY=y | |||
1166 | CONFIG_DNOTIFY=y | 1209 | CONFIG_DNOTIFY=y |
1167 | CONFIG_AUTOFS_FS=y | 1210 | CONFIG_AUTOFS_FS=y |
1168 | # CONFIG_AUTOFS4_FS is not set | 1211 | # CONFIG_AUTOFS4_FS is not set |
1212 | # CONFIG_FUSE_FS is not set | ||
1169 | 1213 | ||
1170 | # | 1214 | # |
1171 | # CD-ROM/DVD Filesystems | 1215 | # CD-ROM/DVD Filesystems |
@@ -1192,14 +1236,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1192 | CONFIG_PROC_FS=y | 1236 | CONFIG_PROC_FS=y |
1193 | CONFIG_PROC_KCORE=y | 1237 | CONFIG_PROC_KCORE=y |
1194 | CONFIG_SYSFS=y | 1238 | CONFIG_SYSFS=y |
1195 | CONFIG_DEVPTS_FS_XATTR=y | ||
1196 | CONFIG_DEVPTS_FS_SECURITY=y | ||
1197 | CONFIG_TMPFS=y | 1239 | CONFIG_TMPFS=y |
1198 | CONFIG_TMPFS_XATTR=y | ||
1199 | CONFIG_TMPFS_SECURITY=y | ||
1200 | CONFIG_HUGETLBFS=y | 1240 | CONFIG_HUGETLBFS=y |
1201 | CONFIG_HUGETLB_PAGE=y | 1241 | CONFIG_HUGETLB_PAGE=y |
1202 | CONFIG_RAMFS=y | 1242 | CONFIG_RAMFS=y |
1243 | # CONFIG_RELAYFS_FS is not set | ||
1203 | 1244 | ||
1204 | # | 1245 | # |
1205 | # Miscellaneous filesystems | 1246 | # Miscellaneous filesystems |
@@ -1250,6 +1291,7 @@ CONFIG_CIFS_POSIX=y | |||
1250 | # CONFIG_NCP_FS is not set | 1291 | # CONFIG_NCP_FS is not set |
1251 | # CONFIG_CODA_FS is not set | 1292 | # CONFIG_CODA_FS is not set |
1252 | # CONFIG_AFS_FS is not set | 1293 | # CONFIG_AFS_FS is not set |
1294 | # CONFIG_9P_FS is not set | ||
1253 | 1295 | ||
1254 | # | 1296 | # |
1255 | # Partition Types | 1297 | # Partition Types |
@@ -1328,6 +1370,7 @@ CONFIG_OPROFILE=y | |||
1328 | CONFIG_DEBUG_KERNEL=y | 1370 | CONFIG_DEBUG_KERNEL=y |
1329 | CONFIG_MAGIC_SYSRQ=y | 1371 | CONFIG_MAGIC_SYSRQ=y |
1330 | CONFIG_LOG_BUF_SHIFT=17 | 1372 | CONFIG_LOG_BUF_SHIFT=17 |
1373 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1331 | # CONFIG_SCHEDSTATS is not set | 1374 | # CONFIG_SCHEDSTATS is not set |
1332 | # CONFIG_DEBUG_SLAB is not set | 1375 | # CONFIG_DEBUG_SLAB is not set |
1333 | # CONFIG_DEBUG_SPINLOCK is not set | 1376 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -1387,7 +1430,12 @@ CONFIG_CRYPTO_TEST=m | |||
1387 | # Library routines | 1430 | # Library routines |
1388 | # | 1431 | # |
1389 | CONFIG_CRC_CCITT=m | 1432 | CONFIG_CRC_CCITT=m |
1433 | # CONFIG_CRC16 is not set | ||
1390 | CONFIG_CRC32=y | 1434 | CONFIG_CRC32=y |
1391 | CONFIG_LIBCRC32C=m | 1435 | CONFIG_LIBCRC32C=m |
1392 | CONFIG_ZLIB_INFLATE=y | 1436 | CONFIG_ZLIB_INFLATE=y |
1393 | CONFIG_ZLIB_DEFLATE=m | 1437 | CONFIG_ZLIB_DEFLATE=m |
1438 | CONFIG_TEXTSEARCH=y | ||
1439 | CONFIG_TEXTSEARCH_KMP=m | ||
1440 | CONFIG_TEXTSEARCH_BM=m | ||
1441 | CONFIG_TEXTSEARCH_FSM=m | ||
diff --git a/arch/ppc64/kernel/bpa_iommu.c b/arch/ppc64/kernel/bpa_iommu.c index 507eb9d0223f..5f2460090e03 100644 --- a/arch/ppc64/kernel/bpa_iommu.c +++ b/arch/ppc64/kernel/bpa_iommu.c | |||
@@ -310,7 +310,7 @@ static void bpa_map_iommu(void) | |||
310 | 310 | ||
311 | 311 | ||
312 | static void *bpa_alloc_coherent(struct device *hwdev, size_t size, | 312 | static void *bpa_alloc_coherent(struct device *hwdev, size_t size, |
313 | dma_addr_t *dma_handle, unsigned int __nocast flag) | 313 | dma_addr_t *dma_handle, gfp_t flag) |
314 | { | 314 | { |
315 | void *ret; | 315 | void *ret; |
316 | 316 | ||
diff --git a/arch/ppc64/kernel/dma.c b/arch/ppc64/kernel/dma.c index 4da8e31b2b61..7c3419656ccc 100644 --- a/arch/ppc64/kernel/dma.c +++ b/arch/ppc64/kernel/dma.c | |||
@@ -53,7 +53,7 @@ int dma_set_mask(struct device *dev, u64 dma_mask) | |||
53 | EXPORT_SYMBOL(dma_set_mask); | 53 | EXPORT_SYMBOL(dma_set_mask); |
54 | 54 | ||
55 | void *dma_alloc_coherent(struct device *dev, size_t size, | 55 | void *dma_alloc_coherent(struct device *dev, size_t size, |
56 | dma_addr_t *dma_handle, unsigned int __nocast flag) | 56 | dma_addr_t *dma_handle, gfp_t flag) |
57 | { | 57 | { |
58 | struct dma_mapping_ops *dma_ops = get_dma_ops(dev); | 58 | struct dma_mapping_ops *dma_ops = get_dma_ops(dev); |
59 | 59 | ||
diff --git a/arch/ppc64/kernel/iSeries_htab.c b/arch/ppc64/kernel/iSeries_htab.c index 2192055a90a0..073b76661747 100644 --- a/arch/ppc64/kernel/iSeries_htab.c +++ b/arch/ppc64/kernel/iSeries_htab.c | |||
@@ -66,7 +66,7 @@ static long iSeries_hpte_insert(unsigned long hpte_group, unsigned long va, | |||
66 | } | 66 | } |
67 | 67 | ||
68 | if (slot < 0) { /* MSB set means secondary group */ | 68 | if (slot < 0) { /* MSB set means secondary group */ |
69 | vflags |= HPTE_V_VALID; | 69 | vflags |= HPTE_V_SECONDARY; |
70 | secondary = 1; | 70 | secondary = 1; |
71 | slot &= 0x7fffffffffffffff; | 71 | slot &= 0x7fffffffffffffff; |
72 | } | 72 | } |
diff --git a/arch/ppc64/kernel/iommu.c b/arch/ppc64/kernel/iommu.c index 9032b6bfe036..4d9b4388918b 100644 --- a/arch/ppc64/kernel/iommu.c +++ b/arch/ppc64/kernel/iommu.c | |||
@@ -519,7 +519,7 @@ void iommu_unmap_single(struct iommu_table *tbl, dma_addr_t dma_handle, | |||
519 | * to the dma address (mapping) of the first page. | 519 | * to the dma address (mapping) of the first page. |
520 | */ | 520 | */ |
521 | void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size, | 521 | void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size, |
522 | dma_addr_t *dma_handle, unsigned int __nocast flag) | 522 | dma_addr_t *dma_handle, gfp_t flag) |
523 | { | 523 | { |
524 | void *ret = NULL; | 524 | void *ret = NULL; |
525 | dma_addr_t mapping; | 525 | dma_addr_t mapping; |
diff --git a/arch/ppc64/kernel/module.c b/arch/ppc64/kernel/module.c index c683bf88e690..928b8581fcb0 100644 --- a/arch/ppc64/kernel/module.c +++ b/arch/ppc64/kernel/module.c | |||
@@ -341,6 +341,19 @@ int apply_relocate_add(Elf64_Shdr *sechdrs, | |||
341 | *(unsigned long *)location = my_r2(sechdrs, me); | 341 | *(unsigned long *)location = my_r2(sechdrs, me); |
342 | break; | 342 | break; |
343 | 343 | ||
344 | case R_PPC64_TOC16: | ||
345 | /* Subtact TOC pointer */ | ||
346 | value -= my_r2(sechdrs, me); | ||
347 | if (value + 0x8000 > 0xffff) { | ||
348 | printk("%s: bad TOC16 relocation (%lu)\n", | ||
349 | me->name, value); | ||
350 | return -ENOEXEC; | ||
351 | } | ||
352 | *((uint16_t *) location) | ||
353 | = (*((uint16_t *) location) & ~0xffff) | ||
354 | | (value & 0xffff); | ||
355 | break; | ||
356 | |||
344 | case R_PPC64_TOC16_DS: | 357 | case R_PPC64_TOC16_DS: |
345 | /* Subtact TOC pointer */ | 358 | /* Subtact TOC pointer */ |
346 | value -= my_r2(sechdrs, me); | 359 | value -= my_r2(sechdrs, me); |
diff --git a/arch/ppc64/kernel/mpic.c b/arch/ppc64/kernel/mpic.c index cc262a05ddb4..5f5bc73754d9 100644 --- a/arch/ppc64/kernel/mpic.c +++ b/arch/ppc64/kernel/mpic.c | |||
@@ -506,8 +506,8 @@ struct mpic * __init mpic_alloc(unsigned long phys_addr, | |||
506 | mpic->senses_count = senses_count; | 506 | mpic->senses_count = senses_count; |
507 | 507 | ||
508 | /* Map the global registers */ | 508 | /* Map the global registers */ |
509 | mpic->gregs = ioremap(phys_addr + MPIC_GREG_BASE, 0x1000); | 509 | mpic->gregs = ioremap(phys_addr + MPIC_GREG_BASE, 0x2000); |
510 | mpic->tmregs = mpic->gregs + (MPIC_TIMER_BASE >> 2); | 510 | mpic->tmregs = mpic->gregs + ((MPIC_TIMER_BASE - MPIC_GREG_BASE) >> 2); |
511 | BUG_ON(mpic->gregs == NULL); | 511 | BUG_ON(mpic->gregs == NULL); |
512 | 512 | ||
513 | /* Reset */ | 513 | /* Reset */ |
diff --git a/arch/ppc64/kernel/pSeries_pci.c b/arch/ppc64/kernel/pSeries_pci.c index 1f5f141fb7a1..928f8febdb3b 100644 --- a/arch/ppc64/kernel/pSeries_pci.c +++ b/arch/ppc64/kernel/pSeries_pci.c | |||
@@ -32,7 +32,7 @@ | |||
32 | 32 | ||
33 | #include "pci.h" | 33 | #include "pci.h" |
34 | 34 | ||
35 | static int __initdata s7a_workaround = -1; | 35 | static int __devinitdata s7a_workaround = -1; |
36 | 36 | ||
37 | #if 0 | 37 | #if 0 |
38 | void pcibios_name_device(struct pci_dev *dev) | 38 | void pcibios_name_device(struct pci_dev *dev) |
@@ -60,7 +60,7 @@ void pcibios_name_device(struct pci_dev *dev) | |||
60 | DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, pcibios_name_device); | 60 | DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, pcibios_name_device); |
61 | #endif | 61 | #endif |
62 | 62 | ||
63 | static void __init check_s7a(void) | 63 | static void __devinit check_s7a(void) |
64 | { | 64 | { |
65 | struct device_node *root; | 65 | struct device_node *root; |
66 | char *model; | 66 | char *model; |
diff --git a/arch/ppc64/kernel/pci_direct_iommu.c b/arch/ppc64/kernel/pci_direct_iommu.c index b8f7f58824f4..54055c81017a 100644 --- a/arch/ppc64/kernel/pci_direct_iommu.c +++ b/arch/ppc64/kernel/pci_direct_iommu.c | |||
@@ -31,7 +31,7 @@ | |||
31 | #include "pci.h" | 31 | #include "pci.h" |
32 | 32 | ||
33 | static void *pci_direct_alloc_coherent(struct device *hwdev, size_t size, | 33 | static void *pci_direct_alloc_coherent(struct device *hwdev, size_t size, |
34 | dma_addr_t *dma_handle, unsigned int __nocast flag) | 34 | dma_addr_t *dma_handle, gfp_t flag) |
35 | { | 35 | { |
36 | void *ret; | 36 | void *ret; |
37 | 37 | ||
diff --git a/arch/ppc64/kernel/pci_iommu.c b/arch/ppc64/kernel/pci_iommu.c index 14647e09c9cd..d9e33b7d4203 100644 --- a/arch/ppc64/kernel/pci_iommu.c +++ b/arch/ppc64/kernel/pci_iommu.c | |||
@@ -76,7 +76,7 @@ static inline struct iommu_table *devnode_table(struct device *dev) | |||
76 | * to the dma address (mapping) of the first page. | 76 | * to the dma address (mapping) of the first page. |
77 | */ | 77 | */ |
78 | static void *pci_iommu_alloc_coherent(struct device *hwdev, size_t size, | 78 | static void *pci_iommu_alloc_coherent(struct device *hwdev, size_t size, |
79 | dma_addr_t *dma_handle, unsigned int __nocast flag) | 79 | dma_addr_t *dma_handle, gfp_t flag) |
80 | { | 80 | { |
81 | return iommu_alloc_coherent(devnode_table(hwdev), size, dma_handle, | 81 | return iommu_alloc_coherent(devnode_table(hwdev), size, dma_handle, |
82 | flag); | 82 | flag); |
diff --git a/arch/ppc64/kernel/pmac_setup.c b/arch/ppc64/kernel/pmac_setup.c index 25755252067a..fa8121d53b89 100644 --- a/arch/ppc64/kernel/pmac_setup.c +++ b/arch/ppc64/kernel/pmac_setup.c | |||
@@ -115,7 +115,7 @@ static void __pmac pmac_show_cpuinfo(struct seq_file *m) | |||
115 | 115 | ||
116 | /* find motherboard type */ | 116 | /* find motherboard type */ |
117 | seq_printf(m, "machine\t\t: "); | 117 | seq_printf(m, "machine\t\t: "); |
118 | np = find_devices("device-tree"); | 118 | np = of_find_node_by_path("/"); |
119 | if (np != NULL) { | 119 | if (np != NULL) { |
120 | pp = (char *) get_property(np, "model", NULL); | 120 | pp = (char *) get_property(np, "model", NULL); |
121 | if (pp != NULL) | 121 | if (pp != NULL) |
@@ -133,6 +133,7 @@ static void __pmac pmac_show_cpuinfo(struct seq_file *m) | |||
133 | } | 133 | } |
134 | seq_printf(m, "\n"); | 134 | seq_printf(m, "\n"); |
135 | } | 135 | } |
136 | of_node_put(np); | ||
136 | } else | 137 | } else |
137 | seq_printf(m, "PowerMac\n"); | 138 | seq_printf(m, "PowerMac\n"); |
138 | 139 | ||
diff --git a/arch/ppc64/kernel/time.c b/arch/ppc64/kernel/time.c index 9939c206afa4..b56c6a324e17 100644 --- a/arch/ppc64/kernel/time.c +++ b/arch/ppc64/kernel/time.c | |||
@@ -870,7 +870,7 @@ void div128_by_32( unsigned long dividend_high, unsigned long dividend_low, | |||
870 | rb = ((ra + b) - (x * divisor)) << 32; | 870 | rb = ((ra + b) - (x * divisor)) << 32; |
871 | 871 | ||
872 | y = (rb + c)/divisor; | 872 | y = (rb + c)/divisor; |
873 | rc = ((rb + b) - (y * divisor)) << 32; | 873 | rc = ((rb + c) - (y * divisor)) << 32; |
874 | 874 | ||
875 | z = (rc + d)/divisor; | 875 | z = (rc + d)/divisor; |
876 | 876 | ||
diff --git a/arch/ppc64/kernel/vdso32/gettimeofday.S b/arch/ppc64/kernel/vdso32/gettimeofday.S index 07f1c1c650c8..e243c1d24af7 100644 --- a/arch/ppc64/kernel/vdso32/gettimeofday.S +++ b/arch/ppc64/kernel/vdso32/gettimeofday.S | |||
@@ -109,7 +109,7 @@ __do_get_xsec: | |||
109 | lwz r6,(CFG_TB_TO_XS+4)(r9) | 109 | lwz r6,(CFG_TB_TO_XS+4)(r9) |
110 | mulhwu r4,r7,r5 | 110 | mulhwu r4,r7,r5 |
111 | mulhwu r6,r7,r6 | 111 | mulhwu r6,r7,r6 |
112 | mullw r6,r7,r5 | 112 | mullw r0,r7,r5 |
113 | addc r6,r6,r0 | 113 | addc r6,r6,r0 |
114 | 114 | ||
115 | /* At this point, we have the scaled xsec value in r4 + XER:CA | 115 | /* At this point, we have the scaled xsec value in r4 + XER:CA |
diff --git a/arch/ppc64/kernel/vio.c b/arch/ppc64/kernel/vio.c index c90e1dd875ce..0e555b7a6587 100644 --- a/arch/ppc64/kernel/vio.c +++ b/arch/ppc64/kernel/vio.c | |||
@@ -218,7 +218,7 @@ static void vio_unmap_sg(struct device *dev, struct scatterlist *sglist, | |||
218 | } | 218 | } |
219 | 219 | ||
220 | static void *vio_alloc_coherent(struct device *dev, size_t size, | 220 | static void *vio_alloc_coherent(struct device *dev, size_t size, |
221 | dma_addr_t *dma_handle, unsigned int __nocast flag) | 221 | dma_addr_t *dma_handle, gfp_t flag) |
222 | { | 222 | { |
223 | return iommu_alloc_coherent(to_vio_dev(dev)->iommu_table, size, | 223 | return iommu_alloc_coherent(to_vio_dev(dev)->iommu_table, size, |
224 | dma_handle, flag); | 224 | dma_handle, flag); |
diff --git a/arch/ppc64/mm/init.c b/arch/ppc64/mm/init.c index c2157c9c3acb..be64b157afce 100644 --- a/arch/ppc64/mm/init.c +++ b/arch/ppc64/mm/init.c | |||
@@ -799,8 +799,7 @@ void update_mmu_cache(struct vm_area_struct *vma, unsigned long ea, | |||
799 | if (cpus_equal(vma->vm_mm->cpu_vm_mask, tmp)) | 799 | if (cpus_equal(vma->vm_mm->cpu_vm_mask, tmp)) |
800 | local = 1; | 800 | local = 1; |
801 | 801 | ||
802 | __hash_page(ea, pte_val(pte) & (_PAGE_USER|_PAGE_RW), vsid, ptep, | 802 | __hash_page(ea, 0, vsid, ptep, 0x300, local); |
803 | 0x300, local); | ||
804 | local_irq_restore(flags); | 803 | local_irq_restore(flags); |
805 | } | 804 | } |
806 | 805 | ||
diff --git a/arch/sh/kernel/smp.c b/arch/sh/kernel/smp.c index 56a39d69e080..5ecefc02896a 100644 --- a/arch/sh/kernel/smp.c +++ b/arch/sh/kernel/smp.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <linux/time.h> | 22 | #include <linux/time.h> |
23 | #include <linux/timex.h> | 23 | #include <linux/timex.h> |
24 | #include <linux/sched.h> | 24 | #include <linux/sched.h> |
25 | #include <linux/module.h> | ||
25 | 26 | ||
26 | #include <asm/atomic.h> | 27 | #include <asm/atomic.h> |
27 | #include <asm/processor.h> | 28 | #include <asm/processor.h> |
@@ -39,6 +40,8 @@ struct sh_cpuinfo cpu_data[NR_CPUS]; | |||
39 | extern void per_cpu_trap_init(void); | 40 | extern void per_cpu_trap_init(void); |
40 | 41 | ||
41 | cpumask_t cpu_possible_map; | 42 | cpumask_t cpu_possible_map; |
43 | EXPORT_SYMBOL(cpu_possible_map); | ||
44 | |||
42 | cpumask_t cpu_online_map; | 45 | cpumask_t cpu_online_map; |
43 | static atomic_t cpus_booted = ATOMIC_INIT(0); | 46 | static atomic_t cpus_booted = ATOMIC_INIT(0); |
44 | 47 | ||
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index aba05394d30a..6537445dac0e 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig | |||
@@ -25,62 +25,6 @@ source "init/Kconfig" | |||
25 | 25 | ||
26 | menu "General machine setup" | 26 | menu "General machine setup" |
27 | 27 | ||
28 | config VT | ||
29 | bool | ||
30 | select INPUT | ||
31 | default y | ||
32 | ---help--- | ||
33 | If you say Y here, you will get support for terminal devices with | ||
34 | display and keyboard devices. These are called "virtual" because you | ||
35 | can run several virtual terminals (also called virtual consoles) on | ||
36 | one physical terminal. This is rather useful, for example one | ||
37 | virtual terminal can collect system messages and warnings, another | ||
38 | one can be used for a text-mode user session, and a third could run | ||
39 | an X session, all in parallel. Switching between virtual terminals | ||
40 | is done with certain key combinations, usually Alt-<function key>. | ||
41 | |||
42 | The setterm command ("man setterm") can be used to change the | ||
43 | properties (such as colors or beeping) of a virtual terminal. The | ||
44 | man page console_codes(4) ("man console_codes") contains the special | ||
45 | character sequences that can be used to change those properties | ||
46 | directly. The fonts used on virtual terminals can be changed with | ||
47 | the setfont ("man setfont") command and the key bindings are defined | ||
48 | with the loadkeys ("man loadkeys") command. | ||
49 | |||
50 | You need at least one virtual terminal device in order to make use | ||
51 | of your keyboard and monitor. Therefore, only people configuring an | ||
52 | embedded system would want to say N here in order to save some | ||
53 | memory; the only way to log into such a system is then via a serial | ||
54 | or network connection. | ||
55 | |||
56 | If unsure, say Y, or else you won't be able to do much with your new | ||
57 | shiny Linux system :-) | ||
58 | |||
59 | config VT_CONSOLE | ||
60 | bool | ||
61 | default y | ||
62 | ---help--- | ||
63 | The system console is the device which receives all kernel messages | ||
64 | and warnings and which allows logins in single user mode. If you | ||
65 | answer Y here, a virtual terminal (the device used to interact with | ||
66 | a physical terminal) can be used as system console. This is the most | ||
67 | common mode of operations, so you should say Y here unless you want | ||
68 | the kernel messages be output only to a serial port (in which case | ||
69 | you should say Y to "Console on serial port", below). | ||
70 | |||
71 | If you do say Y here, by default the currently visible virtual | ||
72 | terminal (/dev/tty0) will be used as system console. You can change | ||
73 | that with a kernel command line option such as "console=tty3" which | ||
74 | would use the third virtual terminal as system console. (Try "man | ||
75 | bootparam" or see the documentation of your boot loader (lilo or | ||
76 | loadlin) about how to pass options to the kernel at boot time.) | ||
77 | |||
78 | If unsure, say Y. | ||
79 | |||
80 | config HW_CONSOLE | ||
81 | bool | ||
82 | default y | ||
83 | |||
84 | config SMP | 28 | config SMP |
85 | bool "Symmetric multi-processing support (does not work on sun4/sun4c)" | 29 | bool "Symmetric multi-processing support (does not work on sun4/sun4c)" |
86 | depends on BROKEN | 30 | depends on BROKEN |
diff --git a/arch/sparc64/kernel/dtlb_base.S b/arch/sparc64/kernel/dtlb_base.S index 702d349c1e88..6528786840c0 100644 --- a/arch/sparc64/kernel/dtlb_base.S +++ b/arch/sparc64/kernel/dtlb_base.S | |||
@@ -53,19 +53,18 @@ | |||
53 | * be guaranteed to be 0 ... mmu_context.h does guarantee this | 53 | * be guaranteed to be 0 ... mmu_context.h does guarantee this |
54 | * by only using 10 bits in the hwcontext value. | 54 | * by only using 10 bits in the hwcontext value. |
55 | */ | 55 | */ |
56 | #define CREATE_VPTE_OFFSET1(r1, r2) | 56 | #define CREATE_VPTE_OFFSET1(r1, r2) nop |
57 | #define CREATE_VPTE_OFFSET2(r1, r2) \ | 57 | #define CREATE_VPTE_OFFSET2(r1, r2) \ |
58 | srax r1, 10, r2 | 58 | srax r1, 10, r2 |
59 | #define CREATE_VPTE_NOP nop | ||
60 | #else | 59 | #else |
61 | #define CREATE_VPTE_OFFSET1(r1, r2) \ | 60 | #define CREATE_VPTE_OFFSET1(r1, r2) \ |
62 | srax r1, PAGE_SHIFT, r2 | 61 | srax r1, PAGE_SHIFT, r2 |
63 | #define CREATE_VPTE_OFFSET2(r1, r2) \ | 62 | #define CREATE_VPTE_OFFSET2(r1, r2) \ |
64 | sllx r2, 3, r2 | 63 | sllx r2, 3, r2 |
65 | #define CREATE_VPTE_NOP | ||
66 | #endif | 64 | #endif |
67 | 65 | ||
68 | /* DTLB ** ICACHE line 1: Quick user TLB misses */ | 66 | /* DTLB ** ICACHE line 1: Quick user TLB misses */ |
67 | mov TLB_SFSR, %g1 | ||
69 | ldxa [%g1 + %g1] ASI_DMMU, %g4 ! Get TAG_ACCESS | 68 | ldxa [%g1 + %g1] ASI_DMMU, %g4 ! Get TAG_ACCESS |
70 | andcc %g4, TAG_CONTEXT_BITS, %g0 ! From Nucleus? | 69 | andcc %g4, TAG_CONTEXT_BITS, %g0 ! From Nucleus? |
71 | from_tl1_trap: | 70 | from_tl1_trap: |
@@ -74,18 +73,16 @@ from_tl1_trap: | |||
74 | be,pn %xcc, kvmap ! Yep, special processing | 73 | be,pn %xcc, kvmap ! Yep, special processing |
75 | CREATE_VPTE_OFFSET2(%g4, %g6) ! Create VPTE offset | 74 | CREATE_VPTE_OFFSET2(%g4, %g6) ! Create VPTE offset |
76 | cmp %g5, 4 ! Last trap level? | 75 | cmp %g5, 4 ! Last trap level? |
77 | be,pn %xcc, longpath ! Yep, cannot risk VPTE miss | ||
78 | nop ! delay slot | ||
79 | 76 | ||
80 | /* DTLB ** ICACHE line 2: User finish + quick kernel TLB misses */ | 77 | /* DTLB ** ICACHE line 2: User finish + quick kernel TLB misses */ |
78 | be,pn %xcc, longpath ! Yep, cannot risk VPTE miss | ||
79 | nop ! delay slot | ||
81 | ldxa [%g3 + %g6] ASI_S, %g5 ! Load VPTE | 80 | ldxa [%g3 + %g6] ASI_S, %g5 ! Load VPTE |
82 | 1: brgez,pn %g5, longpath ! Invalid, branch out | 81 | 1: brgez,pn %g5, longpath ! Invalid, branch out |
83 | nop ! Delay-slot | 82 | nop ! Delay-slot |
84 | 9: stxa %g5, [%g0] ASI_DTLB_DATA_IN ! Reload TLB | 83 | 9: stxa %g5, [%g0] ASI_DTLB_DATA_IN ! Reload TLB |
85 | retry ! Trap return | 84 | retry ! Trap return |
86 | nop | 85 | nop |
87 | nop | ||
88 | nop | ||
89 | 86 | ||
90 | /* DTLB ** ICACHE line 3: winfixups+real_faults */ | 87 | /* DTLB ** ICACHE line 3: winfixups+real_faults */ |
91 | longpath: | 88 | longpath: |
@@ -106,8 +103,7 @@ longpath: | |||
106 | nop | 103 | nop |
107 | nop | 104 | nop |
108 | nop | 105 | nop |
109 | CREATE_VPTE_NOP | 106 | nop |
110 | 107 | ||
111 | #undef CREATE_VPTE_OFFSET1 | 108 | #undef CREATE_VPTE_OFFSET1 |
112 | #undef CREATE_VPTE_OFFSET2 | 109 | #undef CREATE_VPTE_OFFSET2 |
113 | #undef CREATE_VPTE_NOP | ||
diff --git a/arch/sparc64/kernel/dtlb_prot.S b/arch/sparc64/kernel/dtlb_prot.S index d848bb7374bb..e0a920162604 100644 --- a/arch/sparc64/kernel/dtlb_prot.S +++ b/arch/sparc64/kernel/dtlb_prot.S | |||
@@ -14,14 +14,14 @@ | |||
14 | */ | 14 | */ |
15 | 15 | ||
16 | /* PROT ** ICACHE line 1: User DTLB protection trap */ | 16 | /* PROT ** ICACHE line 1: User DTLB protection trap */ |
17 | stxa %g0, [%g1] ASI_DMMU ! Clear SFSR FaultValid bit | 17 | mov TLB_SFSR, %g1 |
18 | membar #Sync ! Synchronize ASI stores | 18 | stxa %g0, [%g1] ASI_DMMU ! Clear FaultValid bit |
19 | rdpr %pstate, %g5 ! Move into alternate globals | 19 | membar #Sync ! Synchronize stores |
20 | rdpr %pstate, %g5 ! Move into alt-globals | ||
20 | wrpr %g5, PSTATE_AG|PSTATE_MG, %pstate | 21 | wrpr %g5, PSTATE_AG|PSTATE_MG, %pstate |
21 | rdpr %tl, %g1 ! Need to do a winfixup? | 22 | rdpr %tl, %g1 ! Need a winfixup? |
22 | cmp %g1, 1 ! Trap level >1? | 23 | cmp %g1, 1 ! Trap level >1? |
23 | mov TLB_TAG_ACCESS, %g4 ! Prepare reload of vaddr | 24 | mov TLB_TAG_ACCESS, %g4 ! For reload of vaddr |
24 | nop | ||
25 | 25 | ||
26 | /* PROT ** ICACHE line 2: More real fault processing */ | 26 | /* PROT ** ICACHE line 2: More real fault processing */ |
27 | bgu,pn %xcc, winfix_trampoline ! Yes, perform winfixup | 27 | bgu,pn %xcc, winfix_trampoline ! Yes, perform winfixup |
diff --git a/arch/sparc64/kernel/entry.S b/arch/sparc64/kernel/entry.S index 2879b1072921..11a848402fb1 100644 --- a/arch/sparc64/kernel/entry.S +++ b/arch/sparc64/kernel/entry.S | |||
@@ -33,7 +33,7 @@ | |||
33 | /* This is trivial with the new code... */ | 33 | /* This is trivial with the new code... */ |
34 | .globl do_fpdis | 34 | .globl do_fpdis |
35 | do_fpdis: | 35 | do_fpdis: |
36 | sethi %hi(TSTATE_PEF), %g4 ! IEU0 | 36 | sethi %hi(TSTATE_PEF), %g4 |
37 | rdpr %tstate, %g5 | 37 | rdpr %tstate, %g5 |
38 | andcc %g5, %g4, %g0 | 38 | andcc %g5, %g4, %g0 |
39 | be,pt %xcc, 1f | 39 | be,pt %xcc, 1f |
@@ -50,18 +50,18 @@ do_fpdis: | |||
50 | add %g0, %g0, %g0 | 50 | add %g0, %g0, %g0 |
51 | ba,a,pt %xcc, rtrap_clr_l6 | 51 | ba,a,pt %xcc, rtrap_clr_l6 |
52 | 52 | ||
53 | 1: ldub [%g6 + TI_FPSAVED], %g5 ! Load Group | 53 | 1: ldub [%g6 + TI_FPSAVED], %g5 |
54 | wr %g0, FPRS_FEF, %fprs ! LSU Group+4bubbles | 54 | wr %g0, FPRS_FEF, %fprs |
55 | andcc %g5, FPRS_FEF, %g0 ! IEU1 Group | 55 | andcc %g5, FPRS_FEF, %g0 |
56 | be,a,pt %icc, 1f ! CTI | 56 | be,a,pt %icc, 1f |
57 | clr %g7 ! IEU0 | 57 | clr %g7 |
58 | ldx [%g6 + TI_GSR], %g7 ! Load Group | 58 | ldx [%g6 + TI_GSR], %g7 |
59 | 1: andcc %g5, FPRS_DL, %g0 ! IEU1 | 59 | 1: andcc %g5, FPRS_DL, %g0 |
60 | bne,pn %icc, 2f ! CTI | 60 | bne,pn %icc, 2f |
61 | fzero %f0 ! FPA | 61 | fzero %f0 |
62 | andcc %g5, FPRS_DU, %g0 ! IEU1 Group | 62 | andcc %g5, FPRS_DU, %g0 |
63 | bne,pn %icc, 1f ! CTI | 63 | bne,pn %icc, 1f |
64 | fzero %f2 ! FPA | 64 | fzero %f2 |
65 | faddd %f0, %f2, %f4 | 65 | faddd %f0, %f2, %f4 |
66 | fmuld %f0, %f2, %f6 | 66 | fmuld %f0, %f2, %f6 |
67 | faddd %f0, %f2, %f8 | 67 | faddd %f0, %f2, %f8 |
@@ -97,15 +97,17 @@ do_fpdis: | |||
97 | faddd %f0, %f2, %f4 | 97 | faddd %f0, %f2, %f4 |
98 | fmuld %f0, %f2, %f6 | 98 | fmuld %f0, %f2, %f6 |
99 | ldxa [%g3] ASI_DMMU, %g5 | 99 | ldxa [%g3] ASI_DMMU, %g5 |
100 | cplus_fptrap_insn_1: | 100 | sethi %hi(sparc64_kern_sec_context), %g2 |
101 | sethi %hi(0), %g2 | 101 | ldx [%g2 + %lo(sparc64_kern_sec_context)], %g2 |
102 | stxa %g2, [%g3] ASI_DMMU | 102 | stxa %g2, [%g3] ASI_DMMU |
103 | membar #Sync | 103 | membar #Sync |
104 | add %g6, TI_FPREGS + 0xc0, %g2 | 104 | add %g6, TI_FPREGS + 0xc0, %g2 |
105 | faddd %f0, %f2, %f8 | 105 | faddd %f0, %f2, %f8 |
106 | fmuld %f0, %f2, %f10 | 106 | fmuld %f0, %f2, %f10 |
107 | ldda [%g1] ASI_BLK_S, %f32 ! grrr, where is ASI_BLK_NUCLEUS 8-( | 107 | membar #Sync |
108 | ldda [%g1] ASI_BLK_S, %f32 | ||
108 | ldda [%g2] ASI_BLK_S, %f48 | 109 | ldda [%g2] ASI_BLK_S, %f48 |
110 | membar #Sync | ||
109 | faddd %f0, %f2, %f12 | 111 | faddd %f0, %f2, %f12 |
110 | fmuld %f0, %f2, %f14 | 112 | fmuld %f0, %f2, %f14 |
111 | faddd %f0, %f2, %f16 | 113 | faddd %f0, %f2, %f16 |
@@ -116,7 +118,6 @@ cplus_fptrap_insn_1: | |||
116 | fmuld %f0, %f2, %f26 | 118 | fmuld %f0, %f2, %f26 |
117 | faddd %f0, %f2, %f28 | 119 | faddd %f0, %f2, %f28 |
118 | fmuld %f0, %f2, %f30 | 120 | fmuld %f0, %f2, %f30 |
119 | membar #Sync | ||
120 | b,pt %xcc, fpdis_exit | 121 | b,pt %xcc, fpdis_exit |
121 | nop | 122 | nop |
122 | 2: andcc %g5, FPRS_DU, %g0 | 123 | 2: andcc %g5, FPRS_DU, %g0 |
@@ -126,15 +127,17 @@ cplus_fptrap_insn_1: | |||
126 | fzero %f34 | 127 | fzero %f34 |
127 | ldxa [%g3] ASI_DMMU, %g5 | 128 | ldxa [%g3] ASI_DMMU, %g5 |
128 | add %g6, TI_FPREGS, %g1 | 129 | add %g6, TI_FPREGS, %g1 |
129 | cplus_fptrap_insn_2: | 130 | sethi %hi(sparc64_kern_sec_context), %g2 |
130 | sethi %hi(0), %g2 | 131 | ldx [%g2 + %lo(sparc64_kern_sec_context)], %g2 |
131 | stxa %g2, [%g3] ASI_DMMU | 132 | stxa %g2, [%g3] ASI_DMMU |
132 | membar #Sync | 133 | membar #Sync |
133 | add %g6, TI_FPREGS + 0x40, %g2 | 134 | add %g6, TI_FPREGS + 0x40, %g2 |
134 | faddd %f32, %f34, %f36 | 135 | faddd %f32, %f34, %f36 |
135 | fmuld %f32, %f34, %f38 | 136 | fmuld %f32, %f34, %f38 |
136 | ldda [%g1] ASI_BLK_S, %f0 ! grrr, where is ASI_BLK_NUCLEUS 8-( | 137 | membar #Sync |
138 | ldda [%g1] ASI_BLK_S, %f0 | ||
137 | ldda [%g2] ASI_BLK_S, %f16 | 139 | ldda [%g2] ASI_BLK_S, %f16 |
140 | membar #Sync | ||
138 | faddd %f32, %f34, %f40 | 141 | faddd %f32, %f34, %f40 |
139 | fmuld %f32, %f34, %f42 | 142 | fmuld %f32, %f34, %f42 |
140 | faddd %f32, %f34, %f44 | 143 | faddd %f32, %f34, %f44 |
@@ -147,18 +150,18 @@ cplus_fptrap_insn_2: | |||
147 | fmuld %f32, %f34, %f58 | 150 | fmuld %f32, %f34, %f58 |
148 | faddd %f32, %f34, %f60 | 151 | faddd %f32, %f34, %f60 |
149 | fmuld %f32, %f34, %f62 | 152 | fmuld %f32, %f34, %f62 |
150 | membar #Sync | ||
151 | ba,pt %xcc, fpdis_exit | 153 | ba,pt %xcc, fpdis_exit |
152 | nop | 154 | nop |
153 | 3: mov SECONDARY_CONTEXT, %g3 | 155 | 3: mov SECONDARY_CONTEXT, %g3 |
154 | add %g6, TI_FPREGS, %g1 | 156 | add %g6, TI_FPREGS, %g1 |
155 | ldxa [%g3] ASI_DMMU, %g5 | 157 | ldxa [%g3] ASI_DMMU, %g5 |
156 | cplus_fptrap_insn_3: | 158 | sethi %hi(sparc64_kern_sec_context), %g2 |
157 | sethi %hi(0), %g2 | 159 | ldx [%g2 + %lo(sparc64_kern_sec_context)], %g2 |
158 | stxa %g2, [%g3] ASI_DMMU | 160 | stxa %g2, [%g3] ASI_DMMU |
159 | membar #Sync | 161 | membar #Sync |
160 | mov 0x40, %g2 | 162 | mov 0x40, %g2 |
161 | ldda [%g1] ASI_BLK_S, %f0 ! grrr, where is ASI_BLK_NUCLEUS 8-( | 163 | membar #Sync |
164 | ldda [%g1] ASI_BLK_S, %f0 | ||
162 | ldda [%g1 + %g2] ASI_BLK_S, %f16 | 165 | ldda [%g1 + %g2] ASI_BLK_S, %f16 |
163 | add %g1, 0x80, %g1 | 166 | add %g1, 0x80, %g1 |
164 | ldda [%g1] ASI_BLK_S, %f32 | 167 | ldda [%g1] ASI_BLK_S, %f32 |
@@ -319,8 +322,8 @@ do_fptrap_after_fsr: | |||
319 | stx %g3, [%g6 + TI_GSR] | 322 | stx %g3, [%g6 + TI_GSR] |
320 | mov SECONDARY_CONTEXT, %g3 | 323 | mov SECONDARY_CONTEXT, %g3 |
321 | ldxa [%g3] ASI_DMMU, %g5 | 324 | ldxa [%g3] ASI_DMMU, %g5 |
322 | cplus_fptrap_insn_4: | 325 | sethi %hi(sparc64_kern_sec_context), %g2 |
323 | sethi %hi(0), %g2 | 326 | ldx [%g2 + %lo(sparc64_kern_sec_context)], %g2 |
324 | stxa %g2, [%g3] ASI_DMMU | 327 | stxa %g2, [%g3] ASI_DMMU |
325 | membar #Sync | 328 | membar #Sync |
326 | add %g6, TI_FPREGS, %g2 | 329 | add %g6, TI_FPREGS, %g2 |
@@ -341,33 +344,6 @@ cplus_fptrap_insn_4: | |||
341 | ba,pt %xcc, etrap | 344 | ba,pt %xcc, etrap |
342 | wr %g0, 0, %fprs | 345 | wr %g0, 0, %fprs |
343 | 346 | ||
344 | cplus_fptrap_1: | ||
345 | sethi %hi(CTX_CHEETAH_PLUS_CTX0), %g2 | ||
346 | |||
347 | .globl cheetah_plus_patch_fpdis | ||
348 | cheetah_plus_patch_fpdis: | ||
349 | /* We configure the dTLB512_0 for 4MB pages and the | ||
350 | * dTLB512_1 for 8K pages when in context zero. | ||
351 | */ | ||
352 | sethi %hi(cplus_fptrap_1), %o0 | ||
353 | lduw [%o0 + %lo(cplus_fptrap_1)], %o1 | ||
354 | |||
355 | set cplus_fptrap_insn_1, %o2 | ||
356 | stw %o1, [%o2] | ||
357 | flush %o2 | ||
358 | set cplus_fptrap_insn_2, %o2 | ||
359 | stw %o1, [%o2] | ||
360 | flush %o2 | ||
361 | set cplus_fptrap_insn_3, %o2 | ||
362 | stw %o1, [%o2] | ||
363 | flush %o2 | ||
364 | set cplus_fptrap_insn_4, %o2 | ||
365 | stw %o1, [%o2] | ||
366 | flush %o2 | ||
367 | |||
368 | retl | ||
369 | nop | ||
370 | |||
371 | /* The registers for cross calls will be: | 347 | /* The registers for cross calls will be: |
372 | * | 348 | * |
373 | * DATA 0: [low 32-bits] Address of function to call, jmp to this | 349 | * DATA 0: [low 32-bits] Address of function to call, jmp to this |
diff --git a/arch/sparc64/kernel/etrap.S b/arch/sparc64/kernel/etrap.S index 50d2af1d98ae..0d8eba21111b 100644 --- a/arch/sparc64/kernel/etrap.S +++ b/arch/sparc64/kernel/etrap.S | |||
@@ -68,12 +68,8 @@ etrap_irq: | |||
68 | 68 | ||
69 | wrpr %g3, 0, %otherwin | 69 | wrpr %g3, 0, %otherwin |
70 | wrpr %g2, 0, %wstate | 70 | wrpr %g2, 0, %wstate |
71 | cplus_etrap_insn_1: | 71 | sethi %hi(sparc64_kern_pri_context), %g2 |
72 | sethi %hi(0), %g3 | 72 | ldx [%g2 + %lo(sparc64_kern_pri_context)], %g3 |
73 | sllx %g3, 32, %g3 | ||
74 | cplus_etrap_insn_2: | ||
75 | sethi %hi(0), %g2 | ||
76 | or %g3, %g2, %g3 | ||
77 | stxa %g3, [%l4] ASI_DMMU | 73 | stxa %g3, [%l4] ASI_DMMU |
78 | flush %l6 | 74 | flush %l6 |
79 | wr %g0, ASI_AIUS, %asi | 75 | wr %g0, ASI_AIUS, %asi |
@@ -215,12 +211,8 @@ scetrap: rdpr %pil, %g2 | |||
215 | mov PRIMARY_CONTEXT, %l4 | 211 | mov PRIMARY_CONTEXT, %l4 |
216 | wrpr %g3, 0, %otherwin | 212 | wrpr %g3, 0, %otherwin |
217 | wrpr %g2, 0, %wstate | 213 | wrpr %g2, 0, %wstate |
218 | cplus_etrap_insn_3: | 214 | sethi %hi(sparc64_kern_pri_context), %g2 |
219 | sethi %hi(0), %g3 | 215 | ldx [%g2 + %lo(sparc64_kern_pri_context)], %g3 |
220 | sllx %g3, 32, %g3 | ||
221 | cplus_etrap_insn_4: | ||
222 | sethi %hi(0), %g2 | ||
223 | or %g3, %g2, %g3 | ||
224 | stxa %g3, [%l4] ASI_DMMU | 216 | stxa %g3, [%l4] ASI_DMMU |
225 | flush %l6 | 217 | flush %l6 |
226 | 218 | ||
@@ -264,38 +256,3 @@ cplus_etrap_insn_4: | |||
264 | 256 | ||
265 | #undef TASK_REGOFF | 257 | #undef TASK_REGOFF |
266 | #undef ETRAP_PSTATE1 | 258 | #undef ETRAP_PSTATE1 |
267 | |||
268 | cplus_einsn_1: | ||
269 | sethi %uhi(CTX_CHEETAH_PLUS_NUC), %g3 | ||
270 | cplus_einsn_2: | ||
271 | sethi %hi(CTX_CHEETAH_PLUS_CTX0), %g2 | ||
272 | |||
273 | .globl cheetah_plus_patch_etrap | ||
274 | cheetah_plus_patch_etrap: | ||
275 | /* We configure the dTLB512_0 for 4MB pages and the | ||
276 | * dTLB512_1 for 8K pages when in context zero. | ||
277 | */ | ||
278 | sethi %hi(cplus_einsn_1), %o0 | ||
279 | sethi %hi(cplus_etrap_insn_1), %o2 | ||
280 | lduw [%o0 + %lo(cplus_einsn_1)], %o1 | ||
281 | or %o2, %lo(cplus_etrap_insn_1), %o2 | ||
282 | stw %o1, [%o2] | ||
283 | flush %o2 | ||
284 | sethi %hi(cplus_etrap_insn_3), %o2 | ||
285 | or %o2, %lo(cplus_etrap_insn_3), %o2 | ||
286 | stw %o1, [%o2] | ||
287 | flush %o2 | ||
288 | |||
289 | sethi %hi(cplus_einsn_2), %o0 | ||
290 | sethi %hi(cplus_etrap_insn_2), %o2 | ||
291 | lduw [%o0 + %lo(cplus_einsn_2)], %o1 | ||
292 | or %o2, %lo(cplus_etrap_insn_2), %o2 | ||
293 | stw %o1, [%o2] | ||
294 | flush %o2 | ||
295 | sethi %hi(cplus_etrap_insn_4), %o2 | ||
296 | or %o2, %lo(cplus_etrap_insn_4), %o2 | ||
297 | stw %o1, [%o2] | ||
298 | flush %o2 | ||
299 | |||
300 | retl | ||
301 | nop | ||
diff --git a/arch/sparc64/kernel/head.S b/arch/sparc64/kernel/head.S index 89406f9649a9..b49dcd4504b0 100644 --- a/arch/sparc64/kernel/head.S +++ b/arch/sparc64/kernel/head.S | |||
@@ -28,19 +28,14 @@ | |||
28 | #include <asm/mmu.h> | 28 | #include <asm/mmu.h> |
29 | 29 | ||
30 | /* This section from from _start to sparc64_boot_end should fit into | 30 | /* This section from from _start to sparc64_boot_end should fit into |
31 | * 0x0000.0000.0040.4000 to 0x0000.0000.0040.8000 and will be sharing space | 31 | * 0x0000000000404000 to 0x0000000000408000. |
32 | * with bootup_user_stack, which is from 0x0000.0000.0040.4000 to | ||
33 | * 0x0000.0000.0040.6000 and empty_bad_page, which is from | ||
34 | * 0x0000.0000.0040.6000 to 0x0000.0000.0040.8000. | ||
35 | */ | 32 | */ |
36 | |||
37 | .text | 33 | .text |
38 | .globl start, _start, stext, _stext | 34 | .globl start, _start, stext, _stext |
39 | _start: | 35 | _start: |
40 | start: | 36 | start: |
41 | _stext: | 37 | _stext: |
42 | stext: | 38 | stext: |
43 | bootup_user_stack: | ||
44 | ! 0x0000000000404000 | 39 | ! 0x0000000000404000 |
45 | b sparc64_boot | 40 | b sparc64_boot |
46 | flushw /* Flush register file. */ | 41 | flushw /* Flush register file. */ |
@@ -191,8 +186,9 @@ prom_boot_mapping_phys_low: | |||
191 | stx %l3, [%sp + 2047 + 128 + 0x10] ! num_rets, 5 | 186 | stx %l3, [%sp + 2047 + 128 + 0x10] ! num_rets, 5 |
192 | stx %l2, [%sp + 2047 + 128 + 0x18] ! arg1: "translate" | 187 | stx %l2, [%sp + 2047 + 128 + 0x18] ! arg1: "translate" |
193 | stx %l5, [%sp + 2047 + 128 + 0x20] ! arg2: prom_mmu_ihandle_cache | 188 | stx %l5, [%sp + 2047 + 128 + 0x20] ! arg2: prom_mmu_ihandle_cache |
194 | srlx %l0, 22, %l3 | 189 | /* PAGE align */ |
195 | sllx %l3, 22, %l3 | 190 | srlx %l0, 13, %l3 |
191 | sllx %l3, 13, %l3 | ||
196 | stx %l3, [%sp + 2047 + 128 + 0x28] ! arg3: vaddr, our PC | 192 | stx %l3, [%sp + 2047 + 128 + 0x28] ! arg3: vaddr, our PC |
197 | stx %g0, [%sp + 2047 + 128 + 0x30] ! res1 | 193 | stx %g0, [%sp + 2047 + 128 + 0x30] ! res1 |
198 | stx %g0, [%sp + 2047 + 128 + 0x38] ! res2 | 194 | stx %g0, [%sp + 2047 + 128 + 0x38] ! res2 |
@@ -211,6 +207,9 @@ prom_boot_mapping_phys_low: | |||
211 | ldx [%sp + 2047 + 128 + 0x48], %l2 ! physaddr high | 207 | ldx [%sp + 2047 + 128 + 0x48], %l2 ! physaddr high |
212 | stx %l2, [%l4 + 0x0] | 208 | stx %l2, [%l4 + 0x0] |
213 | ldx [%sp + 2047 + 128 + 0x50], %l3 ! physaddr low | 209 | ldx [%sp + 2047 + 128 + 0x50], %l3 ! physaddr low |
210 | /* 4MB align */ | ||
211 | srlx %l3, 22, %l3 | ||
212 | sllx %l3, 22, %l3 | ||
214 | stx %l3, [%l4 + 0x8] | 213 | stx %l3, [%l4 + 0x8] |
215 | 214 | ||
216 | /* Leave service as-is, "call-method" */ | 215 | /* Leave service as-is, "call-method" */ |
@@ -325,23 +324,7 @@ cheetah_tlb_fixup: | |||
325 | 1: sethi %hi(tlb_type), %g1 | 324 | 1: sethi %hi(tlb_type), %g1 |
326 | stw %g2, [%g1 + %lo(tlb_type)] | 325 | stw %g2, [%g1 + %lo(tlb_type)] |
327 | 326 | ||
328 | BRANCH_IF_CHEETAH_PLUS_OR_FOLLOWON(g1,g7,1f) | 327 | /* Patch copy/page operations to cheetah optimized versions. */ |
329 | ba,pt %xcc, 2f | ||
330 | nop | ||
331 | |||
332 | 1: /* Patch context register writes to support nucleus page | ||
333 | * size correctly. | ||
334 | */ | ||
335 | call cheetah_plus_patch_etrap | ||
336 | nop | ||
337 | call cheetah_plus_patch_rtrap | ||
338 | nop | ||
339 | call cheetah_plus_patch_fpdis | ||
340 | nop | ||
341 | call cheetah_plus_patch_winfixup | ||
342 | nop | ||
343 | |||
344 | 2: /* Patch copy/page operations to cheetah optimized versions. */ | ||
345 | call cheetah_patch_copyops | 328 | call cheetah_patch_copyops |
346 | nop | 329 | nop |
347 | call cheetah_patch_copy_page | 330 | call cheetah_patch_copy_page |
@@ -398,32 +381,78 @@ tlb_fixup_done: | |||
398 | nop | 381 | nop |
399 | /* Not reached... */ | 382 | /* Not reached... */ |
400 | 383 | ||
401 | /* IMPORTANT NOTE: Whenever making changes here, check | 384 | /* This is meant to allow the sharing of this code between |
402 | * trampoline.S as well. -jj */ | 385 | * boot processor invocation (via setup_tba() below) and |
403 | .globl setup_tba | 386 | * secondary processor startup (via trampoline.S). The |
404 | setup_tba: /* i0 = is_starfire */ | 387 | * former does use this code, the latter does not yet due |
405 | save %sp, -160, %sp | 388 | * to some complexities. That should be fixed up at some |
389 | * point. | ||
390 | * | ||
391 | * There used to be enormous complexity wrt. transferring | ||
392 | * over from the firwmare's trap table to the Linux kernel's. | ||
393 | * For example, there was a chicken & egg problem wrt. building | ||
394 | * the OBP page tables, yet needing to be on the Linux kernel | ||
395 | * trap table (to translate PAGE_OFFSET addresses) in order to | ||
396 | * do that. | ||
397 | * | ||
398 | * We now handle OBP tlb misses differently, via linear lookups | ||
399 | * into the prom_trans[] array. So that specific problem no | ||
400 | * longer exists. Yet, unfortunately there are still some issues | ||
401 | * preventing trampoline.S from using this code... ho hum. | ||
402 | */ | ||
403 | .globl setup_trap_table | ||
404 | setup_trap_table: | ||
405 | save %sp, -192, %sp | ||
406 | 406 | ||
407 | rdpr %tba, %g7 | 407 | /* Force interrupts to be disabled. */ |
408 | sethi %hi(prom_tba), %o1 | 408 | rdpr %pstate, %o1 |
409 | or %o1, %lo(prom_tba), %o1 | 409 | andn %o1, PSTATE_IE, %o1 |
410 | stx %g7, [%o1] | 410 | wrpr %o1, 0x0, %pstate |
411 | wrpr %g0, 15, %pil | ||
412 | |||
413 | /* Make the firmware call to jump over to the Linux trap table. */ | ||
414 | call prom_set_trap_table | ||
415 | sethi %hi(sparc64_ttable_tl0), %o0 | ||
416 | |||
417 | /* Start using proper page size encodings in ctx register. */ | ||
418 | sethi %hi(sparc64_kern_pri_context), %g3 | ||
419 | ldx [%g3 + %lo(sparc64_kern_pri_context)], %g2 | ||
420 | mov PRIMARY_CONTEXT, %g1 | ||
421 | stxa %g2, [%g1] ASI_DMMU | ||
422 | membar #Sync | ||
423 | |||
424 | /* The Linux trap handlers expect various trap global registers | ||
425 | * to be setup with some fixed values. So here we set these | ||
426 | * up very carefully. These globals are: | ||
427 | * | ||
428 | * Alternate Globals (PSTATE_AG): | ||
429 | * | ||
430 | * %g6 --> current_thread_info() | ||
431 | * | ||
432 | * MMU Globals (PSTATE_MG): | ||
433 | * | ||
434 | * %g1 --> TLB_SFSR | ||
435 | * %g2 --> ((_PAGE_VALID | _PAGE_SZ4MB | | ||
436 | * _PAGE_CP | _PAGE_CV | _PAGE_P | _PAGE_W) | ||
437 | * ^ 0xfffff80000000000) | ||
438 | * (this %g2 value is used for computing the PAGE_OFFSET kernel | ||
439 | * TLB entries quickly, the virtual address of the fault XOR'd | ||
440 | * with this %g2 value is the PTE to load into the TLB) | ||
441 | * %g3 --> VPTE_BASE_CHEETAH or VPTE_BASE_SPITFIRE | ||
442 | * | ||
443 | * Interrupt Globals (PSTATE_IG, setup by init_irqwork_curcpu()): | ||
444 | * | ||
445 | * %g6 --> __irq_work[smp_processor_id()] | ||
446 | */ | ||
411 | 447 | ||
412 | /* Setup "Linux" globals 8-) */ | ||
413 | rdpr %pstate, %o1 | 448 | rdpr %pstate, %o1 |
414 | mov %g6, %o2 | 449 | mov %g6, %o2 |
415 | wrpr %o1, (PSTATE_AG|PSTATE_IE), %pstate | 450 | wrpr %o1, PSTATE_AG, %pstate |
416 | sethi %hi(sparc64_ttable_tl0), %g1 | ||
417 | wrpr %g1, %tba | ||
418 | mov %o2, %g6 | 451 | mov %o2, %g6 |
419 | 452 | ||
420 | /* Set up MMU globals */ | ||
421 | wrpr %o1, (PSTATE_MG|PSTATE_IE), %pstate | ||
422 | |||
423 | /* Set fixed globals used by dTLB miss handler. */ | ||
424 | #define KERN_HIGHBITS ((_PAGE_VALID|_PAGE_SZ4MB)^0xfffff80000000000) | 453 | #define KERN_HIGHBITS ((_PAGE_VALID|_PAGE_SZ4MB)^0xfffff80000000000) |
425 | #define KERN_LOWBITS (_PAGE_CP | _PAGE_CV | _PAGE_P | _PAGE_W) | 454 | #define KERN_LOWBITS (_PAGE_CP | _PAGE_CV | _PAGE_P | _PAGE_W) |
426 | 455 | wrpr %o1, PSTATE_MG, %pstate | |
427 | mov TSB_REG, %g1 | 456 | mov TSB_REG, %g1 |
428 | stxa %g0, [%g1] ASI_DMMU | 457 | stxa %g0, [%g1] ASI_DMMU |
429 | membar #Sync | 458 | membar #Sync |
@@ -435,17 +464,17 @@ setup_tba: /* i0 = is_starfire */ | |||
435 | sllx %g2, 32, %g2 | 464 | sllx %g2, 32, %g2 |
436 | or %g2, KERN_LOWBITS, %g2 | 465 | or %g2, KERN_LOWBITS, %g2 |
437 | 466 | ||
438 | BRANCH_IF_ANY_CHEETAH(g3,g7,cheetah_vpte_base) | 467 | BRANCH_IF_ANY_CHEETAH(g3,g7,8f) |
439 | ba,pt %xcc, spitfire_vpte_base | 468 | ba,pt %xcc, 9f |
440 | nop | 469 | nop |
441 | 470 | ||
442 | cheetah_vpte_base: | 471 | 8: |
443 | sethi %uhi(VPTE_BASE_CHEETAH), %g3 | 472 | sethi %uhi(VPTE_BASE_CHEETAH), %g3 |
444 | or %g3, %ulo(VPTE_BASE_CHEETAH), %g3 | 473 | or %g3, %ulo(VPTE_BASE_CHEETAH), %g3 |
445 | ba,pt %xcc, 2f | 474 | ba,pt %xcc, 2f |
446 | sllx %g3, 32, %g3 | 475 | sllx %g3, 32, %g3 |
447 | 476 | ||
448 | spitfire_vpte_base: | 477 | 9: |
449 | sethi %uhi(VPTE_BASE_SPITFIRE), %g3 | 478 | sethi %uhi(VPTE_BASE_SPITFIRE), %g3 |
450 | or %g3, %ulo(VPTE_BASE_SPITFIRE), %g3 | 479 | or %g3, %ulo(VPTE_BASE_SPITFIRE), %g3 |
451 | sllx %g3, 32, %g3 | 480 | sllx %g3, 32, %g3 |
@@ -471,48 +500,55 @@ spitfire_vpte_base: | |||
471 | sllx %o2, 32, %o2 | 500 | sllx %o2, 32, %o2 |
472 | wr %o2, %asr25 | 501 | wr %o2, %asr25 |
473 | 502 | ||
474 | /* Ok, we're done setting up all the state our trap mechanims needs, | ||
475 | * now get back into normal globals and let the PROM know what is up. | ||
476 | */ | ||
477 | 2: | 503 | 2: |
478 | wrpr %g0, %g0, %wstate | 504 | wrpr %g0, %g0, %wstate |
479 | wrpr %o1, PSTATE_IE, %pstate | 505 | wrpr %o1, 0x0, %pstate |
480 | 506 | ||
481 | call init_irqwork_curcpu | 507 | call init_irqwork_curcpu |
482 | nop | 508 | nop |
483 | 509 | ||
484 | call prom_set_trap_table | 510 | /* Now we can turn interrupts back on. */ |
485 | sethi %hi(sparc64_ttable_tl0), %o0 | ||
486 | |||
487 | BRANCH_IF_CHEETAH_PLUS_OR_FOLLOWON(g2,g3,1f) | ||
488 | ba,pt %xcc, 2f | ||
489 | nop | ||
490 | |||
491 | 1: /* Start using proper page size encodings in ctx register. */ | ||
492 | sethi %uhi(CTX_CHEETAH_PLUS_NUC), %g3 | ||
493 | mov PRIMARY_CONTEXT, %g1 | ||
494 | sllx %g3, 32, %g3 | ||
495 | sethi %hi(CTX_CHEETAH_PLUS_CTX0), %g2 | ||
496 | or %g3, %g2, %g3 | ||
497 | stxa %g3, [%g1] ASI_DMMU | ||
498 | membar #Sync | ||
499 | |||
500 | 2: | ||
501 | rdpr %pstate, %o1 | 511 | rdpr %pstate, %o1 |
502 | or %o1, PSTATE_IE, %o1 | 512 | or %o1, PSTATE_IE, %o1 |
503 | wrpr %o1, 0, %pstate | 513 | wrpr %o1, 0, %pstate |
514 | wrpr %g0, 0x0, %pil | ||
515 | |||
516 | ret | ||
517 | restore | ||
518 | |||
519 | .globl setup_tba | ||
520 | setup_tba: /* i0 = is_starfire */ | ||
521 | save %sp, -192, %sp | ||
522 | |||
523 | /* The boot processor is the only cpu which invokes this | ||
524 | * routine, the other cpus set things up via trampoline.S. | ||
525 | * So save the OBP trap table address here. | ||
526 | */ | ||
527 | rdpr %tba, %g7 | ||
528 | sethi %hi(prom_tba), %o1 | ||
529 | or %o1, %lo(prom_tba), %o1 | ||
530 | stx %g7, [%o1] | ||
531 | |||
532 | call setup_trap_table | ||
533 | nop | ||
504 | 534 | ||
505 | ret | 535 | ret |
506 | restore | 536 | restore |
537 | sparc64_boot_end: | ||
538 | |||
539 | #include "systbls.S" | ||
540 | #include "ktlb.S" | ||
541 | #include "etrap.S" | ||
542 | #include "rtrap.S" | ||
543 | #include "winfixup.S" | ||
544 | #include "entry.S" | ||
507 | 545 | ||
508 | /* | 546 | /* |
509 | * The following skips make sure the trap table in ttable.S is aligned | 547 | * The following skip makes sure the trap table in ttable.S is aligned |
510 | * on a 32K boundary as required by the v9 specs for TBA register. | 548 | * on a 32K boundary as required by the v9 specs for TBA register. |
511 | */ | 549 | */ |
512 | sparc64_boot_end: | 550 | 1: |
513 | .skip 0x2000 + _start - sparc64_boot_end | 551 | .skip 0x4000 + _start - 1b |
514 | bootup_user_stack_end: | ||
515 | .skip 0x2000 | ||
516 | 552 | ||
517 | #ifdef CONFIG_SBUS | 553 | #ifdef CONFIG_SBUS |
518 | /* This is just a hack to fool make depend config.h discovering | 554 | /* This is just a hack to fool make depend config.h discovering |
@@ -524,15 +560,6 @@ bootup_user_stack_end: | |||
524 | ! 0x0000000000408000 | 560 | ! 0x0000000000408000 |
525 | 561 | ||
526 | #include "ttable.S" | 562 | #include "ttable.S" |
527 | #include "systbls.S" | ||
528 | #include "ktlb.S" | ||
529 | #include "etrap.S" | ||
530 | #include "rtrap.S" | ||
531 | #include "winfixup.S" | ||
532 | #include "entry.S" | ||
533 | |||
534 | /* This is just anal retentiveness on my part... */ | ||
535 | .align 16384 | ||
536 | 563 | ||
537 | .data | 564 | .data |
538 | .align 8 | 565 | .align 8 |
diff --git a/arch/sparc64/kernel/irq.c b/arch/sparc64/kernel/irq.c index c9b69167632a..233526ba3abe 100644 --- a/arch/sparc64/kernel/irq.c +++ b/arch/sparc64/kernel/irq.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <asm/atomic.h> | 27 | #include <asm/atomic.h> |
28 | #include <asm/system.h> | 28 | #include <asm/system.h> |
29 | #include <asm/irq.h> | 29 | #include <asm/irq.h> |
30 | #include <asm/io.h> | ||
30 | #include <asm/sbus.h> | 31 | #include <asm/sbus.h> |
31 | #include <asm/iommu.h> | 32 | #include <asm/iommu.h> |
32 | #include <asm/upa.h> | 33 | #include <asm/upa.h> |
diff --git a/arch/sparc64/kernel/itlb_base.S b/arch/sparc64/kernel/itlb_base.S index b5e32dfa4fbc..4951ff8f6877 100644 --- a/arch/sparc64/kernel/itlb_base.S +++ b/arch/sparc64/kernel/itlb_base.S | |||
@@ -15,14 +15,12 @@ | |||
15 | */ | 15 | */ |
16 | #define CREATE_VPTE_OFFSET1(r1, r2) \ | 16 | #define CREATE_VPTE_OFFSET1(r1, r2) \ |
17 | srax r1, 10, r2 | 17 | srax r1, 10, r2 |
18 | #define CREATE_VPTE_OFFSET2(r1, r2) | 18 | #define CREATE_VPTE_OFFSET2(r1, r2) nop |
19 | #define CREATE_VPTE_NOP nop | ||
20 | #else /* PAGE_SHIFT */ | 19 | #else /* PAGE_SHIFT */ |
21 | #define CREATE_VPTE_OFFSET1(r1, r2) \ | 20 | #define CREATE_VPTE_OFFSET1(r1, r2) \ |
22 | srax r1, PAGE_SHIFT, r2 | 21 | srax r1, PAGE_SHIFT, r2 |
23 | #define CREATE_VPTE_OFFSET2(r1, r2) \ | 22 | #define CREATE_VPTE_OFFSET2(r1, r2) \ |
24 | sllx r2, 3, r2 | 23 | sllx r2, 3, r2 |
25 | #define CREATE_VPTE_NOP | ||
26 | #endif /* PAGE_SHIFT */ | 24 | #endif /* PAGE_SHIFT */ |
27 | 25 | ||
28 | 26 | ||
@@ -36,6 +34,7 @@ | |||
36 | */ | 34 | */ |
37 | 35 | ||
38 | /* ITLB ** ICACHE line 1: Quick user TLB misses */ | 36 | /* ITLB ** ICACHE line 1: Quick user TLB misses */ |
37 | mov TLB_SFSR, %g1 | ||
39 | ldxa [%g1 + %g1] ASI_IMMU, %g4 ! Get TAG_ACCESS | 38 | ldxa [%g1 + %g1] ASI_IMMU, %g4 ! Get TAG_ACCESS |
40 | CREATE_VPTE_OFFSET1(%g4, %g6) ! Create VPTE offset | 39 | CREATE_VPTE_OFFSET1(%g4, %g6) ! Create VPTE offset |
41 | CREATE_VPTE_OFFSET2(%g4, %g6) ! Create VPTE offset | 40 | CREATE_VPTE_OFFSET2(%g4, %g6) ! Create VPTE offset |
@@ -43,41 +42,38 @@ | |||
43 | 1: brgez,pn %g5, 3f ! Not valid, branch out | 42 | 1: brgez,pn %g5, 3f ! Not valid, branch out |
44 | sethi %hi(_PAGE_EXEC), %g4 ! Delay-slot | 43 | sethi %hi(_PAGE_EXEC), %g4 ! Delay-slot |
45 | andcc %g5, %g4, %g0 ! Executable? | 44 | andcc %g5, %g4, %g0 ! Executable? |
45 | |||
46 | /* ITLB ** ICACHE line 2: Real faults */ | ||
46 | be,pn %xcc, 3f ! Nope, branch. | 47 | be,pn %xcc, 3f ! Nope, branch. |
47 | nop ! Delay-slot | 48 | nop ! Delay-slot |
48 | 2: stxa %g5, [%g0] ASI_ITLB_DATA_IN ! Load PTE into TLB | 49 | 2: stxa %g5, [%g0] ASI_ITLB_DATA_IN ! Load PTE into TLB |
49 | retry ! Trap return | 50 | retry ! Trap return |
50 | 3: rdpr %pstate, %g4 ! Move into alternate globals | 51 | 3: rdpr %pstate, %g4 ! Move into alt-globals |
51 | |||
52 | /* ITLB ** ICACHE line 2: Real faults */ | ||
53 | wrpr %g4, PSTATE_AG|PSTATE_MG, %pstate | 52 | wrpr %g4, PSTATE_AG|PSTATE_MG, %pstate |
54 | rdpr %tpc, %g5 ! And load faulting VA | 53 | rdpr %tpc, %g5 ! And load faulting VA |
55 | mov FAULT_CODE_ITLB, %g4 ! It was read from ITLB | 54 | mov FAULT_CODE_ITLB, %g4 ! It was read from ITLB |
56 | sparc64_realfault_common: ! Called by TL0 dtlb_miss too | 55 | |
56 | /* ITLB ** ICACHE line 3: Finish faults */ | ||
57 | sparc64_realfault_common: ! Called by dtlb_miss | ||
57 | stb %g4, [%g6 + TI_FAULT_CODE] | 58 | stb %g4, [%g6 + TI_FAULT_CODE] |
58 | stx %g5, [%g6 + TI_FAULT_ADDR] | 59 | stx %g5, [%g6 + TI_FAULT_ADDR] |
59 | ba,pt %xcc, etrap ! Save state | 60 | ba,pt %xcc, etrap ! Save state |
60 | 1: rd %pc, %g7 ! ... | 61 | 1: rd %pc, %g7 ! ... |
61 | nop | ||
62 | |||
63 | /* ITLB ** ICACHE line 3: Finish faults + window fixups */ | ||
64 | call do_sparc64_fault ! Call fault handler | 62 | call do_sparc64_fault ! Call fault handler |
65 | add %sp, PTREGS_OFF, %o0! Compute pt_regs arg | 63 | add %sp, PTREGS_OFF, %o0! Compute pt_regs arg |
66 | ba,pt %xcc, rtrap_clr_l6 ! Restore cpu state | 64 | ba,pt %xcc, rtrap_clr_l6 ! Restore cpu state |
67 | nop | 65 | nop |
66 | |||
67 | /* ITLB ** ICACHE line 4: Window fixups */ | ||
68 | winfix_trampoline: | 68 | winfix_trampoline: |
69 | rdpr %tpc, %g3 ! Prepare winfixup TNPC | 69 | rdpr %tpc, %g3 ! Prepare winfixup TNPC |
70 | or %g3, 0x7c, %g3 ! Compute offset to branch | 70 | or %g3, 0x7c, %g3 ! Compute branch offset |
71 | wrpr %g3, %tnpc ! Write it into TNPC | 71 | wrpr %g3, %tnpc ! Write it into TNPC |
72 | done ! Do it to it | 72 | done ! Do it to it |
73 | |||
74 | /* ITLB ** ICACHE line 4: Unused... */ | ||
75 | nop | 73 | nop |
76 | nop | 74 | nop |
77 | nop | 75 | nop |
78 | nop | 76 | nop |
79 | CREATE_VPTE_NOP | ||
80 | 77 | ||
81 | #undef CREATE_VPTE_OFFSET1 | 78 | #undef CREATE_VPTE_OFFSET1 |
82 | #undef CREATE_VPTE_OFFSET2 | 79 | #undef CREATE_VPTE_OFFSET2 |
83 | #undef CREATE_VPTE_NOP | ||
diff --git a/arch/sparc64/kernel/ktlb.S b/arch/sparc64/kernel/ktlb.S index 7796b37f478c..d9244d3c9f73 100644 --- a/arch/sparc64/kernel/ktlb.S +++ b/arch/sparc64/kernel/ktlb.S | |||
@@ -58,9 +58,6 @@ vpte_noent: | |||
58 | done | 58 | done |
59 | 59 | ||
60 | vpte_insn_obp: | 60 | vpte_insn_obp: |
61 | sethi %hi(prom_pmd_phys), %g5 | ||
62 | ldx [%g5 + %lo(prom_pmd_phys)], %g5 | ||
63 | |||
64 | /* Behave as if we are at TL0. */ | 61 | /* Behave as if we are at TL0. */ |
65 | wrpr %g0, 1, %tl | 62 | wrpr %g0, 1, %tl |
66 | rdpr %tpc, %g4 /* Find original faulting iaddr */ | 63 | rdpr %tpc, %g4 /* Find original faulting iaddr */ |
@@ -71,58 +68,57 @@ vpte_insn_obp: | |||
71 | mov TLB_SFSR, %g1 | 68 | mov TLB_SFSR, %g1 |
72 | stxa %g4, [%g1 + %g1] ASI_IMMU | 69 | stxa %g4, [%g1 + %g1] ASI_IMMU |
73 | 70 | ||
74 | /* Get PMD offset. */ | 71 | sethi %hi(prom_trans), %g5 |
75 | srlx %g4, 23, %g6 | 72 | or %g5, %lo(prom_trans), %g5 |
76 | and %g6, 0x7ff, %g6 | 73 | |
77 | sllx %g6, 2, %g6 | 74 | 1: ldx [%g5 + 0x00], %g6 ! base |
78 | 75 | brz,a,pn %g6, longpath ! no more entries, fail | |
79 | /* Load PMD, is it valid? */ | 76 | mov TLB_SFSR, %g1 ! and restore %g1 |
80 | lduwa [%g5 + %g6] ASI_PHYS_USE_EC, %g5 | 77 | ldx [%g5 + 0x08], %g1 ! len |
81 | brz,pn %g5, longpath | 78 | add %g6, %g1, %g1 ! end |
82 | sllx %g5, 11, %g5 | 79 | cmp %g6, %g4 |
83 | 80 | bgu,pt %xcc, 2f | |
84 | /* Get PTE offset. */ | 81 | cmp %g4, %g1 |
85 | srlx %g4, 13, %g6 | 82 | bgeu,pt %xcc, 2f |
86 | and %g6, 0x3ff, %g6 | 83 | ldx [%g5 + 0x10], %g1 ! PTE |
87 | sllx %g6, 3, %g6 | 84 | |
88 | 85 | /* TLB load, restore %g1, and return from trap. */ | |
89 | /* Load PTE. */ | 86 | sub %g4, %g6, %g6 |
90 | ldxa [%g5 + %g6] ASI_PHYS_USE_EC, %g5 | 87 | add %g1, %g6, %g5 |
91 | brgez,pn %g5, longpath | 88 | mov TLB_SFSR, %g1 |
92 | nop | ||
93 | |||
94 | /* TLB load and return from trap. */ | ||
95 | stxa %g5, [%g0] ASI_ITLB_DATA_IN | 89 | stxa %g5, [%g0] ASI_ITLB_DATA_IN |
96 | retry | 90 | retry |
97 | 91 | ||
98 | kvmap_do_obp: | 92 | 2: ba,pt %xcc, 1b |
99 | sethi %hi(prom_pmd_phys), %g5 | 93 | add %g5, (3 * 8), %g5 ! next entry |
100 | ldx [%g5 + %lo(prom_pmd_phys)], %g5 | ||
101 | |||
102 | /* Get PMD offset. */ | ||
103 | srlx %g4, 23, %g6 | ||
104 | and %g6, 0x7ff, %g6 | ||
105 | sllx %g6, 2, %g6 | ||
106 | |||
107 | /* Load PMD, is it valid? */ | ||
108 | lduwa [%g5 + %g6] ASI_PHYS_USE_EC, %g5 | ||
109 | brz,pn %g5, longpath | ||
110 | sllx %g5, 11, %g5 | ||
111 | |||
112 | /* Get PTE offset. */ | ||
113 | srlx %g4, 13, %g6 | ||
114 | and %g6, 0x3ff, %g6 | ||
115 | sllx %g6, 3, %g6 | ||
116 | |||
117 | /* Load PTE. */ | ||
118 | ldxa [%g5 + %g6] ASI_PHYS_USE_EC, %g5 | ||
119 | brgez,pn %g5, longpath | ||
120 | nop | ||
121 | 94 | ||
122 | /* TLB load and return from trap. */ | 95 | kvmap_do_obp: |
96 | sethi %hi(prom_trans), %g5 | ||
97 | or %g5, %lo(prom_trans), %g5 | ||
98 | srlx %g4, 13, %g4 | ||
99 | sllx %g4, 13, %g4 | ||
100 | |||
101 | 1: ldx [%g5 + 0x00], %g6 ! base | ||
102 | brz,a,pn %g6, longpath ! no more entries, fail | ||
103 | mov TLB_SFSR, %g1 ! and restore %g1 | ||
104 | ldx [%g5 + 0x08], %g1 ! len | ||
105 | add %g6, %g1, %g1 ! end | ||
106 | cmp %g6, %g4 | ||
107 | bgu,pt %xcc, 2f | ||
108 | cmp %g4, %g1 | ||
109 | bgeu,pt %xcc, 2f | ||
110 | ldx [%g5 + 0x10], %g1 ! PTE | ||
111 | |||
112 | /* TLB load, restore %g1, and return from trap. */ | ||
113 | sub %g4, %g6, %g6 | ||
114 | add %g1, %g6, %g5 | ||
115 | mov TLB_SFSR, %g1 | ||
123 | stxa %g5, [%g0] ASI_DTLB_DATA_IN | 116 | stxa %g5, [%g0] ASI_DTLB_DATA_IN |
124 | retry | 117 | retry |
125 | 118 | ||
119 | 2: ba,pt %xcc, 1b | ||
120 | add %g5, (3 * 8), %g5 ! next entry | ||
121 | |||
126 | /* | 122 | /* |
127 | * On a first level data miss, check whether this is to the OBP range (note | 123 | * On a first level data miss, check whether this is to the OBP range (note |
128 | * that such accesses can be made by prom, as well as by kernel using | 124 | * that such accesses can be made by prom, as well as by kernel using |
diff --git a/arch/sparc64/kernel/pci_iommu.c b/arch/sparc64/kernel/pci_iommu.c index 425c60cfea19..a11910be1013 100644 --- a/arch/sparc64/kernel/pci_iommu.c +++ b/arch/sparc64/kernel/pci_iommu.c | |||
@@ -49,12 +49,6 @@ static void __iommu_flushall(struct pci_iommu *iommu) | |||
49 | 49 | ||
50 | /* Ensure completion of previous PIO writes. */ | 50 | /* Ensure completion of previous PIO writes. */ |
51 | (void) pci_iommu_read(iommu->write_complete_reg); | 51 | (void) pci_iommu_read(iommu->write_complete_reg); |
52 | |||
53 | /* Now update everyone's flush point. */ | ||
54 | for (entry = 0; entry < PBM_NCLUSTERS; entry++) { | ||
55 | iommu->alloc_info[entry].flush = | ||
56 | iommu->alloc_info[entry].next; | ||
57 | } | ||
58 | } | 52 | } |
59 | 53 | ||
60 | #define IOPTE_CONSISTENT(CTX) \ | 54 | #define IOPTE_CONSISTENT(CTX) \ |
@@ -80,120 +74,117 @@ static void inline iopte_make_dummy(struct pci_iommu *iommu, iopte_t *iopte) | |||
80 | iopte_val(*iopte) = val; | 74 | iopte_val(*iopte) = val; |
81 | } | 75 | } |
82 | 76 | ||
83 | void pci_iommu_table_init(struct pci_iommu *iommu, int tsbsize) | 77 | /* Based largely upon the ppc64 iommu allocator. */ |
78 | static long pci_arena_alloc(struct pci_iommu *iommu, unsigned long npages) | ||
84 | { | 79 | { |
85 | int i; | 80 | struct pci_iommu_arena *arena = &iommu->arena; |
86 | 81 | unsigned long n, i, start, end, limit; | |
87 | tsbsize /= sizeof(iopte_t); | 82 | int pass; |
88 | 83 | ||
89 | for (i = 0; i < tsbsize; i++) | 84 | limit = arena->limit; |
90 | iopte_make_dummy(iommu, &iommu->page_table[i]); | 85 | start = arena->hint; |
91 | } | 86 | pass = 0; |
92 | 87 | ||
93 | static iopte_t *alloc_streaming_cluster(struct pci_iommu *iommu, unsigned long npages) | 88 | again: |
94 | { | 89 | n = find_next_zero_bit(arena->map, limit, start); |
95 | iopte_t *iopte, *limit, *first; | 90 | end = n + npages; |
96 | unsigned long cnum, ent, flush_point; | 91 | if (unlikely(end >= limit)) { |
97 | 92 | if (likely(pass < 1)) { | |
98 | cnum = 0; | 93 | limit = start; |
99 | while ((1UL << cnum) < npages) | 94 | start = 0; |
100 | cnum++; | 95 | __iommu_flushall(iommu); |
101 | iopte = (iommu->page_table + | 96 | pass++; |
102 | (cnum << (iommu->page_table_sz_bits - PBM_LOGCLUSTERS))); | 97 | goto again; |
103 | 98 | } else { | |
104 | if (cnum == 0) | 99 | /* Scanned the whole thing, give up. */ |
105 | limit = (iommu->page_table + | 100 | return -1; |
106 | iommu->lowest_consistent_map); | ||
107 | else | ||
108 | limit = (iopte + | ||
109 | (1 << (iommu->page_table_sz_bits - PBM_LOGCLUSTERS))); | ||
110 | |||
111 | iopte += ((ent = iommu->alloc_info[cnum].next) << cnum); | ||
112 | flush_point = iommu->alloc_info[cnum].flush; | ||
113 | |||
114 | first = iopte; | ||
115 | for (;;) { | ||
116 | if (IOPTE_IS_DUMMY(iommu, iopte)) { | ||
117 | if ((iopte + (1 << cnum)) >= limit) | ||
118 | ent = 0; | ||
119 | else | ||
120 | ent = ent + 1; | ||
121 | iommu->alloc_info[cnum].next = ent; | ||
122 | if (ent == flush_point) | ||
123 | __iommu_flushall(iommu); | ||
124 | break; | ||
125 | } | 101 | } |
126 | iopte += (1 << cnum); | 102 | } |
127 | ent++; | 103 | |
128 | if (iopte >= limit) { | 104 | for (i = n; i < end; i++) { |
129 | iopte = (iommu->page_table + | 105 | if (test_bit(i, arena->map)) { |
130 | (cnum << | 106 | start = i + 1; |
131 | (iommu->page_table_sz_bits - PBM_LOGCLUSTERS))); | 107 | goto again; |
132 | ent = 0; | ||
133 | } | 108 | } |
134 | if (ent == flush_point) | ||
135 | __iommu_flushall(iommu); | ||
136 | if (iopte == first) | ||
137 | goto bad; | ||
138 | } | 109 | } |
139 | 110 | ||
140 | /* I've got your streaming cluster right here buddy boy... */ | 111 | for (i = n; i < end; i++) |
141 | return iopte; | 112 | __set_bit(i, arena->map); |
142 | 113 | ||
143 | bad: | 114 | arena->hint = end; |
144 | printk(KERN_EMERG "pci_iommu: alloc_streaming_cluster of npages(%ld) failed!\n", | 115 | |
145 | npages); | 116 | return n; |
146 | return NULL; | ||
147 | } | 117 | } |
148 | 118 | ||
149 | static void free_streaming_cluster(struct pci_iommu *iommu, dma_addr_t base, | 119 | static void pci_arena_free(struct pci_iommu_arena *arena, unsigned long base, unsigned long npages) |
150 | unsigned long npages, unsigned long ctx) | ||
151 | { | 120 | { |
152 | unsigned long cnum, ent; | 121 | unsigned long i; |
153 | 122 | ||
154 | cnum = 0; | 123 | for (i = base; i < (base + npages); i++) |
155 | while ((1UL << cnum) < npages) | 124 | __clear_bit(i, arena->map); |
156 | cnum++; | 125 | } |
157 | 126 | ||
158 | ent = (base << (32 - IO_PAGE_SHIFT + PBM_LOGCLUSTERS - iommu->page_table_sz_bits)) | 127 | void pci_iommu_table_init(struct pci_iommu *iommu, int tsbsize, u32 dma_offset, u32 dma_addr_mask) |
159 | >> (32 + PBM_LOGCLUSTERS + cnum - iommu->page_table_sz_bits); | 128 | { |
129 | unsigned long i, tsbbase, order, sz, num_tsb_entries; | ||
130 | |||
131 | num_tsb_entries = tsbsize / sizeof(iopte_t); | ||
132 | |||
133 | /* Setup initial software IOMMU state. */ | ||
134 | spin_lock_init(&iommu->lock); | ||
135 | iommu->ctx_lowest_free = 1; | ||
136 | iommu->page_table_map_base = dma_offset; | ||
137 | iommu->dma_addr_mask = dma_addr_mask; | ||
138 | |||
139 | /* Allocate and initialize the free area map. */ | ||
140 | sz = num_tsb_entries / 8; | ||
141 | sz = (sz + 7UL) & ~7UL; | ||
142 | iommu->arena.map = kmalloc(sz, GFP_KERNEL); | ||
143 | if (!iommu->arena.map) { | ||
144 | prom_printf("PCI_IOMMU: Error, kmalloc(arena.map) failed.\n"); | ||
145 | prom_halt(); | ||
146 | } | ||
147 | memset(iommu->arena.map, 0, sz); | ||
148 | iommu->arena.limit = num_tsb_entries; | ||
160 | 149 | ||
161 | /* If the global flush might not have caught this entry, | 150 | /* Allocate and initialize the dummy page which we |
162 | * adjust the flush point such that we will flush before | 151 | * set inactive IO PTEs to point to. |
163 | * ever trying to reuse it. | ||
164 | */ | 152 | */ |
165 | #define between(X,Y,Z) (((Z) - (Y)) >= ((X) - (Y))) | 153 | iommu->dummy_page = __get_free_pages(GFP_KERNEL, 0); |
166 | if (between(ent, iommu->alloc_info[cnum].next, iommu->alloc_info[cnum].flush)) | 154 | if (!iommu->dummy_page) { |
167 | iommu->alloc_info[cnum].flush = ent; | 155 | prom_printf("PCI_IOMMU: Error, gfp(dummy_page) failed.\n"); |
168 | #undef between | 156 | prom_halt(); |
157 | } | ||
158 | memset((void *)iommu->dummy_page, 0, PAGE_SIZE); | ||
159 | iommu->dummy_page_pa = (unsigned long) __pa(iommu->dummy_page); | ||
160 | |||
161 | /* Now allocate and setup the IOMMU page table itself. */ | ||
162 | order = get_order(tsbsize); | ||
163 | tsbbase = __get_free_pages(GFP_KERNEL, order); | ||
164 | if (!tsbbase) { | ||
165 | prom_printf("PCI_IOMMU: Error, gfp(tsb) failed.\n"); | ||
166 | prom_halt(); | ||
167 | } | ||
168 | iommu->page_table = (iopte_t *)tsbbase; | ||
169 | |||
170 | for (i = 0; i < num_tsb_entries; i++) | ||
171 | iopte_make_dummy(iommu, &iommu->page_table[i]); | ||
169 | } | 172 | } |
170 | 173 | ||
171 | /* We allocate consistent mappings from the end of cluster zero. */ | 174 | static inline iopte_t *alloc_npages(struct pci_iommu *iommu, unsigned long npages) |
172 | static iopte_t *alloc_consistent_cluster(struct pci_iommu *iommu, unsigned long npages) | ||
173 | { | 175 | { |
174 | iopte_t *iopte; | 176 | long entry; |
175 | 177 | ||
176 | iopte = iommu->page_table + (1 << (iommu->page_table_sz_bits - PBM_LOGCLUSTERS)); | 178 | entry = pci_arena_alloc(iommu, npages); |
177 | while (iopte > iommu->page_table) { | 179 | if (unlikely(entry < 0)) |
178 | iopte--; | 180 | return NULL; |
179 | if (IOPTE_IS_DUMMY(iommu, iopte)) { | ||
180 | unsigned long tmp = npages; | ||
181 | 181 | ||
182 | while (--tmp) { | 182 | return iommu->page_table + entry; |
183 | iopte--; | 183 | } |
184 | if (!IOPTE_IS_DUMMY(iommu, iopte)) | ||
185 | break; | ||
186 | } | ||
187 | if (tmp == 0) { | ||
188 | u32 entry = (iopte - iommu->page_table); | ||
189 | 184 | ||
190 | if (entry < iommu->lowest_consistent_map) | 185 | static inline void free_npages(struct pci_iommu *iommu, dma_addr_t base, unsigned long npages) |
191 | iommu->lowest_consistent_map = entry; | 186 | { |
192 | return iopte; | 187 | pci_arena_free(&iommu->arena, base >> IO_PAGE_SHIFT, npages); |
193 | } | ||
194 | } | ||
195 | } | ||
196 | return NULL; | ||
197 | } | 188 | } |
198 | 189 | ||
199 | static int iommu_alloc_ctx(struct pci_iommu *iommu) | 190 | static int iommu_alloc_ctx(struct pci_iommu *iommu) |
@@ -233,7 +224,7 @@ void *pci_alloc_consistent(struct pci_dev *pdev, size_t size, dma_addr_t *dma_ad | |||
233 | struct pcidev_cookie *pcp; | 224 | struct pcidev_cookie *pcp; |
234 | struct pci_iommu *iommu; | 225 | struct pci_iommu *iommu; |
235 | iopte_t *iopte; | 226 | iopte_t *iopte; |
236 | unsigned long flags, order, first_page, ctx; | 227 | unsigned long flags, order, first_page; |
237 | void *ret; | 228 | void *ret; |
238 | int npages; | 229 | int npages; |
239 | 230 | ||
@@ -251,9 +242,10 @@ void *pci_alloc_consistent(struct pci_dev *pdev, size_t size, dma_addr_t *dma_ad | |||
251 | iommu = pcp->pbm->iommu; | 242 | iommu = pcp->pbm->iommu; |
252 | 243 | ||
253 | spin_lock_irqsave(&iommu->lock, flags); | 244 | spin_lock_irqsave(&iommu->lock, flags); |
254 | iopte = alloc_consistent_cluster(iommu, size >> IO_PAGE_SHIFT); | 245 | iopte = alloc_npages(iommu, size >> IO_PAGE_SHIFT); |
255 | if (iopte == NULL) { | 246 | spin_unlock_irqrestore(&iommu->lock, flags); |
256 | spin_unlock_irqrestore(&iommu->lock, flags); | 247 | |
248 | if (unlikely(iopte == NULL)) { | ||
257 | free_pages(first_page, order); | 249 | free_pages(first_page, order); |
258 | return NULL; | 250 | return NULL; |
259 | } | 251 | } |
@@ -262,31 +254,15 @@ void *pci_alloc_consistent(struct pci_dev *pdev, size_t size, dma_addr_t *dma_ad | |||
262 | ((iopte - iommu->page_table) << IO_PAGE_SHIFT)); | 254 | ((iopte - iommu->page_table) << IO_PAGE_SHIFT)); |
263 | ret = (void *) first_page; | 255 | ret = (void *) first_page; |
264 | npages = size >> IO_PAGE_SHIFT; | 256 | npages = size >> IO_PAGE_SHIFT; |
265 | ctx = 0; | ||
266 | if (iommu->iommu_ctxflush) | ||
267 | ctx = iommu_alloc_ctx(iommu); | ||
268 | first_page = __pa(first_page); | 257 | first_page = __pa(first_page); |
269 | while (npages--) { | 258 | while (npages--) { |
270 | iopte_val(*iopte) = (IOPTE_CONSISTENT(ctx) | | 259 | iopte_val(*iopte) = (IOPTE_CONSISTENT(0UL) | |
271 | IOPTE_WRITE | | 260 | IOPTE_WRITE | |
272 | (first_page & IOPTE_PAGE)); | 261 | (first_page & IOPTE_PAGE)); |
273 | iopte++; | 262 | iopte++; |
274 | first_page += IO_PAGE_SIZE; | 263 | first_page += IO_PAGE_SIZE; |
275 | } | 264 | } |
276 | 265 | ||
277 | { | ||
278 | int i; | ||
279 | u32 daddr = *dma_addrp; | ||
280 | |||
281 | npages = size >> IO_PAGE_SHIFT; | ||
282 | for (i = 0; i < npages; i++) { | ||
283 | pci_iommu_write(iommu->iommu_flush, daddr); | ||
284 | daddr += IO_PAGE_SIZE; | ||
285 | } | ||
286 | } | ||
287 | |||
288 | spin_unlock_irqrestore(&iommu->lock, flags); | ||
289 | |||
290 | return ret; | 266 | return ret; |
291 | } | 267 | } |
292 | 268 | ||
@@ -296,7 +272,7 @@ void pci_free_consistent(struct pci_dev *pdev, size_t size, void *cpu, dma_addr_ | |||
296 | struct pcidev_cookie *pcp; | 272 | struct pcidev_cookie *pcp; |
297 | struct pci_iommu *iommu; | 273 | struct pci_iommu *iommu; |
298 | iopte_t *iopte; | 274 | iopte_t *iopte; |
299 | unsigned long flags, order, npages, i, ctx; | 275 | unsigned long flags, order, npages; |
300 | 276 | ||
301 | npages = IO_PAGE_ALIGN(size) >> IO_PAGE_SHIFT; | 277 | npages = IO_PAGE_ALIGN(size) >> IO_PAGE_SHIFT; |
302 | pcp = pdev->sysdata; | 278 | pcp = pdev->sysdata; |
@@ -306,46 +282,7 @@ void pci_free_consistent(struct pci_dev *pdev, size_t size, void *cpu, dma_addr_ | |||
306 | 282 | ||
307 | spin_lock_irqsave(&iommu->lock, flags); | 283 | spin_lock_irqsave(&iommu->lock, flags); |
308 | 284 | ||
309 | if ((iopte - iommu->page_table) == | 285 | free_npages(iommu, dvma, npages); |
310 | iommu->lowest_consistent_map) { | ||
311 | iopte_t *walk = iopte + npages; | ||
312 | iopte_t *limit; | ||
313 | |||
314 | limit = (iommu->page_table + | ||
315 | (1 << (iommu->page_table_sz_bits - PBM_LOGCLUSTERS))); | ||
316 | while (walk < limit) { | ||
317 | if (!IOPTE_IS_DUMMY(iommu, walk)) | ||
318 | break; | ||
319 | walk++; | ||
320 | } | ||
321 | iommu->lowest_consistent_map = | ||
322 | (walk - iommu->page_table); | ||
323 | } | ||
324 | |||
325 | /* Data for consistent mappings cannot enter the streaming | ||
326 | * buffers, so we only need to update the TSB. We flush | ||
327 | * the IOMMU here as well to prevent conflicts with the | ||
328 | * streaming mapping deferred tlb flush scheme. | ||
329 | */ | ||
330 | |||
331 | ctx = 0; | ||
332 | if (iommu->iommu_ctxflush) | ||
333 | ctx = (iopte_val(*iopte) & IOPTE_CONTEXT) >> 47UL; | ||
334 | |||
335 | for (i = 0; i < npages; i++, iopte++) | ||
336 | iopte_make_dummy(iommu, iopte); | ||
337 | |||
338 | if (iommu->iommu_ctxflush) { | ||
339 | pci_iommu_write(iommu->iommu_ctxflush, ctx); | ||
340 | } else { | ||
341 | for (i = 0; i < npages; i++) { | ||
342 | u32 daddr = dvma + (i << IO_PAGE_SHIFT); | ||
343 | |||
344 | pci_iommu_write(iommu->iommu_flush, daddr); | ||
345 | } | ||
346 | } | ||
347 | |||
348 | iommu_free_ctx(iommu, ctx); | ||
349 | 286 | ||
350 | spin_unlock_irqrestore(&iommu->lock, flags); | 287 | spin_unlock_irqrestore(&iommu->lock, flags); |
351 | 288 | ||
@@ -372,25 +309,27 @@ dma_addr_t pci_map_single(struct pci_dev *pdev, void *ptr, size_t sz, int direct | |||
372 | iommu = pcp->pbm->iommu; | 309 | iommu = pcp->pbm->iommu; |
373 | strbuf = &pcp->pbm->stc; | 310 | strbuf = &pcp->pbm->stc; |
374 | 311 | ||
375 | if (direction == PCI_DMA_NONE) | 312 | if (unlikely(direction == PCI_DMA_NONE)) |
376 | BUG(); | 313 | goto bad_no_ctx; |
377 | 314 | ||
378 | oaddr = (unsigned long)ptr; | 315 | oaddr = (unsigned long)ptr; |
379 | npages = IO_PAGE_ALIGN(oaddr + sz) - (oaddr & IO_PAGE_MASK); | 316 | npages = IO_PAGE_ALIGN(oaddr + sz) - (oaddr & IO_PAGE_MASK); |
380 | npages >>= IO_PAGE_SHIFT; | 317 | npages >>= IO_PAGE_SHIFT; |
381 | 318 | ||
382 | spin_lock_irqsave(&iommu->lock, flags); | 319 | spin_lock_irqsave(&iommu->lock, flags); |
320 | base = alloc_npages(iommu, npages); | ||
321 | ctx = 0; | ||
322 | if (iommu->iommu_ctxflush) | ||
323 | ctx = iommu_alloc_ctx(iommu); | ||
324 | spin_unlock_irqrestore(&iommu->lock, flags); | ||
383 | 325 | ||
384 | base = alloc_streaming_cluster(iommu, npages); | 326 | if (unlikely(!base)) |
385 | if (base == NULL) | ||
386 | goto bad; | 327 | goto bad; |
328 | |||
387 | bus_addr = (iommu->page_table_map_base + | 329 | bus_addr = (iommu->page_table_map_base + |
388 | ((base - iommu->page_table) << IO_PAGE_SHIFT)); | 330 | ((base - iommu->page_table) << IO_PAGE_SHIFT)); |
389 | ret = bus_addr | (oaddr & ~IO_PAGE_MASK); | 331 | ret = bus_addr | (oaddr & ~IO_PAGE_MASK); |
390 | base_paddr = __pa(oaddr & IO_PAGE_MASK); | 332 | base_paddr = __pa(oaddr & IO_PAGE_MASK); |
391 | ctx = 0; | ||
392 | if (iommu->iommu_ctxflush) | ||
393 | ctx = iommu_alloc_ctx(iommu); | ||
394 | if (strbuf->strbuf_enabled) | 333 | if (strbuf->strbuf_enabled) |
395 | iopte_protection = IOPTE_STREAMING(ctx); | 334 | iopte_protection = IOPTE_STREAMING(ctx); |
396 | else | 335 | else |
@@ -401,12 +340,13 @@ dma_addr_t pci_map_single(struct pci_dev *pdev, void *ptr, size_t sz, int direct | |||
401 | for (i = 0; i < npages; i++, base++, base_paddr += IO_PAGE_SIZE) | 340 | for (i = 0; i < npages; i++, base++, base_paddr += IO_PAGE_SIZE) |
402 | iopte_val(*base) = iopte_protection | base_paddr; | 341 | iopte_val(*base) = iopte_protection | base_paddr; |
403 | 342 | ||
404 | spin_unlock_irqrestore(&iommu->lock, flags); | ||
405 | |||
406 | return ret; | 343 | return ret; |
407 | 344 | ||
408 | bad: | 345 | bad: |
409 | spin_unlock_irqrestore(&iommu->lock, flags); | 346 | iommu_free_ctx(iommu, ctx); |
347 | bad_no_ctx: | ||
348 | if (printk_ratelimit()) | ||
349 | WARN_ON(1); | ||
410 | return PCI_DMA_ERROR_CODE; | 350 | return PCI_DMA_ERROR_CODE; |
411 | } | 351 | } |
412 | 352 | ||
@@ -481,10 +421,13 @@ void pci_unmap_single(struct pci_dev *pdev, dma_addr_t bus_addr, size_t sz, int | |||
481 | struct pci_iommu *iommu; | 421 | struct pci_iommu *iommu; |
482 | struct pci_strbuf *strbuf; | 422 | struct pci_strbuf *strbuf; |
483 | iopte_t *base; | 423 | iopte_t *base; |
484 | unsigned long flags, npages, ctx; | 424 | unsigned long flags, npages, ctx, i; |
485 | 425 | ||
486 | if (direction == PCI_DMA_NONE) | 426 | if (unlikely(direction == PCI_DMA_NONE)) { |
487 | BUG(); | 427 | if (printk_ratelimit()) |
428 | WARN_ON(1); | ||
429 | return; | ||
430 | } | ||
488 | 431 | ||
489 | pcp = pdev->sysdata; | 432 | pcp = pdev->sysdata; |
490 | iommu = pcp->pbm->iommu; | 433 | iommu = pcp->pbm->iommu; |
@@ -510,13 +453,14 @@ void pci_unmap_single(struct pci_dev *pdev, dma_addr_t bus_addr, size_t sz, int | |||
510 | 453 | ||
511 | /* Step 1: Kick data out of streaming buffers if necessary. */ | 454 | /* Step 1: Kick data out of streaming buffers if necessary. */ |
512 | if (strbuf->strbuf_enabled) | 455 | if (strbuf->strbuf_enabled) |
513 | pci_strbuf_flush(strbuf, iommu, bus_addr, ctx, npages, direction); | 456 | pci_strbuf_flush(strbuf, iommu, bus_addr, ctx, |
457 | npages, direction); | ||
514 | 458 | ||
515 | /* Step 2: Clear out first TSB entry. */ | 459 | /* Step 2: Clear out TSB entries. */ |
516 | iopte_make_dummy(iommu, base); | 460 | for (i = 0; i < npages; i++) |
461 | iopte_make_dummy(iommu, base + i); | ||
517 | 462 | ||
518 | free_streaming_cluster(iommu, bus_addr - iommu->page_table_map_base, | 463 | free_npages(iommu, bus_addr - iommu->page_table_map_base, npages); |
519 | npages, ctx); | ||
520 | 464 | ||
521 | iommu_free_ctx(iommu, ctx); | 465 | iommu_free_ctx(iommu, ctx); |
522 | 466 | ||
@@ -621,6 +565,8 @@ int pci_map_sg(struct pci_dev *pdev, struct scatterlist *sglist, int nelems, int | |||
621 | pci_map_single(pdev, | 565 | pci_map_single(pdev, |
622 | (page_address(sglist->page) + sglist->offset), | 566 | (page_address(sglist->page) + sglist->offset), |
623 | sglist->length, direction); | 567 | sglist->length, direction); |
568 | if (unlikely(sglist->dma_address == PCI_DMA_ERROR_CODE)) | ||
569 | return 0; | ||
624 | sglist->dma_length = sglist->length; | 570 | sglist->dma_length = sglist->length; |
625 | return 1; | 571 | return 1; |
626 | } | 572 | } |
@@ -629,21 +575,29 @@ int pci_map_sg(struct pci_dev *pdev, struct scatterlist *sglist, int nelems, int | |||
629 | iommu = pcp->pbm->iommu; | 575 | iommu = pcp->pbm->iommu; |
630 | strbuf = &pcp->pbm->stc; | 576 | strbuf = &pcp->pbm->stc; |
631 | 577 | ||
632 | if (direction == PCI_DMA_NONE) | 578 | if (unlikely(direction == PCI_DMA_NONE)) |
633 | BUG(); | 579 | goto bad_no_ctx; |
634 | 580 | ||
635 | /* Step 1: Prepare scatter list. */ | 581 | /* Step 1: Prepare scatter list. */ |
636 | 582 | ||
637 | npages = prepare_sg(sglist, nelems); | 583 | npages = prepare_sg(sglist, nelems); |
638 | 584 | ||
639 | /* Step 2: Allocate a cluster. */ | 585 | /* Step 2: Allocate a cluster and context, if necessary. */ |
640 | 586 | ||
641 | spin_lock_irqsave(&iommu->lock, flags); | 587 | spin_lock_irqsave(&iommu->lock, flags); |
642 | 588 | ||
643 | base = alloc_streaming_cluster(iommu, npages); | 589 | base = alloc_npages(iommu, npages); |
590 | ctx = 0; | ||
591 | if (iommu->iommu_ctxflush) | ||
592 | ctx = iommu_alloc_ctx(iommu); | ||
593 | |||
594 | spin_unlock_irqrestore(&iommu->lock, flags); | ||
595 | |||
644 | if (base == NULL) | 596 | if (base == NULL) |
645 | goto bad; | 597 | goto bad; |
646 | dma_base = iommu->page_table_map_base + ((base - iommu->page_table) << IO_PAGE_SHIFT); | 598 | |
599 | dma_base = iommu->page_table_map_base + | ||
600 | ((base - iommu->page_table) << IO_PAGE_SHIFT); | ||
647 | 601 | ||
648 | /* Step 3: Normalize DMA addresses. */ | 602 | /* Step 3: Normalize DMA addresses. */ |
649 | used = nelems; | 603 | used = nelems; |
@@ -656,30 +610,28 @@ int pci_map_sg(struct pci_dev *pdev, struct scatterlist *sglist, int nelems, int | |||
656 | } | 610 | } |
657 | used = nelems - used; | 611 | used = nelems - used; |
658 | 612 | ||
659 | /* Step 4: Choose a context if necessary. */ | 613 | /* Step 4: Create the mappings. */ |
660 | ctx = 0; | ||
661 | if (iommu->iommu_ctxflush) | ||
662 | ctx = iommu_alloc_ctx(iommu); | ||
663 | |||
664 | /* Step 5: Create the mappings. */ | ||
665 | if (strbuf->strbuf_enabled) | 614 | if (strbuf->strbuf_enabled) |
666 | iopte_protection = IOPTE_STREAMING(ctx); | 615 | iopte_protection = IOPTE_STREAMING(ctx); |
667 | else | 616 | else |
668 | iopte_protection = IOPTE_CONSISTENT(ctx); | 617 | iopte_protection = IOPTE_CONSISTENT(ctx); |
669 | if (direction != PCI_DMA_TODEVICE) | 618 | if (direction != PCI_DMA_TODEVICE) |
670 | iopte_protection |= IOPTE_WRITE; | 619 | iopte_protection |= IOPTE_WRITE; |
671 | fill_sg (base, sglist, used, nelems, iopte_protection); | 620 | |
621 | fill_sg(base, sglist, used, nelems, iopte_protection); | ||
622 | |||
672 | #ifdef VERIFY_SG | 623 | #ifdef VERIFY_SG |
673 | verify_sglist(sglist, nelems, base, npages); | 624 | verify_sglist(sglist, nelems, base, npages); |
674 | #endif | 625 | #endif |
675 | 626 | ||
676 | spin_unlock_irqrestore(&iommu->lock, flags); | ||
677 | |||
678 | return used; | 627 | return used; |
679 | 628 | ||
680 | bad: | 629 | bad: |
681 | spin_unlock_irqrestore(&iommu->lock, flags); | 630 | iommu_free_ctx(iommu, ctx); |
682 | return PCI_DMA_ERROR_CODE; | 631 | bad_no_ctx: |
632 | if (printk_ratelimit()) | ||
633 | WARN_ON(1); | ||
634 | return 0; | ||
683 | } | 635 | } |
684 | 636 | ||
685 | /* Unmap a set of streaming mode DMA translations. */ | 637 | /* Unmap a set of streaming mode DMA translations. */ |
@@ -692,8 +644,10 @@ void pci_unmap_sg(struct pci_dev *pdev, struct scatterlist *sglist, int nelems, | |||
692 | unsigned long flags, ctx, i, npages; | 644 | unsigned long flags, ctx, i, npages; |
693 | u32 bus_addr; | 645 | u32 bus_addr; |
694 | 646 | ||
695 | if (direction == PCI_DMA_NONE) | 647 | if (unlikely(direction == PCI_DMA_NONE)) { |
696 | BUG(); | 648 | if (printk_ratelimit()) |
649 | WARN_ON(1); | ||
650 | } | ||
697 | 651 | ||
698 | pcp = pdev->sysdata; | 652 | pcp = pdev->sysdata; |
699 | iommu = pcp->pbm->iommu; | 653 | iommu = pcp->pbm->iommu; |
@@ -705,7 +659,8 @@ void pci_unmap_sg(struct pci_dev *pdev, struct scatterlist *sglist, int nelems, | |||
705 | if (sglist[i].dma_length == 0) | 659 | if (sglist[i].dma_length == 0) |
706 | break; | 660 | break; |
707 | i--; | 661 | i--; |
708 | npages = (IO_PAGE_ALIGN(sglist[i].dma_address + sglist[i].dma_length) - bus_addr) >> IO_PAGE_SHIFT; | 662 | npages = (IO_PAGE_ALIGN(sglist[i].dma_address + sglist[i].dma_length) - |
663 | bus_addr) >> IO_PAGE_SHIFT; | ||
709 | 664 | ||
710 | base = iommu->page_table + | 665 | base = iommu->page_table + |
711 | ((bus_addr - iommu->page_table_map_base) >> IO_PAGE_SHIFT); | 666 | ((bus_addr - iommu->page_table_map_base) >> IO_PAGE_SHIFT); |
@@ -726,11 +681,11 @@ void pci_unmap_sg(struct pci_dev *pdev, struct scatterlist *sglist, int nelems, | |||
726 | if (strbuf->strbuf_enabled) | 681 | if (strbuf->strbuf_enabled) |
727 | pci_strbuf_flush(strbuf, iommu, bus_addr, ctx, npages, direction); | 682 | pci_strbuf_flush(strbuf, iommu, bus_addr, ctx, npages, direction); |
728 | 683 | ||
729 | /* Step 2: Clear out first TSB entry. */ | 684 | /* Step 2: Clear out the TSB entries. */ |
730 | iopte_make_dummy(iommu, base); | 685 | for (i = 0; i < npages; i++) |
686 | iopte_make_dummy(iommu, base + i); | ||
731 | 687 | ||
732 | free_streaming_cluster(iommu, bus_addr - iommu->page_table_map_base, | 688 | free_npages(iommu, bus_addr - iommu->page_table_map_base, npages); |
733 | npages, ctx); | ||
734 | 689 | ||
735 | iommu_free_ctx(iommu, ctx); | 690 | iommu_free_ctx(iommu, ctx); |
736 | 691 | ||
diff --git a/arch/sparc64/kernel/pci_psycho.c b/arch/sparc64/kernel/pci_psycho.c index 6ed1ef25e0ac..c03ed5f49d31 100644 --- a/arch/sparc64/kernel/pci_psycho.c +++ b/arch/sparc64/kernel/pci_psycho.c | |||
@@ -1207,13 +1207,9 @@ static void psycho_scan_bus(struct pci_controller_info *p) | |||
1207 | static void psycho_iommu_init(struct pci_controller_info *p) | 1207 | static void psycho_iommu_init(struct pci_controller_info *p) |
1208 | { | 1208 | { |
1209 | struct pci_iommu *iommu = p->pbm_A.iommu; | 1209 | struct pci_iommu *iommu = p->pbm_A.iommu; |
1210 | unsigned long tsbbase, i; | 1210 | unsigned long i; |
1211 | u64 control; | 1211 | u64 control; |
1212 | 1212 | ||
1213 | /* Setup initial software IOMMU state. */ | ||
1214 | spin_lock_init(&iommu->lock); | ||
1215 | iommu->ctx_lowest_free = 1; | ||
1216 | |||
1217 | /* Register addresses. */ | 1213 | /* Register addresses. */ |
1218 | iommu->iommu_control = p->pbm_A.controller_regs + PSYCHO_IOMMU_CONTROL; | 1214 | iommu->iommu_control = p->pbm_A.controller_regs + PSYCHO_IOMMU_CONTROL; |
1219 | iommu->iommu_tsbbase = p->pbm_A.controller_regs + PSYCHO_IOMMU_TSBBASE; | 1215 | iommu->iommu_tsbbase = p->pbm_A.controller_regs + PSYCHO_IOMMU_TSBBASE; |
@@ -1240,40 +1236,10 @@ static void psycho_iommu_init(struct pci_controller_info *p) | |||
1240 | /* Leave diag mode enabled for full-flushing done | 1236 | /* Leave diag mode enabled for full-flushing done |
1241 | * in pci_iommu.c | 1237 | * in pci_iommu.c |
1242 | */ | 1238 | */ |
1239 | pci_iommu_table_init(iommu, IO_TSB_SIZE, 0xc0000000, 0xffffffff); | ||
1243 | 1240 | ||
1244 | iommu->dummy_page = __get_free_pages(GFP_KERNEL, 0); | 1241 | psycho_write(p->pbm_A.controller_regs + PSYCHO_IOMMU_TSBBASE, |
1245 | if (!iommu->dummy_page) { | 1242 | __pa(iommu->page_table)); |
1246 | prom_printf("PSYCHO_IOMMU: Error, gfp(dummy_page) failed.\n"); | ||
1247 | prom_halt(); | ||
1248 | } | ||
1249 | memset((void *)iommu->dummy_page, 0, PAGE_SIZE); | ||
1250 | iommu->dummy_page_pa = (unsigned long) __pa(iommu->dummy_page); | ||
1251 | |||
1252 | /* Using assumed page size 8K with 128K entries we need 1MB iommu page | ||
1253 | * table (128K ioptes * 8 bytes per iopte). This is | ||
1254 | * page order 7 on UltraSparc. | ||
1255 | */ | ||
1256 | tsbbase = __get_free_pages(GFP_KERNEL, get_order(IO_TSB_SIZE)); | ||
1257 | if (!tsbbase) { | ||
1258 | prom_printf("PSYCHO_IOMMU: Error, gfp(tsb) failed.\n"); | ||
1259 | prom_halt(); | ||
1260 | } | ||
1261 | iommu->page_table = (iopte_t *)tsbbase; | ||
1262 | iommu->page_table_sz_bits = 17; | ||
1263 | iommu->page_table_map_base = 0xc0000000; | ||
1264 | iommu->dma_addr_mask = 0xffffffff; | ||
1265 | pci_iommu_table_init(iommu, IO_TSB_SIZE); | ||
1266 | |||
1267 | /* We start with no consistent mappings. */ | ||
1268 | iommu->lowest_consistent_map = | ||
1269 | 1 << (iommu->page_table_sz_bits - PBM_LOGCLUSTERS); | ||
1270 | |||
1271 | for (i = 0; i < PBM_NCLUSTERS; i++) { | ||
1272 | iommu->alloc_info[i].flush = 0; | ||
1273 | iommu->alloc_info[i].next = 0; | ||
1274 | } | ||
1275 | |||
1276 | psycho_write(p->pbm_A.controller_regs + PSYCHO_IOMMU_TSBBASE, __pa(tsbbase)); | ||
1277 | 1243 | ||
1278 | control = psycho_read(p->pbm_A.controller_regs + PSYCHO_IOMMU_CONTROL); | 1244 | control = psycho_read(p->pbm_A.controller_regs + PSYCHO_IOMMU_CONTROL); |
1279 | control &= ~(PSYCHO_IOMMU_CTRL_TSBSZ | PSYCHO_IOMMU_CTRL_TBWSZ); | 1245 | control &= ~(PSYCHO_IOMMU_CTRL_TSBSZ | PSYCHO_IOMMU_CTRL_TBWSZ); |
@@ -1281,7 +1247,7 @@ static void psycho_iommu_init(struct pci_controller_info *p) | |||
1281 | psycho_write(p->pbm_A.controller_regs + PSYCHO_IOMMU_CONTROL, control); | 1247 | psycho_write(p->pbm_A.controller_regs + PSYCHO_IOMMU_CONTROL, control); |
1282 | 1248 | ||
1283 | /* If necessary, hook us up for starfire IRQ translations. */ | 1249 | /* If necessary, hook us up for starfire IRQ translations. */ |
1284 | if(this_is_starfire) | 1250 | if (this_is_starfire) |
1285 | p->starfire_cookie = starfire_hookup(p->pbm_A.portid); | 1251 | p->starfire_cookie = starfire_hookup(p->pbm_A.portid); |
1286 | else | 1252 | else |
1287 | p->starfire_cookie = NULL; | 1253 | p->starfire_cookie = NULL; |
diff --git a/arch/sparc64/kernel/pci_sabre.c b/arch/sparc64/kernel/pci_sabre.c index 0ee6bd5b9ac6..da8e1364194f 100644 --- a/arch/sparc64/kernel/pci_sabre.c +++ b/arch/sparc64/kernel/pci_sabre.c | |||
@@ -1267,13 +1267,9 @@ static void sabre_iommu_init(struct pci_controller_info *p, | |||
1267 | u32 dma_mask) | 1267 | u32 dma_mask) |
1268 | { | 1268 | { |
1269 | struct pci_iommu *iommu = p->pbm_A.iommu; | 1269 | struct pci_iommu *iommu = p->pbm_A.iommu; |
1270 | unsigned long tsbbase, i, order; | 1270 | unsigned long i; |
1271 | u64 control; | 1271 | u64 control; |
1272 | 1272 | ||
1273 | /* Setup initial software IOMMU state. */ | ||
1274 | spin_lock_init(&iommu->lock); | ||
1275 | iommu->ctx_lowest_free = 1; | ||
1276 | |||
1277 | /* Register addresses. */ | 1273 | /* Register addresses. */ |
1278 | iommu->iommu_control = p->pbm_A.controller_regs + SABRE_IOMMU_CONTROL; | 1274 | iommu->iommu_control = p->pbm_A.controller_regs + SABRE_IOMMU_CONTROL; |
1279 | iommu->iommu_tsbbase = p->pbm_A.controller_regs + SABRE_IOMMU_TSBBASE; | 1275 | iommu->iommu_tsbbase = p->pbm_A.controller_regs + SABRE_IOMMU_TSBBASE; |
@@ -1295,26 +1291,10 @@ static void sabre_iommu_init(struct pci_controller_info *p, | |||
1295 | /* Leave diag mode enabled for full-flushing done | 1291 | /* Leave diag mode enabled for full-flushing done |
1296 | * in pci_iommu.c | 1292 | * in pci_iommu.c |
1297 | */ | 1293 | */ |
1294 | pci_iommu_table_init(iommu, tsbsize * 1024 * 8, dvma_offset, dma_mask); | ||
1298 | 1295 | ||
1299 | iommu->dummy_page = __get_free_pages(GFP_KERNEL, 0); | 1296 | sabre_write(p->pbm_A.controller_regs + SABRE_IOMMU_TSBBASE, |
1300 | if (!iommu->dummy_page) { | 1297 | __pa(iommu->page_table)); |
1301 | prom_printf("PSYCHO_IOMMU: Error, gfp(dummy_page) failed.\n"); | ||
1302 | prom_halt(); | ||
1303 | } | ||
1304 | memset((void *)iommu->dummy_page, 0, PAGE_SIZE); | ||
1305 | iommu->dummy_page_pa = (unsigned long) __pa(iommu->dummy_page); | ||
1306 | |||
1307 | tsbbase = __get_free_pages(GFP_KERNEL, order = get_order(tsbsize * 1024 * 8)); | ||
1308 | if (!tsbbase) { | ||
1309 | prom_printf("SABRE_IOMMU: Error, gfp(tsb) failed.\n"); | ||
1310 | prom_halt(); | ||
1311 | } | ||
1312 | iommu->page_table = (iopte_t *)tsbbase; | ||
1313 | iommu->page_table_map_base = dvma_offset; | ||
1314 | iommu->dma_addr_mask = dma_mask; | ||
1315 | pci_iommu_table_init(iommu, PAGE_SIZE << order); | ||
1316 | |||
1317 | sabre_write(p->pbm_A.controller_regs + SABRE_IOMMU_TSBBASE, __pa(tsbbase)); | ||
1318 | 1298 | ||
1319 | control = sabre_read(p->pbm_A.controller_regs + SABRE_IOMMU_CONTROL); | 1299 | control = sabre_read(p->pbm_A.controller_regs + SABRE_IOMMU_CONTROL); |
1320 | control &= ~(SABRE_IOMMUCTRL_TSBSZ | SABRE_IOMMUCTRL_TBWSZ); | 1300 | control &= ~(SABRE_IOMMUCTRL_TSBSZ | SABRE_IOMMUCTRL_TBWSZ); |
@@ -1322,11 +1302,9 @@ static void sabre_iommu_init(struct pci_controller_info *p, | |||
1322 | switch(tsbsize) { | 1302 | switch(tsbsize) { |
1323 | case 64: | 1303 | case 64: |
1324 | control |= SABRE_IOMMU_TSBSZ_64K; | 1304 | control |= SABRE_IOMMU_TSBSZ_64K; |
1325 | iommu->page_table_sz_bits = 16; | ||
1326 | break; | 1305 | break; |
1327 | case 128: | 1306 | case 128: |
1328 | control |= SABRE_IOMMU_TSBSZ_128K; | 1307 | control |= SABRE_IOMMU_TSBSZ_128K; |
1329 | iommu->page_table_sz_bits = 17; | ||
1330 | break; | 1308 | break; |
1331 | default: | 1309 | default: |
1332 | prom_printf("iommu_init: Illegal TSB size %d\n", tsbsize); | 1310 | prom_printf("iommu_init: Illegal TSB size %d\n", tsbsize); |
@@ -1334,15 +1312,6 @@ static void sabre_iommu_init(struct pci_controller_info *p, | |||
1334 | break; | 1312 | break; |
1335 | } | 1313 | } |
1336 | sabre_write(p->pbm_A.controller_regs + SABRE_IOMMU_CONTROL, control); | 1314 | sabre_write(p->pbm_A.controller_regs + SABRE_IOMMU_CONTROL, control); |
1337 | |||
1338 | /* We start with no consistent mappings. */ | ||
1339 | iommu->lowest_consistent_map = | ||
1340 | 1 << (iommu->page_table_sz_bits - PBM_LOGCLUSTERS); | ||
1341 | |||
1342 | for (i = 0; i < PBM_NCLUSTERS; i++) { | ||
1343 | iommu->alloc_info[i].flush = 0; | ||
1344 | iommu->alloc_info[i].next = 0; | ||
1345 | } | ||
1346 | } | 1315 | } |
1347 | 1316 | ||
1348 | static void pbm_register_toplevel_resources(struct pci_controller_info *p, | 1317 | static void pbm_register_toplevel_resources(struct pci_controller_info *p, |
diff --git a/arch/sparc64/kernel/pci_schizo.c b/arch/sparc64/kernel/pci_schizo.c index cae5b61fe2f0..d8c4e0919b4e 100644 --- a/arch/sparc64/kernel/pci_schizo.c +++ b/arch/sparc64/kernel/pci_schizo.c | |||
@@ -1765,7 +1765,7 @@ static void schizo_pbm_strbuf_init(struct pci_pbm_info *pbm) | |||
1765 | static void schizo_pbm_iommu_init(struct pci_pbm_info *pbm) | 1765 | static void schizo_pbm_iommu_init(struct pci_pbm_info *pbm) |
1766 | { | 1766 | { |
1767 | struct pci_iommu *iommu = pbm->iommu; | 1767 | struct pci_iommu *iommu = pbm->iommu; |
1768 | unsigned long tsbbase, i, tagbase, database, order; | 1768 | unsigned long i, tagbase, database; |
1769 | u32 vdma[2], dma_mask; | 1769 | u32 vdma[2], dma_mask; |
1770 | u64 control; | 1770 | u64 control; |
1771 | int err, tsbsize; | 1771 | int err, tsbsize; |
@@ -1800,10 +1800,6 @@ static void schizo_pbm_iommu_init(struct pci_pbm_info *pbm) | |||
1800 | prom_halt(); | 1800 | prom_halt(); |
1801 | }; | 1801 | }; |
1802 | 1802 | ||
1803 | /* Setup initial software IOMMU state. */ | ||
1804 | spin_lock_init(&iommu->lock); | ||
1805 | iommu->ctx_lowest_free = 1; | ||
1806 | |||
1807 | /* Register addresses, SCHIZO has iommu ctx flushing. */ | 1803 | /* Register addresses, SCHIZO has iommu ctx flushing. */ |
1808 | iommu->iommu_control = pbm->pbm_regs + SCHIZO_IOMMU_CONTROL; | 1804 | iommu->iommu_control = pbm->pbm_regs + SCHIZO_IOMMU_CONTROL; |
1809 | iommu->iommu_tsbbase = pbm->pbm_regs + SCHIZO_IOMMU_TSBBASE; | 1805 | iommu->iommu_tsbbase = pbm->pbm_regs + SCHIZO_IOMMU_TSBBASE; |
@@ -1832,56 +1828,9 @@ static void schizo_pbm_iommu_init(struct pci_pbm_info *pbm) | |||
1832 | /* Leave diag mode enabled for full-flushing done | 1828 | /* Leave diag mode enabled for full-flushing done |
1833 | * in pci_iommu.c | 1829 | * in pci_iommu.c |
1834 | */ | 1830 | */ |
1831 | pci_iommu_table_init(iommu, tsbsize * 8 * 1024, vdma[0], dma_mask); | ||
1835 | 1832 | ||
1836 | iommu->dummy_page = __get_free_pages(GFP_KERNEL, 0); | 1833 | schizo_write(iommu->iommu_tsbbase, __pa(iommu->page_table)); |
1837 | if (!iommu->dummy_page) { | ||
1838 | prom_printf("PSYCHO_IOMMU: Error, gfp(dummy_page) failed.\n"); | ||
1839 | prom_halt(); | ||
1840 | } | ||
1841 | memset((void *)iommu->dummy_page, 0, PAGE_SIZE); | ||
1842 | iommu->dummy_page_pa = (unsigned long) __pa(iommu->dummy_page); | ||
1843 | |||
1844 | /* Using assumed page size 8K with 128K entries we need 1MB iommu page | ||
1845 | * table (128K ioptes * 8 bytes per iopte). This is | ||
1846 | * page order 7 on UltraSparc. | ||
1847 | */ | ||
1848 | order = get_order(tsbsize * 8 * 1024); | ||
1849 | tsbbase = __get_free_pages(GFP_KERNEL, order); | ||
1850 | if (!tsbbase) { | ||
1851 | prom_printf("%s: Error, gfp(tsb) failed.\n", pbm->name); | ||
1852 | prom_halt(); | ||
1853 | } | ||
1854 | |||
1855 | iommu->page_table = (iopte_t *)tsbbase; | ||
1856 | iommu->page_table_map_base = vdma[0]; | ||
1857 | iommu->dma_addr_mask = dma_mask; | ||
1858 | pci_iommu_table_init(iommu, PAGE_SIZE << order); | ||
1859 | |||
1860 | switch (tsbsize) { | ||
1861 | case 64: | ||
1862 | iommu->page_table_sz_bits = 16; | ||
1863 | break; | ||
1864 | |||
1865 | case 128: | ||
1866 | iommu->page_table_sz_bits = 17; | ||
1867 | break; | ||
1868 | |||
1869 | default: | ||
1870 | prom_printf("iommu_init: Illegal TSB size %d\n", tsbsize); | ||
1871 | prom_halt(); | ||
1872 | break; | ||
1873 | }; | ||
1874 | |||
1875 | /* We start with no consistent mappings. */ | ||
1876 | iommu->lowest_consistent_map = | ||
1877 | 1 << (iommu->page_table_sz_bits - PBM_LOGCLUSTERS); | ||
1878 | |||
1879 | for (i = 0; i < PBM_NCLUSTERS; i++) { | ||
1880 | iommu->alloc_info[i].flush = 0; | ||
1881 | iommu->alloc_info[i].next = 0; | ||
1882 | } | ||
1883 | |||
1884 | schizo_write(iommu->iommu_tsbbase, __pa(tsbbase)); | ||
1885 | 1834 | ||
1886 | control = schizo_read(iommu->iommu_control); | 1835 | control = schizo_read(iommu->iommu_control); |
1887 | control &= ~(SCHIZO_IOMMU_CTRL_TSBSZ | SCHIZO_IOMMU_CTRL_TBWSZ); | 1836 | control &= ~(SCHIZO_IOMMU_CTRL_TSBSZ | SCHIZO_IOMMU_CTRL_TBWSZ); |
diff --git a/arch/sparc64/kernel/power.c b/arch/sparc64/kernel/power.c index 946cee0257ea..9e8362ea3104 100644 --- a/arch/sparc64/kernel/power.c +++ b/arch/sparc64/kernel/power.c | |||
@@ -17,6 +17,7 @@ | |||
17 | 17 | ||
18 | #include <asm/system.h> | 18 | #include <asm/system.h> |
19 | #include <asm/ebus.h> | 19 | #include <asm/ebus.h> |
20 | #include <asm/isa.h> | ||
20 | #include <asm/auxio.h> | 21 | #include <asm/auxio.h> |
21 | 22 | ||
22 | #include <linux/unistd.h> | 23 | #include <linux/unistd.h> |
@@ -100,46 +101,83 @@ again: | |||
100 | return 0; | 101 | return 0; |
101 | } | 102 | } |
102 | 103 | ||
103 | static int __init has_button_interrupt(struct linux_ebus_device *edev) | 104 | static int __init has_button_interrupt(unsigned int irq, int prom_node) |
104 | { | 105 | { |
105 | if (edev->irqs[0] == PCI_IRQ_NONE) | 106 | if (irq == PCI_IRQ_NONE) |
106 | return 0; | 107 | return 0; |
107 | if (!prom_node_has_property(edev->prom_node, "button")) | 108 | if (!prom_node_has_property(prom_node, "button")) |
108 | return 0; | 109 | return 0; |
109 | 110 | ||
110 | return 1; | 111 | return 1; |
111 | } | 112 | } |
112 | 113 | ||
113 | void __init power_init(void) | 114 | static int __init power_probe_ebus(struct resource **resp, unsigned int *irq_p, int *prom_node_p) |
114 | { | 115 | { |
115 | struct linux_ebus *ebus; | 116 | struct linux_ebus *ebus; |
116 | struct linux_ebus_device *edev; | 117 | struct linux_ebus_device *edev; |
118 | |||
119 | for_each_ebus(ebus) { | ||
120 | for_each_ebusdev(edev, ebus) { | ||
121 | if (!strcmp(edev->prom_name, "power")) { | ||
122 | *resp = &edev->resource[0]; | ||
123 | *irq_p = edev->irqs[0]; | ||
124 | *prom_node_p = edev->prom_node; | ||
125 | return 0; | ||
126 | } | ||
127 | } | ||
128 | } | ||
129 | return -ENODEV; | ||
130 | } | ||
131 | |||
132 | static int __init power_probe_isa(struct resource **resp, unsigned int *irq_p, int *prom_node_p) | ||
133 | { | ||
134 | struct sparc_isa_bridge *isa_bus; | ||
135 | struct sparc_isa_device *isa_dev; | ||
136 | |||
137 | for_each_isa(isa_bus) { | ||
138 | for_each_isadev(isa_dev, isa_bus) { | ||
139 | if (!strcmp(isa_dev->prom_name, "power")) { | ||
140 | *resp = &isa_dev->resource; | ||
141 | *irq_p = isa_dev->irq; | ||
142 | *prom_node_p = isa_dev->prom_node; | ||
143 | return 0; | ||
144 | } | ||
145 | } | ||
146 | } | ||
147 | return -ENODEV; | ||
148 | } | ||
149 | |||
150 | void __init power_init(void) | ||
151 | { | ||
152 | struct resource *res = NULL; | ||
153 | unsigned int irq; | ||
154 | int prom_node; | ||
117 | static int invoked; | 155 | static int invoked; |
118 | 156 | ||
119 | if (invoked) | 157 | if (invoked) |
120 | return; | 158 | return; |
121 | invoked = 1; | 159 | invoked = 1; |
122 | 160 | ||
123 | for_each_ebus(ebus) { | 161 | if (!power_probe_ebus(&res, &irq, &prom_node)) |
124 | for_each_ebusdev(edev, ebus) { | 162 | goto found; |
125 | if (!strcmp(edev->prom_name, "power")) | 163 | |
126 | goto found; | 164 | if (!power_probe_isa(&res, &irq, &prom_node)) |
127 | } | 165 | goto found; |
128 | } | 166 | |
129 | return; | 167 | return; |
130 | 168 | ||
131 | found: | 169 | found: |
132 | power_reg = ioremap(edev->resource[0].start, 0x4); | 170 | power_reg = ioremap(res->start, 0x4); |
133 | printk("power: Control reg at %p ... ", power_reg); | 171 | printk("power: Control reg at %p ... ", power_reg); |
134 | poweroff_method = machine_halt; /* able to use the standard halt */ | 172 | poweroff_method = machine_halt; /* able to use the standard halt */ |
135 | if (has_button_interrupt(edev)) { | 173 | if (has_button_interrupt(irq, prom_node)) { |
136 | if (kernel_thread(powerd, NULL, CLONE_FS) < 0) { | 174 | if (kernel_thread(powerd, NULL, CLONE_FS) < 0) { |
137 | printk("Failed to start power daemon.\n"); | 175 | printk("Failed to start power daemon.\n"); |
138 | return; | 176 | return; |
139 | } | 177 | } |
140 | printk("powerd running.\n"); | 178 | printk("powerd running.\n"); |
141 | 179 | ||
142 | if (request_irq(edev->irqs[0], | 180 | if (request_irq(irq, |
143 | power_handler, SA_SHIRQ, "power", NULL) < 0) | 181 | power_handler, SA_SHIRQ, "power", NULL) < 0) |
144 | printk("power: Error, cannot register IRQ handler.\n"); | 182 | printk("power: Error, cannot register IRQ handler.\n"); |
145 | } else { | 183 | } else { |
diff --git a/arch/sparc64/kernel/rtrap.S b/arch/sparc64/kernel/rtrap.S index fafd227735fa..090dcca00d2a 100644 --- a/arch/sparc64/kernel/rtrap.S +++ b/arch/sparc64/kernel/rtrap.S | |||
@@ -256,9 +256,8 @@ rt_continue: ldx [%sp + PTREGS_OFF + PT_V9_G1], %g1 | |||
256 | brnz,pn %l3, kern_rtt | 256 | brnz,pn %l3, kern_rtt |
257 | mov PRIMARY_CONTEXT, %l7 | 257 | mov PRIMARY_CONTEXT, %l7 |
258 | ldxa [%l7 + %l7] ASI_DMMU, %l0 | 258 | ldxa [%l7 + %l7] ASI_DMMU, %l0 |
259 | cplus_rtrap_insn_1: | 259 | sethi %hi(sparc64_kern_pri_nuc_bits), %l1 |
260 | sethi %hi(0), %l1 | 260 | ldx [%l1 + %lo(sparc64_kern_pri_nuc_bits)], %l1 |
261 | sllx %l1, 32, %l1 | ||
262 | or %l0, %l1, %l0 | 261 | or %l0, %l1, %l0 |
263 | stxa %l0, [%l7] ASI_DMMU | 262 | stxa %l0, [%l7] ASI_DMMU |
264 | flush %g6 | 263 | flush %g6 |
@@ -313,53 +312,36 @@ kern_fpucheck: ldub [%g6 + TI_FPDEPTH], %l5 | |||
313 | wr %g1, FPRS_FEF, %fprs | 312 | wr %g1, FPRS_FEF, %fprs |
314 | ldx [%o1 + %o5], %g1 | 313 | ldx [%o1 + %o5], %g1 |
315 | add %g6, TI_XFSR, %o1 | 314 | add %g6, TI_XFSR, %o1 |
316 | membar #StoreLoad | #LoadLoad | ||
317 | sll %o0, 8, %o2 | 315 | sll %o0, 8, %o2 |
318 | add %g6, TI_FPREGS, %o3 | 316 | add %g6, TI_FPREGS, %o3 |
319 | brz,pn %l6, 1f | 317 | brz,pn %l6, 1f |
320 | add %g6, TI_FPREGS+0x40, %o4 | 318 | add %g6, TI_FPREGS+0x40, %o4 |
321 | 319 | ||
320 | membar #Sync | ||
322 | ldda [%o3 + %o2] ASI_BLK_P, %f0 | 321 | ldda [%o3 + %o2] ASI_BLK_P, %f0 |
323 | ldda [%o4 + %o2] ASI_BLK_P, %f16 | 322 | ldda [%o4 + %o2] ASI_BLK_P, %f16 |
323 | membar #Sync | ||
324 | 1: andcc %l2, FPRS_DU, %g0 | 324 | 1: andcc %l2, FPRS_DU, %g0 |
325 | be,pn %icc, 1f | 325 | be,pn %icc, 1f |
326 | wr %g1, 0, %gsr | 326 | wr %g1, 0, %gsr |
327 | add %o2, 0x80, %o2 | 327 | add %o2, 0x80, %o2 |
328 | membar #Sync | ||
328 | ldda [%o3 + %o2] ASI_BLK_P, %f32 | 329 | ldda [%o3 + %o2] ASI_BLK_P, %f32 |
329 | ldda [%o4 + %o2] ASI_BLK_P, %f48 | 330 | ldda [%o4 + %o2] ASI_BLK_P, %f48 |
330 | |||
331 | 1: membar #Sync | 331 | 1: membar #Sync |
332 | ldx [%o1 + %o5], %fsr | 332 | ldx [%o1 + %o5], %fsr |
333 | 2: stb %l5, [%g6 + TI_FPDEPTH] | 333 | 2: stb %l5, [%g6 + TI_FPDEPTH] |
334 | ba,pt %xcc, rt_continue | 334 | ba,pt %xcc, rt_continue |
335 | nop | 335 | nop |
336 | 5: wr %g0, FPRS_FEF, %fprs | 336 | 5: wr %g0, FPRS_FEF, %fprs |
337 | membar #StoreLoad | #LoadLoad | ||
338 | sll %o0, 8, %o2 | 337 | sll %o0, 8, %o2 |
339 | 338 | ||
340 | add %g6, TI_FPREGS+0x80, %o3 | 339 | add %g6, TI_FPREGS+0x80, %o3 |
341 | add %g6, TI_FPREGS+0xc0, %o4 | 340 | add %g6, TI_FPREGS+0xc0, %o4 |
341 | membar #Sync | ||
342 | ldda [%o3 + %o2] ASI_BLK_P, %f32 | 342 | ldda [%o3 + %o2] ASI_BLK_P, %f32 |
343 | ldda [%o4 + %o2] ASI_BLK_P, %f48 | 343 | ldda [%o4 + %o2] ASI_BLK_P, %f48 |
344 | membar #Sync | 344 | membar #Sync |
345 | wr %g0, FPRS_DU, %fprs | 345 | wr %g0, FPRS_DU, %fprs |
346 | ba,pt %xcc, rt_continue | 346 | ba,pt %xcc, rt_continue |
347 | stb %l5, [%g6 + TI_FPDEPTH] | 347 | stb %l5, [%g6 + TI_FPDEPTH] |
348 | |||
349 | cplus_rinsn_1: | ||
350 | sethi %uhi(CTX_CHEETAH_PLUS_NUC), %l1 | ||
351 | |||
352 | .globl cheetah_plus_patch_rtrap | ||
353 | cheetah_plus_patch_rtrap: | ||
354 | /* We configure the dTLB512_0 for 4MB pages and the | ||
355 | * dTLB512_1 for 8K pages when in context zero. | ||
356 | */ | ||
357 | sethi %hi(cplus_rinsn_1), %o0 | ||
358 | sethi %hi(cplus_rtrap_insn_1), %o2 | ||
359 | lduw [%o0 + %lo(cplus_rinsn_1)], %o1 | ||
360 | or %o2, %lo(cplus_rtrap_insn_1), %o2 | ||
361 | stw %o1, [%o2] | ||
362 | flush %o2 | ||
363 | |||
364 | retl | ||
365 | nop | ||
diff --git a/arch/sparc64/kernel/setup.c b/arch/sparc64/kernel/setup.c index 4c9c8f241748..c1f34237cdf2 100644 --- a/arch/sparc64/kernel/setup.c +++ b/arch/sparc64/kernel/setup.c | |||
@@ -187,17 +187,13 @@ int prom_callback(long *args) | |||
187 | } | 187 | } |
188 | 188 | ||
189 | if ((va >= KERNBASE) && (va < (KERNBASE + (4 * 1024 * 1024)))) { | 189 | if ((va >= KERNBASE) && (va < (KERNBASE + (4 * 1024 * 1024)))) { |
190 | unsigned long kernel_pctx = 0; | 190 | extern unsigned long sparc64_kern_pri_context; |
191 | |||
192 | if (tlb_type == cheetah_plus) | ||
193 | kernel_pctx |= (CTX_CHEETAH_PLUS_NUC | | ||
194 | CTX_CHEETAH_PLUS_CTX0); | ||
195 | 191 | ||
196 | /* Spitfire Errata #32 workaround */ | 192 | /* Spitfire Errata #32 workaround */ |
197 | __asm__ __volatile__("stxa %0, [%1] %2\n\t" | 193 | __asm__ __volatile__("stxa %0, [%1] %2\n\t" |
198 | "flush %%g6" | 194 | "flush %%g6" |
199 | : /* No outputs */ | 195 | : /* No outputs */ |
200 | : "r" (kernel_pctx), | 196 | : "r" (sparc64_kern_pri_context), |
201 | "r" (PRIMARY_CONTEXT), | 197 | "r" (PRIMARY_CONTEXT), |
202 | "i" (ASI_DMMU)); | 198 | "i" (ASI_DMMU)); |
203 | 199 | ||
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c index 590df5a16f5a..b137fd63f5e1 100644 --- a/arch/sparc64/kernel/smp.c +++ b/arch/sparc64/kernel/smp.c | |||
@@ -1001,13 +1001,6 @@ void smp_penguin_jailcell(int irq, struct pt_regs *regs) | |||
1001 | preempt_enable(); | 1001 | preempt_enable(); |
1002 | } | 1002 | } |
1003 | 1003 | ||
1004 | extern unsigned long xcall_promstop; | ||
1005 | |||
1006 | void smp_promstop_others(void) | ||
1007 | { | ||
1008 | smp_cross_call(&xcall_promstop, 0, 0, 0); | ||
1009 | } | ||
1010 | |||
1011 | #define prof_multiplier(__cpu) cpu_data(__cpu).multiplier | 1004 | #define prof_multiplier(__cpu) cpu_data(__cpu).multiplier |
1012 | #define prof_counter(__cpu) cpu_data(__cpu).counter | 1005 | #define prof_counter(__cpu) cpu_data(__cpu).counter |
1013 | 1006 | ||
diff --git a/arch/sparc64/kernel/trampoline.S b/arch/sparc64/kernel/trampoline.S index 89f2fcfcd662..9478551cb020 100644 --- a/arch/sparc64/kernel/trampoline.S +++ b/arch/sparc64/kernel/trampoline.S | |||
@@ -336,20 +336,13 @@ do_unlock: | |||
336 | call init_irqwork_curcpu | 336 | call init_irqwork_curcpu |
337 | nop | 337 | nop |
338 | 338 | ||
339 | BRANCH_IF_CHEETAH_PLUS_OR_FOLLOWON(g2,g3,1f) | 339 | /* Start using proper page size encodings in ctx register. */ |
340 | ba,pt %xcc, 2f | 340 | sethi %hi(sparc64_kern_pri_context), %g3 |
341 | nop | 341 | ldx [%g3 + %lo(sparc64_kern_pri_context)], %g2 |
342 | |||
343 | 1: /* Start using proper page size encodings in ctx register. */ | ||
344 | sethi %uhi(CTX_CHEETAH_PLUS_NUC), %g3 | ||
345 | mov PRIMARY_CONTEXT, %g1 | 342 | mov PRIMARY_CONTEXT, %g1 |
346 | sllx %g3, 32, %g3 | 343 | stxa %g2, [%g1] ASI_DMMU |
347 | sethi %hi(CTX_CHEETAH_PLUS_CTX0), %g2 | ||
348 | or %g3, %g2, %g3 | ||
349 | stxa %g3, [%g1] ASI_DMMU | ||
350 | membar #Sync | 344 | membar #Sync |
351 | 345 | ||
352 | 2: | ||
353 | rdpr %pstate, %o1 | 346 | rdpr %pstate, %o1 |
354 | or %o1, PSTATE_IE, %o1 | 347 | or %o1, PSTATE_IE, %o1 |
355 | wrpr %o1, 0, %pstate | 348 | wrpr %o1, 0, %pstate |
diff --git a/arch/sparc64/kernel/winfixup.S b/arch/sparc64/kernel/winfixup.S index 99c809a1e5ac..39160926267b 100644 --- a/arch/sparc64/kernel/winfixup.S +++ b/arch/sparc64/kernel/winfixup.S | |||
@@ -16,23 +16,14 @@ | |||
16 | .text | 16 | .text |
17 | 17 | ||
18 | set_pcontext: | 18 | set_pcontext: |
19 | cplus_winfixup_insn_1: | 19 | sethi %hi(sparc64_kern_pri_context), %l1 |
20 | sethi %hi(0), %l1 | 20 | ldx [%l1 + %lo(sparc64_kern_pri_context)], %l1 |
21 | mov PRIMARY_CONTEXT, %g1 | 21 | mov PRIMARY_CONTEXT, %g1 |
22 | sllx %l1, 32, %l1 | ||
23 | cplus_winfixup_insn_2: | ||
24 | sethi %hi(0), %g2 | ||
25 | or %l1, %g2, %l1 | ||
26 | stxa %l1, [%g1] ASI_DMMU | 22 | stxa %l1, [%g1] ASI_DMMU |
27 | flush %g6 | 23 | flush %g6 |
28 | retl | 24 | retl |
29 | nop | 25 | nop |
30 | 26 | ||
31 | cplus_wfinsn_1: | ||
32 | sethi %uhi(CTX_CHEETAH_PLUS_NUC), %l1 | ||
33 | cplus_wfinsn_2: | ||
34 | sethi %hi(CTX_CHEETAH_PLUS_CTX0), %g2 | ||
35 | |||
36 | .align 32 | 27 | .align 32 |
37 | 28 | ||
38 | /* Here are the rules, pay attention. | 29 | /* Here are the rules, pay attention. |
@@ -395,23 +386,3 @@ window_dax_from_user_common: | |||
395 | add %sp, PTREGS_OFF, %o0 | 386 | add %sp, PTREGS_OFF, %o0 |
396 | ba,pt %xcc, rtrap | 387 | ba,pt %xcc, rtrap |
397 | clr %l6 | 388 | clr %l6 |
398 | |||
399 | |||
400 | .globl cheetah_plus_patch_winfixup | ||
401 | cheetah_plus_patch_winfixup: | ||
402 | sethi %hi(cplus_wfinsn_1), %o0 | ||
403 | sethi %hi(cplus_winfixup_insn_1), %o2 | ||
404 | lduw [%o0 + %lo(cplus_wfinsn_1)], %o1 | ||
405 | or %o2, %lo(cplus_winfixup_insn_1), %o2 | ||
406 | stw %o1, [%o2] | ||
407 | flush %o2 | ||
408 | |||
409 | sethi %hi(cplus_wfinsn_2), %o0 | ||
410 | sethi %hi(cplus_winfixup_insn_2), %o2 | ||
411 | lduw [%o0 + %lo(cplus_wfinsn_2)], %o1 | ||
412 | or %o2, %lo(cplus_winfixup_insn_2), %o2 | ||
413 | stw %o1, [%o2] | ||
414 | flush %o2 | ||
415 | |||
416 | retl | ||
417 | nop | ||
diff --git a/arch/sparc64/lib/VISsave.S b/arch/sparc64/lib/VISsave.S index 4e18989bd602..a0ded5c5aa5c 100644 --- a/arch/sparc64/lib/VISsave.S +++ b/arch/sparc64/lib/VISsave.S | |||
@@ -59,15 +59,17 @@ vis1: ldub [%g6 + TI_FPSAVED], %g3 | |||
59 | be,pn %icc, 9b | 59 | be,pn %icc, 9b |
60 | add %g6, TI_FPREGS, %g2 | 60 | add %g6, TI_FPREGS, %g2 |
61 | andcc %o5, FPRS_DL, %g0 | 61 | andcc %o5, FPRS_DL, %g0 |
62 | membar #StoreStore | #LoadStore | ||
63 | 62 | ||
64 | be,pn %icc, 4f | 63 | be,pn %icc, 4f |
65 | add %g6, TI_FPREGS+0x40, %g3 | 64 | add %g6, TI_FPREGS+0x40, %g3 |
65 | membar #Sync | ||
66 | stda %f0, [%g2 + %g1] ASI_BLK_P | 66 | stda %f0, [%g2 + %g1] ASI_BLK_P |
67 | stda %f16, [%g3 + %g1] ASI_BLK_P | 67 | stda %f16, [%g3 + %g1] ASI_BLK_P |
68 | membar #Sync | ||
68 | andcc %o5, FPRS_DU, %g0 | 69 | andcc %o5, FPRS_DU, %g0 |
69 | be,pn %icc, 5f | 70 | be,pn %icc, 5f |
70 | 4: add %g1, 128, %g1 | 71 | 4: add %g1, 128, %g1 |
72 | membar #Sync | ||
71 | stda %f32, [%g2 + %g1] ASI_BLK_P | 73 | stda %f32, [%g2 + %g1] ASI_BLK_P |
72 | 74 | ||
73 | stda %f48, [%g3 + %g1] ASI_BLK_P | 75 | stda %f48, [%g3 + %g1] ASI_BLK_P |
@@ -87,7 +89,7 @@ vis1: ldub [%g6 + TI_FPSAVED], %g3 | |||
87 | sll %g1, 5, %g1 | 89 | sll %g1, 5, %g1 |
88 | add %g6, TI_FPREGS+0xc0, %g3 | 90 | add %g6, TI_FPREGS+0xc0, %g3 |
89 | wr %g0, FPRS_FEF, %fprs | 91 | wr %g0, FPRS_FEF, %fprs |
90 | membar #StoreStore | #LoadStore | 92 | membar #Sync |
91 | stda %f32, [%g2 + %g1] ASI_BLK_P | 93 | stda %f32, [%g2 + %g1] ASI_BLK_P |
92 | stda %f48, [%g3 + %g1] ASI_BLK_P | 94 | stda %f48, [%g3 + %g1] ASI_BLK_P |
93 | membar #Sync | 95 | membar #Sync |
@@ -128,8 +130,8 @@ VISenterhalf: | |||
128 | be,pn %icc, 4f | 130 | be,pn %icc, 4f |
129 | add %g6, TI_FPREGS, %g2 | 131 | add %g6, TI_FPREGS, %g2 |
130 | 132 | ||
131 | membar #StoreStore | #LoadStore | ||
132 | add %g6, TI_FPREGS+0x40, %g3 | 133 | add %g6, TI_FPREGS+0x40, %g3 |
134 | membar #Sync | ||
133 | stda %f0, [%g2 + %g1] ASI_BLK_P | 135 | stda %f0, [%g2 + %g1] ASI_BLK_P |
134 | stda %f16, [%g3 + %g1] ASI_BLK_P | 136 | stda %f16, [%g3 + %g1] ASI_BLK_P |
135 | membar #Sync | 137 | membar #Sync |
diff --git a/arch/sparc64/mm/init.c b/arch/sparc64/mm/init.c index 5db50524f20d..1e44ee26cee8 100644 --- a/arch/sparc64/mm/init.c +++ b/arch/sparc64/mm/init.c | |||
@@ -105,7 +105,7 @@ static void __init read_obp_memory(const char *property, | |||
105 | regs[i].phys_addr = base; | 105 | regs[i].phys_addr = base; |
106 | regs[i].reg_size = size; | 106 | regs[i].reg_size = size; |
107 | } | 107 | } |
108 | sort(regs, ents, sizeof(struct linux_prom64_registers), | 108 | sort(regs, ents, sizeof(struct linux_prom64_registers), |
109 | cmp_p64, NULL); | 109 | cmp_p64, NULL); |
110 | } | 110 | } |
111 | 111 | ||
@@ -133,6 +133,12 @@ extern unsigned int sparc_ramdisk_size; | |||
133 | 133 | ||
134 | struct page *mem_map_zero __read_mostly; | 134 | struct page *mem_map_zero __read_mostly; |
135 | 135 | ||
136 | unsigned int sparc64_highest_unlocked_tlb_ent __read_mostly; | ||
137 | |||
138 | unsigned long sparc64_kern_pri_context __read_mostly; | ||
139 | unsigned long sparc64_kern_pri_nuc_bits __read_mostly; | ||
140 | unsigned long sparc64_kern_sec_context __read_mostly; | ||
141 | |||
136 | int bigkernel = 0; | 142 | int bigkernel = 0; |
137 | 143 | ||
138 | /* XXX Tune this... */ | 144 | /* XXX Tune this... */ |
@@ -361,7 +367,11 @@ struct linux_prom_translation { | |||
361 | unsigned long size; | 367 | unsigned long size; |
362 | unsigned long data; | 368 | unsigned long data; |
363 | }; | 369 | }; |
364 | static struct linux_prom_translation prom_trans[512] __initdata; | 370 | |
371 | /* Exported for kernel TLB miss handling in ktlb.S */ | ||
372 | struct linux_prom_translation prom_trans[512] __read_mostly; | ||
373 | unsigned int prom_trans_ents __read_mostly; | ||
374 | unsigned int swapper_pgd_zero __read_mostly; | ||
365 | 375 | ||
366 | extern unsigned long prom_boot_page; | 376 | extern unsigned long prom_boot_page; |
367 | extern void prom_remap(unsigned long physpage, unsigned long virtpage, int mmu_ihandle); | 377 | extern void prom_remap(unsigned long physpage, unsigned long virtpage, int mmu_ihandle); |
@@ -371,178 +381,57 @@ extern void register_prom_callbacks(void); | |||
371 | /* Exported for SMP bootup purposes. */ | 381 | /* Exported for SMP bootup purposes. */ |
372 | unsigned long kern_locked_tte_data; | 382 | unsigned long kern_locked_tte_data; |
373 | 383 | ||
374 | /* Exported for kernel TLB miss handling in ktlb.S */ | ||
375 | unsigned long prom_pmd_phys __read_mostly; | ||
376 | unsigned int swapper_pgd_zero __read_mostly; | ||
377 | |||
378 | /* Allocate power-of-2 aligned chunks from the end of the | ||
379 | * kernel image. Return physical address. | ||
380 | */ | ||
381 | static inline unsigned long early_alloc_phys(unsigned long size) | ||
382 | { | ||
383 | unsigned long base; | ||
384 | |||
385 | BUILD_BUG_ON(size & (size - 1)); | ||
386 | |||
387 | kern_size = (kern_size + (size - 1)) & ~(size - 1); | ||
388 | base = kern_base + kern_size; | ||
389 | kern_size += size; | ||
390 | |||
391 | return base; | ||
392 | } | ||
393 | |||
394 | static inline unsigned long load_phys32(unsigned long pa) | ||
395 | { | ||
396 | unsigned long val; | ||
397 | |||
398 | __asm__ __volatile__("lduwa [%1] %2, %0" | ||
399 | : "=&r" (val) | ||
400 | : "r" (pa), "i" (ASI_PHYS_USE_EC)); | ||
401 | |||
402 | return val; | ||
403 | } | ||
404 | |||
405 | static inline unsigned long load_phys64(unsigned long pa) | ||
406 | { | ||
407 | unsigned long val; | ||
408 | |||
409 | __asm__ __volatile__("ldxa [%1] %2, %0" | ||
410 | : "=&r" (val) | ||
411 | : "r" (pa), "i" (ASI_PHYS_USE_EC)); | ||
412 | |||
413 | return val; | ||
414 | } | ||
415 | |||
416 | static inline void store_phys32(unsigned long pa, unsigned long val) | ||
417 | { | ||
418 | __asm__ __volatile__("stwa %0, [%1] %2" | ||
419 | : /* no outputs */ | ||
420 | : "r" (val), "r" (pa), "i" (ASI_PHYS_USE_EC)); | ||
421 | } | ||
422 | |||
423 | static inline void store_phys64(unsigned long pa, unsigned long val) | ||
424 | { | ||
425 | __asm__ __volatile__("stxa %0, [%1] %2" | ||
426 | : /* no outputs */ | ||
427 | : "r" (val), "r" (pa), "i" (ASI_PHYS_USE_EC)); | ||
428 | } | ||
429 | |||
430 | #define BASE_PAGE_SIZE 8192 | ||
431 | |||
432 | /* | 384 | /* |
433 | * Translate PROM's mapping we capture at boot time into physical address. | 385 | * Translate PROM's mapping we capture at boot time into physical address. |
434 | * The second parameter is only set from prom_callback() invocations. | 386 | * The second parameter is only set from prom_callback() invocations. |
435 | */ | 387 | */ |
436 | unsigned long prom_virt_to_phys(unsigned long promva, int *error) | 388 | unsigned long prom_virt_to_phys(unsigned long promva, int *error) |
437 | { | 389 | { |
438 | unsigned long pmd_phys = (prom_pmd_phys + | 390 | int i; |
439 | ((promva >> 23) & 0x7ff) * sizeof(pmd_t)); | ||
440 | unsigned long pte_phys; | ||
441 | pmd_t pmd_ent; | ||
442 | pte_t pte_ent; | ||
443 | unsigned long base; | ||
444 | |||
445 | pmd_val(pmd_ent) = load_phys32(pmd_phys); | ||
446 | if (pmd_none(pmd_ent)) { | ||
447 | if (error) | ||
448 | *error = 1; | ||
449 | return 0; | ||
450 | } | ||
451 | 391 | ||
452 | pte_phys = (unsigned long)pmd_val(pmd_ent) << 11UL; | 392 | for (i = 0; i < prom_trans_ents; i++) { |
453 | pte_phys += ((promva >> 13) & 0x3ff) * sizeof(pte_t); | 393 | struct linux_prom_translation *p = &prom_trans[i]; |
454 | pte_val(pte_ent) = load_phys64(pte_phys); | 394 | |
455 | if (!pte_present(pte_ent)) { | 395 | if (promva >= p->virt && |
456 | if (error) | 396 | promva < (p->virt + p->size)) { |
457 | *error = 1; | 397 | unsigned long base = p->data & _PAGE_PADDR; |
458 | return 0; | 398 | |
459 | } | 399 | if (error) |
460 | if (error) { | 400 | *error = 0; |
461 | *error = 0; | 401 | return base + (promva & (8192 - 1)); |
462 | return pte_val(pte_ent); | 402 | } |
463 | } | 403 | } |
464 | base = pte_val(pte_ent) & _PAGE_PADDR; | 404 | if (error) |
465 | return (base + (promva & (BASE_PAGE_SIZE - 1))); | 405 | *error = 1; |
406 | return 0UL; | ||
466 | } | 407 | } |
467 | 408 | ||
468 | /* The obp translations are saved based on 8k pagesize, since obp can | 409 | /* The obp translations are saved based on 8k pagesize, since obp can |
469 | * use a mixture of pagesizes. Misses to the LOW_OBP_ADDRESS -> | 410 | * use a mixture of pagesizes. Misses to the LOW_OBP_ADDRESS -> |
470 | * HI_OBP_ADDRESS range are handled in entry.S and do not use the vpte | 411 | * HI_OBP_ADDRESS range are handled in ktlb.S and do not use the vpte |
471 | * scheme (also, see rant in inherit_locked_prom_mappings()). | 412 | * scheme (also, see rant in inherit_locked_prom_mappings()). |
472 | */ | 413 | */ |
473 | static void __init build_obp_range(unsigned long start, unsigned long end, unsigned long data) | ||
474 | { | ||
475 | unsigned long vaddr; | ||
476 | |||
477 | for (vaddr = start; vaddr < end; vaddr += BASE_PAGE_SIZE) { | ||
478 | unsigned long val, pte_phys, pmd_phys; | ||
479 | pmd_t pmd_ent; | ||
480 | int i; | ||
481 | |||
482 | pmd_phys = (prom_pmd_phys + | ||
483 | (((vaddr >> 23) & 0x7ff) * sizeof(pmd_t))); | ||
484 | pmd_val(pmd_ent) = load_phys32(pmd_phys); | ||
485 | if (pmd_none(pmd_ent)) { | ||
486 | pte_phys = early_alloc_phys(BASE_PAGE_SIZE); | ||
487 | |||
488 | for (i = 0; i < BASE_PAGE_SIZE / sizeof(pte_t); i++) | ||
489 | store_phys64(pte_phys+i*sizeof(pte_t),0); | ||
490 | |||
491 | pmd_val(pmd_ent) = pte_phys >> 11UL; | ||
492 | store_phys32(pmd_phys, pmd_val(pmd_ent)); | ||
493 | } | ||
494 | |||
495 | pte_phys = (unsigned long)pmd_val(pmd_ent) << 11UL; | ||
496 | pte_phys += (((vaddr >> 13) & 0x3ff) * sizeof(pte_t)); | ||
497 | |||
498 | val = data; | ||
499 | |||
500 | /* Clear diag TTE bits. */ | ||
501 | if (tlb_type == spitfire) | ||
502 | val &= ~0x0003fe0000000000UL; | ||
503 | |||
504 | store_phys64(pte_phys, val | _PAGE_MODIFIED); | ||
505 | |||
506 | data += BASE_PAGE_SIZE; | ||
507 | } | ||
508 | } | ||
509 | |||
510 | static inline int in_obp_range(unsigned long vaddr) | 414 | static inline int in_obp_range(unsigned long vaddr) |
511 | { | 415 | { |
512 | return (vaddr >= LOW_OBP_ADDRESS && | 416 | return (vaddr >= LOW_OBP_ADDRESS && |
513 | vaddr < HI_OBP_ADDRESS); | 417 | vaddr < HI_OBP_ADDRESS); |
514 | } | 418 | } |
515 | 419 | ||
516 | #define OBP_PMD_SIZE 2048 | 420 | static int cmp_ptrans(const void *a, const void *b) |
517 | static void __init build_obp_pgtable(int prom_trans_ents) | ||
518 | { | 421 | { |
519 | unsigned long i; | 422 | const struct linux_prom_translation *x = a, *y = b; |
520 | |||
521 | prom_pmd_phys = early_alloc_phys(OBP_PMD_SIZE); | ||
522 | for (i = 0; i < OBP_PMD_SIZE; i += 4) | ||
523 | store_phys32(prom_pmd_phys + i, 0); | ||
524 | 423 | ||
525 | for (i = 0; i < prom_trans_ents; i++) { | 424 | if (x->virt > y->virt) |
526 | unsigned long start, end; | 425 | return 1; |
527 | 426 | if (x->virt < y->virt) | |
528 | if (!in_obp_range(prom_trans[i].virt)) | 427 | return -1; |
529 | continue; | 428 | return 0; |
530 | |||
531 | start = prom_trans[i].virt; | ||
532 | end = start + prom_trans[i].size; | ||
533 | if (end > HI_OBP_ADDRESS) | ||
534 | end = HI_OBP_ADDRESS; | ||
535 | |||
536 | build_obp_range(start, end, prom_trans[i].data); | ||
537 | } | ||
538 | } | 429 | } |
539 | 430 | ||
540 | /* Read OBP translations property into 'prom_trans[]'. | 431 | /* Read OBP translations property into 'prom_trans[]'. */ |
541 | * Return the number of entries. | 432 | static void __init read_obp_translations(void) |
542 | */ | ||
543 | static int __init read_obp_translations(void) | ||
544 | { | 433 | { |
545 | int n, node; | 434 | int n, node, ents, first, last, i; |
546 | 435 | ||
547 | node = prom_finddevice("/virtual-memory"); | 436 | node = prom_finddevice("/virtual-memory"); |
548 | n = prom_getproplen(node, "translations"); | 437 | n = prom_getproplen(node, "translations"); |
@@ -561,8 +450,44 @@ static int __init read_obp_translations(void) | |||
561 | prom_printf("prom_mappings: Couldn't get property.\n"); | 450 | prom_printf("prom_mappings: Couldn't get property.\n"); |
562 | prom_halt(); | 451 | prom_halt(); |
563 | } | 452 | } |
453 | |||
564 | n = n / sizeof(struct linux_prom_translation); | 454 | n = n / sizeof(struct linux_prom_translation); |
565 | return n; | 455 | |
456 | ents = n; | ||
457 | |||
458 | sort(prom_trans, ents, sizeof(struct linux_prom_translation), | ||
459 | cmp_ptrans, NULL); | ||
460 | |||
461 | /* Now kick out all the non-OBP entries. */ | ||
462 | for (i = 0; i < ents; i++) { | ||
463 | if (in_obp_range(prom_trans[i].virt)) | ||
464 | break; | ||
465 | } | ||
466 | first = i; | ||
467 | for (; i < ents; i++) { | ||
468 | if (!in_obp_range(prom_trans[i].virt)) | ||
469 | break; | ||
470 | } | ||
471 | last = i; | ||
472 | |||
473 | for (i = 0; i < (last - first); i++) { | ||
474 | struct linux_prom_translation *src = &prom_trans[i + first]; | ||
475 | struct linux_prom_translation *dest = &prom_trans[i]; | ||
476 | |||
477 | *dest = *src; | ||
478 | } | ||
479 | for (; i < ents; i++) { | ||
480 | struct linux_prom_translation *dest = &prom_trans[i]; | ||
481 | dest->virt = dest->size = dest->data = 0x0UL; | ||
482 | } | ||
483 | |||
484 | prom_trans_ents = last - first; | ||
485 | |||
486 | if (tlb_type == spitfire) { | ||
487 | /* Clear diag TTE bits. */ | ||
488 | for (i = 0; i < prom_trans_ents; i++) | ||
489 | prom_trans[i].data &= ~0x0003fe0000000000UL; | ||
490 | } | ||
566 | } | 491 | } |
567 | 492 | ||
568 | static void __init remap_kernel(void) | 493 | static void __init remap_kernel(void) |
@@ -582,29 +507,36 @@ static void __init remap_kernel(void) | |||
582 | prom_dtlb_load(tlb_ent, tte_data, tte_vaddr); | 507 | prom_dtlb_load(tlb_ent, tte_data, tte_vaddr); |
583 | prom_itlb_load(tlb_ent, tte_data, tte_vaddr); | 508 | prom_itlb_load(tlb_ent, tte_data, tte_vaddr); |
584 | if (bigkernel) { | 509 | if (bigkernel) { |
585 | prom_dtlb_load(tlb_ent - 1, | 510 | tlb_ent -= 1; |
511 | prom_dtlb_load(tlb_ent, | ||
586 | tte_data + 0x400000, | 512 | tte_data + 0x400000, |
587 | tte_vaddr + 0x400000); | 513 | tte_vaddr + 0x400000); |
588 | prom_itlb_load(tlb_ent - 1, | 514 | prom_itlb_load(tlb_ent, |
589 | tte_data + 0x400000, | 515 | tte_data + 0x400000, |
590 | tte_vaddr + 0x400000); | 516 | tte_vaddr + 0x400000); |
591 | } | 517 | } |
518 | sparc64_highest_unlocked_tlb_ent = tlb_ent - 1; | ||
519 | if (tlb_type == cheetah_plus) { | ||
520 | sparc64_kern_pri_context = (CTX_CHEETAH_PLUS_CTX0 | | ||
521 | CTX_CHEETAH_PLUS_NUC); | ||
522 | sparc64_kern_pri_nuc_bits = CTX_CHEETAH_PLUS_NUC; | ||
523 | sparc64_kern_sec_context = CTX_CHEETAH_PLUS_CTX0; | ||
524 | } | ||
592 | } | 525 | } |
593 | 526 | ||
527 | |||
594 | static void __init inherit_prom_mappings(void) | 528 | static void __init inherit_prom_mappings(void) |
595 | { | 529 | { |
596 | int n; | 530 | read_obp_translations(); |
597 | |||
598 | n = read_obp_translations(); | ||
599 | build_obp_pgtable(n); | ||
600 | 531 | ||
601 | /* Now fixup OBP's idea about where we really are mapped. */ | 532 | /* Now fixup OBP's idea about where we really are mapped. */ |
602 | prom_printf("Remapping the kernel... "); | 533 | prom_printf("Remapping the kernel... "); |
603 | remap_kernel(); | 534 | remap_kernel(); |
604 | |||
605 | prom_printf("done.\n"); | 535 | prom_printf("done.\n"); |
606 | 536 | ||
537 | prom_printf("Registering callbacks... "); | ||
607 | register_prom_callbacks(); | 538 | register_prom_callbacks(); |
539 | prom_printf("done.\n"); | ||
608 | } | 540 | } |
609 | 541 | ||
610 | /* The OBP specifications for sun4u mark 0xfffffffc00000000 and | 542 | /* The OBP specifications for sun4u mark 0xfffffffc00000000 and |
@@ -788,8 +720,8 @@ void inherit_locked_prom_mappings(int save_p) | |||
788 | } | 720 | } |
789 | } | 721 | } |
790 | if (tlb_type == spitfire) { | 722 | if (tlb_type == spitfire) { |
791 | int high = SPITFIRE_HIGHEST_LOCKED_TLBENT - bigkernel; | 723 | int high = sparc64_highest_unlocked_tlb_ent; |
792 | for (i = 0; i < high; i++) { | 724 | for (i = 0; i <= high; i++) { |
793 | unsigned long data; | 725 | unsigned long data; |
794 | 726 | ||
795 | /* Spitfire Errata #32 workaround */ | 727 | /* Spitfire Errata #32 workaround */ |
@@ -877,9 +809,9 @@ void inherit_locked_prom_mappings(int save_p) | |||
877 | } | 809 | } |
878 | } | 810 | } |
879 | } else if (tlb_type == cheetah || tlb_type == cheetah_plus) { | 811 | } else if (tlb_type == cheetah || tlb_type == cheetah_plus) { |
880 | int high = CHEETAH_HIGHEST_LOCKED_TLBENT - bigkernel; | 812 | int high = sparc64_highest_unlocked_tlb_ent; |
881 | 813 | ||
882 | for (i = 0; i < high; i++) { | 814 | for (i = 0; i <= high; i++) { |
883 | unsigned long data; | 815 | unsigned long data; |
884 | 816 | ||
885 | data = cheetah_get_ldtlb_data(i); | 817 | data = cheetah_get_ldtlb_data(i); |
@@ -1556,7 +1488,6 @@ void __init paging_init(void) | |||
1556 | 1488 | ||
1557 | swapper_pgd_zero = pgd_val(swapper_pg_dir[0]); | 1489 | swapper_pgd_zero = pgd_val(swapper_pg_dir[0]); |
1558 | 1490 | ||
1559 | /* Inherit non-locked OBP mappings. */ | ||
1560 | inherit_prom_mappings(); | 1491 | inherit_prom_mappings(); |
1561 | 1492 | ||
1562 | /* Ok, we can use our TLB miss and window trap handlers safely. | 1493 | /* Ok, we can use our TLB miss and window trap handlers safely. |
diff --git a/arch/sparc64/mm/ultra.S b/arch/sparc64/mm/ultra.S index 058b8126c1a7..e4c9151fa116 100644 --- a/arch/sparc64/mm/ultra.S +++ b/arch/sparc64/mm/ultra.S | |||
@@ -453,22 +453,6 @@ xcall_flush_dcache_page_spitfire: /* %g1 == physical page address | |||
453 | nop | 453 | nop |
454 | nop | 454 | nop |
455 | 455 | ||
456 | .globl xcall_promstop | ||
457 | xcall_promstop: | ||
458 | rdpr %pstate, %g2 | ||
459 | wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate | ||
460 | rdpr %pil, %g2 | ||
461 | wrpr %g0, 15, %pil | ||
462 | sethi %hi(109f), %g7 | ||
463 | b,pt %xcc, etrap_irq | ||
464 | 109: or %g7, %lo(109b), %g7 | ||
465 | flushw | ||
466 | call prom_stopself | ||
467 | nop | ||
468 | /* We should not return, just spin if we do... */ | ||
469 | 1: b,a,pt %xcc, 1b | ||
470 | nop | ||
471 | |||
472 | .data | 456 | .data |
473 | 457 | ||
474 | errata32_hwbug: | 458 | errata32_hwbug: |
diff --git a/arch/sparc64/prom/misc.c b/arch/sparc64/prom/misc.c index 9b895faf077b..87f5cfce23bb 100644 --- a/arch/sparc64/prom/misc.c +++ b/arch/sparc64/prom/misc.c | |||
@@ -68,19 +68,11 @@ void prom_cmdline(void) | |||
68 | local_irq_restore(flags); | 68 | local_irq_restore(flags); |
69 | } | 69 | } |
70 | 70 | ||
71 | #ifdef CONFIG_SMP | ||
72 | extern void smp_promstop_others(void); | ||
73 | #endif | ||
74 | |||
75 | /* Drop into the prom, but completely terminate the program. | 71 | /* Drop into the prom, but completely terminate the program. |
76 | * No chance of continuing. | 72 | * No chance of continuing. |
77 | */ | 73 | */ |
78 | void prom_halt(void) | 74 | void prom_halt(void) |
79 | { | 75 | { |
80 | #ifdef CONFIG_SMP | ||
81 | smp_promstop_others(); | ||
82 | udelay(8000); | ||
83 | #endif | ||
84 | again: | 76 | again: |
85 | p1275_cmd("exit", P1275_INOUT(0, 0)); | 77 | p1275_cmd("exit", P1275_INOUT(0, 0)); |
86 | goto again; /* PROM is out to get me -DaveM */ | 78 | goto again; /* PROM is out to get me -DaveM */ |
@@ -88,10 +80,6 @@ again: | |||
88 | 80 | ||
89 | void prom_halt_power_off(void) | 81 | void prom_halt_power_off(void) |
90 | { | 82 | { |
91 | #ifdef CONFIG_SMP | ||
92 | smp_promstop_others(); | ||
93 | udelay(8000); | ||
94 | #endif | ||
95 | p1275_cmd("SUNW,power-off", P1275_INOUT(0, 0)); | 83 | p1275_cmd("SUNW,power-off", P1275_INOUT(0, 0)); |
96 | 84 | ||
97 | /* if nothing else helps, we just halt */ | 85 | /* if nothing else helps, we just halt */ |
diff --git a/arch/um/Makefile b/arch/um/Makefile index 7af37e342e33..e1ffad224605 100644 --- a/arch/um/Makefile +++ b/arch/um/Makefile | |||
@@ -152,7 +152,7 @@ archclean: | |||
152 | $(SYMLINK_HEADERS): | 152 | $(SYMLINK_HEADERS): |
153 | @echo ' SYMLINK $@' | 153 | @echo ' SYMLINK $@' |
154 | ifneq ($(KBUILD_SRC),) | 154 | ifneq ($(KBUILD_SRC),) |
155 | ln -fsn $(srctree)/include/asm-um/$(basename $(notdir $@))-$(SUBARCH)$(suffix $@) $@ | 155 | $(Q)ln -fsn $(srctree)/include/asm-um/$(basename $(notdir $@))-$(SUBARCH)$(suffix $@) $@ |
156 | else | 156 | else |
157 | $(Q)cd $(TOPDIR)/$(dir $@) ; \ | 157 | $(Q)cd $(TOPDIR)/$(dir $@) ; \ |
158 | ln -sf $(basename $(notdir $@))-$(SUBARCH)$(suffix $@) $(notdir $@) | 158 | ln -sf $(basename $(notdir $@))-$(SUBARCH)$(suffix $@) $(notdir $@) |
diff --git a/arch/um/drivers/Makefile b/arch/um/drivers/Makefile index 783e18cae090..de17d4c6e02d 100644 --- a/arch/um/drivers/Makefile +++ b/arch/um/drivers/Makefile | |||
@@ -13,7 +13,7 @@ mcast-objs := mcast_kern.o mcast_user.o | |||
13 | net-objs := net_kern.o net_user.o | 13 | net-objs := net_kern.o net_user.o |
14 | mconsole-objs := mconsole_kern.o mconsole_user.o | 14 | mconsole-objs := mconsole_kern.o mconsole_user.o |
15 | hostaudio-objs := hostaudio_kern.o | 15 | hostaudio-objs := hostaudio_kern.o |
16 | ubd-objs := ubd_kern.o | 16 | ubd-objs := ubd_kern.o ubd_user.o |
17 | port-objs := port_kern.o port_user.o | 17 | port-objs := port_kern.o port_user.o |
18 | harddog-objs := harddog_kern.o harddog_user.o | 18 | harddog-objs := harddog_kern.o harddog_user.o |
19 | 19 | ||
diff --git a/arch/um/drivers/cow.h b/arch/um/drivers/cow.h index 4fcf3a8d13f4..dc36b222100b 100644 --- a/arch/um/drivers/cow.h +++ b/arch/um/drivers/cow.h | |||
@@ -3,15 +3,40 @@ | |||
3 | 3 | ||
4 | #include <asm/types.h> | 4 | #include <asm/types.h> |
5 | 5 | ||
6 | #if defined(__BIG_ENDIAN) | 6 | #if defined(__KERNEL__) |
7 | # define ntohll(x) (x) | 7 | |
8 | # define htonll(x) (x) | 8 | # include <asm/byteorder.h> |
9 | #elif defined(__LITTLE_ENDIAN) | 9 | |
10 | # define ntohll(x) bswap_64(x) | 10 | # if defined(__BIG_ENDIAN) |
11 | # define htonll(x) bswap_64(x) | 11 | # define ntohll(x) (x) |
12 | # define htonll(x) (x) | ||
13 | # elif defined(__LITTLE_ENDIAN) | ||
14 | # define ntohll(x) be64_to_cpu(x) | ||
15 | # define htonll(x) cpu_to_be64(x) | ||
16 | # else | ||
17 | # error "Could not determine byte order" | ||
18 | # endif | ||
19 | |||
12 | #else | 20 | #else |
13 | #error "__BYTE_ORDER not defined" | 21 | /* For the definition of ntohl, htonl and __BYTE_ORDER */ |
22 | #include <endian.h> | ||
23 | #include <netinet/in.h> | ||
24 | #if defined(__BYTE_ORDER) | ||
25 | |||
26 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
27 | # define ntohll(x) (x) | ||
28 | # define htonll(x) (x) | ||
29 | # elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
30 | # define ntohll(x) bswap_64(x) | ||
31 | # define htonll(x) bswap_64(x) | ||
32 | # else | ||
33 | # error "Could not determine byte order: __BYTE_ORDER uncorrectly defined" | ||
34 | # endif | ||
35 | |||
36 | #else /* ! defined(__BYTE_ORDER) */ | ||
37 | # error "Could not determine byte order: __BYTE_ORDER not defined" | ||
14 | #endif | 38 | #endif |
39 | #endif /* ! defined(__KERNEL__) */ | ||
15 | 40 | ||
16 | extern int init_cow_file(int fd, char *cow_file, char *backing_file, | 41 | extern int init_cow_file(int fd, char *cow_file, char *backing_file, |
17 | int sectorsize, int alignment, int *bitmap_offset_out, | 42 | int sectorsize, int alignment, int *bitmap_offset_out, |
diff --git a/arch/um/drivers/cow_user.c b/arch/um/drivers/cow_user.c index a8ce6fc3ef26..fbe2217db5dd 100644 --- a/arch/um/drivers/cow_user.c +++ b/arch/um/drivers/cow_user.c | |||
@@ -9,7 +9,6 @@ | |||
9 | #include <sys/time.h> | 9 | #include <sys/time.h> |
10 | #include <sys/param.h> | 10 | #include <sys/param.h> |
11 | #include <sys/user.h> | 11 | #include <sys/user.h> |
12 | #include <netinet/in.h> | ||
13 | 12 | ||
14 | #include "os.h" | 13 | #include "os.h" |
15 | 14 | ||
diff --git a/arch/um/drivers/ubd_kern.c b/arch/um/drivers/ubd_kern.c index e77a38da4350..f73134333f64 100644 --- a/arch/um/drivers/ubd_kern.c +++ b/arch/um/drivers/ubd_kern.c | |||
@@ -35,7 +35,6 @@ | |||
35 | #include "linux/blkpg.h" | 35 | #include "linux/blkpg.h" |
36 | #include "linux/genhd.h" | 36 | #include "linux/genhd.h" |
37 | #include "linux/spinlock.h" | 37 | #include "linux/spinlock.h" |
38 | #include "asm/atomic.h" | ||
39 | #include "asm/segment.h" | 38 | #include "asm/segment.h" |
40 | #include "asm/uaccess.h" | 39 | #include "asm/uaccess.h" |
41 | #include "asm/irq.h" | 40 | #include "asm/irq.h" |
@@ -54,21 +53,20 @@ | |||
54 | #include "mem.h" | 53 | #include "mem.h" |
55 | #include "mem_kern.h" | 54 | #include "mem_kern.h" |
56 | #include "cow.h" | 55 | #include "cow.h" |
57 | #include "aio.h" | ||
58 | 56 | ||
59 | enum ubd_req { UBD_READ, UBD_WRITE }; | 57 | enum ubd_req { UBD_READ, UBD_WRITE }; |
60 | 58 | ||
61 | struct io_thread_req { | 59 | struct io_thread_req { |
62 | enum aio_type op; | 60 | enum ubd_req op; |
63 | int fds[2]; | 61 | int fds[2]; |
64 | unsigned long offsets[2]; | 62 | unsigned long offsets[2]; |
65 | unsigned long long offset; | 63 | unsigned long long offset; |
66 | unsigned long length; | 64 | unsigned long length; |
67 | char *buffer; | 65 | char *buffer; |
68 | int sectorsize; | 66 | int sectorsize; |
69 | int bitmap_offset; | 67 | unsigned long sector_mask; |
70 | long bitmap_start; | 68 | unsigned long long cow_offset; |
71 | long bitmap_end; | 69 | unsigned long bitmap_words[2]; |
72 | int error; | 70 | int error; |
73 | }; | 71 | }; |
74 | 72 | ||
@@ -82,31 +80,28 @@ extern int create_cow_file(char *cow_file, char *backing_file, | |||
82 | unsigned long *bitmap_len_out, | 80 | unsigned long *bitmap_len_out, |
83 | int *data_offset_out); | 81 | int *data_offset_out); |
84 | extern int read_cow_bitmap(int fd, void *buf, int offset, int len); | 82 | extern int read_cow_bitmap(int fd, void *buf, int offset, int len); |
85 | extern void do_io(struct io_thread_req *req, struct request *r, | 83 | extern void do_io(struct io_thread_req *req); |
86 | unsigned long *bitmap); | ||
87 | 84 | ||
88 | static inline int ubd_test_bit(__u64 bit, void *data) | 85 | static inline int ubd_test_bit(__u64 bit, unsigned char *data) |
89 | { | 86 | { |
90 | unsigned char *buffer = data; | ||
91 | __u64 n; | 87 | __u64 n; |
92 | int bits, off; | 88 | int bits, off; |
93 | 89 | ||
94 | bits = sizeof(buffer[0]) * 8; | 90 | bits = sizeof(data[0]) * 8; |
95 | n = bit / bits; | 91 | n = bit / bits; |
96 | off = bit % bits; | 92 | off = bit % bits; |
97 | return((buffer[n] & (1 << off)) != 0); | 93 | return((data[n] & (1 << off)) != 0); |
98 | } | 94 | } |
99 | 95 | ||
100 | static inline void ubd_set_bit(__u64 bit, void *data) | 96 | static inline void ubd_set_bit(__u64 bit, unsigned char *data) |
101 | { | 97 | { |
102 | unsigned char *buffer = data; | ||
103 | __u64 n; | 98 | __u64 n; |
104 | int bits, off; | 99 | int bits, off; |
105 | 100 | ||
106 | bits = sizeof(buffer[0]) * 8; | 101 | bits = sizeof(data[0]) * 8; |
107 | n = bit / bits; | 102 | n = bit / bits; |
108 | off = bit % bits; | 103 | off = bit % bits; |
109 | buffer[n] |= (1 << off); | 104 | data[n] |= (1 << off); |
110 | } | 105 | } |
111 | /*End stuff from ubd_user.h*/ | 106 | /*End stuff from ubd_user.h*/ |
112 | 107 | ||
@@ -115,6 +110,8 @@ static inline void ubd_set_bit(__u64 bit, void *data) | |||
115 | static DEFINE_SPINLOCK(ubd_io_lock); | 110 | static DEFINE_SPINLOCK(ubd_io_lock); |
116 | static DEFINE_SPINLOCK(ubd_lock); | 111 | static DEFINE_SPINLOCK(ubd_lock); |
117 | 112 | ||
113 | static void (*do_ubd)(void); | ||
114 | |||
118 | static int ubd_open(struct inode * inode, struct file * filp); | 115 | static int ubd_open(struct inode * inode, struct file * filp); |
119 | static int ubd_release(struct inode * inode, struct file * file); | 116 | static int ubd_release(struct inode * inode, struct file * file); |
120 | static int ubd_ioctl(struct inode * inode, struct file * file, | 117 | static int ubd_ioctl(struct inode * inode, struct file * file, |
@@ -161,8 +158,6 @@ struct cow { | |||
161 | int data_offset; | 158 | int data_offset; |
162 | }; | 159 | }; |
163 | 160 | ||
164 | #define MAX_SG 64 | ||
165 | |||
166 | struct ubd { | 161 | struct ubd { |
167 | char *file; | 162 | char *file; |
168 | int count; | 163 | int count; |
@@ -173,7 +168,6 @@ struct ubd { | |||
173 | int no_cow; | 168 | int no_cow; |
174 | struct cow cow; | 169 | struct cow cow; |
175 | struct platform_device pdev; | 170 | struct platform_device pdev; |
176 | struct scatterlist sg[MAX_SG]; | ||
177 | }; | 171 | }; |
178 | 172 | ||
179 | #define DEFAULT_COW { \ | 173 | #define DEFAULT_COW { \ |
@@ -466,114 +460,81 @@ __uml_help(fakehd, | |||
466 | ); | 460 | ); |
467 | 461 | ||
468 | static void do_ubd_request(request_queue_t * q); | 462 | static void do_ubd_request(request_queue_t * q); |
469 | static int in_ubd; | 463 | |
464 | /* Only changed by ubd_init, which is an initcall. */ | ||
465 | int thread_fd = -1; | ||
470 | 466 | ||
471 | /* Changed by ubd_handler, which is serialized because interrupts only | 467 | /* Changed by ubd_handler, which is serialized because interrupts only |
472 | * happen on CPU 0. | 468 | * happen on CPU 0. |
473 | */ | 469 | */ |
474 | int intr_count = 0; | 470 | int intr_count = 0; |
475 | 471 | ||
476 | static void ubd_end_request(struct request *req, int bytes, int uptodate) | 472 | /* call ubd_finish if you need to serialize */ |
473 | static void __ubd_finish(struct request *req, int error) | ||
477 | { | 474 | { |
478 | if (!end_that_request_first(req, uptodate, bytes >> 9)) { | 475 | int nsect; |
479 | add_disk_randomness(req->rq_disk); | 476 | |
480 | end_that_request_last(req); | 477 | if(error){ |
478 | end_request(req, 0); | ||
479 | return; | ||
481 | } | 480 | } |
481 | nsect = req->current_nr_sectors; | ||
482 | req->sector += nsect; | ||
483 | req->buffer += nsect << 9; | ||
484 | req->errors = 0; | ||
485 | req->nr_sectors -= nsect; | ||
486 | req->current_nr_sectors = 0; | ||
487 | end_request(req, 1); | ||
482 | } | 488 | } |
483 | 489 | ||
484 | /* call ubd_finish if you need to serialize */ | 490 | static inline void ubd_finish(struct request *req, int error) |
485 | static void __ubd_finish(struct request *req, int bytes) | ||
486 | { | 491 | { |
487 | if(bytes < 0){ | 492 | spin_lock(&ubd_io_lock); |
488 | ubd_end_request(req, 0, 0); | 493 | __ubd_finish(req, error); |
489 | return; | 494 | spin_unlock(&ubd_io_lock); |
490 | } | ||
491 | |||
492 | ubd_end_request(req, bytes, 1); | ||
493 | } | 495 | } |
494 | 496 | ||
495 | static inline void ubd_finish(struct request *req, int bytes) | 497 | /* Called without ubd_io_lock held */ |
498 | static void ubd_handler(void) | ||
496 | { | 499 | { |
497 | spin_lock(&ubd_io_lock); | 500 | struct io_thread_req req; |
498 | __ubd_finish(req, bytes); | 501 | struct request *rq = elv_next_request(ubd_queue); |
499 | spin_unlock(&ubd_io_lock); | 502 | int n; |
503 | |||
504 | do_ubd = NULL; | ||
505 | intr_count++; | ||
506 | n = os_read_file(thread_fd, &req, sizeof(req)); | ||
507 | if(n != sizeof(req)){ | ||
508 | printk(KERN_ERR "Pid %d - spurious interrupt in ubd_handler, " | ||
509 | "err = %d\n", os_getpid(), -n); | ||
510 | spin_lock(&ubd_io_lock); | ||
511 | end_request(rq, 0); | ||
512 | spin_unlock(&ubd_io_lock); | ||
513 | return; | ||
514 | } | ||
515 | |||
516 | ubd_finish(rq, req.error); | ||
517 | reactivate_fd(thread_fd, UBD_IRQ); | ||
518 | do_ubd_request(ubd_queue); | ||
500 | } | 519 | } |
501 | 520 | ||
502 | struct bitmap_io { | ||
503 | atomic_t count; | ||
504 | struct aio_context aio; | ||
505 | }; | ||
506 | |||
507 | struct ubd_aio { | ||
508 | struct aio_context aio; | ||
509 | struct request *req; | ||
510 | int len; | ||
511 | struct bitmap_io *bitmap; | ||
512 | void *bitmap_buf; | ||
513 | }; | ||
514 | |||
515 | static int ubd_reply_fd = -1; | ||
516 | |||
517 | static irqreturn_t ubd_intr(int irq, void *dev, struct pt_regs *unused) | 521 | static irqreturn_t ubd_intr(int irq, void *dev, struct pt_regs *unused) |
518 | { | 522 | { |
519 | struct aio_thread_reply reply; | 523 | ubd_handler(); |
520 | struct ubd_aio *aio; | 524 | return(IRQ_HANDLED); |
521 | struct request *req; | 525 | } |
522 | int err, n, fd = (int) (long) dev; | ||
523 | |||
524 | while(1){ | ||
525 | err = os_read_file(fd, &reply, sizeof(reply)); | ||
526 | if(err == -EAGAIN) | ||
527 | break; | ||
528 | if(err < 0){ | ||
529 | printk("ubd_aio_handler - read returned err %d\n", | ||
530 | -err); | ||
531 | break; | ||
532 | } | ||
533 | |||
534 | aio = container_of(reply.data, struct ubd_aio, aio); | ||
535 | n = reply.err; | ||
536 | |||
537 | if(n == 0){ | ||
538 | req = aio->req; | ||
539 | req->nr_sectors -= aio->len >> 9; | ||
540 | |||
541 | if((aio->bitmap != NULL) && | ||
542 | (atomic_dec_and_test(&aio->bitmap->count))){ | ||
543 | aio->aio = aio->bitmap->aio; | ||
544 | aio->len = 0; | ||
545 | kfree(aio->bitmap); | ||
546 | aio->bitmap = NULL; | ||
547 | submit_aio(&aio->aio); | ||
548 | } | ||
549 | else { | ||
550 | if((req->nr_sectors == 0) && | ||
551 | (aio->bitmap == NULL)){ | ||
552 | int len = req->hard_nr_sectors << 9; | ||
553 | ubd_finish(req, len); | ||
554 | } | ||
555 | |||
556 | if(aio->bitmap_buf != NULL) | ||
557 | kfree(aio->bitmap_buf); | ||
558 | kfree(aio); | ||
559 | } | ||
560 | } | ||
561 | else if(n < 0){ | ||
562 | ubd_finish(aio->req, n); | ||
563 | if(aio->bitmap != NULL) | ||
564 | kfree(aio->bitmap); | ||
565 | if(aio->bitmap_buf != NULL) | ||
566 | kfree(aio->bitmap_buf); | ||
567 | kfree(aio); | ||
568 | } | ||
569 | } | ||
570 | reactivate_fd(fd, UBD_IRQ); | ||
571 | 526 | ||
572 | do_ubd_request(ubd_queue); | 527 | /* Only changed by ubd_init, which is an initcall. */ |
528 | static int io_pid = -1; | ||
573 | 529 | ||
574 | return(IRQ_HANDLED); | 530 | void kill_io_thread(void) |
531 | { | ||
532 | if(io_pid != -1) | ||
533 | os_kill_process(io_pid, 1); | ||
575 | } | 534 | } |
576 | 535 | ||
536 | __uml_exitcall(kill_io_thread); | ||
537 | |||
577 | static int ubd_file_size(struct ubd *dev, __u64 *size_out) | 538 | static int ubd_file_size(struct ubd *dev, __u64 *size_out) |
578 | { | 539 | { |
579 | char *file; | 540 | char *file; |
@@ -608,7 +569,7 @@ static int ubd_open_dev(struct ubd *dev) | |||
608 | &dev->cow.data_offset, create_ptr); | 569 | &dev->cow.data_offset, create_ptr); |
609 | 570 | ||
610 | if((dev->fd == -ENOENT) && create_cow){ | 571 | if((dev->fd == -ENOENT) && create_cow){ |
611 | dev->fd = create_cow_file(dev->file, dev->cow.file, | 572 | dev->fd = create_cow_file(dev->file, dev->cow.file, |
612 | dev->openflags, 1 << 9, PAGE_SIZE, | 573 | dev->openflags, 1 << 9, PAGE_SIZE, |
613 | &dev->cow.bitmap_offset, | 574 | &dev->cow.bitmap_offset, |
614 | &dev->cow.bitmap_len, | 575 | &dev->cow.bitmap_len, |
@@ -870,10 +831,6 @@ int ubd_init(void) | |||
870 | { | 831 | { |
871 | int i; | 832 | int i; |
872 | 833 | ||
873 | ubd_reply_fd = init_aio_irq(UBD_IRQ, "ubd", ubd_intr); | ||
874 | if(ubd_reply_fd < 0) | ||
875 | printk("Setting up ubd AIO failed, err = %d\n", ubd_reply_fd); | ||
876 | |||
877 | devfs_mk_dir("ubd"); | 834 | devfs_mk_dir("ubd"); |
878 | if (register_blkdev(MAJOR_NR, "ubd")) | 835 | if (register_blkdev(MAJOR_NR, "ubd")) |
879 | return -1; | 836 | return -1; |
@@ -884,7 +841,6 @@ int ubd_init(void) | |||
884 | return -1; | 841 | return -1; |
885 | } | 842 | } |
886 | 843 | ||
887 | blk_queue_max_hw_segments(ubd_queue, MAX_SG); | ||
888 | if (fake_major != MAJOR_NR) { | 844 | if (fake_major != MAJOR_NR) { |
889 | char name[sizeof("ubd_nnn\0")]; | 845 | char name[sizeof("ubd_nnn\0")]; |
890 | 846 | ||
@@ -896,12 +852,40 @@ int ubd_init(void) | |||
896 | driver_register(&ubd_driver); | 852 | driver_register(&ubd_driver); |
897 | for (i = 0; i < MAX_DEV; i++) | 853 | for (i = 0; i < MAX_DEV; i++) |
898 | ubd_add(i); | 854 | ubd_add(i); |
899 | |||
900 | return 0; | 855 | return 0; |
901 | } | 856 | } |
902 | 857 | ||
903 | late_initcall(ubd_init); | 858 | late_initcall(ubd_init); |
904 | 859 | ||
860 | int ubd_driver_init(void){ | ||
861 | unsigned long stack; | ||
862 | int err; | ||
863 | |||
864 | /* Set by CONFIG_BLK_DEV_UBD_SYNC or ubd=sync.*/ | ||
865 | if(global_openflags.s){ | ||
866 | printk(KERN_INFO "ubd: Synchronous mode\n"); | ||
867 | /* Letting ubd=sync be like using ubd#s= instead of ubd#= is | ||
868 | * enough. So use anyway the io thread. */ | ||
869 | } | ||
870 | stack = alloc_stack(0, 0); | ||
871 | io_pid = start_io_thread(stack + PAGE_SIZE - sizeof(void *), | ||
872 | &thread_fd); | ||
873 | if(io_pid < 0){ | ||
874 | printk(KERN_ERR | ||
875 | "ubd : Failed to start I/O thread (errno = %d) - " | ||
876 | "falling back to synchronous I/O\n", -io_pid); | ||
877 | io_pid = -1; | ||
878 | return(0); | ||
879 | } | ||
880 | err = um_request_irq(UBD_IRQ, thread_fd, IRQ_READ, ubd_intr, | ||
881 | SA_INTERRUPT, "ubd", ubd_dev); | ||
882 | if(err != 0) | ||
883 | printk(KERN_ERR "um_request_irq failed - errno = %d\n", -err); | ||
884 | return(err); | ||
885 | } | ||
886 | |||
887 | device_initcall(ubd_driver_init); | ||
888 | |||
905 | static int ubd_open(struct inode *inode, struct file *filp) | 889 | static int ubd_open(struct inode *inode, struct file *filp) |
906 | { | 890 | { |
907 | struct gendisk *disk = inode->i_bdev->bd_disk; | 891 | struct gendisk *disk = inode->i_bdev->bd_disk; |
@@ -939,55 +923,105 @@ static int ubd_release(struct inode * inode, struct file * file) | |||
939 | return(0); | 923 | return(0); |
940 | } | 924 | } |
941 | 925 | ||
942 | static void cowify_bitmap(struct io_thread_req *req, unsigned long *bitmap) | 926 | static void cowify_bitmap(__u64 io_offset, int length, unsigned long *cow_mask, |
927 | __u64 *cow_offset, unsigned long *bitmap, | ||
928 | __u64 bitmap_offset, unsigned long *bitmap_words, | ||
929 | __u64 bitmap_len) | ||
943 | { | 930 | { |
944 | __u64 sector = req->offset / req->sectorsize; | 931 | __u64 sector = io_offset >> 9; |
945 | int i; | 932 | int i, update_bitmap = 0; |
933 | |||
934 | for(i = 0; i < length >> 9; i++){ | ||
935 | if(cow_mask != NULL) | ||
936 | ubd_set_bit(i, (unsigned char *) cow_mask); | ||
937 | if(ubd_test_bit(sector + i, (unsigned char *) bitmap)) | ||
938 | continue; | ||
946 | 939 | ||
947 | for(i = 0; i < req->length / req->sectorsize; i++){ | 940 | update_bitmap = 1; |
948 | if(ubd_test_bit(sector + i, bitmap)) | 941 | ubd_set_bit(sector + i, (unsigned char *) bitmap); |
949 | continue; | 942 | } |
943 | |||
944 | if(!update_bitmap) | ||
945 | return; | ||
950 | 946 | ||
951 | if(req->bitmap_start == -1) | 947 | *cow_offset = sector / (sizeof(unsigned long) * 8); |
952 | req->bitmap_start = sector + i; | ||
953 | req->bitmap_end = sector + i + 1; | ||
954 | 948 | ||
955 | ubd_set_bit(sector + i, bitmap); | 949 | /* This takes care of the case where we're exactly at the end of the |
956 | } | 950 | * device, and *cow_offset + 1 is off the end. So, just back it up |
951 | * by one word. Thanks to Lynn Kerby for the fix and James McMechan | ||
952 | * for the original diagnosis. | ||
953 | */ | ||
954 | if(*cow_offset == ((bitmap_len + sizeof(unsigned long) - 1) / | ||
955 | sizeof(unsigned long) - 1)) | ||
956 | (*cow_offset)--; | ||
957 | |||
958 | bitmap_words[0] = bitmap[*cow_offset]; | ||
959 | bitmap_words[1] = bitmap[*cow_offset + 1]; | ||
960 | |||
961 | *cow_offset *= sizeof(unsigned long); | ||
962 | *cow_offset += bitmap_offset; | ||
963 | } | ||
964 | |||
965 | static void cowify_req(struct io_thread_req *req, unsigned long *bitmap, | ||
966 | __u64 bitmap_offset, __u64 bitmap_len) | ||
967 | { | ||
968 | __u64 sector = req->offset >> 9; | ||
969 | int i; | ||
970 | |||
971 | if(req->length > (sizeof(req->sector_mask) * 8) << 9) | ||
972 | panic("Operation too long"); | ||
973 | |||
974 | if(req->op == UBD_READ) { | ||
975 | for(i = 0; i < req->length >> 9; i++){ | ||
976 | if(ubd_test_bit(sector + i, (unsigned char *) bitmap)) | ||
977 | ubd_set_bit(i, (unsigned char *) | ||
978 | &req->sector_mask); | ||
979 | } | ||
980 | } | ||
981 | else cowify_bitmap(req->offset, req->length, &req->sector_mask, | ||
982 | &req->cow_offset, bitmap, bitmap_offset, | ||
983 | req->bitmap_words, bitmap_len); | ||
957 | } | 984 | } |
958 | 985 | ||
959 | /* Called with ubd_io_lock held */ | 986 | /* Called with ubd_io_lock held */ |
960 | static int prepare_request(struct request *req, struct io_thread_req *io_req, | 987 | static int prepare_request(struct request *req, struct io_thread_req *io_req) |
961 | unsigned long long offset, int page_offset, | ||
962 | int len, struct page *page) | ||
963 | { | 988 | { |
964 | struct gendisk *disk = req->rq_disk; | 989 | struct gendisk *disk = req->rq_disk; |
965 | struct ubd *dev = disk->private_data; | 990 | struct ubd *dev = disk->private_data; |
991 | __u64 offset; | ||
992 | int len; | ||
993 | |||
994 | if(req->rq_status == RQ_INACTIVE) return(1); | ||
966 | 995 | ||
967 | /* This should be impossible now */ | 996 | /* This should be impossible now */ |
968 | if((rq_data_dir(req) == WRITE) && !dev->openflags.w){ | 997 | if((rq_data_dir(req) == WRITE) && !dev->openflags.w){ |
969 | printk("Write attempted on readonly ubd device %s\n", | 998 | printk("Write attempted on readonly ubd device %s\n", |
970 | disk->disk_name); | 999 | disk->disk_name); |
971 | ubd_end_request(req, 0, 0); | 1000 | end_request(req, 0); |
972 | return(1); | 1001 | return(1); |
973 | } | 1002 | } |
974 | 1003 | ||
1004 | offset = ((__u64) req->sector) << 9; | ||
1005 | len = req->current_nr_sectors << 9; | ||
1006 | |||
975 | io_req->fds[0] = (dev->cow.file != NULL) ? dev->cow.fd : dev->fd; | 1007 | io_req->fds[0] = (dev->cow.file != NULL) ? dev->cow.fd : dev->fd; |
976 | io_req->fds[1] = dev->fd; | 1008 | io_req->fds[1] = dev->fd; |
1009 | io_req->cow_offset = -1; | ||
977 | io_req->offset = offset; | 1010 | io_req->offset = offset; |
978 | io_req->length = len; | 1011 | io_req->length = len; |
979 | io_req->error = 0; | 1012 | io_req->error = 0; |
980 | io_req->op = (rq_data_dir(req) == READ) ? AIO_READ : AIO_WRITE; | 1013 | io_req->sector_mask = 0; |
1014 | |||
1015 | io_req->op = (rq_data_dir(req) == READ) ? UBD_READ : UBD_WRITE; | ||
981 | io_req->offsets[0] = 0; | 1016 | io_req->offsets[0] = 0; |
982 | io_req->offsets[1] = dev->cow.data_offset; | 1017 | io_req->offsets[1] = dev->cow.data_offset; |
983 | io_req->buffer = page_address(page) + page_offset; | 1018 | io_req->buffer = req->buffer; |
984 | io_req->sectorsize = 1 << 9; | 1019 | io_req->sectorsize = 1 << 9; |
985 | io_req->bitmap_offset = dev->cow.bitmap_offset; | ||
986 | io_req->bitmap_start = -1; | ||
987 | io_req->bitmap_end = -1; | ||
988 | 1020 | ||
989 | if((dev->cow.file != NULL) && (io_req->op == UBD_WRITE)) | 1021 | if(dev->cow.file != NULL) |
990 | cowify_bitmap(io_req, dev->cow.bitmap); | 1022 | cowify_req(io_req, dev->cow.bitmap, dev->cow.bitmap_offset, |
1023 | dev->cow.bitmap_len); | ||
1024 | |||
991 | return(0); | 1025 | return(0); |
992 | } | 1026 | } |
993 | 1027 | ||
@@ -996,36 +1030,30 @@ static void do_ubd_request(request_queue_t *q) | |||
996 | { | 1030 | { |
997 | struct io_thread_req io_req; | 1031 | struct io_thread_req io_req; |
998 | struct request *req; | 1032 | struct request *req; |
999 | __u64 sector; | 1033 | int err, n; |
1000 | int err; | 1034 | |
1001 | 1035 | if(thread_fd == -1){ | |
1002 | if(in_ubd) | 1036 | while((req = elv_next_request(q)) != NULL){ |
1003 | return; | 1037 | err = prepare_request(req, &io_req); |
1004 | in_ubd = 1; | 1038 | if(!err){ |
1005 | while((req = elv_next_request(q)) != NULL){ | 1039 | do_io(&io_req); |
1006 | struct gendisk *disk = req->rq_disk; | 1040 | __ubd_finish(req, io_req.error); |
1007 | struct ubd *dev = disk->private_data; | 1041 | } |
1008 | int n, i; | 1042 | } |
1009 | 1043 | } | |
1010 | blkdev_dequeue_request(req); | 1044 | else { |
1011 | 1045 | if(do_ubd || (req = elv_next_request(q)) == NULL) | |
1012 | sector = req->sector; | 1046 | return; |
1013 | n = blk_rq_map_sg(q, req, dev->sg); | 1047 | err = prepare_request(req, &io_req); |
1014 | 1048 | if(!err){ | |
1015 | for(i = 0; i < n; i++){ | 1049 | do_ubd = ubd_handler; |
1016 | struct scatterlist *sg = &dev->sg[i]; | 1050 | n = os_write_file(thread_fd, (char *) &io_req, |
1017 | 1051 | sizeof(io_req)); | |
1018 | err = prepare_request(req, &io_req, sector << 9, | 1052 | if(n != sizeof(io_req)) |
1019 | sg->offset, sg->length, | 1053 | printk("write to io thread failed, " |
1020 | sg->page); | 1054 | "errno = %d\n", -n); |
1021 | if(err) | ||
1022 | continue; | ||
1023 | |||
1024 | sector += sg->length >> 9; | ||
1025 | do_io(&io_req, req, dev->cow.bitmap); | ||
1026 | } | 1055 | } |
1027 | } | 1056 | } |
1028 | in_ubd = 0; | ||
1029 | } | 1057 | } |
1030 | 1058 | ||
1031 | static int ubd_ioctl(struct inode * inode, struct file * file, | 1059 | static int ubd_ioctl(struct inode * inode, struct file * file, |
@@ -1241,95 +1269,131 @@ int create_cow_file(char *cow_file, char *backing_file, struct openflags flags, | |||
1241 | return(err); | 1269 | return(err); |
1242 | } | 1270 | } |
1243 | 1271 | ||
1244 | void do_io(struct io_thread_req *req, struct request *r, unsigned long *bitmap) | 1272 | static int update_bitmap(struct io_thread_req *req) |
1245 | { | 1273 | { |
1246 | struct ubd_aio *aio; | 1274 | int n; |
1247 | struct bitmap_io *bitmap_io = NULL; | ||
1248 | char *buf; | ||
1249 | void *bitmap_buf = NULL; | ||
1250 | unsigned long len, sector; | ||
1251 | int nsectors, start, end, bit, err; | ||
1252 | __u64 off; | ||
1253 | |||
1254 | if(req->bitmap_start != -1){ | ||
1255 | /* Round up to the nearest word */ | ||
1256 | int round = sizeof(unsigned long); | ||
1257 | len = (req->bitmap_end - req->bitmap_start + | ||
1258 | round * 8 - 1) / (round * 8); | ||
1259 | len *= round; | ||
1260 | |||
1261 | off = req->bitmap_start / (8 * round); | ||
1262 | off *= round; | ||
1263 | |||
1264 | bitmap_io = kmalloc(sizeof(*bitmap_io), GFP_KERNEL); | ||
1265 | if(bitmap_io == NULL){ | ||
1266 | printk("Failed to kmalloc bitmap IO\n"); | ||
1267 | req->error = 1; | ||
1268 | return; | ||
1269 | } | ||
1270 | 1275 | ||
1271 | bitmap_buf = kmalloc(len, GFP_KERNEL); | 1276 | if(req->cow_offset == -1) |
1272 | if(bitmap_buf == NULL){ | 1277 | return(0); |
1273 | printk("do_io : kmalloc of bitmap chunk " | ||
1274 | "failed\n"); | ||
1275 | kfree(bitmap_io); | ||
1276 | req->error = 1; | ||
1277 | return; | ||
1278 | } | ||
1279 | memcpy(bitmap_buf, &bitmap[off / sizeof(bitmap[0])], len); | ||
1280 | |||
1281 | *bitmap_io = ((struct bitmap_io) | ||
1282 | { .count = ATOMIC_INIT(0), | ||
1283 | .aio = INIT_AIO(AIO_WRITE, req->fds[1], | ||
1284 | bitmap_buf, len, | ||
1285 | req->bitmap_offset + off, | ||
1286 | ubd_reply_fd) } ); | ||
1287 | } | ||
1288 | 1278 | ||
1289 | nsectors = req->length / req->sectorsize; | 1279 | n = os_seek_file(req->fds[1], req->cow_offset); |
1290 | start = 0; | 1280 | if(n < 0){ |
1291 | end = nsectors; | 1281 | printk("do_io - bitmap lseek failed : err = %d\n", -n); |
1292 | bit = 0; | 1282 | return(1); |
1293 | do { | 1283 | } |
1294 | if(bitmap != NULL){ | ||
1295 | sector = req->offset / req->sectorsize; | ||
1296 | bit = ubd_test_bit(sector + start, bitmap); | ||
1297 | end = start; | ||
1298 | while((end < nsectors) && | ||
1299 | (ubd_test_bit(sector + end, bitmap) == bit)) | ||
1300 | end++; | ||
1301 | } | ||
1302 | 1284 | ||
1303 | off = req->offsets[bit] + req->offset + | 1285 | n = os_write_file(req->fds[1], &req->bitmap_words, |
1304 | start * req->sectorsize; | 1286 | sizeof(req->bitmap_words)); |
1305 | len = (end - start) * req->sectorsize; | 1287 | if(n != sizeof(req->bitmap_words)){ |
1306 | buf = &req->buffer[start * req->sectorsize]; | 1288 | printk("do_io - bitmap update failed, err = %d fd = %d\n", -n, |
1289 | req->fds[1]); | ||
1290 | return(1); | ||
1291 | } | ||
1307 | 1292 | ||
1308 | aio = kmalloc(sizeof(*aio), GFP_KERNEL); | 1293 | return(0); |
1309 | if(aio == NULL){ | 1294 | } |
1310 | req->error = 1; | ||
1311 | return; | ||
1312 | } | ||
1313 | 1295 | ||
1314 | *aio = ((struct ubd_aio) | 1296 | void do_io(struct io_thread_req *req) |
1315 | { .aio = INIT_AIO(req->op, req->fds[bit], buf, | 1297 | { |
1316 | len, off, ubd_reply_fd), | 1298 | char *buf; |
1317 | .len = len, | 1299 | unsigned long len; |
1318 | .req = r, | 1300 | int n, nsectors, start, end, bit; |
1319 | .bitmap = bitmap_io, | 1301 | int err; |
1320 | .bitmap_buf = bitmap_buf }); | 1302 | __u64 off; |
1321 | 1303 | ||
1322 | if(aio->bitmap != NULL) | 1304 | nsectors = req->length / req->sectorsize; |
1323 | atomic_inc(&aio->bitmap->count); | 1305 | start = 0; |
1324 | 1306 | do { | |
1325 | err = submit_aio(&aio->aio); | 1307 | bit = ubd_test_bit(start, (unsigned char *) &req->sector_mask); |
1326 | if(err){ | 1308 | end = start; |
1327 | printk("do_io - submit_aio failed, " | 1309 | while((end < nsectors) && |
1328 | "err = %d\n", err); | 1310 | (ubd_test_bit(end, (unsigned char *) |
1329 | req->error = 1; | 1311 | &req->sector_mask) == bit)) |
1330 | return; | 1312 | end++; |
1331 | } | 1313 | |
1314 | off = req->offset + req->offsets[bit] + | ||
1315 | start * req->sectorsize; | ||
1316 | len = (end - start) * req->sectorsize; | ||
1317 | buf = &req->buffer[start * req->sectorsize]; | ||
1318 | |||
1319 | err = os_seek_file(req->fds[bit], off); | ||
1320 | if(err < 0){ | ||
1321 | printk("do_io - lseek failed : err = %d\n", -err); | ||
1322 | req->error = 1; | ||
1323 | return; | ||
1324 | } | ||
1325 | if(req->op == UBD_READ){ | ||
1326 | n = 0; | ||
1327 | do { | ||
1328 | buf = &buf[n]; | ||
1329 | len -= n; | ||
1330 | n = os_read_file(req->fds[bit], buf, len); | ||
1331 | if (n < 0) { | ||
1332 | printk("do_io - read failed, err = %d " | ||
1333 | "fd = %d\n", -n, req->fds[bit]); | ||
1334 | req->error = 1; | ||
1335 | return; | ||
1336 | } | ||
1337 | } while((n < len) && (n != 0)); | ||
1338 | if (n < len) memset(&buf[n], 0, len - n); | ||
1339 | } else { | ||
1340 | n = os_write_file(req->fds[bit], buf, len); | ||
1341 | if(n != len){ | ||
1342 | printk("do_io - write failed err = %d " | ||
1343 | "fd = %d\n", -n, req->fds[bit]); | ||
1344 | req->error = 1; | ||
1345 | return; | ||
1346 | } | ||
1347 | } | ||
1348 | |||
1349 | start = end; | ||
1350 | } while(start < nsectors); | ||
1332 | 1351 | ||
1333 | start = end; | 1352 | req->error = update_bitmap(req); |
1334 | } while(start < nsectors); | ||
1335 | } | 1353 | } |
1354 | |||
1355 | /* Changed in start_io_thread, which is serialized by being called only | ||
1356 | * from ubd_init, which is an initcall. | ||
1357 | */ | ||
1358 | int kernel_fd = -1; | ||
1359 | |||
1360 | /* Only changed by the io thread */ | ||
1361 | int io_count = 0; | ||
1362 | |||
1363 | int io_thread(void *arg) | ||
1364 | { | ||
1365 | struct io_thread_req req; | ||
1366 | int n; | ||
1367 | |||
1368 | ignore_sigwinch_sig(); | ||
1369 | while(1){ | ||
1370 | n = os_read_file(kernel_fd, &req, sizeof(req)); | ||
1371 | if(n != sizeof(req)){ | ||
1372 | if(n < 0) | ||
1373 | printk("io_thread - read failed, fd = %d, " | ||
1374 | "err = %d\n", kernel_fd, -n); | ||
1375 | else { | ||
1376 | printk("io_thread - short read, fd = %d, " | ||
1377 | "length = %d\n", kernel_fd, n); | ||
1378 | } | ||
1379 | continue; | ||
1380 | } | ||
1381 | io_count++; | ||
1382 | do_io(&req); | ||
1383 | n = os_write_file(kernel_fd, &req, sizeof(req)); | ||
1384 | if(n != sizeof(req)) | ||
1385 | printk("io_thread - write failed, fd = %d, err = %d\n", | ||
1386 | kernel_fd, -n); | ||
1387 | } | ||
1388 | } | ||
1389 | |||
1390 | /* | ||
1391 | * Overrides for Emacs so that we follow Linus's tabbing style. | ||
1392 | * Emacs will notice this stuff at the end of the file and automatically | ||
1393 | * adjust the settings for this buffer only. This must remain at the end | ||
1394 | * of the file. | ||
1395 | * --------------------------------------------------------------------------- | ||
1396 | * Local variables: | ||
1397 | * c-file-style: "linux" | ||
1398 | * End: | ||
1399 | */ | ||
diff --git a/arch/um/drivers/ubd_user.c b/arch/um/drivers/ubd_user.c new file mode 100644 index 000000000000..b94d2bc4fe06 --- /dev/null +++ b/arch/um/drivers/ubd_user.c | |||
@@ -0,0 +1,75 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2000, 2001, 2002 Jeff Dike (jdike@karaya.com) | ||
3 | * Copyright (C) 2001 Ridgerun,Inc (glonnon@ridgerun.com) | ||
4 | * Licensed under the GPL | ||
5 | */ | ||
6 | |||
7 | #include <stddef.h> | ||
8 | #include <unistd.h> | ||
9 | #include <errno.h> | ||
10 | #include <sched.h> | ||
11 | #include <signal.h> | ||
12 | #include <string.h> | ||
13 | #include <netinet/in.h> | ||
14 | #include <sys/time.h> | ||
15 | #include <sys/socket.h> | ||
16 | #include <sys/mman.h> | ||
17 | #include <sys/param.h> | ||
18 | #include "asm/types.h" | ||
19 | #include "user_util.h" | ||
20 | #include "kern_util.h" | ||
21 | #include "user.h" | ||
22 | #include "ubd_user.h" | ||
23 | #include "os.h" | ||
24 | #include "cow.h" | ||
25 | |||
26 | #include <endian.h> | ||
27 | #include <byteswap.h> | ||
28 | |||
29 | void ignore_sigwinch_sig(void) | ||
30 | { | ||
31 | signal(SIGWINCH, SIG_IGN); | ||
32 | } | ||
33 | |||
34 | int start_io_thread(unsigned long sp, int *fd_out) | ||
35 | { | ||
36 | int pid, fds[2], err; | ||
37 | |||
38 | err = os_pipe(fds, 1, 1); | ||
39 | if(err < 0){ | ||
40 | printk("start_io_thread - os_pipe failed, err = %d\n", -err); | ||
41 | goto out; | ||
42 | } | ||
43 | |||
44 | kernel_fd = fds[0]; | ||
45 | *fd_out = fds[1]; | ||
46 | |||
47 | pid = clone(io_thread, (void *) sp, CLONE_FILES | CLONE_VM | SIGCHLD, | ||
48 | NULL); | ||
49 | if(pid < 0){ | ||
50 | printk("start_io_thread - clone failed : errno = %d\n", errno); | ||
51 | err = -errno; | ||
52 | goto out_close; | ||
53 | } | ||
54 | |||
55 | return(pid); | ||
56 | |||
57 | out_close: | ||
58 | os_close_file(fds[0]); | ||
59 | os_close_file(fds[1]); | ||
60 | kernel_fd = -1; | ||
61 | *fd_out = -1; | ||
62 | out: | ||
63 | return(err); | ||
64 | } | ||
65 | |||
66 | /* | ||
67 | * Overrides for Emacs so that we follow Linus's tabbing style. | ||
68 | * Emacs will notice this stuff at the end of the file and automatically | ||
69 | * adjust the settings for this buffer only. This must remain at the end | ||
70 | * of the file. | ||
71 | * --------------------------------------------------------------------------- | ||
72 | * Local variables: | ||
73 | * c-file-style: "linux" | ||
74 | * End: | ||
75 | */ | ||
diff --git a/arch/um/include/aio.h b/arch/um/include/aio.h index 83f16877ab08..423bae9153f8 100644 --- a/arch/um/include/aio.h +++ b/arch/um/include/aio.h | |||
@@ -14,27 +14,15 @@ struct aio_thread_reply { | |||
14 | }; | 14 | }; |
15 | 15 | ||
16 | struct aio_context { | 16 | struct aio_context { |
17 | enum aio_type type; | ||
18 | int fd; | ||
19 | void *data; | ||
20 | int len; | ||
21 | unsigned long long offset; | ||
22 | int reply_fd; | 17 | int reply_fd; |
23 | struct aio_context *next; | 18 | struct aio_context *next; |
24 | }; | 19 | }; |
25 | 20 | ||
26 | #define INIT_AIO(aio_type, aio_fd, aio_data, aio_len, aio_offset, \ | ||
27 | aio_reply_fd) \ | ||
28 | { .type = aio_type, \ | ||
29 | .fd = aio_fd, \ | ||
30 | .data = aio_data, \ | ||
31 | .len = aio_len, \ | ||
32 | .offset = aio_offset, \ | ||
33 | .reply_fd = aio_reply_fd } | ||
34 | |||
35 | #define INIT_AIO_CONTEXT { .reply_fd = -1, \ | 21 | #define INIT_AIO_CONTEXT { .reply_fd = -1, \ |
36 | .next = NULL } | 22 | .next = NULL } |
37 | 23 | ||
38 | extern int submit_aio(struct aio_context *aio); | 24 | extern int submit_aio(enum aio_type type, int fd, char *buf, int len, |
25 | unsigned long long offset, int reply_fd, | ||
26 | struct aio_context *aio); | ||
39 | 27 | ||
40 | #endif | 28 | #endif |
diff --git a/arch/um/include/os.h b/arch/um/include/os.h index 6f766e1faecc..2e58e304b8be 100644 --- a/arch/um/include/os.h +++ b/arch/um/include/os.h | |||
@@ -6,6 +6,7 @@ | |||
6 | #ifndef __OS_H__ | 6 | #ifndef __OS_H__ |
7 | #define __OS_H__ | 7 | #define __OS_H__ |
8 | 8 | ||
9 | #include "uml-config.h" | ||
9 | #include "asm/types.h" | 10 | #include "asm/types.h" |
10 | #include "../os/include/file.h" | 11 | #include "../os/include/file.h" |
11 | 12 | ||
@@ -159,7 +160,11 @@ extern int can_do_skas(void); | |||
159 | 160 | ||
160 | /* Make sure they are clear when running in TT mode. Required by | 161 | /* Make sure they are clear when running in TT mode. Required by |
161 | * SEGV_MAYBE_FIXABLE */ | 162 | * SEGV_MAYBE_FIXABLE */ |
163 | #ifdef UML_CONFIG_MODE_SKAS | ||
162 | #define clear_can_do_skas() do { ptrace_faultinfo = proc_mm = 0; } while (0) | 164 | #define clear_can_do_skas() do { ptrace_faultinfo = proc_mm = 0; } while (0) |
165 | #else | ||
166 | #define clear_can_do_skas() do {} while (0) | ||
167 | #endif | ||
163 | 168 | ||
164 | /* mem.c */ | 169 | /* mem.c */ |
165 | extern int create_mem_file(unsigned long len); | 170 | extern int create_mem_file(unsigned long len); |
diff --git a/arch/um/include/registers.h b/arch/um/include/registers.h index 0a35e6d0baa0..4892e5fcef07 100644 --- a/arch/um/include/registers.h +++ b/arch/um/include/registers.h | |||
@@ -15,16 +15,6 @@ extern void save_registers(int pid, union uml_pt_regs *regs); | |||
15 | extern void restore_registers(int pid, union uml_pt_regs *regs); | 15 | extern void restore_registers(int pid, union uml_pt_regs *regs); |
16 | extern void init_registers(int pid); | 16 | extern void init_registers(int pid); |
17 | extern void get_safe_registers(unsigned long * regs); | 17 | extern void get_safe_registers(unsigned long * regs); |
18 | extern void get_thread_regs(union uml_pt_regs *uml_regs, void *buffer); | ||
18 | 19 | ||
19 | #endif | 20 | #endif |
20 | |||
21 | /* | ||
22 | * Overrides for Emacs so that we follow Linus's tabbing style. | ||
23 | * Emacs will notice this stuff at the end of the file and automatically | ||
24 | * adjust the settings for this buffer only. This must remain at the end | ||
25 | * of the file. | ||
26 | * --------------------------------------------------------------------------- | ||
27 | * Local variables: | ||
28 | * c-file-style: "linux" | ||
29 | * End: | ||
30 | */ | ||
diff --git a/arch/um/include/sysdep-i386/thread.h b/arch/um/include/sysdep-i386/thread.h index e2bd6bae8b8a..243fed44d780 100644 --- a/arch/um/include/sysdep-i386/thread.h +++ b/arch/um/include/sysdep-i386/thread.h | |||
@@ -4,7 +4,7 @@ | |||
4 | #include <kern_constants.h> | 4 | #include <kern_constants.h> |
5 | 5 | ||
6 | #define TASK_DEBUGREGS(task) ((unsigned long *) &(((char *) (task))[HOST_TASK_DEBUGREGS])) | 6 | #define TASK_DEBUGREGS(task) ((unsigned long *) &(((char *) (task))[HOST_TASK_DEBUGREGS])) |
7 | #ifdef CONFIG_MODE_TT | 7 | #ifdef UML_CONFIG_MODE_TT |
8 | #define TASK_EXTERN_PID(task) *((int *) &(((char *) (task))[HOST_TASK_EXTERN_PID])) | 8 | #define TASK_EXTERN_PID(task) *((int *) &(((char *) (task))[HOST_TASK_EXTERN_PID])) |
9 | #endif | 9 | #endif |
10 | 10 | ||
diff --git a/arch/um/include/sysdep-x86_64/ptrace.h b/arch/um/include/sysdep-x86_64/ptrace.h index 331aa2d1f3f5..8d353f0feec1 100644 --- a/arch/um/include/sysdep-x86_64/ptrace.h +++ b/arch/um/include/sysdep-x86_64/ptrace.h | |||
@@ -183,10 +183,6 @@ struct syscall_args { | |||
183 | case RBP: val = UPT_RBP(regs); break; \ | 183 | case RBP: val = UPT_RBP(regs); break; \ |
184 | case ORIG_RAX: val = UPT_ORIG_RAX(regs); break; \ | 184 | case ORIG_RAX: val = UPT_ORIG_RAX(regs); break; \ |
185 | case CS: val = UPT_CS(regs); break; \ | 185 | case CS: val = UPT_CS(regs); break; \ |
186 | case DS: val = UPT_DS(regs); break; \ | ||
187 | case ES: val = UPT_ES(regs); break; \ | ||
188 | case FS: val = UPT_FS(regs); break; \ | ||
189 | case GS: val = UPT_GS(regs); break; \ | ||
190 | case EFLAGS: val = UPT_EFLAGS(regs); break; \ | 186 | case EFLAGS: val = UPT_EFLAGS(regs); break; \ |
191 | default : \ | 187 | default : \ |
192 | panic("Bad register in UPT_REG : %d\n", reg); \ | 188 | panic("Bad register in UPT_REG : %d\n", reg); \ |
@@ -218,10 +214,6 @@ struct syscall_args { | |||
218 | case RBP: UPT_RBP(regs) = __upt_val; break; \ | 214 | case RBP: UPT_RBP(regs) = __upt_val; break; \ |
219 | case ORIG_RAX: UPT_ORIG_RAX(regs) = __upt_val; break; \ | 215 | case ORIG_RAX: UPT_ORIG_RAX(regs) = __upt_val; break; \ |
220 | case CS: UPT_CS(regs) = __upt_val; break; \ | 216 | case CS: UPT_CS(regs) = __upt_val; break; \ |
221 | case DS: UPT_DS(regs) = __upt_val; break; \ | ||
222 | case ES: UPT_ES(regs) = __upt_val; break; \ | ||
223 | case FS: UPT_FS(regs) = __upt_val; break; \ | ||
224 | case GS: UPT_GS(regs) = __upt_val; break; \ | ||
225 | case EFLAGS: UPT_EFLAGS(regs) = __upt_val; break; \ | 217 | case EFLAGS: UPT_EFLAGS(regs) = __upt_val; break; \ |
226 | default : \ | 218 | default : \ |
227 | panic("Bad register in UPT_SET : %d\n", reg); \ | 219 | panic("Bad register in UPT_SET : %d\n", reg); \ |
diff --git a/arch/um/include/sysdep-x86_64/thread.h b/arch/um/include/sysdep-x86_64/thread.h index 6a76a7f3683f..cbef3e1697f4 100644 --- a/arch/um/include/sysdep-x86_64/thread.h +++ b/arch/um/include/sysdep-x86_64/thread.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | #include <kern_constants.h> | 4 | #include <kern_constants.h> |
5 | 5 | ||
6 | #ifdef CONFIG_MODE_TT | 6 | #ifdef UML_CONFIG_MODE_TT |
7 | #define TASK_EXTERN_PID(task) *((int *) &(((char *) (task))[HOST_TASK_EXTERN_PID])) | 7 | #define TASK_EXTERN_PID(task) *((int *) &(((char *) (task))[HOST_TASK_EXTERN_PID])) |
8 | #endif | 8 | #endif |
9 | 9 | ||
diff --git a/arch/um/kernel/sysrq.c b/arch/um/kernel/sysrq.c index f80850091e79..b331e970002f 100644 --- a/arch/um/kernel/sysrq.c +++ b/arch/um/kernel/sysrq.c | |||
@@ -62,13 +62,7 @@ void show_stack(struct task_struct *task, unsigned long *esp) | |||
62 | 62 | ||
63 | if (esp == NULL) { | 63 | if (esp == NULL) { |
64 | if (task != current && task != NULL) { | 64 | if (task != current && task != NULL) { |
65 | /* XXX: Isn't this bogus? I.e. isn't this the | ||
66 | * *userspace* stack of this task? If not so, use this | ||
67 | * even when task == current (as in i386). | ||
68 | */ | ||
69 | esp = (unsigned long *) KSTK_ESP(task); | 65 | esp = (unsigned long *) KSTK_ESP(task); |
70 | /* Which one? No actual difference - just coding style.*/ | ||
71 | //esp = (unsigned long *) PT_REGS_IP(&task->thread.regs); | ||
72 | } else { | 66 | } else { |
73 | esp = (unsigned long *) &esp; | 67 | esp = (unsigned long *) &esp; |
74 | } | 68 | } |
@@ -84,5 +78,5 @@ void show_stack(struct task_struct *task, unsigned long *esp) | |||
84 | } | 78 | } |
85 | 79 | ||
86 | printk("Call Trace: \n"); | 80 | printk("Call Trace: \n"); |
87 | show_trace(current, esp); | 81 | show_trace(task, esp); |
88 | } | 82 | } |
diff --git a/arch/um/os-Linux/aio.c b/arch/um/os-Linux/aio.c index f6e64026f995..41cfb0944201 100644 --- a/arch/um/os-Linux/aio.c +++ b/arch/um/os-Linux/aio.c | |||
@@ -6,7 +6,6 @@ | |||
6 | #include <stdlib.h> | 6 | #include <stdlib.h> |
7 | #include <unistd.h> | 7 | #include <unistd.h> |
8 | #include <signal.h> | 8 | #include <signal.h> |
9 | #include <string.h> | ||
10 | #include <errno.h> | 9 | #include <errno.h> |
11 | #include <sched.h> | 10 | #include <sched.h> |
12 | #include <sys/syscall.h> | 11 | #include <sys/syscall.h> |
@@ -17,31 +16,18 @@ | |||
17 | #include "user.h" | 16 | #include "user.h" |
18 | #include "mode.h" | 17 | #include "mode.h" |
19 | 18 | ||
19 | struct aio_thread_req { | ||
20 | enum aio_type type; | ||
21 | int io_fd; | ||
22 | unsigned long long offset; | ||
23 | char *buf; | ||
24 | int len; | ||
25 | struct aio_context *aio; | ||
26 | }; | ||
27 | |||
20 | static int aio_req_fd_r = -1; | 28 | static int aio_req_fd_r = -1; |
21 | static int aio_req_fd_w = -1; | 29 | static int aio_req_fd_w = -1; |
22 | 30 | ||
23 | static int update_aio(struct aio_context *aio, int res) | ||
24 | { | ||
25 | if(res < 0) | ||
26 | aio->len = res; | ||
27 | else if((res == 0) && (aio->type == AIO_READ)){ | ||
28 | /* This is the EOF case - we have hit the end of the file | ||
29 | * and it ends in a partial block, so we fill the end of | ||
30 | * the block with zeros and claim success. | ||
31 | */ | ||
32 | memset(aio->data, 0, aio->len); | ||
33 | aio->len = 0; | ||
34 | } | ||
35 | else if(res > 0){ | ||
36 | aio->len -= res; | ||
37 | aio->data += res; | ||
38 | aio->offset += res; | ||
39 | return aio->len; | ||
40 | } | ||
41 | |||
42 | return 0; | ||
43 | } | ||
44 | |||
45 | #if defined(HAVE_AIO_ABI) | 31 | #if defined(HAVE_AIO_ABI) |
46 | #include <linux/aio_abi.h> | 32 | #include <linux/aio_abi.h> |
47 | 33 | ||
@@ -80,7 +66,8 @@ static long io_getevents(aio_context_t ctx_id, long min_nr, long nr, | |||
80 | * that it now backs the mmapped area. | 66 | * that it now backs the mmapped area. |
81 | */ | 67 | */ |
82 | 68 | ||
83 | static int do_aio(aio_context_t ctx, struct aio_context *aio) | 69 | static int do_aio(aio_context_t ctx, enum aio_type type, int fd, char *buf, |
70 | int len, unsigned long long offset, struct aio_context *aio) | ||
84 | { | 71 | { |
85 | struct iocb iocb, *iocbp = &iocb; | 72 | struct iocb iocb, *iocbp = &iocb; |
86 | char c; | 73 | char c; |
@@ -88,39 +75,40 @@ static int do_aio(aio_context_t ctx, struct aio_context *aio) | |||
88 | 75 | ||
89 | iocb = ((struct iocb) { .aio_data = (unsigned long) aio, | 76 | iocb = ((struct iocb) { .aio_data = (unsigned long) aio, |
90 | .aio_reqprio = 0, | 77 | .aio_reqprio = 0, |
91 | .aio_fildes = aio->fd, | 78 | .aio_fildes = fd, |
92 | .aio_buf = (unsigned long) aio->data, | 79 | .aio_buf = (unsigned long) buf, |
93 | .aio_nbytes = aio->len, | 80 | .aio_nbytes = len, |
94 | .aio_offset = aio->offset, | 81 | .aio_offset = offset, |
95 | .aio_reserved1 = 0, | 82 | .aio_reserved1 = 0, |
96 | .aio_reserved2 = 0, | 83 | .aio_reserved2 = 0, |
97 | .aio_reserved3 = 0 }); | 84 | .aio_reserved3 = 0 }); |
98 | 85 | ||
99 | switch(aio->type){ | 86 | switch(type){ |
100 | case AIO_READ: | 87 | case AIO_READ: |
101 | iocb.aio_lio_opcode = IOCB_CMD_PREAD; | 88 | iocb.aio_lio_opcode = IOCB_CMD_PREAD; |
89 | err = io_submit(ctx, 1, &iocbp); | ||
102 | break; | 90 | break; |
103 | case AIO_WRITE: | 91 | case AIO_WRITE: |
104 | iocb.aio_lio_opcode = IOCB_CMD_PWRITE; | 92 | iocb.aio_lio_opcode = IOCB_CMD_PWRITE; |
93 | err = io_submit(ctx, 1, &iocbp); | ||
105 | break; | 94 | break; |
106 | case AIO_MMAP: | 95 | case AIO_MMAP: |
107 | iocb.aio_lio_opcode = IOCB_CMD_PREAD; | 96 | iocb.aio_lio_opcode = IOCB_CMD_PREAD; |
108 | iocb.aio_buf = (unsigned long) &c; | 97 | iocb.aio_buf = (unsigned long) &c; |
109 | iocb.aio_nbytes = sizeof(c); | 98 | iocb.aio_nbytes = sizeof(c); |
99 | err = io_submit(ctx, 1, &iocbp); | ||
110 | break; | 100 | break; |
111 | default: | 101 | default: |
112 | printk("Bogus op in do_aio - %d\n", aio->type); | 102 | printk("Bogus op in do_aio - %d\n", type); |
113 | err = -EINVAL; | 103 | err = -EINVAL; |
114 | goto out; | 104 | break; |
115 | } | 105 | } |
116 | 106 | ||
117 | err = io_submit(ctx, 1, &iocbp); | ||
118 | if(err > 0) | 107 | if(err > 0) |
119 | err = 0; | 108 | err = 0; |
120 | else | 109 | else |
121 | err = -errno; | 110 | err = -errno; |
122 | 111 | ||
123 | out: | ||
124 | return err; | 112 | return err; |
125 | } | 113 | } |
126 | 114 | ||
@@ -129,9 +117,8 @@ static aio_context_t ctx = 0; | |||
129 | static int aio_thread(void *arg) | 117 | static int aio_thread(void *arg) |
130 | { | 118 | { |
131 | struct aio_thread_reply reply; | 119 | struct aio_thread_reply reply; |
132 | struct aio_context *aio; | ||
133 | struct io_event event; | 120 | struct io_event event; |
134 | int err, n; | 121 | int err, n, reply_fd; |
135 | 122 | ||
136 | signal(SIGWINCH, SIG_IGN); | 123 | signal(SIGWINCH, SIG_IGN); |
137 | 124 | ||
@@ -144,22 +131,14 @@ static int aio_thread(void *arg) | |||
144 | "errno = %d\n", errno); | 131 | "errno = %d\n", errno); |
145 | } | 132 | } |
146 | else { | 133 | else { |
147 | /* This is safe as we've just a pointer here. */ | ||
148 | aio = (struct aio_context *) (long) event.data; | ||
149 | if(update_aio(aio, event.res)){ | ||
150 | do_aio(ctx, aio); | ||
151 | continue; | ||
152 | } | ||
153 | |||
154 | reply = ((struct aio_thread_reply) | 134 | reply = ((struct aio_thread_reply) |
155 | { .data = aio, | 135 | { .data = (void *) (long) event.data, |
156 | .err = aio->len }); | 136 | .err = event.res }); |
157 | err = os_write_file(aio->reply_fd, &reply, | 137 | reply_fd = ((struct aio_context *) reply.data)->reply_fd; |
158 | sizeof(reply)); | 138 | err = os_write_file(reply_fd, &reply, sizeof(reply)); |
159 | if(err != sizeof(reply)) | 139 | if(err != sizeof(reply)) |
160 | printk("aio_thread - write failed, " | 140 | printk("aio_thread - write failed, fd = %d, " |
161 | "fd = %d, err = %d\n", aio->reply_fd, | 141 | "err = %d\n", aio_req_fd_r, -err); |
162 | -err); | ||
163 | } | 142 | } |
164 | } | 143 | } |
165 | return 0; | 144 | return 0; |
@@ -167,35 +146,35 @@ static int aio_thread(void *arg) | |||
167 | 146 | ||
168 | #endif | 147 | #endif |
169 | 148 | ||
170 | static int do_not_aio(struct aio_context *aio) | 149 | static int do_not_aio(struct aio_thread_req *req) |
171 | { | 150 | { |
172 | char c; | 151 | char c; |
173 | int err; | 152 | int err; |
174 | 153 | ||
175 | switch(aio->type){ | 154 | switch(req->type){ |
176 | case AIO_READ: | 155 | case AIO_READ: |
177 | err = os_seek_file(aio->fd, aio->offset); | 156 | err = os_seek_file(req->io_fd, req->offset); |
178 | if(err) | 157 | if(err) |
179 | goto out; | 158 | goto out; |
180 | 159 | ||
181 | err = os_read_file(aio->fd, aio->data, aio->len); | 160 | err = os_read_file(req->io_fd, req->buf, req->len); |
182 | break; | 161 | break; |
183 | case AIO_WRITE: | 162 | case AIO_WRITE: |
184 | err = os_seek_file(aio->fd, aio->offset); | 163 | err = os_seek_file(req->io_fd, req->offset); |
185 | if(err) | 164 | if(err) |
186 | goto out; | 165 | goto out; |
187 | 166 | ||
188 | err = os_write_file(aio->fd, aio->data, aio->len); | 167 | err = os_write_file(req->io_fd, req->buf, req->len); |
189 | break; | 168 | break; |
190 | case AIO_MMAP: | 169 | case AIO_MMAP: |
191 | err = os_seek_file(aio->fd, aio->offset); | 170 | err = os_seek_file(req->io_fd, req->offset); |
192 | if(err) | 171 | if(err) |
193 | goto out; | 172 | goto out; |
194 | 173 | ||
195 | err = os_read_file(aio->fd, &c, sizeof(c)); | 174 | err = os_read_file(req->io_fd, &c, sizeof(c)); |
196 | break; | 175 | break; |
197 | default: | 176 | default: |
198 | printk("do_not_aio - bad request type : %d\n", aio->type); | 177 | printk("do_not_aio - bad request type : %d\n", req->type); |
199 | err = -EINVAL; | 178 | err = -EINVAL; |
200 | break; | 179 | break; |
201 | } | 180 | } |
@@ -206,14 +185,14 @@ static int do_not_aio(struct aio_context *aio) | |||
206 | 185 | ||
207 | static int not_aio_thread(void *arg) | 186 | static int not_aio_thread(void *arg) |
208 | { | 187 | { |
209 | struct aio_context *aio; | 188 | struct aio_thread_req req; |
210 | struct aio_thread_reply reply; | 189 | struct aio_thread_reply reply; |
211 | int err; | 190 | int err; |
212 | 191 | ||
213 | signal(SIGWINCH, SIG_IGN); | 192 | signal(SIGWINCH, SIG_IGN); |
214 | while(1){ | 193 | while(1){ |
215 | err = os_read_file(aio_req_fd_r, &aio, sizeof(aio)); | 194 | err = os_read_file(aio_req_fd_r, &req, sizeof(req)); |
216 | if(err != sizeof(aio)){ | 195 | if(err != sizeof(req)){ |
217 | if(err < 0) | 196 | if(err < 0) |
218 | printk("not_aio_thread - read failed, " | 197 | printk("not_aio_thread - read failed, " |
219 | "fd = %d, err = %d\n", aio_req_fd_r, | 198 | "fd = %d, err = %d\n", aio_req_fd_r, |
@@ -224,34 +203,17 @@ static int not_aio_thread(void *arg) | |||
224 | } | 203 | } |
225 | continue; | 204 | continue; |
226 | } | 205 | } |
227 | again: | 206 | err = do_not_aio(&req); |
228 | err = do_not_aio(aio); | 207 | reply = ((struct aio_thread_reply) { .data = req.aio, |
229 | 208 | .err = err }); | |
230 | if(update_aio(aio, err)) | 209 | err = os_write_file(req.aio->reply_fd, &reply, sizeof(reply)); |
231 | goto again; | ||
232 | |||
233 | reply = ((struct aio_thread_reply) { .data = aio, | ||
234 | .err = aio->len }); | ||
235 | err = os_write_file(aio->reply_fd, &reply, sizeof(reply)); | ||
236 | if(err != sizeof(reply)) | 210 | if(err != sizeof(reply)) |
237 | printk("not_aio_thread - write failed, fd = %d, " | 211 | printk("not_aio_thread - write failed, fd = %d, " |
238 | "err = %d\n", aio_req_fd_r, -err); | 212 | "err = %d\n", aio_req_fd_r, -err); |
239 | } | 213 | } |
240 | } | 214 | } |
241 | 215 | ||
242 | static int submit_aio_24(struct aio_context *aio) | ||
243 | { | ||
244 | int err; | ||
245 | |||
246 | err = os_write_file(aio_req_fd_w, &aio, sizeof(aio)); | ||
247 | if(err == sizeof(aio)) | ||
248 | err = 0; | ||
249 | |||
250 | return err; | ||
251 | } | ||
252 | |||
253 | static int aio_pid = -1; | 216 | static int aio_pid = -1; |
254 | static int (*submit_proc)(struct aio_context *aio); | ||
255 | 217 | ||
256 | static int init_aio_24(void) | 218 | static int init_aio_24(void) |
257 | { | 219 | { |
@@ -283,33 +245,11 @@ static int init_aio_24(void) | |||
283 | #endif | 245 | #endif |
284 | printk("2.6 host AIO support not used - falling back to I/O " | 246 | printk("2.6 host AIO support not used - falling back to I/O " |
285 | "thread\n"); | 247 | "thread\n"); |
286 | |||
287 | submit_proc = submit_aio_24; | ||
288 | |||
289 | return 0; | 248 | return 0; |
290 | } | 249 | } |
291 | 250 | ||
292 | #ifdef HAVE_AIO_ABI | 251 | #ifdef HAVE_AIO_ABI |
293 | #define DEFAULT_24_AIO 0 | 252 | #define DEFAULT_24_AIO 0 |
294 | static int submit_aio_26(struct aio_context *aio) | ||
295 | { | ||
296 | struct aio_thread_reply reply; | ||
297 | int err; | ||
298 | |||
299 | err = do_aio(ctx, aio); | ||
300 | if(err){ | ||
301 | reply = ((struct aio_thread_reply) { .data = aio, | ||
302 | .err = err }); | ||
303 | err = os_write_file(aio->reply_fd, &reply, sizeof(reply)); | ||
304 | if(err != sizeof(reply)) | ||
305 | printk("submit_aio_26 - write failed, " | ||
306 | "fd = %d, err = %d\n", aio->reply_fd, -err); | ||
307 | else err = 0; | ||
308 | } | ||
309 | |||
310 | return err; | ||
311 | } | ||
312 | |||
313 | static int init_aio_26(void) | 253 | static int init_aio_26(void) |
314 | { | 254 | { |
315 | unsigned long stack; | 255 | unsigned long stack; |
@@ -330,22 +270,39 @@ static int init_aio_26(void) | |||
330 | aio_pid = err; | 270 | aio_pid = err; |
331 | 271 | ||
332 | printk("Using 2.6 host AIO\n"); | 272 | printk("Using 2.6 host AIO\n"); |
273 | return 0; | ||
274 | } | ||
275 | |||
276 | static int submit_aio_26(enum aio_type type, int io_fd, char *buf, int len, | ||
277 | unsigned long long offset, struct aio_context *aio) | ||
278 | { | ||
279 | struct aio_thread_reply reply; | ||
280 | int err; | ||
333 | 281 | ||
334 | submit_proc = submit_aio_26; | 282 | err = do_aio(ctx, type, io_fd, buf, len, offset, aio); |
283 | if(err){ | ||
284 | reply = ((struct aio_thread_reply) { .data = aio, | ||
285 | .err = err }); | ||
286 | err = os_write_file(aio->reply_fd, &reply, sizeof(reply)); | ||
287 | if(err != sizeof(reply)) | ||
288 | printk("submit_aio_26 - write failed, " | ||
289 | "fd = %d, err = %d\n", aio->reply_fd, -err); | ||
290 | else err = 0; | ||
291 | } | ||
335 | 292 | ||
336 | return 0; | 293 | return err; |
337 | } | 294 | } |
338 | 295 | ||
339 | #else | 296 | #else |
340 | #define DEFAULT_24_AIO 1 | 297 | #define DEFAULT_24_AIO 1 |
341 | static int submit_aio_26(struct aio_context *aio) | 298 | static int init_aio_26(void) |
342 | { | 299 | { |
343 | return -ENOSYS; | 300 | return -ENOSYS; |
344 | } | 301 | } |
345 | 302 | ||
346 | static int init_aio_26(void) | 303 | static int submit_aio_26(enum aio_type type, int io_fd, char *buf, int len, |
304 | unsigned long long offset, struct aio_context *aio) | ||
347 | { | 305 | { |
348 | submit_proc = submit_aio_26; | ||
349 | return -ENOSYS; | 306 | return -ENOSYS; |
350 | } | 307 | } |
351 | #endif | 308 | #endif |
@@ -412,7 +369,33 @@ static void exit_aio(void) | |||
412 | 369 | ||
413 | __uml_exitcall(exit_aio); | 370 | __uml_exitcall(exit_aio); |
414 | 371 | ||
415 | int submit_aio(struct aio_context *aio) | 372 | static int submit_aio_24(enum aio_type type, int io_fd, char *buf, int len, |
373 | unsigned long long offset, struct aio_context *aio) | ||
416 | { | 374 | { |
417 | return (*submit_proc)(aio); | 375 | struct aio_thread_req req = { .type = type, |
376 | .io_fd = io_fd, | ||
377 | .offset = offset, | ||
378 | .buf = buf, | ||
379 | .len = len, | ||
380 | .aio = aio, | ||
381 | }; | ||
382 | int err; | ||
383 | |||
384 | err = os_write_file(aio_req_fd_w, &req, sizeof(req)); | ||
385 | if(err == sizeof(req)) | ||
386 | err = 0; | ||
387 | |||
388 | return err; | ||
389 | } | ||
390 | |||
391 | int submit_aio(enum aio_type type, int io_fd, char *buf, int len, | ||
392 | unsigned long long offset, int reply_fd, | ||
393 | struct aio_context *aio) | ||
394 | { | ||
395 | aio->reply_fd = reply_fd; | ||
396 | if(aio_24) | ||
397 | return submit_aio_24(type, io_fd, buf, len, offset, aio); | ||
398 | else { | ||
399 | return submit_aio_26(type, io_fd, buf, len, offset, aio); | ||
400 | } | ||
418 | } | 401 | } |
diff --git a/arch/um/os-Linux/start_up.c b/arch/um/os-Linux/start_up.c index 6af83171ca4e..b99ab414542f 100644 --- a/arch/um/os-Linux/start_up.c +++ b/arch/um/os-Linux/start_up.c | |||
@@ -143,11 +143,22 @@ static int __init skas0_cmd_param(char *str, int* add) | |||
143 | return 0; | 143 | return 0; |
144 | } | 144 | } |
145 | 145 | ||
146 | /* The two __uml_setup would conflict, without this stupid alias. */ | ||
147 | |||
148 | static int __init mode_skas0_cmd_param(char *str, int* add) | ||
149 | __attribute__((alias("skas0_cmd_param"))); | ||
150 | |||
146 | __uml_setup("skas0", skas0_cmd_param, | 151 | __uml_setup("skas0", skas0_cmd_param, |
147 | "skas0\n" | 152 | "skas0\n" |
148 | " Disables SKAS3 usage, so that SKAS0 is used, unless \n" | 153 | " Disables SKAS3 usage, so that SKAS0 is used, unless \n" |
149 | " you specify mode=tt.\n\n"); | 154 | " you specify mode=tt.\n\n"); |
150 | 155 | ||
156 | __uml_setup("mode=skas0", mode_skas0_cmd_param, | ||
157 | "mode=skas0\n" | ||
158 | " Disables SKAS3 usage, so that SKAS0 is used, unless you \n" | ||
159 | " specify mode=tt. Note that this was recently added - on \n" | ||
160 | " older kernels you must use simply \"skas0\".\n\n"); | ||
161 | |||
151 | static int force_sysemu_disabled = 0; | 162 | static int force_sysemu_disabled = 0; |
152 | 163 | ||
153 | static int __init nosysemu_cmd_param(char *str, int* add) | 164 | static int __init nosysemu_cmd_param(char *str, int* add) |
diff --git a/arch/um/os-Linux/sys-i386/registers.c b/arch/um/os-Linux/sys-i386/registers.c index 3125d320722c..aee4812333c6 100644 --- a/arch/um/os-Linux/sys-i386/registers.c +++ b/arch/um/os-Linux/sys-i386/registers.c | |||
@@ -5,6 +5,7 @@ | |||
5 | 5 | ||
6 | #include <errno.h> | 6 | #include <errno.h> |
7 | #include <string.h> | 7 | #include <string.h> |
8 | #include <setjmp.h> | ||
8 | #include "sysdep/ptrace_user.h" | 9 | #include "sysdep/ptrace_user.h" |
9 | #include "sysdep/ptrace.h" | 10 | #include "sysdep/ptrace.h" |
10 | #include "uml-config.h" | 11 | #include "uml-config.h" |
@@ -126,13 +127,11 @@ void get_safe_registers(unsigned long *regs) | |||
126 | memcpy(regs, exec_regs, HOST_FRAME_SIZE * sizeof(unsigned long)); | 127 | memcpy(regs, exec_regs, HOST_FRAME_SIZE * sizeof(unsigned long)); |
127 | } | 128 | } |
128 | 129 | ||
129 | /* | 130 | void get_thread_regs(union uml_pt_regs *uml_regs, void *buffer) |
130 | * Overrides for Emacs so that we follow Linus's tabbing style. | 131 | { |
131 | * Emacs will notice this stuff at the end of the file and automatically | 132 | struct __jmp_buf_tag *jmpbuf = buffer; |
132 | * adjust the settings for this buffer only. This must remain at the end | 133 | |
133 | * of the file. | 134 | UPT_SET(uml_regs, EIP, jmpbuf->__jmpbuf[JB_PC]); |
134 | * --------------------------------------------------------------------------- | 135 | UPT_SET(uml_regs, UESP, jmpbuf->__jmpbuf[JB_SP]); |
135 | * Local variables: | 136 | UPT_SET(uml_regs, EBP, jmpbuf->__jmpbuf[JB_BP]); |
136 | * c-file-style: "linux" | 137 | } |
137 | * End: | ||
138 | */ | ||
diff --git a/arch/um/os-Linux/sys-x86_64/registers.c b/arch/um/os-Linux/sys-x86_64/registers.c index 44438d15c3d6..4b638dfb52b0 100644 --- a/arch/um/os-Linux/sys-x86_64/registers.c +++ b/arch/um/os-Linux/sys-x86_64/registers.c | |||
@@ -5,6 +5,7 @@ | |||
5 | 5 | ||
6 | #include <errno.h> | 6 | #include <errno.h> |
7 | #include <string.h> | 7 | #include <string.h> |
8 | #include <setjmp.h> | ||
8 | #include "ptrace_user.h" | 9 | #include "ptrace_user.h" |
9 | #include "uml-config.h" | 10 | #include "uml-config.h" |
10 | #include "skas_ptregs.h" | 11 | #include "skas_ptregs.h" |
@@ -74,13 +75,11 @@ void get_safe_registers(unsigned long *regs) | |||
74 | memcpy(regs, exec_regs, HOST_FRAME_SIZE * sizeof(unsigned long)); | 75 | memcpy(regs, exec_regs, HOST_FRAME_SIZE * sizeof(unsigned long)); |
75 | } | 76 | } |
76 | 77 | ||
77 | /* | 78 | void get_thread_regs(union uml_pt_regs *uml_regs, void *buffer) |
78 | * Overrides for Emacs so that we follow Linus's tabbing style. | 79 | { |
79 | * Emacs will notice this stuff at the end of the file and automatically | 80 | struct __jmp_buf_tag *jmpbuf = buffer; |
80 | * adjust the settings for this buffer only. This must remain at the end | 81 | |
81 | * of the file. | 82 | UPT_SET(uml_regs, RIP, jmpbuf->__jmpbuf[JB_PC]); |
82 | * --------------------------------------------------------------------------- | 83 | UPT_SET(uml_regs, RSP, jmpbuf->__jmpbuf[JB_RSP]); |
83 | * Local variables: | 84 | UPT_SET(uml_regs, RBP, jmpbuf->__jmpbuf[JB_RBP]); |
84 | * c-file-style: "linux" | 85 | } |
85 | * End: | ||
86 | */ | ||
diff --git a/arch/um/scripts/Makefile.rules b/arch/um/scripts/Makefile.rules index 59a1291f477e..651d9d88b656 100644 --- a/arch/um/scripts/Makefile.rules +++ b/arch/um/scripts/Makefile.rules | |||
@@ -7,8 +7,8 @@ USER_SINGLE_OBJS := \ | |||
7 | USER_OBJS += $(filter %_user.o,$(obj-y) $(obj-m) $(USER_SINGLE_OBJS)) | 7 | USER_OBJS += $(filter %_user.o,$(obj-y) $(obj-m) $(USER_SINGLE_OBJS)) |
8 | USER_OBJS := $(foreach file,$(USER_OBJS),$(obj)/$(file)) | 8 | USER_OBJS := $(foreach file,$(USER_OBJS),$(obj)/$(file)) |
9 | 9 | ||
10 | $(USER_OBJS) : c_flags = -Wp,-MD,$(depfile) $(USER_CFLAGS) \ | 10 | $(USER_OBJS) $(USER_OBJS:.o=.i) $(USER_OBJS:.o=.s) $(USER_OBJS:.o=.lst): \ |
11 | $(CFLAGS_$(notdir $@)) | 11 | c_flags = -Wp,-MD,$(depfile) $(USER_CFLAGS) $(CFLAGS_$(notdir $@)) |
12 | $(USER_OBJS): cmd_checksrc = | 12 | $(USER_OBJS): cmd_checksrc = |
13 | $(USER_OBJS): quiet_cmd_checksrc = | 13 | $(USER_OBJS): quiet_cmd_checksrc = |
14 | $(USER_OBJS): cmd_force_checksrc = | 14 | $(USER_OBJS): cmd_force_checksrc = |
diff --git a/arch/um/sys-i386/sysrq.c b/arch/um/sys-i386/sysrq.c index e3706d15c4f5..d5244f070539 100644 --- a/arch/um/sys-i386/sysrq.c +++ b/arch/um/sys-i386/sysrq.c | |||
@@ -88,9 +88,7 @@ void show_trace(struct task_struct* task, unsigned long * stack) | |||
88 | task = current; | 88 | task = current; |
89 | 89 | ||
90 | if (task != current) { | 90 | if (task != current) { |
91 | //ebp = (unsigned long) KSTK_EBP(task); | 91 | ebp = (unsigned long) KSTK_EBP(task); |
92 | /* Which one? No actual difference - just coding style.*/ | ||
93 | ebp = (unsigned long) PT_REGS_EBP(&task->thread.regs); | ||
94 | } else { | 92 | } else { |
95 | asm ("movl %%ebp, %0" : "=r" (ebp) : ); | 93 | asm ("movl %%ebp, %0" : "=r" (ebp) : ); |
96 | } | 94 | } |
@@ -99,15 +97,6 @@ void show_trace(struct task_struct* task, unsigned long * stack) | |||
99 | ((unsigned long)stack & (~(THREAD_SIZE - 1))); | 97 | ((unsigned long)stack & (~(THREAD_SIZE - 1))); |
100 | print_context_stack(context, stack, ebp); | 98 | print_context_stack(context, stack, ebp); |
101 | 99 | ||
102 | /*while (((long) stack & (THREAD_SIZE-1)) != 0) { | ||
103 | addr = *stack; | ||
104 | if (__kernel_text_address(addr)) { | ||
105 | printk("%08lx: [<%08lx>]", (unsigned long) stack, addr); | ||
106 | print_symbol(" %s", addr); | ||
107 | printk("\n"); | ||
108 | } | ||
109 | stack++; | ||
110 | }*/ | ||
111 | printk("\n"); | 100 | printk("\n"); |
112 | } | 101 | } |
113 | 102 | ||
diff --git a/arch/um/sys-i386/user-offsets.c b/arch/um/sys-i386/user-offsets.c index 677fc26a9bbe..26b68675053d 100644 --- a/arch/um/sys-i386/user-offsets.c +++ b/arch/um/sys-i386/user-offsets.c | |||
@@ -46,7 +46,7 @@ void foo(void) | |||
46 | OFFSET(HOST_SC_FP_ST, _fpstate, _st); | 46 | OFFSET(HOST_SC_FP_ST, _fpstate, _st); |
47 | OFFSET(HOST_SC_FXSR_ENV, _fpstate, _fxsr_env); | 47 | OFFSET(HOST_SC_FXSR_ENV, _fpstate, _fxsr_env); |
48 | 48 | ||
49 | DEFINE_LONGS(HOST_FRAME_SIZE, FRAME_SIZE); | 49 | DEFINE(HOST_FRAME_SIZE, FRAME_SIZE); |
50 | DEFINE_LONGS(HOST_FP_SIZE, sizeof(struct user_i387_struct)); | 50 | DEFINE_LONGS(HOST_FP_SIZE, sizeof(struct user_i387_struct)); |
51 | DEFINE_LONGS(HOST_XFP_SIZE, sizeof(struct user_fxsr_struct)); | 51 | DEFINE_LONGS(HOST_XFP_SIZE, sizeof(struct user_fxsr_struct)); |
52 | 52 | ||
diff --git a/arch/um/sys-x86_64/stub_segv.c b/arch/um/sys-x86_64/stub_segv.c index 65a131b362b6..d1e53bdf2e85 100644 --- a/arch/um/sys-x86_64/stub_segv.c +++ b/arch/um/sys-x86_64/stub_segv.c | |||
@@ -10,6 +10,22 @@ | |||
10 | #include "uml-config.h" | 10 | #include "uml-config.h" |
11 | #include "sysdep/sigcontext.h" | 11 | #include "sysdep/sigcontext.h" |
12 | #include "sysdep/faultinfo.h" | 12 | #include "sysdep/faultinfo.h" |
13 | #include <stddef.h> | ||
14 | |||
15 | /* Copied from sys-x86_64/signal.c - Can't find an equivalent definition | ||
16 | * in the libc headers anywhere. | ||
17 | */ | ||
18 | struct rt_sigframe | ||
19 | { | ||
20 | char *pretcode; | ||
21 | struct ucontext uc; | ||
22 | struct siginfo info; | ||
23 | }; | ||
24 | |||
25 | /* Copied here from <linux/kernel.h> - we're userspace. */ | ||
26 | #define container_of(ptr, type, member) ({ \ | ||
27 | const typeof( ((type *)0)->member ) *__mptr = (ptr); \ | ||
28 | (type *)( (char *)__mptr - offsetof(type,member) );}) | ||
13 | 29 | ||
14 | void __attribute__ ((__section__ (".__syscall_stub"))) | 30 | void __attribute__ ((__section__ (".__syscall_stub"))) |
15 | stub_segv_handler(int sig) | 31 | stub_segv_handler(int sig) |
@@ -17,16 +33,19 @@ stub_segv_handler(int sig) | |||
17 | struct ucontext *uc; | 33 | struct ucontext *uc; |
18 | 34 | ||
19 | __asm__("movq %%rdx, %0" : "=g" (uc) :); | 35 | __asm__("movq %%rdx, %0" : "=g" (uc) :); |
20 | GET_FAULTINFO_FROM_SC(*((struct faultinfo *) UML_CONFIG_STUB_DATA), | 36 | GET_FAULTINFO_FROM_SC(*((struct faultinfo *) UML_CONFIG_STUB_DATA), |
21 | &uc->uc_mcontext); | 37 | &uc->uc_mcontext); |
22 | 38 | ||
23 | __asm__("movq %0, %%rax ; syscall": : "g" (__NR_getpid)); | 39 | __asm__("movq %0, %%rax ; syscall": : "g" (__NR_getpid)); |
24 | __asm__("movq %%rax, %%rdi ; movq %0, %%rax ; movq %1, %%rsi ;" | 40 | __asm__("movq %%rax, %%rdi ; movq %0, %%rax ; movq %1, %%rsi ;" |
25 | "syscall": : "g" (__NR_kill), "g" (SIGUSR1)); | 41 | "syscall": : "g" (__NR_kill), "g" (SIGUSR1) : |
26 | /* Two popqs to restore the stack to the state just before entering | 42 | "%rdi", "%rax", "%rsi"); |
27 | * the handler, one pops the return address, the other pops the frame | 43 | /* sys_sigreturn expects that the stack pointer will be 8 bytes into |
28 | * pointer. | 44 | * the signal frame. So, we use the ucontext pointer, which we know |
45 | * already, to get the signal frame pointer, and add 8 to that. | ||
29 | */ | 46 | */ |
30 | __asm__("popq %%rax ; popq %%rax ; movq %0, %%rax ; syscall" : : "g" | 47 | __asm__("movq %0, %%rsp": : |
31 | (__NR_rt_sigreturn)); | 48 | "g" ((unsigned long) container_of(uc, struct rt_sigframe, |
49 | uc) + 8)); | ||
50 | __asm__("movq %0, %%rax ; syscall" : : "g" (__NR_rt_sigreturn)); | ||
32 | } | 51 | } |
diff --git a/arch/x86_64/ia32/ia32_signal.c b/arch/x86_64/ia32/ia32_signal.c index 66e2821533db..0903cc1faef2 100644 --- a/arch/x86_64/ia32/ia32_signal.c +++ b/arch/x86_64/ia32/ia32_signal.c | |||
@@ -425,7 +425,11 @@ get_sigframe(struct k_sigaction *ka, struct pt_regs * regs, size_t frame_size) | |||
425 | rsp = (unsigned long) ka->sa.sa_restorer; | 425 | rsp = (unsigned long) ka->sa.sa_restorer; |
426 | } | 426 | } |
427 | 427 | ||
428 | return (void __user *)((rsp - frame_size) & -8UL); | 428 | rsp -= frame_size; |
429 | /* Align the stack pointer according to the i386 ABI, | ||
430 | * i.e. so that on function entry ((sp + 4) & 15) == 0. */ | ||
431 | rsp = ((rsp + 4) & -16ul) - 4; | ||
432 | return (void __user *) rsp; | ||
429 | } | 433 | } |
430 | 434 | ||
431 | int ia32_setup_frame(int sig, struct k_sigaction *ka, | 435 | int ia32_setup_frame(int sig, struct k_sigaction *ka, |
diff --git a/arch/x86_64/kernel/head.S b/arch/x86_64/kernel/head.S index 4592bf21fcaf..b92e5f45ed46 100644 --- a/arch/x86_64/kernel/head.S +++ b/arch/x86_64/kernel/head.S | |||
@@ -270,26 +270,26 @@ ENTRY(level3_kernel_pgt) | |||
270 | .org 0x4000 | 270 | .org 0x4000 |
271 | ENTRY(level2_ident_pgt) | 271 | ENTRY(level2_ident_pgt) |
272 | /* 40MB for bootup. */ | 272 | /* 40MB for bootup. */ |
273 | .quad 0x0000000000000183 | 273 | .quad 0x0000000000000083 |
274 | .quad 0x0000000000200183 | 274 | .quad 0x0000000000200083 |
275 | .quad 0x0000000000400183 | 275 | .quad 0x0000000000400083 |
276 | .quad 0x0000000000600183 | 276 | .quad 0x0000000000600083 |
277 | .quad 0x0000000000800183 | 277 | .quad 0x0000000000800083 |
278 | .quad 0x0000000000A00183 | 278 | .quad 0x0000000000A00083 |
279 | .quad 0x0000000000C00183 | 279 | .quad 0x0000000000C00083 |
280 | .quad 0x0000000000E00183 | 280 | .quad 0x0000000000E00083 |
281 | .quad 0x0000000001000183 | 281 | .quad 0x0000000001000083 |
282 | .quad 0x0000000001200183 | 282 | .quad 0x0000000001200083 |
283 | .quad 0x0000000001400183 | 283 | .quad 0x0000000001400083 |
284 | .quad 0x0000000001600183 | 284 | .quad 0x0000000001600083 |
285 | .quad 0x0000000001800183 | 285 | .quad 0x0000000001800083 |
286 | .quad 0x0000000001A00183 | 286 | .quad 0x0000000001A00083 |
287 | .quad 0x0000000001C00183 | 287 | .quad 0x0000000001C00083 |
288 | .quad 0x0000000001E00183 | 288 | .quad 0x0000000001E00083 |
289 | .quad 0x0000000002000183 | 289 | .quad 0x0000000002000083 |
290 | .quad 0x0000000002200183 | 290 | .quad 0x0000000002200083 |
291 | .quad 0x0000000002400183 | 291 | .quad 0x0000000002400083 |
292 | .quad 0x0000000002600183 | 292 | .quad 0x0000000002600083 |
293 | /* Temporary mappings for the super early allocator in arch/x86_64/mm/init.c */ | 293 | /* Temporary mappings for the super early allocator in arch/x86_64/mm/init.c */ |
294 | .globl temp_boot_pmds | 294 | .globl temp_boot_pmds |
295 | temp_boot_pmds: | 295 | temp_boot_pmds: |
diff --git a/arch/x86_64/kernel/setup64.c b/arch/x86_64/kernel/setup64.c index bd33be24a386..79190891fbc5 100644 --- a/arch/x86_64/kernel/setup64.c +++ b/arch/x86_64/kernel/setup64.c | |||
@@ -87,6 +87,10 @@ void __init setup_per_cpu_areas(void) | |||
87 | int i; | 87 | int i; |
88 | unsigned long size; | 88 | unsigned long size; |
89 | 89 | ||
90 | #ifdef CONFIG_HOTPLUG_CPU | ||
91 | prefill_possible_map(); | ||
92 | #endif | ||
93 | |||
90 | /* Copy section for each CPU (we discard the original) */ | 94 | /* Copy section for each CPU (we discard the original) */ |
91 | size = ALIGN(__per_cpu_end - __per_cpu_start, SMP_CACHE_BYTES); | 95 | size = ALIGN(__per_cpu_end - __per_cpu_start, SMP_CACHE_BYTES); |
92 | #ifdef CONFIG_MODULES | 96 | #ifdef CONFIG_MODULES |
diff --git a/arch/x86_64/kernel/smpboot.c b/arch/x86_64/kernel/smpboot.c index e12d7baeb33e..658a81b33f3b 100644 --- a/arch/x86_64/kernel/smpboot.c +++ b/arch/x86_64/kernel/smpboot.c | |||
@@ -892,7 +892,7 @@ static __init void disable_smp(void) | |||
892 | * those NR_CPUS, hence cpu_possible_map represents entire NR_CPUS range. | 892 | * those NR_CPUS, hence cpu_possible_map represents entire NR_CPUS range. |
893 | * - Ashok Raj | 893 | * - Ashok Raj |
894 | */ | 894 | */ |
895 | static void prefill_possible_map(void) | 895 | __init void prefill_possible_map(void) |
896 | { | 896 | { |
897 | int i; | 897 | int i; |
898 | for (i = 0; i < NR_CPUS; i++) | 898 | for (i = 0; i < NR_CPUS; i++) |
@@ -967,10 +967,6 @@ void __init smp_prepare_cpus(unsigned int max_cpus) | |||
967 | current_cpu_data = boot_cpu_data; | 967 | current_cpu_data = boot_cpu_data; |
968 | current_thread_info()->cpu = 0; /* needed? */ | 968 | current_thread_info()->cpu = 0; /* needed? */ |
969 | 969 | ||
970 | #ifdef CONFIG_HOTPLUG_CPU | ||
971 | prefill_possible_map(); | ||
972 | #endif | ||
973 | |||
974 | if (smp_sanity_check(max_cpus) < 0) { | 970 | if (smp_sanity_check(max_cpus) < 0) { |
975 | printk(KERN_INFO "SMP disabled\n"); | 971 | printk(KERN_INFO "SMP disabled\n"); |
976 | disable_smp(); | 972 | disable_smp(); |
diff --git a/arch/x86_64/kernel/suspend.c b/arch/x86_64/kernel/suspend.c index ebb9abf3ce6d..f066c6ab3618 100644 --- a/arch/x86_64/kernel/suspend.c +++ b/arch/x86_64/kernel/suspend.c | |||
@@ -11,6 +11,8 @@ | |||
11 | #include <linux/smp.h> | 11 | #include <linux/smp.h> |
12 | #include <linux/suspend.h> | 12 | #include <linux/suspend.h> |
13 | #include <asm/proto.h> | 13 | #include <asm/proto.h> |
14 | #include <asm/page.h> | ||
15 | #include <asm/pgtable.h> | ||
14 | 16 | ||
15 | struct saved_context saved_context; | 17 | struct saved_context saved_context; |
16 | 18 | ||
@@ -140,4 +142,129 @@ void fix_processor_context(void) | |||
140 | 142 | ||
141 | } | 143 | } |
142 | 144 | ||
145 | #ifdef CONFIG_SOFTWARE_SUSPEND | ||
146 | /* Defined in arch/x86_64/kernel/suspend_asm.S */ | ||
147 | extern int restore_image(void); | ||
143 | 148 | ||
149 | pgd_t *temp_level4_pgt; | ||
150 | |||
151 | static void **pages; | ||
152 | |||
153 | static inline void *__add_page(void) | ||
154 | { | ||
155 | void **c; | ||
156 | |||
157 | c = (void **)get_usable_page(GFP_ATOMIC); | ||
158 | if (c) { | ||
159 | *c = pages; | ||
160 | pages = c; | ||
161 | } | ||
162 | return c; | ||
163 | } | ||
164 | |||
165 | static inline void *__next_page(void) | ||
166 | { | ||
167 | void **c; | ||
168 | |||
169 | c = pages; | ||
170 | if (c) { | ||
171 | pages = *c; | ||
172 | *c = NULL; | ||
173 | } | ||
174 | return c; | ||
175 | } | ||
176 | |||
177 | /* | ||
178 | * Try to allocate as many usable pages as needed and daisy chain them. | ||
179 | * If one allocation fails, free the pages allocated so far | ||
180 | */ | ||
181 | static int alloc_usable_pages(unsigned long n) | ||
182 | { | ||
183 | void *p; | ||
184 | |||
185 | pages = NULL; | ||
186 | do | ||
187 | if (!__add_page()) | ||
188 | break; | ||
189 | while (--n); | ||
190 | if (n) { | ||
191 | p = __next_page(); | ||
192 | while (p) { | ||
193 | free_page((unsigned long)p); | ||
194 | p = __next_page(); | ||
195 | } | ||
196 | return -ENOMEM; | ||
197 | } | ||
198 | return 0; | ||
199 | } | ||
200 | |||
201 | static void res_phys_pud_init(pud_t *pud, unsigned long address, unsigned long end) | ||
202 | { | ||
203 | long i, j; | ||
204 | |||
205 | i = pud_index(address); | ||
206 | pud = pud + i; | ||
207 | for (; i < PTRS_PER_PUD; pud++, i++) { | ||
208 | unsigned long paddr; | ||
209 | pmd_t *pmd; | ||
210 | |||
211 | paddr = address + i*PUD_SIZE; | ||
212 | if (paddr >= end) | ||
213 | break; | ||
214 | |||
215 | pmd = (pmd_t *)__next_page(); | ||
216 | set_pud(pud, __pud(__pa(pmd) | _KERNPG_TABLE)); | ||
217 | for (j = 0; j < PTRS_PER_PMD; pmd++, j++, paddr += PMD_SIZE) { | ||
218 | unsigned long pe; | ||
219 | |||
220 | if (paddr >= end) | ||
221 | break; | ||
222 | pe = _PAGE_NX | _PAGE_PSE | _KERNPG_TABLE | paddr; | ||
223 | pe &= __supported_pte_mask; | ||
224 | set_pmd(pmd, __pmd(pe)); | ||
225 | } | ||
226 | } | ||
227 | } | ||
228 | |||
229 | static void set_up_temporary_mappings(void) | ||
230 | { | ||
231 | unsigned long start, end, next; | ||
232 | |||
233 | temp_level4_pgt = (pgd_t *)__next_page(); | ||
234 | |||
235 | /* It is safe to reuse the original kernel mapping */ | ||
236 | set_pgd(temp_level4_pgt + pgd_index(__START_KERNEL_map), | ||
237 | init_level4_pgt[pgd_index(__START_KERNEL_map)]); | ||
238 | |||
239 | /* Set up the direct mapping from scratch */ | ||
240 | start = (unsigned long)pfn_to_kaddr(0); | ||
241 | end = (unsigned long)pfn_to_kaddr(end_pfn); | ||
242 | |||
243 | for (; start < end; start = next) { | ||
244 | pud_t *pud = (pud_t *)__next_page(); | ||
245 | next = start + PGDIR_SIZE; | ||
246 | if (next > end) | ||
247 | next = end; | ||
248 | res_phys_pud_init(pud, __pa(start), __pa(next)); | ||
249 | set_pgd(temp_level4_pgt + pgd_index(start), | ||
250 | mk_kernel_pgd(__pa(pud))); | ||
251 | } | ||
252 | } | ||
253 | |||
254 | int swsusp_arch_resume(void) | ||
255 | { | ||
256 | unsigned long n; | ||
257 | |||
258 | n = ((end_pfn << PAGE_SHIFT) + PUD_SIZE - 1) >> PUD_SHIFT; | ||
259 | n += (n + PTRS_PER_PUD - 1) / PTRS_PER_PUD + 1; | ||
260 | pr_debug("swsusp_arch_resume(): pages needed = %lu\n", n); | ||
261 | if (alloc_usable_pages(n)) { | ||
262 | free_eaten_memory(); | ||
263 | return -ENOMEM; | ||
264 | } | ||
265 | /* We have got enough memory and from now on we cannot recover */ | ||
266 | set_up_temporary_mappings(); | ||
267 | restore_image(); | ||
268 | return 0; | ||
269 | } | ||
270 | #endif /* CONFIG_SOFTWARE_SUSPEND */ | ||
diff --git a/arch/x86_64/kernel/suspend_asm.S b/arch/x86_64/kernel/suspend_asm.S index 4d659e97df10..320b6fb00cca 100644 --- a/arch/x86_64/kernel/suspend_asm.S +++ b/arch/x86_64/kernel/suspend_asm.S | |||
@@ -39,12 +39,13 @@ ENTRY(swsusp_arch_suspend) | |||
39 | call swsusp_save | 39 | call swsusp_save |
40 | ret | 40 | ret |
41 | 41 | ||
42 | ENTRY(swsusp_arch_resume) | 42 | ENTRY(restore_image) |
43 | /* set up cr3 */ | 43 | /* switch to temporary page tables */ |
44 | leaq init_level4_pgt(%rip),%rax | 44 | movq $__PAGE_OFFSET, %rdx |
45 | subq $__START_KERNEL_map,%rax | 45 | movq temp_level4_pgt(%rip), %rax |
46 | movq %rax,%cr3 | 46 | subq %rdx, %rax |
47 | 47 | movq %rax, %cr3 | |
48 | /* Flush TLB */ | ||
48 | movq mmu_cr4_features(%rip), %rax | 49 | movq mmu_cr4_features(%rip), %rax |
49 | movq %rax, %rdx | 50 | movq %rax, %rdx |
50 | andq $~(1<<7), %rdx # PGE | 51 | andq $~(1<<7), %rdx # PGE |
@@ -69,6 +70,10 @@ loop: | |||
69 | movq pbe_next(%rdx), %rdx | 70 | movq pbe_next(%rdx), %rdx |
70 | jmp loop | 71 | jmp loop |
71 | done: | 72 | done: |
73 | /* go back to the original page tables */ | ||
74 | leaq init_level4_pgt(%rip), %rax | ||
75 | subq $__START_KERNEL_map, %rax | ||
76 | movq %rax, %cr3 | ||
72 | /* Flush TLB, including "global" things (vmalloc) */ | 77 | /* Flush TLB, including "global" things (vmalloc) */ |
73 | movq mmu_cr4_features(%rip), %rax | 78 | movq mmu_cr4_features(%rip), %rax |
74 | movq %rax, %rdx | 79 | movq %rax, %rdx |
diff --git a/arch/x86_64/mm/pageattr.c b/arch/x86_64/mm/pageattr.c index 94862e1ec032..b90e8fe9eeb0 100644 --- a/arch/x86_64/mm/pageattr.c +++ b/arch/x86_64/mm/pageattr.c | |||
@@ -220,8 +220,6 @@ void global_flush_tlb(void) | |||
220 | down_read(&init_mm.mmap_sem); | 220 | down_read(&init_mm.mmap_sem); |
221 | df = xchg(&df_list, NULL); | 221 | df = xchg(&df_list, NULL); |
222 | up_read(&init_mm.mmap_sem); | 222 | up_read(&init_mm.mmap_sem); |
223 | if (!df) | ||
224 | return; | ||
225 | flush_map((df && !df->next) ? df->address : 0); | 223 | flush_map((df && !df->next) ? df->address : 0); |
226 | for (; df; df = next_df) { | 224 | for (; df; df = next_df) { |
227 | next_df = df->next; | 225 | next_df = df->next; |