diff options
69 files changed, 1654 insertions, 786 deletions
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index 914119309ddb..856c8b114e71 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt | |||
@@ -126,7 +126,8 @@ and is between 256 and 4096 characters. It is defined in the file | |||
126 | See header of drivers/scsi/53c7xx.c. | 126 | See header of drivers/scsi/53c7xx.c. |
127 | See also Documentation/scsi/ncr53c7xx.txt. | 127 | See also Documentation/scsi/ncr53c7xx.txt. |
128 | 128 | ||
129 | acpi= [HW,ACPI] Advanced Configuration and Power Interface | 129 | acpi= [HW,ACPI,X86-64,i386] |
130 | Advanced Configuration and Power Interface | ||
130 | Format: { force | off | ht | strict | noirq } | 131 | Format: { force | off | ht | strict | noirq } |
131 | force -- enable ACPI if default was off | 132 | force -- enable ACPI if default was off |
132 | off -- disable ACPI if default was on | 133 | off -- disable ACPI if default was on |
diff --git a/MAINTAINERS b/MAINTAINERS index 9993b9009415..17555bba20af 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -1103,9 +1103,6 @@ W: http://lanana.org/docs/device-list/index.html | |||
1103 | L: linux-kernel@vger.kernel.org | 1103 | L: linux-kernel@vger.kernel.org |
1104 | S: Maintained | 1104 | S: Maintained |
1105 | 1105 | ||
1106 | DEVICE FILESYSTEM | ||
1107 | S: Obsolete | ||
1108 | |||
1109 | DIGI INTL. EPCA DRIVER | 1106 | DIGI INTL. EPCA DRIVER |
1110 | P: Digi International, Inc | 1107 | P: Digi International, Inc |
1111 | M: Eng.Linux@digi.com | 1108 | M: Eng.Linux@digi.com |
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c index e5eb97a910ed..9ea5b8ecc7e1 100644 --- a/arch/i386/kernel/acpi/boot.c +++ b/arch/i386/kernel/acpi/boot.c | |||
@@ -1072,7 +1072,28 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = { | |||
1072 | "ASUS A7V ACPI BIOS Revision 1007"), | 1072 | "ASUS A7V ACPI BIOS Revision 1007"), |
1073 | }, | 1073 | }, |
1074 | }, | 1074 | }, |
1075 | 1075 | { | |
1076 | /* | ||
1077 | * Latest BIOS for IBM 600E (1.16) has bad pcinum | ||
1078 | * for LPC bridge, which is needed for the PCI | ||
1079 | * interrupt links to work. DSDT fix is in bug 5966. | ||
1080 | * 2645, 2646 model numbers are shared with 600/600E/600X | ||
1081 | */ | ||
1082 | .callback = disable_acpi_irq, | ||
1083 | .ident = "IBM Thinkpad 600 Series 2645", | ||
1084 | .matches = { | ||
1085 | DMI_MATCH(DMI_BOARD_VENDOR, "IBM"), | ||
1086 | DMI_MATCH(DMI_BOARD_NAME, "2645"), | ||
1087 | }, | ||
1088 | }, | ||
1089 | { | ||
1090 | .callback = disable_acpi_irq, | ||
1091 | .ident = "IBM Thinkpad 600 Series 2646", | ||
1092 | .matches = { | ||
1093 | DMI_MATCH(DMI_BOARD_VENDOR, "IBM"), | ||
1094 | DMI_MATCH(DMI_BOARD_NAME, "2646"), | ||
1095 | }, | ||
1096 | }, | ||
1076 | /* | 1097 | /* |
1077 | * Boxes that need ACPI PCI IRQ routing and PCI scan disabled | 1098 | * Boxes that need ACPI PCI IRQ routing and PCI scan disabled |
1078 | */ | 1099 | */ |
diff --git a/arch/ia64/configs/tiger_defconfig b/arch/ia64/configs/tiger_defconfig index 9d1cffb57cde..a1446931b401 100644 --- a/arch/ia64/configs/tiger_defconfig +++ b/arch/ia64/configs/tiger_defconfig | |||
@@ -1,8 +1,9 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.16-rc5 | 3 | # Linux kernel version: 2.6.21-rc3 |
4 | # Mon Feb 27 15:49:18 2006 | 4 | # Thu Mar 8 11:07:09 2007 |
5 | # | 5 | # |
6 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
6 | 7 | ||
7 | # | 8 | # |
8 | # Code maturity level options | 9 | # Code maturity level options |
@@ -18,16 +19,24 @@ CONFIG_LOCALVERSION="" | |||
18 | CONFIG_LOCALVERSION_AUTO=y | 19 | CONFIG_LOCALVERSION_AUTO=y |
19 | CONFIG_SWAP=y | 20 | CONFIG_SWAP=y |
20 | CONFIG_SYSVIPC=y | 21 | CONFIG_SYSVIPC=y |
22 | # CONFIG_IPC_NS is not set | ||
23 | CONFIG_SYSVIPC_SYSCTL=y | ||
21 | CONFIG_POSIX_MQUEUE=y | 24 | CONFIG_POSIX_MQUEUE=y |
22 | # CONFIG_BSD_PROCESS_ACCT is not set | 25 | # CONFIG_BSD_PROCESS_ACCT is not set |
23 | CONFIG_SYSCTL=y | 26 | # CONFIG_TASKSTATS is not set |
27 | # CONFIG_UTS_NS is not set | ||
24 | # CONFIG_AUDIT is not set | 28 | # CONFIG_AUDIT is not set |
25 | CONFIG_IKCONFIG=y | 29 | CONFIG_IKCONFIG=y |
26 | CONFIG_IKCONFIG_PROC=y | 30 | CONFIG_IKCONFIG_PROC=y |
27 | # CONFIG_CPUSETS is not set | 31 | # CONFIG_CPUSETS is not set |
32 | CONFIG_SYSFS_DEPRECATED=y | ||
33 | # CONFIG_RELAY is not set | ||
34 | CONFIG_BLK_DEV_INITRD=y | ||
28 | CONFIG_INITRAMFS_SOURCE="" | 35 | CONFIG_INITRAMFS_SOURCE="" |
29 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 36 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
37 | CONFIG_SYSCTL=y | ||
30 | # CONFIG_EMBEDDED is not set | 38 | # CONFIG_EMBEDDED is not set |
39 | CONFIG_SYSCTL_SYSCALL=y | ||
31 | CONFIG_KALLSYMS=y | 40 | CONFIG_KALLSYMS=y |
32 | CONFIG_KALLSYMS_ALL=y | 41 | CONFIG_KALLSYMS_ALL=y |
33 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 42 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
@@ -39,11 +48,9 @@ CONFIG_BASE_FULL=y | |||
39 | CONFIG_FUTEX=y | 48 | CONFIG_FUTEX=y |
40 | CONFIG_EPOLL=y | 49 | CONFIG_EPOLL=y |
41 | CONFIG_SHMEM=y | 50 | CONFIG_SHMEM=y |
42 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
43 | CONFIG_CC_ALIGN_LABELS=0 | ||
44 | CONFIG_CC_ALIGN_LOOPS=0 | ||
45 | CONFIG_CC_ALIGN_JUMPS=0 | ||
46 | CONFIG_SLAB=y | 51 | CONFIG_SLAB=y |
52 | CONFIG_VM_EVENT_COUNTERS=y | ||
53 | CONFIG_RT_MUTEXES=y | ||
47 | # CONFIG_TINY_SHMEM is not set | 54 | # CONFIG_TINY_SHMEM is not set |
48 | CONFIG_BASE_SMALL=0 | 55 | CONFIG_BASE_SMALL=0 |
49 | # CONFIG_SLOB is not set | 56 | # CONFIG_SLOB is not set |
@@ -54,7 +61,6 @@ CONFIG_BASE_SMALL=0 | |||
54 | CONFIG_MODULES=y | 61 | CONFIG_MODULES=y |
55 | CONFIG_MODULE_UNLOAD=y | 62 | CONFIG_MODULE_UNLOAD=y |
56 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 63 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
57 | CONFIG_OBSOLETE_MODPARM=y | ||
58 | CONFIG_MODVERSIONS=y | 64 | CONFIG_MODVERSIONS=y |
59 | CONFIG_MODULE_SRCVERSION_ALL=y | 65 | CONFIG_MODULE_SRCVERSION_ALL=y |
60 | CONFIG_KMOD=y | 66 | CONFIG_KMOD=y |
@@ -63,6 +69,8 @@ CONFIG_STOP_MACHINE=y | |||
63 | # | 69 | # |
64 | # Block layer | 70 | # Block layer |
65 | # | 71 | # |
72 | CONFIG_BLOCK=y | ||
73 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
66 | 74 | ||
67 | # | 75 | # |
68 | # IO Schedulers | 76 | # IO Schedulers |
@@ -82,15 +90,20 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" | |||
82 | # | 90 | # |
83 | CONFIG_IA64=y | 91 | CONFIG_IA64=y |
84 | CONFIG_64BIT=y | 92 | CONFIG_64BIT=y |
93 | CONFIG_ZONE_DMA=y | ||
85 | CONFIG_MMU=y | 94 | CONFIG_MMU=y |
86 | CONFIG_SWIOTLB=y | 95 | CONFIG_SWIOTLB=y |
87 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 96 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
97 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
98 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
99 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
88 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 100 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
89 | CONFIG_TIME_INTERPOLATION=y | 101 | CONFIG_TIME_INTERPOLATION=y |
102 | CONFIG_DMI=y | ||
90 | CONFIG_EFI=y | 103 | CONFIG_EFI=y |
91 | CONFIG_GENERIC_IOMAP=y | 104 | CONFIG_GENERIC_IOMAP=y |
92 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 105 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
93 | CONFIG_DMA_IS_DMA32=y | 106 | CONFIG_AUDIT_ARCH=y |
94 | # CONFIG_IA64_GENERIC is not set | 107 | # CONFIG_IA64_GENERIC is not set |
95 | CONFIG_IA64_DIG=y | 108 | CONFIG_IA64_DIG=y |
96 | # CONFIG_IA64_HP_ZX1 is not set | 109 | # CONFIG_IA64_HP_ZX1 is not set |
@@ -107,6 +120,7 @@ CONFIG_PGTABLE_3=y | |||
107 | # CONFIG_PGTABLE_4 is not set | 120 | # CONFIG_PGTABLE_4 is not set |
108 | # CONFIG_HZ_100 is not set | 121 | # CONFIG_HZ_100 is not set |
109 | CONFIG_HZ_250=y | 122 | CONFIG_HZ_250=y |
123 | # CONFIG_HZ_300 is not set | ||
110 | # CONFIG_HZ_1000 is not set | 124 | # CONFIG_HZ_1000 is not set |
111 | CONFIG_HZ=250 | 125 | CONFIG_HZ=250 |
112 | CONFIG_IA64_L1_CACHE_SHIFT=7 | 126 | CONFIG_IA64_L1_CACHE_SHIFT=7 |
@@ -116,9 +130,10 @@ CONFIG_FORCE_MAX_ZONEORDER=17 | |||
116 | CONFIG_SMP=y | 130 | CONFIG_SMP=y |
117 | CONFIG_NR_CPUS=16 | 131 | CONFIG_NR_CPUS=16 |
118 | CONFIG_HOTPLUG_CPU=y | 132 | CONFIG_HOTPLUG_CPU=y |
133 | CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y | ||
134 | # CONFIG_SCHED_SMT is not set | ||
119 | CONFIG_PERMIT_BSP_REMOVE=y | 135 | CONFIG_PERMIT_BSP_REMOVE=y |
120 | CONFIG_FORCE_CPEI_RETARGET=y | 136 | CONFIG_FORCE_CPEI_RETARGET=y |
121 | # CONFIG_SCHED_SMT is not set | ||
122 | # CONFIG_PREEMPT is not set | 137 | # CONFIG_PREEMPT is not set |
123 | CONFIG_SELECT_MEMORY_MODEL=y | 138 | CONFIG_SELECT_MEMORY_MODEL=y |
124 | CONFIG_FLATMEM_MANUAL=y | 139 | CONFIG_FLATMEM_MANUAL=y |
@@ -128,10 +143,13 @@ CONFIG_FLATMEM=y | |||
128 | CONFIG_FLAT_NODE_MEM_MAP=y | 143 | CONFIG_FLAT_NODE_MEM_MAP=y |
129 | # CONFIG_SPARSEMEM_STATIC is not set | 144 | # CONFIG_SPARSEMEM_STATIC is not set |
130 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 145 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
146 | CONFIG_RESOURCES_64BIT=y | ||
147 | CONFIG_ZONE_DMA_FLAG=1 | ||
131 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | 148 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y |
132 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y | 149 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y |
133 | CONFIG_ARCH_FLATMEM_ENABLE=y | 150 | CONFIG_ARCH_FLATMEM_ENABLE=y |
134 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | 151 | CONFIG_ARCH_SPARSEMEM_ENABLE=y |
152 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
135 | CONFIG_VIRTUAL_MEM_MAP=y | 153 | CONFIG_VIRTUAL_MEM_MAP=y |
136 | CONFIG_HOLES_IN_ZONE=y | 154 | CONFIG_HOLES_IN_ZONE=y |
137 | CONFIG_IA32_SUPPORT=y | 155 | CONFIG_IA32_SUPPORT=y |
@@ -139,6 +157,9 @@ CONFIG_COMPAT=y | |||
139 | CONFIG_IA64_MCA_RECOVERY=y | 157 | CONFIG_IA64_MCA_RECOVERY=y |
140 | CONFIG_PERFMON=y | 158 | CONFIG_PERFMON=y |
141 | CONFIG_IA64_PALINFO=y | 159 | CONFIG_IA64_PALINFO=y |
160 | # CONFIG_IA64_ESI is not set | ||
161 | CONFIG_KEXEC=y | ||
162 | # CONFIG_CRASH_DUMP is not set | ||
142 | 163 | ||
143 | # | 164 | # |
144 | # Firmware Drivers | 165 | # Firmware Drivers |
@@ -154,13 +175,16 @@ CONFIG_BINFMT_MISC=m | |||
154 | CONFIG_PM=y | 175 | CONFIG_PM=y |
155 | CONFIG_PM_LEGACY=y | 176 | CONFIG_PM_LEGACY=y |
156 | # CONFIG_PM_DEBUG is not set | 177 | # CONFIG_PM_DEBUG is not set |
178 | # CONFIG_PM_SYSFS_DEPRECATED is not set | ||
157 | 179 | ||
158 | # | 180 | # |
159 | # ACPI (Advanced Configuration and Power Interface) Support | 181 | # ACPI (Advanced Configuration and Power Interface) Support |
160 | # | 182 | # |
161 | CONFIG_ACPI=y | 183 | CONFIG_ACPI=y |
184 | CONFIG_ACPI_PROCFS=y | ||
162 | CONFIG_ACPI_BUTTON=m | 185 | CONFIG_ACPI_BUTTON=m |
163 | CONFIG_ACPI_FAN=m | 186 | CONFIG_ACPI_FAN=m |
187 | # CONFIG_ACPI_DOCK is not set | ||
164 | CONFIG_ACPI_PROCESSOR=m | 188 | CONFIG_ACPI_PROCESSOR=m |
165 | CONFIG_ACPI_HOTPLUG_CPU=y | 189 | CONFIG_ACPI_HOTPLUG_CPU=y |
166 | CONFIG_ACPI_THERMAL=m | 190 | CONFIG_ACPI_THERMAL=m |
@@ -181,8 +205,8 @@ CONFIG_ACPI_CONTAINER=m | |||
181 | # | 205 | # |
182 | CONFIG_PCI=y | 206 | CONFIG_PCI=y |
183 | CONFIG_PCI_DOMAINS=y | 207 | CONFIG_PCI_DOMAINS=y |
208 | # CONFIG_PCIEPORTBUS is not set | ||
184 | # CONFIG_PCI_MSI is not set | 209 | # CONFIG_PCI_MSI is not set |
185 | CONFIG_PCI_LEGACY_PROC=y | ||
186 | # CONFIG_PCI_DEBUG is not set | 210 | # CONFIG_PCI_DEBUG is not set |
187 | 211 | ||
188 | # | 212 | # |
@@ -212,6 +236,10 @@ CONFIG_NET=y | |||
212 | CONFIG_PACKET=y | 236 | CONFIG_PACKET=y |
213 | # CONFIG_PACKET_MMAP is not set | 237 | # CONFIG_PACKET_MMAP is not set |
214 | CONFIG_UNIX=y | 238 | CONFIG_UNIX=y |
239 | CONFIG_XFRM=y | ||
240 | # CONFIG_XFRM_USER is not set | ||
241 | # CONFIG_XFRM_SUB_POLICY is not set | ||
242 | # CONFIG_XFRM_MIGRATE is not set | ||
215 | # CONFIG_NET_KEY is not set | 243 | # CONFIG_NET_KEY is not set |
216 | CONFIG_INET=y | 244 | CONFIG_INET=y |
217 | CONFIG_IP_MULTICAST=y | 245 | CONFIG_IP_MULTICAST=y |
@@ -226,12 +254,21 @@ CONFIG_SYN_COOKIES=y | |||
226 | # CONFIG_INET_AH is not set | 254 | # CONFIG_INET_AH is not set |
227 | # CONFIG_INET_ESP is not set | 255 | # CONFIG_INET_ESP is not set |
228 | # CONFIG_INET_IPCOMP is not set | 256 | # CONFIG_INET_IPCOMP is not set |
257 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
229 | # CONFIG_INET_TUNNEL is not set | 258 | # CONFIG_INET_TUNNEL is not set |
259 | CONFIG_INET_XFRM_MODE_TRANSPORT=y | ||
260 | CONFIG_INET_XFRM_MODE_TUNNEL=y | ||
261 | CONFIG_INET_XFRM_MODE_BEET=y | ||
230 | CONFIG_INET_DIAG=y | 262 | CONFIG_INET_DIAG=y |
231 | CONFIG_INET_TCP_DIAG=y | 263 | CONFIG_INET_TCP_DIAG=y |
232 | # CONFIG_TCP_CONG_ADVANCED is not set | 264 | # CONFIG_TCP_CONG_ADVANCED is not set |
233 | CONFIG_TCP_CONG_BIC=y | 265 | CONFIG_TCP_CONG_CUBIC=y |
266 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
267 | # CONFIG_TCP_MD5SIG is not set | ||
234 | # CONFIG_IPV6 is not set | 268 | # CONFIG_IPV6 is not set |
269 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
270 | # CONFIG_INET6_TUNNEL is not set | ||
271 | # CONFIG_NETWORK_SECMARK is not set | ||
235 | # CONFIG_NETFILTER is not set | 272 | # CONFIG_NETFILTER is not set |
236 | 273 | ||
237 | # | 274 | # |
@@ -257,7 +294,6 @@ CONFIG_TCP_CONG_BIC=y | |||
257 | # CONFIG_ATALK is not set | 294 | # CONFIG_ATALK is not set |
258 | # CONFIG_X25 is not set | 295 | # CONFIG_X25 is not set |
259 | # CONFIG_LAPB is not set | 296 | # CONFIG_LAPB is not set |
260 | # CONFIG_NET_DIVERT is not set | ||
261 | # CONFIG_ECONET is not set | 297 | # CONFIG_ECONET is not set |
262 | # CONFIG_WAN_ROUTER is not set | 298 | # CONFIG_WAN_ROUTER is not set |
263 | 299 | ||
@@ -286,6 +322,8 @@ CONFIG_STANDALONE=y | |||
286 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 322 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
287 | CONFIG_FW_LOADER=m | 323 | CONFIG_FW_LOADER=m |
288 | # CONFIG_DEBUG_DRIVER is not set | 324 | # CONFIG_DEBUG_DRIVER is not set |
325 | # CONFIG_DEBUG_DEVRES is not set | ||
326 | # CONFIG_SYS_HYPERVISOR is not set | ||
289 | 327 | ||
290 | # | 328 | # |
291 | # Connector - unified userspace <-> kernelspace linker | 329 | # Connector - unified userspace <-> kernelspace linker |
@@ -329,11 +367,17 @@ CONFIG_BLK_DEV_NBD=m | |||
329 | CONFIG_BLK_DEV_RAM=y | 367 | CONFIG_BLK_DEV_RAM=y |
330 | CONFIG_BLK_DEV_RAM_COUNT=16 | 368 | CONFIG_BLK_DEV_RAM_COUNT=16 |
331 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 369 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
332 | CONFIG_BLK_DEV_INITRD=y | 370 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 |
333 | # CONFIG_CDROM_PKTCDVD is not set | 371 | # CONFIG_CDROM_PKTCDVD is not set |
334 | # CONFIG_ATA_OVER_ETH is not set | 372 | # CONFIG_ATA_OVER_ETH is not set |
335 | 373 | ||
336 | # | 374 | # |
375 | # Misc devices | ||
376 | # | ||
377 | # CONFIG_SGI_IOC4 is not set | ||
378 | # CONFIG_TIFM_CORE is not set | ||
379 | |||
380 | # | ||
337 | # ATA/ATAPI/MFM/RLL support | 381 | # ATA/ATAPI/MFM/RLL support |
338 | # | 382 | # |
339 | CONFIG_IDE=y | 383 | CONFIG_IDE=y |
@@ -350,6 +394,7 @@ CONFIG_BLK_DEV_IDECD=y | |||
350 | # CONFIG_BLK_DEV_IDETAPE is not set | 394 | # CONFIG_BLK_DEV_IDETAPE is not set |
351 | CONFIG_BLK_DEV_IDEFLOPPY=y | 395 | CONFIG_BLK_DEV_IDEFLOPPY=y |
352 | CONFIG_BLK_DEV_IDESCSI=m | 396 | CONFIG_BLK_DEV_IDESCSI=m |
397 | # CONFIG_BLK_DEV_IDEACPI is not set | ||
353 | # CONFIG_IDE_TASK_IOCTL is not set | 398 | # CONFIG_IDE_TASK_IOCTL is not set |
354 | 399 | ||
355 | # | 400 | # |
@@ -376,8 +421,10 @@ CONFIG_BLK_DEV_CMD64X=y | |||
376 | # CONFIG_BLK_DEV_CS5530 is not set | 421 | # CONFIG_BLK_DEV_CS5530 is not set |
377 | # CONFIG_BLK_DEV_HPT34X is not set | 422 | # CONFIG_BLK_DEV_HPT34X is not set |
378 | # CONFIG_BLK_DEV_HPT366 is not set | 423 | # CONFIG_BLK_DEV_HPT366 is not set |
424 | # CONFIG_BLK_DEV_JMICRON is not set | ||
379 | # CONFIG_BLK_DEV_SC1200 is not set | 425 | # CONFIG_BLK_DEV_SC1200 is not set |
380 | CONFIG_BLK_DEV_PIIX=y | 426 | CONFIG_BLK_DEV_PIIX=y |
427 | # CONFIG_BLK_DEV_IT8213 is not set | ||
381 | # CONFIG_BLK_DEV_IT821X is not set | 428 | # CONFIG_BLK_DEV_IT821X is not set |
382 | # CONFIG_BLK_DEV_NS87415 is not set | 429 | # CONFIG_BLK_DEV_NS87415 is not set |
383 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 430 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
@@ -387,6 +434,7 @@ CONFIG_BLK_DEV_PIIX=y | |||
387 | # CONFIG_BLK_DEV_SLC90E66 is not set | 434 | # CONFIG_BLK_DEV_SLC90E66 is not set |
388 | # CONFIG_BLK_DEV_TRM290 is not set | 435 | # CONFIG_BLK_DEV_TRM290 is not set |
389 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 436 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
437 | # CONFIG_BLK_DEV_TC86C001 is not set | ||
390 | # CONFIG_IDE_ARM is not set | 438 | # CONFIG_IDE_ARM is not set |
391 | CONFIG_BLK_DEV_IDEDMA=y | 439 | CONFIG_BLK_DEV_IDEDMA=y |
392 | # CONFIG_IDEDMA_IVB is not set | 440 | # CONFIG_IDEDMA_IVB is not set |
@@ -398,6 +446,8 @@ CONFIG_IDEDMA_AUTO=y | |||
398 | # | 446 | # |
399 | # CONFIG_RAID_ATTRS is not set | 447 | # CONFIG_RAID_ATTRS is not set |
400 | CONFIG_SCSI=y | 448 | CONFIG_SCSI=y |
449 | # CONFIG_SCSI_TGT is not set | ||
450 | CONFIG_SCSI_NETLINK=y | ||
401 | CONFIG_SCSI_PROC_FS=y | 451 | CONFIG_SCSI_PROC_FS=y |
402 | 452 | ||
403 | # | 453 | # |
@@ -417,14 +467,16 @@ CONFIG_CHR_DEV_SG=m | |||
417 | # CONFIG_SCSI_MULTI_LUN is not set | 467 | # CONFIG_SCSI_MULTI_LUN is not set |
418 | # CONFIG_SCSI_CONSTANTS is not set | 468 | # CONFIG_SCSI_CONSTANTS is not set |
419 | # CONFIG_SCSI_LOGGING is not set | 469 | # CONFIG_SCSI_LOGGING is not set |
470 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
420 | 471 | ||
421 | # | 472 | # |
422 | # SCSI Transport Attributes | 473 | # SCSI Transports |
423 | # | 474 | # |
424 | CONFIG_SCSI_SPI_ATTRS=y | 475 | CONFIG_SCSI_SPI_ATTRS=y |
425 | CONFIG_SCSI_FC_ATTRS=y | 476 | CONFIG_SCSI_FC_ATTRS=y |
426 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 477 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
427 | # CONFIG_SCSI_SAS_ATTRS is not set | 478 | # CONFIG_SCSI_SAS_ATTRS is not set |
479 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
428 | 480 | ||
429 | # | 481 | # |
430 | # SCSI low-level drivers | 482 | # SCSI low-level drivers |
@@ -437,29 +489,36 @@ CONFIG_SCSI_FC_ATTRS=y | |||
437 | # CONFIG_SCSI_AIC7XXX is not set | 489 | # CONFIG_SCSI_AIC7XXX is not set |
438 | # CONFIG_SCSI_AIC7XXX_OLD is not set | 490 | # CONFIG_SCSI_AIC7XXX_OLD is not set |
439 | # CONFIG_SCSI_AIC79XX is not set | 491 | # CONFIG_SCSI_AIC79XX is not set |
492 | # CONFIG_SCSI_AIC94XX is not set | ||
493 | # CONFIG_SCSI_ARCMSR is not set | ||
440 | # CONFIG_MEGARAID_NEWGEN is not set | 494 | # CONFIG_MEGARAID_NEWGEN is not set |
441 | # CONFIG_MEGARAID_LEGACY is not set | 495 | # CONFIG_MEGARAID_LEGACY is not set |
442 | # CONFIG_MEGARAID_SAS is not set | 496 | # CONFIG_MEGARAID_SAS is not set |
443 | # CONFIG_SCSI_SATA is not set | 497 | # CONFIG_SCSI_HPTIOP is not set |
444 | # CONFIG_SCSI_DMX3191D is not set | 498 | # CONFIG_SCSI_DMX3191D is not set |
445 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 499 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
446 | # CONFIG_SCSI_IPS is not set | 500 | # CONFIG_SCSI_IPS is not set |
447 | # CONFIG_SCSI_INITIO is not set | 501 | # CONFIG_SCSI_INITIO is not set |
448 | # CONFIG_SCSI_INIA100 is not set | 502 | # CONFIG_SCSI_INIA100 is not set |
503 | # CONFIG_SCSI_STEX is not set | ||
449 | CONFIG_SCSI_SYM53C8XX_2=y | 504 | CONFIG_SCSI_SYM53C8XX_2=y |
450 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 | 505 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 |
451 | CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 | 506 | CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 |
452 | CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 | 507 | CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 |
453 | # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set | 508 | CONFIG_SCSI_SYM53C8XX_MMIO=y |
454 | # CONFIG_SCSI_IPR is not set | ||
455 | CONFIG_SCSI_QLOGIC_FC=y | ||
456 | # CONFIG_SCSI_QLOGIC_FC_FIRMWARE is not set | ||
457 | CONFIG_SCSI_QLOGIC_1280=y | 509 | CONFIG_SCSI_QLOGIC_1280=y |
458 | # CONFIG_SCSI_QLA_FC is not set | 510 | # CONFIG_SCSI_QLA_FC is not set |
511 | # CONFIG_SCSI_QLA_ISCSI is not set | ||
459 | # CONFIG_SCSI_LPFC is not set | 512 | # CONFIG_SCSI_LPFC is not set |
460 | # CONFIG_SCSI_DC395x is not set | 513 | # CONFIG_SCSI_DC395x is not set |
461 | # CONFIG_SCSI_DC390T is not set | 514 | # CONFIG_SCSI_DC390T is not set |
462 | # CONFIG_SCSI_DEBUG is not set | 515 | # CONFIG_SCSI_DEBUG is not set |
516 | # CONFIG_SCSI_SRP is not set | ||
517 | |||
518 | # | ||
519 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
520 | # | ||
521 | # CONFIG_ATA is not set | ||
463 | 522 | ||
464 | # | 523 | # |
465 | # Multi-device support (RAID and LVM) | 524 | # Multi-device support (RAID and LVM) |
@@ -470,11 +529,11 @@ CONFIG_MD_LINEAR=m | |||
470 | CONFIG_MD_RAID0=m | 529 | CONFIG_MD_RAID0=m |
471 | CONFIG_MD_RAID1=m | 530 | CONFIG_MD_RAID1=m |
472 | # CONFIG_MD_RAID10 is not set | 531 | # CONFIG_MD_RAID10 is not set |
473 | CONFIG_MD_RAID5=m | 532 | # CONFIG_MD_RAID456 is not set |
474 | CONFIG_MD_RAID6=m | ||
475 | CONFIG_MD_MULTIPATH=m | 533 | CONFIG_MD_MULTIPATH=m |
476 | # CONFIG_MD_FAULTY is not set | 534 | # CONFIG_MD_FAULTY is not set |
477 | CONFIG_BLK_DEV_DM=m | 535 | CONFIG_BLK_DEV_DM=m |
536 | # CONFIG_DM_DEBUG is not set | ||
478 | CONFIG_DM_CRYPT=m | 537 | CONFIG_DM_CRYPT=m |
479 | CONFIG_DM_SNAPSHOT=m | 538 | CONFIG_DM_SNAPSHOT=m |
480 | CONFIG_DM_MIRROR=m | 539 | CONFIG_DM_MIRROR=m |
@@ -563,6 +622,7 @@ CONFIG_E100=m | |||
563 | # CONFIG_EPIC100 is not set | 622 | # CONFIG_EPIC100 is not set |
564 | # CONFIG_SUNDANCE is not set | 623 | # CONFIG_SUNDANCE is not set |
565 | # CONFIG_VIA_RHINE is not set | 624 | # CONFIG_VIA_RHINE is not set |
625 | # CONFIG_SC92031 is not set | ||
566 | 626 | ||
567 | # | 627 | # |
568 | # Ethernet (1000 Mbit) | 628 | # Ethernet (1000 Mbit) |
@@ -583,13 +643,18 @@ CONFIG_E1000=y | |||
583 | # CONFIG_VIA_VELOCITY is not set | 643 | # CONFIG_VIA_VELOCITY is not set |
584 | CONFIG_TIGON3=y | 644 | CONFIG_TIGON3=y |
585 | # CONFIG_BNX2 is not set | 645 | # CONFIG_BNX2 is not set |
646 | # CONFIG_QLA3XXX is not set | ||
647 | # CONFIG_ATL1 is not set | ||
586 | 648 | ||
587 | # | 649 | # |
588 | # Ethernet (10000 Mbit) | 650 | # Ethernet (10000 Mbit) |
589 | # | 651 | # |
590 | # CONFIG_CHELSIO_T1 is not set | 652 | # CONFIG_CHELSIO_T1 is not set |
653 | # CONFIG_CHELSIO_T3 is not set | ||
591 | # CONFIG_IXGB is not set | 654 | # CONFIG_IXGB is not set |
592 | # CONFIG_S2IO is not set | 655 | # CONFIG_S2IO is not set |
656 | # CONFIG_MYRI10GE is not set | ||
657 | # CONFIG_NETXEN_NIC is not set | ||
593 | 658 | ||
594 | # | 659 | # |
595 | # Token Ring devices | 660 | # Token Ring devices |
@@ -631,6 +696,7 @@ CONFIG_NET_POLL_CONTROLLER=y | |||
631 | # Input device support | 696 | # Input device support |
632 | # | 697 | # |
633 | CONFIG_INPUT=y | 698 | CONFIG_INPUT=y |
699 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
634 | 700 | ||
635 | # | 701 | # |
636 | # Userland interfaces | 702 | # Userland interfaces |
@@ -653,6 +719,7 @@ CONFIG_KEYBOARD_ATKBD=y | |||
653 | # CONFIG_KEYBOARD_LKKBD is not set | 719 | # CONFIG_KEYBOARD_LKKBD is not set |
654 | # CONFIG_KEYBOARD_XTKBD is not set | 720 | # CONFIG_KEYBOARD_XTKBD is not set |
655 | # CONFIG_KEYBOARD_NEWTON is not set | 721 | # CONFIG_KEYBOARD_NEWTON is not set |
722 | # CONFIG_KEYBOARD_STOWAWAY is not set | ||
656 | CONFIG_INPUT_MOUSE=y | 723 | CONFIG_INPUT_MOUSE=y |
657 | CONFIG_MOUSE_PS2=y | 724 | CONFIG_MOUSE_PS2=y |
658 | # CONFIG_MOUSE_SERIAL is not set | 725 | # CONFIG_MOUSE_SERIAL is not set |
@@ -682,6 +749,7 @@ CONFIG_GAMEPORT=m | |||
682 | CONFIG_VT=y | 749 | CONFIG_VT=y |
683 | CONFIG_VT_CONSOLE=y | 750 | CONFIG_VT_CONSOLE=y |
684 | CONFIG_HW_CONSOLE=y | 751 | CONFIG_HW_CONSOLE=y |
752 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
685 | CONFIG_SERIAL_NONSTANDARD=y | 753 | CONFIG_SERIAL_NONSTANDARD=y |
686 | # CONFIG_COMPUTONE is not set | 754 | # CONFIG_COMPUTONE is not set |
687 | # CONFIG_ROCKETPORT is not set | 755 | # CONFIG_ROCKETPORT is not set |
@@ -689,12 +757,14 @@ CONFIG_SERIAL_NONSTANDARD=y | |||
689 | # CONFIG_DIGIEPCA is not set | 757 | # CONFIG_DIGIEPCA is not set |
690 | # CONFIG_MOXA_INTELLIO is not set | 758 | # CONFIG_MOXA_INTELLIO is not set |
691 | # CONFIG_MOXA_SMARTIO is not set | 759 | # CONFIG_MOXA_SMARTIO is not set |
760 | # CONFIG_MOXA_SMARTIO_NEW is not set | ||
692 | # CONFIG_ISI is not set | 761 | # CONFIG_ISI is not set |
693 | # CONFIG_SYNCLINKMP is not set | 762 | # CONFIG_SYNCLINKMP is not set |
694 | # CONFIG_SYNCLINK_GT is not set | 763 | # CONFIG_SYNCLINK_GT is not set |
695 | # CONFIG_N_HDLC is not set | 764 | # CONFIG_N_HDLC is not set |
696 | # CONFIG_SPECIALIX is not set | 765 | # CONFIG_SPECIALIX is not set |
697 | # CONFIG_SX is not set | 766 | # CONFIG_SX is not set |
767 | # CONFIG_RIO is not set | ||
698 | # CONFIG_STALDRV is not set | 768 | # CONFIG_STALDRV is not set |
699 | 769 | ||
700 | # | 770 | # |
@@ -702,7 +772,8 @@ CONFIG_SERIAL_NONSTANDARD=y | |||
702 | # | 772 | # |
703 | CONFIG_SERIAL_8250=y | 773 | CONFIG_SERIAL_8250=y |
704 | CONFIG_SERIAL_8250_CONSOLE=y | 774 | CONFIG_SERIAL_8250_CONSOLE=y |
705 | CONFIG_SERIAL_8250_ACPI=y | 775 | CONFIG_SERIAL_8250_PCI=y |
776 | CONFIG_SERIAL_8250_PNP=y | ||
706 | CONFIG_SERIAL_8250_NR_UARTS=6 | 777 | CONFIG_SERIAL_8250_NR_UARTS=6 |
707 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 778 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
708 | CONFIG_SERIAL_8250_EXTENDED=y | 779 | CONFIG_SERIAL_8250_EXTENDED=y |
@@ -734,10 +805,6 @@ CONFIG_EFI_RTC=y | |||
734 | # CONFIG_DTLK is not set | 805 | # CONFIG_DTLK is not set |
735 | # CONFIG_R3964 is not set | 806 | # CONFIG_R3964 is not set |
736 | # CONFIG_APPLICOM is not set | 807 | # CONFIG_APPLICOM is not set |
737 | |||
738 | # | ||
739 | # Ftape, the floppy tape device driver | ||
740 | # | ||
741 | CONFIG_AGP=m | 808 | CONFIG_AGP=m |
742 | CONFIG_AGP_I460=m | 809 | CONFIG_AGP_I460=m |
743 | CONFIG_DRM=m | 810 | CONFIG_DRM=m |
@@ -759,7 +826,6 @@ CONFIG_HPET_MMAP=y | |||
759 | # TPM devices | 826 | # TPM devices |
760 | # | 827 | # |
761 | # CONFIG_TCG_TPM is not set | 828 | # CONFIG_TCG_TPM is not set |
762 | # CONFIG_TELCLOCK is not set | ||
763 | 829 | ||
764 | # | 830 | # |
765 | # I2C support | 831 | # I2C support |
@@ -782,16 +848,16 @@ CONFIG_HPET_MMAP=y | |||
782 | # | 848 | # |
783 | CONFIG_HWMON=y | 849 | CONFIG_HWMON=y |
784 | # CONFIG_HWMON_VID is not set | 850 | # CONFIG_HWMON_VID is not set |
851 | # CONFIG_SENSORS_ABITUGURU is not set | ||
785 | # CONFIG_SENSORS_F71805F is not set | 852 | # CONFIG_SENSORS_F71805F is not set |
853 | # CONFIG_SENSORS_PC87427 is not set | ||
854 | # CONFIG_SENSORS_VT1211 is not set | ||
786 | # CONFIG_HWMON_DEBUG_CHIP is not set | 855 | # CONFIG_HWMON_DEBUG_CHIP is not set |
787 | 856 | ||
788 | # | 857 | # |
789 | # Misc devices | 858 | # Multifunction device drivers |
790 | # | ||
791 | |||
792 | # | ||
793 | # Multimedia Capabilities Port drivers | ||
794 | # | 859 | # |
860 | # CONFIG_MFD_SM501 is not set | ||
795 | 861 | ||
796 | # | 862 | # |
797 | # Multimedia devices | 863 | # Multimedia devices |
@@ -802,16 +868,19 @@ CONFIG_HWMON=y | |||
802 | # Digital Video Broadcasting Devices | 868 | # Digital Video Broadcasting Devices |
803 | # | 869 | # |
804 | # CONFIG_DVB is not set | 870 | # CONFIG_DVB is not set |
871 | # CONFIG_USB_DABUSB is not set | ||
805 | 872 | ||
806 | # | 873 | # |
807 | # Graphics support | 874 | # Graphics support |
808 | # | 875 | # |
876 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
809 | # CONFIG_FB is not set | 877 | # CONFIG_FB is not set |
810 | 878 | ||
811 | # | 879 | # |
812 | # Console display driver support | 880 | # Console display driver support |
813 | # | 881 | # |
814 | CONFIG_VGA_CONSOLE=y | 882 | CONFIG_VGA_CONSOLE=y |
883 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set | ||
815 | CONFIG_DUMMY_CONSOLE=y | 884 | CONFIG_DUMMY_CONSOLE=y |
816 | 885 | ||
817 | # | 886 | # |
@@ -820,10 +889,17 @@ CONFIG_DUMMY_CONSOLE=y | |||
820 | # CONFIG_SOUND is not set | 889 | # CONFIG_SOUND is not set |
821 | 890 | ||
822 | # | 891 | # |
892 | # HID Devices | ||
893 | # | ||
894 | CONFIG_HID=y | ||
895 | # CONFIG_HID_DEBUG is not set | ||
896 | |||
897 | # | ||
823 | # USB support | 898 | # USB support |
824 | # | 899 | # |
825 | CONFIG_USB_ARCH_HAS_HCD=y | 900 | CONFIG_USB_ARCH_HAS_HCD=y |
826 | CONFIG_USB_ARCH_HAS_OHCI=y | 901 | CONFIG_USB_ARCH_HAS_OHCI=y |
902 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
827 | CONFIG_USB=y | 903 | CONFIG_USB=y |
828 | # CONFIG_USB_DEBUG is not set | 904 | # CONFIG_USB_DEBUG is not set |
829 | 905 | ||
@@ -831,7 +907,6 @@ CONFIG_USB=y | |||
831 | # Miscellaneous USB options | 907 | # Miscellaneous USB options |
832 | # | 908 | # |
833 | CONFIG_USB_DEVICEFS=y | 909 | CONFIG_USB_DEVICEFS=y |
834 | # CONFIG_USB_BANDWIDTH is not set | ||
835 | # CONFIG_USB_DYNAMIC_MINORS is not set | 910 | # CONFIG_USB_DYNAMIC_MINORS is not set |
836 | # CONFIG_USB_SUSPEND is not set | 911 | # CONFIG_USB_SUSPEND is not set |
837 | # CONFIG_USB_OTG is not set | 912 | # CONFIG_USB_OTG is not set |
@@ -842,9 +917,12 @@ CONFIG_USB_DEVICEFS=y | |||
842 | CONFIG_USB_EHCI_HCD=m | 917 | CONFIG_USB_EHCI_HCD=m |
843 | # CONFIG_USB_EHCI_SPLIT_ISO is not set | 918 | # CONFIG_USB_EHCI_SPLIT_ISO is not set |
844 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | 919 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set |
920 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | ||
921 | # CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set | ||
845 | # CONFIG_USB_ISP116X_HCD is not set | 922 | # CONFIG_USB_ISP116X_HCD is not set |
846 | CONFIG_USB_OHCI_HCD=m | 923 | CONFIG_USB_OHCI_HCD=m |
847 | # CONFIG_USB_OHCI_BIG_ENDIAN is not set | 924 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
925 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
848 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | 926 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y |
849 | CONFIG_USB_UHCI_HCD=y | 927 | CONFIG_USB_UHCI_HCD=y |
850 | # CONFIG_USB_SL811_HCD is not set | 928 | # CONFIG_USB_SL811_HCD is not set |
@@ -873,13 +951,13 @@ CONFIG_USB_STORAGE=m | |||
873 | # CONFIG_USB_STORAGE_SDDR55 is not set | 951 | # CONFIG_USB_STORAGE_SDDR55 is not set |
874 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 952 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
875 | # CONFIG_USB_STORAGE_ALAUDA is not set | 953 | # CONFIG_USB_STORAGE_ALAUDA is not set |
954 | # CONFIG_USB_STORAGE_KARMA is not set | ||
876 | # CONFIG_USB_LIBUSUAL is not set | 955 | # CONFIG_USB_LIBUSUAL is not set |
877 | 956 | ||
878 | # | 957 | # |
879 | # USB Input Devices | 958 | # USB Input Devices |
880 | # | 959 | # |
881 | CONFIG_USB_HID=y | 960 | CONFIG_USB_HID=y |
882 | CONFIG_USB_HIDINPUT=y | ||
883 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 961 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set |
884 | # CONFIG_HID_FF is not set | 962 | # CONFIG_HID_FF is not set |
885 | # CONFIG_USB_HIDDEV is not set | 963 | # CONFIG_USB_HIDDEV is not set |
@@ -888,15 +966,14 @@ CONFIG_USB_HIDINPUT=y | |||
888 | # CONFIG_USB_ACECAD is not set | 966 | # CONFIG_USB_ACECAD is not set |
889 | # CONFIG_USB_KBTAB is not set | 967 | # CONFIG_USB_KBTAB is not set |
890 | # CONFIG_USB_POWERMATE is not set | 968 | # CONFIG_USB_POWERMATE is not set |
891 | # CONFIG_USB_MTOUCH is not set | 969 | # CONFIG_USB_TOUCHSCREEN is not set |
892 | # CONFIG_USB_ITMTOUCH is not set | ||
893 | # CONFIG_USB_EGALAX is not set | ||
894 | # CONFIG_USB_YEALINK is not set | 970 | # CONFIG_USB_YEALINK is not set |
895 | # CONFIG_USB_XPAD is not set | 971 | # CONFIG_USB_XPAD is not set |
896 | # CONFIG_USB_ATI_REMOTE is not set | 972 | # CONFIG_USB_ATI_REMOTE is not set |
897 | # CONFIG_USB_ATI_REMOTE2 is not set | 973 | # CONFIG_USB_ATI_REMOTE2 is not set |
898 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 974 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
899 | # CONFIG_USB_APPLETOUCH is not set | 975 | # CONFIG_USB_APPLETOUCH is not set |
976 | # CONFIG_USB_GTCO is not set | ||
900 | 977 | ||
901 | # | 978 | # |
902 | # USB Imaging devices | 979 | # USB Imaging devices |
@@ -905,21 +982,13 @@ CONFIG_USB_HIDINPUT=y | |||
905 | # CONFIG_USB_MICROTEK is not set | 982 | # CONFIG_USB_MICROTEK is not set |
906 | 983 | ||
907 | # | 984 | # |
908 | # USB Multimedia devices | ||
909 | # | ||
910 | # CONFIG_USB_DABUSB is not set | ||
911 | |||
912 | # | ||
913 | # Video4Linux support is needed for USB Multimedia device support | ||
914 | # | ||
915 | |||
916 | # | ||
917 | # USB Network Adapters | 985 | # USB Network Adapters |
918 | # | 986 | # |
919 | # CONFIG_USB_CATC is not set | 987 | # CONFIG_USB_CATC is not set |
920 | # CONFIG_USB_KAWETH is not set | 988 | # CONFIG_USB_KAWETH is not set |
921 | # CONFIG_USB_PEGASUS is not set | 989 | # CONFIG_USB_PEGASUS is not set |
922 | # CONFIG_USB_RTL8150 is not set | 990 | # CONFIG_USB_RTL8150 is not set |
991 | # CONFIG_USB_USBNET_MII is not set | ||
923 | # CONFIG_USB_USBNET is not set | 992 | # CONFIG_USB_USBNET is not set |
924 | # CONFIG_USB_MON is not set | 993 | # CONFIG_USB_MON is not set |
925 | 994 | ||
@@ -937,17 +1006,23 @@ CONFIG_USB_HIDINPUT=y | |||
937 | # | 1006 | # |
938 | # CONFIG_USB_EMI62 is not set | 1007 | # CONFIG_USB_EMI62 is not set |
939 | # CONFIG_USB_EMI26 is not set | 1008 | # CONFIG_USB_EMI26 is not set |
1009 | # CONFIG_USB_ADUTUX is not set | ||
940 | # CONFIG_USB_AUERSWALD is not set | 1010 | # CONFIG_USB_AUERSWALD is not set |
941 | # CONFIG_USB_RIO500 is not set | 1011 | # CONFIG_USB_RIO500 is not set |
942 | # CONFIG_USB_LEGOTOWER is not set | 1012 | # CONFIG_USB_LEGOTOWER is not set |
943 | # CONFIG_USB_LCD is not set | 1013 | # CONFIG_USB_LCD is not set |
1014 | # CONFIG_USB_BERRY_CHARGE is not set | ||
944 | # CONFIG_USB_LED is not set | 1015 | # CONFIG_USB_LED is not set |
1016 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
945 | # CONFIG_USB_CYTHERM is not set | 1017 | # CONFIG_USB_CYTHERM is not set |
946 | # CONFIG_USB_PHIDGETKIT is not set | 1018 | # CONFIG_USB_PHIDGET is not set |
947 | # CONFIG_USB_PHIDGETSERVO is not set | ||
948 | # CONFIG_USB_IDMOUSE is not set | 1019 | # CONFIG_USB_IDMOUSE is not set |
1020 | # CONFIG_USB_FTDI_ELAN is not set | ||
1021 | # CONFIG_USB_APPLEDISPLAY is not set | ||
949 | # CONFIG_USB_SISUSBVGA is not set | 1022 | # CONFIG_USB_SISUSBVGA is not set |
950 | # CONFIG_USB_LD is not set | 1023 | # CONFIG_USB_LD is not set |
1024 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1025 | # CONFIG_USB_IOWARRIOR is not set | ||
951 | # CONFIG_USB_TEST is not set | 1026 | # CONFIG_USB_TEST is not set |
952 | 1027 | ||
953 | # | 1028 | # |
@@ -965,15 +1040,55 @@ CONFIG_USB_HIDINPUT=y | |||
965 | # CONFIG_MMC is not set | 1040 | # CONFIG_MMC is not set |
966 | 1041 | ||
967 | # | 1042 | # |
1043 | # LED devices | ||
1044 | # | ||
1045 | # CONFIG_NEW_LEDS is not set | ||
1046 | |||
1047 | # | ||
1048 | # LED drivers | ||
1049 | # | ||
1050 | |||
1051 | # | ||
1052 | # LED Triggers | ||
1053 | # | ||
1054 | |||
1055 | # | ||
968 | # InfiniBand support | 1056 | # InfiniBand support |
969 | # | 1057 | # |
970 | # CONFIG_INFINIBAND is not set | 1058 | # CONFIG_INFINIBAND is not set |
971 | 1059 | ||
972 | # | 1060 | # |
973 | # EDAC - error detection and reporting (RAS) | 1061 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) |
1062 | # | ||
1063 | |||
1064 | # | ||
1065 | # Real Time Clock | ||
1066 | # | ||
1067 | # CONFIG_RTC_CLASS is not set | ||
1068 | |||
1069 | # | ||
1070 | # DMA Engine support | ||
1071 | # | ||
1072 | # CONFIG_DMA_ENGINE is not set | ||
1073 | |||
1074 | # | ||
1075 | # DMA Clients | ||
974 | # | 1076 | # |
975 | 1077 | ||
976 | # | 1078 | # |
1079 | # DMA Devices | ||
1080 | # | ||
1081 | |||
1082 | # | ||
1083 | # Auxiliary Display support | ||
1084 | # | ||
1085 | |||
1086 | # | ||
1087 | # Virtualization | ||
1088 | # | ||
1089 | # CONFIG_MSPEC is not set | ||
1090 | |||
1091 | # | ||
977 | # File systems | 1092 | # File systems |
978 | # | 1093 | # |
979 | CONFIG_EXT2_FS=y | 1094 | CONFIG_EXT2_FS=y |
@@ -985,6 +1100,7 @@ CONFIG_EXT3_FS=y | |||
985 | CONFIG_EXT3_FS_XATTR=y | 1100 | CONFIG_EXT3_FS_XATTR=y |
986 | CONFIG_EXT3_FS_POSIX_ACL=y | 1101 | CONFIG_EXT3_FS_POSIX_ACL=y |
987 | CONFIG_EXT3_FS_SECURITY=y | 1102 | CONFIG_EXT3_FS_SECURITY=y |
1103 | # CONFIG_EXT4DEV_FS is not set | ||
988 | CONFIG_JBD=y | 1104 | CONFIG_JBD=y |
989 | # CONFIG_JBD_DEBUG is not set | 1105 | # CONFIG_JBD_DEBUG is not set |
990 | CONFIG_FS_MBCACHE=y | 1106 | CONFIG_FS_MBCACHE=y |
@@ -997,15 +1113,16 @@ CONFIG_REISERFS_FS_SECURITY=y | |||
997 | # CONFIG_JFS_FS is not set | 1113 | # CONFIG_JFS_FS is not set |
998 | CONFIG_FS_POSIX_ACL=y | 1114 | CONFIG_FS_POSIX_ACL=y |
999 | CONFIG_XFS_FS=y | 1115 | CONFIG_XFS_FS=y |
1000 | CONFIG_XFS_EXPORT=y | ||
1001 | # CONFIG_XFS_QUOTA is not set | 1116 | # CONFIG_XFS_QUOTA is not set |
1002 | # CONFIG_XFS_SECURITY is not set | 1117 | # CONFIG_XFS_SECURITY is not set |
1003 | # CONFIG_XFS_POSIX_ACL is not set | 1118 | # CONFIG_XFS_POSIX_ACL is not set |
1004 | # CONFIG_XFS_RT is not set | 1119 | # CONFIG_XFS_RT is not set |
1120 | # CONFIG_GFS2_FS is not set | ||
1005 | # CONFIG_OCFS2_FS is not set | 1121 | # CONFIG_OCFS2_FS is not set |
1006 | # CONFIG_MINIX_FS is not set | 1122 | # CONFIG_MINIX_FS is not set |
1007 | # CONFIG_ROMFS_FS is not set | 1123 | # CONFIG_ROMFS_FS is not set |
1008 | CONFIG_INOTIFY=y | 1124 | CONFIG_INOTIFY=y |
1125 | CONFIG_INOTIFY_USER=y | ||
1009 | # CONFIG_QUOTA is not set | 1126 | # CONFIG_QUOTA is not set |
1010 | CONFIG_DNOTIFY=y | 1127 | CONFIG_DNOTIFY=y |
1011 | CONFIG_AUTOFS_FS=y | 1128 | CONFIG_AUTOFS_FS=y |
@@ -1038,12 +1155,13 @@ CONFIG_NTFS_FS=m | |||
1038 | # | 1155 | # |
1039 | CONFIG_PROC_FS=y | 1156 | CONFIG_PROC_FS=y |
1040 | CONFIG_PROC_KCORE=y | 1157 | CONFIG_PROC_KCORE=y |
1158 | CONFIG_PROC_SYSCTL=y | ||
1041 | CONFIG_SYSFS=y | 1159 | CONFIG_SYSFS=y |
1042 | CONFIG_TMPFS=y | 1160 | CONFIG_TMPFS=y |
1161 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
1043 | CONFIG_HUGETLBFS=y | 1162 | CONFIG_HUGETLBFS=y |
1044 | CONFIG_HUGETLB_PAGE=y | 1163 | CONFIG_HUGETLB_PAGE=y |
1045 | CONFIG_RAMFS=y | 1164 | CONFIG_RAMFS=y |
1046 | # CONFIG_RELAYFS_FS is not set | ||
1047 | # CONFIG_CONFIGFS_FS is not set | 1165 | # CONFIG_CONFIGFS_FS is not set |
1048 | 1166 | ||
1049 | # | 1167 | # |
@@ -1078,7 +1196,7 @@ CONFIG_NFSD_V4=y | |||
1078 | CONFIG_NFSD_TCP=y | 1196 | CONFIG_NFSD_TCP=y |
1079 | CONFIG_LOCKD=m | 1197 | CONFIG_LOCKD=m |
1080 | CONFIG_LOCKD_V4=y | 1198 | CONFIG_LOCKD_V4=y |
1081 | CONFIG_EXPORTFS=y | 1199 | CONFIG_EXPORTFS=m |
1082 | CONFIG_NFS_COMMON=y | 1200 | CONFIG_NFS_COMMON=y |
1083 | CONFIG_SUNRPC=m | 1201 | CONFIG_SUNRPC=m |
1084 | CONFIG_SUNRPC_GSS=m | 1202 | CONFIG_SUNRPC_GSS=m |
@@ -1089,7 +1207,9 @@ CONFIG_SMB_NLS_DEFAULT=y | |||
1089 | CONFIG_SMB_NLS_REMOTE="cp437" | 1207 | CONFIG_SMB_NLS_REMOTE="cp437" |
1090 | CONFIG_CIFS=m | 1208 | CONFIG_CIFS=m |
1091 | # CONFIG_CIFS_STATS is not set | 1209 | # CONFIG_CIFS_STATS is not set |
1210 | # CONFIG_CIFS_WEAK_PW_HASH is not set | ||
1092 | # CONFIG_CIFS_XATTR is not set | 1211 | # CONFIG_CIFS_XATTR is not set |
1212 | # CONFIG_CIFS_DEBUG2 is not set | ||
1093 | # CONFIG_CIFS_EXPERIMENTAL is not set | 1213 | # CONFIG_CIFS_EXPERIMENTAL is not set |
1094 | # CONFIG_NCP_FS is not set | 1214 | # CONFIG_NCP_FS is not set |
1095 | # CONFIG_CODA_FS is not set | 1215 | # CONFIG_CODA_FS is not set |
@@ -1162,15 +1282,25 @@ CONFIG_NLS_KOI8_U=m | |||
1162 | CONFIG_NLS_UTF8=m | 1282 | CONFIG_NLS_UTF8=m |
1163 | 1283 | ||
1164 | # | 1284 | # |
1285 | # Distributed Lock Manager | ||
1286 | # | ||
1287 | # CONFIG_DLM is not set | ||
1288 | |||
1289 | # | ||
1165 | # Library routines | 1290 | # Library routines |
1166 | # | 1291 | # |
1292 | CONFIG_BITREVERSE=y | ||
1167 | # CONFIG_CRC_CCITT is not set | 1293 | # CONFIG_CRC_CCITT is not set |
1168 | # CONFIG_CRC16 is not set | 1294 | # CONFIG_CRC16 is not set |
1169 | CONFIG_CRC32=y | 1295 | CONFIG_CRC32=y |
1170 | # CONFIG_LIBCRC32C is not set | 1296 | # CONFIG_LIBCRC32C is not set |
1297 | CONFIG_PLIST=y | ||
1298 | CONFIG_HAS_IOMEM=y | ||
1299 | CONFIG_HAS_IOPORT=y | ||
1171 | CONFIG_GENERIC_HARDIRQS=y | 1300 | CONFIG_GENERIC_HARDIRQS=y |
1172 | CONFIG_GENERIC_IRQ_PROBE=y | 1301 | CONFIG_GENERIC_IRQ_PROBE=y |
1173 | CONFIG_GENERIC_PENDING_IRQ=y | 1302 | CONFIG_GENERIC_PENDING_IRQ=y |
1303 | CONFIG_IRQ_PER_CPU=y | ||
1174 | 1304 | ||
1175 | # | 1305 | # |
1176 | # Instrumentation Support | 1306 | # Instrumentation Support |
@@ -1182,21 +1312,31 @@ CONFIG_GENERIC_PENDING_IRQ=y | |||
1182 | # Kernel hacking | 1312 | # Kernel hacking |
1183 | # | 1313 | # |
1184 | # CONFIG_PRINTK_TIME is not set | 1314 | # CONFIG_PRINTK_TIME is not set |
1315 | CONFIG_ENABLE_MUST_CHECK=y | ||
1185 | CONFIG_MAGIC_SYSRQ=y | 1316 | CONFIG_MAGIC_SYSRQ=y |
1317 | # CONFIG_UNUSED_SYMBOLS is not set | ||
1318 | # CONFIG_DEBUG_FS is not set | ||
1319 | # CONFIG_HEADERS_CHECK is not set | ||
1186 | CONFIG_DEBUG_KERNEL=y | 1320 | CONFIG_DEBUG_KERNEL=y |
1321 | # CONFIG_DEBUG_SHIRQ is not set | ||
1187 | CONFIG_LOG_BUF_SHIFT=20 | 1322 | CONFIG_LOG_BUF_SHIFT=20 |
1188 | CONFIG_DETECT_SOFTLOCKUP=y | 1323 | CONFIG_DETECT_SOFTLOCKUP=y |
1189 | # CONFIG_SCHEDSTATS is not set | 1324 | # CONFIG_SCHEDSTATS is not set |
1325 | # CONFIG_TIMER_STATS is not set | ||
1190 | # CONFIG_DEBUG_SLAB is not set | 1326 | # CONFIG_DEBUG_SLAB is not set |
1191 | CONFIG_DEBUG_MUTEXES=y | 1327 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1328 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1192 | # CONFIG_DEBUG_SPINLOCK is not set | 1329 | # CONFIG_DEBUG_SPINLOCK is not set |
1330 | CONFIG_DEBUG_MUTEXES=y | ||
1193 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | 1331 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set |
1332 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1194 | # CONFIG_DEBUG_KOBJECT is not set | 1333 | # CONFIG_DEBUG_KOBJECT is not set |
1195 | # CONFIG_DEBUG_INFO is not set | 1334 | # CONFIG_DEBUG_INFO is not set |
1196 | # CONFIG_DEBUG_FS is not set | ||
1197 | # CONFIG_DEBUG_VM is not set | 1335 | # CONFIG_DEBUG_VM is not set |
1336 | # CONFIG_DEBUG_LIST is not set | ||
1198 | CONFIG_FORCED_INLINING=y | 1337 | CONFIG_FORCED_INLINING=y |
1199 | # CONFIG_RCU_TORTURE_TEST is not set | 1338 | # CONFIG_RCU_TORTURE_TEST is not set |
1339 | # CONFIG_FAULT_INJECTION is not set | ||
1200 | CONFIG_IA64_GRANULE_16MB=y | 1340 | CONFIG_IA64_GRANULE_16MB=y |
1201 | # CONFIG_IA64_GRANULE_64MB is not set | 1341 | # CONFIG_IA64_GRANULE_64MB is not set |
1202 | # CONFIG_IA64_PRINT_HAZARDS is not set | 1342 | # CONFIG_IA64_PRINT_HAZARDS is not set |
@@ -1215,7 +1355,11 @@ CONFIG_SYSVIPC_COMPAT=y | |||
1215 | # Cryptographic options | 1355 | # Cryptographic options |
1216 | # | 1356 | # |
1217 | CONFIG_CRYPTO=y | 1357 | CONFIG_CRYPTO=y |
1358 | CONFIG_CRYPTO_ALGAPI=y | ||
1359 | CONFIG_CRYPTO_BLKCIPHER=m | ||
1360 | CONFIG_CRYPTO_MANAGER=m | ||
1218 | # CONFIG_CRYPTO_HMAC is not set | 1361 | # CONFIG_CRYPTO_HMAC is not set |
1362 | # CONFIG_CRYPTO_XCBC is not set | ||
1219 | # CONFIG_CRYPTO_NULL is not set | 1363 | # CONFIG_CRYPTO_NULL is not set |
1220 | # CONFIG_CRYPTO_MD4 is not set | 1364 | # CONFIG_CRYPTO_MD4 is not set |
1221 | CONFIG_CRYPTO_MD5=y | 1365 | CONFIG_CRYPTO_MD5=y |
@@ -1224,7 +1368,13 @@ CONFIG_CRYPTO_MD5=y | |||
1224 | # CONFIG_CRYPTO_SHA512 is not set | 1368 | # CONFIG_CRYPTO_SHA512 is not set |
1225 | # CONFIG_CRYPTO_WP512 is not set | 1369 | # CONFIG_CRYPTO_WP512 is not set |
1226 | # CONFIG_CRYPTO_TGR192 is not set | 1370 | # CONFIG_CRYPTO_TGR192 is not set |
1371 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1372 | CONFIG_CRYPTO_ECB=m | ||
1373 | CONFIG_CRYPTO_CBC=m | ||
1374 | CONFIG_CRYPTO_PCBC=m | ||
1375 | # CONFIG_CRYPTO_LRW is not set | ||
1227 | CONFIG_CRYPTO_DES=m | 1376 | CONFIG_CRYPTO_DES=m |
1377 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1228 | # CONFIG_CRYPTO_BLOWFISH is not set | 1378 | # CONFIG_CRYPTO_BLOWFISH is not set |
1229 | # CONFIG_CRYPTO_TWOFISH is not set | 1379 | # CONFIG_CRYPTO_TWOFISH is not set |
1230 | # CONFIG_CRYPTO_SERPENT is not set | 1380 | # CONFIG_CRYPTO_SERPENT is not set |
@@ -1238,6 +1388,7 @@ CONFIG_CRYPTO_DES=m | |||
1238 | # CONFIG_CRYPTO_DEFLATE is not set | 1388 | # CONFIG_CRYPTO_DEFLATE is not set |
1239 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1389 | # CONFIG_CRYPTO_MICHAEL_MIC is not set |
1240 | # CONFIG_CRYPTO_CRC32C is not set | 1390 | # CONFIG_CRYPTO_CRC32C is not set |
1391 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1241 | # CONFIG_CRYPTO_TEST is not set | 1392 | # CONFIG_CRYPTO_TEST is not set |
1242 | 1393 | ||
1243 | # | 1394 | # |
diff --git a/arch/ia64/configs/zx1_defconfig b/arch/ia64/configs/zx1_defconfig index 949dc4670a0c..1c7955c16358 100644 --- a/arch/ia64/configs/zx1_defconfig +++ b/arch/ia64/configs/zx1_defconfig | |||
@@ -1,8 +1,9 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.16-rc5 | 3 | # Linux kernel version: 2.6.21-rc3 |
4 | # Mon Feb 27 15:55:36 2006 | 4 | # Thu Mar 8 11:04:20 2007 |
5 | # | 5 | # |
6 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
6 | 7 | ||
7 | # | 8 | # |
8 | # Code maturity level options | 9 | # Code maturity level options |
@@ -18,16 +19,24 @@ CONFIG_LOCALVERSION="" | |||
18 | CONFIG_LOCALVERSION_AUTO=y | 19 | CONFIG_LOCALVERSION_AUTO=y |
19 | CONFIG_SWAP=y | 20 | CONFIG_SWAP=y |
20 | CONFIG_SYSVIPC=y | 21 | CONFIG_SYSVIPC=y |
22 | # CONFIG_IPC_NS is not set | ||
23 | CONFIG_SYSVIPC_SYSCTL=y | ||
21 | # CONFIG_POSIX_MQUEUE is not set | 24 | # CONFIG_POSIX_MQUEUE is not set |
22 | CONFIG_BSD_PROCESS_ACCT=y | 25 | CONFIG_BSD_PROCESS_ACCT=y |
23 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | 26 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set |
24 | CONFIG_SYSCTL=y | 27 | # CONFIG_TASKSTATS is not set |
28 | # CONFIG_UTS_NS is not set | ||
25 | # CONFIG_AUDIT is not set | 29 | # CONFIG_AUDIT is not set |
26 | # CONFIG_IKCONFIG is not set | 30 | # CONFIG_IKCONFIG is not set |
27 | # CONFIG_CPUSETS is not set | 31 | # CONFIG_CPUSETS is not set |
32 | CONFIG_SYSFS_DEPRECATED=y | ||
33 | # CONFIG_RELAY is not set | ||
34 | CONFIG_BLK_DEV_INITRD=y | ||
28 | CONFIG_INITRAMFS_SOURCE="" | 35 | CONFIG_INITRAMFS_SOURCE="" |
29 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 36 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
37 | CONFIG_SYSCTL=y | ||
30 | # CONFIG_EMBEDDED is not set | 38 | # CONFIG_EMBEDDED is not set |
39 | CONFIG_SYSCTL_SYSCALL=y | ||
31 | CONFIG_KALLSYMS=y | 40 | CONFIG_KALLSYMS=y |
32 | # CONFIG_KALLSYMS_ALL is not set | 41 | # CONFIG_KALLSYMS_ALL is not set |
33 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 42 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
@@ -39,11 +48,9 @@ CONFIG_BASE_FULL=y | |||
39 | CONFIG_FUTEX=y | 48 | CONFIG_FUTEX=y |
40 | CONFIG_EPOLL=y | 49 | CONFIG_EPOLL=y |
41 | CONFIG_SHMEM=y | 50 | CONFIG_SHMEM=y |
42 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
43 | CONFIG_CC_ALIGN_LABELS=0 | ||
44 | CONFIG_CC_ALIGN_LOOPS=0 | ||
45 | CONFIG_CC_ALIGN_JUMPS=0 | ||
46 | CONFIG_SLAB=y | 51 | CONFIG_SLAB=y |
52 | CONFIG_VM_EVENT_COUNTERS=y | ||
53 | CONFIG_RT_MUTEXES=y | ||
47 | # CONFIG_TINY_SHMEM is not set | 54 | # CONFIG_TINY_SHMEM is not set |
48 | CONFIG_BASE_SMALL=0 | 55 | CONFIG_BASE_SMALL=0 |
49 | # CONFIG_SLOB is not set | 56 | # CONFIG_SLOB is not set |
@@ -53,14 +60,16 @@ CONFIG_BASE_SMALL=0 | |||
53 | # | 60 | # |
54 | CONFIG_MODULES=y | 61 | CONFIG_MODULES=y |
55 | # CONFIG_MODULE_UNLOAD is not set | 62 | # CONFIG_MODULE_UNLOAD is not set |
56 | CONFIG_OBSOLETE_MODPARM=y | ||
57 | # CONFIG_MODVERSIONS is not set | 63 | # CONFIG_MODVERSIONS is not set |
58 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 64 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
59 | # CONFIG_KMOD is not set | 65 | # CONFIG_KMOD is not set |
66 | CONFIG_STOP_MACHINE=y | ||
60 | 67 | ||
61 | # | 68 | # |
62 | # Block layer | 69 | # Block layer |
63 | # | 70 | # |
71 | CONFIG_BLOCK=y | ||
72 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
64 | 73 | ||
65 | # | 74 | # |
66 | # IO Schedulers | 75 | # IO Schedulers |
@@ -80,15 +89,19 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" | |||
80 | # | 89 | # |
81 | CONFIG_IA64=y | 90 | CONFIG_IA64=y |
82 | CONFIG_64BIT=y | 91 | CONFIG_64BIT=y |
92 | CONFIG_ZONE_DMA=y | ||
83 | CONFIG_MMU=y | 93 | CONFIG_MMU=y |
84 | CONFIG_SWIOTLB=y | ||
85 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 94 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
95 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
96 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
97 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
86 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 98 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
87 | CONFIG_TIME_INTERPOLATION=y | 99 | CONFIG_TIME_INTERPOLATION=y |
100 | CONFIG_DMI=y | ||
88 | CONFIG_EFI=y | 101 | CONFIG_EFI=y |
89 | CONFIG_GENERIC_IOMAP=y | 102 | CONFIG_GENERIC_IOMAP=y |
90 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 103 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
91 | CONFIG_DMA_IS_DMA32=y | 104 | CONFIG_AUDIT_ARCH=y |
92 | # CONFIG_IA64_GENERIC is not set | 105 | # CONFIG_IA64_GENERIC is not set |
93 | # CONFIG_IA64_DIG is not set | 106 | # CONFIG_IA64_DIG is not set |
94 | CONFIG_IA64_HP_ZX1=y | 107 | CONFIG_IA64_HP_ZX1=y |
@@ -105,6 +118,7 @@ CONFIG_PGTABLE_3=y | |||
105 | # CONFIG_PGTABLE_4 is not set | 118 | # CONFIG_PGTABLE_4 is not set |
106 | # CONFIG_HZ_100 is not set | 119 | # CONFIG_HZ_100 is not set |
107 | CONFIG_HZ_250=y | 120 | CONFIG_HZ_250=y |
121 | # CONFIG_HZ_300 is not set | ||
108 | # CONFIG_HZ_1000 is not set | 122 | # CONFIG_HZ_1000 is not set |
109 | CONFIG_HZ=250 | 123 | CONFIG_HZ=250 |
110 | CONFIG_IA64_L1_CACHE_SHIFT=7 | 124 | CONFIG_IA64_L1_CACHE_SHIFT=7 |
@@ -113,8 +127,10 @@ CONFIG_IOSAPIC=y | |||
113 | CONFIG_FORCE_MAX_ZONEORDER=17 | 127 | CONFIG_FORCE_MAX_ZONEORDER=17 |
114 | CONFIG_SMP=y | 128 | CONFIG_SMP=y |
115 | CONFIG_NR_CPUS=16 | 129 | CONFIG_NR_CPUS=16 |
116 | # CONFIG_HOTPLUG_CPU is not set | 130 | CONFIG_HOTPLUG_CPU=y |
131 | CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y | ||
117 | # CONFIG_SCHED_SMT is not set | 132 | # CONFIG_SCHED_SMT is not set |
133 | # CONFIG_PERMIT_BSP_REMOVE is not set | ||
118 | # CONFIG_PREEMPT is not set | 134 | # CONFIG_PREEMPT is not set |
119 | CONFIG_SELECT_MEMORY_MODEL=y | 135 | CONFIG_SELECT_MEMORY_MODEL=y |
120 | CONFIG_FLATMEM_MANUAL=y | 136 | CONFIG_FLATMEM_MANUAL=y |
@@ -124,11 +140,14 @@ CONFIG_FLATMEM=y | |||
124 | CONFIG_FLAT_NODE_MEM_MAP=y | 140 | CONFIG_FLAT_NODE_MEM_MAP=y |
125 | # CONFIG_SPARSEMEM_STATIC is not set | 141 | # CONFIG_SPARSEMEM_STATIC is not set |
126 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 142 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
143 | CONFIG_RESOURCES_64BIT=y | ||
144 | CONFIG_ZONE_DMA_FLAG=1 | ||
127 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | 145 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y |
128 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y | 146 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y |
129 | CONFIG_ARCH_FLATMEM_ENABLE=y | 147 | CONFIG_ARCH_FLATMEM_ENABLE=y |
130 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | 148 | CONFIG_ARCH_SPARSEMEM_ENABLE=y |
131 | CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y | 149 | CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y |
150 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
132 | CONFIG_VIRTUAL_MEM_MAP=y | 151 | CONFIG_VIRTUAL_MEM_MAP=y |
133 | CONFIG_HOLES_IN_ZONE=y | 152 | CONFIG_HOLES_IN_ZONE=y |
134 | CONFIG_IA32_SUPPORT=y | 153 | CONFIG_IA32_SUPPORT=y |
@@ -136,6 +155,9 @@ CONFIG_COMPAT=y | |||
136 | CONFIG_IA64_MCA_RECOVERY=y | 155 | CONFIG_IA64_MCA_RECOVERY=y |
137 | CONFIG_PERFMON=y | 156 | CONFIG_PERFMON=y |
138 | CONFIG_IA64_PALINFO=y | 157 | CONFIG_IA64_PALINFO=y |
158 | # CONFIG_IA64_ESI is not set | ||
159 | # CONFIG_KEXEC is not set | ||
160 | CONFIG_CRASH_DUMP=y | ||
139 | 161 | ||
140 | # | 162 | # |
141 | # Firmware Drivers | 163 | # Firmware Drivers |
@@ -151,21 +173,25 @@ CONFIG_BINFMT_MISC=y | |||
151 | CONFIG_PM=y | 173 | CONFIG_PM=y |
152 | CONFIG_PM_LEGACY=y | 174 | CONFIG_PM_LEGACY=y |
153 | # CONFIG_PM_DEBUG is not set | 175 | # CONFIG_PM_DEBUG is not set |
176 | # CONFIG_PM_SYSFS_DEPRECATED is not set | ||
154 | 177 | ||
155 | # | 178 | # |
156 | # ACPI (Advanced Configuration and Power Interface) Support | 179 | # ACPI (Advanced Configuration and Power Interface) Support |
157 | # | 180 | # |
158 | CONFIG_ACPI=y | 181 | CONFIG_ACPI=y |
182 | CONFIG_ACPI_PROCFS=y | ||
159 | CONFIG_ACPI_BUTTON=y | 183 | CONFIG_ACPI_BUTTON=y |
160 | CONFIG_ACPI_FAN=y | 184 | CONFIG_ACPI_FAN=y |
185 | # CONFIG_ACPI_DOCK is not set | ||
161 | CONFIG_ACPI_PROCESSOR=y | 186 | CONFIG_ACPI_PROCESSOR=y |
187 | CONFIG_ACPI_HOTPLUG_CPU=y | ||
162 | CONFIG_ACPI_THERMAL=y | 188 | CONFIG_ACPI_THERMAL=y |
163 | CONFIG_ACPI_BLACKLIST_YEAR=0 | 189 | CONFIG_ACPI_BLACKLIST_YEAR=0 |
164 | # CONFIG_ACPI_DEBUG is not set | 190 | # CONFIG_ACPI_DEBUG is not set |
165 | CONFIG_ACPI_EC=y | 191 | CONFIG_ACPI_EC=y |
166 | CONFIG_ACPI_POWER=y | 192 | CONFIG_ACPI_POWER=y |
167 | CONFIG_ACPI_SYSTEM=y | 193 | CONFIG_ACPI_SYSTEM=y |
168 | # CONFIG_ACPI_CONTAINER is not set | 194 | CONFIG_ACPI_CONTAINER=y |
169 | 195 | ||
170 | # | 196 | # |
171 | # CPU Frequency scaling | 197 | # CPU Frequency scaling |
@@ -177,8 +203,8 @@ CONFIG_ACPI_SYSTEM=y | |||
177 | # | 203 | # |
178 | CONFIG_PCI=y | 204 | CONFIG_PCI=y |
179 | CONFIG_PCI_DOMAINS=y | 205 | CONFIG_PCI_DOMAINS=y |
206 | # CONFIG_PCIEPORTBUS is not set | ||
180 | # CONFIG_PCI_MSI is not set | 207 | # CONFIG_PCI_MSI is not set |
181 | CONFIG_PCI_LEGACY_PROC=y | ||
182 | # CONFIG_PCI_DEBUG is not set | 208 | # CONFIG_PCI_DEBUG is not set |
183 | 209 | ||
184 | # | 210 | # |
@@ -208,6 +234,10 @@ CONFIG_NET=y | |||
208 | CONFIG_PACKET=y | 234 | CONFIG_PACKET=y |
209 | # CONFIG_PACKET_MMAP is not set | 235 | # CONFIG_PACKET_MMAP is not set |
210 | CONFIG_UNIX=y | 236 | CONFIG_UNIX=y |
237 | CONFIG_XFRM=y | ||
238 | # CONFIG_XFRM_USER is not set | ||
239 | # CONFIG_XFRM_SUB_POLICY is not set | ||
240 | # CONFIG_XFRM_MIGRATE is not set | ||
211 | # CONFIG_NET_KEY is not set | 241 | # CONFIG_NET_KEY is not set |
212 | CONFIG_INET=y | 242 | CONFIG_INET=y |
213 | CONFIG_IP_MULTICAST=y | 243 | CONFIG_IP_MULTICAST=y |
@@ -222,17 +252,26 @@ CONFIG_IP_FIB_HASH=y | |||
222 | # CONFIG_INET_AH is not set | 252 | # CONFIG_INET_AH is not set |
223 | # CONFIG_INET_ESP is not set | 253 | # CONFIG_INET_ESP is not set |
224 | # CONFIG_INET_IPCOMP is not set | 254 | # CONFIG_INET_IPCOMP is not set |
255 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
225 | # CONFIG_INET_TUNNEL is not set | 256 | # CONFIG_INET_TUNNEL is not set |
257 | CONFIG_INET_XFRM_MODE_TRANSPORT=y | ||
258 | CONFIG_INET_XFRM_MODE_TUNNEL=y | ||
259 | CONFIG_INET_XFRM_MODE_BEET=y | ||
226 | CONFIG_INET_DIAG=y | 260 | CONFIG_INET_DIAG=y |
227 | CONFIG_INET_TCP_DIAG=y | 261 | CONFIG_INET_TCP_DIAG=y |
228 | # CONFIG_TCP_CONG_ADVANCED is not set | 262 | # CONFIG_TCP_CONG_ADVANCED is not set |
229 | CONFIG_TCP_CONG_BIC=y | 263 | CONFIG_TCP_CONG_CUBIC=y |
264 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
265 | # CONFIG_TCP_MD5SIG is not set | ||
230 | 266 | ||
231 | # | 267 | # |
232 | # IP: Virtual Server Configuration | 268 | # IP: Virtual Server Configuration |
233 | # | 269 | # |
234 | # CONFIG_IP_VS is not set | 270 | # CONFIG_IP_VS is not set |
235 | # CONFIG_IPV6 is not set | 271 | # CONFIG_IPV6 is not set |
272 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
273 | # CONFIG_INET6_TUNNEL is not set | ||
274 | # CONFIG_NETWORK_SECMARK is not set | ||
236 | CONFIG_NETFILTER=y | 275 | CONFIG_NETFILTER=y |
237 | # CONFIG_NETFILTER_DEBUG is not set | 276 | # CONFIG_NETFILTER_DEBUG is not set |
238 | 277 | ||
@@ -240,14 +279,15 @@ CONFIG_NETFILTER=y | |||
240 | # Core Netfilter Configuration | 279 | # Core Netfilter Configuration |
241 | # | 280 | # |
242 | # CONFIG_NETFILTER_NETLINK is not set | 281 | # CONFIG_NETFILTER_NETLINK is not set |
243 | # CONFIG_NF_CONNTRACK is not set | 282 | # CONFIG_NF_CONNTRACK_ENABLED is not set |
244 | # CONFIG_NETFILTER_XTABLES is not set | 283 | # CONFIG_NETFILTER_XTABLES is not set |
245 | 284 | ||
246 | # | 285 | # |
247 | # IP: Netfilter Configuration | 286 | # IP: Netfilter Configuration |
248 | # | 287 | # |
249 | # CONFIG_IP_NF_CONNTRACK is not set | ||
250 | # CONFIG_IP_NF_QUEUE is not set | 288 | # CONFIG_IP_NF_QUEUE is not set |
289 | # CONFIG_IP_NF_IPTABLES is not set | ||
290 | # CONFIG_IP_NF_ARPTABLES is not set | ||
251 | 291 | ||
252 | # | 292 | # |
253 | # DCCP Configuration (EXPERIMENTAL) | 293 | # DCCP Configuration (EXPERIMENTAL) |
@@ -272,7 +312,6 @@ CONFIG_NETFILTER=y | |||
272 | # CONFIG_ATALK is not set | 312 | # CONFIG_ATALK is not set |
273 | # CONFIG_X25 is not set | 313 | # CONFIG_X25 is not set |
274 | # CONFIG_LAPB is not set | 314 | # CONFIG_LAPB is not set |
275 | # CONFIG_NET_DIVERT is not set | ||
276 | # CONFIG_ECONET is not set | 315 | # CONFIG_ECONET is not set |
277 | # CONFIG_WAN_ROUTER is not set | 316 | # CONFIG_WAN_ROUTER is not set |
278 | 317 | ||
@@ -285,6 +324,7 @@ CONFIG_NETFILTER=y | |||
285 | # Network testing | 324 | # Network testing |
286 | # | 325 | # |
287 | # CONFIG_NET_PKTGEN is not set | 326 | # CONFIG_NET_PKTGEN is not set |
327 | # CONFIG_NET_TCPPROBE is not set | ||
288 | # CONFIG_HAMRADIO is not set | 328 | # CONFIG_HAMRADIO is not set |
289 | # CONFIG_IRDA is not set | 329 | # CONFIG_IRDA is not set |
290 | # CONFIG_BT is not set | 330 | # CONFIG_BT is not set |
@@ -301,6 +341,8 @@ CONFIG_STANDALONE=y | |||
301 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 341 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
302 | # CONFIG_FW_LOADER is not set | 342 | # CONFIG_FW_LOADER is not set |
303 | # CONFIG_DEBUG_DRIVER is not set | 343 | # CONFIG_DEBUG_DRIVER is not set |
344 | # CONFIG_DEBUG_DEVRES is not set | ||
345 | # CONFIG_SYS_HYPERVISOR is not set | ||
304 | 346 | ||
305 | # | 347 | # |
306 | # Connector - unified userspace <-> kernelspace linker | 348 | # Connector - unified userspace <-> kernelspace linker |
@@ -344,11 +386,17 @@ CONFIG_BLK_DEV_LOOP=y | |||
344 | CONFIG_BLK_DEV_RAM=y | 386 | CONFIG_BLK_DEV_RAM=y |
345 | CONFIG_BLK_DEV_RAM_COUNT=16 | 387 | CONFIG_BLK_DEV_RAM_COUNT=16 |
346 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 388 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
347 | CONFIG_BLK_DEV_INITRD=y | 389 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 |
348 | # CONFIG_CDROM_PKTCDVD is not set | 390 | # CONFIG_CDROM_PKTCDVD is not set |
349 | # CONFIG_ATA_OVER_ETH is not set | 391 | # CONFIG_ATA_OVER_ETH is not set |
350 | 392 | ||
351 | # | 393 | # |
394 | # Misc devices | ||
395 | # | ||
396 | # CONFIG_SGI_IOC4 is not set | ||
397 | # CONFIG_TIFM_CORE is not set | ||
398 | |||
399 | # | ||
352 | # ATA/ATAPI/MFM/RLL support | 400 | # ATA/ATAPI/MFM/RLL support |
353 | # | 401 | # |
354 | CONFIG_IDE=y | 402 | CONFIG_IDE=y |
@@ -365,6 +413,7 @@ CONFIG_BLK_DEV_IDECD=y | |||
365 | # CONFIG_BLK_DEV_IDETAPE is not set | 413 | # CONFIG_BLK_DEV_IDETAPE is not set |
366 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | 414 | # CONFIG_BLK_DEV_IDEFLOPPY is not set |
367 | # CONFIG_BLK_DEV_IDESCSI is not set | 415 | # CONFIG_BLK_DEV_IDESCSI is not set |
416 | # CONFIG_BLK_DEV_IDEACPI is not set | ||
368 | # CONFIG_IDE_TASK_IOCTL is not set | 417 | # CONFIG_IDE_TASK_IOCTL is not set |
369 | 418 | ||
370 | # | 419 | # |
@@ -390,8 +439,10 @@ CONFIG_BLK_DEV_CMD64X=y | |||
390 | # CONFIG_BLK_DEV_CS5530 is not set | 439 | # CONFIG_BLK_DEV_CS5530 is not set |
391 | # CONFIG_BLK_DEV_HPT34X is not set | 440 | # CONFIG_BLK_DEV_HPT34X is not set |
392 | # CONFIG_BLK_DEV_HPT366 is not set | 441 | # CONFIG_BLK_DEV_HPT366 is not set |
442 | # CONFIG_BLK_DEV_JMICRON is not set | ||
393 | # CONFIG_BLK_DEV_SC1200 is not set | 443 | # CONFIG_BLK_DEV_SC1200 is not set |
394 | # CONFIG_BLK_DEV_PIIX is not set | 444 | # CONFIG_BLK_DEV_PIIX is not set |
445 | # CONFIG_BLK_DEV_IT8213 is not set | ||
395 | # CONFIG_BLK_DEV_IT821X is not set | 446 | # CONFIG_BLK_DEV_IT821X is not set |
396 | # CONFIG_BLK_DEV_NS87415 is not set | 447 | # CONFIG_BLK_DEV_NS87415 is not set |
397 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 448 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
@@ -401,6 +452,7 @@ CONFIG_BLK_DEV_CMD64X=y | |||
401 | # CONFIG_BLK_DEV_SLC90E66 is not set | 452 | # CONFIG_BLK_DEV_SLC90E66 is not set |
402 | # CONFIG_BLK_DEV_TRM290 is not set | 453 | # CONFIG_BLK_DEV_TRM290 is not set |
403 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 454 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
455 | # CONFIG_BLK_DEV_TC86C001 is not set | ||
404 | # CONFIG_IDE_ARM is not set | 456 | # CONFIG_IDE_ARM is not set |
405 | CONFIG_BLK_DEV_IDEDMA=y | 457 | CONFIG_BLK_DEV_IDEDMA=y |
406 | # CONFIG_IDEDMA_IVB is not set | 458 | # CONFIG_IDEDMA_IVB is not set |
@@ -412,6 +464,8 @@ CONFIG_BLK_DEV_IDEDMA=y | |||
412 | # | 464 | # |
413 | # CONFIG_RAID_ATTRS is not set | 465 | # CONFIG_RAID_ATTRS is not set |
414 | CONFIG_SCSI=y | 466 | CONFIG_SCSI=y |
467 | # CONFIG_SCSI_TGT is not set | ||
468 | CONFIG_SCSI_NETLINK=y | ||
415 | CONFIG_SCSI_PROC_FS=y | 469 | CONFIG_SCSI_PROC_FS=y |
416 | 470 | ||
417 | # | 471 | # |
@@ -431,14 +485,16 @@ CONFIG_CHR_DEV_SG=y | |||
431 | CONFIG_SCSI_MULTI_LUN=y | 485 | CONFIG_SCSI_MULTI_LUN=y |
432 | CONFIG_SCSI_CONSTANTS=y | 486 | CONFIG_SCSI_CONSTANTS=y |
433 | CONFIG_SCSI_LOGGING=y | 487 | CONFIG_SCSI_LOGGING=y |
488 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
434 | 489 | ||
435 | # | 490 | # |
436 | # SCSI Transport Attributes | 491 | # SCSI Transports |
437 | # | 492 | # |
438 | CONFIG_SCSI_SPI_ATTRS=y | 493 | CONFIG_SCSI_SPI_ATTRS=y |
439 | CONFIG_SCSI_FC_ATTRS=y | 494 | CONFIG_SCSI_FC_ATTRS=y |
440 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 495 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
441 | # CONFIG_SCSI_SAS_ATTRS is not set | 496 | # CONFIG_SCSI_SAS_ATTRS is not set |
497 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
442 | 498 | ||
443 | # | 499 | # |
444 | # SCSI low-level drivers | 500 | # SCSI low-level drivers |
@@ -451,28 +507,36 @@ CONFIG_SCSI_FC_ATTRS=y | |||
451 | # CONFIG_SCSI_AIC7XXX is not set | 507 | # CONFIG_SCSI_AIC7XXX is not set |
452 | # CONFIG_SCSI_AIC7XXX_OLD is not set | 508 | # CONFIG_SCSI_AIC7XXX_OLD is not set |
453 | # CONFIG_SCSI_AIC79XX is not set | 509 | # CONFIG_SCSI_AIC79XX is not set |
510 | # CONFIG_SCSI_AIC94XX is not set | ||
511 | # CONFIG_SCSI_ARCMSR is not set | ||
454 | # CONFIG_MEGARAID_NEWGEN is not set | 512 | # CONFIG_MEGARAID_NEWGEN is not set |
455 | # CONFIG_MEGARAID_LEGACY is not set | 513 | # CONFIG_MEGARAID_LEGACY is not set |
456 | # CONFIG_MEGARAID_SAS is not set | 514 | # CONFIG_MEGARAID_SAS is not set |
457 | # CONFIG_SCSI_SATA is not set | 515 | # CONFIG_SCSI_HPTIOP is not set |
458 | # CONFIG_SCSI_DMX3191D is not set | 516 | # CONFIG_SCSI_DMX3191D is not set |
459 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 517 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
460 | # CONFIG_SCSI_IPS is not set | 518 | # CONFIG_SCSI_IPS is not set |
461 | # CONFIG_SCSI_INITIO is not set | 519 | # CONFIG_SCSI_INITIO is not set |
462 | # CONFIG_SCSI_INIA100 is not set | 520 | # CONFIG_SCSI_INIA100 is not set |
521 | # CONFIG_SCSI_STEX is not set | ||
463 | CONFIG_SCSI_SYM53C8XX_2=y | 522 | CONFIG_SCSI_SYM53C8XX_2=y |
464 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 | 523 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 |
465 | CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 | 524 | CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 |
466 | CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 | 525 | CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 |
467 | # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set | 526 | CONFIG_SCSI_SYM53C8XX_MMIO=y |
468 | # CONFIG_SCSI_IPR is not set | ||
469 | # CONFIG_SCSI_QLOGIC_FC is not set | ||
470 | CONFIG_SCSI_QLOGIC_1280=y | 527 | CONFIG_SCSI_QLOGIC_1280=y |
471 | # CONFIG_SCSI_QLA_FC is not set | 528 | # CONFIG_SCSI_QLA_FC is not set |
529 | # CONFIG_SCSI_QLA_ISCSI is not set | ||
472 | # CONFIG_SCSI_LPFC is not set | 530 | # CONFIG_SCSI_LPFC is not set |
473 | # CONFIG_SCSI_DC395x is not set | 531 | # CONFIG_SCSI_DC395x is not set |
474 | # CONFIG_SCSI_DC390T is not set | 532 | # CONFIG_SCSI_DC390T is not set |
475 | # CONFIG_SCSI_DEBUG is not set | 533 | # CONFIG_SCSI_DEBUG is not set |
534 | # CONFIG_SCSI_SRP is not set | ||
535 | |||
536 | # | ||
537 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
538 | # | ||
539 | # CONFIG_ATA is not set | ||
476 | 540 | ||
477 | # | 541 | # |
478 | # Multi-device support (RAID and LVM) | 542 | # Multi-device support (RAID and LVM) |
@@ -562,6 +626,7 @@ CONFIG_E100=y | |||
562 | # CONFIG_EPIC100 is not set | 626 | # CONFIG_EPIC100 is not set |
563 | # CONFIG_SUNDANCE is not set | 627 | # CONFIG_SUNDANCE is not set |
564 | # CONFIG_VIA_RHINE is not set | 628 | # CONFIG_VIA_RHINE is not set |
629 | # CONFIG_SC92031 is not set | ||
565 | 630 | ||
566 | # | 631 | # |
567 | # Ethernet (1000 Mbit) | 632 | # Ethernet (1000 Mbit) |
@@ -582,13 +647,18 @@ CONFIG_E1000=y | |||
582 | # CONFIG_VIA_VELOCITY is not set | 647 | # CONFIG_VIA_VELOCITY is not set |
583 | CONFIG_TIGON3=y | 648 | CONFIG_TIGON3=y |
584 | # CONFIG_BNX2 is not set | 649 | # CONFIG_BNX2 is not set |
650 | # CONFIG_QLA3XXX is not set | ||
651 | # CONFIG_ATL1 is not set | ||
585 | 652 | ||
586 | # | 653 | # |
587 | # Ethernet (10000 Mbit) | 654 | # Ethernet (10000 Mbit) |
588 | # | 655 | # |
589 | # CONFIG_CHELSIO_T1 is not set | 656 | # CONFIG_CHELSIO_T1 is not set |
657 | # CONFIG_CHELSIO_T3 is not set | ||
590 | # CONFIG_IXGB is not set | 658 | # CONFIG_IXGB is not set |
591 | # CONFIG_S2IO is not set | 659 | # CONFIG_S2IO is not set |
660 | # CONFIG_MYRI10GE is not set | ||
661 | # CONFIG_NETXEN_NIC is not set | ||
592 | 662 | ||
593 | # | 663 | # |
594 | # Token Ring devices | 664 | # Token Ring devices |
@@ -628,6 +698,7 @@ CONFIG_TIGON3=y | |||
628 | # Input device support | 698 | # Input device support |
629 | # | 699 | # |
630 | CONFIG_INPUT=y | 700 | CONFIG_INPUT=y |
701 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
631 | 702 | ||
632 | # | 703 | # |
633 | # Userland interfaces | 704 | # Userland interfaces |
@@ -666,6 +737,7 @@ CONFIG_SERIO=y | |||
666 | CONFIG_VT=y | 737 | CONFIG_VT=y |
667 | CONFIG_VT_CONSOLE=y | 738 | CONFIG_VT_CONSOLE=y |
668 | CONFIG_HW_CONSOLE=y | 739 | CONFIG_HW_CONSOLE=y |
740 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
669 | # CONFIG_SERIAL_NONSTANDARD is not set | 741 | # CONFIG_SERIAL_NONSTANDARD is not set |
670 | 742 | ||
671 | # | 743 | # |
@@ -673,7 +745,8 @@ CONFIG_HW_CONSOLE=y | |||
673 | # | 745 | # |
674 | CONFIG_SERIAL_8250=y | 746 | CONFIG_SERIAL_8250=y |
675 | CONFIG_SERIAL_8250_CONSOLE=y | 747 | CONFIG_SERIAL_8250_CONSOLE=y |
676 | CONFIG_SERIAL_8250_ACPI=y | 748 | CONFIG_SERIAL_8250_PCI=y |
749 | CONFIG_SERIAL_8250_PNP=y | ||
677 | CONFIG_SERIAL_8250_NR_UARTS=8 | 750 | CONFIG_SERIAL_8250_NR_UARTS=8 |
678 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 751 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
679 | CONFIG_SERIAL_8250_EXTENDED=y | 752 | CONFIG_SERIAL_8250_EXTENDED=y |
@@ -705,10 +778,6 @@ CONFIG_EFI_RTC=y | |||
705 | # CONFIG_DTLK is not set | 778 | # CONFIG_DTLK is not set |
706 | # CONFIG_R3964 is not set | 779 | # CONFIG_R3964 is not set |
707 | # CONFIG_APPLICOM is not set | 780 | # CONFIG_APPLICOM is not set |
708 | |||
709 | # | ||
710 | # Ftape, the floppy tape device driver | ||
711 | # | ||
712 | CONFIG_AGP=y | 781 | CONFIG_AGP=y |
713 | CONFIG_AGP_HP_ZX1=y | 782 | CONFIG_AGP_HP_ZX1=y |
714 | CONFIG_DRM=y | 783 | CONFIG_DRM=y |
@@ -727,7 +796,6 @@ CONFIG_DRM_RADEON=y | |||
727 | # TPM devices | 796 | # TPM devices |
728 | # | 797 | # |
729 | # CONFIG_TCG_TPM is not set | 798 | # CONFIG_TCG_TPM is not set |
730 | # CONFIG_TELCLOCK is not set | ||
731 | 799 | ||
732 | # | 800 | # |
733 | # I2C support | 801 | # I2C support |
@@ -754,10 +822,11 @@ CONFIG_I2C_ALGOPCF=y | |||
754 | # CONFIG_I2C_I810 is not set | 822 | # CONFIG_I2C_I810 is not set |
755 | # CONFIG_I2C_PIIX4 is not set | 823 | # CONFIG_I2C_PIIX4 is not set |
756 | # CONFIG_I2C_NFORCE2 is not set | 824 | # CONFIG_I2C_NFORCE2 is not set |
825 | # CONFIG_I2C_OCORES is not set | ||
757 | # CONFIG_I2C_PARPORT_LIGHT is not set | 826 | # CONFIG_I2C_PARPORT_LIGHT is not set |
827 | # CONFIG_I2C_PASEMI is not set | ||
758 | # CONFIG_I2C_PROSAVAGE is not set | 828 | # CONFIG_I2C_PROSAVAGE is not set |
759 | # CONFIG_I2C_SAVAGE4 is not set | 829 | # CONFIG_I2C_SAVAGE4 is not set |
760 | # CONFIG_SCx200_ACB is not set | ||
761 | # CONFIG_I2C_SIS5595 is not set | 830 | # CONFIG_I2C_SIS5595 is not set |
762 | # CONFIG_I2C_SIS630 is not set | 831 | # CONFIG_I2C_SIS630 is not set |
763 | # CONFIG_I2C_SIS96X is not set | 832 | # CONFIG_I2C_SIS96X is not set |
@@ -776,9 +845,7 @@ CONFIG_I2C_ALGOPCF=y | |||
776 | # CONFIG_SENSORS_PCF8574 is not set | 845 | # CONFIG_SENSORS_PCF8574 is not set |
777 | # CONFIG_SENSORS_PCA9539 is not set | 846 | # CONFIG_SENSORS_PCA9539 is not set |
778 | # CONFIG_SENSORS_PCF8591 is not set | 847 | # CONFIG_SENSORS_PCF8591 is not set |
779 | # CONFIG_SENSORS_RTC8564 is not set | ||
780 | # CONFIG_SENSORS_MAX6875 is not set | 848 | # CONFIG_SENSORS_MAX6875 is not set |
781 | # CONFIG_RTC_X1205_I2C is not set | ||
782 | # CONFIG_I2C_DEBUG_CORE is not set | 849 | # CONFIG_I2C_DEBUG_CORE is not set |
783 | # CONFIG_I2C_DEBUG_ALGO is not set | 850 | # CONFIG_I2C_DEBUG_ALGO is not set |
784 | # CONFIG_I2C_DEBUG_BUS is not set | 851 | # CONFIG_I2C_DEBUG_BUS is not set |
@@ -802,28 +869,31 @@ CONFIG_I2C_ALGOPCF=y | |||
802 | # CONFIG_HWMON_VID is not set | 869 | # CONFIG_HWMON_VID is not set |
803 | 870 | ||
804 | # | 871 | # |
805 | # Misc devices | 872 | # Multifunction device drivers |
806 | # | ||
807 | |||
808 | # | ||
809 | # Multimedia Capabilities Port drivers | ||
810 | # | 873 | # |
874 | # CONFIG_MFD_SM501 is not set | ||
811 | 875 | ||
812 | # | 876 | # |
813 | # Multimedia devices | 877 | # Multimedia devices |
814 | # | 878 | # |
815 | CONFIG_VIDEO_DEV=y | 879 | CONFIG_VIDEO_DEV=y |
880 | CONFIG_VIDEO_V4L1=y | ||
881 | CONFIG_VIDEO_V4L1_COMPAT=y | ||
882 | CONFIG_VIDEO_V4L2=y | ||
816 | 883 | ||
817 | # | 884 | # |
818 | # Video For Linux | 885 | # Video Capture Adapters |
819 | # | 886 | # |
820 | 887 | ||
821 | # | 888 | # |
822 | # Video Adapters | 889 | # Video Capture Adapters |
823 | # | 890 | # |
824 | # CONFIG_VIDEO_ADV_DEBUG is not set | 891 | # CONFIG_VIDEO_ADV_DEBUG is not set |
892 | CONFIG_VIDEO_HELPER_CHIPS_AUTO=y | ||
893 | # CONFIG_VIDEO_VIVI is not set | ||
825 | # CONFIG_VIDEO_BT848 is not set | 894 | # CONFIG_VIDEO_BT848 is not set |
826 | # CONFIG_VIDEO_CPIA is not set | 895 | # CONFIG_VIDEO_CPIA is not set |
896 | # CONFIG_VIDEO_CPIA2 is not set | ||
827 | # CONFIG_VIDEO_SAA5246A is not set | 897 | # CONFIG_VIDEO_SAA5246A is not set |
828 | # CONFIG_VIDEO_SAA5249 is not set | 898 | # CONFIG_VIDEO_SAA5249 is not set |
829 | # CONFIG_TUNER_3036 is not set | 899 | # CONFIG_TUNER_3036 is not set |
@@ -835,10 +905,27 @@ CONFIG_VIDEO_DEV=y | |||
835 | # CONFIG_VIDEO_HEXIUM_ORION is not set | 905 | # CONFIG_VIDEO_HEXIUM_ORION is not set |
836 | # CONFIG_VIDEO_HEXIUM_GEMINI is not set | 906 | # CONFIG_VIDEO_HEXIUM_GEMINI is not set |
837 | # CONFIG_VIDEO_CX88 is not set | 907 | # CONFIG_VIDEO_CX88 is not set |
908 | # CONFIG_VIDEO_CAFE_CCIC is not set | ||
909 | |||
910 | # | ||
911 | # V4L USB devices | ||
912 | # | ||
913 | # CONFIG_VIDEO_PVRUSB2 is not set | ||
838 | # CONFIG_VIDEO_EM28XX is not set | 914 | # CONFIG_VIDEO_EM28XX is not set |
915 | # CONFIG_VIDEO_USBVISION is not set | ||
916 | # CONFIG_USB_VICAM is not set | ||
917 | # CONFIG_USB_IBMCAM is not set | ||
918 | # CONFIG_USB_KONICAWC is not set | ||
919 | # CONFIG_USB_QUICKCAM_MESSENGER is not set | ||
920 | # CONFIG_USB_ET61X251 is not set | ||
839 | # CONFIG_VIDEO_OVCAMCHIP is not set | 921 | # CONFIG_VIDEO_OVCAMCHIP is not set |
840 | # CONFIG_VIDEO_AUDIO_DECODER is not set | 922 | # CONFIG_USB_W9968CF is not set |
841 | # CONFIG_VIDEO_DECODER is not set | 923 | # CONFIG_USB_OV511 is not set |
924 | # CONFIG_USB_SE401 is not set | ||
925 | # CONFIG_USB_SN9C102 is not set | ||
926 | # CONFIG_USB_STV680 is not set | ||
927 | # CONFIG_USB_ZC0301 is not set | ||
928 | # CONFIG_USB_PWC is not set | ||
842 | 929 | ||
843 | # | 930 | # |
844 | # Radio Adapters | 931 | # Radio Adapters |
@@ -846,22 +933,35 @@ CONFIG_VIDEO_DEV=y | |||
846 | # CONFIG_RADIO_GEMTEK_PCI is not set | 933 | # CONFIG_RADIO_GEMTEK_PCI is not set |
847 | # CONFIG_RADIO_MAXIRADIO is not set | 934 | # CONFIG_RADIO_MAXIRADIO is not set |
848 | # CONFIG_RADIO_MAESTRO is not set | 935 | # CONFIG_RADIO_MAESTRO is not set |
936 | # CONFIG_USB_DSBR is not set | ||
849 | 937 | ||
850 | # | 938 | # |
851 | # Digital Video Broadcasting Devices | 939 | # Digital Video Broadcasting Devices |
852 | # | 940 | # |
853 | # CONFIG_DVB is not set | 941 | # CONFIG_DVB is not set |
942 | # CONFIG_USB_DABUSB is not set | ||
854 | 943 | ||
855 | # | 944 | # |
856 | # Graphics support | 945 | # Graphics support |
857 | # | 946 | # |
947 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||
948 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
949 | CONFIG_LCD_CLASS_DEVICE=m | ||
858 | CONFIG_FB=y | 950 | CONFIG_FB=y |
951 | # CONFIG_FIRMWARE_EDID is not set | ||
952 | CONFIG_FB_DDC=y | ||
859 | CONFIG_FB_CFB_FILLRECT=y | 953 | CONFIG_FB_CFB_FILLRECT=y |
860 | CONFIG_FB_CFB_COPYAREA=y | 954 | CONFIG_FB_CFB_COPYAREA=y |
861 | CONFIG_FB_CFB_IMAGEBLIT=y | 955 | CONFIG_FB_CFB_IMAGEBLIT=y |
956 | # CONFIG_FB_SVGALIB is not set | ||
862 | # CONFIG_FB_MACMODES is not set | 957 | # CONFIG_FB_MACMODES is not set |
958 | CONFIG_FB_BACKLIGHT=y | ||
863 | CONFIG_FB_MODE_HELPERS=y | 959 | CONFIG_FB_MODE_HELPERS=y |
864 | # CONFIG_FB_TILEBLITTING is not set | 960 | # CONFIG_FB_TILEBLITTING is not set |
961 | |||
962 | # | ||
963 | # Frambuffer hardware drivers | ||
964 | # | ||
865 | # CONFIG_FB_CIRRUS is not set | 965 | # CONFIG_FB_CIRRUS is not set |
866 | # CONFIG_FB_PM2 is not set | 966 | # CONFIG_FB_PM2 is not set |
867 | # CONFIG_FB_CYBER2000 is not set | 967 | # CONFIG_FB_CYBER2000 is not set |
@@ -871,12 +971,13 @@ CONFIG_FB_MODE_HELPERS=y | |||
871 | # CONFIG_FB_NVIDIA is not set | 971 | # CONFIG_FB_NVIDIA is not set |
872 | # CONFIG_FB_RIVA is not set | 972 | # CONFIG_FB_RIVA is not set |
873 | # CONFIG_FB_MATROX is not set | 973 | # CONFIG_FB_MATROX is not set |
874 | # CONFIG_FB_RADEON_OLD is not set | ||
875 | CONFIG_FB_RADEON=y | 974 | CONFIG_FB_RADEON=y |
876 | CONFIG_FB_RADEON_I2C=y | 975 | CONFIG_FB_RADEON_I2C=y |
976 | CONFIG_FB_RADEON_BACKLIGHT=y | ||
877 | CONFIG_FB_RADEON_DEBUG=y | 977 | CONFIG_FB_RADEON_DEBUG=y |
878 | # CONFIG_FB_ATY128 is not set | 978 | # CONFIG_FB_ATY128 is not set |
879 | # CONFIG_FB_ATY is not set | 979 | # CONFIG_FB_ATY is not set |
980 | # CONFIG_FB_S3 is not set | ||
880 | # CONFIG_FB_SAVAGE is not set | 981 | # CONFIG_FB_SAVAGE is not set |
881 | # CONFIG_FB_SIS is not set | 982 | # CONFIG_FB_SIS is not set |
882 | # CONFIG_FB_NEOMAGIC is not set | 983 | # CONFIG_FB_NEOMAGIC is not set |
@@ -890,6 +991,7 @@ CONFIG_FB_RADEON_DEBUG=y | |||
890 | # Console display driver support | 991 | # Console display driver support |
891 | # | 992 | # |
892 | CONFIG_VGA_CONSOLE=y | 993 | CONFIG_VGA_CONSOLE=y |
994 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set | ||
893 | CONFIG_DUMMY_CONSOLE=y | 995 | CONFIG_DUMMY_CONSOLE=y |
894 | CONFIG_FRAMEBUFFER_CONSOLE=y | 996 | CONFIG_FRAMEBUFFER_CONSOLE=y |
895 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | 997 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set |
@@ -904,7 +1006,6 @@ CONFIG_LOGO=y | |||
904 | # CONFIG_LOGO_LINUX_MONO is not set | 1006 | # CONFIG_LOGO_LINUX_MONO is not set |
905 | # CONFIG_LOGO_LINUX_VGA16 is not set | 1007 | # CONFIG_LOGO_LINUX_VGA16 is not set |
906 | CONFIG_LOGO_LINUX_CLUT224=y | 1008 | CONFIG_LOGO_LINUX_CLUT224=y |
907 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
908 | 1009 | ||
909 | # | 1010 | # |
910 | # Sound | 1011 | # Sound |
@@ -924,9 +1025,11 @@ CONFIG_SND_SEQUENCER=y | |||
924 | CONFIG_SND_OSSEMUL=y | 1025 | CONFIG_SND_OSSEMUL=y |
925 | CONFIG_SND_MIXER_OSS=y | 1026 | CONFIG_SND_MIXER_OSS=y |
926 | CONFIG_SND_PCM_OSS=y | 1027 | CONFIG_SND_PCM_OSS=y |
1028 | CONFIG_SND_PCM_OSS_PLUGINS=y | ||
927 | CONFIG_SND_SEQUENCER_OSS=y | 1029 | CONFIG_SND_SEQUENCER_OSS=y |
928 | # CONFIG_SND_DYNAMIC_MINORS is not set | 1030 | # CONFIG_SND_DYNAMIC_MINORS is not set |
929 | CONFIG_SND_SUPPORT_OLD_API=y | 1031 | CONFIG_SND_SUPPORT_OLD_API=y |
1032 | CONFIG_SND_VERBOSE_PROCFS=y | ||
930 | # CONFIG_SND_VERBOSE_PRINTK is not set | 1033 | # CONFIG_SND_VERBOSE_PRINTK is not set |
931 | # CONFIG_SND_DEBUG is not set | 1034 | # CONFIG_SND_DEBUG is not set |
932 | 1035 | ||
@@ -936,7 +1039,6 @@ CONFIG_SND_SUPPORT_OLD_API=y | |||
936 | CONFIG_SND_MPU401_UART=y | 1039 | CONFIG_SND_MPU401_UART=y |
937 | CONFIG_SND_OPL3_LIB=y | 1040 | CONFIG_SND_OPL3_LIB=y |
938 | CONFIG_SND_AC97_CODEC=y | 1041 | CONFIG_SND_AC97_CODEC=y |
939 | CONFIG_SND_AC97_BUS=y | ||
940 | # CONFIG_SND_DUMMY is not set | 1042 | # CONFIG_SND_DUMMY is not set |
941 | # CONFIG_SND_VIRMIDI is not set | 1043 | # CONFIG_SND_VIRMIDI is not set |
942 | # CONFIG_SND_MTPAV is not set | 1044 | # CONFIG_SND_MTPAV is not set |
@@ -947,6 +1049,7 @@ CONFIG_SND_AC97_BUS=y | |||
947 | # PCI devices | 1049 | # PCI devices |
948 | # | 1050 | # |
949 | # CONFIG_SND_AD1889 is not set | 1051 | # CONFIG_SND_AD1889 is not set |
1052 | # CONFIG_SND_ALS300 is not set | ||
950 | # CONFIG_SND_ALI5451 is not set | 1053 | # CONFIG_SND_ALI5451 is not set |
951 | # CONFIG_SND_ATIIXP is not set | 1054 | # CONFIG_SND_ATIIXP is not set |
952 | # CONFIG_SND_ATIIXP_MODEM is not set | 1055 | # CONFIG_SND_ATIIXP_MODEM is not set |
@@ -959,6 +1062,18 @@ CONFIG_SND_AC97_BUS=y | |||
959 | # CONFIG_SND_CMIPCI is not set | 1062 | # CONFIG_SND_CMIPCI is not set |
960 | # CONFIG_SND_CS4281 is not set | 1063 | # CONFIG_SND_CS4281 is not set |
961 | # CONFIG_SND_CS46XX is not set | 1064 | # CONFIG_SND_CS46XX is not set |
1065 | # CONFIG_SND_DARLA20 is not set | ||
1066 | # CONFIG_SND_GINA20 is not set | ||
1067 | # CONFIG_SND_LAYLA20 is not set | ||
1068 | # CONFIG_SND_DARLA24 is not set | ||
1069 | # CONFIG_SND_GINA24 is not set | ||
1070 | # CONFIG_SND_LAYLA24 is not set | ||
1071 | # CONFIG_SND_MONA is not set | ||
1072 | # CONFIG_SND_MIA is not set | ||
1073 | # CONFIG_SND_ECHO3G is not set | ||
1074 | # CONFIG_SND_INDIGO is not set | ||
1075 | # CONFIG_SND_INDIGOIO is not set | ||
1076 | # CONFIG_SND_INDIGODJ is not set | ||
962 | # CONFIG_SND_EMU10K1 is not set | 1077 | # CONFIG_SND_EMU10K1 is not set |
963 | # CONFIG_SND_EMU10K1X is not set | 1078 | # CONFIG_SND_EMU10K1X is not set |
964 | # CONFIG_SND_ENS1370 is not set | 1079 | # CONFIG_SND_ENS1370 is not set |
@@ -966,7 +1081,7 @@ CONFIG_SND_AC97_BUS=y | |||
966 | # CONFIG_SND_ES1938 is not set | 1081 | # CONFIG_SND_ES1938 is not set |
967 | # CONFIG_SND_ES1968 is not set | 1082 | # CONFIG_SND_ES1968 is not set |
968 | CONFIG_SND_FM801=y | 1083 | CONFIG_SND_FM801=y |
969 | CONFIG_SND_FM801_TEA575X=y | 1084 | # CONFIG_SND_FM801_TEA575X_BOOL is not set |
970 | # CONFIG_SND_HDA_INTEL is not set | 1085 | # CONFIG_SND_HDA_INTEL is not set |
971 | # CONFIG_SND_HDSP is not set | 1086 | # CONFIG_SND_HDSP is not set |
972 | # CONFIG_SND_HDSPM is not set | 1087 | # CONFIG_SND_HDSPM is not set |
@@ -979,6 +1094,7 @@ CONFIG_SND_FM801_TEA575X=y | |||
979 | # CONFIG_SND_MIXART is not set | 1094 | # CONFIG_SND_MIXART is not set |
980 | # CONFIG_SND_NM256 is not set | 1095 | # CONFIG_SND_NM256 is not set |
981 | # CONFIG_SND_PCXHR is not set | 1096 | # CONFIG_SND_PCXHR is not set |
1097 | # CONFIG_SND_RIPTIDE is not set | ||
982 | # CONFIG_SND_RME32 is not set | 1098 | # CONFIG_SND_RME32 is not set |
983 | # CONFIG_SND_RME96 is not set | 1099 | # CONFIG_SND_RME96 is not set |
984 | # CONFIG_SND_RME9652 is not set | 1100 | # CONFIG_SND_RME9652 is not set |
@@ -988,6 +1104,7 @@ CONFIG_SND_FM801_TEA575X=y | |||
988 | # CONFIG_SND_VIA82XX_MODEM is not set | 1104 | # CONFIG_SND_VIA82XX_MODEM is not set |
989 | # CONFIG_SND_VX222 is not set | 1105 | # CONFIG_SND_VX222 is not set |
990 | # CONFIG_SND_YMFPCI is not set | 1106 | # CONFIG_SND_YMFPCI is not set |
1107 | # CONFIG_SND_AC97_POWER_SAVE is not set | ||
991 | 1108 | ||
992 | # | 1109 | # |
993 | # USB devices | 1110 | # USB devices |
@@ -995,15 +1112,28 @@ CONFIG_SND_FM801_TEA575X=y | |||
995 | # CONFIG_SND_USB_AUDIO is not set | 1112 | # CONFIG_SND_USB_AUDIO is not set |
996 | 1113 | ||
997 | # | 1114 | # |
1115 | # SoC audio support | ||
1116 | # | ||
1117 | # CONFIG_SND_SOC is not set | ||
1118 | |||
1119 | # | ||
998 | # Open Sound System | 1120 | # Open Sound System |
999 | # | 1121 | # |
1000 | # CONFIG_SOUND_PRIME is not set | 1122 | # CONFIG_SOUND_PRIME is not set |
1123 | CONFIG_AC97_BUS=y | ||
1124 | |||
1125 | # | ||
1126 | # HID Devices | ||
1127 | # | ||
1128 | CONFIG_HID=y | ||
1129 | # CONFIG_HID_DEBUG is not set | ||
1001 | 1130 | ||
1002 | # | 1131 | # |
1003 | # USB support | 1132 | # USB support |
1004 | # | 1133 | # |
1005 | CONFIG_USB_ARCH_HAS_HCD=y | 1134 | CONFIG_USB_ARCH_HAS_HCD=y |
1006 | CONFIG_USB_ARCH_HAS_OHCI=y | 1135 | CONFIG_USB_ARCH_HAS_OHCI=y |
1136 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
1007 | CONFIG_USB=y | 1137 | CONFIG_USB=y |
1008 | # CONFIG_USB_DEBUG is not set | 1138 | # CONFIG_USB_DEBUG is not set |
1009 | 1139 | ||
@@ -1011,7 +1141,6 @@ CONFIG_USB=y | |||
1011 | # Miscellaneous USB options | 1141 | # Miscellaneous USB options |
1012 | # | 1142 | # |
1013 | # CONFIG_USB_DEVICEFS is not set | 1143 | # CONFIG_USB_DEVICEFS is not set |
1014 | CONFIG_USB_BANDWIDTH=y | ||
1015 | # CONFIG_USB_DYNAMIC_MINORS is not set | 1144 | # CONFIG_USB_DYNAMIC_MINORS is not set |
1016 | # CONFIG_USB_SUSPEND is not set | 1145 | # CONFIG_USB_SUSPEND is not set |
1017 | # CONFIG_USB_OTG is not set | 1146 | # CONFIG_USB_OTG is not set |
@@ -1022,9 +1151,12 @@ CONFIG_USB_BANDWIDTH=y | |||
1022 | CONFIG_USB_EHCI_HCD=y | 1151 | CONFIG_USB_EHCI_HCD=y |
1023 | # CONFIG_USB_EHCI_SPLIT_ISO is not set | 1152 | # CONFIG_USB_EHCI_SPLIT_ISO is not set |
1024 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | 1153 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set |
1154 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | ||
1155 | # CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set | ||
1025 | # CONFIG_USB_ISP116X_HCD is not set | 1156 | # CONFIG_USB_ISP116X_HCD is not set |
1026 | CONFIG_USB_OHCI_HCD=y | 1157 | CONFIG_USB_OHCI_HCD=y |
1027 | # CONFIG_USB_OHCI_BIG_ENDIAN is not set | 1158 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
1159 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
1028 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | 1160 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y |
1029 | CONFIG_USB_UHCI_HCD=y | 1161 | CONFIG_USB_UHCI_HCD=y |
1030 | # CONFIG_USB_SL811_HCD is not set | 1162 | # CONFIG_USB_SL811_HCD is not set |
@@ -1032,7 +1164,6 @@ CONFIG_USB_UHCI_HCD=y | |||
1032 | # | 1164 | # |
1033 | # USB Device Class drivers | 1165 | # USB Device Class drivers |
1034 | # | 1166 | # |
1035 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set | ||
1036 | # CONFIG_USB_ACM is not set | 1167 | # CONFIG_USB_ACM is not set |
1037 | # CONFIG_USB_PRINTER is not set | 1168 | # CONFIG_USB_PRINTER is not set |
1038 | 1169 | ||
@@ -1054,13 +1185,13 @@ CONFIG_USB_STORAGE=y | |||
1054 | # CONFIG_USB_STORAGE_SDDR55 is not set | 1185 | # CONFIG_USB_STORAGE_SDDR55 is not set |
1055 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 1186 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
1056 | # CONFIG_USB_STORAGE_ALAUDA is not set | 1187 | # CONFIG_USB_STORAGE_ALAUDA is not set |
1188 | # CONFIG_USB_STORAGE_KARMA is not set | ||
1057 | # CONFIG_USB_LIBUSUAL is not set | 1189 | # CONFIG_USB_LIBUSUAL is not set |
1058 | 1190 | ||
1059 | # | 1191 | # |
1060 | # USB Input Devices | 1192 | # USB Input Devices |
1061 | # | 1193 | # |
1062 | CONFIG_USB_HID=y | 1194 | CONFIG_USB_HID=y |
1063 | CONFIG_USB_HIDINPUT=y | ||
1064 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 1195 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set |
1065 | # CONFIG_HID_FF is not set | 1196 | # CONFIG_HID_FF is not set |
1066 | CONFIG_USB_HIDDEV=y | 1197 | CONFIG_USB_HIDDEV=y |
@@ -1069,15 +1200,14 @@ CONFIG_USB_HIDDEV=y | |||
1069 | # CONFIG_USB_ACECAD is not set | 1200 | # CONFIG_USB_ACECAD is not set |
1070 | # CONFIG_USB_KBTAB is not set | 1201 | # CONFIG_USB_KBTAB is not set |
1071 | # CONFIG_USB_POWERMATE is not set | 1202 | # CONFIG_USB_POWERMATE is not set |
1072 | # CONFIG_USB_MTOUCH is not set | 1203 | # CONFIG_USB_TOUCHSCREEN is not set |
1073 | # CONFIG_USB_ITMTOUCH is not set | ||
1074 | # CONFIG_USB_EGALAX is not set | ||
1075 | # CONFIG_USB_YEALINK is not set | 1204 | # CONFIG_USB_YEALINK is not set |
1076 | # CONFIG_USB_XPAD is not set | 1205 | # CONFIG_USB_XPAD is not set |
1077 | # CONFIG_USB_ATI_REMOTE is not set | 1206 | # CONFIG_USB_ATI_REMOTE is not set |
1078 | # CONFIG_USB_ATI_REMOTE2 is not set | 1207 | # CONFIG_USB_ATI_REMOTE2 is not set |
1079 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 1208 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
1080 | # CONFIG_USB_APPLETOUCH is not set | 1209 | # CONFIG_USB_APPLETOUCH is not set |
1210 | # CONFIG_USB_GTCO is not set | ||
1081 | 1211 | ||
1082 | # | 1212 | # |
1083 | # USB Imaging devices | 1213 | # USB Imaging devices |
@@ -1086,27 +1216,13 @@ CONFIG_USB_HIDDEV=y | |||
1086 | # CONFIG_USB_MICROTEK is not set | 1216 | # CONFIG_USB_MICROTEK is not set |
1087 | 1217 | ||
1088 | # | 1218 | # |
1089 | # USB Multimedia devices | ||
1090 | # | ||
1091 | # CONFIG_USB_DABUSB is not set | ||
1092 | # CONFIG_USB_VICAM is not set | ||
1093 | # CONFIG_USB_DSBR is not set | ||
1094 | # CONFIG_USB_ET61X251 is not set | ||
1095 | # CONFIG_USB_IBMCAM is not set | ||
1096 | # CONFIG_USB_KONICAWC is not set | ||
1097 | # CONFIG_USB_OV511 is not set | ||
1098 | # CONFIG_USB_SE401 is not set | ||
1099 | # CONFIG_USB_SN9C102 is not set | ||
1100 | # CONFIG_USB_STV680 is not set | ||
1101 | # CONFIG_USB_PWC is not set | ||
1102 | |||
1103 | # | ||
1104 | # USB Network Adapters | 1219 | # USB Network Adapters |
1105 | # | 1220 | # |
1106 | # CONFIG_USB_CATC is not set | 1221 | # CONFIG_USB_CATC is not set |
1107 | # CONFIG_USB_KAWETH is not set | 1222 | # CONFIG_USB_KAWETH is not set |
1108 | # CONFIG_USB_PEGASUS is not set | 1223 | # CONFIG_USB_PEGASUS is not set |
1109 | # CONFIG_USB_RTL8150 is not set | 1224 | # CONFIG_USB_RTL8150 is not set |
1225 | # CONFIG_USB_USBNET_MII is not set | ||
1110 | # CONFIG_USB_USBNET is not set | 1226 | # CONFIG_USB_USBNET is not set |
1111 | CONFIG_USB_MON=y | 1227 | CONFIG_USB_MON=y |
1112 | 1228 | ||
@@ -1124,17 +1240,23 @@ CONFIG_USB_MON=y | |||
1124 | # | 1240 | # |
1125 | # CONFIG_USB_EMI62 is not set | 1241 | # CONFIG_USB_EMI62 is not set |
1126 | # CONFIG_USB_EMI26 is not set | 1242 | # CONFIG_USB_EMI26 is not set |
1243 | # CONFIG_USB_ADUTUX is not set | ||
1127 | # CONFIG_USB_AUERSWALD is not set | 1244 | # CONFIG_USB_AUERSWALD is not set |
1128 | # CONFIG_USB_RIO500 is not set | 1245 | # CONFIG_USB_RIO500 is not set |
1129 | # CONFIG_USB_LEGOTOWER is not set | 1246 | # CONFIG_USB_LEGOTOWER is not set |
1130 | # CONFIG_USB_LCD is not set | 1247 | # CONFIG_USB_LCD is not set |
1248 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1131 | # CONFIG_USB_LED is not set | 1249 | # CONFIG_USB_LED is not set |
1250 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1132 | # CONFIG_USB_CYTHERM is not set | 1251 | # CONFIG_USB_CYTHERM is not set |
1133 | # CONFIG_USB_PHIDGETKIT is not set | 1252 | # CONFIG_USB_PHIDGET is not set |
1134 | # CONFIG_USB_PHIDGETSERVO is not set | ||
1135 | # CONFIG_USB_IDMOUSE is not set | 1253 | # CONFIG_USB_IDMOUSE is not set |
1254 | # CONFIG_USB_FTDI_ELAN is not set | ||
1255 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1136 | # CONFIG_USB_SISUSBVGA is not set | 1256 | # CONFIG_USB_SISUSBVGA is not set |
1137 | # CONFIG_USB_LD is not set | 1257 | # CONFIG_USB_LD is not set |
1258 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1259 | # CONFIG_USB_IOWARRIOR is not set | ||
1138 | 1260 | ||
1139 | # | 1261 | # |
1140 | # USB DSL modem support | 1262 | # USB DSL modem support |
@@ -1151,13 +1273,53 @@ CONFIG_USB_MON=y | |||
1151 | # CONFIG_MMC is not set | 1273 | # CONFIG_MMC is not set |
1152 | 1274 | ||
1153 | # | 1275 | # |
1276 | # LED devices | ||
1277 | # | ||
1278 | # CONFIG_NEW_LEDS is not set | ||
1279 | |||
1280 | # | ||
1281 | # LED drivers | ||
1282 | # | ||
1283 | |||
1284 | # | ||
1285 | # LED Triggers | ||
1286 | # | ||
1287 | |||
1288 | # | ||
1154 | # InfiniBand support | 1289 | # InfiniBand support |
1155 | # | 1290 | # |
1156 | # CONFIG_INFINIBAND is not set | 1291 | # CONFIG_INFINIBAND is not set |
1157 | 1292 | ||
1158 | # | 1293 | # |
1159 | # EDAC - error detection and reporting (RAS) | 1294 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) |
1295 | # | ||
1296 | |||
1297 | # | ||
1298 | # Real Time Clock | ||
1160 | # | 1299 | # |
1300 | # CONFIG_RTC_CLASS is not set | ||
1301 | |||
1302 | # | ||
1303 | # DMA Engine support | ||
1304 | # | ||
1305 | # CONFIG_DMA_ENGINE is not set | ||
1306 | |||
1307 | # | ||
1308 | # DMA Clients | ||
1309 | # | ||
1310 | |||
1311 | # | ||
1312 | # DMA Devices | ||
1313 | # | ||
1314 | |||
1315 | # | ||
1316 | # Auxiliary Display support | ||
1317 | # | ||
1318 | |||
1319 | # | ||
1320 | # Virtualization | ||
1321 | # | ||
1322 | # CONFIG_MSPEC is not set | ||
1161 | 1323 | ||
1162 | # | 1324 | # |
1163 | # File systems | 1325 | # File systems |
@@ -1171,6 +1333,7 @@ CONFIG_EXT3_FS=y | |||
1171 | CONFIG_EXT3_FS_XATTR=y | 1333 | CONFIG_EXT3_FS_XATTR=y |
1172 | # CONFIG_EXT3_FS_POSIX_ACL is not set | 1334 | # CONFIG_EXT3_FS_POSIX_ACL is not set |
1173 | # CONFIG_EXT3_FS_SECURITY is not set | 1335 | # CONFIG_EXT3_FS_SECURITY is not set |
1336 | # CONFIG_EXT4DEV_FS is not set | ||
1174 | CONFIG_JBD=y | 1337 | CONFIG_JBD=y |
1175 | # CONFIG_JBD_DEBUG is not set | 1338 | # CONFIG_JBD_DEBUG is not set |
1176 | CONFIG_FS_MBCACHE=y | 1339 | CONFIG_FS_MBCACHE=y |
@@ -1178,6 +1341,7 @@ CONFIG_FS_MBCACHE=y | |||
1178 | # CONFIG_JFS_FS is not set | 1341 | # CONFIG_JFS_FS is not set |
1179 | # CONFIG_FS_POSIX_ACL is not set | 1342 | # CONFIG_FS_POSIX_ACL is not set |
1180 | # CONFIG_XFS_FS is not set | 1343 | # CONFIG_XFS_FS is not set |
1344 | # CONFIG_GFS2_FS is not set | ||
1181 | # CONFIG_OCFS2_FS is not set | 1345 | # CONFIG_OCFS2_FS is not set |
1182 | # CONFIG_MINIX_FS is not set | 1346 | # CONFIG_MINIX_FS is not set |
1183 | # CONFIG_ROMFS_FS is not set | 1347 | # CONFIG_ROMFS_FS is not set |
@@ -1212,12 +1376,14 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1212 | # | 1376 | # |
1213 | CONFIG_PROC_FS=y | 1377 | CONFIG_PROC_FS=y |
1214 | CONFIG_PROC_KCORE=y | 1378 | CONFIG_PROC_KCORE=y |
1379 | CONFIG_PROC_VMCORE=y | ||
1380 | CONFIG_PROC_SYSCTL=y | ||
1215 | CONFIG_SYSFS=y | 1381 | CONFIG_SYSFS=y |
1216 | CONFIG_TMPFS=y | 1382 | CONFIG_TMPFS=y |
1383 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
1217 | CONFIG_HUGETLBFS=y | 1384 | CONFIG_HUGETLBFS=y |
1218 | CONFIG_HUGETLB_PAGE=y | 1385 | CONFIG_HUGETLB_PAGE=y |
1219 | CONFIG_RAMFS=y | 1386 | CONFIG_RAMFS=y |
1220 | # CONFIG_RELAYFS_FS is not set | ||
1221 | # CONFIG_CONFIGFS_FS is not set | 1387 | # CONFIG_CONFIGFS_FS is not set |
1222 | 1388 | ||
1223 | # | 1389 | # |
@@ -1331,15 +1497,25 @@ CONFIG_NLS_KOI8_U=y | |||
1331 | CONFIG_NLS_UTF8=y | 1497 | CONFIG_NLS_UTF8=y |
1332 | 1498 | ||
1333 | # | 1499 | # |
1500 | # Distributed Lock Manager | ||
1501 | # | ||
1502 | # CONFIG_DLM is not set | ||
1503 | |||
1504 | # | ||
1334 | # Library routines | 1505 | # Library routines |
1335 | # | 1506 | # |
1507 | CONFIG_BITREVERSE=y | ||
1336 | # CONFIG_CRC_CCITT is not set | 1508 | # CONFIG_CRC_CCITT is not set |
1337 | # CONFIG_CRC16 is not set | 1509 | # CONFIG_CRC16 is not set |
1338 | CONFIG_CRC32=y | 1510 | CONFIG_CRC32=y |
1339 | # CONFIG_LIBCRC32C is not set | 1511 | # CONFIG_LIBCRC32C is not set |
1512 | CONFIG_PLIST=y | ||
1513 | CONFIG_HAS_IOMEM=y | ||
1514 | CONFIG_HAS_IOPORT=y | ||
1340 | CONFIG_GENERIC_HARDIRQS=y | 1515 | CONFIG_GENERIC_HARDIRQS=y |
1341 | CONFIG_GENERIC_IRQ_PROBE=y | 1516 | CONFIG_GENERIC_IRQ_PROBE=y |
1342 | CONFIG_GENERIC_PENDING_IRQ=y | 1517 | CONFIG_GENERIC_PENDING_IRQ=y |
1518 | CONFIG_IRQ_PER_CPU=y | ||
1343 | 1519 | ||
1344 | # | 1520 | # |
1345 | # Instrumentation Support | 1521 | # Instrumentation Support |
@@ -1351,21 +1527,32 @@ CONFIG_KPROBES=y | |||
1351 | # Kernel hacking | 1527 | # Kernel hacking |
1352 | # | 1528 | # |
1353 | # CONFIG_PRINTK_TIME is not set | 1529 | # CONFIG_PRINTK_TIME is not set |
1530 | CONFIG_ENABLE_MUST_CHECK=y | ||
1354 | CONFIG_MAGIC_SYSRQ=y | 1531 | CONFIG_MAGIC_SYSRQ=y |
1532 | # CONFIG_UNUSED_SYMBOLS is not set | ||
1533 | # CONFIG_DEBUG_FS is not set | ||
1534 | # CONFIG_HEADERS_CHECK is not set | ||
1355 | CONFIG_DEBUG_KERNEL=y | 1535 | CONFIG_DEBUG_KERNEL=y |
1536 | # CONFIG_DEBUG_SHIRQ is not set | ||
1356 | CONFIG_LOG_BUF_SHIFT=17 | 1537 | CONFIG_LOG_BUF_SHIFT=17 |
1357 | CONFIG_DETECT_SOFTLOCKUP=y | 1538 | CONFIG_DETECT_SOFTLOCKUP=y |
1358 | # CONFIG_SCHEDSTATS is not set | 1539 | # CONFIG_SCHEDSTATS is not set |
1540 | # CONFIG_TIMER_STATS is not set | ||
1359 | # CONFIG_DEBUG_SLAB is not set | 1541 | # CONFIG_DEBUG_SLAB is not set |
1360 | CONFIG_DEBUG_MUTEXES=y | 1542 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1543 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1361 | # CONFIG_DEBUG_SPINLOCK is not set | 1544 | # CONFIG_DEBUG_SPINLOCK is not set |
1545 | CONFIG_DEBUG_MUTEXES=y | ||
1362 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | 1546 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set |
1547 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1363 | # CONFIG_DEBUG_KOBJECT is not set | 1548 | # CONFIG_DEBUG_KOBJECT is not set |
1364 | # CONFIG_DEBUG_INFO is not set | 1549 | # CONFIG_DEBUG_INFO is not set |
1365 | # CONFIG_DEBUG_FS is not set | ||
1366 | # CONFIG_DEBUG_VM is not set | 1550 | # CONFIG_DEBUG_VM is not set |
1551 | # CONFIG_DEBUG_LIST is not set | ||
1367 | CONFIG_FORCED_INLINING=y | 1552 | CONFIG_FORCED_INLINING=y |
1368 | # CONFIG_RCU_TORTURE_TEST is not set | 1553 | # CONFIG_RCU_TORTURE_TEST is not set |
1554 | # CONFIG_LKDTM is not set | ||
1555 | # CONFIG_FAULT_INJECTION is not set | ||
1369 | CONFIG_IA64_GRANULE_16MB=y | 1556 | CONFIG_IA64_GRANULE_16MB=y |
1370 | # CONFIG_IA64_GRANULE_64MB is not set | 1557 | # CONFIG_IA64_GRANULE_64MB is not set |
1371 | CONFIG_IA64_PRINT_HAZARDS=y | 1558 | CONFIG_IA64_PRINT_HAZARDS=y |
@@ -1384,7 +1571,11 @@ CONFIG_SYSVIPC_COMPAT=y | |||
1384 | # Cryptographic options | 1571 | # Cryptographic options |
1385 | # | 1572 | # |
1386 | CONFIG_CRYPTO=y | 1573 | CONFIG_CRYPTO=y |
1574 | CONFIG_CRYPTO_ALGAPI=y | ||
1575 | CONFIG_CRYPTO_BLKCIPHER=y | ||
1576 | CONFIG_CRYPTO_MANAGER=y | ||
1387 | # CONFIG_CRYPTO_HMAC is not set | 1577 | # CONFIG_CRYPTO_HMAC is not set |
1578 | # CONFIG_CRYPTO_XCBC is not set | ||
1388 | # CONFIG_CRYPTO_NULL is not set | 1579 | # CONFIG_CRYPTO_NULL is not set |
1389 | # CONFIG_CRYPTO_MD4 is not set | 1580 | # CONFIG_CRYPTO_MD4 is not set |
1390 | CONFIG_CRYPTO_MD5=y | 1581 | CONFIG_CRYPTO_MD5=y |
@@ -1393,7 +1584,13 @@ CONFIG_CRYPTO_MD5=y | |||
1393 | # CONFIG_CRYPTO_SHA512 is not set | 1584 | # CONFIG_CRYPTO_SHA512 is not set |
1394 | # CONFIG_CRYPTO_WP512 is not set | 1585 | # CONFIG_CRYPTO_WP512 is not set |
1395 | # CONFIG_CRYPTO_TGR192 is not set | 1586 | # CONFIG_CRYPTO_TGR192 is not set |
1587 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1588 | CONFIG_CRYPTO_ECB=m | ||
1589 | CONFIG_CRYPTO_CBC=y | ||
1590 | CONFIG_CRYPTO_PCBC=m | ||
1591 | # CONFIG_CRYPTO_LRW is not set | ||
1396 | CONFIG_CRYPTO_DES=y | 1592 | CONFIG_CRYPTO_DES=y |
1593 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1397 | # CONFIG_CRYPTO_BLOWFISH is not set | 1594 | # CONFIG_CRYPTO_BLOWFISH is not set |
1398 | # CONFIG_CRYPTO_TWOFISH is not set | 1595 | # CONFIG_CRYPTO_TWOFISH is not set |
1399 | # CONFIG_CRYPTO_SERPENT is not set | 1596 | # CONFIG_CRYPTO_SERPENT is not set |
@@ -1407,6 +1604,7 @@ CONFIG_CRYPTO_DES=y | |||
1407 | # CONFIG_CRYPTO_DEFLATE is not set | 1604 | # CONFIG_CRYPTO_DEFLATE is not set |
1408 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1605 | # CONFIG_CRYPTO_MICHAEL_MIC is not set |
1409 | # CONFIG_CRYPTO_CRC32C is not set | 1606 | # CONFIG_CRYPTO_CRC32C is not set |
1607 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1410 | # CONFIG_CRYPTO_TEST is not set | 1608 | # CONFIG_CRYPTO_TEST is not set |
1411 | 1609 | ||
1412 | # | 1610 | # |
diff --git a/arch/ia64/defconfig b/arch/ia64/defconfig index 9001b3fbaa32..153bfdc0182d 100644 --- a/arch/ia64/defconfig +++ b/arch/ia64/defconfig | |||
@@ -1,8 +1,9 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.16-rc5 | 3 | # Linux kernel version: 2.6.21-rc3 |
4 | # Mon Feb 27 16:02:28 2006 | 4 | # Thu Mar 8 11:01:03 2007 |
5 | # | 5 | # |
6 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
6 | 7 | ||
7 | # | 8 | # |
8 | # Code maturity level options | 9 | # Code maturity level options |
@@ -18,16 +19,24 @@ CONFIG_LOCALVERSION="" | |||
18 | CONFIG_LOCALVERSION_AUTO=y | 19 | CONFIG_LOCALVERSION_AUTO=y |
19 | CONFIG_SWAP=y | 20 | CONFIG_SWAP=y |
20 | CONFIG_SYSVIPC=y | 21 | CONFIG_SYSVIPC=y |
22 | # CONFIG_IPC_NS is not set | ||
23 | CONFIG_SYSVIPC_SYSCTL=y | ||
21 | CONFIG_POSIX_MQUEUE=y | 24 | CONFIG_POSIX_MQUEUE=y |
22 | # CONFIG_BSD_PROCESS_ACCT is not set | 25 | # CONFIG_BSD_PROCESS_ACCT is not set |
23 | CONFIG_SYSCTL=y | 26 | # CONFIG_TASKSTATS is not set |
27 | # CONFIG_UTS_NS is not set | ||
24 | # CONFIG_AUDIT is not set | 28 | # CONFIG_AUDIT is not set |
25 | CONFIG_IKCONFIG=y | 29 | CONFIG_IKCONFIG=y |
26 | CONFIG_IKCONFIG_PROC=y | 30 | CONFIG_IKCONFIG_PROC=y |
27 | # CONFIG_CPUSETS is not set | 31 | # CONFIG_CPUSETS is not set |
32 | CONFIG_SYSFS_DEPRECATED=y | ||
33 | # CONFIG_RELAY is not set | ||
34 | CONFIG_BLK_DEV_INITRD=y | ||
28 | CONFIG_INITRAMFS_SOURCE="" | 35 | CONFIG_INITRAMFS_SOURCE="" |
29 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 36 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
37 | CONFIG_SYSCTL=y | ||
30 | # CONFIG_EMBEDDED is not set | 38 | # CONFIG_EMBEDDED is not set |
39 | CONFIG_SYSCTL_SYSCALL=y | ||
31 | CONFIG_KALLSYMS=y | 40 | CONFIG_KALLSYMS=y |
32 | CONFIG_KALLSYMS_ALL=y | 41 | CONFIG_KALLSYMS_ALL=y |
33 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 42 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
@@ -39,11 +48,9 @@ CONFIG_BASE_FULL=y | |||
39 | CONFIG_FUTEX=y | 48 | CONFIG_FUTEX=y |
40 | CONFIG_EPOLL=y | 49 | CONFIG_EPOLL=y |
41 | CONFIG_SHMEM=y | 50 | CONFIG_SHMEM=y |
42 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
43 | CONFIG_CC_ALIGN_LABELS=0 | ||
44 | CONFIG_CC_ALIGN_LOOPS=0 | ||
45 | CONFIG_CC_ALIGN_JUMPS=0 | ||
46 | CONFIG_SLAB=y | 51 | CONFIG_SLAB=y |
52 | CONFIG_VM_EVENT_COUNTERS=y | ||
53 | CONFIG_RT_MUTEXES=y | ||
47 | # CONFIG_TINY_SHMEM is not set | 54 | # CONFIG_TINY_SHMEM is not set |
48 | CONFIG_BASE_SMALL=0 | 55 | CONFIG_BASE_SMALL=0 |
49 | # CONFIG_SLOB is not set | 56 | # CONFIG_SLOB is not set |
@@ -54,7 +61,6 @@ CONFIG_BASE_SMALL=0 | |||
54 | CONFIG_MODULES=y | 61 | CONFIG_MODULES=y |
55 | CONFIG_MODULE_UNLOAD=y | 62 | CONFIG_MODULE_UNLOAD=y |
56 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 63 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
57 | CONFIG_OBSOLETE_MODPARM=y | ||
58 | CONFIG_MODVERSIONS=y | 64 | CONFIG_MODVERSIONS=y |
59 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 65 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
60 | CONFIG_KMOD=y | 66 | CONFIG_KMOD=y |
@@ -63,6 +69,8 @@ CONFIG_STOP_MACHINE=y | |||
63 | # | 69 | # |
64 | # Block layer | 70 | # Block layer |
65 | # | 71 | # |
72 | CONFIG_BLOCK=y | ||
73 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
66 | 74 | ||
67 | # | 75 | # |
68 | # IO Schedulers | 76 | # IO Schedulers |
@@ -82,15 +90,20 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" | |||
82 | # | 90 | # |
83 | CONFIG_IA64=y | 91 | CONFIG_IA64=y |
84 | CONFIG_64BIT=y | 92 | CONFIG_64BIT=y |
93 | CONFIG_ZONE_DMA=y | ||
85 | CONFIG_MMU=y | 94 | CONFIG_MMU=y |
86 | CONFIG_SWIOTLB=y | 95 | CONFIG_SWIOTLB=y |
87 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 96 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
97 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
98 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
99 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
88 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 100 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
89 | CONFIG_TIME_INTERPOLATION=y | 101 | CONFIG_TIME_INTERPOLATION=y |
102 | CONFIG_DMI=y | ||
90 | CONFIG_EFI=y | 103 | CONFIG_EFI=y |
91 | CONFIG_GENERIC_IOMAP=y | 104 | CONFIG_GENERIC_IOMAP=y |
92 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 105 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y |
93 | CONFIG_DMA_IS_DMA32=y | 106 | CONFIG_AUDIT_ARCH=y |
94 | CONFIG_IA64_GENERIC=y | 107 | CONFIG_IA64_GENERIC=y |
95 | # CONFIG_IA64_DIG is not set | 108 | # CONFIG_IA64_DIG is not set |
96 | # CONFIG_IA64_HP_ZX1 is not set | 109 | # CONFIG_IA64_HP_ZX1 is not set |
@@ -107,6 +120,7 @@ CONFIG_PGTABLE_3=y | |||
107 | # CONFIG_PGTABLE_4 is not set | 120 | # CONFIG_PGTABLE_4 is not set |
108 | # CONFIG_HZ_100 is not set | 121 | # CONFIG_HZ_100 is not set |
109 | CONFIG_HZ_250=y | 122 | CONFIG_HZ_250=y |
123 | # CONFIG_HZ_300 is not set | ||
110 | # CONFIG_HZ_1000 is not set | 124 | # CONFIG_HZ_1000 is not set |
111 | CONFIG_HZ=250 | 125 | CONFIG_HZ=250 |
112 | CONFIG_IA64_L1_CACHE_SHIFT=7 | 126 | CONFIG_IA64_L1_CACHE_SHIFT=7 |
@@ -116,9 +130,10 @@ CONFIG_IOSAPIC=y | |||
116 | CONFIG_FORCE_MAX_ZONEORDER=17 | 130 | CONFIG_FORCE_MAX_ZONEORDER=17 |
117 | CONFIG_SMP=y | 131 | CONFIG_SMP=y |
118 | CONFIG_NR_CPUS=512 | 132 | CONFIG_NR_CPUS=512 |
119 | CONFIG_IA64_NR_NODES=256 | ||
120 | CONFIG_HOTPLUG_CPU=y | 133 | CONFIG_HOTPLUG_CPU=y |
134 | CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y | ||
121 | # CONFIG_SCHED_SMT is not set | 135 | # CONFIG_SCHED_SMT is not set |
136 | # CONFIG_PERMIT_BSP_REMOVE is not set | ||
122 | # CONFIG_PREEMPT is not set | 137 | # CONFIG_PREEMPT is not set |
123 | CONFIG_SELECT_MEMORY_MODEL=y | 138 | CONFIG_SELECT_MEMORY_MODEL=y |
124 | # CONFIG_FLATMEM_MANUAL is not set | 139 | # CONFIG_FLATMEM_MANUAL is not set |
@@ -130,21 +145,34 @@ CONFIG_NEED_MULTIPLE_NODES=y | |||
130 | # CONFIG_SPARSEMEM_STATIC is not set | 145 | # CONFIG_SPARSEMEM_STATIC is not set |
131 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 146 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
132 | CONFIG_MIGRATION=y | 147 | CONFIG_MIGRATION=y |
148 | CONFIG_RESOURCES_64BIT=y | ||
149 | CONFIG_ZONE_DMA_FLAG=1 | ||
133 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | 150 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y |
134 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y | 151 | CONFIG_ARCH_DISCONTIGMEM_ENABLE=y |
135 | CONFIG_ARCH_FLATMEM_ENABLE=y | 152 | CONFIG_ARCH_FLATMEM_ENABLE=y |
136 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | 153 | CONFIG_ARCH_SPARSEMEM_ENABLE=y |
137 | CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y | 154 | CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y |
138 | CONFIG_NUMA=y | 155 | CONFIG_NUMA=y |
156 | CONFIG_NODES_SHIFT=10 | ||
157 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
139 | CONFIG_VIRTUAL_MEM_MAP=y | 158 | CONFIG_VIRTUAL_MEM_MAP=y |
140 | CONFIG_HOLES_IN_ZONE=y | 159 | CONFIG_HOLES_IN_ZONE=y |
141 | CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y | 160 | CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y |
161 | CONFIG_HAVE_ARCH_NODEDATA_EXTENSION=y | ||
142 | CONFIG_IA32_SUPPORT=y | 162 | CONFIG_IA32_SUPPORT=y |
143 | CONFIG_COMPAT=y | 163 | CONFIG_COMPAT=y |
144 | CONFIG_IA64_MCA_RECOVERY=y | 164 | CONFIG_IA64_MCA_RECOVERY=y |
145 | CONFIG_PERFMON=y | 165 | CONFIG_PERFMON=y |
146 | CONFIG_IA64_PALINFO=y | 166 | CONFIG_IA64_PALINFO=y |
147 | CONFIG_SGI_SN=y | 167 | CONFIG_SGI_SN=y |
168 | # CONFIG_IA64_ESI is not set | ||
169 | |||
170 | # | ||
171 | # SN Devices | ||
172 | # | ||
173 | CONFIG_SGI_IOC3=m | ||
174 | CONFIG_KEXEC=y | ||
175 | CONFIG_CRASH_DUMP=y | ||
148 | 176 | ||
149 | # | 177 | # |
150 | # Firmware Drivers | 178 | # Firmware Drivers |
@@ -160,13 +188,16 @@ CONFIG_BINFMT_MISC=m | |||
160 | CONFIG_PM=y | 188 | CONFIG_PM=y |
161 | CONFIG_PM_LEGACY=y | 189 | CONFIG_PM_LEGACY=y |
162 | # CONFIG_PM_DEBUG is not set | 190 | # CONFIG_PM_DEBUG is not set |
191 | # CONFIG_PM_SYSFS_DEPRECATED is not set | ||
163 | 192 | ||
164 | # | 193 | # |
165 | # ACPI (Advanced Configuration and Power Interface) Support | 194 | # ACPI (Advanced Configuration and Power Interface) Support |
166 | # | 195 | # |
167 | CONFIG_ACPI=y | 196 | CONFIG_ACPI=y |
197 | CONFIG_ACPI_PROCFS=y | ||
168 | CONFIG_ACPI_BUTTON=m | 198 | CONFIG_ACPI_BUTTON=m |
169 | CONFIG_ACPI_FAN=m | 199 | CONFIG_ACPI_FAN=m |
200 | # CONFIG_ACPI_DOCK is not set | ||
170 | CONFIG_ACPI_PROCESSOR=m | 201 | CONFIG_ACPI_PROCESSOR=m |
171 | CONFIG_ACPI_HOTPLUG_CPU=y | 202 | CONFIG_ACPI_HOTPLUG_CPU=y |
172 | CONFIG_ACPI_THERMAL=m | 203 | CONFIG_ACPI_THERMAL=m |
@@ -188,8 +219,8 @@ CONFIG_ACPI_CONTAINER=m | |||
188 | # | 219 | # |
189 | CONFIG_PCI=y | 220 | CONFIG_PCI=y |
190 | CONFIG_PCI_DOMAINS=y | 221 | CONFIG_PCI_DOMAINS=y |
222 | # CONFIG_PCIEPORTBUS is not set | ||
191 | # CONFIG_PCI_MSI is not set | 223 | # CONFIG_PCI_MSI is not set |
192 | CONFIG_PCI_LEGACY_PROC=y | ||
193 | # CONFIG_PCI_DEBUG is not set | 224 | # CONFIG_PCI_DEBUG is not set |
194 | 225 | ||
195 | # | 226 | # |
@@ -220,6 +251,10 @@ CONFIG_NET=y | |||
220 | CONFIG_PACKET=y | 251 | CONFIG_PACKET=y |
221 | # CONFIG_PACKET_MMAP is not set | 252 | # CONFIG_PACKET_MMAP is not set |
222 | CONFIG_UNIX=y | 253 | CONFIG_UNIX=y |
254 | CONFIG_XFRM=y | ||
255 | # CONFIG_XFRM_USER is not set | ||
256 | # CONFIG_XFRM_SUB_POLICY is not set | ||
257 | # CONFIG_XFRM_MIGRATE is not set | ||
223 | # CONFIG_NET_KEY is not set | 258 | # CONFIG_NET_KEY is not set |
224 | CONFIG_INET=y | 259 | CONFIG_INET=y |
225 | CONFIG_IP_MULTICAST=y | 260 | CONFIG_IP_MULTICAST=y |
@@ -234,12 +269,21 @@ CONFIG_SYN_COOKIES=y | |||
234 | # CONFIG_INET_AH is not set | 269 | # CONFIG_INET_AH is not set |
235 | # CONFIG_INET_ESP is not set | 270 | # CONFIG_INET_ESP is not set |
236 | # CONFIG_INET_IPCOMP is not set | 271 | # CONFIG_INET_IPCOMP is not set |
272 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
237 | # CONFIG_INET_TUNNEL is not set | 273 | # CONFIG_INET_TUNNEL is not set |
274 | CONFIG_INET_XFRM_MODE_TRANSPORT=y | ||
275 | CONFIG_INET_XFRM_MODE_TUNNEL=y | ||
276 | CONFIG_INET_XFRM_MODE_BEET=y | ||
238 | CONFIG_INET_DIAG=y | 277 | CONFIG_INET_DIAG=y |
239 | CONFIG_INET_TCP_DIAG=y | 278 | CONFIG_INET_TCP_DIAG=y |
240 | # CONFIG_TCP_CONG_ADVANCED is not set | 279 | # CONFIG_TCP_CONG_ADVANCED is not set |
241 | CONFIG_TCP_CONG_BIC=y | 280 | CONFIG_TCP_CONG_CUBIC=y |
281 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
282 | # CONFIG_TCP_MD5SIG is not set | ||
242 | # CONFIG_IPV6 is not set | 283 | # CONFIG_IPV6 is not set |
284 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
285 | # CONFIG_INET6_TUNNEL is not set | ||
286 | # CONFIG_NETWORK_SECMARK is not set | ||
243 | # CONFIG_NETFILTER is not set | 287 | # CONFIG_NETFILTER is not set |
244 | 288 | ||
245 | # | 289 | # |
@@ -265,7 +309,6 @@ CONFIG_TCP_CONG_BIC=y | |||
265 | # CONFIG_ATALK is not set | 309 | # CONFIG_ATALK is not set |
266 | # CONFIG_X25 is not set | 310 | # CONFIG_X25 is not set |
267 | # CONFIG_LAPB is not set | 311 | # CONFIG_LAPB is not set |
268 | # CONFIG_NET_DIVERT is not set | ||
269 | # CONFIG_ECONET is not set | 312 | # CONFIG_ECONET is not set |
270 | # CONFIG_WAN_ROUTER is not set | 313 | # CONFIG_WAN_ROUTER is not set |
271 | 314 | ||
@@ -294,6 +337,8 @@ CONFIG_STANDALONE=y | |||
294 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 337 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
295 | CONFIG_FW_LOADER=m | 338 | CONFIG_FW_LOADER=m |
296 | # CONFIG_DEBUG_DRIVER is not set | 339 | # CONFIG_DEBUG_DRIVER is not set |
340 | # CONFIG_DEBUG_DEVRES is not set | ||
341 | # CONFIG_SYS_HYPERVISOR is not set | ||
297 | 342 | ||
298 | # | 343 | # |
299 | # Connector - unified userspace <-> kernelspace linker | 344 | # Connector - unified userspace <-> kernelspace linker |
@@ -337,11 +382,17 @@ CONFIG_BLK_DEV_NBD=m | |||
337 | CONFIG_BLK_DEV_RAM=y | 382 | CONFIG_BLK_DEV_RAM=y |
338 | CONFIG_BLK_DEV_RAM_COUNT=16 | 383 | CONFIG_BLK_DEV_RAM_COUNT=16 |
339 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 384 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
340 | CONFIG_BLK_DEV_INITRD=y | 385 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 |
341 | # CONFIG_CDROM_PKTCDVD is not set | 386 | # CONFIG_CDROM_PKTCDVD is not set |
342 | # CONFIG_ATA_OVER_ETH is not set | 387 | # CONFIG_ATA_OVER_ETH is not set |
343 | 388 | ||
344 | # | 389 | # |
390 | # Misc devices | ||
391 | # | ||
392 | CONFIG_SGI_IOC4=y | ||
393 | # CONFIG_TIFM_CORE is not set | ||
394 | |||
395 | # | ||
345 | # ATA/ATAPI/MFM/RLL support | 396 | # ATA/ATAPI/MFM/RLL support |
346 | # | 397 | # |
347 | CONFIG_IDE=y | 398 | CONFIG_IDE=y |
@@ -358,6 +409,7 @@ CONFIG_BLK_DEV_IDECD=y | |||
358 | # CONFIG_BLK_DEV_IDETAPE is not set | 409 | # CONFIG_BLK_DEV_IDETAPE is not set |
359 | CONFIG_BLK_DEV_IDEFLOPPY=y | 410 | CONFIG_BLK_DEV_IDEFLOPPY=y |
360 | CONFIG_BLK_DEV_IDESCSI=m | 411 | CONFIG_BLK_DEV_IDESCSI=m |
412 | # CONFIG_BLK_DEV_IDEACPI is not set | ||
361 | # CONFIG_IDE_TASK_IOCTL is not set | 413 | # CONFIG_IDE_TASK_IOCTL is not set |
362 | 414 | ||
363 | # | 415 | # |
@@ -384,8 +436,10 @@ CONFIG_BLK_DEV_CMD64X=y | |||
384 | # CONFIG_BLK_DEV_CS5530 is not set | 436 | # CONFIG_BLK_DEV_CS5530 is not set |
385 | # CONFIG_BLK_DEV_HPT34X is not set | 437 | # CONFIG_BLK_DEV_HPT34X is not set |
386 | # CONFIG_BLK_DEV_HPT366 is not set | 438 | # CONFIG_BLK_DEV_HPT366 is not set |
439 | # CONFIG_BLK_DEV_JMICRON is not set | ||
387 | # CONFIG_BLK_DEV_SC1200 is not set | 440 | # CONFIG_BLK_DEV_SC1200 is not set |
388 | CONFIG_BLK_DEV_PIIX=y | 441 | CONFIG_BLK_DEV_PIIX=y |
442 | # CONFIG_BLK_DEV_IT8213 is not set | ||
389 | # CONFIG_BLK_DEV_IT821X is not set | 443 | # CONFIG_BLK_DEV_IT821X is not set |
390 | # CONFIG_BLK_DEV_NS87415 is not set | 444 | # CONFIG_BLK_DEV_NS87415 is not set |
391 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 445 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
@@ -396,6 +450,7 @@ CONFIG_BLK_DEV_SGIIOC4=y | |||
396 | # CONFIG_BLK_DEV_SLC90E66 is not set | 450 | # CONFIG_BLK_DEV_SLC90E66 is not set |
397 | # CONFIG_BLK_DEV_TRM290 is not set | 451 | # CONFIG_BLK_DEV_TRM290 is not set |
398 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 452 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
453 | # CONFIG_BLK_DEV_TC86C001 is not set | ||
399 | # CONFIG_IDE_ARM is not set | 454 | # CONFIG_IDE_ARM is not set |
400 | CONFIG_BLK_DEV_IDEDMA=y | 455 | CONFIG_BLK_DEV_IDEDMA=y |
401 | # CONFIG_IDEDMA_IVB is not set | 456 | # CONFIG_IDEDMA_IVB is not set |
@@ -407,6 +462,8 @@ CONFIG_IDEDMA_AUTO=y | |||
407 | # | 462 | # |
408 | # CONFIG_RAID_ATTRS is not set | 463 | # CONFIG_RAID_ATTRS is not set |
409 | CONFIG_SCSI=y | 464 | CONFIG_SCSI=y |
465 | # CONFIG_SCSI_TGT is not set | ||
466 | CONFIG_SCSI_NETLINK=y | ||
410 | CONFIG_SCSI_PROC_FS=y | 467 | CONFIG_SCSI_PROC_FS=y |
411 | 468 | ||
412 | # | 469 | # |
@@ -426,14 +483,16 @@ CONFIG_CHR_DEV_SG=m | |||
426 | # CONFIG_SCSI_MULTI_LUN is not set | 483 | # CONFIG_SCSI_MULTI_LUN is not set |
427 | # CONFIG_SCSI_CONSTANTS is not set | 484 | # CONFIG_SCSI_CONSTANTS is not set |
428 | # CONFIG_SCSI_LOGGING is not set | 485 | # CONFIG_SCSI_LOGGING is not set |
486 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
429 | 487 | ||
430 | # | 488 | # |
431 | # SCSI Transport Attributes | 489 | # SCSI Transports |
432 | # | 490 | # |
433 | CONFIG_SCSI_SPI_ATTRS=y | 491 | CONFIG_SCSI_SPI_ATTRS=y |
434 | CONFIG_SCSI_FC_ATTRS=y | 492 | CONFIG_SCSI_FC_ATTRS=y |
435 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 493 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
436 | # CONFIG_SCSI_SAS_ATTRS is not set | 494 | # CONFIG_SCSI_SAS_ATTRS is not set |
495 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
437 | 496 | ||
438 | # | 497 | # |
439 | # SCSI low-level drivers | 498 | # SCSI low-level drivers |
@@ -446,43 +505,36 @@ CONFIG_SCSI_FC_ATTRS=y | |||
446 | # CONFIG_SCSI_AIC7XXX is not set | 505 | # CONFIG_SCSI_AIC7XXX is not set |
447 | # CONFIG_SCSI_AIC7XXX_OLD is not set | 506 | # CONFIG_SCSI_AIC7XXX_OLD is not set |
448 | # CONFIG_SCSI_AIC79XX is not set | 507 | # CONFIG_SCSI_AIC79XX is not set |
508 | # CONFIG_SCSI_AIC94XX is not set | ||
509 | # CONFIG_SCSI_ARCMSR is not set | ||
449 | # CONFIG_MEGARAID_NEWGEN is not set | 510 | # CONFIG_MEGARAID_NEWGEN is not set |
450 | # CONFIG_MEGARAID_LEGACY is not set | 511 | # CONFIG_MEGARAID_LEGACY is not set |
451 | # CONFIG_MEGARAID_SAS is not set | 512 | # CONFIG_MEGARAID_SAS is not set |
452 | CONFIG_SCSI_SATA=y | 513 | # CONFIG_SCSI_HPTIOP is not set |
453 | # CONFIG_SCSI_SATA_AHCI is not set | ||
454 | # CONFIG_SCSI_SATA_SVW is not set | ||
455 | # CONFIG_SCSI_ATA_PIIX is not set | ||
456 | # CONFIG_SCSI_SATA_MV is not set | ||
457 | # CONFIG_SCSI_SATA_NV is not set | ||
458 | # CONFIG_SCSI_PDC_ADMA is not set | ||
459 | # CONFIG_SCSI_SATA_QSTOR is not set | ||
460 | # CONFIG_SCSI_SATA_PROMISE is not set | ||
461 | # CONFIG_SCSI_SATA_SX4 is not set | ||
462 | # CONFIG_SCSI_SATA_SIL is not set | ||
463 | # CONFIG_SCSI_SATA_SIL24 is not set | ||
464 | # CONFIG_SCSI_SATA_SIS is not set | ||
465 | # CONFIG_SCSI_SATA_ULI is not set | ||
466 | # CONFIG_SCSI_SATA_VIA is not set | ||
467 | CONFIG_SCSI_SATA_VITESSE=y | ||
468 | # CONFIG_SCSI_DMX3191D is not set | 514 | # CONFIG_SCSI_DMX3191D is not set |
469 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 515 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
470 | # CONFIG_SCSI_IPS is not set | 516 | # CONFIG_SCSI_IPS is not set |
471 | # CONFIG_SCSI_INITIO is not set | 517 | # CONFIG_SCSI_INITIO is not set |
472 | # CONFIG_SCSI_INIA100 is not set | 518 | # CONFIG_SCSI_INIA100 is not set |
519 | # CONFIG_SCSI_STEX is not set | ||
473 | CONFIG_SCSI_SYM53C8XX_2=y | 520 | CONFIG_SCSI_SYM53C8XX_2=y |
474 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 | 521 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 |
475 | CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 | 522 | CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 |
476 | CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 | 523 | CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 |
477 | # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set | 524 | CONFIG_SCSI_SYM53C8XX_MMIO=y |
478 | # CONFIG_SCSI_IPR is not set | ||
479 | # CONFIG_SCSI_QLOGIC_FC is not set | ||
480 | CONFIG_SCSI_QLOGIC_1280=y | 525 | CONFIG_SCSI_QLOGIC_1280=y |
481 | # CONFIG_SCSI_QLA_FC is not set | 526 | # CONFIG_SCSI_QLA_FC is not set |
527 | # CONFIG_SCSI_QLA_ISCSI is not set | ||
482 | # CONFIG_SCSI_LPFC is not set | 528 | # CONFIG_SCSI_LPFC is not set |
483 | # CONFIG_SCSI_DC395x is not set | 529 | # CONFIG_SCSI_DC395x is not set |
484 | # CONFIG_SCSI_DC390T is not set | 530 | # CONFIG_SCSI_DC390T is not set |
485 | # CONFIG_SCSI_DEBUG is not set | 531 | # CONFIG_SCSI_DEBUG is not set |
532 | # CONFIG_SCSI_SRP is not set | ||
533 | |||
534 | # | ||
535 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
536 | # | ||
537 | # CONFIG_ATA is not set | ||
486 | 538 | ||
487 | # | 539 | # |
488 | # Multi-device support (RAID and LVM) | 540 | # Multi-device support (RAID and LVM) |
@@ -493,11 +545,11 @@ CONFIG_MD_LINEAR=m | |||
493 | CONFIG_MD_RAID0=m | 545 | CONFIG_MD_RAID0=m |
494 | CONFIG_MD_RAID1=m | 546 | CONFIG_MD_RAID1=m |
495 | # CONFIG_MD_RAID10 is not set | 547 | # CONFIG_MD_RAID10 is not set |
496 | CONFIG_MD_RAID5=m | 548 | # CONFIG_MD_RAID456 is not set |
497 | CONFIG_MD_RAID6=m | ||
498 | CONFIG_MD_MULTIPATH=m | 549 | CONFIG_MD_MULTIPATH=m |
499 | # CONFIG_MD_FAULTY is not set | 550 | # CONFIG_MD_FAULTY is not set |
500 | CONFIG_BLK_DEV_DM=m | 551 | CONFIG_BLK_DEV_DM=m |
552 | # CONFIG_DM_DEBUG is not set | ||
501 | CONFIG_DM_CRYPT=m | 553 | CONFIG_DM_CRYPT=m |
502 | CONFIG_DM_SNAPSHOT=m | 554 | CONFIG_DM_SNAPSHOT=m |
503 | CONFIG_DM_MIRROR=m | 555 | CONFIG_DM_MIRROR=m |
@@ -587,6 +639,7 @@ CONFIG_E100=m | |||
587 | # CONFIG_EPIC100 is not set | 639 | # CONFIG_EPIC100 is not set |
588 | # CONFIG_SUNDANCE is not set | 640 | # CONFIG_SUNDANCE is not set |
589 | # CONFIG_VIA_RHINE is not set | 641 | # CONFIG_VIA_RHINE is not set |
642 | # CONFIG_SC92031 is not set | ||
590 | 643 | ||
591 | # | 644 | # |
592 | # Ethernet (1000 Mbit) | 645 | # Ethernet (1000 Mbit) |
@@ -607,13 +660,18 @@ CONFIG_E1000=y | |||
607 | # CONFIG_VIA_VELOCITY is not set | 660 | # CONFIG_VIA_VELOCITY is not set |
608 | CONFIG_TIGON3=y | 661 | CONFIG_TIGON3=y |
609 | # CONFIG_BNX2 is not set | 662 | # CONFIG_BNX2 is not set |
663 | # CONFIG_QLA3XXX is not set | ||
664 | # CONFIG_ATL1 is not set | ||
610 | 665 | ||
611 | # | 666 | # |
612 | # Ethernet (10000 Mbit) | 667 | # Ethernet (10000 Mbit) |
613 | # | 668 | # |
614 | # CONFIG_CHELSIO_T1 is not set | 669 | # CONFIG_CHELSIO_T1 is not set |
670 | # CONFIG_CHELSIO_T3 is not set | ||
615 | # CONFIG_IXGB is not set | 671 | # CONFIG_IXGB is not set |
616 | # CONFIG_S2IO is not set | 672 | # CONFIG_S2IO is not set |
673 | # CONFIG_MYRI10GE is not set | ||
674 | # CONFIG_NETXEN_NIC is not set | ||
617 | 675 | ||
618 | # | 676 | # |
619 | # Token Ring devices | 677 | # Token Ring devices |
@@ -655,6 +713,7 @@ CONFIG_NET_POLL_CONTROLLER=y | |||
655 | # Input device support | 713 | # Input device support |
656 | # | 714 | # |
657 | CONFIG_INPUT=y | 715 | CONFIG_INPUT=y |
716 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
658 | 717 | ||
659 | # | 718 | # |
660 | # Userland interfaces | 719 | # Userland interfaces |
@@ -677,6 +736,7 @@ CONFIG_KEYBOARD_ATKBD=y | |||
677 | # CONFIG_KEYBOARD_LKKBD is not set | 736 | # CONFIG_KEYBOARD_LKKBD is not set |
678 | # CONFIG_KEYBOARD_XTKBD is not set | 737 | # CONFIG_KEYBOARD_XTKBD is not set |
679 | # CONFIG_KEYBOARD_NEWTON is not set | 738 | # CONFIG_KEYBOARD_NEWTON is not set |
739 | # CONFIG_KEYBOARD_STOWAWAY is not set | ||
680 | CONFIG_INPUT_MOUSE=y | 740 | CONFIG_INPUT_MOUSE=y |
681 | CONFIG_MOUSE_PS2=y | 741 | CONFIG_MOUSE_PS2=y |
682 | # CONFIG_MOUSE_SERIAL is not set | 742 | # CONFIG_MOUSE_SERIAL is not set |
@@ -706,6 +766,7 @@ CONFIG_GAMEPORT=m | |||
706 | CONFIG_VT=y | 766 | CONFIG_VT=y |
707 | CONFIG_VT_CONSOLE=y | 767 | CONFIG_VT_CONSOLE=y |
708 | CONFIG_HW_CONSOLE=y | 768 | CONFIG_HW_CONSOLE=y |
769 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
709 | CONFIG_SERIAL_NONSTANDARD=y | 770 | CONFIG_SERIAL_NONSTANDARD=y |
710 | # CONFIG_COMPUTONE is not set | 771 | # CONFIG_COMPUTONE is not set |
711 | # CONFIG_ROCKETPORT is not set | 772 | # CONFIG_ROCKETPORT is not set |
@@ -713,12 +774,14 @@ CONFIG_SERIAL_NONSTANDARD=y | |||
713 | # CONFIG_DIGIEPCA is not set | 774 | # CONFIG_DIGIEPCA is not set |
714 | # CONFIG_MOXA_INTELLIO is not set | 775 | # CONFIG_MOXA_INTELLIO is not set |
715 | # CONFIG_MOXA_SMARTIO is not set | 776 | # CONFIG_MOXA_SMARTIO is not set |
777 | # CONFIG_MOXA_SMARTIO_NEW is not set | ||
716 | # CONFIG_ISI is not set | 778 | # CONFIG_ISI is not set |
717 | # CONFIG_SYNCLINKMP is not set | 779 | # CONFIG_SYNCLINKMP is not set |
718 | # CONFIG_SYNCLINK_GT is not set | 780 | # CONFIG_SYNCLINK_GT is not set |
719 | # CONFIG_N_HDLC is not set | 781 | # CONFIG_N_HDLC is not set |
720 | # CONFIG_SPECIALIX is not set | 782 | # CONFIG_SPECIALIX is not set |
721 | # CONFIG_SX is not set | 783 | # CONFIG_SX is not set |
784 | # CONFIG_RIO is not set | ||
722 | # CONFIG_STALDRV is not set | 785 | # CONFIG_STALDRV is not set |
723 | CONFIG_SGI_SNSC=y | 786 | CONFIG_SGI_SNSC=y |
724 | CONFIG_SGI_TIOCX=y | 787 | CONFIG_SGI_TIOCX=y |
@@ -729,7 +792,8 @@ CONFIG_SGI_MBCS=m | |||
729 | # | 792 | # |
730 | CONFIG_SERIAL_8250=y | 793 | CONFIG_SERIAL_8250=y |
731 | CONFIG_SERIAL_8250_CONSOLE=y | 794 | CONFIG_SERIAL_8250_CONSOLE=y |
732 | CONFIG_SERIAL_8250_ACPI=y | 795 | CONFIG_SERIAL_8250_PCI=y |
796 | CONFIG_SERIAL_8250_PNP=y | ||
733 | CONFIG_SERIAL_8250_NR_UARTS=6 | 797 | CONFIG_SERIAL_8250_NR_UARTS=6 |
734 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 798 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
735 | CONFIG_SERIAL_8250_EXTENDED=y | 799 | CONFIG_SERIAL_8250_EXTENDED=y |
@@ -764,10 +828,6 @@ CONFIG_EFI_RTC=y | |||
764 | # CONFIG_DTLK is not set | 828 | # CONFIG_DTLK is not set |
765 | # CONFIG_R3964 is not set | 829 | # CONFIG_R3964 is not set |
766 | # CONFIG_APPLICOM is not set | 830 | # CONFIG_APPLICOM is not set |
767 | |||
768 | # | ||
769 | # Ftape, the floppy tape device driver | ||
770 | # | ||
771 | CONFIG_AGP=m | 831 | CONFIG_AGP=m |
772 | CONFIG_AGP_I460=m | 832 | CONFIG_AGP_I460=m |
773 | CONFIG_AGP_HP_ZX1=m | 833 | CONFIG_AGP_HP_ZX1=m |
@@ -792,7 +852,6 @@ CONFIG_MMTIMER=y | |||
792 | # TPM devices | 852 | # TPM devices |
793 | # | 853 | # |
794 | # CONFIG_TCG_TPM is not set | 854 | # CONFIG_TCG_TPM is not set |
795 | # CONFIG_TELCLOCK is not set | ||
796 | 855 | ||
797 | # | 856 | # |
798 | # I2C support | 857 | # I2C support |
@@ -815,16 +874,16 @@ CONFIG_MMTIMER=y | |||
815 | # | 874 | # |
816 | CONFIG_HWMON=y | 875 | CONFIG_HWMON=y |
817 | # CONFIG_HWMON_VID is not set | 876 | # CONFIG_HWMON_VID is not set |
877 | # CONFIG_SENSORS_ABITUGURU is not set | ||
818 | # CONFIG_SENSORS_F71805F is not set | 878 | # CONFIG_SENSORS_F71805F is not set |
879 | # CONFIG_SENSORS_PC87427 is not set | ||
880 | # CONFIG_SENSORS_VT1211 is not set | ||
819 | # CONFIG_HWMON_DEBUG_CHIP is not set | 881 | # CONFIG_HWMON_DEBUG_CHIP is not set |
820 | 882 | ||
821 | # | 883 | # |
822 | # Misc devices | 884 | # Multifunction device drivers |
823 | # | ||
824 | |||
825 | # | ||
826 | # Multimedia Capabilities Port drivers | ||
827 | # | 885 | # |
886 | # CONFIG_MFD_SM501 is not set | ||
828 | 887 | ||
829 | # | 888 | # |
830 | # Multimedia devices | 889 | # Multimedia devices |
@@ -835,16 +894,19 @@ CONFIG_HWMON=y | |||
835 | # Digital Video Broadcasting Devices | 894 | # Digital Video Broadcasting Devices |
836 | # | 895 | # |
837 | # CONFIG_DVB is not set | 896 | # CONFIG_DVB is not set |
897 | # CONFIG_USB_DABUSB is not set | ||
838 | 898 | ||
839 | # | 899 | # |
840 | # Graphics support | 900 | # Graphics support |
841 | # | 901 | # |
902 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
842 | # CONFIG_FB is not set | 903 | # CONFIG_FB is not set |
843 | 904 | ||
844 | # | 905 | # |
845 | # Console display driver support | 906 | # Console display driver support |
846 | # | 907 | # |
847 | CONFIG_VGA_CONSOLE=y | 908 | CONFIG_VGA_CONSOLE=y |
909 | # CONFIG_VGACON_SOFT_SCROLLBACK is not set | ||
848 | CONFIG_DUMMY_CONSOLE=y | 910 | CONFIG_DUMMY_CONSOLE=y |
849 | 911 | ||
850 | # | 912 | # |
@@ -865,9 +927,11 @@ CONFIG_SND_SEQ_DUMMY=m | |||
865 | CONFIG_SND_OSSEMUL=y | 927 | CONFIG_SND_OSSEMUL=y |
866 | CONFIG_SND_MIXER_OSS=m | 928 | CONFIG_SND_MIXER_OSS=m |
867 | CONFIG_SND_PCM_OSS=m | 929 | CONFIG_SND_PCM_OSS=m |
930 | CONFIG_SND_PCM_OSS_PLUGINS=y | ||
868 | CONFIG_SND_SEQUENCER_OSS=y | 931 | CONFIG_SND_SEQUENCER_OSS=y |
869 | # CONFIG_SND_DYNAMIC_MINORS is not set | 932 | # CONFIG_SND_DYNAMIC_MINORS is not set |
870 | CONFIG_SND_SUPPORT_OLD_API=y | 933 | CONFIG_SND_SUPPORT_OLD_API=y |
934 | CONFIG_SND_VERBOSE_PROCFS=y | ||
871 | CONFIG_SND_VERBOSE_PRINTK=y | 935 | CONFIG_SND_VERBOSE_PRINTK=y |
872 | # CONFIG_SND_DEBUG is not set | 936 | # CONFIG_SND_DEBUG is not set |
873 | 937 | ||
@@ -877,7 +941,6 @@ CONFIG_SND_VERBOSE_PRINTK=y | |||
877 | CONFIG_SND_MPU401_UART=m | 941 | CONFIG_SND_MPU401_UART=m |
878 | CONFIG_SND_OPL3_LIB=m | 942 | CONFIG_SND_OPL3_LIB=m |
879 | CONFIG_SND_AC97_CODEC=m | 943 | CONFIG_SND_AC97_CODEC=m |
880 | CONFIG_SND_AC97_BUS=m | ||
881 | CONFIG_SND_DUMMY=m | 944 | CONFIG_SND_DUMMY=m |
882 | CONFIG_SND_VIRMIDI=m | 945 | CONFIG_SND_VIRMIDI=m |
883 | CONFIG_SND_MTPAV=m | 946 | CONFIG_SND_MTPAV=m |
@@ -888,6 +951,7 @@ CONFIG_SND_MPU401=m | |||
888 | # PCI devices | 951 | # PCI devices |
889 | # | 952 | # |
890 | # CONFIG_SND_AD1889 is not set | 953 | # CONFIG_SND_AD1889 is not set |
954 | # CONFIG_SND_ALS300 is not set | ||
891 | # CONFIG_SND_ALI5451 is not set | 955 | # CONFIG_SND_ALI5451 is not set |
892 | # CONFIG_SND_ATIIXP is not set | 956 | # CONFIG_SND_ATIIXP is not set |
893 | # CONFIG_SND_ATIIXP_MODEM is not set | 957 | # CONFIG_SND_ATIIXP_MODEM is not set |
@@ -901,6 +965,18 @@ CONFIG_SND_MPU401=m | |||
901 | CONFIG_SND_CS4281=m | 965 | CONFIG_SND_CS4281=m |
902 | CONFIG_SND_CS46XX=m | 966 | CONFIG_SND_CS46XX=m |
903 | CONFIG_SND_CS46XX_NEW_DSP=y | 967 | CONFIG_SND_CS46XX_NEW_DSP=y |
968 | # CONFIG_SND_DARLA20 is not set | ||
969 | # CONFIG_SND_GINA20 is not set | ||
970 | # CONFIG_SND_LAYLA20 is not set | ||
971 | # CONFIG_SND_DARLA24 is not set | ||
972 | # CONFIG_SND_GINA24 is not set | ||
973 | # CONFIG_SND_LAYLA24 is not set | ||
974 | # CONFIG_SND_MONA is not set | ||
975 | # CONFIG_SND_MIA is not set | ||
976 | # CONFIG_SND_ECHO3G is not set | ||
977 | # CONFIG_SND_INDIGO is not set | ||
978 | # CONFIG_SND_INDIGOIO is not set | ||
979 | # CONFIG_SND_INDIGODJ is not set | ||
904 | CONFIG_SND_EMU10K1=m | 980 | CONFIG_SND_EMU10K1=m |
905 | # CONFIG_SND_EMU10K1X is not set | 981 | # CONFIG_SND_EMU10K1X is not set |
906 | # CONFIG_SND_ENS1370 is not set | 982 | # CONFIG_SND_ENS1370 is not set |
@@ -908,7 +984,7 @@ CONFIG_SND_EMU10K1=m | |||
908 | # CONFIG_SND_ES1938 is not set | 984 | # CONFIG_SND_ES1938 is not set |
909 | # CONFIG_SND_ES1968 is not set | 985 | # CONFIG_SND_ES1968 is not set |
910 | CONFIG_SND_FM801=m | 986 | CONFIG_SND_FM801=m |
911 | # CONFIG_SND_FM801_TEA575X is not set | 987 | # CONFIG_SND_FM801_TEA575X_BOOL is not set |
912 | # CONFIG_SND_HDA_INTEL is not set | 988 | # CONFIG_SND_HDA_INTEL is not set |
913 | # CONFIG_SND_HDSP is not set | 989 | # CONFIG_SND_HDSP is not set |
914 | # CONFIG_SND_HDSPM is not set | 990 | # CONFIG_SND_HDSPM is not set |
@@ -921,6 +997,7 @@ CONFIG_SND_FM801=m | |||
921 | # CONFIG_SND_MIXART is not set | 997 | # CONFIG_SND_MIXART is not set |
922 | # CONFIG_SND_NM256 is not set | 998 | # CONFIG_SND_NM256 is not set |
923 | # CONFIG_SND_PCXHR is not set | 999 | # CONFIG_SND_PCXHR is not set |
1000 | # CONFIG_SND_RIPTIDE is not set | ||
924 | # CONFIG_SND_RME32 is not set | 1001 | # CONFIG_SND_RME32 is not set |
925 | # CONFIG_SND_RME96 is not set | 1002 | # CONFIG_SND_RME96 is not set |
926 | # CONFIG_SND_RME9652 is not set | 1003 | # CONFIG_SND_RME9652 is not set |
@@ -930,6 +1007,7 @@ CONFIG_SND_FM801=m | |||
930 | # CONFIG_SND_VIA82XX_MODEM is not set | 1007 | # CONFIG_SND_VIA82XX_MODEM is not set |
931 | # CONFIG_SND_VX222 is not set | 1008 | # CONFIG_SND_VX222 is not set |
932 | # CONFIG_SND_YMFPCI is not set | 1009 | # CONFIG_SND_YMFPCI is not set |
1010 | # CONFIG_SND_AC97_POWER_SAVE is not set | ||
933 | 1011 | ||
934 | # | 1012 | # |
935 | # USB devices | 1013 | # USB devices |
@@ -937,15 +1015,28 @@ CONFIG_SND_FM801=m | |||
937 | # CONFIG_SND_USB_AUDIO is not set | 1015 | # CONFIG_SND_USB_AUDIO is not set |
938 | 1016 | ||
939 | # | 1017 | # |
1018 | # SoC audio support | ||
1019 | # | ||
1020 | # CONFIG_SND_SOC is not set | ||
1021 | |||
1022 | # | ||
940 | # Open Sound System | 1023 | # Open Sound System |
941 | # | 1024 | # |
942 | # CONFIG_SOUND_PRIME is not set | 1025 | # CONFIG_SOUND_PRIME is not set |
1026 | CONFIG_AC97_BUS=m | ||
1027 | |||
1028 | # | ||
1029 | # HID Devices | ||
1030 | # | ||
1031 | CONFIG_HID=y | ||
1032 | # CONFIG_HID_DEBUG is not set | ||
943 | 1033 | ||
944 | # | 1034 | # |
945 | # USB support | 1035 | # USB support |
946 | # | 1036 | # |
947 | CONFIG_USB_ARCH_HAS_HCD=y | 1037 | CONFIG_USB_ARCH_HAS_HCD=y |
948 | CONFIG_USB_ARCH_HAS_OHCI=y | 1038 | CONFIG_USB_ARCH_HAS_OHCI=y |
1039 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
949 | CONFIG_USB=m | 1040 | CONFIG_USB=m |
950 | # CONFIG_USB_DEBUG is not set | 1041 | # CONFIG_USB_DEBUG is not set |
951 | 1042 | ||
@@ -953,7 +1044,6 @@ CONFIG_USB=m | |||
953 | # Miscellaneous USB options | 1044 | # Miscellaneous USB options |
954 | # | 1045 | # |
955 | CONFIG_USB_DEVICEFS=y | 1046 | CONFIG_USB_DEVICEFS=y |
956 | # CONFIG_USB_BANDWIDTH is not set | ||
957 | # CONFIG_USB_DYNAMIC_MINORS is not set | 1047 | # CONFIG_USB_DYNAMIC_MINORS is not set |
958 | # CONFIG_USB_SUSPEND is not set | 1048 | # CONFIG_USB_SUSPEND is not set |
959 | # CONFIG_USB_OTG is not set | 1049 | # CONFIG_USB_OTG is not set |
@@ -964,9 +1054,12 @@ CONFIG_USB_DEVICEFS=y | |||
964 | CONFIG_USB_EHCI_HCD=m | 1054 | CONFIG_USB_EHCI_HCD=m |
965 | # CONFIG_USB_EHCI_SPLIT_ISO is not set | 1055 | # CONFIG_USB_EHCI_SPLIT_ISO is not set |
966 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | 1056 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set |
1057 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | ||
1058 | # CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set | ||
967 | # CONFIG_USB_ISP116X_HCD is not set | 1059 | # CONFIG_USB_ISP116X_HCD is not set |
968 | CONFIG_USB_OHCI_HCD=m | 1060 | CONFIG_USB_OHCI_HCD=m |
969 | # CONFIG_USB_OHCI_BIG_ENDIAN is not set | 1061 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
1062 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | ||
970 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | 1063 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y |
971 | CONFIG_USB_UHCI_HCD=m | 1064 | CONFIG_USB_UHCI_HCD=m |
972 | # CONFIG_USB_SL811_HCD is not set | 1065 | # CONFIG_USB_SL811_HCD is not set |
@@ -974,7 +1067,6 @@ CONFIG_USB_UHCI_HCD=m | |||
974 | # | 1067 | # |
975 | # USB Device Class drivers | 1068 | # USB Device Class drivers |
976 | # | 1069 | # |
977 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set | ||
978 | # CONFIG_USB_ACM is not set | 1070 | # CONFIG_USB_ACM is not set |
979 | # CONFIG_USB_PRINTER is not set | 1071 | # CONFIG_USB_PRINTER is not set |
980 | 1072 | ||
@@ -996,13 +1088,13 @@ CONFIG_USB_STORAGE=m | |||
996 | # CONFIG_USB_STORAGE_SDDR55 is not set | 1088 | # CONFIG_USB_STORAGE_SDDR55 is not set |
997 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | 1089 | # CONFIG_USB_STORAGE_JUMPSHOT is not set |
998 | # CONFIG_USB_STORAGE_ALAUDA is not set | 1090 | # CONFIG_USB_STORAGE_ALAUDA is not set |
1091 | # CONFIG_USB_STORAGE_KARMA is not set | ||
999 | # CONFIG_USB_LIBUSUAL is not set | 1092 | # CONFIG_USB_LIBUSUAL is not set |
1000 | 1093 | ||
1001 | # | 1094 | # |
1002 | # USB Input Devices | 1095 | # USB Input Devices |
1003 | # | 1096 | # |
1004 | CONFIG_USB_HID=m | 1097 | CONFIG_USB_HID=m |
1005 | CONFIG_USB_HIDINPUT=y | ||
1006 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 1098 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set |
1007 | # CONFIG_HID_FF is not set | 1099 | # CONFIG_HID_FF is not set |
1008 | # CONFIG_USB_HIDDEV is not set | 1100 | # CONFIG_USB_HIDDEV is not set |
@@ -1017,15 +1109,14 @@ CONFIG_USB_HIDINPUT=y | |||
1017 | # CONFIG_USB_ACECAD is not set | 1109 | # CONFIG_USB_ACECAD is not set |
1018 | # CONFIG_USB_KBTAB is not set | 1110 | # CONFIG_USB_KBTAB is not set |
1019 | # CONFIG_USB_POWERMATE is not set | 1111 | # CONFIG_USB_POWERMATE is not set |
1020 | # CONFIG_USB_MTOUCH is not set | 1112 | # CONFIG_USB_TOUCHSCREEN is not set |
1021 | # CONFIG_USB_ITMTOUCH is not set | ||
1022 | # CONFIG_USB_EGALAX is not set | ||
1023 | # CONFIG_USB_YEALINK is not set | 1113 | # CONFIG_USB_YEALINK is not set |
1024 | # CONFIG_USB_XPAD is not set | 1114 | # CONFIG_USB_XPAD is not set |
1025 | # CONFIG_USB_ATI_REMOTE is not set | 1115 | # CONFIG_USB_ATI_REMOTE is not set |
1026 | # CONFIG_USB_ATI_REMOTE2 is not set | 1116 | # CONFIG_USB_ATI_REMOTE2 is not set |
1027 | # CONFIG_USB_KEYSPAN_REMOTE is not set | 1117 | # CONFIG_USB_KEYSPAN_REMOTE is not set |
1028 | # CONFIG_USB_APPLETOUCH is not set | 1118 | # CONFIG_USB_APPLETOUCH is not set |
1119 | # CONFIG_USB_GTCO is not set | ||
1029 | 1120 | ||
1030 | # | 1121 | # |
1031 | # USB Imaging devices | 1122 | # USB Imaging devices |
@@ -1034,21 +1125,13 @@ CONFIG_USB_HIDINPUT=y | |||
1034 | # CONFIG_USB_MICROTEK is not set | 1125 | # CONFIG_USB_MICROTEK is not set |
1035 | 1126 | ||
1036 | # | 1127 | # |
1037 | # USB Multimedia devices | ||
1038 | # | ||
1039 | # CONFIG_USB_DABUSB is not set | ||
1040 | |||
1041 | # | ||
1042 | # Video4Linux support is needed for USB Multimedia device support | ||
1043 | # | ||
1044 | |||
1045 | # | ||
1046 | # USB Network Adapters | 1128 | # USB Network Adapters |
1047 | # | 1129 | # |
1048 | # CONFIG_USB_CATC is not set | 1130 | # CONFIG_USB_CATC is not set |
1049 | # CONFIG_USB_KAWETH is not set | 1131 | # CONFIG_USB_KAWETH is not set |
1050 | # CONFIG_USB_PEGASUS is not set | 1132 | # CONFIG_USB_PEGASUS is not set |
1051 | # CONFIG_USB_RTL8150 is not set | 1133 | # CONFIG_USB_RTL8150 is not set |
1134 | # CONFIG_USB_USBNET_MII is not set | ||
1052 | # CONFIG_USB_USBNET is not set | 1135 | # CONFIG_USB_USBNET is not set |
1053 | CONFIG_USB_MON=y | 1136 | CONFIG_USB_MON=y |
1054 | 1137 | ||
@@ -1066,17 +1149,23 @@ CONFIG_USB_MON=y | |||
1066 | # | 1149 | # |
1067 | # CONFIG_USB_EMI62 is not set | 1150 | # CONFIG_USB_EMI62 is not set |
1068 | # CONFIG_USB_EMI26 is not set | 1151 | # CONFIG_USB_EMI26 is not set |
1152 | # CONFIG_USB_ADUTUX is not set | ||
1069 | # CONFIG_USB_AUERSWALD is not set | 1153 | # CONFIG_USB_AUERSWALD is not set |
1070 | # CONFIG_USB_RIO500 is not set | 1154 | # CONFIG_USB_RIO500 is not set |
1071 | # CONFIG_USB_LEGOTOWER is not set | 1155 | # CONFIG_USB_LEGOTOWER is not set |
1072 | # CONFIG_USB_LCD is not set | 1156 | # CONFIG_USB_LCD is not set |
1157 | # CONFIG_USB_BERRY_CHARGE is not set | ||
1073 | # CONFIG_USB_LED is not set | 1158 | # CONFIG_USB_LED is not set |
1159 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1074 | # CONFIG_USB_CYTHERM is not set | 1160 | # CONFIG_USB_CYTHERM is not set |
1075 | # CONFIG_USB_PHIDGETKIT is not set | 1161 | # CONFIG_USB_PHIDGET is not set |
1076 | # CONFIG_USB_PHIDGETSERVO is not set | ||
1077 | # CONFIG_USB_IDMOUSE is not set | 1162 | # CONFIG_USB_IDMOUSE is not set |
1163 | # CONFIG_USB_FTDI_ELAN is not set | ||
1164 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1078 | # CONFIG_USB_SISUSBVGA is not set | 1165 | # CONFIG_USB_SISUSBVGA is not set |
1079 | # CONFIG_USB_LD is not set | 1166 | # CONFIG_USB_LD is not set |
1167 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1168 | # CONFIG_USB_IOWARRIOR is not set | ||
1080 | # CONFIG_USB_TEST is not set | 1169 | # CONFIG_USB_TEST is not set |
1081 | 1170 | ||
1082 | # | 1171 | # |
@@ -1094,26 +1183,65 @@ CONFIG_USB_MON=y | |||
1094 | # CONFIG_MMC is not set | 1183 | # CONFIG_MMC is not set |
1095 | 1184 | ||
1096 | # | 1185 | # |
1186 | # LED devices | ||
1187 | # | ||
1188 | # CONFIG_NEW_LEDS is not set | ||
1189 | |||
1190 | # | ||
1191 | # LED drivers | ||
1192 | # | ||
1193 | |||
1194 | # | ||
1195 | # LED Triggers | ||
1196 | # | ||
1197 | |||
1198 | # | ||
1097 | # InfiniBand support | 1199 | # InfiniBand support |
1098 | # | 1200 | # |
1099 | CONFIG_INFINIBAND=m | 1201 | CONFIG_INFINIBAND=m |
1100 | # CONFIG_INFINIBAND_USER_MAD is not set | 1202 | # CONFIG_INFINIBAND_USER_MAD is not set |
1101 | # CONFIG_INFINIBAND_USER_ACCESS is not set | 1203 | # CONFIG_INFINIBAND_USER_ACCESS is not set |
1204 | CONFIG_INFINIBAND_ADDR_TRANS=y | ||
1102 | CONFIG_INFINIBAND_MTHCA=m | 1205 | CONFIG_INFINIBAND_MTHCA=m |
1103 | # CONFIG_INFINIBAND_MTHCA_DEBUG is not set | 1206 | CONFIG_INFINIBAND_MTHCA_DEBUG=y |
1207 | # CONFIG_INFINIBAND_AMSO1100 is not set | ||
1104 | CONFIG_INFINIBAND_IPOIB=m | 1208 | CONFIG_INFINIBAND_IPOIB=m |
1105 | # CONFIG_INFINIBAND_IPOIB_DEBUG is not set | 1209 | # CONFIG_INFINIBAND_IPOIB_CM is not set |
1210 | CONFIG_INFINIBAND_IPOIB_DEBUG=y | ||
1211 | # CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set | ||
1106 | # CONFIG_INFINIBAND_SRP is not set | 1212 | # CONFIG_INFINIBAND_SRP is not set |
1213 | # CONFIG_INFINIBAND_ISER is not set | ||
1107 | 1214 | ||
1108 | # | 1215 | # |
1109 | # SN Devices | 1216 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) |
1217 | # | ||
1218 | |||
1219 | # | ||
1220 | # Real Time Clock | ||
1221 | # | ||
1222 | # CONFIG_RTC_CLASS is not set | ||
1223 | |||
1224 | # | ||
1225 | # DMA Engine support | ||
1226 | # | ||
1227 | # CONFIG_DMA_ENGINE is not set | ||
1228 | |||
1229 | # | ||
1230 | # DMA Clients | ||
1231 | # | ||
1232 | |||
1233 | # | ||
1234 | # DMA Devices | ||
1235 | # | ||
1236 | |||
1237 | # | ||
1238 | # Auxiliary Display support | ||
1110 | # | 1239 | # |
1111 | CONFIG_SGI_IOC4=y | ||
1112 | CONFIG_SGI_IOC3=m | ||
1113 | 1240 | ||
1114 | # | 1241 | # |
1115 | # EDAC - error detection and reporting (RAS) | 1242 | # Virtualization |
1116 | # | 1243 | # |
1244 | # CONFIG_MSPEC is not set | ||
1117 | 1245 | ||
1118 | # | 1246 | # |
1119 | # File systems | 1247 | # File systems |
@@ -1127,6 +1255,7 @@ CONFIG_EXT3_FS=y | |||
1127 | CONFIG_EXT3_FS_XATTR=y | 1255 | CONFIG_EXT3_FS_XATTR=y |
1128 | CONFIG_EXT3_FS_POSIX_ACL=y | 1256 | CONFIG_EXT3_FS_POSIX_ACL=y |
1129 | CONFIG_EXT3_FS_SECURITY=y | 1257 | CONFIG_EXT3_FS_SECURITY=y |
1258 | # CONFIG_EXT4DEV_FS is not set | ||
1130 | CONFIG_JBD=y | 1259 | CONFIG_JBD=y |
1131 | # CONFIG_JBD_DEBUG is not set | 1260 | # CONFIG_JBD_DEBUG is not set |
1132 | CONFIG_FS_MBCACHE=y | 1261 | CONFIG_FS_MBCACHE=y |
@@ -1139,15 +1268,16 @@ CONFIG_REISERFS_FS_SECURITY=y | |||
1139 | # CONFIG_JFS_FS is not set | 1268 | # CONFIG_JFS_FS is not set |
1140 | CONFIG_FS_POSIX_ACL=y | 1269 | CONFIG_FS_POSIX_ACL=y |
1141 | CONFIG_XFS_FS=y | 1270 | CONFIG_XFS_FS=y |
1142 | CONFIG_XFS_EXPORT=y | ||
1143 | # CONFIG_XFS_QUOTA is not set | 1271 | # CONFIG_XFS_QUOTA is not set |
1144 | # CONFIG_XFS_SECURITY is not set | 1272 | # CONFIG_XFS_SECURITY is not set |
1145 | # CONFIG_XFS_POSIX_ACL is not set | 1273 | # CONFIG_XFS_POSIX_ACL is not set |
1146 | # CONFIG_XFS_RT is not set | 1274 | # CONFIG_XFS_RT is not set |
1275 | # CONFIG_GFS2_FS is not set | ||
1147 | # CONFIG_OCFS2_FS is not set | 1276 | # CONFIG_OCFS2_FS is not set |
1148 | # CONFIG_MINIX_FS is not set | 1277 | # CONFIG_MINIX_FS is not set |
1149 | # CONFIG_ROMFS_FS is not set | 1278 | # CONFIG_ROMFS_FS is not set |
1150 | CONFIG_INOTIFY=y | 1279 | CONFIG_INOTIFY=y |
1280 | CONFIG_INOTIFY_USER=y | ||
1151 | # CONFIG_QUOTA is not set | 1281 | # CONFIG_QUOTA is not set |
1152 | CONFIG_DNOTIFY=y | 1282 | CONFIG_DNOTIFY=y |
1153 | CONFIG_AUTOFS_FS=y | 1283 | CONFIG_AUTOFS_FS=y |
@@ -1180,12 +1310,14 @@ CONFIG_NTFS_FS=m | |||
1180 | # | 1310 | # |
1181 | CONFIG_PROC_FS=y | 1311 | CONFIG_PROC_FS=y |
1182 | CONFIG_PROC_KCORE=y | 1312 | CONFIG_PROC_KCORE=y |
1313 | CONFIG_PROC_VMCORE=y | ||
1314 | CONFIG_PROC_SYSCTL=y | ||
1183 | CONFIG_SYSFS=y | 1315 | CONFIG_SYSFS=y |
1184 | CONFIG_TMPFS=y | 1316 | CONFIG_TMPFS=y |
1317 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
1185 | CONFIG_HUGETLBFS=y | 1318 | CONFIG_HUGETLBFS=y |
1186 | CONFIG_HUGETLB_PAGE=y | 1319 | CONFIG_HUGETLB_PAGE=y |
1187 | CONFIG_RAMFS=y | 1320 | CONFIG_RAMFS=y |
1188 | # CONFIG_RELAYFS_FS is not set | ||
1189 | # CONFIG_CONFIGFS_FS is not set | 1321 | # CONFIG_CONFIGFS_FS is not set |
1190 | 1322 | ||
1191 | # | 1323 | # |
@@ -1220,7 +1352,7 @@ CONFIG_NFSD_V4=y | |||
1220 | CONFIG_NFSD_TCP=y | 1352 | CONFIG_NFSD_TCP=y |
1221 | CONFIG_LOCKD=m | 1353 | CONFIG_LOCKD=m |
1222 | CONFIG_LOCKD_V4=y | 1354 | CONFIG_LOCKD_V4=y |
1223 | CONFIG_EXPORTFS=y | 1355 | CONFIG_EXPORTFS=m |
1224 | CONFIG_NFS_COMMON=y | 1356 | CONFIG_NFS_COMMON=y |
1225 | CONFIG_SUNRPC=m | 1357 | CONFIG_SUNRPC=m |
1226 | CONFIG_SUNRPC_GSS=m | 1358 | CONFIG_SUNRPC_GSS=m |
@@ -1231,7 +1363,9 @@ CONFIG_SMB_NLS_DEFAULT=y | |||
1231 | CONFIG_SMB_NLS_REMOTE="cp437" | 1363 | CONFIG_SMB_NLS_REMOTE="cp437" |
1232 | CONFIG_CIFS=m | 1364 | CONFIG_CIFS=m |
1233 | # CONFIG_CIFS_STATS is not set | 1365 | # CONFIG_CIFS_STATS is not set |
1366 | # CONFIG_CIFS_WEAK_PW_HASH is not set | ||
1234 | # CONFIG_CIFS_XATTR is not set | 1367 | # CONFIG_CIFS_XATTR is not set |
1368 | # CONFIG_CIFS_DEBUG2 is not set | ||
1235 | # CONFIG_CIFS_EXPERIMENTAL is not set | 1369 | # CONFIG_CIFS_EXPERIMENTAL is not set |
1236 | # CONFIG_NCP_FS is not set | 1370 | # CONFIG_NCP_FS is not set |
1237 | # CONFIG_CODA_FS is not set | 1371 | # CONFIG_CODA_FS is not set |
@@ -1304,15 +1438,25 @@ CONFIG_NLS_KOI8_U=m | |||
1304 | CONFIG_NLS_UTF8=m | 1438 | CONFIG_NLS_UTF8=m |
1305 | 1439 | ||
1306 | # | 1440 | # |
1441 | # Distributed Lock Manager | ||
1442 | # | ||
1443 | # CONFIG_DLM is not set | ||
1444 | |||
1445 | # | ||
1307 | # Library routines | 1446 | # Library routines |
1308 | # | 1447 | # |
1448 | CONFIG_BITREVERSE=y | ||
1309 | # CONFIG_CRC_CCITT is not set | 1449 | # CONFIG_CRC_CCITT is not set |
1310 | # CONFIG_CRC16 is not set | 1450 | # CONFIG_CRC16 is not set |
1311 | CONFIG_CRC32=y | 1451 | CONFIG_CRC32=y |
1312 | # CONFIG_LIBCRC32C is not set | 1452 | # CONFIG_LIBCRC32C is not set |
1453 | CONFIG_PLIST=y | ||
1454 | CONFIG_HAS_IOMEM=y | ||
1455 | CONFIG_HAS_IOPORT=y | ||
1313 | CONFIG_GENERIC_HARDIRQS=y | 1456 | CONFIG_GENERIC_HARDIRQS=y |
1314 | CONFIG_GENERIC_IRQ_PROBE=y | 1457 | CONFIG_GENERIC_IRQ_PROBE=y |
1315 | CONFIG_GENERIC_PENDING_IRQ=y | 1458 | CONFIG_GENERIC_PENDING_IRQ=y |
1459 | CONFIG_IRQ_PER_CPU=y | ||
1316 | 1460 | ||
1317 | # | 1461 | # |
1318 | # HP Simulator drivers | 1462 | # HP Simulator drivers |
@@ -1331,21 +1475,31 @@ CONFIG_GENERIC_PENDING_IRQ=y | |||
1331 | # Kernel hacking | 1475 | # Kernel hacking |
1332 | # | 1476 | # |
1333 | # CONFIG_PRINTK_TIME is not set | 1477 | # CONFIG_PRINTK_TIME is not set |
1478 | CONFIG_ENABLE_MUST_CHECK=y | ||
1334 | CONFIG_MAGIC_SYSRQ=y | 1479 | CONFIG_MAGIC_SYSRQ=y |
1480 | # CONFIG_UNUSED_SYMBOLS is not set | ||
1481 | # CONFIG_DEBUG_FS is not set | ||
1482 | # CONFIG_HEADERS_CHECK is not set | ||
1335 | CONFIG_DEBUG_KERNEL=y | 1483 | CONFIG_DEBUG_KERNEL=y |
1484 | # CONFIG_DEBUG_SHIRQ is not set | ||
1336 | CONFIG_LOG_BUF_SHIFT=20 | 1485 | CONFIG_LOG_BUF_SHIFT=20 |
1337 | CONFIG_DETECT_SOFTLOCKUP=y | 1486 | CONFIG_DETECT_SOFTLOCKUP=y |
1338 | # CONFIG_SCHEDSTATS is not set | 1487 | # CONFIG_SCHEDSTATS is not set |
1488 | # CONFIG_TIMER_STATS is not set | ||
1339 | # CONFIG_DEBUG_SLAB is not set | 1489 | # CONFIG_DEBUG_SLAB is not set |
1340 | CONFIG_DEBUG_MUTEXES=y | 1490 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1491 | # CONFIG_RT_MUTEX_TESTER is not set | ||
1341 | # CONFIG_DEBUG_SPINLOCK is not set | 1492 | # CONFIG_DEBUG_SPINLOCK is not set |
1493 | CONFIG_DEBUG_MUTEXES=y | ||
1342 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | 1494 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set |
1495 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
1343 | # CONFIG_DEBUG_KOBJECT is not set | 1496 | # CONFIG_DEBUG_KOBJECT is not set |
1344 | # CONFIG_DEBUG_INFO is not set | 1497 | # CONFIG_DEBUG_INFO is not set |
1345 | # CONFIG_DEBUG_FS is not set | ||
1346 | # CONFIG_DEBUG_VM is not set | 1498 | # CONFIG_DEBUG_VM is not set |
1499 | # CONFIG_DEBUG_LIST is not set | ||
1347 | CONFIG_FORCED_INLINING=y | 1500 | CONFIG_FORCED_INLINING=y |
1348 | # CONFIG_RCU_TORTURE_TEST is not set | 1501 | # CONFIG_RCU_TORTURE_TEST is not set |
1502 | # CONFIG_FAULT_INJECTION is not set | ||
1349 | CONFIG_IA64_GRANULE_16MB=y | 1503 | CONFIG_IA64_GRANULE_16MB=y |
1350 | # CONFIG_IA64_GRANULE_64MB is not set | 1504 | # CONFIG_IA64_GRANULE_64MB is not set |
1351 | # CONFIG_IA64_PRINT_HAZARDS is not set | 1505 | # CONFIG_IA64_PRINT_HAZARDS is not set |
@@ -1364,7 +1518,11 @@ CONFIG_SYSVIPC_COMPAT=y | |||
1364 | # Cryptographic options | 1518 | # Cryptographic options |
1365 | # | 1519 | # |
1366 | CONFIG_CRYPTO=y | 1520 | CONFIG_CRYPTO=y |
1521 | CONFIG_CRYPTO_ALGAPI=y | ||
1522 | CONFIG_CRYPTO_BLKCIPHER=m | ||
1523 | CONFIG_CRYPTO_MANAGER=m | ||
1367 | # CONFIG_CRYPTO_HMAC is not set | 1524 | # CONFIG_CRYPTO_HMAC is not set |
1525 | # CONFIG_CRYPTO_XCBC is not set | ||
1368 | # CONFIG_CRYPTO_NULL is not set | 1526 | # CONFIG_CRYPTO_NULL is not set |
1369 | # CONFIG_CRYPTO_MD4 is not set | 1527 | # CONFIG_CRYPTO_MD4 is not set |
1370 | CONFIG_CRYPTO_MD5=y | 1528 | CONFIG_CRYPTO_MD5=y |
@@ -1373,7 +1531,13 @@ CONFIG_CRYPTO_MD5=y | |||
1373 | # CONFIG_CRYPTO_SHA512 is not set | 1531 | # CONFIG_CRYPTO_SHA512 is not set |
1374 | # CONFIG_CRYPTO_WP512 is not set | 1532 | # CONFIG_CRYPTO_WP512 is not set |
1375 | # CONFIG_CRYPTO_TGR192 is not set | 1533 | # CONFIG_CRYPTO_TGR192 is not set |
1534 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1535 | CONFIG_CRYPTO_ECB=m | ||
1536 | CONFIG_CRYPTO_CBC=m | ||
1537 | CONFIG_CRYPTO_PCBC=m | ||
1538 | # CONFIG_CRYPTO_LRW is not set | ||
1376 | CONFIG_CRYPTO_DES=m | 1539 | CONFIG_CRYPTO_DES=m |
1540 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1377 | # CONFIG_CRYPTO_BLOWFISH is not set | 1541 | # CONFIG_CRYPTO_BLOWFISH is not set |
1378 | # CONFIG_CRYPTO_TWOFISH is not set | 1542 | # CONFIG_CRYPTO_TWOFISH is not set |
1379 | # CONFIG_CRYPTO_SERPENT is not set | 1543 | # CONFIG_CRYPTO_SERPENT is not set |
@@ -1387,6 +1551,7 @@ CONFIG_CRYPTO_DES=m | |||
1387 | # CONFIG_CRYPTO_DEFLATE is not set | 1551 | # CONFIG_CRYPTO_DEFLATE is not set |
1388 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1552 | # CONFIG_CRYPTO_MICHAEL_MIC is not set |
1389 | # CONFIG_CRYPTO_CRC32C is not set | 1553 | # CONFIG_CRYPTO_CRC32C is not set |
1554 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1390 | # CONFIG_CRYPTO_TEST is not set | 1555 | # CONFIG_CRYPTO_TEST is not set |
1391 | 1556 | ||
1392 | # | 1557 | # |
diff --git a/arch/ia64/kernel/crash.c b/arch/ia64/kernel/crash.c index 5cdd2f5fa064..7d1bbb4403ba 100644 --- a/arch/ia64/kernel/crash.c +++ b/arch/ia64/kernel/crash.c | |||
@@ -21,9 +21,9 @@ | |||
21 | #include <asm/mca.h> | 21 | #include <asm/mca.h> |
22 | 22 | ||
23 | int kdump_status[NR_CPUS]; | 23 | int kdump_status[NR_CPUS]; |
24 | atomic_t kdump_cpu_freezed; | 24 | static atomic_t kdump_cpu_frozen; |
25 | atomic_t kdump_in_progress; | 25 | atomic_t kdump_in_progress; |
26 | int kdump_on_init = 1; | 26 | static int kdump_on_init = 1; |
27 | 27 | ||
28 | static inline Elf64_Word | 28 | static inline Elf64_Word |
29 | *append_elf_note(Elf64_Word *buf, char *name, unsigned type, void *data, | 29 | *append_elf_note(Elf64_Word *buf, char *name, unsigned type, void *data, |
@@ -86,7 +86,7 @@ kdump_wait_cpu_freeze(void) | |||
86 | int cpu_num = num_online_cpus() - 1; | 86 | int cpu_num = num_online_cpus() - 1; |
87 | int timeout = 1000; | 87 | int timeout = 1000; |
88 | while(timeout-- > 0) { | 88 | while(timeout-- > 0) { |
89 | if (atomic_read(&kdump_cpu_freezed) == cpu_num) | 89 | if (atomic_read(&kdump_cpu_frozen) == cpu_num) |
90 | return 0; | 90 | return 0; |
91 | udelay(1000); | 91 | udelay(1000); |
92 | } | 92 | } |
@@ -108,8 +108,8 @@ machine_crash_shutdown(struct pt_regs *pt) | |||
108 | kexec_disable_iosapic(); | 108 | kexec_disable_iosapic(); |
109 | #ifdef CONFIG_SMP | 109 | #ifdef CONFIG_SMP |
110 | kdump_smp_send_stop(); | 110 | kdump_smp_send_stop(); |
111 | /* not all cpu response to IPI, send INIT to freeze them */ | ||
111 | if (kdump_wait_cpu_freeze() && kdump_on_init) { | 112 | if (kdump_wait_cpu_freeze() && kdump_on_init) { |
112 | //not all cpu response to IPI, send INIT to freeze them | ||
113 | kdump_smp_send_init(); | 113 | kdump_smp_send_init(); |
114 | } | 114 | } |
115 | #endif | 115 | #endif |
@@ -136,7 +136,7 @@ kdump_cpu_freeze(struct unw_frame_info *info, void *arg) | |||
136 | cpuid = smp_processor_id(); | 136 | cpuid = smp_processor_id(); |
137 | crash_save_this_cpu(); | 137 | crash_save_this_cpu(); |
138 | current->thread.ksp = (__u64)info->sw - 16; | 138 | current->thread.ksp = (__u64)info->sw - 16; |
139 | atomic_inc(&kdump_cpu_freezed); | 139 | atomic_inc(&kdump_cpu_frozen); |
140 | kdump_status[cpuid] = 1; | 140 | kdump_status[cpuid] = 1; |
141 | mb(); | 141 | mb(); |
142 | #ifdef CONFIG_HOTPLUG_CPU | 142 | #ifdef CONFIG_HOTPLUG_CPU |
diff --git a/arch/ia64/kernel/efi.c b/arch/ia64/kernel/efi.c index 49b93682c752..f45f91d38cab 100644 --- a/arch/ia64/kernel/efi.c +++ b/arch/ia64/kernel/efi.c | |||
@@ -1142,7 +1142,7 @@ efi_initialize_iomem_resources(struct resource *code_resource, | |||
1142 | /* find a block of memory aligned to 64M exclude reserved regions | 1142 | /* find a block of memory aligned to 64M exclude reserved regions |
1143 | rsvd_regions are sorted | 1143 | rsvd_regions are sorted |
1144 | */ | 1144 | */ |
1145 | unsigned long | 1145 | unsigned long __init |
1146 | kdump_find_rsvd_region (unsigned long size, | 1146 | kdump_find_rsvd_region (unsigned long size, |
1147 | struct rsvd_region *r, int n) | 1147 | struct rsvd_region *r, int n) |
1148 | { | 1148 | { |
diff --git a/arch/ia64/kernel/mca.c b/arch/ia64/kernel/mca.c index a76add3e76a2..491687f84fb5 100644 --- a/arch/ia64/kernel/mca.c +++ b/arch/ia64/kernel/mca.c | |||
@@ -1192,8 +1192,6 @@ void | |||
1192 | ia64_mca_handler(struct pt_regs *regs, struct switch_stack *sw, | 1192 | ia64_mca_handler(struct pt_regs *regs, struct switch_stack *sw, |
1193 | struct ia64_sal_os_state *sos) | 1193 | struct ia64_sal_os_state *sos) |
1194 | { | 1194 | { |
1195 | pal_processor_state_info_t *psp = (pal_processor_state_info_t *) | ||
1196 | &sos->proc_state_param; | ||
1197 | int recover, cpu = smp_processor_id(); | 1195 | int recover, cpu = smp_processor_id(); |
1198 | struct task_struct *previous_current; | 1196 | struct task_struct *previous_current; |
1199 | struct ia64_mca_notify_die nd = | 1197 | struct ia64_mca_notify_die nd = |
@@ -1223,10 +1221,8 @@ ia64_mca_handler(struct pt_regs *regs, struct switch_stack *sw, | |||
1223 | /* Get the MCA error record and log it */ | 1221 | /* Get the MCA error record and log it */ |
1224 | ia64_mca_log_sal_error_record(SAL_INFO_TYPE_MCA); | 1222 | ia64_mca_log_sal_error_record(SAL_INFO_TYPE_MCA); |
1225 | 1223 | ||
1226 | /* TLB error is only exist in this SAL error record */ | 1224 | /* MCA error recovery */ |
1227 | recover = (psp->tc && !(psp->cc || psp->bc || psp->rc || psp->uc)) | 1225 | recover = (ia64_mca_ucmc_extension |
1228 | /* other error recovery */ | ||
1229 | || (ia64_mca_ucmc_extension | ||
1230 | && ia64_mca_ucmc_extension( | 1226 | && ia64_mca_ucmc_extension( |
1231 | IA64_LOG_CURR_BUFFER(SAL_INFO_TYPE_MCA), | 1227 | IA64_LOG_CURR_BUFFER(SAL_INFO_TYPE_MCA), |
1232 | sos)); | 1228 | sos)); |
diff --git a/arch/ia64/kernel/mca_drv.c b/arch/ia64/kernel/mca_drv.c index afc1403799c9..832cf1e647e8 100644 --- a/arch/ia64/kernel/mca_drv.c +++ b/arch/ia64/kernel/mca_drv.c | |||
@@ -602,11 +602,40 @@ recover_from_platform_error(slidx_table_t *slidx, peidx_table_t *peidx, | |||
602 | default: | 602 | default: |
603 | break; | 603 | break; |
604 | } | 604 | } |
605 | } else if (psp->cc && !psp->bc) { /* Cache error */ | ||
606 | status = recover_from_read_error(slidx, peidx, pbci, sos); | ||
605 | } | 607 | } |
606 | 608 | ||
607 | return status; | 609 | return status; |
608 | } | 610 | } |
609 | 611 | ||
612 | /* | ||
613 | * recover_from_tlb_check | ||
614 | * @peidx: pointer of index of processor error section | ||
615 | * | ||
616 | * Return value: | ||
617 | * 1 on Success / 0 on Failure | ||
618 | */ | ||
619 | static int | ||
620 | recover_from_tlb_check(peidx_table_t *peidx) | ||
621 | { | ||
622 | sal_log_mod_error_info_t *smei; | ||
623 | pal_tlb_check_info_t *ptci; | ||
624 | |||
625 | smei = (sal_log_mod_error_info_t *)peidx_tlb_check(peidx, 0); | ||
626 | ptci = (pal_tlb_check_info_t *)&(smei->check_info); | ||
627 | |||
628 | /* | ||
629 | * Look for signature of a duplicate TLB DTC entry, which is | ||
630 | * a SW bug and always fatal. | ||
631 | */ | ||
632 | if (ptci->op == PAL_TLB_CHECK_OP_PURGE | ||
633 | && !(ptci->itr || ptci->dtc || ptci->itc)) | ||
634 | return fatal_mca("Duplicate TLB entry"); | ||
635 | |||
636 | return mca_recovered("TLB check recovered"); | ||
637 | } | ||
638 | |||
610 | /** | 639 | /** |
611 | * recover_from_processor_error | 640 | * recover_from_processor_error |
612 | * @platform: whether there are some platform error section or not | 641 | * @platform: whether there are some platform error section or not |
@@ -618,13 +647,6 @@ recover_from_platform_error(slidx_table_t *slidx, peidx_table_t *peidx, | |||
618 | * Return value: | 647 | * Return value: |
619 | * 1 on Success / 0 on Failure | 648 | * 1 on Success / 0 on Failure |
620 | */ | 649 | */ |
621 | /* | ||
622 | * Later we try to recover when below all conditions are satisfied. | ||
623 | * 1. Only one processor error section is exist. | ||
624 | * 2. BUS_CHECK is exist and the others are not exist.(Except TLB_CHECK) | ||
625 | * 3. The entry of BUS_CHECK_INFO is 1. | ||
626 | * 4. "External bus error" flag is set and the others are not set. | ||
627 | */ | ||
628 | 650 | ||
629 | static int | 651 | static int |
630 | recover_from_processor_error(int platform, slidx_table_t *slidx, | 652 | recover_from_processor_error(int platform, slidx_table_t *slidx, |
@@ -652,38 +674,39 @@ recover_from_processor_error(int platform, slidx_table_t *slidx, | |||
652 | return fatal_mca("error not contained"); | 674 | return fatal_mca("error not contained"); |
653 | 675 | ||
654 | /* | 676 | /* |
677 | * Look for recoverable TLB check | ||
678 | */ | ||
679 | if (psp->tc && !(psp->cc || psp->bc || psp->rc || psp->uc)) | ||
680 | return recover_from_tlb_check(peidx); | ||
681 | |||
682 | /* | ||
655 | * The cache check and bus check bits have four possible states | 683 | * The cache check and bus check bits have four possible states |
656 | * cc bc | 684 | * cc bc |
657 | * 0 0 Weird record, not recovered | ||
658 | * 1 0 Cache error, not recovered | ||
659 | * 0 1 I/O error, attempt recovery | ||
660 | * 1 1 Memory error, attempt recovery | 685 | * 1 1 Memory error, attempt recovery |
686 | * 1 0 Cache error, attempt recovery | ||
687 | * 0 1 I/O error, attempt recovery | ||
688 | * 0 0 Other error type, not recovered | ||
661 | */ | 689 | */ |
662 | if (psp->bc == 0 || pbci == NULL) | 690 | if (psp->cc == 0 && (psp->bc == 0 || pbci == NULL)) |
663 | return fatal_mca("No bus check"); | 691 | return fatal_mca("No cache or bus check"); |
664 | 692 | ||
665 | /* | 693 | /* |
666 | * Sorry, we cannot handle so many. | 694 | * Cannot handle more than one bus check. |
667 | */ | 695 | */ |
668 | if (peidx_bus_check_num(peidx) > 1) | 696 | if (peidx_bus_check_num(peidx) > 1) |
669 | return fatal_mca("Too many bus checks"); | 697 | return fatal_mca("Too many bus checks"); |
670 | /* | 698 | |
671 | * Well, here is only one bus error. | ||
672 | */ | ||
673 | if (pbci->ib) | 699 | if (pbci->ib) |
674 | return fatal_mca("Internal Bus error"); | 700 | return fatal_mca("Internal Bus error"); |
675 | if (pbci->cc) | ||
676 | return fatal_mca("Cache-cache error"); | ||
677 | if (pbci->eb && pbci->bsi > 0) | 701 | if (pbci->eb && pbci->bsi > 0) |
678 | return fatal_mca("External bus check fatal status"); | 702 | return fatal_mca("External bus check fatal status"); |
679 | 703 | ||
680 | /* | 704 | /* |
681 | * This is a local MCA and estimated as recoverble external bus error. | 705 | * This is a local MCA and estimated as a recoverble error. |
682 | * (e.g. a load from poisoned memory) | ||
683 | * This means "there are some platform errors". | ||
684 | */ | 706 | */ |
685 | if (platform) | 707 | if (platform) |
686 | return recover_from_platform_error(slidx, peidx, pbci, sos); | 708 | return recover_from_platform_error(slidx, peidx, pbci, sos); |
709 | |||
687 | /* | 710 | /* |
688 | * On account of strange SAL error record, we cannot recover. | 711 | * On account of strange SAL error record, we cannot recover. |
689 | */ | 712 | */ |
diff --git a/arch/ia64/kernel/ptrace.c b/arch/ia64/kernel/ptrace.c index 3f8918782e0c..00f803246948 100644 --- a/arch/ia64/kernel/ptrace.c +++ b/arch/ia64/kernel/ptrace.c | |||
@@ -1573,6 +1573,7 @@ sys_ptrace (long request, pid_t pid, unsigned long addr, unsigned long data) | |||
1573 | 1573 | ||
1574 | case PTRACE_DETACH: | 1574 | case PTRACE_DETACH: |
1575 | /* detach a process that was attached. */ | 1575 | /* detach a process that was attached. */ |
1576 | clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE); | ||
1576 | ret = ptrace_detach(child, data); | 1577 | ret = ptrace_detach(child, data); |
1577 | goto out_tsk; | 1578 | goto out_tsk; |
1578 | 1579 | ||
diff --git a/arch/ia64/sn/kernel/io_acpi_init.c b/arch/ia64/sn/kernel/io_acpi_init.c index 8c331ca6e5c9..c6216f454ffb 100644 --- a/arch/ia64/sn/kernel/io_acpi_init.c +++ b/arch/ia64/sn/kernel/io_acpi_init.c | |||
@@ -53,12 +53,15 @@ sal_ioif_init(u64 *result) | |||
53 | } | 53 | } |
54 | 54 | ||
55 | /* | 55 | /* |
56 | * sn_hubdev_add - The 'add' function of the acpi_sn_hubdev_driver. | 56 | * sn_acpi_hubdev_init() - This function is called by acpi_ns_get_device_callback() |
57 | * Called for every "SGIHUB" or "SGITIO" device defined | 57 | * for all SGIHUB and SGITIO acpi devices defined in the |
58 | * in the ACPI namespace. | 58 | * DSDT. It obtains the hubdev_info pointer from the |
59 | * ACPI vendor resource, which the PROM setup, and sets up the | ||
60 | * hubdev_info in the pda. | ||
59 | */ | 61 | */ |
60 | static int __init | 62 | |
61 | sn_hubdev_add(struct acpi_device *device) | 63 | static acpi_status __init |
64 | sn_acpi_hubdev_init(acpi_handle handle, u32 depth, void *context, void **ret) | ||
62 | { | 65 | { |
63 | struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL }; | 66 | struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL }; |
64 | u64 addr; | 67 | u64 addr; |
@@ -67,18 +70,19 @@ sn_hubdev_add(struct acpi_device *device) | |||
67 | int i; | 70 | int i; |
68 | u64 nasid; | 71 | u64 nasid; |
69 | struct acpi_resource *resource; | 72 | struct acpi_resource *resource; |
70 | int ret = 0; | ||
71 | acpi_status status; | 73 | acpi_status status; |
72 | struct acpi_resource_vendor_typed *vendor; | 74 | struct acpi_resource_vendor_typed *vendor; |
73 | extern void sn_common_hubdev_init(struct hubdev_info *); | 75 | extern void sn_common_hubdev_init(struct hubdev_info *); |
74 | 76 | ||
75 | status = acpi_get_vendor_resource(device->handle, METHOD_NAME__CRS, | 77 | status = acpi_get_vendor_resource(handle, METHOD_NAME__CRS, |
76 | &sn_uuid, &buffer); | 78 | &sn_uuid, &buffer); |
77 | if (ACPI_FAILURE(status)) { | 79 | if (ACPI_FAILURE(status)) { |
78 | printk(KERN_ERR | 80 | printk(KERN_ERR |
79 | "sn_hubdev_add: acpi_get_vendor_resource() failed: %d\n", | 81 | "sn_acpi_hubdev_init: acpi_get_vendor_resource() " |
80 | status); | 82 | "(0x%x) failed for: ", status); |
81 | return 1; | 83 | acpi_ns_print_node_pathname(handle, NULL); |
84 | printk("\n"); | ||
85 | return AE_OK; /* Continue walking namespace */ | ||
82 | } | 86 | } |
83 | 87 | ||
84 | resource = buffer.pointer; | 88 | resource = buffer.pointer; |
@@ -86,9 +90,10 @@ sn_hubdev_add(struct acpi_device *device) | |||
86 | if ((vendor->byte_length - sizeof(struct acpi_vendor_uuid)) != | 90 | if ((vendor->byte_length - sizeof(struct acpi_vendor_uuid)) != |
87 | sizeof(struct hubdev_info *)) { | 91 | sizeof(struct hubdev_info *)) { |
88 | printk(KERN_ERR | 92 | printk(KERN_ERR |
89 | "sn_hubdev_add: Invalid vendor data length: %d\n", | 93 | "sn_acpi_hubdev_init: Invalid vendor data length: %d for: ", |
90 | vendor->byte_length); | 94 | vendor->byte_length); |
91 | ret = 1; | 95 | acpi_ns_print_node_pathname(handle, NULL); |
96 | printk("\n"); | ||
92 | goto exit; | 97 | goto exit; |
93 | } | 98 | } |
94 | 99 | ||
@@ -103,7 +108,7 @@ sn_hubdev_add(struct acpi_device *device) | |||
103 | 108 | ||
104 | exit: | 109 | exit: |
105 | kfree(buffer.pointer); | 110 | kfree(buffer.pointer); |
106 | return ret; | 111 | return AE_OK; /* Continue walking namespace */ |
107 | } | 112 | } |
108 | 113 | ||
109 | /* | 114 | /* |
@@ -441,14 +446,6 @@ sn_acpi_slot_fixup(struct pci_dev *dev) | |||
441 | 446 | ||
442 | EXPORT_SYMBOL(sn_acpi_slot_fixup); | 447 | EXPORT_SYMBOL(sn_acpi_slot_fixup); |
443 | 448 | ||
444 | static struct acpi_driver acpi_sn_hubdev_driver = { | ||
445 | .name = "SGI HUBDEV Driver", | ||
446 | .ids = "SGIHUB,SGITIO", | ||
447 | .ops = { | ||
448 | .add = sn_hubdev_add, | ||
449 | }, | ||
450 | }; | ||
451 | |||
452 | 449 | ||
453 | /* | 450 | /* |
454 | * sn_acpi_bus_fixup - Perform SN specific setup of software structs | 451 | * sn_acpi_bus_fixup - Perform SN specific setup of software structs |
@@ -492,7 +489,10 @@ sn_io_acpi_init(void) | |||
492 | /* SN Altix does not follow the IOSAPIC IRQ routing model */ | 489 | /* SN Altix does not follow the IOSAPIC IRQ routing model */ |
493 | acpi_irq_model = ACPI_IRQ_MODEL_PLATFORM; | 490 | acpi_irq_model = ACPI_IRQ_MODEL_PLATFORM; |
494 | 491 | ||
495 | acpi_bus_register_driver(&acpi_sn_hubdev_driver); | 492 | /* Setup hubdev_info for all SGIHUB/SGITIO devices */ |
493 | acpi_get_devices("SGIHUB", sn_acpi_hubdev_init, NULL, NULL); | ||
494 | acpi_get_devices("SGITIO", sn_acpi_hubdev_init, NULL, NULL); | ||
495 | |||
496 | status = sal_ioif_init(&result); | 496 | status = sal_ioif_init(&result); |
497 | if (status || result) | 497 | if (status || result) |
498 | panic("sal_ioif_init failed: [%lx] %s\n", | 498 | panic("sal_ioif_init failed: [%lx] %s\n", |
diff --git a/arch/ia64/sn/kernel/setup.c b/arch/ia64/sn/kernel/setup.c index 8571e52c2efd..bd5373d593e1 100644 --- a/arch/ia64/sn/kernel/setup.c +++ b/arch/ia64/sn/kernel/setup.c | |||
@@ -397,6 +397,8 @@ void __init sn_setup(char **cmdline_p) | |||
397 | ia64_sn_set_os_feature(OSF_PCISEGMENT_ENABLE); | 397 | ia64_sn_set_os_feature(OSF_PCISEGMENT_ENABLE); |
398 | ia64_sn_set_os_feature(OSF_ACPI_ENABLE); | 398 | ia64_sn_set_os_feature(OSF_ACPI_ENABLE); |
399 | 399 | ||
400 | /* Load the new DSDT and SSDT tables into the global table list. */ | ||
401 | acpi_table_init(); | ||
400 | 402 | ||
401 | #if defined(CONFIG_VT) && defined(CONFIG_VGA_CONSOLE) | 403 | #if defined(CONFIG_VT) && defined(CONFIG_VGA_CONSOLE) |
402 | /* | 404 | /* |
diff --git a/arch/mips/sibyte/Kconfig b/arch/mips/sibyte/Kconfig index 67dac6204b6d..bdf24a7b5494 100644 --- a/arch/mips/sibyte/Kconfig +++ b/arch/mips/sibyte/Kconfig | |||
@@ -1,31 +1,35 @@ | |||
1 | config SIBYTE_SB1250 | 1 | config SIBYTE_SB1250 |
2 | bool | 2 | bool |
3 | select HW_HAS_PCI | 3 | select HW_HAS_PCI |
4 | select SIBYTE_HAS_LDT | 4 | select SIBYTE_ENABLE_LDT_IF_PCI |
5 | select SIBYTE_SB1xxx_SOC | 5 | select SIBYTE_SB1xxx_SOC |
6 | select SYS_SUPPORTS_SMP | 6 | select SYS_SUPPORTS_SMP |
7 | 7 | ||
8 | config SIBYTE_BCM1120 | 8 | config SIBYTE_BCM1120 |
9 | bool | 9 | bool |
10 | select SIBYTE_BCM112X | 10 | select SIBYTE_BCM112X |
11 | select SIBYTE_HAS_ZBUS_PROFILING | ||
11 | select SIBYTE_SB1xxx_SOC | 12 | select SIBYTE_SB1xxx_SOC |
12 | 13 | ||
13 | config SIBYTE_BCM1125 | 14 | config SIBYTE_BCM1125 |
14 | bool | 15 | bool |
15 | select HW_HAS_PCI | 16 | select HW_HAS_PCI |
16 | select SIBYTE_BCM112X | 17 | select SIBYTE_BCM112X |
18 | select SIBYTE_HAS_ZBUS_PROFILING | ||
17 | select SIBYTE_SB1xxx_SOC | 19 | select SIBYTE_SB1xxx_SOC |
18 | 20 | ||
19 | config SIBYTE_BCM1125H | 21 | config SIBYTE_BCM1125H |
20 | bool | 22 | bool |
21 | select HW_HAS_PCI | 23 | select HW_HAS_PCI |
22 | select SIBYTE_BCM112X | 24 | select SIBYTE_BCM112X |
23 | select SIBYTE_HAS_LDT | 25 | select SIBYTE_ENABLE_LDT_IF_PCI |
26 | select SIBYTE_HAS_ZBUS_PROFILING | ||
24 | select SIBYTE_SB1xxx_SOC | 27 | select SIBYTE_SB1xxx_SOC |
25 | 28 | ||
26 | config SIBYTE_BCM112X | 29 | config SIBYTE_BCM112X |
27 | bool | 30 | bool |
28 | select SIBYTE_SB1xxx_SOC | 31 | select SIBYTE_SB1xxx_SOC |
32 | select SIBYTE_HAS_ZBUS_PROFILING | ||
29 | 33 | ||
30 | config SIBYTE_BCM1x80 | 34 | config SIBYTE_BCM1x80 |
31 | bool | 35 | bool |
@@ -37,6 +41,7 @@ config SIBYTE_BCM1x55 | |||
37 | bool | 41 | bool |
38 | select HW_HAS_PCI | 42 | select HW_HAS_PCI |
39 | select SIBYTE_SB1xxx_SOC | 43 | select SIBYTE_SB1xxx_SOC |
44 | select SIBYTE_HAS_ZBUS_PROFILING | ||
40 | select SYS_SUPPORTS_SMP | 45 | select SYS_SUPPORTS_SMP |
41 | 46 | ||
42 | config SIBYTE_SB1xxx_SOC | 47 | config SIBYTE_SB1xxx_SOC |
@@ -95,8 +100,10 @@ config CPU_SB1_PASS_2 | |||
95 | 100 | ||
96 | config SIBYTE_HAS_LDT | 101 | config SIBYTE_HAS_LDT |
97 | bool | 102 | bool |
98 | depends on PCI && (SIBYTE_SB1250 || SIBYTE_BCM1125H) | 103 | |
99 | default y | 104 | config SIBYTE_ENABLE_LDT_IF_PCI |
105 | bool | ||
106 | select SIBYTE_HAS_LDT if PCI | ||
100 | 107 | ||
101 | config SIMULATION | 108 | config SIMULATION |
102 | bool "Running under simulation" | 109 | bool "Running under simulation" |
@@ -162,5 +169,8 @@ config SIBYTE_SB1250_PROF | |||
162 | depends on SIBYTE_SB1xxx_SOC | 169 | depends on SIBYTE_SB1xxx_SOC |
163 | 170 | ||
164 | config SIBYTE_TBPROF | 171 | config SIBYTE_TBPROF |
165 | bool "Support for ZBbus profiling" | 172 | tristate "Support for ZBbus profiling" |
166 | depends on SIBYTE_SB1xxx_SOC | 173 | depends on SIBYTE_HAS_ZBUS_PROFILING |
174 | |||
175 | config SIBYTE_HAS_ZBUS_PROFILING | ||
176 | bool | ||
diff --git a/arch/mips/sibyte/sb1250/bcm1250_tbprof.c b/arch/mips/sibyte/sb1250/bcm1250_tbprof.c index 212547c57310..ea0ca131a3cf 100644 --- a/arch/mips/sibyte/sb1250/bcm1250_tbprof.c +++ b/arch/mips/sibyte/sb1250/bcm1250_tbprof.c | |||
@@ -1,6 +1,4 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2001, 2002, 2003 Broadcom Corporation | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or | 2 | * This program is free software; you can redistribute it and/or |
5 | * modify it under the terms of the GNU General Public License | 3 | * modify it under the terms of the GNU General Public License |
6 | * as published by the Free Software Foundation; either version 2 | 4 | * as published by the Free Software Foundation; either version 2 |
@@ -14,10 +12,16 @@ | |||
14 | * You should have received a copy of the GNU General Public License | 12 | * You should have received a copy of the GNU General Public License |
15 | * along with this program; if not, write to the Free Software | 13 | * along with this program; if not, write to the Free Software |
16 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 14 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
15 | * | ||
16 | * Copyright (C) 2001, 2002, 2003 Broadcom Corporation | ||
17 | * Copyright (C) 2007 Ralf Baechle <ralf@linux-mips.org> | ||
18 | * Copyright (C) 2007 MIPS Technologies, Inc. | ||
19 | * written by Ralf Baechle <ralf@linux-mips.org> | ||
17 | */ | 20 | */ |
18 | 21 | ||
19 | #define SBPROF_TB_DEBUG 0 | 22 | #undef DEBUG |
20 | 23 | ||
24 | #include <linux/device.h> | ||
21 | #include <linux/module.h> | 25 | #include <linux/module.h> |
22 | #include <linux/kernel.h> | 26 | #include <linux/kernel.h> |
23 | #include <linux/types.h> | 27 | #include <linux/types.h> |
@@ -27,24 +31,98 @@ | |||
27 | #include <linux/vmalloc.h> | 31 | #include <linux/vmalloc.h> |
28 | #include <linux/fs.h> | 32 | #include <linux/fs.h> |
29 | #include <linux/errno.h> | 33 | #include <linux/errno.h> |
30 | #include <linux/reboot.h> | 34 | #include <linux/types.h> |
31 | #include <linux/smp_lock.h> | ||
32 | #include <linux/wait.h> | 35 | #include <linux/wait.h> |
33 | #include <asm/uaccess.h> | 36 | |
34 | #include <asm/io.h> | 37 | #include <asm/io.h> |
35 | #include <asm/sibyte/sb1250.h> | 38 | #include <asm/sibyte/sb1250.h> |
36 | #include <asm/sibyte/sb1250_regs.h> | 39 | #include <asm/sibyte/sb1250_regs.h> |
37 | #include <asm/sibyte/sb1250_scd.h> | 40 | #include <asm/sibyte/sb1250_scd.h> |
38 | #include <asm/sibyte/sb1250_int.h> | 41 | #include <asm/sibyte/sb1250_int.h> |
39 | #include <asm/sibyte/trace_prof.h> | 42 | #include <asm/system.h> |
43 | #include <asm/uaccess.h> | ||
40 | 44 | ||
41 | #define DEVNAME "bcm1250_tbprof" | 45 | #define SBPROF_TB_MAJOR 240 |
46 | |||
47 | typedef u64 tb_sample_t[6*256]; | ||
48 | |||
49 | enum open_status { | ||
50 | SB_CLOSED, | ||
51 | SB_OPENING, | ||
52 | SB_OPEN | ||
53 | }; | ||
54 | |||
55 | struct sbprof_tb { | ||
56 | wait_queue_head_t tb_sync; | ||
57 | wait_queue_head_t tb_read; | ||
58 | struct mutex lock; | ||
59 | enum open_status open; | ||
60 | tb_sample_t *sbprof_tbbuf; | ||
61 | int next_tb_sample; | ||
62 | |||
63 | volatile int tb_enable; | ||
64 | volatile int tb_armed; | ||
65 | |||
66 | }; | ||
42 | 67 | ||
43 | static struct sbprof_tb sbp; | 68 | static struct sbprof_tb sbp; |
44 | 69 | ||
70 | #define MAX_SAMPLE_BYTES (24*1024*1024) | ||
71 | #define MAX_TBSAMPLE_BYTES (12*1024*1024) | ||
72 | |||
73 | #define MAX_SAMPLES (MAX_SAMPLE_BYTES/sizeof(u_int32_t)) | ||
74 | #define TB_SAMPLE_SIZE (sizeof(tb_sample_t)) | ||
75 | #define MAX_TB_SAMPLES (MAX_TBSAMPLE_BYTES/TB_SAMPLE_SIZE) | ||
76 | |||
77 | /* ioctls */ | ||
78 | #define SBPROF_ZBSTART _IOW('s', 0, int) | ||
79 | #define SBPROF_ZBSTOP _IOW('s', 1, int) | ||
80 | #define SBPROF_ZBWAITFULL _IOW('s', 2, int) | ||
81 | |||
82 | /* | ||
83 | * Routines for using 40-bit SCD cycle counter | ||
84 | * | ||
85 | * Client responsible for either handling interrupts or making sure | ||
86 | * the cycles counter never saturates, e.g., by doing | ||
87 | * zclk_timer_init(0) at least every 2^40 - 1 ZCLKs. | ||
88 | */ | ||
89 | |||
90 | /* | ||
91 | * Configures SCD counter 0 to count ZCLKs starting from val; | ||
92 | * Configures SCD counters1,2,3 to count nothing. | ||
93 | * Must not be called while gathering ZBbus profiles. | ||
94 | */ | ||
95 | |||
96 | #define zclk_timer_init(val) \ | ||
97 | __asm__ __volatile__ (".set push;" \ | ||
98 | ".set mips64;" \ | ||
99 | "la $8, 0xb00204c0;" /* SCD perf_cnt_cfg */ \ | ||
100 | "sd %0, 0x10($8);" /* write val to counter0 */ \ | ||
101 | "sd %1, 0($8);" /* config counter0 for zclks*/ \ | ||
102 | ".set pop" \ | ||
103 | : /* no outputs */ \ | ||
104 | /* enable, counter0 */ \ | ||
105 | : /* inputs */ "r"(val), "r" ((1ULL << 33) | 1ULL) \ | ||
106 | : /* modifies */ "$8" ) | ||
107 | |||
108 | |||
109 | /* Reads SCD counter 0 and puts result in value | ||
110 | unsigned long long val; */ | ||
111 | #define zclk_get(val) \ | ||
112 | __asm__ __volatile__ (".set push;" \ | ||
113 | ".set mips64;" \ | ||
114 | "la $8, 0xb00204c0;" /* SCD perf_cnt_cfg */ \ | ||
115 | "ld %0, 0x10($8);" /* write val to counter0 */ \ | ||
116 | ".set pop" \ | ||
117 | : /* outputs */ "=r"(val) \ | ||
118 | : /* inputs */ \ | ||
119 | : /* modifies */ "$8" ) | ||
120 | |||
121 | #define DEVNAME "bcm1250_tbprof" | ||
122 | |||
45 | #define TB_FULL (sbp.next_tb_sample == MAX_TB_SAMPLES) | 123 | #define TB_FULL (sbp.next_tb_sample == MAX_TB_SAMPLES) |
46 | 124 | ||
47 | /************************************************************************ | 125 | /* |
48 | * Support for ZBbus sampling using the trace buffer | 126 | * Support for ZBbus sampling using the trace buffer |
49 | * | 127 | * |
50 | * We use the SCD performance counter interrupt, caused by a Zclk counter | 128 | * We use the SCD performance counter interrupt, caused by a Zclk counter |
@@ -54,30 +132,36 @@ static struct sbprof_tb sbp; | |||
54 | * overflow. | 132 | * overflow. |
55 | * | 133 | * |
56 | * We map the interrupt for trace_buffer_freeze to handle it on CPU 0. | 134 | * We map the interrupt for trace_buffer_freeze to handle it on CPU 0. |
57 | * | 135 | */ |
58 | ************************************************************************/ | ||
59 | 136 | ||
60 | static u_int64_t tb_period; | 137 | static u64 tb_period; |
61 | 138 | ||
62 | static void arm_tb(void) | 139 | static void arm_tb(void) |
63 | { | 140 | { |
64 | u_int64_t scdperfcnt; | 141 | u64 scdperfcnt; |
65 | u_int64_t next = (1ULL << 40) - tb_period; | 142 | u64 next = (1ULL << 40) - tb_period; |
66 | u_int64_t tb_options = M_SCD_TRACE_CFG_FREEZE_FULL; | 143 | u64 tb_options = M_SCD_TRACE_CFG_FREEZE_FULL; |
67 | /* Generate an SCD_PERFCNT interrupt in TB_PERIOD Zclks to | 144 | |
68 | trigger start of trace. XXX vary sampling period */ | 145 | /* |
146 | * Generate an SCD_PERFCNT interrupt in TB_PERIOD Zclks to trigger | ||
147 | *start of trace. XXX vary sampling period | ||
148 | */ | ||
69 | __raw_writeq(0, IOADDR(A_SCD_PERF_CNT_1)); | 149 | __raw_writeq(0, IOADDR(A_SCD_PERF_CNT_1)); |
70 | scdperfcnt = __raw_readq(IOADDR(A_SCD_PERF_CNT_CFG)); | 150 | scdperfcnt = __raw_readq(IOADDR(A_SCD_PERF_CNT_CFG)); |
71 | /* Unfortunately, in Pass 2 we must clear all counters to knock down | 151 | |
72 | a previous interrupt request. This means that bus profiling | 152 | /* |
73 | requires ALL of the SCD perf counters. */ | 153 | * Unfortunately, in Pass 2 we must clear all counters to knock down a |
154 | * previous interrupt request. This means that bus profiling requires | ||
155 | * ALL of the SCD perf counters. | ||
156 | */ | ||
74 | __raw_writeq((scdperfcnt & ~M_SPC_CFG_SRC1) | | 157 | __raw_writeq((scdperfcnt & ~M_SPC_CFG_SRC1) | |
75 | // keep counters 0,2,3 as is | 158 | /* keep counters 0,2,3 as is */ |
76 | M_SPC_CFG_ENABLE | // enable counting | 159 | M_SPC_CFG_ENABLE | /* enable counting */ |
77 | M_SPC_CFG_CLEAR | // clear all counters | 160 | M_SPC_CFG_CLEAR | /* clear all counters */ |
78 | V_SPC_CFG_SRC1(1), // counter 1 counts cycles | 161 | V_SPC_CFG_SRC1(1), /* counter 1 counts cycles */ |
79 | IOADDR(A_SCD_PERF_CNT_CFG)); | 162 | IOADDR(A_SCD_PERF_CNT_CFG)); |
80 | __raw_writeq(next, IOADDR(A_SCD_PERF_CNT_1)); | 163 | __raw_writeq(next, IOADDR(A_SCD_PERF_CNT_1)); |
164 | |||
81 | /* Reset the trace buffer */ | 165 | /* Reset the trace buffer */ |
82 | __raw_writeq(M_SCD_TRACE_CFG_RESET, IOADDR(A_SCD_TRACE_CFG)); | 166 | __raw_writeq(M_SCD_TRACE_CFG_RESET, IOADDR(A_SCD_TRACE_CFG)); |
83 | #if 0 && defined(M_SCD_TRACE_CFG_FORCECNT) | 167 | #if 0 && defined(M_SCD_TRACE_CFG_FORCECNT) |
@@ -91,43 +175,45 @@ static void arm_tb(void) | |||
91 | static irqreturn_t sbprof_tb_intr(int irq, void *dev_id) | 175 | static irqreturn_t sbprof_tb_intr(int irq, void *dev_id) |
92 | { | 176 | { |
93 | int i; | 177 | int i; |
94 | DBG(printk(DEVNAME ": tb_intr\n")); | 178 | |
179 | pr_debug(DEVNAME ": tb_intr\n"); | ||
180 | |||
95 | if (sbp.next_tb_sample < MAX_TB_SAMPLES) { | 181 | if (sbp.next_tb_sample < MAX_TB_SAMPLES) { |
96 | /* XXX should use XKPHYS to make writes bypass L2 */ | 182 | /* XXX should use XKPHYS to make writes bypass L2 */ |
97 | u_int64_t *p = sbp.sbprof_tbbuf[sbp.next_tb_sample++]; | 183 | u64 *p = sbp.sbprof_tbbuf[sbp.next_tb_sample++]; |
98 | /* Read out trace */ | 184 | /* Read out trace */ |
99 | __raw_writeq(M_SCD_TRACE_CFG_START_READ, | 185 | __raw_writeq(M_SCD_TRACE_CFG_START_READ, |
100 | IOADDR(A_SCD_TRACE_CFG)); | 186 | IOADDR(A_SCD_TRACE_CFG)); |
101 | __asm__ __volatile__ ("sync" : : : "memory"); | 187 | __asm__ __volatile__ ("sync" : : : "memory"); |
102 | /* Loop runs backwards because bundles are read out in reverse order */ | 188 | /* Loop runs backwards because bundles are read out in reverse order */ |
103 | for (i = 256 * 6; i > 0; i -= 6) { | 189 | for (i = 256 * 6; i > 0; i -= 6) { |
104 | // Subscripts decrease to put bundle in the order | 190 | /* Subscripts decrease to put bundle in the order */ |
105 | // t0 lo, t0 hi, t1 lo, t1 hi, t2 lo, t2 hi | 191 | /* t0 lo, t0 hi, t1 lo, t1 hi, t2 lo, t2 hi */ |
106 | p[i - 1] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); | 192 | p[i - 1] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); |
107 | // read t2 hi | 193 | /* read t2 hi */ |
108 | p[i - 2] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); | 194 | p[i - 2] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); |
109 | // read t2 lo | 195 | /* read t2 lo */ |
110 | p[i - 3] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); | 196 | p[i - 3] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); |
111 | // read t1 hi | 197 | /* read t1 hi */ |
112 | p[i - 4] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); | 198 | p[i - 4] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); |
113 | // read t1 lo | 199 | /* read t1 lo */ |
114 | p[i - 5] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); | 200 | p[i - 5] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); |
115 | // read t0 hi | 201 | /* read t0 hi */ |
116 | p[i - 6] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); | 202 | p[i - 6] = __raw_readq(IOADDR(A_SCD_TRACE_READ)); |
117 | // read t0 lo | 203 | /* read t0 lo */ |
118 | } | 204 | } |
119 | if (!sbp.tb_enable) { | 205 | if (!sbp.tb_enable) { |
120 | DBG(printk(DEVNAME ": tb_intr shutdown\n")); | 206 | pr_debug(DEVNAME ": tb_intr shutdown\n"); |
121 | __raw_writeq(M_SCD_TRACE_CFG_RESET, | 207 | __raw_writeq(M_SCD_TRACE_CFG_RESET, |
122 | IOADDR(A_SCD_TRACE_CFG)); | 208 | IOADDR(A_SCD_TRACE_CFG)); |
123 | sbp.tb_armed = 0; | 209 | sbp.tb_armed = 0; |
124 | wake_up(&sbp.tb_sync); | 210 | wake_up(&sbp.tb_sync); |
125 | } else { | 211 | } else { |
126 | arm_tb(); // knock down current interrupt and get another one later | 212 | arm_tb(); /* knock down current interrupt and get another one later */ |
127 | } | 213 | } |
128 | } else { | 214 | } else { |
129 | /* No more trace buffer samples */ | 215 | /* No more trace buffer samples */ |
130 | DBG(printk(DEVNAME ": tb_intr full\n")); | 216 | pr_debug(DEVNAME ": tb_intr full\n"); |
131 | __raw_writeq(M_SCD_TRACE_CFG_RESET, IOADDR(A_SCD_TRACE_CFG)); | 217 | __raw_writeq(M_SCD_TRACE_CFG_RESET, IOADDR(A_SCD_TRACE_CFG)); |
132 | sbp.tb_armed = 0; | 218 | sbp.tb_armed = 0; |
133 | if (!sbp.tb_enable) { | 219 | if (!sbp.tb_enable) { |
@@ -135,6 +221,7 @@ static irqreturn_t sbprof_tb_intr(int irq, void *dev_id) | |||
135 | } | 221 | } |
136 | wake_up(&sbp.tb_read); | 222 | wake_up(&sbp.tb_read); |
137 | } | 223 | } |
224 | |||
138 | return IRQ_HANDLED; | 225 | return IRQ_HANDLED; |
139 | } | 226 | } |
140 | 227 | ||
@@ -144,23 +231,30 @@ static irqreturn_t sbprof_pc_intr(int irq, void *dev_id) | |||
144 | return IRQ_NONE; | 231 | return IRQ_NONE; |
145 | } | 232 | } |
146 | 233 | ||
147 | int sbprof_zbprof_start(struct file *filp) | 234 | /* |
235 | * Requires: Already called zclk_timer_init with a value that won't | ||
236 | * saturate 40 bits. No subsequent use of SCD performance counters | ||
237 | * or trace buffer. | ||
238 | */ | ||
239 | |||
240 | static int sbprof_zbprof_start(struct file *filp) | ||
148 | { | 241 | { |
149 | u_int64_t scdperfcnt; | 242 | u64 scdperfcnt; |
243 | int err; | ||
150 | 244 | ||
151 | if (sbp.tb_enable) | 245 | if (xchg(&sbp.tb_enable, 1)) |
152 | return -EBUSY; | 246 | return -EBUSY; |
153 | 247 | ||
154 | DBG(printk(DEVNAME ": starting\n")); | 248 | pr_debug(DEVNAME ": starting\n"); |
155 | 249 | ||
156 | sbp.tb_enable = 1; | ||
157 | sbp.next_tb_sample = 0; | 250 | sbp.next_tb_sample = 0; |
158 | filp->f_pos = 0; | 251 | filp->f_pos = 0; |
159 | 252 | ||
160 | if (request_irq | 253 | err = request_irq(K_INT_TRACE_FREEZE, sbprof_tb_intr, 0, |
161 | (K_INT_TRACE_FREEZE, sbprof_tb_intr, 0, DEVNAME " trace freeze", &sbp)) { | 254 | DEVNAME " trace freeze", &sbp); |
255 | if (err) | ||
162 | return -EBUSY; | 256 | return -EBUSY; |
163 | } | 257 | |
164 | /* Make sure there isn't a perf-cnt interrupt waiting */ | 258 | /* Make sure there isn't a perf-cnt interrupt waiting */ |
165 | scdperfcnt = __raw_readq(IOADDR(A_SCD_PERF_CNT_CFG)); | 259 | scdperfcnt = __raw_readq(IOADDR(A_SCD_PERF_CNT_CFG)); |
166 | /* Disable and clear counters, override SRC_1 */ | 260 | /* Disable and clear counters, override SRC_1 */ |
@@ -168,18 +262,21 @@ int sbprof_zbprof_start(struct file *filp) | |||
168 | M_SPC_CFG_ENABLE | M_SPC_CFG_CLEAR | V_SPC_CFG_SRC1(1), | 262 | M_SPC_CFG_ENABLE | M_SPC_CFG_CLEAR | V_SPC_CFG_SRC1(1), |
169 | IOADDR(A_SCD_PERF_CNT_CFG)); | 263 | IOADDR(A_SCD_PERF_CNT_CFG)); |
170 | 264 | ||
171 | /* We grab this interrupt to prevent others from trying to use | 265 | /* |
172 | it, even though we don't want to service the interrupts | 266 | * We grab this interrupt to prevent others from trying to use it, even |
173 | (they only feed into the trace-on-interrupt mechanism) */ | 267 | * though we don't want to service the interrupts (they only feed into |
174 | if (request_irq | 268 | * the trace-on-interrupt mechanism) |
175 | (K_INT_PERF_CNT, sbprof_pc_intr, 0, DEVNAME " scd perfcnt", &sbp)) { | 269 | */ |
176 | free_irq(K_INT_TRACE_FREEZE, &sbp); | 270 | err = request_irq(K_INT_PERF_CNT, sbprof_pc_intr, 0, |
177 | return -EBUSY; | 271 | DEVNAME " scd perfcnt", &sbp); |
178 | } | 272 | if (err) |
179 | 273 | goto out_free_irq; | |
180 | /* I need the core to mask these, but the interrupt mapper to | 274 | |
181 | pass them through. I am exploiting my knowledge that | 275 | /* |
182 | cp0_status masks out IP[5]. krw */ | 276 | * I need the core to mask these, but the interrupt mapper to pass them |
277 | * through. I am exploiting my knowledge that cp0_status masks out | ||
278 | * IP[5]. krw | ||
279 | */ | ||
183 | __raw_writeq(K_INT_MAP_I3, | 280 | __raw_writeq(K_INT_MAP_I3, |
184 | IOADDR(A_IMR_REGISTER(0, R_IMR_INTERRUPT_MAP_BASE) + | 281 | IOADDR(A_IMR_REGISTER(0, R_IMR_INTERRUPT_MAP_BASE) + |
185 | (K_INT_PERF_CNT << 3))); | 282 | (K_INT_PERF_CNT << 3))); |
@@ -201,7 +298,7 @@ int sbprof_zbprof_start(struct file *filp) | |||
201 | __raw_writeq(0, IOADDR(A_ADDR_TRAP_CFG_3)); | 298 | __raw_writeq(0, IOADDR(A_ADDR_TRAP_CFG_3)); |
202 | 299 | ||
203 | /* Initialize Trace Event 0-7 */ | 300 | /* Initialize Trace Event 0-7 */ |
204 | // when interrupt | 301 | /* when interrupt */ |
205 | __raw_writeq(M_SCD_TREVT_INTERRUPT, IOADDR(A_SCD_TRACE_EVENT_0)); | 302 | __raw_writeq(M_SCD_TREVT_INTERRUPT, IOADDR(A_SCD_TRACE_EVENT_0)); |
206 | __raw_writeq(0, IOADDR(A_SCD_TRACE_EVENT_1)); | 303 | __raw_writeq(0, IOADDR(A_SCD_TRACE_EVENT_1)); |
207 | __raw_writeq(0, IOADDR(A_SCD_TRACE_EVENT_2)); | 304 | __raw_writeq(0, IOADDR(A_SCD_TRACE_EVENT_2)); |
@@ -212,10 +309,10 @@ int sbprof_zbprof_start(struct file *filp) | |||
212 | __raw_writeq(0, IOADDR(A_SCD_TRACE_EVENT_7)); | 309 | __raw_writeq(0, IOADDR(A_SCD_TRACE_EVENT_7)); |
213 | 310 | ||
214 | /* Initialize Trace Sequence 0-7 */ | 311 | /* Initialize Trace Sequence 0-7 */ |
215 | // Start on event 0 (interrupt) | 312 | /* Start on event 0 (interrupt) */ |
216 | __raw_writeq(V_SCD_TRSEQ_FUNC_START | 0x0fff, | 313 | __raw_writeq(V_SCD_TRSEQ_FUNC_START | 0x0fff, |
217 | IOADDR(A_SCD_TRACE_SEQUENCE_0)); | 314 | IOADDR(A_SCD_TRACE_SEQUENCE_0)); |
218 | // dsamp when d used | asamp when a used | 315 | /* dsamp when d used | asamp when a used */ |
219 | __raw_writeq(M_SCD_TRSEQ_ASAMPLE | M_SCD_TRSEQ_DSAMPLE | | 316 | __raw_writeq(M_SCD_TRSEQ_ASAMPLE | M_SCD_TRSEQ_DSAMPLE | |
220 | K_SCD_TRSEQ_TRIGGER_ALL, | 317 | K_SCD_TRSEQ_TRIGGER_ALL, |
221 | IOADDR(A_SCD_TRACE_SEQUENCE_1)); | 318 | IOADDR(A_SCD_TRACE_SEQUENCE_1)); |
@@ -232,33 +329,41 @@ int sbprof_zbprof_start(struct file *filp) | |||
232 | 329 | ||
233 | arm_tb(); | 330 | arm_tb(); |
234 | 331 | ||
235 | DBG(printk(DEVNAME ": done starting\n")); | 332 | pr_debug(DEVNAME ": done starting\n"); |
236 | 333 | ||
237 | return 0; | 334 | return 0; |
335 | |||
336 | out_free_irq: | ||
337 | free_irq(K_INT_TRACE_FREEZE, &sbp); | ||
338 | |||
339 | return err; | ||
238 | } | 340 | } |
239 | 341 | ||
240 | int sbprof_zbprof_stop(void) | 342 | static int sbprof_zbprof_stop(void) |
241 | { | 343 | { |
242 | DEFINE_WAIT(wait); | 344 | int err; |
243 | DBG(printk(DEVNAME ": stopping\n")); | 345 | |
346 | pr_debug(DEVNAME ": stopping\n"); | ||
244 | 347 | ||
245 | if (sbp.tb_enable) { | 348 | if (sbp.tb_enable) { |
349 | /* | ||
350 | * XXXKW there is a window here where the intr handler may run, | ||
351 | * see the disable, and do the wake_up before this sleep | ||
352 | * happens. | ||
353 | */ | ||
354 | pr_debug(DEVNAME ": wait for disarm\n"); | ||
355 | err = wait_event_interruptible(sbp.tb_sync, !sbp.tb_armed); | ||
356 | pr_debug(DEVNAME ": disarm complete, stat %d\n", err); | ||
357 | |||
358 | if (err) | ||
359 | return err; | ||
360 | |||
246 | sbp.tb_enable = 0; | 361 | sbp.tb_enable = 0; |
247 | /* XXXKW there is a window here where the intr handler | ||
248 | may run, see the disable, and do the wake_up before | ||
249 | this sleep happens. */ | ||
250 | if (sbp.tb_armed) { | ||
251 | DBG(printk(DEVNAME ": wait for disarm\n")); | ||
252 | prepare_to_wait(&sbp.tb_sync, &wait, TASK_INTERRUPTIBLE); | ||
253 | schedule(); | ||
254 | finish_wait(&sbp.tb_sync, &wait); | ||
255 | DBG(printk(DEVNAME ": disarm complete\n")); | ||
256 | } | ||
257 | free_irq(K_INT_TRACE_FREEZE, &sbp); | 362 | free_irq(K_INT_TRACE_FREEZE, &sbp); |
258 | free_irq(K_INT_PERF_CNT, &sbp); | 363 | free_irq(K_INT_PERF_CNT, &sbp); |
259 | } | 364 | } |
260 | 365 | ||
261 | DBG(printk(DEVNAME ": done stopping\n")); | 366 | pr_debug(DEVNAME ": done stopping\n"); |
262 | 367 | ||
263 | return 0; | 368 | return 0; |
264 | } | 369 | } |
@@ -268,42 +373,45 @@ static int sbprof_tb_open(struct inode *inode, struct file *filp) | |||
268 | int minor; | 373 | int minor; |
269 | 374 | ||
270 | minor = iminor(inode); | 375 | minor = iminor(inode); |
271 | if (minor != 0) { | 376 | if (minor != 0) |
272 | return -ENODEV; | 377 | return -ENODEV; |
273 | } | 378 | |
274 | if (sbp.open) { | 379 | if (xchg(&sbp.open, SB_OPENING) != SB_CLOSED) |
275 | return -EBUSY; | 380 | return -EBUSY; |
276 | } | ||
277 | 381 | ||
278 | memset(&sbp, 0, sizeof(struct sbprof_tb)); | 382 | memset(&sbp, 0, sizeof(struct sbprof_tb)); |
383 | |||
279 | sbp.sbprof_tbbuf = vmalloc(MAX_TBSAMPLE_BYTES); | 384 | sbp.sbprof_tbbuf = vmalloc(MAX_TBSAMPLE_BYTES); |
280 | if (!sbp.sbprof_tbbuf) { | 385 | if (!sbp.sbprof_tbbuf) |
281 | return -ENOMEM; | 386 | return -ENOMEM; |
282 | } | 387 | |
283 | memset(sbp.sbprof_tbbuf, 0, MAX_TBSAMPLE_BYTES); | 388 | memset(sbp.sbprof_tbbuf, 0, MAX_TBSAMPLE_BYTES); |
284 | init_waitqueue_head(&sbp.tb_sync); | 389 | init_waitqueue_head(&sbp.tb_sync); |
285 | init_waitqueue_head(&sbp.tb_read); | 390 | init_waitqueue_head(&sbp.tb_read); |
286 | sbp.open = 1; | 391 | mutex_init(&sbp.lock); |
392 | |||
393 | sbp.open = SB_OPEN; | ||
287 | 394 | ||
288 | return 0; | 395 | return 0; |
289 | } | 396 | } |
290 | 397 | ||
291 | static int sbprof_tb_release(struct inode *inode, struct file *filp) | 398 | static int sbprof_tb_release(struct inode *inode, struct file *filp) |
292 | { | 399 | { |
293 | int minor; | 400 | int minor = iminor(inode); |
294 | 401 | ||
295 | minor = iminor(inode); | 402 | if (minor != 0 || !sbp.open) |
296 | if (minor != 0 || !sbp.open) { | ||
297 | return -ENODEV; | 403 | return -ENODEV; |
298 | } | ||
299 | 404 | ||
300 | if (sbp.tb_armed || sbp.tb_enable) { | 405 | mutex_lock(&sbp.lock); |
406 | |||
407 | if (sbp.tb_armed || sbp.tb_enable) | ||
301 | sbprof_zbprof_stop(); | 408 | sbprof_zbprof_stop(); |
302 | } | ||
303 | 409 | ||
304 | vfree(sbp.sbprof_tbbuf); | 410 | vfree(sbp.sbprof_tbbuf); |
305 | sbp.open = 0; | 411 | sbp.open = 0; |
306 | 412 | ||
413 | mutex_unlock(&sbp.lock); | ||
414 | |||
307 | return 0; | 415 | return 0; |
308 | } | 416 | } |
309 | 417 | ||
@@ -311,21 +419,35 @@ static ssize_t sbprof_tb_read(struct file *filp, char *buf, | |||
311 | size_t size, loff_t *offp) | 419 | size_t size, loff_t *offp) |
312 | { | 420 | { |
313 | int cur_sample, sample_off, cur_count, sample_left; | 421 | int cur_sample, sample_off, cur_count, sample_left; |
314 | char *src; | ||
315 | int count = 0; | ||
316 | char *dest = buf; | ||
317 | long cur_off = *offp; | 422 | long cur_off = *offp; |
423 | char *dest = buf; | ||
424 | int count = 0; | ||
425 | char *src; | ||
426 | |||
427 | if (!access_ok(VERIFY_WRITE, buf, size)) | ||
428 | return -EFAULT; | ||
429 | |||
430 | mutex_lock(&sbp.lock); | ||
318 | 431 | ||
319 | count = 0; | 432 | count = 0; |
320 | cur_sample = cur_off / TB_SAMPLE_SIZE; | 433 | cur_sample = cur_off / TB_SAMPLE_SIZE; |
321 | sample_off = cur_off % TB_SAMPLE_SIZE; | 434 | sample_off = cur_off % TB_SAMPLE_SIZE; |
322 | sample_left = TB_SAMPLE_SIZE - sample_off; | 435 | sample_left = TB_SAMPLE_SIZE - sample_off; |
436 | |||
323 | while (size && (cur_sample < sbp.next_tb_sample)) { | 437 | while (size && (cur_sample < sbp.next_tb_sample)) { |
438 | int err; | ||
439 | |||
324 | cur_count = size < sample_left ? size : sample_left; | 440 | cur_count = size < sample_left ? size : sample_left; |
325 | src = (char *)(((long)sbp.sbprof_tbbuf[cur_sample])+sample_off); | 441 | src = (char *)(((long)sbp.sbprof_tbbuf[cur_sample])+sample_off); |
326 | copy_to_user(dest, src, cur_count); | 442 | err = __copy_to_user(dest, src, cur_count); |
327 | DBG(printk(DEVNAME ": read from sample %d, %d bytes\n", | 443 | if (err) { |
328 | cur_sample, cur_count)); | 444 | *offp = cur_off + cur_count - err; |
445 | mutex_unlock(&sbp.lock); | ||
446 | return err; | ||
447 | } | ||
448 | |||
449 | pr_debug(DEVNAME ": read from sample %d, %d bytes\n", | ||
450 | cur_sample, cur_count); | ||
329 | size -= cur_count; | 451 | size -= cur_count; |
330 | sample_left -= cur_count; | 452 | sample_left -= cur_count; |
331 | if (!sample_left) { | 453 | if (!sample_left) { |
@@ -339,37 +461,43 @@ static ssize_t sbprof_tb_read(struct file *filp, char *buf, | |||
339 | dest += cur_count; | 461 | dest += cur_count; |
340 | count += cur_count; | 462 | count += cur_count; |
341 | } | 463 | } |
464 | |||
342 | *offp = cur_off; | 465 | *offp = cur_off; |
466 | mutex_unlock(&sbp.lock); | ||
343 | 467 | ||
344 | return count; | 468 | return count; |
345 | } | 469 | } |
346 | 470 | ||
347 | static long sbprof_tb_ioctl(struct file *filp, | 471 | static long sbprof_tb_ioctl(struct file *filp, unsigned int command, |
348 | unsigned int command, | 472 | unsigned long arg) |
349 | unsigned long arg) | ||
350 | { | 473 | { |
351 | int error = 0; | 474 | int error = 0; |
352 | 475 | ||
353 | lock_kernel(); | ||
354 | switch (command) { | 476 | switch (command) { |
355 | case SBPROF_ZBSTART: | 477 | case SBPROF_ZBSTART: |
478 | mutex_lock(&sbp.lock); | ||
356 | error = sbprof_zbprof_start(filp); | 479 | error = sbprof_zbprof_start(filp); |
480 | mutex_unlock(&sbp.lock); | ||
357 | break; | 481 | break; |
482 | |||
358 | case SBPROF_ZBSTOP: | 483 | case SBPROF_ZBSTOP: |
484 | mutex_lock(&sbp.lock); | ||
359 | error = sbprof_zbprof_stop(); | 485 | error = sbprof_zbprof_stop(); |
486 | mutex_unlock(&sbp.lock); | ||
360 | break; | 487 | break; |
488 | |||
361 | case SBPROF_ZBWAITFULL: | 489 | case SBPROF_ZBWAITFULL: |
362 | DEFINE_WAIT(wait); | 490 | error = wait_event_interruptible(sbp.tb_read, TB_FULL); |
363 | prepare_to_wait(&sbp.tb_read, &wait, TASK_INTERRUPTIBLE); | 491 | if (error) |
364 | schedule(); | 492 | break; |
365 | finish_wait(&sbp.tb_read, &wait); | 493 | |
366 | /* XXXKW check if interrupted? */ | 494 | error = put_user(TB_FULL, (int *) arg); |
367 | return put_user(TB_FULL, (int *) arg); | 495 | break; |
496 | |||
368 | default: | 497 | default: |
369 | error = -EINVAL; | 498 | error = -EINVAL; |
370 | break; | 499 | break; |
371 | } | 500 | } |
372 | unlock_kernel(); | ||
373 | 501 | ||
374 | return error; | 502 | return error; |
375 | } | 503 | } |
@@ -384,23 +512,60 @@ static const struct file_operations sbprof_tb_fops = { | |||
384 | .mmap = NULL, | 512 | .mmap = NULL, |
385 | }; | 513 | }; |
386 | 514 | ||
515 | static struct class *tb_class; | ||
516 | static struct device *tb_dev; | ||
517 | |||
387 | static int __init sbprof_tb_init(void) | 518 | static int __init sbprof_tb_init(void) |
388 | { | 519 | { |
520 | struct device *dev; | ||
521 | struct class *tbc; | ||
522 | int err; | ||
523 | |||
389 | if (register_chrdev(SBPROF_TB_MAJOR, DEVNAME, &sbprof_tb_fops)) { | 524 | if (register_chrdev(SBPROF_TB_MAJOR, DEVNAME, &sbprof_tb_fops)) { |
390 | printk(KERN_WARNING DEVNAME ": initialization failed (dev %d)\n", | 525 | printk(KERN_WARNING DEVNAME ": initialization failed (dev %d)\n", |
391 | SBPROF_TB_MAJOR); | 526 | SBPROF_TB_MAJOR); |
392 | return -EIO; | 527 | return -EIO; |
393 | } | 528 | } |
529 | |||
530 | tbc = class_create(THIS_MODULE, "sb_tracebuffer"); | ||
531 | if (IS_ERR(tbc)) { | ||
532 | err = PTR_ERR(tbc); | ||
533 | goto out_chrdev; | ||
534 | } | ||
535 | |||
536 | tb_class = tbc; | ||
537 | |||
538 | dev = device_create(tbc, NULL, MKDEV(SBPROF_TB_MAJOR, 0), "tb"); | ||
539 | if (IS_ERR(dev)) { | ||
540 | err = PTR_ERR(dev); | ||
541 | goto out_class; | ||
542 | } | ||
543 | tb_dev = dev; | ||
544 | |||
394 | sbp.open = 0; | 545 | sbp.open = 0; |
395 | tb_period = zbbus_mhz * 10000LL; | 546 | tb_period = zbbus_mhz * 10000LL; |
396 | printk(KERN_INFO DEVNAME ": initialized - tb_period = %lld\n", tb_period); | 547 | pr_info(DEVNAME ": initialized - tb_period = %lld\n", tb_period); |
548 | |||
397 | return 0; | 549 | return 0; |
550 | |||
551 | out_class: | ||
552 | class_destroy(tb_class); | ||
553 | out_chrdev: | ||
554 | unregister_chrdev(SBPROF_TB_MAJOR, DEVNAME); | ||
555 | |||
556 | return err; | ||
398 | } | 557 | } |
399 | 558 | ||
400 | static void __exit sbprof_tb_cleanup(void) | 559 | static void __exit sbprof_tb_cleanup(void) |
401 | { | 560 | { |
561 | device_destroy(tb_class, MKDEV(SBPROF_TB_MAJOR, 0)); | ||
402 | unregister_chrdev(SBPROF_TB_MAJOR, DEVNAME); | 562 | unregister_chrdev(SBPROF_TB_MAJOR, DEVNAME); |
563 | class_destroy(tb_class); | ||
403 | } | 564 | } |
404 | 565 | ||
405 | module_init(sbprof_tb_init); | 566 | module_init(sbprof_tb_init); |
406 | module_exit(sbprof_tb_cleanup); | 567 | module_exit(sbprof_tb_cleanup); |
568 | |||
569 | MODULE_ALIAS_CHARDEV_MAJOR(SBPROF_TB_MAJOR); | ||
570 | MODULE_AUTHOR("Ralf Baechle <ralf@linux-mips.org>"); | ||
571 | MODULE_LICENSE("GPL"); | ||
diff --git a/arch/mips/sibyte/sb1250/setup.c b/arch/mips/sibyte/sb1250/setup.c index 1cb042eab720..87188f0f6fbe 100644 --- a/arch/mips/sibyte/sb1250/setup.c +++ b/arch/mips/sibyte/sb1250/setup.c | |||
@@ -16,6 +16,7 @@ | |||
16 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 16 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
17 | */ | 17 | */ |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/module.h> | ||
19 | #include <linux/kernel.h> | 20 | #include <linux/kernel.h> |
20 | #include <linux/reboot.h> | 21 | #include <linux/reboot.h> |
21 | #include <linux/string.h> | 22 | #include <linux/string.h> |
@@ -32,6 +33,7 @@ unsigned int soc_pass; | |||
32 | unsigned int soc_type; | 33 | unsigned int soc_type; |
33 | unsigned int periph_rev; | 34 | unsigned int periph_rev; |
34 | unsigned int zbbus_mhz; | 35 | unsigned int zbbus_mhz; |
36 | EXPORT_SYMBOL(zbbus_mhz); | ||
35 | 37 | ||
36 | static char *soc_str; | 38 | static char *soc_str; |
37 | static char *pass_str; | 39 | static char *pass_str; |
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index 7ec4ac77c0fa..e4006dc087ca 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c | |||
@@ -225,6 +225,22 @@ static struct cpu_spec cpu_specs[] = { | |||
225 | .oprofile_type = PPC_OPROFILE_POWER4, | 225 | .oprofile_type = PPC_OPROFILE_POWER4, |
226 | .platform = "ppc970", | 226 | .platform = "ppc970", |
227 | }, | 227 | }, |
228 | { /* PPC970MP DD1.0 - no DEEPNAP, use regular 970 init */ | ||
229 | .pvr_mask = 0xffffffff, | ||
230 | .pvr_value = 0x00440100, | ||
231 | .cpu_name = "PPC970MP", | ||
232 | .cpu_features = CPU_FTRS_PPC970, | ||
233 | .cpu_user_features = COMMON_USER_POWER4 | | ||
234 | PPC_FEATURE_HAS_ALTIVEC_COMP, | ||
235 | .icache_bsize = 128, | ||
236 | .dcache_bsize = 128, | ||
237 | .num_pmcs = 8, | ||
238 | .cpu_setup = __setup_cpu_ppc970, | ||
239 | .cpu_restore = __restore_cpu_ppc970, | ||
240 | .oprofile_cpu_type = "ppc64/970MP", | ||
241 | .oprofile_type = PPC_OPROFILE_POWER4, | ||
242 | .platform = "ppc970", | ||
243 | }, | ||
228 | { /* PPC970MP */ | 244 | { /* PPC970MP */ |
229 | .pvr_mask = 0xffff0000, | 245 | .pvr_mask = 0xffff0000, |
230 | .pvr_value = 0x00440000, | 246 | .pvr_value = 0x00440000, |
diff --git a/arch/powerpc/kernel/prom_parse.c b/arch/powerpc/kernel/prom_parse.c index ea6fd552c7ea..91b443c9a488 100644 --- a/arch/powerpc/kernel/prom_parse.c +++ b/arch/powerpc/kernel/prom_parse.c | |||
@@ -916,7 +916,7 @@ EXPORT_SYMBOL_GPL(of_irq_map_raw); | |||
916 | static int of_irq_map_oldworld(struct device_node *device, int index, | 916 | static int of_irq_map_oldworld(struct device_node *device, int index, |
917 | struct of_irq *out_irq) | 917 | struct of_irq *out_irq) |
918 | { | 918 | { |
919 | const u32 *ints; | 919 | const u32 *ints = NULL; |
920 | int intlen; | 920 | int intlen; |
921 | 921 | ||
922 | /* | 922 | /* |
diff --git a/arch/powerpc/platforms/83xx/mpc834x_mds.c b/arch/powerpc/platforms/83xx/mpc834x_mds.c index e5d819166874..8aa9a93e2aa2 100644 --- a/arch/powerpc/platforms/83xx/mpc834x_mds.c +++ b/arch/powerpc/platforms/83xx/mpc834x_mds.c | |||
@@ -55,9 +55,9 @@ static int mpc834x_usb_cfg(void) | |||
55 | struct device_node *np = NULL; | 55 | struct device_node *np = NULL; |
56 | int port0_is_dr = 0; | 56 | int port0_is_dr = 0; |
57 | 57 | ||
58 | if ((np = of_find_compatible_node(np, "usb", "fsl-usb2-dr")) != NULL) | 58 | if ((np = of_find_compatible_node(NULL, "usb", "fsl-usb2-dr")) != NULL) |
59 | port0_is_dr = 1; | 59 | port0_is_dr = 1; |
60 | if ((np = of_find_compatible_node(np, "usb", "fsl-usb2-mph")) != NULL){ | 60 | if ((np = of_find_compatible_node(NULL, "usb", "fsl-usb2-mph")) != NULL){ |
61 | if (port0_is_dr) { | 61 | if (port0_is_dr) { |
62 | printk(KERN_WARNING | 62 | printk(KERN_WARNING |
63 | "There is only one USB port on PB board! \n"); | 63 | "There is only one USB port on PB board! \n"); |
@@ -103,8 +103,8 @@ static int mpc834x_usb_cfg(void) | |||
103 | return -1; | 103 | return -1; |
104 | 104 | ||
105 | /* | 105 | /* |
106 | * if MDS board is plug into PIB board, | 106 | * if Processor Board is plugged into PIB board, |
107 | * force to use the PHY on MDS board | 107 | * force to use the PHY on Processor Board |
108 | */ | 108 | */ |
109 | bcsr5 = in_8(bcsr_regs + 5); | 109 | bcsr5 = in_8(bcsr_regs + 5); |
110 | if (!(bcsr5 & BCSR5_INT_USB)) | 110 | if (!(bcsr5 & BCSR5_INT_USB)) |
diff --git a/arch/powerpc/platforms/85xx/Kconfig b/arch/powerpc/platforms/85xx/Kconfig index eb661ccf2dab..e764c0aced88 100644 --- a/arch/powerpc/platforms/85xx/Kconfig +++ b/arch/powerpc/platforms/85xx/Kconfig | |||
@@ -47,6 +47,7 @@ config MPC85xx | |||
47 | bool | 47 | bool |
48 | select PPC_UDBG_16550 | 48 | select PPC_UDBG_16550 |
49 | select PPC_INDIRECT_PCI | 49 | select PPC_INDIRECT_PCI |
50 | select SERIAL_8250_SHARE_IRQ if SERIAL_8250 | ||
50 | default y if MPC8540_ADS || MPC85xx_CDS || MPC8560_ADS || MPC85xx_MDS | 51 | default y if MPC8540_ADS || MPC85xx_CDS || MPC8560_ADS || MPC85xx_MDS |
51 | 52 | ||
52 | config PPC_INDIRECT_PCI_BE | 53 | config PPC_INDIRECT_PCI_BE |
diff --git a/arch/powerpc/platforms/celleb/scc_epci.c b/arch/powerpc/platforms/celleb/scc_epci.c index c11b39c3776a..fb23d53eb09c 100644 --- a/arch/powerpc/platforms/celleb/scc_epci.c +++ b/arch/powerpc/platforms/celleb/scc_epci.c | |||
@@ -43,11 +43,34 @@ | |||
43 | 43 | ||
44 | #define iob() __asm__ __volatile__("eieio; sync":::"memory") | 44 | #define iob() __asm__ __volatile__("eieio; sync":::"memory") |
45 | 45 | ||
46 | static inline volatile void __iomem *celleb_epci_get_epci_base( | ||
47 | struct pci_controller *hose) | ||
48 | { | ||
49 | /* | ||
50 | * Note: | ||
51 | * Celleb epci uses cfg_addr as a base address for | ||
52 | * epci control registers. | ||
53 | */ | ||
54 | |||
55 | return hose->cfg_addr; | ||
56 | } | ||
57 | |||
58 | static inline volatile void __iomem *celleb_epci_get_epci_cfg( | ||
59 | struct pci_controller *hose) | ||
60 | { | ||
61 | /* | ||
62 | * Note: | ||
63 | * Celleb epci uses cfg_data as a base address for | ||
64 | * configuration area for epci devices. | ||
65 | */ | ||
66 | |||
67 | return hose->cfg_data; | ||
68 | } | ||
46 | 69 | ||
47 | #if 0 /* test code for epci dummy read */ | 70 | #if 0 /* test code for epci dummy read */ |
48 | static void celleb_epci_dummy_read(struct pci_dev *dev) | 71 | static void celleb_epci_dummy_read(struct pci_dev *dev) |
49 | { | 72 | { |
50 | void __iomem *epci_base; | 73 | volatile void __iomem *epci_base; |
51 | struct device_node *node; | 74 | struct device_node *node; |
52 | struct pci_controller *hose; | 75 | struct pci_controller *hose; |
53 | u32 val; | 76 | u32 val; |
@@ -58,7 +81,7 @@ static void celleb_epci_dummy_read(struct pci_dev *dev) | |||
58 | if (!hose) | 81 | if (!hose) |
59 | return; | 82 | return; |
60 | 83 | ||
61 | epci_base = hose->cfg_addr; | 84 | epci_base = celleb_epci_get_epci_base(hose); |
62 | 85 | ||
63 | val = in_be32(epci_base + SCC_EPCI_WATRP); | 86 | val = in_be32(epci_base + SCC_EPCI_WATRP); |
64 | iosync(); | 87 | iosync(); |
@@ -70,19 +93,20 @@ static void celleb_epci_dummy_read(struct pci_dev *dev) | |||
70 | static inline void clear_and_disable_master_abort_interrupt( | 93 | static inline void clear_and_disable_master_abort_interrupt( |
71 | struct pci_controller *hose) | 94 | struct pci_controller *hose) |
72 | { | 95 | { |
73 | void __iomem *addr; | 96 | volatile void __iomem *epci_base, *reg; |
74 | addr = hose->cfg_addr + PCI_COMMAND; | 97 | epci_base = celleb_epci_get_epci_base(hose); |
75 | out_be32(addr, in_be32(addr) | (PCI_STATUS_REC_MASTER_ABORT << 16)); | 98 | reg = epci_base + PCI_COMMAND; |
99 | out_be32(reg, in_be32(reg) | (PCI_STATUS_REC_MASTER_ABORT << 16)); | ||
76 | } | 100 | } |
77 | 101 | ||
78 | static int celleb_epci_check_abort(struct pci_controller *hose, | 102 | static int celleb_epci_check_abort(struct pci_controller *hose, |
79 | void __iomem *addr) | 103 | volatile void __iomem *addr) |
80 | { | 104 | { |
81 | void __iomem *reg, *epci_base; | 105 | volatile void __iomem *reg, *epci_base; |
82 | u32 val; | 106 | u32 val; |
83 | 107 | ||
84 | iob(); | 108 | iob(); |
85 | epci_base = hose->cfg_addr; | 109 | epci_base = celleb_epci_get_epci_base(hose); |
86 | 110 | ||
87 | reg = epci_base + PCI_COMMAND; | 111 | reg = epci_base + PCI_COMMAND; |
88 | val = in_be32(reg); | 112 | val = in_be32(reg); |
@@ -108,20 +132,21 @@ static int celleb_epci_check_abort(struct pci_controller *hose, | |||
108 | return PCIBIOS_SUCCESSFUL; | 132 | return PCIBIOS_SUCCESSFUL; |
109 | } | 133 | } |
110 | 134 | ||
111 | static void __iomem *celleb_epci_make_config_addr(struct pci_controller *hose, | 135 | static volatile void __iomem *celleb_epci_make_config_addr( |
136 | struct pci_controller *hose, | ||
112 | unsigned int devfn, int where) | 137 | unsigned int devfn, int where) |
113 | { | 138 | { |
114 | void __iomem *addr; | 139 | volatile void __iomem *addr; |
115 | struct pci_bus *bus = hose->bus; | 140 | struct pci_bus *bus = hose->bus; |
116 | 141 | ||
117 | if (bus->self) | 142 | if (bus->self) |
118 | addr = hose->cfg_data + | 143 | addr = celleb_epci_get_epci_cfg(hose) + |
119 | (((bus->number & 0xff) << 16) | 144 | (((bus->number & 0xff) << 16) |
120 | | ((devfn & 0xff) << 8) | 145 | | ((devfn & 0xff) << 8) |
121 | | (where & 0xff) | 146 | | (where & 0xff) |
122 | | 0x01000000); | 147 | | 0x01000000); |
123 | else | 148 | else |
124 | addr = hose->cfg_data + | 149 | addr = celleb_epci_get_epci_cfg(hose) + |
125 | (((devfn & 0xff) << 8) | (where & 0xff)); | 150 | (((devfn & 0xff) << 8) | (where & 0xff)); |
126 | 151 | ||
127 | pr_debug("EPCI: config_addr = 0x%p\n", addr); | 152 | pr_debug("EPCI: config_addr = 0x%p\n", addr); |
@@ -132,7 +157,7 @@ static void __iomem *celleb_epci_make_config_addr(struct pci_controller *hose, | |||
132 | static int celleb_epci_read_config(struct pci_bus *bus, | 157 | static int celleb_epci_read_config(struct pci_bus *bus, |
133 | unsigned int devfn, int where, int size, u32 * val) | 158 | unsigned int devfn, int where, int size, u32 * val) |
134 | { | 159 | { |
135 | void __iomem *addr; | 160 | volatile void __iomem *epci_base, *addr; |
136 | struct device_node *node; | 161 | struct device_node *node; |
137 | struct pci_controller *hose; | 162 | struct pci_controller *hose; |
138 | 163 | ||
@@ -142,13 +167,14 @@ static int celleb_epci_read_config(struct pci_bus *bus, | |||
142 | node = (struct device_node *)bus->sysdata; | 167 | node = (struct device_node *)bus->sysdata; |
143 | hose = pci_find_hose_for_OF_device(node); | 168 | hose = pci_find_hose_for_OF_device(node); |
144 | 169 | ||
145 | if (!hose->cfg_data) | 170 | if (!celleb_epci_get_epci_cfg(hose)) |
146 | return PCIBIOS_DEVICE_NOT_FOUND; | 171 | return PCIBIOS_DEVICE_NOT_FOUND; |
147 | 172 | ||
148 | if (bus->number == hose->first_busno && devfn == 0) { | 173 | if (bus->number == hose->first_busno && devfn == 0) { |
149 | /* EPCI controller self */ | 174 | /* EPCI controller self */ |
150 | 175 | ||
151 | addr = hose->cfg_addr + where; | 176 | epci_base = celleb_epci_get_epci_base(hose); |
177 | addr = epci_base + where; | ||
152 | 178 | ||
153 | switch (size) { | 179 | switch (size) { |
154 | case 1: | 180 | case 1: |
@@ -185,7 +211,7 @@ static int celleb_epci_read_config(struct pci_bus *bus, | |||
185 | } | 211 | } |
186 | 212 | ||
187 | pr_debug("EPCI: " | 213 | pr_debug("EPCI: " |
188 | "addr=0x%lx, devfn=0x%x, where=0x%x, size=0x%x, val=0x%x\n", | 214 | "addr=0x%p, devfn=0x%x, where=0x%x, size=0x%x, val=0x%x\n", |
189 | addr, devfn, where, size, *val); | 215 | addr, devfn, where, size, *val); |
190 | 216 | ||
191 | return celleb_epci_check_abort(hose, NULL); | 217 | return celleb_epci_check_abort(hose, NULL); |
@@ -194,7 +220,7 @@ static int celleb_epci_read_config(struct pci_bus *bus, | |||
194 | static int celleb_epci_write_config(struct pci_bus *bus, | 220 | static int celleb_epci_write_config(struct pci_bus *bus, |
195 | unsigned int devfn, int where, int size, u32 val) | 221 | unsigned int devfn, int where, int size, u32 val) |
196 | { | 222 | { |
197 | void __iomem *addr; | 223 | volatile void __iomem *epci_base, *addr; |
198 | struct device_node *node; | 224 | struct device_node *node; |
199 | struct pci_controller *hose; | 225 | struct pci_controller *hose; |
200 | 226 | ||
@@ -204,13 +230,15 @@ static int celleb_epci_write_config(struct pci_bus *bus, | |||
204 | node = (struct device_node *)bus->sysdata; | 230 | node = (struct device_node *)bus->sysdata; |
205 | hose = pci_find_hose_for_OF_device(node); | 231 | hose = pci_find_hose_for_OF_device(node); |
206 | 232 | ||
207 | if (!hose->cfg_data) | 233 | |
234 | if (!celleb_epci_get_epci_cfg(hose)) | ||
208 | return PCIBIOS_DEVICE_NOT_FOUND; | 235 | return PCIBIOS_DEVICE_NOT_FOUND; |
209 | 236 | ||
210 | if (bus->number == hose->first_busno && devfn == 0) { | 237 | if (bus->number == hose->first_busno && devfn == 0) { |
211 | /* EPCI controller self */ | 238 | /* EPCI controller self */ |
212 | 239 | ||
213 | addr = hose->cfg_addr + where; | 240 | epci_base = celleb_epci_get_epci_base(hose); |
241 | addr = epci_base + where; | ||
214 | 242 | ||
215 | switch (size) { | 243 | switch (size) { |
216 | case 1: | 244 | case 1: |
@@ -258,10 +286,10 @@ struct pci_ops celleb_epci_ops = { | |||
258 | static int __devinit celleb_epci_init(struct pci_controller *hose) | 286 | static int __devinit celleb_epci_init(struct pci_controller *hose) |
259 | { | 287 | { |
260 | u32 val; | 288 | u32 val; |
261 | void __iomem *reg, *epci_base; | 289 | volatile void __iomem *reg, *epci_base; |
262 | int hwres = 0; | 290 | int hwres = 0; |
263 | 291 | ||
264 | epci_base = hose->cfg_addr; | 292 | epci_base = celleb_epci_get_epci_base(hose); |
265 | 293 | ||
266 | /* PCI core reset(Internal bus and PCI clock) */ | 294 | /* PCI core reset(Internal bus and PCI clock) */ |
267 | reg = epci_base + SCC_EPCI_CKCTRL; | 295 | reg = epci_base + SCC_EPCI_CKCTRL; |
@@ -382,6 +410,18 @@ int __devinit celleb_setup_epci(struct device_node *node, | |||
382 | 410 | ||
383 | pr_debug("PCI: celleb_setup_epci()\n"); | 411 | pr_debug("PCI: celleb_setup_epci()\n"); |
384 | 412 | ||
413 | /* | ||
414 | * Note: | ||
415 | * Celleb epci uses cfg_addr and cfg_data member of | ||
416 | * pci_controller structure in irregular way. | ||
417 | * | ||
418 | * cfg_addr is used to map for control registers of | ||
419 | * celleb epci. | ||
420 | * | ||
421 | * cfg_data is used for configuration area of devices | ||
422 | * on Celleb epci buses. | ||
423 | */ | ||
424 | |||
385 | if (of_address_to_resource(node, 0, &r)) | 425 | if (of_address_to_resource(node, 0, &r)) |
386 | goto error; | 426 | goto error; |
387 | hose->cfg_addr = ioremap(r.start, (r.end - r.start + 1)); | 427 | hose->cfg_addr = ioremap(r.start, (r.end - r.start + 1)); |
diff --git a/arch/powerpc/platforms/embedded6xx/Kconfig b/arch/powerpc/platforms/embedded6xx/Kconfig index 886c522d78e9..3410bcbc9dbe 100644 --- a/arch/powerpc/platforms/embedded6xx/Kconfig +++ b/arch/powerpc/platforms/embedded6xx/Kconfig | |||
@@ -79,6 +79,7 @@ config LINKSTATION | |||
79 | select MPIC | 79 | select MPIC |
80 | select FSL_SOC | 80 | select FSL_SOC |
81 | select PPC_UDBG_16550 if SERIAL_8250 | 81 | select PPC_UDBG_16550 if SERIAL_8250 |
82 | select DEFAULT_UIMAGE | ||
82 | help | 83 | help |
83 | Select LINKSTATION if configuring for one of PPC- (MPC8241) | 84 | Select LINKSTATION if configuring for one of PPC- (MPC8241) |
84 | based NAS systems from Buffalo Technology. So far only | 85 | based NAS systems from Buffalo Technology. So far only |
diff --git a/arch/powerpc/platforms/powermac/feature.c b/arch/powerpc/platforms/powermac/feature.c index c29a6a064d22..24cc50c1774a 100644 --- a/arch/powerpc/platforms/powermac/feature.c +++ b/arch/powerpc/platforms/powermac/feature.c | |||
@@ -810,6 +810,7 @@ core99_ata100_enable(struct device_node *node, long value) | |||
810 | unsigned long flags; | 810 | unsigned long flags; |
811 | struct pci_dev *pdev = NULL; | 811 | struct pci_dev *pdev = NULL; |
812 | u8 pbus, pid; | 812 | u8 pbus, pid; |
813 | int rc; | ||
813 | 814 | ||
814 | if (uninorth_rev < 0x24) | 815 | if (uninorth_rev < 0x24) |
815 | return -ENODEV; | 816 | return -ENODEV; |
@@ -828,7 +829,9 @@ core99_ata100_enable(struct device_node *node, long value) | |||
828 | pdev = pci_find_slot(pbus, pid); | 829 | pdev = pci_find_slot(pbus, pid); |
829 | if (pdev == NULL) | 830 | if (pdev == NULL) |
830 | return 0; | 831 | return 0; |
831 | pci_enable_device(pdev); | 832 | rc = pci_enable_device(pdev); |
833 | if (rc) | ||
834 | return rc; | ||
832 | pci_set_master(pdev); | 835 | pci_set_master(pdev); |
833 | } | 836 | } |
834 | return 0; | 837 | return 0; |
diff --git a/arch/powerpc/platforms/powermac/pci.c b/arch/powerpc/platforms/powermac/pci.c index f42475b27c15..6fbac308ded6 100644 --- a/arch/powerpc/platforms/powermac/pci.c +++ b/arch/powerpc/platforms/powermac/pci.c | |||
@@ -1191,8 +1191,11 @@ void __init pmac_pcibios_after_init(void) | |||
1191 | * -- BenH | 1191 | * -- BenH |
1192 | */ | 1192 | */ |
1193 | for_each_pci_dev(dev) { | 1193 | for_each_pci_dev(dev) { |
1194 | if ((dev->class >> 16) == PCI_BASE_CLASS_STORAGE) | 1194 | if ((dev->class >> 16) != PCI_BASE_CLASS_STORAGE) |
1195 | pci_enable_device(dev); | 1195 | continue; |
1196 | if (pci_enable_device(dev)) | ||
1197 | printk(KERN_WARNING | ||
1198 | "pci: Failed to enable %s\n", pci_name(dev)); | ||
1196 | } | 1199 | } |
1197 | #endif /* CONFIG_BLK_DEV_IDE */ | 1200 | #endif /* CONFIG_BLK_DEV_IDE */ |
1198 | 1201 | ||
diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c index 0183e5fbaf46..bf299b66f3fc 100644 --- a/arch/powerpc/xmon/xmon.c +++ b/arch/powerpc/xmon/xmon.c | |||
@@ -218,7 +218,7 @@ Commands:\n\ | |||
218 | " ss stop execution on all spus\n\ | 218 | " ss stop execution on all spus\n\ |
219 | sr restore execution on stopped spus\n\ | 219 | sr restore execution on stopped spus\n\ |
220 | sf # dump spu fields for spu # (in hex)\n\ | 220 | sf # dump spu fields for spu # (in hex)\n\ |
221 | sd # dump spu local store for spu # (in hex)\ | 221 | sd # dump spu local store for spu # (in hex)\n\ |
222 | sdi # disassemble spu local store for spu # (in hex)\n" | 222 | sdi # disassemble spu local store for spu # (in hex)\n" |
223 | #endif | 223 | #endif |
224 | " S print special registers\n\ | 224 | " S print special registers\n\ |
diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig index 7c49e103cf8f..e2ce4a9c1c92 100644 --- a/drivers/acpi/Kconfig +++ b/drivers/acpi/Kconfig | |||
@@ -7,6 +7,7 @@ menu "ACPI (Advanced Configuration and Power Interface) Support" | |||
7 | depends on !X86_VISWS | 7 | depends on !X86_VISWS |
8 | depends on !IA64_HP_SIM | 8 | depends on !IA64_HP_SIM |
9 | depends on IA64 || X86 | 9 | depends on IA64 || X86 |
10 | depends on PM | ||
10 | 11 | ||
11 | config ACPI | 12 | config ACPI |
12 | bool "ACPI Support" | 13 | bool "ACPI Support" |
@@ -243,6 +244,17 @@ config ACPI_IBM_DOCK | |||
243 | 244 | ||
244 | If you are not sure, say N here. | 245 | If you are not sure, say N here. |
245 | 246 | ||
247 | config ACPI_IBM_BAY | ||
248 | bool "Legacy Removable Bay Support" | ||
249 | depends on ACPI_IBM | ||
250 | default y | ||
251 | ---help--- | ||
252 | Allows the ibm_acpi driver to handle removable bays. It will allow | ||
253 | disabling the device in the bay, and also generate notifications when | ||
254 | the bay lever is ejected or inserted. | ||
255 | |||
256 | If you are not sure, say Y here. | ||
257 | |||
246 | config ACPI_TOSHIBA | 258 | config ACPI_TOSHIBA |
247 | tristate "Toshiba Laptop Extras" | 259 | tristate "Toshiba Laptop Extras" |
248 | depends on X86 | 260 | depends on X86 |
diff --git a/drivers/acpi/blacklist.c b/drivers/acpi/blacklist.c index f289fd41e77d..3ec110ce00c8 100644 --- a/drivers/acpi/blacklist.c +++ b/drivers/acpi/blacklist.c | |||
@@ -79,11 +79,17 @@ static int __init blacklist_by_year(void) | |||
79 | { | 79 | { |
80 | int year = dmi_get_year(DMI_BIOS_DATE); | 80 | int year = dmi_get_year(DMI_BIOS_DATE); |
81 | /* Doesn't exist? Likely an old system */ | 81 | /* Doesn't exist? Likely an old system */ |
82 | if (year == -1) | 82 | if (year == -1) { |
83 | printk(KERN_ERR PREFIX "no DMI BIOS year, " | ||
84 | "acpi=force is required to enable ACPI\n" ); | ||
83 | return 1; | 85 | return 1; |
86 | } | ||
84 | /* 0? Likely a buggy new BIOS */ | 87 | /* 0? Likely a buggy new BIOS */ |
85 | if (year == 0) | 88 | if (year == 0) { |
89 | printk(KERN_ERR PREFIX "DMI BIOS year==0, " | ||
90 | "assuming ACPI-capable machine\n" ); | ||
86 | return 0; | 91 | return 0; |
92 | } | ||
87 | if (year < CONFIG_ACPI_BLACKLIST_YEAR) { | 93 | if (year < CONFIG_ACPI_BLACKLIST_YEAR) { |
88 | printk(KERN_ERR PREFIX "BIOS age (%d) fails cutoff (%d), " | 94 | printk(KERN_ERR PREFIX "BIOS age (%d) fails cutoff (%d), " |
89 | "acpi=force is required to enable ACPI\n", | 95 | "acpi=force is required to enable ACPI\n", |
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c index ab6888373795..a802962ff2b4 100644 --- a/drivers/acpi/ec.c +++ b/drivers/acpi/ec.c | |||
@@ -100,6 +100,7 @@ static struct acpi_ec { | |||
100 | unsigned long global_lock; | 100 | unsigned long global_lock; |
101 | struct mutex lock; | 101 | struct mutex lock; |
102 | atomic_t query_pending; | 102 | atomic_t query_pending; |
103 | atomic_t event_count; | ||
103 | atomic_t leaving_burst; /* 0 : No, 1 : Yes, 2: abort */ | 104 | atomic_t leaving_burst; /* 0 : No, 1 : Yes, 2: abort */ |
104 | wait_queue_head_t wait; | 105 | wait_queue_head_t wait; |
105 | } *ec_ecdt; | 106 | } *ec_ecdt; |
@@ -131,10 +132,12 @@ static inline void acpi_ec_write_data(struct acpi_ec *ec, u8 data) | |||
131 | outb(data, ec->data_addr); | 132 | outb(data, ec->data_addr); |
132 | } | 133 | } |
133 | 134 | ||
134 | static inline int acpi_ec_check_status(struct acpi_ec *ec, enum ec_event event) | 135 | static inline int acpi_ec_check_status(struct acpi_ec *ec, enum ec_event event, |
136 | unsigned old_count) | ||
135 | { | 137 | { |
136 | u8 status = acpi_ec_read_status(ec); | 138 | u8 status = acpi_ec_read_status(ec); |
137 | 139 | if (old_count == atomic_read(&ec->event_count)) | |
140 | return 0; | ||
138 | if (event == ACPI_EC_EVENT_OBF_1) { | 141 | if (event == ACPI_EC_EVENT_OBF_1) { |
139 | if (status & ACPI_EC_FLAG_OBF) | 142 | if (status & ACPI_EC_FLAG_OBF) |
140 | return 1; | 143 | return 1; |
@@ -146,19 +149,19 @@ static inline int acpi_ec_check_status(struct acpi_ec *ec, enum ec_event event) | |||
146 | return 0; | 149 | return 0; |
147 | } | 150 | } |
148 | 151 | ||
149 | static int acpi_ec_wait(struct acpi_ec *ec, enum ec_event event) | 152 | static int acpi_ec_wait(struct acpi_ec *ec, enum ec_event event, unsigned count) |
150 | { | 153 | { |
151 | if (acpi_ec_mode == EC_POLL) { | 154 | if (acpi_ec_mode == EC_POLL) { |
152 | unsigned long delay = jiffies + msecs_to_jiffies(ACPI_EC_DELAY); | 155 | unsigned long delay = jiffies + msecs_to_jiffies(ACPI_EC_DELAY); |
153 | while (time_before(jiffies, delay)) { | 156 | while (time_before(jiffies, delay)) { |
154 | if (acpi_ec_check_status(ec, event)) | 157 | if (acpi_ec_check_status(ec, event, 0)) |
155 | return 0; | 158 | return 0; |
156 | } | 159 | } |
157 | } else { | 160 | } else { |
158 | if (wait_event_timeout(ec->wait, | 161 | if (wait_event_timeout(ec->wait, |
159 | acpi_ec_check_status(ec, event), | 162 | acpi_ec_check_status(ec, event, count), |
160 | msecs_to_jiffies(ACPI_EC_DELAY)) || | 163 | msecs_to_jiffies(ACPI_EC_DELAY)) || |
161 | acpi_ec_check_status(ec, event)) { | 164 | acpi_ec_check_status(ec, event, 0)) { |
162 | return 0; | 165 | return 0; |
163 | } else { | 166 | } else { |
164 | printk(KERN_ERR PREFIX "acpi_ec_wait timeout," | 167 | printk(KERN_ERR PREFIX "acpi_ec_wait timeout," |
@@ -225,21 +228,22 @@ static int acpi_ec_transaction_unlocked(struct acpi_ec *ec, u8 command, | |||
225 | u8 * rdata, unsigned rdata_len) | 228 | u8 * rdata, unsigned rdata_len) |
226 | { | 229 | { |
227 | int result = 0; | 230 | int result = 0; |
228 | 231 | unsigned count = atomic_read(&ec->event_count); | |
229 | acpi_ec_write_cmd(ec, command); | 232 | acpi_ec_write_cmd(ec, command); |
230 | 233 | ||
231 | for (; wdata_len > 0; --wdata_len) { | 234 | for (; wdata_len > 0; --wdata_len) { |
232 | result = acpi_ec_wait(ec, ACPI_EC_EVENT_IBF_0); | 235 | result = acpi_ec_wait(ec, ACPI_EC_EVENT_IBF_0, count); |
233 | if (result) { | 236 | if (result) { |
234 | printk(KERN_ERR PREFIX | 237 | printk(KERN_ERR PREFIX |
235 | "write_cmd timeout, command = %d\n", command); | 238 | "write_cmd timeout, command = %d\n", command); |
236 | goto end; | 239 | goto end; |
237 | } | 240 | } |
241 | count = atomic_read(&ec->event_count); | ||
238 | acpi_ec_write_data(ec, *(wdata++)); | 242 | acpi_ec_write_data(ec, *(wdata++)); |
239 | } | 243 | } |
240 | 244 | ||
241 | if (!rdata_len) { | 245 | if (!rdata_len) { |
242 | result = acpi_ec_wait(ec, ACPI_EC_EVENT_IBF_0); | 246 | result = acpi_ec_wait(ec, ACPI_EC_EVENT_IBF_0, count); |
243 | if (result) { | 247 | if (result) { |
244 | printk(KERN_ERR PREFIX | 248 | printk(KERN_ERR PREFIX |
245 | "finish-write timeout, command = %d\n", command); | 249 | "finish-write timeout, command = %d\n", command); |
@@ -250,13 +254,13 @@ static int acpi_ec_transaction_unlocked(struct acpi_ec *ec, u8 command, | |||
250 | } | 254 | } |
251 | 255 | ||
252 | for (; rdata_len > 0; --rdata_len) { | 256 | for (; rdata_len > 0; --rdata_len) { |
253 | result = acpi_ec_wait(ec, ACPI_EC_EVENT_OBF_1); | 257 | result = acpi_ec_wait(ec, ACPI_EC_EVENT_OBF_1, count); |
254 | if (result) { | 258 | if (result) { |
255 | printk(KERN_ERR PREFIX "read timeout, command = %d\n", | 259 | printk(KERN_ERR PREFIX "read timeout, command = %d\n", |
256 | command); | 260 | command); |
257 | goto end; | 261 | goto end; |
258 | } | 262 | } |
259 | 263 | count = atomic_read(&ec->event_count); | |
260 | *(rdata++) = acpi_ec_read_data(ec); | 264 | *(rdata++) = acpi_ec_read_data(ec); |
261 | } | 265 | } |
262 | end: | 266 | end: |
@@ -288,7 +292,7 @@ static int acpi_ec_transaction(struct acpi_ec *ec, u8 command, | |||
288 | /* Make sure GPE is enabled before doing transaction */ | 292 | /* Make sure GPE is enabled before doing transaction */ |
289 | acpi_enable_gpe(NULL, ec->gpe, ACPI_NOT_ISR); | 293 | acpi_enable_gpe(NULL, ec->gpe, ACPI_NOT_ISR); |
290 | 294 | ||
291 | status = acpi_ec_wait(ec, ACPI_EC_EVENT_IBF_0); | 295 | status = acpi_ec_wait(ec, ACPI_EC_EVENT_IBF_0, 0); |
292 | if (status) { | 296 | if (status) { |
293 | printk(KERN_DEBUG PREFIX | 297 | printk(KERN_DEBUG PREFIX |
294 | "input buffer is not empty, aborting transaction\n"); | 298 | "input buffer is not empty, aborting transaction\n"); |
@@ -369,8 +373,8 @@ int ec_write(u8 addr, u8 val) | |||
369 | EXPORT_SYMBOL(ec_write); | 373 | EXPORT_SYMBOL(ec_write); |
370 | 374 | ||
371 | int ec_transaction(u8 command, | 375 | int ec_transaction(u8 command, |
372 | const u8 * wdata, unsigned wdata_len, | 376 | const u8 * wdata, unsigned wdata_len, |
373 | u8 * rdata, unsigned rdata_len) | 377 | u8 * rdata, unsigned rdata_len) |
374 | { | 378 | { |
375 | struct acpi_ec *ec; | 379 | struct acpi_ec *ec; |
376 | 380 | ||
@@ -435,7 +439,7 @@ static u32 acpi_ec_gpe_handler(void *data) | |||
435 | acpi_status status = AE_OK; | 439 | acpi_status status = AE_OK; |
436 | u8 value; | 440 | u8 value; |
437 | struct acpi_ec *ec = (struct acpi_ec *)data; | 441 | struct acpi_ec *ec = (struct acpi_ec *)data; |
438 | 442 | atomic_inc(&ec->event_count); | |
439 | if (acpi_ec_mode == EC_INTR) { | 443 | if (acpi_ec_mode == EC_INTR) { |
440 | wake_up(&ec->wait); | 444 | wake_up(&ec->wait); |
441 | } | 445 | } |
@@ -633,6 +637,7 @@ static int acpi_ec_add(struct acpi_device *device) | |||
633 | ec->uid = -1; | 637 | ec->uid = -1; |
634 | mutex_init(&ec->lock); | 638 | mutex_init(&ec->lock); |
635 | atomic_set(&ec->query_pending, 0); | 639 | atomic_set(&ec->query_pending, 0); |
640 | atomic_set(&ec->event_count, 1); | ||
636 | if (acpi_ec_mode == EC_INTR) { | 641 | if (acpi_ec_mode == EC_INTR) { |
637 | atomic_set(&ec->leaving_burst, 1); | 642 | atomic_set(&ec->leaving_burst, 1); |
638 | init_waitqueue_head(&ec->wait); | 643 | init_waitqueue_head(&ec->wait); |
@@ -807,6 +812,7 @@ acpi_fake_ecdt_callback(acpi_handle handle, | |||
807 | acpi_status status; | 812 | acpi_status status; |
808 | 813 | ||
809 | mutex_init(&ec_ecdt->lock); | 814 | mutex_init(&ec_ecdt->lock); |
815 | atomic_set(&ec_ecdt->event_count, 1); | ||
810 | if (acpi_ec_mode == EC_INTR) { | 816 | if (acpi_ec_mode == EC_INTR) { |
811 | init_waitqueue_head(&ec_ecdt->wait); | 817 | init_waitqueue_head(&ec_ecdt->wait); |
812 | } | 818 | } |
@@ -888,6 +894,7 @@ static int __init acpi_ec_get_real_ecdt(void) | |||
888 | return -ENOMEM; | 894 | return -ENOMEM; |
889 | 895 | ||
890 | mutex_init(&ec_ecdt->lock); | 896 | mutex_init(&ec_ecdt->lock); |
897 | atomic_set(&ec_ecdt->event_count, 1); | ||
891 | if (acpi_ec_mode == EC_INTR) { | 898 | if (acpi_ec_mode == EC_INTR) { |
892 | init_waitqueue_head(&ec_ecdt->wait); | 899 | init_waitqueue_head(&ec_ecdt->wait); |
893 | } | 900 | } |
@@ -1016,8 +1023,7 @@ static int __init acpi_ec_set_intr_mode(char *str) | |||
1016 | acpi_ec_mode = EC_POLL; | 1023 | acpi_ec_mode = EC_POLL; |
1017 | } | 1024 | } |
1018 | acpi_ec_driver.ops.add = acpi_ec_add; | 1025 | acpi_ec_driver.ops.add = acpi_ec_add; |
1019 | printk(KERN_NOTICE PREFIX "%s mode.\n", | 1026 | printk(KERN_NOTICE PREFIX "%s mode.\n", intr ? "interrupt" : "polling"); |
1020 | intr ? "interrupt" : "polling"); | ||
1021 | 1027 | ||
1022 | return 1; | 1028 | return 1; |
1023 | } | 1029 | } |
diff --git a/drivers/acpi/events/evmisc.c b/drivers/acpi/events/evmisc.c index d572700197f3..8dcade63b04b 100644 --- a/drivers/acpi/events/evmisc.c +++ b/drivers/acpi/events/evmisc.c | |||
@@ -423,6 +423,8 @@ static acpi_status acpi_ev_remove_global_lock_handler(void) | |||
423 | * the global lock appear as a standard mutex on the OS side. | 423 | * the global lock appear as a standard mutex on the OS side. |
424 | * | 424 | * |
425 | *****************************************************************************/ | 425 | *****************************************************************************/ |
426 | static acpi_thread_id acpi_ev_global_lock_thread_id; | ||
427 | static int acpi_ev_global_lock_acquired; | ||
426 | 428 | ||
427 | acpi_status acpi_ev_acquire_global_lock(u16 timeout) | 429 | acpi_status acpi_ev_acquire_global_lock(u16 timeout) |
428 | { | 430 | { |
@@ -435,11 +437,24 @@ acpi_status acpi_ev_acquire_global_lock(u16 timeout) | |||
435 | * Only one thread can acquire the GL at a time, the global_lock_mutex | 437 | * Only one thread can acquire the GL at a time, the global_lock_mutex |
436 | * enforces this. This interface releases the interpreter if we must wait. | 438 | * enforces this. This interface releases the interpreter if we must wait. |
437 | */ | 439 | */ |
438 | status = acpi_ex_system_wait_mutex(acpi_gbl_global_lock_mutex, timeout); | 440 | status = acpi_ex_system_wait_mutex(acpi_gbl_global_lock_mutex, 0); |
441 | if (status == AE_TIME) { | ||
442 | if (acpi_ev_global_lock_thread_id == acpi_os_get_thread_id()) { | ||
443 | acpi_ev_global_lock_acquired++; | ||
444 | return AE_OK; | ||
445 | } | ||
446 | } | ||
447 | |||
448 | if (ACPI_FAILURE(status)) { | ||
449 | status = acpi_ex_system_wait_mutex(acpi_gbl_global_lock_mutex, timeout); | ||
450 | } | ||
439 | if (ACPI_FAILURE(status)) { | 451 | if (ACPI_FAILURE(status)) { |
440 | return_ACPI_STATUS(status); | 452 | return_ACPI_STATUS(status); |
441 | } | 453 | } |
442 | 454 | ||
455 | acpi_ev_global_lock_thread_id = acpi_os_get_thread_id(); | ||
456 | acpi_ev_global_lock_acquired++; | ||
457 | |||
443 | /* | 458 | /* |
444 | * Make sure that a global lock actually exists. If not, just treat | 459 | * Make sure that a global lock actually exists. If not, just treat |
445 | * the lock as a standard mutex. | 460 | * the lock as a standard mutex. |
@@ -506,6 +521,11 @@ acpi_status acpi_ev_release_global_lock(void) | |||
506 | return_ACPI_STATUS(AE_NOT_ACQUIRED); | 521 | return_ACPI_STATUS(AE_NOT_ACQUIRED); |
507 | } | 522 | } |
508 | 523 | ||
524 | acpi_ev_global_lock_acquired--; | ||
525 | if (acpi_ev_global_lock_acquired > 0) { | ||
526 | return AE_OK; | ||
527 | } | ||
528 | |||
509 | if (acpi_gbl_global_lock_present) { | 529 | if (acpi_gbl_global_lock_present) { |
510 | 530 | ||
511 | /* Allow any thread to release the lock */ | 531 | /* Allow any thread to release the lock */ |
@@ -529,7 +549,8 @@ acpi_status acpi_ev_release_global_lock(void) | |||
529 | acpi_gbl_global_lock_acquired = FALSE; | 549 | acpi_gbl_global_lock_acquired = FALSE; |
530 | 550 | ||
531 | /* Release the local GL mutex */ | 551 | /* Release the local GL mutex */ |
532 | 552 | acpi_ev_global_lock_thread_id = 0; | |
553 | acpi_ev_global_lock_acquired = 0; | ||
533 | acpi_os_release_mutex(acpi_gbl_global_lock_mutex); | 554 | acpi_os_release_mutex(acpi_gbl_global_lock_mutex); |
534 | return_ACPI_STATUS(status); | 555 | return_ACPI_STATUS(status); |
535 | } | 556 | } |
diff --git a/drivers/acpi/ibm_acpi.c b/drivers/acpi/ibm_acpi.c index 4cc534e36e81..36901362fd24 100644 --- a/drivers/acpi/ibm_acpi.c +++ b/drivers/acpi/ibm_acpi.c | |||
@@ -86,6 +86,7 @@ | |||
86 | 86 | ||
87 | #include <linux/proc_fs.h> | 87 | #include <linux/proc_fs.h> |
88 | #include <linux/backlight.h> | 88 | #include <linux/backlight.h> |
89 | #include <linux/fb.h> | ||
89 | #include <asm/uaccess.h> | 90 | #include <asm/uaccess.h> |
90 | 91 | ||
91 | #include <linux/dmi.h> | 92 | #include <linux/dmi.h> |
@@ -157,6 +158,7 @@ IBM_HANDLE(dock, root, "\\_SB.GDCK", /* X30, X31, X40 */ | |||
157 | "\\_SB.PCI.ISA.SLCE", /* 570 */ | 158 | "\\_SB.PCI.ISA.SLCE", /* 570 */ |
158 | ); /* A21e,G4x,R30,R31,R32,R40,R40e,R50e */ | 159 | ); /* A21e,G4x,R30,R31,R32,R40,R40e,R50e */ |
159 | #endif | 160 | #endif |
161 | #ifdef CONFIG_ACPI_IBM_BAY | ||
160 | IBM_HANDLE(bay, root, "\\_SB.PCI.IDE.SECN.MAST", /* 570 */ | 162 | IBM_HANDLE(bay, root, "\\_SB.PCI.IDE.SECN.MAST", /* 570 */ |
161 | "\\_SB.PCI0.IDE0.IDES.IDSM", /* 600e/x, 770e, 770x */ | 163 | "\\_SB.PCI0.IDE0.IDES.IDSM", /* 600e/x, 770e, 770x */ |
162 | "\\_SB.PCI0.SATA.SCND.MSTR", /* T60, X60, Z60 */ | 164 | "\\_SB.PCI0.SATA.SCND.MSTR", /* T60, X60, Z60 */ |
@@ -174,6 +176,7 @@ IBM_HANDLE(bay2, root, "\\_SB.PCI0.IDE0.PRIM.SLAV", /* A3x, R32 */ | |||
174 | IBM_HANDLE(bay2_ej, bay2, "_EJ3", /* 600e/x, 770e, A3x */ | 176 | IBM_HANDLE(bay2_ej, bay2, "_EJ3", /* 600e/x, 770e, A3x */ |
175 | "_EJ0", /* 770x */ | 177 | "_EJ0", /* 770x */ |
176 | ); /* all others */ | 178 | ); /* all others */ |
179 | #endif /* CONFIG_ACPI_IBM_BAY */ | ||
177 | 180 | ||
178 | /* don't list other alternatives as we install a notify handler on the 570 */ | 181 | /* don't list other alternatives as we install a notify handler on the 570 */ |
179 | IBM_HANDLE(pci, root, "\\_SB.PCI"); /* 570 */ | 182 | IBM_HANDLE(pci, root, "\\_SB.PCI"); /* 570 */ |
@@ -1044,6 +1047,7 @@ static int light_write(char *buf) | |||
1044 | return 0; | 1047 | return 0; |
1045 | } | 1048 | } |
1046 | 1049 | ||
1050 | #if defined(CONFIG_ACPI_IBM_DOCK) || defined(CONFIG_ACPI_IBM_BAY) | ||
1047 | static int _sta(acpi_handle handle) | 1051 | static int _sta(acpi_handle handle) |
1048 | { | 1052 | { |
1049 | int status; | 1053 | int status; |
@@ -1053,6 +1057,7 @@ static int _sta(acpi_handle handle) | |||
1053 | 1057 | ||
1054 | return status; | 1058 | return status; |
1055 | } | 1059 | } |
1060 | #endif | ||
1056 | 1061 | ||
1057 | #ifdef CONFIG_ACPI_IBM_DOCK | 1062 | #ifdef CONFIG_ACPI_IBM_DOCK |
1058 | #define dock_docked() (_sta(dock_handle) & 1) | 1063 | #define dock_docked() (_sta(dock_handle) & 1) |
@@ -1119,6 +1124,7 @@ static void dock_notify(struct ibm_struct *ibm, u32 event) | |||
1119 | } | 1124 | } |
1120 | #endif | 1125 | #endif |
1121 | 1126 | ||
1127 | #ifdef CONFIG_ACPI_IBM_BAY | ||
1122 | static int bay_status_supported; | 1128 | static int bay_status_supported; |
1123 | static int bay_status2_supported; | 1129 | static int bay_status2_supported; |
1124 | static int bay_eject_supported; | 1130 | static int bay_eject_supported; |
@@ -1194,6 +1200,7 @@ static void bay_notify(struct ibm_struct *ibm, u32 event) | |||
1194 | { | 1200 | { |
1195 | acpi_bus_generate_event(ibm->device, event, 0); | 1201 | acpi_bus_generate_event(ibm->device, event, 0); |
1196 | } | 1202 | } |
1203 | #endif /* CONFIG_ACPI_IBM_BAY */ | ||
1197 | 1204 | ||
1198 | static int cmos_read(char *p) | 1205 | static int cmos_read(char *p) |
1199 | { | 1206 | { |
@@ -1701,7 +1708,10 @@ static int brightness_write(char *buf) | |||
1701 | 1708 | ||
1702 | static int brightness_update_status(struct backlight_device *bd) | 1709 | static int brightness_update_status(struct backlight_device *bd) |
1703 | { | 1710 | { |
1704 | return brightness_set(bd->props.brightness); | 1711 | return brightness_set( |
1712 | (bd->props.fb_blank == FB_BLANK_UNBLANK && | ||
1713 | bd->props.power == FB_BLANK_UNBLANK) ? | ||
1714 | bd->props.brightness : 0); | ||
1705 | } | 1715 | } |
1706 | 1716 | ||
1707 | static struct backlight_ops ibm_backlight_data = { | 1717 | static struct backlight_ops ibm_backlight_data = { |
@@ -1711,6 +1721,12 @@ static struct backlight_ops ibm_backlight_data = { | |||
1711 | 1721 | ||
1712 | static int brightness_init(void) | 1722 | static int brightness_init(void) |
1713 | { | 1723 | { |
1724 | int b; | ||
1725 | |||
1726 | b = brightness_get(NULL); | ||
1727 | if (b < 0) | ||
1728 | return b; | ||
1729 | |||
1714 | ibm_backlight_device = backlight_device_register("ibm", NULL, NULL, | 1730 | ibm_backlight_device = backlight_device_register("ibm", NULL, NULL, |
1715 | &ibm_backlight_data); | 1731 | &ibm_backlight_data); |
1716 | if (IS_ERR(ibm_backlight_device)) { | 1732 | if (IS_ERR(ibm_backlight_device)) { |
@@ -1718,7 +1734,9 @@ static int brightness_init(void) | |||
1718 | return PTR_ERR(ibm_backlight_device); | 1734 | return PTR_ERR(ibm_backlight_device); |
1719 | } | 1735 | } |
1720 | 1736 | ||
1721 | ibm_backlight_device->props.max_brightness = 7; | 1737 | ibm_backlight_device->props.max_brightness = 7; |
1738 | ibm_backlight_device->props.brightness = b; | ||
1739 | backlight_update_status(ibm_backlight_device); | ||
1722 | 1740 | ||
1723 | return 0; | 1741 | return 0; |
1724 | } | 1742 | } |
@@ -2353,6 +2371,7 @@ static struct ibm_struct ibms[] = { | |||
2353 | .type = ACPI_SYSTEM_NOTIFY, | 2371 | .type = ACPI_SYSTEM_NOTIFY, |
2354 | }, | 2372 | }, |
2355 | #endif | 2373 | #endif |
2374 | #ifdef CONFIG_ACPI_IBM_BAY | ||
2356 | { | 2375 | { |
2357 | .name = "bay", | 2376 | .name = "bay", |
2358 | .init = bay_init, | 2377 | .init = bay_init, |
@@ -2362,6 +2381,7 @@ static struct ibm_struct ibms[] = { | |||
2362 | .handle = &bay_handle, | 2381 | .handle = &bay_handle, |
2363 | .type = ACPI_SYSTEM_NOTIFY, | 2382 | .type = ACPI_SYSTEM_NOTIFY, |
2364 | }, | 2383 | }, |
2384 | #endif /* CONFIG_ACPI_IBM_BAY */ | ||
2365 | { | 2385 | { |
2366 | .name = "cmos", | 2386 | .name = "cmos", |
2367 | .read = cmos_read, | 2387 | .read = cmos_read, |
@@ -2647,7 +2667,9 @@ IBM_PARAM(light); | |||
2647 | #ifdef CONFIG_ACPI_IBM_DOCK | 2667 | #ifdef CONFIG_ACPI_IBM_DOCK |
2648 | IBM_PARAM(dock); | 2668 | IBM_PARAM(dock); |
2649 | #endif | 2669 | #endif |
2670 | #ifdef CONFIG_ACPI_IBM_BAY | ||
2650 | IBM_PARAM(bay); | 2671 | IBM_PARAM(bay); |
2672 | #endif /* CONFIG_ACPI_IBM_BAY */ | ||
2651 | IBM_PARAM(cmos); | 2673 | IBM_PARAM(cmos); |
2652 | IBM_PARAM(led); | 2674 | IBM_PARAM(led); |
2653 | IBM_PARAM(beep); | 2675 | IBM_PARAM(beep); |
@@ -2723,12 +2745,14 @@ static int __init acpi_ibm_init(void) | |||
2723 | IBM_HANDLE_INIT(dock); | 2745 | IBM_HANDLE_INIT(dock); |
2724 | #endif | 2746 | #endif |
2725 | IBM_HANDLE_INIT(pci); | 2747 | IBM_HANDLE_INIT(pci); |
2748 | #ifdef CONFIG_ACPI_IBM_BAY | ||
2726 | IBM_HANDLE_INIT(bay); | 2749 | IBM_HANDLE_INIT(bay); |
2727 | if (bay_handle) | 2750 | if (bay_handle) |
2728 | IBM_HANDLE_INIT(bay_ej); | 2751 | IBM_HANDLE_INIT(bay_ej); |
2729 | IBM_HANDLE_INIT(bay2); | 2752 | IBM_HANDLE_INIT(bay2); |
2730 | if (bay2_handle) | 2753 | if (bay2_handle) |
2731 | IBM_HANDLE_INIT(bay2_ej); | 2754 | IBM_HANDLE_INIT(bay2_ej); |
2755 | #endif /* CONFIG_ACPI_IBM_BAY */ | ||
2732 | IBM_HANDLE_INIT(beep); | 2756 | IBM_HANDLE_INIT(beep); |
2733 | IBM_HANDLE_INIT(ecrd); | 2757 | IBM_HANDLE_INIT(ecrd); |
2734 | IBM_HANDLE_INIT(ecwr); | 2758 | IBM_HANDLE_INIT(ecwr); |
diff --git a/drivers/acpi/power.c b/drivers/acpi/power.c index 1ef338545dfe..4ffecd179702 100644 --- a/drivers/acpi/power.c +++ b/drivers/acpi/power.c | |||
@@ -436,8 +436,6 @@ int acpi_power_transition(struct acpi_device *device, int state) | |||
436 | cl = &device->power.states[device->power.state].resources; | 436 | cl = &device->power.states[device->power.state].resources; |
437 | tl = &device->power.states[state].resources; | 437 | tl = &device->power.states[state].resources; |
438 | 438 | ||
439 | device->power.state = ACPI_STATE_UNKNOWN; | ||
440 | |||
441 | if (!cl->count && !tl->count) { | 439 | if (!cl->count && !tl->count) { |
442 | result = -ENODEV; | 440 | result = -ENODEV; |
443 | goto end; | 441 | goto end; |
@@ -468,12 +466,15 @@ int acpi_power_transition(struct acpi_device *device, int state) | |||
468 | goto end; | 466 | goto end; |
469 | } | 467 | } |
470 | 468 | ||
471 | /* We shouldn't change the state till all above operations succeed */ | 469 | end: |
472 | device->power.state = state; | 470 | if (result) { |
473 | end: | 471 | device->power.state = ACPI_STATE_UNKNOWN; |
474 | if (result) | ||
475 | printk(KERN_WARNING PREFIX "Transitioning device [%s] to D%d\n", | 472 | printk(KERN_WARNING PREFIX "Transitioning device [%s] to D%d\n", |
476 | device->pnp.bus_id, state); | 473 | device->pnp.bus_id, state); |
474 | } else { | ||
475 | /* We shouldn't change the state till all above operations succeed */ | ||
476 | device->power.state = state; | ||
477 | } | ||
477 | 478 | ||
478 | return result; | 479 | return result; |
479 | } | 480 | } |
@@ -687,13 +688,6 @@ static int acpi_power_resume(struct acpi_device *device) | |||
687 | return result; | 688 | return result; |
688 | 689 | ||
689 | mutex_lock(&resource->resource_lock); | 690 | mutex_lock(&resource->resource_lock); |
690 | if ((resource->state == ACPI_POWER_RESOURCE_STATE_ON) && | ||
691 | list_empty(&resource->reference)) { | ||
692 | mutex_unlock(&resource->resource_lock); | ||
693 | result = acpi_power_off_device(device->handle, NULL); | ||
694 | return result; | ||
695 | } | ||
696 | |||
697 | if ((resource->state == ACPI_POWER_RESOURCE_STATE_OFF) && | 691 | if ((resource->state == ACPI_POWER_RESOURCE_STATE_OFF) && |
698 | !list_empty(&resource->reference)) { | 692 | !list_empty(&resource->reference)) { |
699 | ref = container_of(resource->reference.next, struct acpi_power_reference, node); | 693 | ref = container_of(resource->reference.next, struct acpi_power_reference, node); |
diff --git a/drivers/acpi/resources/rscreate.c b/drivers/acpi/resources/rscreate.c index 1358c06a969c..cc48ab05676c 100644 --- a/drivers/acpi/resources/rscreate.c +++ b/drivers/acpi/resources/rscreate.c | |||
@@ -191,6 +191,9 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object, | |||
191 | user_prt = ACPI_CAST_PTR(struct acpi_pci_routing_table, buffer); | 191 | user_prt = ACPI_CAST_PTR(struct acpi_pci_routing_table, buffer); |
192 | 192 | ||
193 | for (index = 0; index < number_of_elements; index++) { | 193 | for (index = 0; index < number_of_elements; index++) { |
194 | int source_name_index = 2; | ||
195 | int source_index_index = 3; | ||
196 | |||
194 | /* | 197 | /* |
195 | * Point user_prt past this current structure | 198 | * Point user_prt past this current structure |
196 | * | 199 | * |
@@ -261,10 +264,28 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object, | |||
261 | } | 264 | } |
262 | 265 | ||
263 | /* | 266 | /* |
267 | * If BIOS erroneously reversed the _PRT source_name and source_index, | ||
268 | * then reverse them back. | ||
269 | */ | ||
270 | if (ACPI_GET_OBJECT_TYPE (sub_object_list[3]) != ACPI_TYPE_INTEGER) { | ||
271 | if (acpi_gbl_enable_interpreter_slack) { | ||
272 | source_name_index = 3; | ||
273 | source_index_index = 2; | ||
274 | printk(KERN_WARNING "ACPI: Handling Garbled _PRT entry\n"); | ||
275 | } else { | ||
276 | ACPI_ERROR((AE_INFO, | ||
277 | "(PRT[%X].source_index) Need Integer, found %s", | ||
278 | index, | ||
279 | acpi_ut_get_object_type_name(sub_object_list[3]))); | ||
280 | return_ACPI_STATUS(AE_BAD_DATA); | ||
281 | } | ||
282 | } | ||
283 | |||
284 | /* | ||
264 | * 3) Third subobject: Dereference the PRT.source_name | 285 | * 3) Third subobject: Dereference the PRT.source_name |
265 | * The name may be unresolved (slack mode), so allow a null object | 286 | * The name may be unresolved (slack mode), so allow a null object |
266 | */ | 287 | */ |
267 | obj_desc = sub_object_list[2]; | 288 | obj_desc = sub_object_list[source_name_index]; |
268 | if (obj_desc) { | 289 | if (obj_desc) { |
269 | switch (ACPI_GET_OBJECT_TYPE(obj_desc)) { | 290 | switch (ACPI_GET_OBJECT_TYPE(obj_desc)) { |
270 | case ACPI_TYPE_LOCAL_REFERENCE: | 291 | case ACPI_TYPE_LOCAL_REFERENCE: |
@@ -339,7 +360,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object, | |||
339 | 360 | ||
340 | /* 4) Fourth subobject: Dereference the PRT.source_index */ | 361 | /* 4) Fourth subobject: Dereference the PRT.source_index */ |
341 | 362 | ||
342 | obj_desc = sub_object_list[3]; | 363 | obj_desc = sub_object_list[source_index_index]; |
343 | if (ACPI_GET_OBJECT_TYPE(obj_desc) == ACPI_TYPE_INTEGER) { | 364 | if (ACPI_GET_OBJECT_TYPE(obj_desc) == ACPI_TYPE_INTEGER) { |
344 | user_prt->source_index = (u32) obj_desc->integer.value; | 365 | user_prt->source_index = (u32) obj_desc->integer.value; |
345 | } else { | 366 | } else { |
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c index 0771b434feb2..00d25b347255 100644 --- a/drivers/acpi/video.c +++ b/drivers/acpi/video.c | |||
@@ -102,9 +102,9 @@ struct acpi_video_bus_cap { | |||
102 | 102 | ||
103 | struct acpi_video_device_attrib { | 103 | struct acpi_video_device_attrib { |
104 | u32 display_index:4; /* A zero-based instance of the Display */ | 104 | u32 display_index:4; /* A zero-based instance of the Display */ |
105 | u32 display_port_attachment:4; /*This field differenates displays type */ | 105 | u32 display_port_attachment:4; /*This field differentiates the display type */ |
106 | u32 display_type:4; /*Describe the specific type in use */ | 106 | u32 display_type:4; /*Describe the specific type in use */ |
107 | u32 vendor_specific:4; /*Chipset Vendor Specifi */ | 107 | u32 vendor_specific:4; /*Chipset Vendor Specific */ |
108 | u32 bios_can_detect:1; /*BIOS can detect the device */ | 108 | u32 bios_can_detect:1; /*BIOS can detect the device */ |
109 | u32 depend_on_vga:1; /*Non-VGA output device whose power is related to | 109 | u32 depend_on_vga:1; /*Non-VGA output device whose power is related to |
110 | the VGA device. */ | 110 | the VGA device. */ |
@@ -484,16 +484,16 @@ acpi_video_bus_POST_options(struct acpi_video_bus *video, | |||
484 | * 0. The system BIOS should NOT automatically switch(toggle) | 484 | * 0. The system BIOS should NOT automatically switch(toggle) |
485 | * the active display output. | 485 | * the active display output. |
486 | * 1. The system BIOS should automatically switch (toggle) the | 486 | * 1. The system BIOS should automatically switch (toggle) the |
487 | * active display output. No swich event. | 487 | * active display output. No switch event. |
488 | * 2. The _DGS value should be locked. | 488 | * 2. The _DGS value should be locked. |
489 | * 3. The system BIOS should not automatically switch (toggle) the | 489 | * 3. The system BIOS should not automatically switch (toggle) the |
490 | * active display output, but instead generate the display switch | 490 | * active display output, but instead generate the display switch |
491 | * event notify code. | 491 | * event notify code. |
492 | * lcd_flag : | 492 | * lcd_flag : |
493 | * 0. The system BIOS should automatically control the brightness level | 493 | * 0. The system BIOS should automatically control the brightness level |
494 | * of the LCD, when the power changes from AC to DC | 494 | * of the LCD when the power changes from AC to DC |
495 | * 1. The system BIOS should NOT automatically control the brightness | 495 | * 1. The system BIOS should NOT automatically control the brightness |
496 | * level of the LCD, when the power changes from AC to DC. | 496 | * level of the LCD when the power changes from AC to DC. |
497 | * Return Value: | 497 | * Return Value: |
498 | * -1 wrong arg. | 498 | * -1 wrong arg. |
499 | */ | 499 | */ |
@@ -525,7 +525,7 @@ acpi_video_bus_DOS(struct acpi_video_bus *video, int bios_flag, int lcd_flag) | |||
525 | * Return Value: | 525 | * Return Value: |
526 | * None | 526 | * None |
527 | * | 527 | * |
528 | * Find out all required AML method defined under the output | 528 | * Find out all required AML methods defined under the output |
529 | * device. | 529 | * device. |
530 | */ | 530 | */ |
531 | 531 | ||
@@ -636,7 +636,7 @@ static void acpi_video_device_find_cap(struct acpi_video_device *device) | |||
636 | * Return Value: | 636 | * Return Value: |
637 | * None | 637 | * None |
638 | * | 638 | * |
639 | * Find out all required AML method defined under the video bus device. | 639 | * Find out all required AML methods defined under the video bus device. |
640 | */ | 640 | */ |
641 | 641 | ||
642 | static void acpi_video_bus_find_cap(struct acpi_video_bus *video) | 642 | static void acpi_video_bus_find_cap(struct acpi_video_bus *video) |
@@ -681,19 +681,19 @@ static int acpi_video_bus_check(struct acpi_video_bus *video) | |||
681 | * to check well known required nodes. | 681 | * to check well known required nodes. |
682 | */ | 682 | */ |
683 | 683 | ||
684 | /* Does this device able to support video switching ? */ | 684 | /* Does this device support video switching? */ |
685 | if (video->cap._DOS) { | 685 | if (video->cap._DOS) { |
686 | video->flags.multihead = 1; | 686 | video->flags.multihead = 1; |
687 | status = 0; | 687 | status = 0; |
688 | } | 688 | } |
689 | 689 | ||
690 | /* Does this device able to retrieve a retrieve a video ROM ? */ | 690 | /* Does this device support retrieving a video ROM? */ |
691 | if (video->cap._ROM) { | 691 | if (video->cap._ROM) { |
692 | video->flags.rom = 1; | 692 | video->flags.rom = 1; |
693 | status = 0; | 693 | status = 0; |
694 | } | 694 | } |
695 | 695 | ||
696 | /* Does this device able to configure which video device to POST ? */ | 696 | /* Does this device support configuring which video device to POST? */ |
697 | if (video->cap._GPD && video->cap._SPD && video->cap._VPO) { | 697 | if (video->cap._GPD && video->cap._SPD && video->cap._VPO) { |
698 | video->flags.post = 1; | 698 | video->flags.post = 1; |
699 | status = 0; | 699 | status = 0; |
@@ -860,7 +860,7 @@ acpi_video_device_write_brightness(struct file *file, | |||
860 | if (level > 100) | 860 | if (level > 100) |
861 | return -EFAULT; | 861 | return -EFAULT; |
862 | 862 | ||
863 | /* validate though the list of available levels */ | 863 | /* validate through the list of available levels */ |
864 | for (i = 0; i < dev->brightness->count; i++) | 864 | for (i = 0; i < dev->brightness->count; i++) |
865 | if (level == dev->brightness->levels[i]) { | 865 | if (level == dev->brightness->levels[i]) { |
866 | if (ACPI_SUCCESS | 866 | if (ACPI_SUCCESS |
@@ -1065,10 +1065,10 @@ static int acpi_video_bus_POST_info_seq_show(struct seq_file *seq, void *offset) | |||
1065 | printk(KERN_WARNING PREFIX | 1065 | printk(KERN_WARNING PREFIX |
1066 | "The motherboard VGA device is not listed as a possible POST device.\n"); | 1066 | "The motherboard VGA device is not listed as a possible POST device.\n"); |
1067 | printk(KERN_WARNING PREFIX | 1067 | printk(KERN_WARNING PREFIX |
1068 | "This indicate a BIOS bug. Please contact the manufacturer.\n"); | 1068 | "This indicates a BIOS bug. Please contact the manufacturer.\n"); |
1069 | } | 1069 | } |
1070 | printk("%lx\n", options); | 1070 | printk("%lx\n", options); |
1071 | seq_printf(seq, "can POST: <intgrated video>"); | 1071 | seq_printf(seq, "can POST: <integrated video>"); |
1072 | if (options & 2) | 1072 | if (options & 2) |
1073 | seq_printf(seq, " <PCI video>"); | 1073 | seq_printf(seq, " <PCI video>"); |
1074 | if (options & 4) | 1074 | if (options & 4) |
@@ -1102,7 +1102,7 @@ static int acpi_video_bus_POST_seq_show(struct seq_file *seq, void *offset) | |||
1102 | seq_printf(seq, "<not supported>\n"); | 1102 | seq_printf(seq, "<not supported>\n"); |
1103 | goto end; | 1103 | goto end; |
1104 | } | 1104 | } |
1105 | seq_printf(seq, "device posted is <%s>\n", device_decode[id & 3]); | 1105 | seq_printf(seq, "device POSTed is <%s>\n", device_decode[id & 3]); |
1106 | 1106 | ||
1107 | end: | 1107 | end: |
1108 | return 0; | 1108 | return 0; |
@@ -1156,7 +1156,7 @@ acpi_video_bus_write_POST(struct file *file, | |||
1156 | if (opt > 3) | 1156 | if (opt > 3) |
1157 | return -EFAULT; | 1157 | return -EFAULT; |
1158 | 1158 | ||
1159 | /* just in case an OEM 'forget' the motherboard... */ | 1159 | /* just in case an OEM 'forgot' the motherboard... */ |
1160 | options |= 1; | 1160 | options |= 1; |
1161 | 1161 | ||
1162 | if (options & (1ul << opt)) { | 1162 | if (options & (1ul << opt)) { |
@@ -1527,13 +1527,13 @@ static int acpi_video_device_enumerate(struct acpi_video_bus *video) | |||
1527 | /* | 1527 | /* |
1528 | * Arg: | 1528 | * Arg: |
1529 | * video : video bus device | 1529 | * video : video bus device |
1530 | * event : Nontify Event | 1530 | * event : notify event |
1531 | * | 1531 | * |
1532 | * Return: | 1532 | * Return: |
1533 | * < 0 : error | 1533 | * < 0 : error |
1534 | * | 1534 | * |
1535 | * 1. Find out the current active output device. | 1535 | * 1. Find out the current active output device. |
1536 | * 2. Identify the next output device to switch | 1536 | * 2. Identify the next output device to switch to. |
1537 | * 3. call _DSS to do actual switch. | 1537 | * 3. call _DSS to do actual switch. |
1538 | */ | 1538 | */ |
1539 | 1539 | ||
@@ -1723,12 +1723,12 @@ static void acpi_video_bus_notify(acpi_handle handle, u32 event, void *data) | |||
1723 | device = video->device; | 1723 | device = video->device; |
1724 | 1724 | ||
1725 | switch (event) { | 1725 | switch (event) { |
1726 | case ACPI_VIDEO_NOTIFY_SWITCH: /* User request that a switch occur, | 1726 | case ACPI_VIDEO_NOTIFY_SWITCH: /* User requested a switch, |
1727 | * most likely via hotkey. */ | 1727 | * most likely via hotkey. */ |
1728 | acpi_bus_generate_event(device, event, 0); | 1728 | acpi_bus_generate_event(device, event, 0); |
1729 | break; | 1729 | break; |
1730 | 1730 | ||
1731 | case ACPI_VIDEO_NOTIFY_PROBE: /* User plug or remove a video | 1731 | case ACPI_VIDEO_NOTIFY_PROBE: /* User plugged in or removed a video |
1732 | * connector. */ | 1732 | * connector. */ |
1733 | acpi_video_device_enumerate(video); | 1733 | acpi_video_device_enumerate(video); |
1734 | acpi_video_device_rebind(video); | 1734 | acpi_video_device_rebind(video); |
diff --git a/drivers/ata/libata-acpi.c b/drivers/ata/libata-acpi.c index 019d8ffdde50..c428a56e6f31 100644 --- a/drivers/ata/libata-acpi.c +++ b/drivers/ata/libata-acpi.c | |||
@@ -576,6 +576,13 @@ int ata_acpi_exec_tfs(struct ata_port *ap) | |||
576 | 576 | ||
577 | if (noacpi) | 577 | if (noacpi) |
578 | return 0; | 578 | return 0; |
579 | /* | ||
580 | * TBD - implement PATA support. For now, | ||
581 | * we should not run GTF on PATA devices since some | ||
582 | * PATA require execution of GTM/STM before GTF. | ||
583 | */ | ||
584 | if (!(ap->cbl == ATA_CBL_SATA)) | ||
585 | return 0; | ||
579 | 586 | ||
580 | for (ix = 0; ix < ATA_MAX_DEVICES; ix++) { | 587 | for (ix = 0; ix < ATA_MAX_DEVICES; ix++) { |
581 | if (!ata_dev_enabled(&ap->device[ix])) | 588 | if (!ata_dev_enabled(&ap->device[ix])) |
diff --git a/drivers/base/core.c b/drivers/base/core.c index 89ebe3682726..f191afe62b4d 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c | |||
@@ -584,17 +584,17 @@ int device_add(struct device *dev) | |||
584 | if (dev->kobj.parent != &dev->class->subsys.kset.kobj) | 584 | if (dev->kobj.parent != &dev->class->subsys.kset.kobj) |
585 | sysfs_create_link(&dev->class->subsys.kset.kobj, | 585 | sysfs_create_link(&dev->class->subsys.kset.kobj, |
586 | &dev->kobj, dev->bus_id); | 586 | &dev->kobj, dev->bus_id); |
587 | #ifdef CONFIG_SYSFS_DEPRECATED | ||
588 | if (parent) { | 587 | if (parent) { |
589 | sysfs_create_link(&dev->kobj, &dev->parent->kobj, | 588 | sysfs_create_link(&dev->kobj, &dev->parent->kobj, |
590 | "device"); | 589 | "device"); |
590 | #ifdef CONFIG_SYSFS_DEPRECATED | ||
591 | class_name = make_class_name(dev->class->name, | 591 | class_name = make_class_name(dev->class->name, |
592 | &dev->kobj); | 592 | &dev->kobj); |
593 | if (class_name) | 593 | if (class_name) |
594 | sysfs_create_link(&dev->parent->kobj, | 594 | sysfs_create_link(&dev->parent->kobj, |
595 | &dev->kobj, class_name); | 595 | &dev->kobj, class_name); |
596 | } | ||
597 | #endif | 596 | #endif |
597 | } | ||
598 | } | 598 | } |
599 | 599 | ||
600 | if ((error = device_add_attrs(dev))) | 600 | if ((error = device_add_attrs(dev))) |
@@ -651,17 +651,17 @@ int device_add(struct device *dev) | |||
651 | if (dev->kobj.parent != &dev->class->subsys.kset.kobj) | 651 | if (dev->kobj.parent != &dev->class->subsys.kset.kobj) |
652 | sysfs_remove_link(&dev->class->subsys.kset.kobj, | 652 | sysfs_remove_link(&dev->class->subsys.kset.kobj, |
653 | dev->bus_id); | 653 | dev->bus_id); |
654 | #ifdef CONFIG_SYSFS_DEPRECATED | ||
655 | if (parent) { | 654 | if (parent) { |
655 | #ifdef CONFIG_SYSFS_DEPRECATED | ||
656 | char *class_name = make_class_name(dev->class->name, | 656 | char *class_name = make_class_name(dev->class->name, |
657 | &dev->kobj); | 657 | &dev->kobj); |
658 | if (class_name) | 658 | if (class_name) |
659 | sysfs_remove_link(&dev->parent->kobj, | 659 | sysfs_remove_link(&dev->parent->kobj, |
660 | class_name); | 660 | class_name); |
661 | kfree(class_name); | 661 | kfree(class_name); |
662 | #endif | ||
662 | sysfs_remove_link(&dev->kobj, "device"); | 663 | sysfs_remove_link(&dev->kobj, "device"); |
663 | } | 664 | } |
664 | #endif | ||
665 | 665 | ||
666 | down(&dev->class->sem); | 666 | down(&dev->class->sem); |
667 | /* notify any interfaces that the device is now gone */ | 667 | /* notify any interfaces that the device is now gone */ |
@@ -761,17 +761,17 @@ void device_del(struct device * dev) | |||
761 | if (dev->kobj.parent != &dev->class->subsys.kset.kobj) | 761 | if (dev->kobj.parent != &dev->class->subsys.kset.kobj) |
762 | sysfs_remove_link(&dev->class->subsys.kset.kobj, | 762 | sysfs_remove_link(&dev->class->subsys.kset.kobj, |
763 | dev->bus_id); | 763 | dev->bus_id); |
764 | #ifdef CONFIG_SYSFS_DEPRECATED | ||
765 | if (parent) { | 764 | if (parent) { |
765 | #ifdef CONFIG_SYSFS_DEPRECATED | ||
766 | char *class_name = make_class_name(dev->class->name, | 766 | char *class_name = make_class_name(dev->class->name, |
767 | &dev->kobj); | 767 | &dev->kobj); |
768 | if (class_name) | 768 | if (class_name) |
769 | sysfs_remove_link(&dev->parent->kobj, | 769 | sysfs_remove_link(&dev->parent->kobj, |
770 | class_name); | 770 | class_name); |
771 | kfree(class_name); | 771 | kfree(class_name); |
772 | #endif | ||
772 | sysfs_remove_link(&dev->kobj, "device"); | 773 | sysfs_remove_link(&dev->kobj, "device"); |
773 | } | 774 | } |
774 | #endif | ||
775 | 775 | ||
776 | down(&dev->class->sem); | 776 | down(&dev->class->sem); |
777 | /* notify any interfaces that the device is now gone */ | 777 | /* notify any interfaces that the device is now gone */ |
@@ -1065,14 +1065,14 @@ int device_rename(struct device *dev, char *new_name) | |||
1065 | 1065 | ||
1066 | return error; | 1066 | return error; |
1067 | } | 1067 | } |
1068 | 1068 | EXPORT_SYMBOL_GPL(device_rename); | |
1069 | 1069 | ||
1070 | static int device_move_class_links(struct device *dev, | 1070 | static int device_move_class_links(struct device *dev, |
1071 | struct device *old_parent, | 1071 | struct device *old_parent, |
1072 | struct device *new_parent) | 1072 | struct device *new_parent) |
1073 | { | 1073 | { |
1074 | int error = 0; | ||
1074 | #ifdef CONFIG_SYSFS_DEPRECATED | 1075 | #ifdef CONFIG_SYSFS_DEPRECATED |
1075 | int error; | ||
1076 | char *class_name; | 1076 | char *class_name; |
1077 | 1077 | ||
1078 | class_name = make_class_name(dev->class->name, &dev->kobj); | 1078 | class_name = make_class_name(dev->class->name, &dev->kobj); |
@@ -1100,7 +1100,12 @@ out: | |||
1100 | kfree(class_name); | 1100 | kfree(class_name); |
1101 | return error; | 1101 | return error; |
1102 | #else | 1102 | #else |
1103 | return 0; | 1103 | if (old_parent) |
1104 | sysfs_remove_link(&dev->kobj, "device"); | ||
1105 | if (new_parent) | ||
1106 | error = sysfs_create_link(&dev->kobj, &new_parent->kobj, | ||
1107 | "device"); | ||
1108 | return error; | ||
1104 | #endif | 1109 | #endif |
1105 | } | 1110 | } |
1106 | 1111 | ||
diff --git a/drivers/misc/asus-laptop.c b/drivers/misc/asus-laptop.c index 295e931c0dfb..4b232124a1ab 100644 --- a/drivers/misc/asus-laptop.c +++ b/drivers/misc/asus-laptop.c | |||
@@ -211,7 +211,7 @@ static struct workqueue_struct *led_workqueue; | |||
211 | enum led_brightness value); \ | 211 | enum led_brightness value); \ |
212 | static void object##_led_update(struct work_struct *ignored); \ | 212 | static void object##_led_update(struct work_struct *ignored); \ |
213 | static int object##_led_wk; \ | 213 | static int object##_led_wk; \ |
214 | DECLARE_WORK(object##_led_work, object##_led_update); \ | 214 | static DECLARE_WORK(object##_led_work, object##_led_update); \ |
215 | static struct led_classdev object##_led = { \ | 215 | static struct led_classdev object##_led = { \ |
216 | .name = "asus:" ledname, \ | 216 | .name = "asus:" ledname, \ |
217 | .brightness_set = object##_led_set, \ | 217 | .brightness_set = object##_led_set, \ |
diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c index 2ebe240dd537..ac708bc2f9f3 100644 --- a/drivers/misc/sony-laptop.c +++ b/drivers/misc/sony-laptop.c | |||
@@ -453,7 +453,7 @@ static int sony_acpi_resume(struct acpi_device *device) | |||
453 | static int sony_acpi_add(struct acpi_device *device) | 453 | static int sony_acpi_add(struct acpi_device *device) |
454 | { | 454 | { |
455 | acpi_status status; | 455 | acpi_status status; |
456 | int result; | 456 | int result = 0; |
457 | acpi_handle handle; | 457 | acpi_handle handle; |
458 | 458 | ||
459 | sony_acpi_acpi_device = device; | 459 | sony_acpi_acpi_device = device; |
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index df495300ce3d..a32db0628157 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c | |||
@@ -757,7 +757,8 @@ int pci_enable_device(struct pci_dev *dev) | |||
757 | * when a device is enabled using managed PCI device enable interface. | 757 | * when a device is enabled using managed PCI device enable interface. |
758 | */ | 758 | */ |
759 | struct pci_devres { | 759 | struct pci_devres { |
760 | unsigned int disable:1; | 760 | unsigned int enabled:1; |
761 | unsigned int pinned:1; | ||
761 | unsigned int orig_intx:1; | 762 | unsigned int orig_intx:1; |
762 | unsigned int restore_intx:1; | 763 | unsigned int restore_intx:1; |
763 | u32 region_mask; | 764 | u32 region_mask; |
@@ -781,7 +782,7 @@ static void pcim_release(struct device *gendev, void *res) | |||
781 | if (this->restore_intx) | 782 | if (this->restore_intx) |
782 | pci_intx(dev, this->orig_intx); | 783 | pci_intx(dev, this->orig_intx); |
783 | 784 | ||
784 | if (this->disable) | 785 | if (this->enabled && !this->pinned) |
785 | pci_disable_device(dev); | 786 | pci_disable_device(dev); |
786 | } | 787 | } |
787 | 788 | ||
@@ -820,12 +821,12 @@ int pcim_enable_device(struct pci_dev *pdev) | |||
820 | dr = get_pci_dr(pdev); | 821 | dr = get_pci_dr(pdev); |
821 | if (unlikely(!dr)) | 822 | if (unlikely(!dr)) |
822 | return -ENOMEM; | 823 | return -ENOMEM; |
823 | WARN_ON(!!dr->disable); | 824 | WARN_ON(!!dr->enabled); |
824 | 825 | ||
825 | rc = pci_enable_device(pdev); | 826 | rc = pci_enable_device(pdev); |
826 | if (!rc) { | 827 | if (!rc) { |
827 | pdev->is_managed = 1; | 828 | pdev->is_managed = 1; |
828 | dr->disable = 1; | 829 | dr->enabled = 1; |
829 | } | 830 | } |
830 | return rc; | 831 | return rc; |
831 | } | 832 | } |
@@ -843,9 +844,9 @@ void pcim_pin_device(struct pci_dev *pdev) | |||
843 | struct pci_devres *dr; | 844 | struct pci_devres *dr; |
844 | 845 | ||
845 | dr = find_pci_dr(pdev); | 846 | dr = find_pci_dr(pdev); |
846 | WARN_ON(!dr || !dr->disable); | 847 | WARN_ON(!dr || !dr->enabled); |
847 | if (dr) | 848 | if (dr) |
848 | dr->disable = 0; | 849 | dr->pinned = 1; |
849 | } | 850 | } |
850 | 851 | ||
851 | /** | 852 | /** |
@@ -876,7 +877,7 @@ pci_disable_device(struct pci_dev *dev) | |||
876 | 877 | ||
877 | dr = find_pci_dr(dev); | 878 | dr = find_pci_dr(dev); |
878 | if (dr) | 879 | if (dr) |
879 | dr->disable = 0; | 880 | dr->enabled = 0; |
880 | 881 | ||
881 | if (atomic_sub_return(1, &dev->enable_cnt) != 0) | 882 | if (atomic_sub_return(1, &dev->enable_cnt) != 0) |
882 | return; | 883 | return; |
diff --git a/drivers/pci/pcie/aer/aerdrv.c b/drivers/pci/pcie/aer/aerdrv.c index b164de050d4f..db6ad8e763ac 100644 --- a/drivers/pci/pcie/aer/aerdrv.c +++ b/drivers/pci/pcie/aer/aerdrv.c | |||
@@ -66,7 +66,7 @@ static struct pci_error_handlers aer_error_handlers = { | |||
66 | .resume = aer_error_resume, | 66 | .resume = aer_error_resume, |
67 | }; | 67 | }; |
68 | 68 | ||
69 | static struct pcie_port_service_driver aerdrv = { | 69 | static struct pcie_port_service_driver aerdriver = { |
70 | .name = "aer", | 70 | .name = "aer", |
71 | .id_table = &aer_id[0], | 71 | .id_table = &aer_id[0], |
72 | 72 | ||
@@ -328,7 +328,7 @@ static void aer_error_resume(struct pci_dev *dev) | |||
328 | **/ | 328 | **/ |
329 | static int __init aer_service_init(void) | 329 | static int __init aer_service_init(void) |
330 | { | 330 | { |
331 | return pcie_port_service_register(&aerdrv); | 331 | return pcie_port_service_register(&aerdriver); |
332 | } | 332 | } |
333 | 333 | ||
334 | /** | 334 | /** |
@@ -338,7 +338,7 @@ static int __init aer_service_init(void) | |||
338 | **/ | 338 | **/ |
339 | static void __exit aer_service_exit(void) | 339 | static void __exit aer_service_exit(void) |
340 | { | 340 | { |
341 | pcie_port_service_unregister(&aerdrv); | 341 | pcie_port_service_unregister(&aerdriver); |
342 | } | 342 | } |
343 | 343 | ||
344 | module_init(aer_service_init); | 344 | module_init(aer_service_init); |
diff --git a/drivers/pci/pcie/portdrv_pci.c b/drivers/pci/pcie/portdrv_pci.c index f17e7ed2b2a5..0be5a0b30725 100644 --- a/drivers/pci/pcie/portdrv_pci.c +++ b/drivers/pci/pcie/portdrv_pci.c | |||
@@ -276,7 +276,7 @@ static struct pci_error_handlers pcie_portdrv_err_handler = { | |||
276 | .resume = pcie_portdrv_err_resume, | 276 | .resume = pcie_portdrv_err_resume, |
277 | }; | 277 | }; |
278 | 278 | ||
279 | static struct pci_driver pcie_portdrv = { | 279 | static struct pci_driver pcie_portdriver = { |
280 | .name = (char *)device_name, | 280 | .name = (char *)device_name, |
281 | .id_table = &port_pci_ids[0], | 281 | .id_table = &port_pci_ids[0], |
282 | 282 | ||
@@ -298,7 +298,7 @@ static int __init pcie_portdrv_init(void) | |||
298 | printk(KERN_WARNING "PCIE: bus_register error: %d\n", retval); | 298 | printk(KERN_WARNING "PCIE: bus_register error: %d\n", retval); |
299 | goto out; | 299 | goto out; |
300 | } | 300 | } |
301 | retval = pci_register_driver(&pcie_portdrv); | 301 | retval = pci_register_driver(&pcie_portdriver); |
302 | if (retval) | 302 | if (retval) |
303 | pcie_port_bus_unregister(); | 303 | pcie_port_bus_unregister(); |
304 | out: | 304 | out: |
@@ -307,7 +307,7 @@ static int __init pcie_portdrv_init(void) | |||
307 | 307 | ||
308 | static void __exit pcie_portdrv_exit(void) | 308 | static void __exit pcie_portdrv_exit(void) |
309 | { | 309 | { |
310 | pci_unregister_driver(&pcie_portdrv); | 310 | pci_unregister_driver(&pcie_portdriver); |
311 | pcie_port_bus_unregister(); | 311 | pcie_port_bus_unregister(); |
312 | } | 312 | } |
313 | 313 | ||
diff --git a/drivers/pci/search.c b/drivers/pci/search.c index ff98eaddaa73..2dd8681d6b31 100644 --- a/drivers/pci/search.c +++ b/drivers/pci/search.c | |||
@@ -15,7 +15,7 @@ | |||
15 | 15 | ||
16 | DECLARE_RWSEM(pci_bus_sem); | 16 | DECLARE_RWSEM(pci_bus_sem); |
17 | 17 | ||
18 | static struct pci_bus * __devinit | 18 | static struct pci_bus * |
19 | pci_do_find_bus(struct pci_bus* bus, unsigned char busnr) | 19 | pci_do_find_bus(struct pci_bus* bus, unsigned char busnr) |
20 | { | 20 | { |
21 | struct pci_bus* child; | 21 | struct pci_bus* child; |
diff --git a/drivers/pnp/pnpacpi/rsparser.c b/drivers/pnp/pnpacpi/rsparser.c index 7a535542fe92..118ac9779b3c 100644 --- a/drivers/pnp/pnpacpi/rsparser.c +++ b/drivers/pnp/pnpacpi/rsparser.c | |||
@@ -89,6 +89,7 @@ pnpacpi_parse_allocated_irqresource(struct pnp_resource_table *res, u32 gsi, | |||
89 | return; | 89 | return; |
90 | 90 | ||
91 | res->irq_resource[i].flags = IORESOURCE_IRQ; // Also clears _UNSET flag | 91 | res->irq_resource[i].flags = IORESOURCE_IRQ; // Also clears _UNSET flag |
92 | res->irq_resource[i].flags |= irq_flags(triggering, polarity); | ||
92 | irq = acpi_register_gsi(gsi, triggering, polarity); | 93 | irq = acpi_register_gsi(gsi, triggering, polarity); |
93 | if (irq < 0) { | 94 | if (irq < 0) { |
94 | res->irq_resource[i].flags |= IORESOURCE_DISABLED; | 95 | res->irq_resource[i].flags |= IORESOURCE_DISABLED; |
@@ -103,8 +104,52 @@ pnpacpi_parse_allocated_irqresource(struct pnp_resource_table *res, u32 gsi, | |||
103 | pcibios_penalize_isa_irq(irq, 1); | 104 | pcibios_penalize_isa_irq(irq, 1); |
104 | } | 105 | } |
105 | 106 | ||
107 | static int dma_flags(int type, int bus_master, int transfer) | ||
108 | { | ||
109 | int flags = 0; | ||
110 | |||
111 | if (bus_master) | ||
112 | flags |= IORESOURCE_DMA_MASTER; | ||
113 | switch (type) { | ||
114 | case ACPI_COMPATIBILITY: | ||
115 | flags |= IORESOURCE_DMA_COMPATIBLE; | ||
116 | break; | ||
117 | case ACPI_TYPE_A: | ||
118 | flags |= IORESOURCE_DMA_TYPEA; | ||
119 | break; | ||
120 | case ACPI_TYPE_B: | ||
121 | flags |= IORESOURCE_DMA_TYPEB; | ||
122 | break; | ||
123 | case ACPI_TYPE_F: | ||
124 | flags |= IORESOURCE_DMA_TYPEF; | ||
125 | break; | ||
126 | default: | ||
127 | /* Set a default value ? */ | ||
128 | flags |= IORESOURCE_DMA_COMPATIBLE; | ||
129 | pnp_err("Invalid DMA type"); | ||
130 | } | ||
131 | switch (transfer) { | ||
132 | case ACPI_TRANSFER_8: | ||
133 | flags |= IORESOURCE_DMA_8BIT; | ||
134 | break; | ||
135 | case ACPI_TRANSFER_8_16: | ||
136 | flags |= IORESOURCE_DMA_8AND16BIT; | ||
137 | break; | ||
138 | case ACPI_TRANSFER_16: | ||
139 | flags |= IORESOURCE_DMA_16BIT; | ||
140 | break; | ||
141 | default: | ||
142 | /* Set a default value ? */ | ||
143 | flags |= IORESOURCE_DMA_8AND16BIT; | ||
144 | pnp_err("Invalid DMA transfer type"); | ||
145 | } | ||
146 | |||
147 | return flags; | ||
148 | } | ||
149 | |||
106 | static void | 150 | static void |
107 | pnpacpi_parse_allocated_dmaresource(struct pnp_resource_table *res, u32 dma) | 151 | pnpacpi_parse_allocated_dmaresource(struct pnp_resource_table *res, u32 dma, |
152 | int type, int bus_master, int transfer) | ||
108 | { | 153 | { |
109 | int i = 0; | 154 | int i = 0; |
110 | while (i < PNP_MAX_DMA && | 155 | while (i < PNP_MAX_DMA && |
@@ -112,6 +157,7 @@ pnpacpi_parse_allocated_dmaresource(struct pnp_resource_table *res, u32 dma) | |||
112 | i++; | 157 | i++; |
113 | if (i < PNP_MAX_DMA) { | 158 | if (i < PNP_MAX_DMA) { |
114 | res->dma_resource[i].flags = IORESOURCE_DMA; // Also clears _UNSET flag | 159 | res->dma_resource[i].flags = IORESOURCE_DMA; // Also clears _UNSET flag |
160 | res->dma_resource[i].flags |= dma_flags(type, bus_master, transfer); | ||
115 | if (dma == -1) { | 161 | if (dma == -1) { |
116 | res->dma_resource[i].flags |= IORESOURCE_DISABLED; | 162 | res->dma_resource[i].flags |= IORESOURCE_DISABLED; |
117 | return; | 163 | return; |
@@ -123,7 +169,7 @@ pnpacpi_parse_allocated_dmaresource(struct pnp_resource_table *res, u32 dma) | |||
123 | 169 | ||
124 | static void | 170 | static void |
125 | pnpacpi_parse_allocated_ioresource(struct pnp_resource_table *res, | 171 | pnpacpi_parse_allocated_ioresource(struct pnp_resource_table *res, |
126 | u64 io, u64 len) | 172 | u64 io, u64 len, int io_decode) |
127 | { | 173 | { |
128 | int i = 0; | 174 | int i = 0; |
129 | while (!(res->port_resource[i].flags & IORESOURCE_UNSET) && | 175 | while (!(res->port_resource[i].flags & IORESOURCE_UNSET) && |
@@ -131,6 +177,8 @@ pnpacpi_parse_allocated_ioresource(struct pnp_resource_table *res, | |||
131 | i++; | 177 | i++; |
132 | if (i < PNP_MAX_PORT) { | 178 | if (i < PNP_MAX_PORT) { |
133 | res->port_resource[i].flags = IORESOURCE_IO; // Also clears _UNSET flag | 179 | res->port_resource[i].flags = IORESOURCE_IO; // Also clears _UNSET flag |
180 | if (io_decode == ACPI_DECODE_16) | ||
181 | res->port_resource[i].flags |= PNP_PORT_FLAG_16BITADDR; | ||
134 | if (len <= 0 || (io + len -1) >= 0x10003) { | 182 | if (len <= 0 || (io + len -1) >= 0x10003) { |
135 | res->port_resource[i].flags |= IORESOURCE_DISABLED; | 183 | res->port_resource[i].flags |= IORESOURCE_DISABLED; |
136 | return; | 184 | return; |
@@ -142,7 +190,7 @@ pnpacpi_parse_allocated_ioresource(struct pnp_resource_table *res, | |||
142 | 190 | ||
143 | static void | 191 | static void |
144 | pnpacpi_parse_allocated_memresource(struct pnp_resource_table *res, | 192 | pnpacpi_parse_allocated_memresource(struct pnp_resource_table *res, |
145 | u64 mem, u64 len) | 193 | u64 mem, u64 len, int write_protect) |
146 | { | 194 | { |
147 | int i = 0; | 195 | int i = 0; |
148 | while (!(res->mem_resource[i].flags & IORESOURCE_UNSET) && | 196 | while (!(res->mem_resource[i].flags & IORESOURCE_UNSET) && |
@@ -154,6 +202,9 @@ pnpacpi_parse_allocated_memresource(struct pnp_resource_table *res, | |||
154 | res->mem_resource[i].flags |= IORESOURCE_DISABLED; | 202 | res->mem_resource[i].flags |= IORESOURCE_DISABLED; |
155 | return; | 203 | return; |
156 | } | 204 | } |
205 | if(write_protect == ACPI_READ_WRITE_MEMORY) | ||
206 | res->mem_resource[i].flags |= IORESOURCE_MEM_WRITEABLE; | ||
207 | |||
157 | res->mem_resource[i].start = mem; | 208 | res->mem_resource[i].start = mem; |
158 | res->mem_resource[i].end = mem + len - 1; | 209 | res->mem_resource[i].end = mem + len - 1; |
159 | } | 210 | } |
@@ -178,10 +229,11 @@ pnpacpi_parse_allocated_address_space(struct pnp_resource_table *res_table, | |||
178 | 229 | ||
179 | if (p->resource_type == ACPI_MEMORY_RANGE) | 230 | if (p->resource_type == ACPI_MEMORY_RANGE) |
180 | pnpacpi_parse_allocated_memresource(res_table, | 231 | pnpacpi_parse_allocated_memresource(res_table, |
181 | p->minimum, p->address_length); | 232 | p->minimum, p->address_length, p->info.mem.write_protect); |
182 | else if (p->resource_type == ACPI_IO_RANGE) | 233 | else if (p->resource_type == ACPI_IO_RANGE) |
183 | pnpacpi_parse_allocated_ioresource(res_table, | 234 | pnpacpi_parse_allocated_ioresource(res_table, |
184 | p->minimum, p->address_length); | 235 | p->minimum, p->address_length, |
236 | p->granularity == 0xfff ? ACPI_DECODE_10 : ACPI_DECODE_16); | ||
185 | } | 237 | } |
186 | 238 | ||
187 | static acpi_status pnpacpi_allocated_resource(struct acpi_resource *res, | 239 | static acpi_status pnpacpi_allocated_resource(struct acpi_resource *res, |
@@ -208,13 +260,17 @@ static acpi_status pnpacpi_allocated_resource(struct acpi_resource *res, | |||
208 | case ACPI_RESOURCE_TYPE_DMA: | 260 | case ACPI_RESOURCE_TYPE_DMA: |
209 | if (res->data.dma.channel_count > 0) | 261 | if (res->data.dma.channel_count > 0) |
210 | pnpacpi_parse_allocated_dmaresource(res_table, | 262 | pnpacpi_parse_allocated_dmaresource(res_table, |
211 | res->data.dma.channels[0]); | 263 | res->data.dma.channels[0], |
264 | res->data.dma.type, | ||
265 | res->data.dma.bus_master, | ||
266 | res->data.dma.transfer); | ||
212 | break; | 267 | break; |
213 | 268 | ||
214 | case ACPI_RESOURCE_TYPE_IO: | 269 | case ACPI_RESOURCE_TYPE_IO: |
215 | pnpacpi_parse_allocated_ioresource(res_table, | 270 | pnpacpi_parse_allocated_ioresource(res_table, |
216 | res->data.io.minimum, | 271 | res->data.io.minimum, |
217 | res->data.io.address_length); | 272 | res->data.io.address_length, |
273 | res->data.io.io_decode); | ||
218 | break; | 274 | break; |
219 | 275 | ||
220 | case ACPI_RESOURCE_TYPE_START_DEPENDENT: | 276 | case ACPI_RESOURCE_TYPE_START_DEPENDENT: |
@@ -224,7 +280,8 @@ static acpi_status pnpacpi_allocated_resource(struct acpi_resource *res, | |||
224 | case ACPI_RESOURCE_TYPE_FIXED_IO: | 280 | case ACPI_RESOURCE_TYPE_FIXED_IO: |
225 | pnpacpi_parse_allocated_ioresource(res_table, | 281 | pnpacpi_parse_allocated_ioresource(res_table, |
226 | res->data.fixed_io.address, | 282 | res->data.fixed_io.address, |
227 | res->data.fixed_io.address_length); | 283 | res->data.fixed_io.address_length, |
284 | ACPI_DECODE_10); | ||
228 | break; | 285 | break; |
229 | 286 | ||
230 | case ACPI_RESOURCE_TYPE_VENDOR: | 287 | case ACPI_RESOURCE_TYPE_VENDOR: |
@@ -236,17 +293,20 @@ static acpi_status pnpacpi_allocated_resource(struct acpi_resource *res, | |||
236 | case ACPI_RESOURCE_TYPE_MEMORY24: | 293 | case ACPI_RESOURCE_TYPE_MEMORY24: |
237 | pnpacpi_parse_allocated_memresource(res_table, | 294 | pnpacpi_parse_allocated_memresource(res_table, |
238 | res->data.memory24.minimum, | 295 | res->data.memory24.minimum, |
239 | res->data.memory24.address_length); | 296 | res->data.memory24.address_length, |
297 | res->data.memory24.write_protect); | ||
240 | break; | 298 | break; |
241 | case ACPI_RESOURCE_TYPE_MEMORY32: | 299 | case ACPI_RESOURCE_TYPE_MEMORY32: |
242 | pnpacpi_parse_allocated_memresource(res_table, | 300 | pnpacpi_parse_allocated_memresource(res_table, |
243 | res->data.memory32.minimum, | 301 | res->data.memory32.minimum, |
244 | res->data.memory32.address_length); | 302 | res->data.memory32.address_length, |
303 | res->data.memory32.write_protect); | ||
245 | break; | 304 | break; |
246 | case ACPI_RESOURCE_TYPE_FIXED_MEMORY32: | 305 | case ACPI_RESOURCE_TYPE_FIXED_MEMORY32: |
247 | pnpacpi_parse_allocated_memresource(res_table, | 306 | pnpacpi_parse_allocated_memresource(res_table, |
248 | res->data.fixed_memory32.address, | 307 | res->data.fixed_memory32.address, |
249 | res->data.fixed_memory32.address_length); | 308 | res->data.fixed_memory32.address_length, |
309 | res->data.fixed_memory32.write_protect); | ||
250 | break; | 310 | break; |
251 | case ACPI_RESOURCE_TYPE_ADDRESS16: | 311 | case ACPI_RESOURCE_TYPE_ADDRESS16: |
252 | case ACPI_RESOURCE_TYPE_ADDRESS32: | 312 | case ACPI_RESOURCE_TYPE_ADDRESS32: |
@@ -304,42 +364,8 @@ static void pnpacpi_parse_dma_option(struct pnp_option *option, struct acpi_reso | |||
304 | 364 | ||
305 | for(i = 0; i < p->channel_count; i++) | 365 | for(i = 0; i < p->channel_count; i++) |
306 | dma->map |= 1 << p->channels[i]; | 366 | dma->map |= 1 << p->channels[i]; |
307 | dma->flags = 0; | 367 | |
308 | if (p->bus_master) | 368 | dma->flags = dma_flags(p->type, p->bus_master, p->transfer); |
309 | dma->flags |= IORESOURCE_DMA_MASTER; | ||
310 | switch (p->type) { | ||
311 | case ACPI_COMPATIBILITY: | ||
312 | dma->flags |= IORESOURCE_DMA_COMPATIBLE; | ||
313 | break; | ||
314 | case ACPI_TYPE_A: | ||
315 | dma->flags |= IORESOURCE_DMA_TYPEA; | ||
316 | break; | ||
317 | case ACPI_TYPE_B: | ||
318 | dma->flags |= IORESOURCE_DMA_TYPEB; | ||
319 | break; | ||
320 | case ACPI_TYPE_F: | ||
321 | dma->flags |= IORESOURCE_DMA_TYPEF; | ||
322 | break; | ||
323 | default: | ||
324 | /* Set a default value ? */ | ||
325 | dma->flags |= IORESOURCE_DMA_COMPATIBLE; | ||
326 | pnp_err("Invalid DMA type"); | ||
327 | } | ||
328 | switch (p->transfer) { | ||
329 | case ACPI_TRANSFER_8: | ||
330 | dma->flags |= IORESOURCE_DMA_8BIT; | ||
331 | break; | ||
332 | case ACPI_TRANSFER_8_16: | ||
333 | dma->flags |= IORESOURCE_DMA_8AND16BIT; | ||
334 | break; | ||
335 | case ACPI_TRANSFER_16: | ||
336 | dma->flags |= IORESOURCE_DMA_16BIT; | ||
337 | break; | ||
338 | default: | ||
339 | /* Set a default value ? */ | ||
340 | dma->flags |= IORESOURCE_DMA_8AND16BIT; | ||
341 | pnp_err("Invalid DMA transfer type"); | ||
342 | } | ||
343 | 369 | ||
344 | pnp_register_dma_resource(option, dma); | 370 | pnp_register_dma_resource(option, dma); |
345 | return; | 371 | return; |
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c index d38a25f36ea5..31ae661e586a 100644 --- a/drivers/usb/class/cdc-acm.c +++ b/drivers/usb/class/cdc-acm.c | |||
@@ -332,9 +332,9 @@ static void acm_rx_tasklet(unsigned long _acm) | |||
332 | if (!ACM_READY(acm)) | 332 | if (!ACM_READY(acm)) |
333 | return; | 333 | return; |
334 | 334 | ||
335 | spin_lock(&acm->throttle_lock); | 335 | spin_lock_irqsave(&acm->throttle_lock, flags); |
336 | throttled = acm->throttle; | 336 | throttled = acm->throttle; |
337 | spin_unlock(&acm->throttle_lock); | 337 | spin_unlock_irqrestore(&acm->throttle_lock, flags); |
338 | if (throttled) | 338 | if (throttled) |
339 | return; | 339 | return; |
340 | 340 | ||
@@ -352,9 +352,9 @@ next_buffer: | |||
352 | dbg("acm_rx_tasklet: procesing buf 0x%p, size = %d", buf, buf->size); | 352 | dbg("acm_rx_tasklet: procesing buf 0x%p, size = %d", buf, buf->size); |
353 | 353 | ||
354 | tty_buffer_request_room(tty, buf->size); | 354 | tty_buffer_request_room(tty, buf->size); |
355 | spin_lock(&acm->throttle_lock); | 355 | spin_lock_irqsave(&acm->throttle_lock, flags); |
356 | throttled = acm->throttle; | 356 | throttled = acm->throttle; |
357 | spin_unlock(&acm->throttle_lock); | 357 | spin_unlock_irqrestore(&acm->throttle_lock, flags); |
358 | if (!throttled) | 358 | if (!throttled) |
359 | tty_insert_flip_string(tty, buf->base, buf->size); | 359 | tty_insert_flip_string(tty, buf->base, buf->size); |
360 | tty_flip_buffer_push(tty); | 360 | tty_flip_buffer_push(tty); |
diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c index 274f14f1633e..36e7a843bf91 100644 --- a/drivers/usb/core/devio.c +++ b/drivers/usb/core/devio.c | |||
@@ -912,7 +912,7 @@ static int proc_do_submiturb(struct dev_state *ps, struct usbdevfs_urb *uurb, | |||
912 | struct async *as; | 912 | struct async *as; |
913 | struct usb_ctrlrequest *dr = NULL; | 913 | struct usb_ctrlrequest *dr = NULL; |
914 | unsigned int u, totlen, isofrmlen; | 914 | unsigned int u, totlen, isofrmlen; |
915 | int ret, interval = 0, ifnum = -1; | 915 | int ret, ifnum = -1; |
916 | 916 | ||
917 | if (uurb->flags & ~(USBDEVFS_URB_ISO_ASAP|USBDEVFS_URB_SHORT_NOT_OK| | 917 | if (uurb->flags & ~(USBDEVFS_URB_ISO_ASAP|USBDEVFS_URB_SHORT_NOT_OK| |
918 | URB_NO_FSBR|URB_ZERO_PACKET)) | 918 | URB_NO_FSBR|URB_ZERO_PACKET)) |
@@ -992,7 +992,6 @@ static int proc_do_submiturb(struct dev_state *ps, struct usbdevfs_urb *uurb, | |||
992 | if ((ep->desc.bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) | 992 | if ((ep->desc.bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) |
993 | != USB_ENDPOINT_XFER_ISOC) | 993 | != USB_ENDPOINT_XFER_ISOC) |
994 | return -EINVAL; | 994 | return -EINVAL; |
995 | interval = 1 << min (15, ep->desc.bInterval - 1); | ||
996 | isofrmlen = sizeof(struct usbdevfs_iso_packet_desc) * uurb->number_of_packets; | 995 | isofrmlen = sizeof(struct usbdevfs_iso_packet_desc) * uurb->number_of_packets; |
997 | if (!(isopkt = kmalloc(isofrmlen, GFP_KERNEL))) | 996 | if (!(isopkt = kmalloc(isofrmlen, GFP_KERNEL))) |
998 | return -ENOMEM; | 997 | return -ENOMEM; |
@@ -1021,10 +1020,6 @@ static int proc_do_submiturb(struct dev_state *ps, struct usbdevfs_urb *uurb, | |||
1021 | if ((ep->desc.bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) | 1020 | if ((ep->desc.bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) |
1022 | != USB_ENDPOINT_XFER_INT) | 1021 | != USB_ENDPOINT_XFER_INT) |
1023 | return -EINVAL; | 1022 | return -EINVAL; |
1024 | if (ps->dev->speed == USB_SPEED_HIGH) | ||
1025 | interval = 1 << min (15, ep->desc.bInterval - 1); | ||
1026 | else | ||
1027 | interval = ep->desc.bInterval; | ||
1028 | if (uurb->buffer_length > MAX_USBFS_BUFFER_SIZE) | 1023 | if (uurb->buffer_length > MAX_USBFS_BUFFER_SIZE) |
1029 | return -EINVAL; | 1024 | return -EINVAL; |
1030 | if (!access_ok((uurb->endpoint & USB_DIR_IN) ? VERIFY_WRITE : VERIFY_READ, uurb->buffer, uurb->buffer_length)) | 1025 | if (!access_ok((uurb->endpoint & USB_DIR_IN) ? VERIFY_WRITE : VERIFY_READ, uurb->buffer, uurb->buffer_length)) |
@@ -1053,7 +1048,11 @@ static int proc_do_submiturb(struct dev_state *ps, struct usbdevfs_urb *uurb, | |||
1053 | as->urb->setup_packet = (unsigned char*)dr; | 1048 | as->urb->setup_packet = (unsigned char*)dr; |
1054 | as->urb->start_frame = uurb->start_frame; | 1049 | as->urb->start_frame = uurb->start_frame; |
1055 | as->urb->number_of_packets = uurb->number_of_packets; | 1050 | as->urb->number_of_packets = uurb->number_of_packets; |
1056 | as->urb->interval = interval; | 1051 | if (uurb->type == USBDEVFS_URB_TYPE_ISO || |
1052 | ps->dev->speed == USB_SPEED_HIGH) | ||
1053 | as->urb->interval = 1 << min(15, ep->desc.bInterval - 1); | ||
1054 | else | ||
1055 | as->urb->interval = ep->desc.bInterval; | ||
1057 | as->urb->context = as; | 1056 | as->urb->context = as; |
1058 | as->urb->complete = async_completed; | 1057 | as->urb->complete = async_completed; |
1059 | for (totlen = u = 0; u < uurb->number_of_packets; u++) { | 1058 | for (totlen = u = 0; u < uurb->number_of_packets; u++) { |
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 41400743ce2c..b89a98e61323 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c | |||
@@ -1281,12 +1281,6 @@ int usb_new_device(struct usb_device *udev) | |||
1281 | { | 1281 | { |
1282 | int err; | 1282 | int err; |
1283 | 1283 | ||
1284 | /* Lock ourself into memory in order to keep a probe sequence | ||
1285 | * sleeping in a new thread from allowing us to be unloaded. | ||
1286 | */ | ||
1287 | if (!try_module_get(THIS_MODULE)) | ||
1288 | return -EINVAL; | ||
1289 | |||
1290 | /* Determine quirks */ | 1284 | /* Determine quirks */ |
1291 | usb_detect_quirks(udev); | 1285 | usb_detect_quirks(udev); |
1292 | 1286 | ||
@@ -1390,7 +1384,6 @@ int usb_new_device(struct usb_device *udev) | |||
1390 | usb_autoresume_device(udev->parent); | 1384 | usb_autoresume_device(udev->parent); |
1391 | 1385 | ||
1392 | exit: | 1386 | exit: |
1393 | module_put(THIS_MODULE); | ||
1394 | return err; | 1387 | return err; |
1395 | 1388 | ||
1396 | fail: | 1389 | fail: |
@@ -2443,7 +2436,7 @@ static void hub_port_connect_change(struct usb_hub *hub, int port1, | |||
2443 | 2436 | ||
2444 | if (portchange & USB_PORT_STAT_C_CONNECTION) { | 2437 | if (portchange & USB_PORT_STAT_C_CONNECTION) { |
2445 | status = hub_port_debounce(hub, port1); | 2438 | status = hub_port_debounce(hub, port1); |
2446 | if (status < 0) { | 2439 | if (status < 0 && printk_ratelimit()) { |
2447 | dev_err (hub_dev, | 2440 | dev_err (hub_dev, |
2448 | "connect-debounce failed, port %d disabled\n", | 2441 | "connect-debounce failed, port %d disabled\n", |
2449 | port1); | 2442 | port1); |
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c index 2f17468b5c1e..217a3d6d0a06 100644 --- a/drivers/usb/core/message.c +++ b/drivers/usb/core/message.c | |||
@@ -221,10 +221,15 @@ int usb_bulk_msg(struct usb_device *usb_dev, unsigned int pipe, | |||
221 | 221 | ||
222 | if ((ep->desc.bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) == | 222 | if ((ep->desc.bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) == |
223 | USB_ENDPOINT_XFER_INT) { | 223 | USB_ENDPOINT_XFER_INT) { |
224 | int interval; | ||
225 | |||
226 | if (usb_dev->speed == USB_SPEED_HIGH) | ||
227 | interval = 1 << min(15, ep->desc.bInterval - 1); | ||
228 | else | ||
229 | interval = ep->desc.bInterval; | ||
224 | pipe = (pipe & ~(3 << 30)) | (PIPE_INTERRUPT << 30); | 230 | pipe = (pipe & ~(3 << 30)) | (PIPE_INTERRUPT << 30); |
225 | usb_fill_int_urb(urb, usb_dev, pipe, data, len, | 231 | usb_fill_int_urb(urb, usb_dev, pipe, data, len, |
226 | usb_api_blocking_completion, NULL, | 232 | usb_api_blocking_completion, NULL, interval); |
227 | ep->desc.bInterval); | ||
228 | } else | 233 | } else |
229 | usb_fill_bulk_urb(urb, usb_dev, pipe, data, len, | 234 | usb_fill_bulk_urb(urb, usb_dev, pipe, data, len, |
230 | usb_api_blocking_completion, NULL); | 235 | usb_api_blocking_completion, NULL); |
diff --git a/drivers/usb/gadget/at91_udc.c b/drivers/usb/gadget/at91_udc.c index a4677802fb20..2a6e3163d944 100644 --- a/drivers/usb/gadget/at91_udc.c +++ b/drivers/usb/gadget/at91_udc.c | |||
@@ -1835,7 +1835,7 @@ static int at91udc_resume(struct platform_device *pdev) | |||
1835 | #define at91udc_resume NULL | 1835 | #define at91udc_resume NULL |
1836 | #endif | 1836 | #endif |
1837 | 1837 | ||
1838 | static struct platform_driver at91_udc = { | 1838 | static struct platform_driver at91_udc_driver = { |
1839 | .remove = __exit_p(at91udc_remove), | 1839 | .remove = __exit_p(at91udc_remove), |
1840 | .shutdown = at91udc_shutdown, | 1840 | .shutdown = at91udc_shutdown, |
1841 | .suspend = at91udc_suspend, | 1841 | .suspend = at91udc_suspend, |
@@ -1848,13 +1848,13 @@ static struct platform_driver at91_udc = { | |||
1848 | 1848 | ||
1849 | static int __init udc_init_module(void) | 1849 | static int __init udc_init_module(void) |
1850 | { | 1850 | { |
1851 | return platform_driver_probe(&at91_udc, at91udc_probe); | 1851 | return platform_driver_probe(&at91_udc_driver, at91udc_probe); |
1852 | } | 1852 | } |
1853 | module_init(udc_init_module); | 1853 | module_init(udc_init_module); |
1854 | 1854 | ||
1855 | static void __exit udc_exit_module(void) | 1855 | static void __exit udc_exit_module(void) |
1856 | { | 1856 | { |
1857 | platform_driver_unregister(&at91_udc); | 1857 | platform_driver_unregister(&at91_udc_driver); |
1858 | } | 1858 | } |
1859 | module_exit(udc_exit_module); | 1859 | module_exit(udc_exit_module); |
1860 | 1860 | ||
diff --git a/drivers/usb/gadget/goku_udc.c b/drivers/usb/gadget/goku_udc.c index 7b3a326b57ab..65c91d3735de 100644 --- a/drivers/usb/gadget/goku_udc.c +++ b/drivers/usb/gadget/goku_udc.c | |||
@@ -297,27 +297,6 @@ goku_free_request(struct usb_ep *_ep, struct usb_request *_req) | |||
297 | 297 | ||
298 | /*-------------------------------------------------------------------------*/ | 298 | /*-------------------------------------------------------------------------*/ |
299 | 299 | ||
300 | #undef USE_KMALLOC | ||
301 | |||
302 | /* many common platforms have dma-coherent caches, which means that it's | ||
303 | * safe to use kmalloc() memory for all i/o buffers without using any | ||
304 | * cache flushing calls. (unless you're trying to share cache lines | ||
305 | * between dma and non-dma activities, which is a slow idea in any case.) | ||
306 | * | ||
307 | * other platforms need more care, with 2.6 having a moderately general | ||
308 | * solution except for the common "buffer is smaller than a page" case. | ||
309 | */ | ||
310 | #if defined(CONFIG_X86) | ||
311 | #define USE_KMALLOC | ||
312 | |||
313 | #elif defined(CONFIG_MIPS) && !defined(CONFIG_DMA_NONCOHERENT) | ||
314 | #define USE_KMALLOC | ||
315 | |||
316 | #elif defined(CONFIG_PPC) && !defined(CONFIG_NOT_COHERENT_CACHE) | ||
317 | #define USE_KMALLOC | ||
318 | |||
319 | #endif | ||
320 | |||
321 | /* allocating buffers this way eliminates dma mapping overhead, which | 300 | /* allocating buffers this way eliminates dma mapping overhead, which |
322 | * on some platforms will mean eliminating a per-io buffer copy. with | 301 | * on some platforms will mean eliminating a per-io buffer copy. with |
323 | * some kinds of system caches, further tweaks may still be needed. | 302 | * some kinds of system caches, further tweaks may still be needed. |
@@ -334,11 +313,6 @@ goku_alloc_buffer(struct usb_ep *_ep, unsigned bytes, | |||
334 | return NULL; | 313 | return NULL; |
335 | *dma = DMA_ADDR_INVALID; | 314 | *dma = DMA_ADDR_INVALID; |
336 | 315 | ||
337 | #if defined(USE_KMALLOC) | ||
338 | retval = kmalloc(bytes, gfp_flags); | ||
339 | if (retval) | ||
340 | *dma = virt_to_phys(retval); | ||
341 | #else | ||
342 | if (ep->dma) { | 316 | if (ep->dma) { |
343 | /* the main problem with this call is that it wastes memory | 317 | /* the main problem with this call is that it wastes memory |
344 | * on typical 1/N page allocations: it allocates 1-N pages. | 318 | * on typical 1/N page allocations: it allocates 1-N pages. |
@@ -348,7 +322,6 @@ goku_alloc_buffer(struct usb_ep *_ep, unsigned bytes, | |||
348 | bytes, dma, gfp_flags); | 322 | bytes, dma, gfp_flags); |
349 | } else | 323 | } else |
350 | retval = kmalloc(bytes, gfp_flags); | 324 | retval = kmalloc(bytes, gfp_flags); |
351 | #endif | ||
352 | return retval; | 325 | return retval; |
353 | } | 326 | } |
354 | 327 | ||
@@ -356,7 +329,6 @@ static void | |||
356 | goku_free_buffer(struct usb_ep *_ep, void *buf, dma_addr_t dma, unsigned bytes) | 329 | goku_free_buffer(struct usb_ep *_ep, void *buf, dma_addr_t dma, unsigned bytes) |
357 | { | 330 | { |
358 | /* free memory into the right allocator */ | 331 | /* free memory into the right allocator */ |
359 | #ifndef USE_KMALLOC | ||
360 | if (dma != DMA_ADDR_INVALID) { | 332 | if (dma != DMA_ADDR_INVALID) { |
361 | struct goku_ep *ep; | 333 | struct goku_ep *ep; |
362 | 334 | ||
@@ -365,7 +337,6 @@ goku_free_buffer(struct usb_ep *_ep, void *buf, dma_addr_t dma, unsigned bytes) | |||
365 | return; | 337 | return; |
366 | dma_free_coherent(&ep->dev->pdev->dev, bytes, buf, dma); | 338 | dma_free_coherent(&ep->dev->pdev->dev, bytes, buf, dma); |
367 | } else | 339 | } else |
368 | #endif | ||
369 | kfree (buf); | 340 | kfree (buf); |
370 | } | 341 | } |
371 | 342 | ||
diff --git a/drivers/usb/gadget/pxa2xx_udc.c b/drivers/usb/gadget/pxa2xx_udc.c index f01890dc8751..571f3ebb70ab 100644 --- a/drivers/usb/gadget/pxa2xx_udc.c +++ b/drivers/usb/gadget/pxa2xx_udc.c | |||
@@ -2616,7 +2616,7 @@ lubbock_fail0: | |||
2616 | if (retval != 0) { | 2616 | if (retval != 0) { |
2617 | printk(KERN_ERR "%s: can't get irq %i, err %d\n", | 2617 | printk(KERN_ERR "%s: can't get irq %i, err %d\n", |
2618 | driver_name, vbus_irq, retval); | 2618 | driver_name, vbus_irq, retval); |
2619 | free_irq(IRQ_USB, dev); | 2619 | free_irq(irq, dev); |
2620 | return -EBUSY; | 2620 | return -EBUSY; |
2621 | } | 2621 | } |
2622 | } | 2622 | } |
diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c index 9af529d22b3e..1813b7cac294 100644 --- a/drivers/usb/host/ehci-hub.c +++ b/drivers/usb/host/ehci-hub.c | |||
@@ -653,8 +653,7 @@ static int ehci_hub_control ( | |||
653 | if (status & ~0xffff) /* only if wPortChange is interesting */ | 653 | if (status & ~0xffff) /* only if wPortChange is interesting */ |
654 | #endif | 654 | #endif |
655 | dbg_port (ehci, "GetStatus", wIndex + 1, temp); | 655 | dbg_port (ehci, "GetStatus", wIndex + 1, temp); |
656 | // we "know" this alignment is good, caller used kmalloc()... | 656 | put_unaligned(cpu_to_le32 (status), (__le32 *) buf); |
657 | *((__le32 *) buf) = cpu_to_le32 (status); | ||
658 | break; | 657 | break; |
659 | case SetHubFeature: | 658 | case SetHubFeature: |
660 | switch (wValue) { | 659 | switch (wValue) { |
diff --git a/drivers/usb/host/uhci-hub.c b/drivers/usb/host/uhci-hub.c index bacc25c53ba3..8e4427aebb14 100644 --- a/drivers/usb/host/uhci-hub.c +++ b/drivers/usb/host/uhci-hub.c | |||
@@ -33,6 +33,9 @@ static __u8 root_hub_hub_des[] = | |||
33 | /* status change bits: nonzero writes will clear */ | 33 | /* status change bits: nonzero writes will clear */ |
34 | #define RWC_BITS (USBPORTSC_OCC | USBPORTSC_PEC | USBPORTSC_CSC) | 34 | #define RWC_BITS (USBPORTSC_OCC | USBPORTSC_PEC | USBPORTSC_CSC) |
35 | 35 | ||
36 | /* suspend/resume bits: port suspended or port resuming */ | ||
37 | #define SUSPEND_BITS (USBPORTSC_SUSP | USBPORTSC_RD) | ||
38 | |||
36 | /* A port that either is connected or has a changed-bit set will prevent | 39 | /* A port that either is connected or has a changed-bit set will prevent |
37 | * us from AUTO_STOPPING. | 40 | * us from AUTO_STOPPING. |
38 | */ | 41 | */ |
@@ -96,8 +99,8 @@ static void uhci_finish_suspend(struct uhci_hcd *uhci, int port, | |||
96 | int status; | 99 | int status; |
97 | int i; | 100 | int i; |
98 | 101 | ||
99 | if (inw(port_addr) & (USBPORTSC_SUSP | USBPORTSC_RD)) { | 102 | if (inw(port_addr) & SUSPEND_BITS) { |
100 | CLR_RH_PORTSTAT(USBPORTSC_SUSP | USBPORTSC_RD); | 103 | CLR_RH_PORTSTAT(SUSPEND_BITS); |
101 | if (test_bit(port, &uhci->resuming_ports)) | 104 | if (test_bit(port, &uhci->resuming_ports)) |
102 | set_bit(port, &uhci->port_c_suspend); | 105 | set_bit(port, &uhci->port_c_suspend); |
103 | 106 | ||
@@ -107,7 +110,7 @@ static void uhci_finish_suspend(struct uhci_hcd *uhci, int port, | |||
107 | * Experiments show that some controllers take longer, so | 110 | * Experiments show that some controllers take longer, so |
108 | * we'll poll for completion. */ | 111 | * we'll poll for completion. */ |
109 | for (i = 0; i < 10; ++i) { | 112 | for (i = 0; i < 10; ++i) { |
110 | if (!(inw(port_addr) & USBPORTSC_RD)) | 113 | if (!(inw(port_addr) & SUSPEND_BITS)) |
111 | break; | 114 | break; |
112 | udelay(1); | 115 | udelay(1); |
113 | } | 116 | } |
@@ -289,7 +292,7 @@ static int uhci_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue, | |||
289 | wPortStatus |= USB_PORT_STAT_CONNECTION; | 292 | wPortStatus |= USB_PORT_STAT_CONNECTION; |
290 | if (status & USBPORTSC_PE) { | 293 | if (status & USBPORTSC_PE) { |
291 | wPortStatus |= USB_PORT_STAT_ENABLE; | 294 | wPortStatus |= USB_PORT_STAT_ENABLE; |
292 | if (status & (USBPORTSC_SUSP | USBPORTSC_RD)) | 295 | if (status & SUSPEND_BITS) |
293 | wPortStatus |= USB_PORT_STAT_SUSPEND; | 296 | wPortStatus |= USB_PORT_STAT_SUSPEND; |
294 | } | 297 | } |
295 | if (status & USBPORTSC_OC) | 298 | if (status & USBPORTSC_OC) |
diff --git a/drivers/usb/misc/ftdi-elan.c b/drivers/usb/misc/ftdi-elan.c index 0c1d66ddb812..bc3327e3dd78 100644 --- a/drivers/usb/misc/ftdi-elan.c +++ b/drivers/usb/misc/ftdi-elan.c | |||
@@ -2905,17 +2905,31 @@ static int __init ftdi_elan_init(void) | |||
2905 | { | 2905 | { |
2906 | int result; | 2906 | int result; |
2907 | printk(KERN_INFO "driver %s built at %s on %s\n", ftdi_elan_driver.name, | 2907 | printk(KERN_INFO "driver %s built at %s on %s\n", ftdi_elan_driver.name, |
2908 | __TIME__, __DATE__); | 2908 | __TIME__, __DATE__); |
2909 | init_MUTEX(&ftdi_module_lock); | 2909 | init_MUTEX(&ftdi_module_lock); |
2910 | INIT_LIST_HEAD(&ftdi_static_list); | 2910 | INIT_LIST_HEAD(&ftdi_static_list); |
2911 | status_queue = create_singlethread_workqueue("ftdi-status-control"); | 2911 | status_queue = create_singlethread_workqueue("ftdi-status-control"); |
2912 | if (!status_queue) | ||
2913 | goto err1; | ||
2912 | command_queue = create_singlethread_workqueue("ftdi-command-engine"); | 2914 | command_queue = create_singlethread_workqueue("ftdi-command-engine"); |
2915 | if (!command_queue) | ||
2916 | goto err2; | ||
2913 | respond_queue = create_singlethread_workqueue("ftdi-respond-engine"); | 2917 | respond_queue = create_singlethread_workqueue("ftdi-respond-engine"); |
2918 | if (!respond_queue) | ||
2919 | goto err3; | ||
2914 | result = usb_register(&ftdi_elan_driver); | 2920 | result = usb_register(&ftdi_elan_driver); |
2915 | if (result) | 2921 | if (result) |
2916 | printk(KERN_ERR "usb_register failed. Error number %d\n", | 2922 | printk(KERN_ERR "usb_register failed. Error number %d\n", |
2917 | result); | 2923 | result); |
2918 | return result; | 2924 | return result; |
2925 | |||
2926 | err3: | ||
2927 | destroy_workqueue(command_queue); | ||
2928 | err2: | ||
2929 | destroy_workqueue(status_queue); | ||
2930 | err1: | ||
2931 | printk(KERN_ERR "%s couldn't create workqueue\n", ftdi_elan_driver.name); | ||
2932 | return -ENOMEM; | ||
2919 | } | 2933 | } |
2920 | 2934 | ||
2921 | static void __exit ftdi_elan_exit(void) | 2935 | static void __exit ftdi_elan_exit(void) |
diff --git a/drivers/usb/net/dm9601.c b/drivers/usb/net/dm9601.c index 4a932e1cd93b..c0bc52be5e10 100644 --- a/drivers/usb/net/dm9601.c +++ b/drivers/usb/net/dm9601.c | |||
@@ -571,6 +571,10 @@ static const struct driver_info dm9601_info = { | |||
571 | 571 | ||
572 | static const struct usb_device_id products[] = { | 572 | static const struct usb_device_id products[] = { |
573 | { | 573 | { |
574 | USB_DEVICE(0x07aa, 0x9601), /* Corega FEther USB-TXC */ | ||
575 | .driver_info = (unsigned long)&dm9601_info, | ||
576 | }, | ||
577 | { | ||
574 | USB_DEVICE(0x0a46, 0x9601), /* Davicom USB-100 */ | 578 | USB_DEVICE(0x0a46, 0x9601), /* Davicom USB-100 */ |
575 | .driver_info = (unsigned long)&dm9601_info, | 579 | .driver_info = (unsigned long)&dm9601_info, |
576 | }, | 580 | }, |
diff --git a/drivers/usb/serial/airprime.c b/drivers/usb/serial/airprime.c index 18816bf96a4d..310a8b5f5906 100644 --- a/drivers/usb/serial/airprime.c +++ b/drivers/usb/serial/airprime.c | |||
@@ -44,8 +44,43 @@ struct airprime_private { | |||
44 | int outstanding_urbs; | 44 | int outstanding_urbs; |
45 | int throttled; | 45 | int throttled; |
46 | struct urb *read_urbp[NUM_READ_URBS]; | 46 | struct urb *read_urbp[NUM_READ_URBS]; |
47 | |||
48 | /* Settings for the port */ | ||
49 | int rts_state; /* Handshaking pins (outputs) */ | ||
50 | int dtr_state; | ||
51 | int cts_state; /* Handshaking pins (inputs) */ | ||
52 | int dsr_state; | ||
53 | int dcd_state; | ||
54 | int ri_state; | ||
47 | }; | 55 | }; |
48 | 56 | ||
57 | static int airprime_send_setup(struct usb_serial_port *port) | ||
58 | { | ||
59 | struct usb_serial *serial = port->serial; | ||
60 | struct airprime_private *priv; | ||
61 | |||
62 | dbg("%s", __FUNCTION__); | ||
63 | |||
64 | if (port->number != 0) | ||
65 | return 0; | ||
66 | |||
67 | priv = usb_get_serial_port_data(port); | ||
68 | |||
69 | if (port->tty) { | ||
70 | int val = 0; | ||
71 | if (priv->dtr_state) | ||
72 | val |= 0x01; | ||
73 | if (priv->rts_state) | ||
74 | val |= 0x02; | ||
75 | |||
76 | return usb_control_msg(serial->dev, | ||
77 | usb_rcvctrlpipe(serial->dev, 0), | ||
78 | 0x22,0x21,val,0,NULL,0,USB_CTRL_SET_TIMEOUT); | ||
79 | } | ||
80 | |||
81 | return 0; | ||
82 | } | ||
83 | |||
49 | static void airprime_read_bulk_callback(struct urb *urb) | 84 | static void airprime_read_bulk_callback(struct urb *urb) |
50 | { | 85 | { |
51 | struct usb_serial_port *port = urb->context; | 86 | struct usb_serial_port *port = urb->context; |
@@ -118,6 +153,10 @@ static int airprime_open(struct usb_serial_port *port, struct file *filp) | |||
118 | usb_set_serial_port_data(port, priv); | 153 | usb_set_serial_port_data(port, priv); |
119 | } | 154 | } |
120 | 155 | ||
156 | /* Set some sane defaults */ | ||
157 | priv->rts_state = 1; | ||
158 | priv->dtr_state = 1; | ||
159 | |||
121 | for (i = 0; i < NUM_READ_URBS; ++i) { | 160 | for (i = 0; i < NUM_READ_URBS; ++i) { |
122 | buffer = kmalloc(buffer_size, GFP_KERNEL); | 161 | buffer = kmalloc(buffer_size, GFP_KERNEL); |
123 | if (!buffer) { | 162 | if (!buffer) { |
@@ -151,6 +190,9 @@ static int airprime_open(struct usb_serial_port *port, struct file *filp) | |||
151 | /* remember this urb so we can kill it when the port is closed */ | 190 | /* remember this urb so we can kill it when the port is closed */ |
152 | priv->read_urbp[i] = urb; | 191 | priv->read_urbp[i] = urb; |
153 | } | 192 | } |
193 | |||
194 | airprime_send_setup(port); | ||
195 | |||
154 | goto out; | 196 | goto out; |
155 | 197 | ||
156 | errout: | 198 | errout: |
@@ -176,6 +218,11 @@ static void airprime_close(struct usb_serial_port *port, struct file * filp) | |||
176 | 218 | ||
177 | dbg("%s - port %d", __FUNCTION__, port->number); | 219 | dbg("%s - port %d", __FUNCTION__, port->number); |
178 | 220 | ||
221 | priv->rts_state = 0; | ||
222 | priv->dtr_state = 0; | ||
223 | |||
224 | airprime_send_setup(port); | ||
225 | |||
179 | for (i = 0; i < NUM_READ_URBS; ++i) { | 226 | for (i = 0; i < NUM_READ_URBS; ++i) { |
180 | usb_kill_urb (priv->read_urbp[i]); | 227 | usb_kill_urb (priv->read_urbp[i]); |
181 | kfree (priv->read_urbp[i]->transfer_buffer); | 228 | kfree (priv->read_urbp[i]->transfer_buffer); |
diff --git a/drivers/usb/serial/cp2101.c b/drivers/usb/serial/cp2101.c index db623e754899..d7d0ba986a80 100644 --- a/drivers/usb/serial/cp2101.c +++ b/drivers/usb/serial/cp2101.c | |||
@@ -63,6 +63,8 @@ static struct usb_device_id id_table [] = { | |||
63 | { USB_DEVICE(0x10C4, 0x80CA) }, /* Degree Controls Inc */ | 63 | { USB_DEVICE(0x10C4, 0x80CA) }, /* Degree Controls Inc */ |
64 | { USB_DEVICE(0x10C4, 0x80F6) }, /* Suunto sports instrument */ | 64 | { USB_DEVICE(0x10C4, 0x80F6) }, /* Suunto sports instrument */ |
65 | { USB_DEVICE(0x10C4, 0x813D) }, /* Burnside Telecom Deskmobile */ | 65 | { USB_DEVICE(0x10C4, 0x813D) }, /* Burnside Telecom Deskmobile */ |
66 | { USB_DEVICE(0x10C4, 0x814A) }, /* West Mountain Radio RIGblaster P&P */ | ||
67 | { USB_DEVICE(0x10C4, 0x814B) }, /* West Mountain Radio RIGtalk */ | ||
66 | { USB_DEVICE(0x10C4, 0x815E) }, /* Helicomm IP-Link 1220-DVM */ | 68 | { USB_DEVICE(0x10C4, 0x815E) }, /* Helicomm IP-Link 1220-DVM */ |
67 | { USB_DEVICE(0x10C4, 0x81C8) }, /* Lipowsky Industrie Elektronik GmbH, Baby-JTAG */ | 69 | { USB_DEVICE(0x10C4, 0x81C8) }, /* Lipowsky Industrie Elektronik GmbH, Baby-JTAG */ |
68 | { USB_DEVICE(0x10C4, 0x81E2) }, /* Lipowsky Industrie Elektronik GmbH, Baby-LIN */ | 70 | { USB_DEVICE(0x10C4, 0x81E2) }, /* Lipowsky Industrie Elektronik GmbH, Baby-LIN */ |
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c index c525b42dadde..1633a0fd48e8 100644 --- a/drivers/usb/serial/ftdi_sio.c +++ b/drivers/usb/serial/ftdi_sio.c | |||
@@ -315,6 +315,7 @@ static struct usb_device_id id_table_combined [] = { | |||
315 | { USB_DEVICE(FTDI_VID, FTDI_SIO_PID) }, | 315 | { USB_DEVICE(FTDI_VID, FTDI_SIO_PID) }, |
316 | { USB_DEVICE(FTDI_VID, FTDI_8U232AM_PID) }, | 316 | { USB_DEVICE(FTDI_VID, FTDI_8U232AM_PID) }, |
317 | { USB_DEVICE(FTDI_VID, FTDI_8U232AM_ALT_PID) }, | 317 | { USB_DEVICE(FTDI_VID, FTDI_8U232AM_ALT_PID) }, |
318 | { USB_DEVICE(FTDI_VID, FTDI_232RL_PID) }, | ||
318 | { USB_DEVICE(FTDI_VID, FTDI_8U2232C_PID) }, | 319 | { USB_DEVICE(FTDI_VID, FTDI_8U2232C_PID) }, |
319 | { USB_DEVICE(FTDI_VID, FTDI_MICRO_CHAMELEON_PID) }, | 320 | { USB_DEVICE(FTDI_VID, FTDI_MICRO_CHAMELEON_PID) }, |
320 | { USB_DEVICE(FTDI_VID, FTDI_RELAIS_PID) }, | 321 | { USB_DEVICE(FTDI_VID, FTDI_RELAIS_PID) }, |
@@ -420,6 +421,14 @@ static struct usb_device_id id_table_combined [] = { | |||
420 | { USB_DEVICE(FTDI_VID, FTDI_ELV_ALC8500_PID) }, | 421 | { USB_DEVICE(FTDI_VID, FTDI_ELV_ALC8500_PID) }, |
421 | { USB_DEVICE(FTDI_VID, FTDI_PYRAMID_PID) }, | 422 | { USB_DEVICE(FTDI_VID, FTDI_PYRAMID_PID) }, |
422 | { USB_DEVICE(FTDI_VID, FTDI_ELV_FHZ1000PC_PID) }, | 423 | { USB_DEVICE(FTDI_VID, FTDI_ELV_FHZ1000PC_PID) }, |
424 | { USB_DEVICE(FTDI_VID, FTDI_IBS_US485_PID) }, | ||
425 | { USB_DEVICE(FTDI_VID, FTDI_IBS_PICPRO_PID) }, | ||
426 | { USB_DEVICE(FTDI_VID, FTDI_IBS_PCMCIA_PID) }, | ||
427 | { USB_DEVICE(FTDI_VID, FTDI_IBS_PK1_PID) }, | ||
428 | { USB_DEVICE(FTDI_VID, FTDI_IBS_RS232MON_PID) }, | ||
429 | { USB_DEVICE(FTDI_VID, FTDI_IBS_APP70_PID) }, | ||
430 | { USB_DEVICE(FTDI_VID, FTDI_IBS_PEDO_PID) }, | ||
431 | { USB_DEVICE(FTDI_VID, FTDI_IBS_PROD_PID) }, | ||
423 | /* | 432 | /* |
424 | * These will probably use user-space drivers. Uncomment them if | 433 | * These will probably use user-space drivers. Uncomment them if |
425 | * you need them or use the user-specified vendor/product module | 434 | * you need them or use the user-specified vendor/product module |
@@ -459,6 +468,7 @@ static struct usb_device_id id_table_combined [] = { | |||
459 | { USB_DEVICE(FALCOM_VID, FALCOM_TWIST_PID) }, | 468 | { USB_DEVICE(FALCOM_VID, FALCOM_TWIST_PID) }, |
460 | { USB_DEVICE(FALCOM_VID, FALCOM_SAMBA_PID) }, | 469 | { USB_DEVICE(FALCOM_VID, FALCOM_SAMBA_PID) }, |
461 | { USB_DEVICE(FTDI_VID, FTDI_SUUNTO_SPORTS_PID) }, | 470 | { USB_DEVICE(FTDI_VID, FTDI_SUUNTO_SPORTS_PID) }, |
471 | { USB_DEVICE(TTI_VID, TTI_QL355P_PID) }, | ||
462 | { USB_DEVICE(FTDI_VID, FTDI_RM_CANVIEW_PID) }, | 472 | { USB_DEVICE(FTDI_VID, FTDI_RM_CANVIEW_PID) }, |
463 | { USB_DEVICE(BANDB_VID, BANDB_USOTL4_PID) }, | 473 | { USB_DEVICE(BANDB_VID, BANDB_USOTL4_PID) }, |
464 | { USB_DEVICE(BANDB_VID, BANDB_USTL4_PID) }, | 474 | { USB_DEVICE(BANDB_VID, BANDB_USTL4_PID) }, |
@@ -533,6 +543,7 @@ static const char *ftdi_chip_name[] = { | |||
533 | [FT8U232AM] = "FT8U232AM", | 543 | [FT8U232AM] = "FT8U232AM", |
534 | [FT232BM] = "FT232BM", | 544 | [FT232BM] = "FT232BM", |
535 | [FT2232C] = "FT2232C", | 545 | [FT2232C] = "FT2232C", |
546 | [FT232RL] = "FT232RL", | ||
536 | }; | 547 | }; |
537 | 548 | ||
538 | 549 | ||
@@ -588,6 +599,8 @@ struct ftdi_private { | |||
588 | static int ftdi_sio_probe (struct usb_serial *serial, const struct usb_device_id *id); | 599 | static int ftdi_sio_probe (struct usb_serial *serial, const struct usb_device_id *id); |
589 | static int ftdi_sio_attach (struct usb_serial *serial); | 600 | static int ftdi_sio_attach (struct usb_serial *serial); |
590 | static void ftdi_shutdown (struct usb_serial *serial); | 601 | static void ftdi_shutdown (struct usb_serial *serial); |
602 | static int ftdi_sio_port_probe (struct usb_serial_port *port); | ||
603 | static int ftdi_sio_port_remove (struct usb_serial_port *port); | ||
591 | static int ftdi_open (struct usb_serial_port *port, struct file *filp); | 604 | static int ftdi_open (struct usb_serial_port *port, struct file *filp); |
592 | static void ftdi_close (struct usb_serial_port *port, struct file *filp); | 605 | static void ftdi_close (struct usb_serial_port *port, struct file *filp); |
593 | static int ftdi_write (struct usb_serial_port *port, const unsigned char *buf, int count); | 606 | static int ftdi_write (struct usb_serial_port *port, const unsigned char *buf, int count); |
@@ -622,6 +635,8 @@ static struct usb_serial_driver ftdi_sio_device = { | |||
622 | .num_bulk_out = 1, | 635 | .num_bulk_out = 1, |
623 | .num_ports = 1, | 636 | .num_ports = 1, |
624 | .probe = ftdi_sio_probe, | 637 | .probe = ftdi_sio_probe, |
638 | .port_probe = ftdi_sio_port_probe, | ||
639 | .port_remove = ftdi_sio_port_remove, | ||
625 | .open = ftdi_open, | 640 | .open = ftdi_open, |
626 | .close = ftdi_close, | 641 | .close = ftdi_close, |
627 | .throttle = ftdi_throttle, | 642 | .throttle = ftdi_throttle, |
@@ -1024,11 +1039,10 @@ static ssize_t show_latency_timer(struct device *dev, struct device_attribute *a | |||
1024 | { | 1039 | { |
1025 | struct usb_serial_port *port = to_usb_serial_port(dev); | 1040 | struct usb_serial_port *port = to_usb_serial_port(dev); |
1026 | struct ftdi_private *priv = usb_get_serial_port_data(port); | 1041 | struct ftdi_private *priv = usb_get_serial_port_data(port); |
1027 | struct usb_device *udev; | 1042 | struct usb_device *udev = port->serial->dev; |
1028 | unsigned short latency = 0; | 1043 | unsigned short latency = 0; |
1029 | int rv = 0; | 1044 | int rv = 0; |
1030 | 1045 | ||
1031 | udev = to_usb_device(dev); | ||
1032 | 1046 | ||
1033 | dbg("%s",__FUNCTION__); | 1047 | dbg("%s",__FUNCTION__); |
1034 | 1048 | ||
@@ -1052,13 +1066,11 @@ static ssize_t store_latency_timer(struct device *dev, struct device_attribute * | |||
1052 | { | 1066 | { |
1053 | struct usb_serial_port *port = to_usb_serial_port(dev); | 1067 | struct usb_serial_port *port = to_usb_serial_port(dev); |
1054 | struct ftdi_private *priv = usb_get_serial_port_data(port); | 1068 | struct ftdi_private *priv = usb_get_serial_port_data(port); |
1055 | struct usb_device *udev; | 1069 | struct usb_device *udev = port->serial->dev; |
1056 | char buf[1]; | 1070 | char buf[1]; |
1057 | int v = simple_strtoul(valbuf, NULL, 10); | 1071 | int v = simple_strtoul(valbuf, NULL, 10); |
1058 | int rv = 0; | 1072 | int rv = 0; |
1059 | 1073 | ||
1060 | udev = to_usb_device(dev); | ||
1061 | |||
1062 | dbg("%s: setting latency timer = %i", __FUNCTION__, v); | 1074 | dbg("%s: setting latency timer = %i", __FUNCTION__, v); |
1063 | 1075 | ||
1064 | rv = usb_control_msg(udev, | 1076 | rv = usb_control_msg(udev, |
@@ -1083,13 +1095,11 @@ static ssize_t store_event_char(struct device *dev, struct device_attribute *att | |||
1083 | { | 1095 | { |
1084 | struct usb_serial_port *port = to_usb_serial_port(dev); | 1096 | struct usb_serial_port *port = to_usb_serial_port(dev); |
1085 | struct ftdi_private *priv = usb_get_serial_port_data(port); | 1097 | struct ftdi_private *priv = usb_get_serial_port_data(port); |
1086 | struct usb_device *udev; | 1098 | struct usb_device *udev = port->serial->dev; |
1087 | char buf[1]; | 1099 | char buf[1]; |
1088 | int v = simple_strtoul(valbuf, NULL, 10); | 1100 | int v = simple_strtoul(valbuf, NULL, 10); |
1089 | int rv = 0; | 1101 | int rv = 0; |
1090 | 1102 | ||
1091 | udev = to_usb_device(dev); | ||
1092 | |||
1093 | dbg("%s: setting event char = %i", __FUNCTION__, v); | 1103 | dbg("%s: setting event char = %i", __FUNCTION__, v); |
1094 | 1104 | ||
1095 | rv = usb_control_msg(udev, | 1105 | rv = usb_control_msg(udev, |
@@ -1110,46 +1120,38 @@ static ssize_t store_event_char(struct device *dev, struct device_attribute *att | |||
1110 | static DEVICE_ATTR(latency_timer, S_IWUSR | S_IRUGO, show_latency_timer, store_latency_timer); | 1120 | static DEVICE_ATTR(latency_timer, S_IWUSR | S_IRUGO, show_latency_timer, store_latency_timer); |
1111 | static DEVICE_ATTR(event_char, S_IWUSR, NULL, store_event_char); | 1121 | static DEVICE_ATTR(event_char, S_IWUSR, NULL, store_event_char); |
1112 | 1122 | ||
1113 | static int create_sysfs_attrs(struct usb_serial *serial) | 1123 | static int create_sysfs_attrs(struct usb_serial_port *port) |
1114 | { | 1124 | { |
1115 | struct ftdi_private *priv; | 1125 | struct ftdi_private *priv = usb_get_serial_port_data(port); |
1116 | struct usb_device *udev; | ||
1117 | int retval = 0; | 1126 | int retval = 0; |
1118 | 1127 | ||
1119 | dbg("%s",__FUNCTION__); | 1128 | dbg("%s",__FUNCTION__); |
1120 | 1129 | ||
1121 | priv = usb_get_serial_port_data(serial->port[0]); | ||
1122 | udev = serial->dev; | ||
1123 | |||
1124 | /* XXX I've no idea if the original SIO supports the event_char | 1130 | /* XXX I've no idea if the original SIO supports the event_char |
1125 | * sysfs parameter, so I'm playing it safe. */ | 1131 | * sysfs parameter, so I'm playing it safe. */ |
1126 | if (priv->chip_type != SIO) { | 1132 | if (priv->chip_type != SIO) { |
1127 | dbg("sysfs attributes for %s", ftdi_chip_name[priv->chip_type]); | 1133 | dbg("sysfs attributes for %s", ftdi_chip_name[priv->chip_type]); |
1128 | retval = device_create_file(&udev->dev, &dev_attr_event_char); | 1134 | retval = device_create_file(&port->dev, &dev_attr_event_char); |
1129 | if ((!retval) && | 1135 | if ((!retval) && |
1130 | (priv->chip_type == FT232BM || priv->chip_type == FT2232C)) { | 1136 | (priv->chip_type == FT232BM || priv->chip_type == FT2232C)) { |
1131 | retval = device_create_file(&udev->dev, | 1137 | retval = device_create_file(&port->dev, |
1132 | &dev_attr_latency_timer); | 1138 | &dev_attr_latency_timer); |
1133 | } | 1139 | } |
1134 | } | 1140 | } |
1135 | return retval; | 1141 | return retval; |
1136 | } | 1142 | } |
1137 | 1143 | ||
1138 | static void remove_sysfs_attrs(struct usb_serial *serial) | 1144 | static void remove_sysfs_attrs(struct usb_serial_port *port) |
1139 | { | 1145 | { |
1140 | struct ftdi_private *priv; | 1146 | struct ftdi_private *priv = usb_get_serial_port_data(port); |
1141 | struct usb_device *udev; | ||
1142 | 1147 | ||
1143 | dbg("%s",__FUNCTION__); | 1148 | dbg("%s",__FUNCTION__); |
1144 | 1149 | ||
1145 | priv = usb_get_serial_port_data(serial->port[0]); | ||
1146 | udev = serial->dev; | ||
1147 | |||
1148 | /* XXX see create_sysfs_attrs */ | 1150 | /* XXX see create_sysfs_attrs */ |
1149 | if (priv->chip_type != SIO) { | 1151 | if (priv->chip_type != SIO) { |
1150 | device_remove_file(&udev->dev, &dev_attr_event_char); | 1152 | device_remove_file(&port->dev, &dev_attr_event_char); |
1151 | if (priv->chip_type == FT232BM || priv->chip_type == FT2232C) { | 1153 | if (priv->chip_type == FT232BM || priv->chip_type == FT2232C) { |
1152 | device_remove_file(&udev->dev, &dev_attr_latency_timer); | 1154 | device_remove_file(&port->dev, &dev_attr_latency_timer); |
1153 | } | 1155 | } |
1154 | } | 1156 | } |
1155 | 1157 | ||
@@ -1169,13 +1171,9 @@ static int ftdi_sio_probe (struct usb_serial *serial, const struct usb_device_id | |||
1169 | return (0); | 1171 | return (0); |
1170 | } | 1172 | } |
1171 | 1173 | ||
1172 | /* attach subroutine */ | 1174 | static int ftdi_sio_port_probe(struct usb_serial_port *port) |
1173 | static int ftdi_sio_attach (struct usb_serial *serial) | ||
1174 | { | 1175 | { |
1175 | struct usb_serial_port *port = serial->port[0]; | ||
1176 | struct ftdi_private *priv; | 1176 | struct ftdi_private *priv; |
1177 | struct ftdi_sio_quirk *quirk; | ||
1178 | int retval; | ||
1179 | 1177 | ||
1180 | dbg("%s",__FUNCTION__); | 1178 | dbg("%s",__FUNCTION__); |
1181 | 1179 | ||
@@ -1215,19 +1213,21 @@ static int ftdi_sio_attach (struct usb_serial *serial) | |||
1215 | kfree(port->bulk_out_buffer); | 1213 | kfree(port->bulk_out_buffer); |
1216 | port->bulk_out_buffer = NULL; | 1214 | port->bulk_out_buffer = NULL; |
1217 | 1215 | ||
1218 | usb_set_serial_port_data(serial->port[0], priv); | 1216 | usb_set_serial_port_data(port, priv); |
1219 | 1217 | ||
1220 | ftdi_determine_type (serial->port[0]); | 1218 | ftdi_determine_type (port); |
1221 | retval = create_sysfs_attrs(serial); | 1219 | create_sysfs_attrs(port); |
1222 | if (retval) | 1220 | return 0; |
1223 | dev_err(&serial->dev->dev, "Error creating sysfs files, " | 1221 | } |
1224 | "continuing\n"); | ||
1225 | 1222 | ||
1223 | /* attach subroutine */ | ||
1224 | static int ftdi_sio_attach (struct usb_serial *serial) | ||
1225 | { | ||
1226 | /* Check for device requiring special set up. */ | 1226 | /* Check for device requiring special set up. */ |
1227 | quirk = (struct ftdi_sio_quirk *)usb_get_serial_data(serial); | 1227 | struct ftdi_sio_quirk *quirk = usb_get_serial_data(serial); |
1228 | if (quirk && quirk->setup) { | 1228 | |
1229 | if (quirk && quirk->setup) | ||
1229 | quirk->setup(serial); | 1230 | quirk->setup(serial); |
1230 | } | ||
1231 | 1231 | ||
1232 | return 0; | 1232 | return 0; |
1233 | } /* ftdi_sio_attach */ | 1233 | } /* ftdi_sio_attach */ |
@@ -1271,17 +1271,18 @@ static void ftdi_HE_TIRA1_setup (struct usb_serial *serial) | |||
1271 | * calls __serial_close for each open of the port | 1271 | * calls __serial_close for each open of the port |
1272 | * shutdown is called then (ie ftdi_shutdown) | 1272 | * shutdown is called then (ie ftdi_shutdown) |
1273 | */ | 1273 | */ |
1274 | |||
1275 | |||
1276 | static void ftdi_shutdown (struct usb_serial *serial) | 1274 | static void ftdi_shutdown (struct usb_serial *serial) |
1277 | { /* ftdi_shutdown */ | 1275 | { |
1276 | dbg("%s", __FUNCTION__); | ||
1277 | } | ||
1278 | 1278 | ||
1279 | struct usb_serial_port *port = serial->port[0]; | 1279 | static int ftdi_sio_port_remove(struct usb_serial_port *port) |
1280 | { | ||
1280 | struct ftdi_private *priv = usb_get_serial_port_data(port); | 1281 | struct ftdi_private *priv = usb_get_serial_port_data(port); |
1281 | 1282 | ||
1282 | dbg("%s", __FUNCTION__); | 1283 | dbg("%s", __FUNCTION__); |
1283 | 1284 | ||
1284 | remove_sysfs_attrs(serial); | 1285 | remove_sysfs_attrs(port); |
1285 | 1286 | ||
1286 | /* all open ports are closed at this point | 1287 | /* all open ports are closed at this point |
1287 | * (by usbserial.c:__serial_close, which calls ftdi_close) | 1288 | * (by usbserial.c:__serial_close, which calls ftdi_close) |
@@ -1291,8 +1292,9 @@ static void ftdi_shutdown (struct usb_serial *serial) | |||
1291 | usb_set_serial_port_data(port, NULL); | 1292 | usb_set_serial_port_data(port, NULL); |
1292 | kfree(priv); | 1293 | kfree(priv); |
1293 | } | 1294 | } |
1294 | } /* ftdi_shutdown */ | ||
1295 | 1295 | ||
1296 | return 0; | ||
1297 | } | ||
1296 | 1298 | ||
1297 | static int ftdi_open (struct usb_serial_port *port, struct file *filp) | 1299 | static int ftdi_open (struct usb_serial_port *port, struct file *filp) |
1298 | { /* ftdi_open */ | 1300 | { /* ftdi_open */ |
diff --git a/drivers/usb/serial/ftdi_sio.h b/drivers/usb/serial/ftdi_sio.h index 1bdda935f7d9..513cfe1b768b 100644 --- a/drivers/usb/serial/ftdi_sio.h +++ b/drivers/usb/serial/ftdi_sio.h | |||
@@ -27,6 +27,7 @@ | |||
27 | #define FTDI_8U232AM_PID 0x6001 /* Similar device to SIO above */ | 27 | #define FTDI_8U232AM_PID 0x6001 /* Similar device to SIO above */ |
28 | #define FTDI_8U232AM_ALT_PID 0x6006 /* FTDI's alternate PID for above */ | 28 | #define FTDI_8U232AM_ALT_PID 0x6006 /* FTDI's alternate PID for above */ |
29 | #define FTDI_8U2232C_PID 0x6010 /* Dual channel device */ | 29 | #define FTDI_8U2232C_PID 0x6010 /* Dual channel device */ |
30 | #define FTDI_232RL_PID 0xFBFA /* Product ID for FT232RL */ | ||
30 | #define FTDI_RELAIS_PID 0xFA10 /* Relais device from Rudolf Gugler */ | 31 | #define FTDI_RELAIS_PID 0xFA10 /* Relais device from Rudolf Gugler */ |
31 | #define FTDI_NF_RIC_VID 0x0DCD /* Vendor Id */ | 32 | #define FTDI_NF_RIC_VID 0x0DCD /* Vendor Id */ |
32 | #define FTDI_NF_RIC_PID 0x0001 /* Product Id */ | 33 | #define FTDI_NF_RIC_PID 0x0001 /* Product Id */ |
@@ -339,6 +340,12 @@ | |||
339 | #define FTDI_SUUNTO_SPORTS_PID 0xF680 /* Suunto Sports instrument */ | 340 | #define FTDI_SUUNTO_SPORTS_PID 0xF680 /* Suunto Sports instrument */ |
340 | 341 | ||
341 | /* | 342 | /* |
343 | * TTi (Thurlby Thandar Instruments) | ||
344 | */ | ||
345 | #define TTI_VID 0x103E /* Vendor Id */ | ||
346 | #define TTI_QL355P_PID 0x03E8 /* TTi QL355P power supply */ | ||
347 | |||
348 | /* | ||
342 | * Definitions for B&B Electronics products. | 349 | * Definitions for B&B Electronics products. |
343 | */ | 350 | */ |
344 | #define BANDB_VID 0x0856 /* B&B Electronics Vendor ID */ | 351 | #define BANDB_VID 0x0856 /* B&B Electronics Vendor ID */ |
@@ -497,6 +504,19 @@ | |||
497 | #define TELLDUS_VID 0x1781 /* Vendor ID */ | 504 | #define TELLDUS_VID 0x1781 /* Vendor ID */ |
498 | #define TELLDUS_TELLSTICK_PID 0x0C30 /* RF control dongle 433 MHz using FT232RL */ | 505 | #define TELLDUS_TELLSTICK_PID 0x0C30 /* RF control dongle 433 MHz using FT232RL */ |
499 | 506 | ||
507 | /* | ||
508 | * IBS elektronik product ids | ||
509 | * Submitted by Thomas Schleusener | ||
510 | */ | ||
511 | #define FTDI_IBS_US485_PID 0xff38 /* IBS US485 (USB<-->RS422/485 interface) */ | ||
512 | #define FTDI_IBS_PICPRO_PID 0xff39 /* IBS PIC-Programmer */ | ||
513 | #define FTDI_IBS_PCMCIA_PID 0xff3a /* IBS Card reader for PCMCIA SRAM-cards */ | ||
514 | #define FTDI_IBS_PK1_PID 0xff3b /* IBS PK1 - Particel counter */ | ||
515 | #define FTDI_IBS_RS232MON_PID 0xff3c /* IBS RS232 - Monitor */ | ||
516 | #define FTDI_IBS_APP70_PID 0xff3d /* APP 70 (dust monitoring system) */ | ||
517 | #define FTDI_IBS_PEDO_PID 0xff3e /* IBS PEDO-Modem (RF modem 868.35 MHz) */ | ||
518 | #define FTDI_IBS_PROD_PID 0xff3f /* future device */ | ||
519 | |||
500 | /* Commands */ | 520 | /* Commands */ |
501 | #define FTDI_SIO_RESET 0 /* Reset the port */ | 521 | #define FTDI_SIO_RESET 0 /* Reset the port */ |
502 | #define FTDI_SIO_MODEM_CTRL 1 /* Set the modem control register */ | 522 | #define FTDI_SIO_MODEM_CTRL 1 /* Set the modem control register */ |
@@ -620,6 +640,7 @@ typedef enum { | |||
620 | FT8U232AM = 2, | 640 | FT8U232AM = 2, |
621 | FT232BM = 3, | 641 | FT232BM = 3, |
622 | FT2232C = 4, | 642 | FT2232C = 4, |
643 | FT232RL = 5, | ||
623 | } ftdi_chip_type_t; | 644 | } ftdi_chip_type_t; |
624 | 645 | ||
625 | typedef enum { | 646 | typedef enum { |
diff --git a/drivers/usb/serial/ipaq.c b/drivers/usb/serial/ipaq.c index a408184334ea..d16e2e1764ad 100644 --- a/drivers/usb/serial/ipaq.c +++ b/drivers/usb/serial/ipaq.c | |||
@@ -247,6 +247,8 @@ static struct usb_device_id ipaq_id_table [] = { | |||
247 | { USB_DEVICE(0x04AD, 0x0301) }, /* USB Sync 0301 */ | 247 | { USB_DEVICE(0x04AD, 0x0301) }, /* USB Sync 0301 */ |
248 | { USB_DEVICE(0x04AD, 0x0302) }, /* USB Sync 0302 */ | 248 | { USB_DEVICE(0x04AD, 0x0302) }, /* USB Sync 0302 */ |
249 | { USB_DEVICE(0x04AD, 0x0303) }, /* USB Sync 0303 */ | 249 | { USB_DEVICE(0x04AD, 0x0303) }, /* USB Sync 0303 */ |
250 | { USB_DEVICE(0x04AD, 0x0306) }, /* GPS Pocket PC USB Sync */ | ||
251 | { USB_DEVICE(0x04B7, 0x0531) }, /* MyGuide 7000 XL USB Sync */ | ||
250 | { USB_DEVICE(0x04C5, 0x1058) }, /* FUJITSU USB Sync */ | 252 | { USB_DEVICE(0x04C5, 0x1058) }, /* FUJITSU USB Sync */ |
251 | { USB_DEVICE(0x04C5, 0x1079) }, /* FUJITSU USB Sync */ | 253 | { USB_DEVICE(0x04C5, 0x1079) }, /* FUJITSU USB Sync */ |
252 | { USB_DEVICE(0x04DA, 0x2500) }, /* Panasonic USB Sync */ | 254 | { USB_DEVICE(0x04DA, 0x2500) }, /* Panasonic USB Sync */ |
diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c index 6bf22a28adb8..8511352251f3 100644 --- a/drivers/usb/serial/usb-serial.c +++ b/drivers/usb/serial/usb-serial.c | |||
@@ -99,9 +99,12 @@ static struct usb_serial *get_free_serial (struct usb_serial *serial, int num_po | |||
99 | continue; | 99 | continue; |
100 | 100 | ||
101 | *minor = i; | 101 | *minor = i; |
102 | j = 0; | ||
102 | dbg("%s - minor base = %d", __FUNCTION__, *minor); | 103 | dbg("%s - minor base = %d", __FUNCTION__, *minor); |
103 | for (i = *minor; (i < (*minor + num_ports)) && (i < SERIAL_TTY_MINORS); ++i) | 104 | for (i = *minor; (i < (*minor + num_ports)) && (i < SERIAL_TTY_MINORS); ++i) { |
104 | serial_table[i] = serial; | 105 | serial_table[i] = serial; |
106 | serial->port[j++]->number = i; | ||
107 | } | ||
105 | spin_unlock(&table_lock); | 108 | spin_unlock(&table_lock); |
106 | return serial; | 109 | return serial; |
107 | } | 110 | } |
@@ -135,11 +138,6 @@ static void destroy_serial(struct kref *kref) | |||
135 | 138 | ||
136 | dbg("%s - %s", __FUNCTION__, serial->type->description); | 139 | dbg("%s - %s", __FUNCTION__, serial->type->description); |
137 | 140 | ||
138 | serial->type->shutdown(serial); | ||
139 | |||
140 | /* return the minor range that this device had */ | ||
141 | return_serial(serial); | ||
142 | |||
143 | for (i = 0; i < serial->num_ports; ++i) | 141 | for (i = 0; i < serial->num_ports; ++i) |
144 | serial->port[i]->open_count = 0; | 142 | serial->port[i]->open_count = 0; |
145 | 143 | ||
@@ -150,6 +148,12 @@ static void destroy_serial(struct kref *kref) | |||
150 | serial->port[i] = NULL; | 148 | serial->port[i] = NULL; |
151 | } | 149 | } |
152 | 150 | ||
151 | if (serial->type->shutdown) | ||
152 | serial->type->shutdown(serial); | ||
153 | |||
154 | /* return the minor range that this device had */ | ||
155 | return_serial(serial); | ||
156 | |||
153 | /* If this is a "fake" port, we have to clean it up here, as it will | 157 | /* If this is a "fake" port, we have to clean it up here, as it will |
154 | * not get cleaned up in port_release() as it was never registered with | 158 | * not get cleaned up in port_release() as it was never registered with |
155 | * the driver core */ | 159 | * the driver core */ |
@@ -826,7 +830,6 @@ int usb_serial_probe(struct usb_interface *interface, | |||
826 | num_ports = type->num_ports; | 830 | num_ports = type->num_ports; |
827 | } | 831 | } |
828 | 832 | ||
829 | serial->minor = minor; | ||
830 | serial->num_ports = num_ports; | 833 | serial->num_ports = num_ports; |
831 | serial->num_bulk_in = num_bulk_in; | 834 | serial->num_bulk_in = num_bulk_in; |
832 | serial->num_bulk_out = num_bulk_out; | 835 | serial->num_bulk_out = num_bulk_out; |
@@ -847,7 +850,6 @@ int usb_serial_probe(struct usb_interface *interface, | |||
847 | port = kzalloc(sizeof(struct usb_serial_port), GFP_KERNEL); | 850 | port = kzalloc(sizeof(struct usb_serial_port), GFP_KERNEL); |
848 | if (!port) | 851 | if (!port) |
849 | goto probe_error; | 852 | goto probe_error; |
850 | port->number = i + serial->minor; | ||
851 | port->serial = serial; | 853 | port->serial = serial; |
852 | spin_lock_init(&port->lock); | 854 | spin_lock_init(&port->lock); |
853 | mutex_init(&port->mutex); | 855 | mutex_init(&port->mutex); |
@@ -980,6 +982,7 @@ int usb_serial_probe(struct usb_interface *interface, | |||
980 | dev_err(&interface->dev, "No more free serial devices\n"); | 982 | dev_err(&interface->dev, "No more free serial devices\n"); |
981 | goto probe_error; | 983 | goto probe_error; |
982 | } | 984 | } |
985 | serial->minor = minor; | ||
983 | 986 | ||
984 | /* register all of the individual ports with the driver core */ | 987 | /* register all of the individual ports with the driver core */ |
985 | for (i = 0; i < num_ports; ++i) { | 988 | for (i = 0; i < num_ports; ++i) { |
@@ -1034,9 +1037,6 @@ probe_error: | |||
1034 | kfree(port->interrupt_out_buffer); | 1037 | kfree(port->interrupt_out_buffer); |
1035 | } | 1038 | } |
1036 | 1039 | ||
1037 | /* return the minor range that this device had */ | ||
1038 | return_serial (serial); | ||
1039 | |||
1040 | /* free up any memory that we allocated */ | 1040 | /* free up any memory that we allocated */ |
1041 | for (i = 0; i < serial->num_port_pointers; ++i) | 1041 | for (i = 0; i < serial->num_port_pointers; ++i) |
1042 | kfree(serial->port[i]); | 1042 | kfree(serial->port[i]); |
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h index 9644a8ea4aa7..2dd31e3f5107 100644 --- a/drivers/usb/storage/unusual_devs.h +++ b/drivers/usb/storage/unusual_devs.h | |||
@@ -146,6 +146,13 @@ UNUSUAL_DEV( 0x0420, 0x0001, 0x0100, 0x0100, | |||
146 | US_SC_DEVICE, US_PR_DEVICE, NULL, | 146 | US_SC_DEVICE, US_PR_DEVICE, NULL, |
147 | US_FL_IGNORE_RESIDUE ), | 147 | US_FL_IGNORE_RESIDUE ), |
148 | 148 | ||
149 | /* Reported by Andrew Nayenko <relan@bk.ru> */ | ||
150 | UNUSUAL_DEV( 0x0421, 0x0019, 0x0592, 0x0592, | ||
151 | "Nokia", | ||
152 | "Nokia 6288", | ||
153 | US_SC_DEVICE, US_PR_DEVICE, NULL, | ||
154 | US_FL_MAX_SECTORS_64 ), | ||
155 | |||
149 | /* Reported by Mario Rettig <mariorettig@web.de> */ | 156 | /* Reported by Mario Rettig <mariorettig@web.de> */ |
150 | UNUSUAL_DEV( 0x0421, 0x042e, 0x0100, 0x0100, | 157 | UNUSUAL_DEV( 0x0421, 0x042e, 0x0100, 0x0100, |
151 | "Nokia", | 158 | "Nokia", |
@@ -1395,16 +1402,6 @@ UNUSUAL_DEV( 0x1652, 0x6600, 0x0201, 0x0201, | |||
1395 | US_SC_DEVICE, US_PR_DEVICE, NULL, | 1402 | US_SC_DEVICE, US_PR_DEVICE, NULL, |
1396 | US_FL_IGNORE_RESIDUE ), | 1403 | US_FL_IGNORE_RESIDUE ), |
1397 | 1404 | ||
1398 | /* Reported by Thomas Baechler <thomas@archlinux.org> | ||
1399 | * Fixes I/O errors with Teac HD-35PU devices | ||
1400 | */ | ||
1401 | |||
1402 | UNUSUAL_DEV( 0x1652, 0x6600, 0x0201, 0x0201, | ||
1403 | "Super Top", | ||
1404 | "USB 2.0 IDE DEVICE", | ||
1405 | US_SC_DEVICE, US_PR_DEVICE, NULL, | ||
1406 | US_FL_IGNORE_RESIDUE), | ||
1407 | |||
1408 | /* patch submitted by Davide Perini <perini.davide@dpsoftware.org> | 1405 | /* patch submitted by Davide Perini <perini.davide@dpsoftware.org> |
1409 | * and Renato Perini <rperini@email.it> | 1406 | * and Renato Perini <rperini@email.it> |
1410 | */ | 1407 | */ |
diff --git a/include/asm-ia64/kexec.h b/include/asm-ia64/kexec.h index f2ad469a6ddf..41299ddfee30 100644 --- a/include/asm-ia64/kexec.h +++ b/include/asm-ia64/kexec.h | |||
@@ -22,7 +22,6 @@ | |||
22 | } while(0) | 22 | } while(0) |
23 | 23 | ||
24 | extern struct kimage *ia64_kimage; | 24 | extern struct kimage *ia64_kimage; |
25 | DECLARE_PER_CPU(u64, ia64_mca_pal_base); | ||
26 | extern const unsigned int relocate_new_kernel_size; | 25 | extern const unsigned int relocate_new_kernel_size; |
27 | extern void relocate_new_kernel(unsigned long, unsigned long, | 26 | extern void relocate_new_kernel(unsigned long, unsigned long, |
28 | struct ia64_boot_param *, unsigned long); | 27 | struct ia64_boot_param *, unsigned long); |
diff --git a/include/asm-ia64/mca.h b/include/asm-ia64/mca.h index ee97f7c2d462..41098f459684 100644 --- a/include/asm-ia64/mca.h +++ b/include/asm-ia64/mca.h | |||
@@ -156,6 +156,8 @@ struct ia64_mca_notify_die { | |||
156 | int *monarch_cpu; | 156 | int *monarch_cpu; |
157 | }; | 157 | }; |
158 | 158 | ||
159 | DECLARE_PER_CPU(u64, ia64_mca_pal_base); | ||
160 | |||
159 | #else /* __ASSEMBLY__ */ | 161 | #else /* __ASSEMBLY__ */ |
160 | 162 | ||
161 | #define IA64_MCA_CORRECTED 0x0 /* Error has been corrected by OS_MCA */ | 163 | #define IA64_MCA_CORRECTED 0x0 /* Error has been corrected by OS_MCA */ |
diff --git a/include/asm-ia64/pal.h b/include/asm-ia64/pal.h index e43021a99a20..67656ce767c2 100644 --- a/include/asm-ia64/pal.h +++ b/include/asm-ia64/pal.h | |||
@@ -371,6 +371,7 @@ typedef u64 pal_mc_info_index_t; | |||
371 | * dependent | 371 | * dependent |
372 | */ | 372 | */ |
373 | 373 | ||
374 | #define PAL_TLB_CHECK_OP_PURGE 8 | ||
374 | 375 | ||
375 | typedef struct pal_process_state_info_s { | 376 | typedef struct pal_process_state_info_s { |
376 | u64 reserved1 : 2, | 377 | u64 reserved1 : 2, |
diff --git a/include/asm-ia64/pci.h b/include/asm-ia64/pci.h index 5160233bbfac..5a5d1c2ce39d 100644 --- a/include/asm-ia64/pci.h +++ b/include/asm-ia64/pci.h | |||
@@ -9,6 +9,7 @@ | |||
9 | 9 | ||
10 | #include <asm/io.h> | 10 | #include <asm/io.h> |
11 | #include <asm/scatterlist.h> | 11 | #include <asm/scatterlist.h> |
12 | #include <asm/hw_irq.h> | ||
12 | 13 | ||
13 | /* | 14 | /* |
14 | * Can be used to override the logic in pci_scan_bus for skipping already-configured bus | 15 | * Can be used to override the logic in pci_scan_bus for skipping already-configured bus |
@@ -170,7 +171,7 @@ pcibios_select_root(struct pci_dev *pdev, struct resource *res) | |||
170 | #define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ | 171 | #define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ |
171 | static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel) | 172 | static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel) |
172 | { | 173 | { |
173 | return channel ? 15 : 14; | 174 | return channel ? isa_irq_to_vector(15) : isa_irq_to_vector(14); |
174 | } | 175 | } |
175 | 176 | ||
176 | #endif /* _ASM_IA64_PCI_H */ | 177 | #endif /* _ASM_IA64_PCI_H */ |
diff --git a/include/asm-ia64/sal.h b/include/asm-ia64/sal.h index d000689d9142..46cadf5aaac5 100644 --- a/include/asm-ia64/sal.h +++ b/include/asm-ia64/sal.h | |||
@@ -847,12 +847,13 @@ extern int ia64_sal_oemcall_reentrant(struct ia64_sal_retval *, u64, u64, u64, | |||
847 | */ | 847 | */ |
848 | struct sal_to_os_boot { | 848 | struct sal_to_os_boot { |
849 | u64 rr[8]; /* Region Registers */ | 849 | u64 rr[8]; /* Region Registers */ |
850 | u64 br[6]; /* br0: return addr into SAL boot rendez routine */ | 850 | u64 br[6]; /* br0: |
851 | * return addr into SAL boot rendez routine */ | ||
851 | u64 gr1; /* SAL:GP */ | 852 | u64 gr1; /* SAL:GP */ |
852 | u64 gr12; /* SAL:SP */ | 853 | u64 gr12; /* SAL:SP */ |
853 | u64 gr13; /* SAL: Task Pointer */ | 854 | u64 gr13; /* SAL: Task Pointer */ |
854 | u64 fpsr; | 855 | u64 fpsr; |
855 | u64 pfs; | 856 | u64 pfs; |
856 | u64 rnat; | 857 | u64 rnat; |
857 | u64 unat; | 858 | u64 unat; |
858 | u64 bspstore; | 859 | u64 bspstore; |
diff --git a/include/asm-ia64/unwind.h b/include/asm-ia64/unwind.h index 5df0276b0493..1af3875f1a57 100644 --- a/include/asm-ia64/unwind.h +++ b/include/asm-ia64/unwind.h | |||
@@ -81,7 +81,7 @@ struct unw_frame_info { | |||
81 | struct unw_ireg { | 81 | struct unw_ireg { |
82 | unsigned long *loc; | 82 | unsigned long *loc; |
83 | struct unw_ireg_nat { | 83 | struct unw_ireg_nat { |
84 | long type : 3; /* enum unw_nat_type */ | 84 | unsigned long type : 3; /* enum unw_nat_type */ |
85 | signed long off : 61; /* NaT word is at loc+nat.off */ | 85 | signed long off : 61; /* NaT word is at loc+nat.off */ |
86 | } nat; | 86 | } nat; |
87 | } r4, r5, r6, r7; | 87 | } r4, r5, r6, r7; |
diff --git a/include/asm-mips/sibyte/trace_prof.h b/include/asm-mips/sibyte/trace_prof.h deleted file mode 100644 index 557792075e9a..000000000000 --- a/include/asm-mips/sibyte/trace_prof.h +++ /dev/null | |||
@@ -1,110 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2001 Broadcom Corporation | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or | ||
5 | * modify it under the terms of the GNU General Public License | ||
6 | * as published by the Free Software Foundation; either version 2 | ||
7 | * of the License, or (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | ||
17 | */ | ||
18 | |||
19 | #ifndef __ASM_SIBYTE_TRACE_PROF_H | ||
20 | #define __ASM_SIBYTE_TRACE_PROF_H | ||
21 | |||
22 | #undef DBG | ||
23 | #if SBPROF_TB_DEBUG | ||
24 | #define DBG(a) a | ||
25 | #else | ||
26 | #define DBG(a) | ||
27 | #endif | ||
28 | |||
29 | #define SBPROF_TB_MAJOR 240 | ||
30 | #define DEVNAME "bcm1250_tbprof" | ||
31 | |||
32 | typedef u_int64_t tb_sample_t[6*256]; | ||
33 | |||
34 | struct sbprof_tb { | ||
35 | int open; | ||
36 | tb_sample_t *sbprof_tbbuf; | ||
37 | int next_tb_sample; | ||
38 | |||
39 | volatile int tb_enable; | ||
40 | volatile int tb_armed; | ||
41 | |||
42 | wait_queue_head_t tb_sync; | ||
43 | wait_queue_head_t tb_read; | ||
44 | }; | ||
45 | |||
46 | #define MAX_SAMPLE_BYTES (24*1024*1024) | ||
47 | #define MAX_TBSAMPLE_BYTES (12*1024*1024) | ||
48 | |||
49 | #define MAX_SAMPLES (MAX_SAMPLE_BYTES/sizeof(u_int32_t)) | ||
50 | #define TB_SAMPLE_SIZE (sizeof(tb_sample_t)) | ||
51 | #define MAX_TB_SAMPLES (MAX_TBSAMPLE_BYTES/TB_SAMPLE_SIZE) | ||
52 | |||
53 | /* IOCTLs */ | ||
54 | #define SBPROF_ZBSTART _IOW('s', 0, int) | ||
55 | #define SBPROF_ZBSTOP _IOW('s', 1, int) | ||
56 | #define SBPROF_ZBWAITFULL _IOW('s', 2, int) | ||
57 | |||
58 | /*************************************************************************** | ||
59 | * Routines for gathering ZBbus profiles using trace buffer | ||
60 | ***************************************************************************/ | ||
61 | |||
62 | /* Requires: Already called zclk_timer_init with a value that won't | ||
63 | saturate 40 bits. No subsequent use of SCD performance counters | ||
64 | or trace buffer. | ||
65 | Effect: Starts gathering random ZBbus profiles using trace buffer. */ | ||
66 | extern int sbprof_zbprof_start(struct file *filp); | ||
67 | |||
68 | /* Effect: Stops collection of ZBbus profiles */ | ||
69 | extern int sbprof_zbprof_stop(void); | ||
70 | |||
71 | |||
72 | /*************************************************************************** | ||
73 | * Routines for using 40-bit SCD cycle counter | ||
74 | * | ||
75 | * Client responsible for either handling interrupts or making sure | ||
76 | * the cycles counter never saturates, e.g., by doing | ||
77 | * zclk_timer_init(0) at least every 2^40 - 1 ZCLKs. | ||
78 | ***************************************************************************/ | ||
79 | |||
80 | /* Configures SCD counter 0 to count ZCLKs starting from val; | ||
81 | Configures SCD counters1,2,3 to count nothing. | ||
82 | Must not be called while gathering ZBbus profiles. | ||
83 | |||
84 | unsigned long long val; */ | ||
85 | #define zclk_timer_init(val) \ | ||
86 | __asm__ __volatile__ (".set push;" \ | ||
87 | ".set mips64;" \ | ||
88 | "la $8, 0xb00204c0;" /* SCD perf_cnt_cfg */ \ | ||
89 | "sd %0, 0x10($8);" /* write val to counter0 */ \ | ||
90 | "sd %1, 0($8);" /* config counter0 for zclks*/ \ | ||
91 | ".set pop" \ | ||
92 | : /* no outputs */ \ | ||
93 | /* enable, counter0 */ \ | ||
94 | : /* inputs */ "r"(val), "r" ((1ULL << 33) | 1ULL) \ | ||
95 | : /* modifies */ "$8" ) | ||
96 | |||
97 | |||
98 | /* Reads SCD counter 0 and puts result in value | ||
99 | unsigned long long val; */ | ||
100 | #define zclk_get(val) \ | ||
101 | __asm__ __volatile__ (".set push;" \ | ||
102 | ".set mips64;" \ | ||
103 | "la $8, 0xb00204c0;" /* SCD perf_cnt_cfg */ \ | ||
104 | "ld %0, 0x10($8);" /* write val to counter0 */ \ | ||
105 | ".set pop" \ | ||
106 | : /* outputs */ "=r"(val) \ | ||
107 | : /* inputs */ \ | ||
108 | : /* modifies */ "$8" ) | ||
109 | |||
110 | #endif /* __ASM_SIBYTE_TRACE_PROF_H */ | ||
diff --git a/kernel/module.c b/kernel/module.c index f77e893e4620..fbc51de6444e 100644 --- a/kernel/module.c +++ b/kernel/module.c | |||
@@ -2419,12 +2419,6 @@ void module_remove_driver(struct device_driver *drv) | |||
2419 | kfree(driver_name); | 2419 | kfree(driver_name); |
2420 | } | 2420 | } |
2421 | } | 2421 | } |
2422 | /* | ||
2423 | * Undo the additional reference we added in module_add_driver() | ||
2424 | * via kset_find_obj() | ||
2425 | */ | ||
2426 | if (drv->mod_name) | ||
2427 | kobject_put(&drv->kobj); | ||
2428 | } | 2422 | } |
2429 | EXPORT_SYMBOL(module_remove_driver); | 2423 | EXPORT_SYMBOL(module_remove_driver); |
2430 | #endif | 2424 | #endif |
diff --git a/lib/kobject.c b/lib/kobject.c index f4f6176dcd12..057921c5945a 100644 --- a/lib/kobject.c +++ b/lib/kobject.c | |||
@@ -385,9 +385,11 @@ int kobject_move(struct kobject *kobj, struct kobject *new_parent) | |||
385 | goto out; | 385 | goto out; |
386 | old_parent = kobj->parent; | 386 | old_parent = kobj->parent; |
387 | kobj->parent = new_parent; | 387 | kobj->parent = new_parent; |
388 | new_parent = NULL; | ||
388 | kobject_put(old_parent); | 389 | kobject_put(old_parent); |
389 | kobject_uevent_env(kobj, KOBJ_MOVE, envp); | 390 | kobject_uevent_env(kobj, KOBJ_MOVE, envp); |
390 | out: | 391 | out: |
392 | kobject_put(new_parent); | ||
391 | kobject_put(kobj); | 393 | kobject_put(kobj); |
392 | kfree(devpath_string); | 394 | kfree(devpath_string); |
393 | kfree(devpath); | 395 | kfree(devpath); |